From 4f44b64052223418c5b99ee913f713f3169fc079 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Thu, 23 Feb 2023 15:43:58 -0500 Subject: [PATCH 01/81] fix ckpt_convert module to work with dreambooth v2 models - Discord member @marcus.llewellyn reported that some civitai 2.1-derived checkpoints were not converting properly (probably dreambooth-generated): https://discord.com/channels/1020123559063990373/1078386197589655582/1078387806122025070 - @blessedcoolant tracked this down to a missing key that was used to derive vector length of the CLIP model used by fetching the second dimension of the tensor at "cond_stage_model.model.text_projection". His proposed solution was to hardcode a value of 1024. - On inspection, I found that the same second dimension can be recovered from key 'cond_stage_model.model.ln_final.bias', and use that instead. I hope this is correct; tested on multiple v1, v2 and inpainting models and they converted correctly. - While debugging this, I found and fixed several other issues: - model download script was not pre-downloading the OpenCLIP text_encoder or text_tokenizer. This is fixed. - got rid of legacy code in `ckpt_to_diffuser.py` and replaced with calls into `model_manager` - more consistent status reporting in the CLI. --- ldm/invoke/CLI.py | 13 ++++------- ldm/invoke/ckpt_to_diffuser.py | 29 +++++++++++++++---------- ldm/invoke/config/invokeai_configure.py | 15 ++++++++----- ldm/invoke/model_manager.py | 26 +++++++++++----------- 4 files changed, 45 insertions(+), 38 deletions(-) diff --git a/ldm/invoke/CLI.py b/ldm/invoke/CLI.py index 1d76b68a66..b755eafed4 100644 --- a/ldm/invoke/CLI.py +++ b/ldm/invoke/CLI.py @@ -625,7 +625,7 @@ def set_default_output_dir(opt: Args, completer: Completer): completer.set_default_dir(opt.outdir) -def import_model(model_path: str, gen, opt, completer, convert=False) -> str: +def import_model(model_path: str, gen, opt, completer, convert=False): """ model_path can be (1) a URL to a .ckpt file; (2) a local .ckpt file path; (3) a huggingface repository id; or (4) a local directory containing a @@ -679,7 +679,7 @@ def _verify_load(model_name: str, gen) -> bool: current_model = gen.model_name try: if not gen.set_model(model_name): - return False + return except Exception as e: print(f"** model failed to load: {str(e)}") print( @@ -706,7 +706,7 @@ def _get_model_name_and_desc( ) return model_name, model_description -def convert_model(model_name_or_path: Union[Path, str], gen, opt, completer) -> str: +def convert_model(model_name_or_path: Union[Path, str], gen, opt, completer): model_name_or_path = model_name_or_path.replace("\\", "/") # windows manager = gen.model_manager ckpt_path = None @@ -740,19 +740,14 @@ def convert_model(model_name_or_path: Union[Path, str], gen, opt, completer) -> ) else: try: - model_name = import_model(model_name_or_path, gen, opt, completer, convert=True) + import_model(model_name_or_path, gen, opt, completer, convert=True) except KeyboardInterrupt: return - if not model_name: - print("** Conversion failed. Aborting.") - return - manager.commit(opt.conf) if click.confirm(f"Delete the original .ckpt file at {ckpt_path}?", default=False): ckpt_path.unlink(missing_ok=True) print(f"{ckpt_path} deleted") - return model_name def del_config(model_name: str, gen, opt, completer): diff --git a/ldm/invoke/ckpt_to_diffuser.py b/ldm/invoke/ckpt_to_diffuser.py index 4ce01cd34e..82ba73b0a4 100644 --- a/ldm/invoke/ckpt_to_diffuser.py +++ b/ldm/invoke/ckpt_to_diffuser.py @@ -17,16 +17,15 @@ # Original file at: https://github.com/huggingface/diffusers/blob/main/scripts/convert_ldm_original_checkpoint_to_diffusers.py """ Conversion script for the LDM checkpoints. """ -import os import re import torch import warnings from pathlib import Path from ldm.invoke.globals import ( - Globals, global_cache_dir, global_config_dir, ) +from ldm.invoke.model_manager import ModelManager, SDLegacyType from safetensors.torch import load_file from typing import Union @@ -760,7 +759,12 @@ def convert_open_clip_checkpoint(checkpoint): text_model_dict = {} - d_model = int(checkpoint["cond_stage_model.model.text_projection"].shape[0]) + if 'cond_stage_model.model.text_projection' in keys: + d_model = int(checkpoint["cond_stage_model.model.text_projection"].shape[0]) + elif 'cond_stage_model.model.ln_final.bias' in keys: + d_model = int(checkpoint['cond_stage_model.model.ln_final.bias'].shape[0]) + else: + raise KeyError('Expected key "cond_stage_model.model.text_projection" not found in model') text_model_dict["text_model.embeddings.position_ids"] = text_model.text_model.embeddings.get_buffer("position_ids") @@ -856,20 +860,23 @@ def load_pipeline_from_original_stable_diffusion_ckpt( upcast_attention = False if original_config_file is None: - key_name = "model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn2.to_k.weight" - - if key_name in checkpoint and checkpoint[key_name].shape[-1] == 1024: + model_type = ModelManager.probe_model_type(checkpoint) + + if model_type == SDLegacyType.V2: original_config_file = global_config_dir() / 'stable-diffusion' / 'v2-inference-v.yaml' - if global_step == 110000: # v2.1 needs to upcast attention upcast_attention = True - elif str(checkpoint_path).lower().find('inpaint') >= 0: # brittle - please pass original_config_file parameter! - print(f' | checkpoint has "inpaint" in name, assuming an inpainting model') + + elif model_type == SDLegacyType.V1_INPAINT: original_config_file = global_config_dir() / 'stable-diffusion' / 'v1-inpainting-inference.yaml' - else: + + elif model_type == SDLegacyType.V1: original_config_file = global_config_dir() / 'stable-diffusion' / 'v1-inference.yaml' + else: + raise Exception('Unknown checkpoint type') + original_config = OmegaConf.load(original_config_file) if num_in_channels is not None: @@ -960,7 +967,7 @@ def load_pipeline_from_original_stable_diffusion_ckpt( text_model = convert_open_clip_checkpoint(checkpoint) tokenizer = CLIPTokenizer.from_pretrained("stabilityai/stable-diffusion-2", subfolder="tokenizer", - cache_dir=global_cache_dir('diffusers') + cache_dir=cache_dir, ) pipe = pipeline_class( vae=vae, diff --git a/ldm/invoke/config/invokeai_configure.py b/ldm/invoke/config/invokeai_configure.py index eb753f5c33..bb967fba37 100755 --- a/ldm/invoke/config/invokeai_configure.py +++ b/ldm/invoke/config/invokeai_configure.py @@ -191,14 +191,18 @@ def download_bert(): # --------------------------------------------- -def download_clip(): - print("Installing CLIP model...", file=sys.stderr) +def download_sd1_clip(): + print("Installing SD1 clip model...", file=sys.stderr) version = "openai/clip-vit-large-patch14" - print("Tokenizer...", file=sys.stderr) download_from_hf(CLIPTokenizer, version) - print("Text model...", file=sys.stderr) download_from_hf(CLIPTextModel, version) +# --------------------------------------------- +def download_sd2_clip(): + version = 'stabilityai/stable-diffusion-2' + print("Installing SD2 clip model...", file=sys.stderr) + download_from_hf(CLIPTokenizer, version, subfolder='tokenizer') + download_from_hf(CLIPTextModel, version, subfolder='text_encoder') # --------------------------------------------- def download_realesrgan(): @@ -832,7 +836,8 @@ def main(): else: print("\n** DOWNLOADING SUPPORT MODELS **") download_bert() - download_clip() + download_sd1_clip() + download_sd2_clip() download_realesrgan() download_gfpgan() download_codeformer() diff --git a/ldm/invoke/model_manager.py b/ldm/invoke/model_manager.py index 2efe494a19..694d65c1a7 100644 --- a/ldm/invoke/model_manager.py +++ b/ldm/invoke/model_manager.py @@ -725,7 +725,7 @@ class ModelManager(object): SDLegacyType.V1 SDLegacyType.V1_INPAINT SDLegacyType.V2 - UNKNOWN + SDLegacyType.UNKNOWN """ key_name = "model.diffusion_model.input_blocks.2.1.transformer_blocks.0.attn2.to_k.weight" if key_name in checkpoint and checkpoint[key_name].shape[-1] == 1024: @@ -785,7 +785,7 @@ class ModelManager(object): print(f">> Probing {thing} for import") if thing.startswith(("http:", "https:", "ftp:")): - print(f" | {thing} appears to be a URL") + print(f" | {thing} appears to be a URL") model_path = self._resolve_path( thing, "models/ldm/stable-diffusion-v1" ) # _resolve_path does a download if needed @@ -793,15 +793,15 @@ class ModelManager(object): elif Path(thing).is_file() and thing.endswith((".ckpt", ".safetensors")): if Path(thing).stem in ["model", "diffusion_pytorch_model"]: print( - f" | {Path(thing).name} appears to be part of a diffusers model. Skipping import" + f" | {Path(thing).name} appears to be part of a diffusers model. Skipping import" ) return else: - print(f" | {thing} appears to be a checkpoint file on disk") + print(f" | {thing} appears to be a checkpoint file on disk") model_path = self._resolve_path(thing, "models/ldm/stable-diffusion-v1") elif Path(thing).is_dir() and Path(thing, "model_index.json").exists(): - print(f" | {thing} appears to be a diffusers file on disk") + print(f" | {thing} appears to be a diffusers file on disk") model_name = self.import_diffuser_model( thing, vae=dict(repo_id="stabilityai/sd-vae-ft-mse"), @@ -812,13 +812,13 @@ class ModelManager(object): elif Path(thing).is_dir(): if (Path(thing) / "model_index.json").exists(): - print(f">> {thing} appears to be a diffusers model.") + print(f" | {thing} appears to be a diffusers model.") model_name = self.import_diffuser_model( thing, commit_to_conf=commit_to_conf ) else: print( - f">> {thing} appears to be a directory. Will scan for models to import" + f" |{thing} appears to be a directory. Will scan for models to import" ) for m in list(Path(thing).rglob("*.ckpt")) + list( Path(thing).rglob("*.safetensors") @@ -830,7 +830,7 @@ class ModelManager(object): return model_name elif re.match(r"^[\w.+-]+/[\w.+-]+$", thing): - print(f" | {thing} appears to be a HuggingFace diffusers repo_id") + print(f" | {thing} appears to be a HuggingFace diffusers repo_id") model_name = self.import_diffuser_model( thing, commit_to_conf=commit_to_conf ) @@ -847,7 +847,7 @@ class ModelManager(object): return if model_path.stem in self.config: # already imported - print(" | Already imported. Skipping") + print(" | Already imported. Skipping") return # another round of heuristics to guess the correct config file. @@ -860,18 +860,18 @@ class ModelManager(object): model_config_file = None if model_type == SDLegacyType.V1: - print(" | SD-v1 model detected") + print(" | SD-v1 model detected") model_config_file = Path( Globals.root, "configs/stable-diffusion/v1-inference.yaml" ) elif model_type == SDLegacyType.V1_INPAINT: - print(" | SD-v1 inpainting model detected") + print(" | SD-v1 inpainting model detected") model_config_file = Path( Globals.root, "configs/stable-diffusion/v1-inpainting-inference.yaml" ) elif model_type == SDLegacyType.V2: print( - " | SD-v2 model detected; model will be converted to diffusers format" + " | SD-v2 model detected; model will be converted to diffusers format" ) model_config_file = Path( Globals.root, "configs/stable-diffusion/v2-inference-v.yaml" @@ -923,7 +923,7 @@ class ModelManager(object): vae=None, original_config_file: Path = None, commit_to_conf: Path = None, - ) -> dict: + ) -> str: """ Convert a legacy ckpt weights file to diffuser model and import into models.yaml. From 1a6ed85d998e0bcd733ed7494119fa5ecaca06d7 Mon Sep 17 00:00:00 2001 From: mauwii Date: Thu, 23 Feb 2023 23:27:16 +0100 Subject: [PATCH 02/81] fix typeing to be compatible with python 3.9 without this, the project can be installed on 3.9 but not used this also fixes the container images --- ldm/invoke/conditioning.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ldm/invoke/conditioning.py b/ldm/invoke/conditioning.py index db50ce4076..7c654caf69 100644 --- a/ldm/invoke/conditioning.py +++ b/ldm/invoke/conditioning.py @@ -88,7 +88,7 @@ def get_prompt_structure(prompt_string, skip_normalize_legacy_blend: bool = Fals return positive_prompt, negative_prompt -def get_max_token_count(tokenizer, prompt: FlattenedPrompt|Blend, truncate_if_too_long=True) -> int: +def get_max_token_count(tokenizer, prompt: Union[FlattenedPrompt, Blend], truncate_if_too_long=True) -> int: if type(prompt) is Blend: blend: Blend = prompt return max([get_max_token_count(tokenizer, c, truncate_if_too_long) for c in blend.prompts]) @@ -129,8 +129,8 @@ def split_prompt_to_positive_and_negative(prompt_string_uncleaned): return prompt_string_cleaned, unconditioned_words -def log_tokenization(positive_prompt: Blend | FlattenedPrompt, - negative_prompt: Blend | FlattenedPrompt, +def log_tokenization(positive_prompt: Union[Blend, FlattenedPrompt], + negative_prompt: Union[Blend, FlattenedPrompt], tokenizer): print(f"\n>> [TOKENLOG] Parsed Prompt: {positive_prompt}") print(f"\n>> [TOKENLOG] Parsed Negative Prompt: {negative_prompt}") @@ -139,7 +139,7 @@ def log_tokenization(positive_prompt: Blend | FlattenedPrompt, log_tokenization_for_prompt_object(negative_prompt, tokenizer, display_label_prefix="(negative prompt)") -def log_tokenization_for_prompt_object(p: Blend | FlattenedPrompt, tokenizer, display_label_prefix=None): +def log_tokenization_for_prompt_object(p: Union[Blend, FlattenedPrompt], tokenizer, display_label_prefix=None): display_label_prefix = display_label_prefix or "" if type(p) is Blend: blend: Blend = p From b5b541c7479a4ae85575c58004081985f2aada9c Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Thu, 23 Feb 2023 17:47:36 -0500 Subject: [PATCH 03/81] bump version; use correct format for PyPi --- ldm/invoke/_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ldm/invoke/_version.py b/ldm/invoke/_version.py index 0ac7042811..92cc704e25 100644 --- a/ldm/invoke/_version.py +++ b/ldm/invoke/_version.py @@ -1 +1 @@ -__version__='2.3.1+rc3' +__version__='2.3.1-rc4' From 7fb2da8741b6f0c6e4050a5460e317ecc26591ce Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Thu, 23 Feb 2023 22:03:28 -0500 Subject: [PATCH 04/81] fix generate backend to generate "accurate" intermediate images - Closes #2784 - Closes #2775 --- ldm/invoke/generator/base.py | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/ldm/invoke/generator/base.py b/ldm/invoke/generator/base.py index 4c73b997e7..21d6f271ca 100644 --- a/ldm/invoke/generator/base.py +++ b/ldm/invoke/generator/base.py @@ -137,17 +137,9 @@ class Generator: Given samples returned from a sampler, converts it into a PIL Image """ - x_samples = self.model.decode_first_stage(samples) - x_samples = torch.clamp((x_samples + 1.0) / 2.0, min=0.0, max=1.0) - if len(x_samples) != 1: - raise Exception( - f'>> expected to get a single image, but got {len(x_samples)}') - x_sample = 255.0 * rearrange( - x_samples[0].cpu().numpy(), 'c h w -> h w c' - ) - return Image.fromarray(x_sample.astype(np.uint8)) - - # write an approximate RGB image from latent samples for a single step to PNG + with torch.inference_mode(): + image = self.model.decode_latents(samples) + return self.model.numpy_to_pil(image)[0] def repaste_and_color_correct(self, result: Image.Image, init_image: Image.Image, init_mask: Image.Image, mask_blur_radius: int = 8) -> Image.Image: if init_image is None or init_mask is None: From a540cc537f39a1a31e8d598b070b858c2b7c8fa0 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 00:53:48 -0500 Subject: [PATCH 05/81] add curated set of HuggingFace diffusers models for 2.3.1 release - Final list can be found in invokeai/configs/INITIAL_MODELS.yaml - After installing all the models, I discovered a bug in the file selection form that caused a crash when no remaining uninstalled models remained. So had to fix this. --- invokeai/configs/INITIAL_MODELS.yaml | 77 +++++++++++++++++--------- ldm/invoke/config/model_install.py | 82 +++++++++++++++------------- 2 files changed, 96 insertions(+), 63 deletions(-) diff --git a/invokeai/configs/INITIAL_MODELS.yaml b/invokeai/configs/INITIAL_MODELS.yaml index 60ddbf3324..edc6285a38 100644 --- a/invokeai/configs/INITIAL_MODELS.yaml +++ b/invokeai/configs/INITIAL_MODELS.yaml @@ -6,53 +6,78 @@ stable-diffusion-1.5: repo_id: stabilityai/sd-vae-ft-mse recommended: True default: True -inpainting-1.5: +sd-inpainting-1.5: description: RunwayML SD 1.5 model optimized for inpainting, diffusers version (4.27 GB) repo_id: runwayml/stable-diffusion-inpainting format: diffusers vae: repo_id: stabilityai/sd-vae-ft-mse recommended: True -dreamlike-diffusion-1.0: - description: An SD 1.5 model fine tuned on high quality art by dreamlike.art, diffusers version (2.13 BG) - format: diffusers - repo_id: dreamlike-art/dreamlike-diffusion-1.0 - vae: - repo_id: stabilityai/sd-vae-ft-mse - recommended: True -dreamlike-photoreal-2.0: - description: A photorealistic model trained on 768 pixel images based on SD 1.5 (2.13 GB) - format: diffusers - repo_id: dreamlike-art/dreamlike-photoreal-2.0 - recommended: False -stable-diffusion-2.1-768: +stable-diffusion-2.1: description: Stable Diffusion version 2.1 diffusers model, trained on 768 pixel images (5.21 GB) repo_id: stabilityai/stable-diffusion-2-1 format: diffusers recommended: True -stable-diffusion-2.1-base: - description: Stable Diffusion version 2.1 diffusers base model, trained on 512 pixel images (5.21 GB) - repo_id: stabilityai/stable-diffusion-2-1-base +sd-inpainting-2.0: + description: Stable Diffusion version 2.0 inpainting model (5.21 GB) + repo_id: stabilityai/stable-diffusion-2-1 format: diffusers recommended: False +analog-diffusion-1.0: + description: An SD-1.5 model trained on diverse analog photographs (2.13 GB) + repo_id: wavymulder/Analog-Diffusion + format: diffusers + recommended: false +deliberate-1.0: + description: Versatile model that produces detailed images up to 768px (4.27 GB) + format: diffusers + repo_id: XpucT/Deliberate + recommended: False +d&d-diffusion-1.0: + description: Dungeons & Dragons characters (2.13 GB) + format: diffusers + repo_id: 0xJustin/Dungeons-and-Diffusion + recommended: False +dreamlike-photoreal-2.0: + description: A photorealistic model trained on 768 pixel images based on SD 1.5 (2.13 GB) + format: diffusers + repo_id: dreamlike-art/dreamlike-photoreal-2.0 + recommended: False +inkpunk-1.0: + description: Stylized illustrations inspired by Gorillaz, FLCL and Shinkawa; prompt with "nvinkpunk" (4.27 GB) + format: diffusers + repo_id: Envvi/Inkpunk-Diffusion + recommended: False openjourney-4.0: - description: An SD 1.5 model fine tuned on Midjourney images by PromptHero - include "mdjrny-v4 style" in your prompts (2.13 GB) - format: diffusers - repo_id: prompthero/openjourney - vae: + description: An SD 1.5 model fine tuned on Midjourney; prompt with "mdjrny-v4 style" (2.13 GB) + format: diffusers + repo_id: prompthero/openjourney + vae: repo_id: stabilityai/sd-vae-ft-mse - recommended: False -nitro-diffusion-1.0: - description: A SD 1.5 model trained on three artstyles - prompt with "archer style", "arcane style" and/or "modern disney style" (2.13 GB) - repo_id: nitrosocke/Nitro-Diffusion + recommended: False +portrait-plus-1.0: + description: An SD-1.5 model trained on close range portraits of people; prompt with "portrait+" (2.13 GB) + format: diffusers + repo_id: wavymulder/portraitplus + recommended: False +seek-art-mega-1.0: + description: A general use SD-1.5 "anything" model that supports multiple styles (2.1 GB) + repo_id: coreco/seek.art_MEGA format: diffusers vae: repo_id: stabilityai/sd-vae-ft-mse recommended: False trinart-2.0: - description: An SD model finetuned with ~40,000 assorted high resolution manga/anime-style pictures, diffusers version (2.13 GB) + description: An SD-1.5 model finetuned with ~40K assorted high resolution manga/anime-style images (2.13 GB) repo_id: naclbit/trinart_stable_diffusion_v2 format: diffusers vae: repo_id: stabilityai/sd-vae-ft-mse recommended: False +waifu-diffusion-1.4: + description: An SD-1.5 model trained on 680k anime/manga-style images (2.13 GB) + repo_id: hakurei/waifu-diffusion + format: diffusers + vae: + repo_id: stabilityai/sd-vae-ft-mse + recommended: False diff --git a/ldm/invoke/config/model_install.py b/ldm/invoke/config/model_install.py index 7dd5831707..287283ca27 100644 --- a/ldm/invoke/config/model_install.py +++ b/ldm/invoke/config/model_install.py @@ -114,37 +114,37 @@ class addModelsForm(npyscreen.FormMultiPage): relx=4, ) self.nextrely += 1 - self.add_widget_intelligent( - CenteredTitleText, - name="== STARTER MODELS (recommended ones selected) ==", - editable=False, - color="CONTROL", - ) - self.nextrely -= 1 - self.add_widget_intelligent( - CenteredTitleText, - name="Select from a starter set of Stable Diffusion models from HuggingFace:", - editable=False, - labelColor="CAUTION", - ) - - self.nextrely -= 1 - # if user has already installed some initial models, then don't patronize them - # by showing more recommendations - show_recommended = not self.existing_models - self.models_selected = self.add_widget_intelligent( - npyscreen.MultiSelect, - name="Install Starter Models", - values=starter_model_labels, - value=[ - self.starter_model_list.index(x) - for x in self.starter_model_list - if show_recommended and x in recommended_models - ], - max_height=len(starter_model_labels) + 1, - relx=4, - scroll_exit=True, - ) + if len(self.starter_model_list) > 0: + self.add_widget_intelligent( + CenteredTitleText, + name="== STARTER MODELS (recommended ones selected) ==", + editable=False, + color="CONTROL", + ) + self.nextrely -= 1 + self.add_widget_intelligent( + CenteredTitleText, + name="Select from a starter set of Stable Diffusion models from HuggingFace.", + editable=False, + labelColor="CAUTION", + ) + self.nextrely -= 1 + # if user has already installed some initial models, then don't patronize them + # by showing more recommendations + show_recommended = not self.existing_models + self.models_selected = self.add_widget_intelligent( + npyscreen.MultiSelect, + name="Install Starter Models", + values=starter_model_labels, + value=[ + self.starter_model_list.index(x) + for x in self.starter_model_list + if show_recommended and x in recommended_models + ], + max_height=len(starter_model_labels) + 1, + relx=4, + scroll_exit=True, + ) self.add_widget_intelligent( CenteredTitleText, name='== IMPORT LOCAL AND REMOTE MODELS ==', @@ -166,7 +166,11 @@ class addModelsForm(npyscreen.FormMultiPage): ) self.nextrely -= 1 self.import_model_paths = self.add_widget_intelligent( - TextBox, max_height=5, scroll_exit=True, editable=True, relx=4 + TextBox, + max_height=7, + scroll_exit=True, + editable=True, + relx=4 ) self.nextrely += 1 self.show_directory_fields = self.add_widget_intelligent( @@ -241,7 +245,8 @@ class addModelsForm(npyscreen.FormMultiPage): def resize(self): super().resize() - self.models_selected.values = self._get_starter_model_labels() + if hasattr(self,'models_selected'): + self.models_selected.values = self._get_starter_model_labels() def _clear_scan_directory(self): if not self.show_directory_fields.value: @@ -320,11 +325,14 @@ class addModelsForm(npyscreen.FormMultiPage): selections = self.parentApp.user_selections # starter models to install/remove - starter_models = dict( - map( - lambda x: (self.starter_model_list[x], True), self.models_selected.value + if hasattr(self,'models_selected'): + starter_models = dict( + map( + lambda x: (self.starter_model_list[x], True), self.models_selected.value + ) ) - ) + else: + starter_models = dict() selections.purge_deleted_models = False if hasattr(self, "previously_installed_models"): unchecked = [ From ec2890c19b2c6aad9869899e27da9f9c0d4180cd Mon Sep 17 00:00:00 2001 From: Jonathan <34005131+JPPhoto@users.noreply.github.com> Date: Fri, 24 Feb 2023 07:48:54 -0600 Subject: [PATCH 06/81] Run garbage collection to allow the CUDA cache to completely empty. (#2791) --- ldm/generate.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ldm/generate.py b/ldm/generate.py index 7695c3a0bc..413a1e25cb 100644 --- a/ldm/generate.py +++ b/ldm/generate.py @@ -650,6 +650,8 @@ class Generate: def clear_cuda_cache(self): if self._has_cuda(): self.gather_cuda_stats() + # Run garbage collection prior to emptying the CUDA cache + gc.collect() torch.cuda.empty_cache() def clear_cuda_stats(self): From 230d3a496d0f2a85198fdbcb6826c75423d99ac3 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 09:33:07 -0500 Subject: [PATCH 07/81] document starter models - add new script `scripts/make_models_markdown_table.py` that parses INITIAL_MODELS.yaml and creates markdown table for the model installation documentation file - update 050_INSTALLING_MODELS.md with above table, and add a warning about additional license terms that apply to some of the models. --- docs/installation/050_INSTALLING_MODELS.md | 40 +++++++++++++--------- scripts/make_models_markdown_table.py | 23 +++++++++++++ 2 files changed, 46 insertions(+), 17 deletions(-) create mode 100755 scripts/make_models_markdown_table.py diff --git a/docs/installation/050_INSTALLING_MODELS.md b/docs/installation/050_INSTALLING_MODELS.md index 5621075506..10589098d2 100644 --- a/docs/installation/050_INSTALLING_MODELS.md +++ b/docs/installation/050_INSTALLING_MODELS.md @@ -43,25 +43,31 @@ InvokeAI comes with support for a good set of starter models. You'll find them listed in the master models file `configs/INITIAL_MODELS.yaml` in the InvokeAI root directory. The subset that are currently installed are found in -`configs/models.yaml`. The current list is: +`configs/models.yaml`. As of v2.3.1, the list of starter models is: -| Model | HuggingFace Repo ID | Description | URL -| -------------------- | --------------------------------- | ---------------------------------------------------------- | -------------------------------------------------------------- | -| stable-diffusion-1.5 | runwayml/stable-diffusion-v1-5 | Most recent version of base Stable Diffusion model | https://huggingface.co/runwayml/stable-diffusion-v1-5 | -| stable-diffusion-1.4 | runwayml/stable-diffusion-v1-4 | Previous version of base Stable Diffusion model | https://huggingface.co/runwayml/stable-diffusion-v1-4 | -| inpainting-1.5 | runwayml/stable-diffusion-inpainting | Stable diffusion 1.5 optimized for inpainting | https://huggingface.co/runwayml/stable-diffusion-inpainting | -| stable-diffusion-2.1-base |stabilityai/stable-diffusion-2-1-base | Stable Diffusion version 2.1 trained on 512 pixel images | https://huggingface.co/stabilityai/stable-diffusion-2-1-base | -| stable-diffusion-2.1-768 |stabilityai/stable-diffusion-2-1 | Stable Diffusion version 2.1 trained on 768 pixel images | https://huggingface.co/stabilityai/stable-diffusion-2-1 | -| dreamlike-diffusion-1.0 | dreamlike-art/dreamlike-diffusion-1.0 | An SD 1.5 model finetuned on high quality art | https://huggingface.co/dreamlike-art/dreamlike-diffusion-1.0 | -| dreamlike-photoreal-2.0 | dreamlike-art/dreamlike-photoreal-2.0 | A photorealistic model trained on 768 pixel images| https://huggingface.co/dreamlike-art/dreamlike-photoreal-2.0 | -| openjourney-4.0 | prompthero/openjourney | An SD 1.5 model finetuned on Midjourney images prompt with "mdjrny-v4 style" | https://huggingface.co/prompthero/openjourney | -| nitro-diffusion-1.0 | nitrosocke/Nitro-Diffusion | An SD 1.5 model finetuned on three styles, prompt with "archer style", "arcane style" or "modern disney style" | https://huggingface.co/nitrosocke/Nitro-Diffusion| -| trinart-2.0 | naclbit/trinart_stable_diffusion_v2 | An SD 1.5 model finetuned with ~40,000 assorted high resolution manga/anime-style pictures | https://huggingface.co/naclbit/trinart_stable_diffusion_v2| -| trinart-characters-2_0 | naclbit/trinart_derrida_characters_v2_stable_diffusion | An SD 1.5 model finetuned with 19.2M manga/anime-style pictures | https://huggingface.co/naclbit/trinart_derrida_characters_v2_stable_diffusion| +|Model Name | HuggingFace Repo ID | Description | URL | +|---------- | ---------- | ----------- | --- | +|stable-diffusion-1.5|runwayml/stable-diffusion-v1-5|Stable Diffusion version 1.5 diffusers model (4.27 GB)|https://huggingface.co/runwayml/stable-diffusion-v1-5 | +|sd-inpainting-1.5|runwayml/stable-diffusion-inpainting|RunwayML SD 1.5 model optimized for inpainting, diffusers version (4.27 GB)|https://huggingface.co/runwayml/stable-diffusion-inpainting | +|stable-diffusion-2.1|stabilityai/stable-diffusion-2-1|Stable Diffusion version 2.1 diffusers model, trained on 768 pixel images (5.21 GB)|https://huggingface.co/stabilityai/stable-diffusion-2-1 | +|sd-inpainting-2.0|stabilityai/stable-diffusion-2-1|Stable Diffusion version 2.0 inpainting model (5.21 GB)|https://huggingface.co/stabilityai/stable-diffusion-2-1 | +|analog-diffusion-1.0|wavymulder/Analog-Diffusion|An SD-1.5 model trained on diverse analog photographs (2.13 GB)|https://huggingface.co/wavymulder/Analog-Diffusion | +|deliberate-1.0|XpucT/Deliberate|Versatile model that produces detailed images up to 768px (4.27 GB)|https://huggingface.co/XpucT/Deliberate | +|d&d-diffusion-1.0|0xJustin/Dungeons-and-Diffusion|Dungeons & Dragons characters (2.13 GB)|https://huggingface.co/0xJustin/Dungeons-and-Diffusion | +|dreamlike-photoreal-2.0|dreamlike-art/dreamlike-photoreal-2.0|A photorealistic model trained on 768 pixel images based on SD 1.5 (2.13 GB)|https://huggingface.co/dreamlike-art/dreamlike-photoreal-2.0 | +|inkpunk-1.0|Envvi/Inkpunk-Diffusion|Stylized illustrations inspired by Gorillaz, FLCL and Shinkawa; prompt with "nvinkpunk" (4.27 GB)|https://huggingface.co/Envvi/Inkpunk-Diffusion | +|openjourney-4.0|prompthero/openjourney|An SD 1.5 model fine tuned on Midjourney; prompt with "mdjrny-v4 style" (2.13 GB)|https://huggingface.co/prompthero/openjourney | +|portrait-plus-1.0|wavymulder/portraitplus|An SD-1.5 model trained on close range portraits of people; prompt with "portrait+" (2.13 GB)|https://huggingface.co/wavymulder/portraitplus | +|seek-art-mega-1.0|coreco/seek.art_MEGA|A general use SD-1.5 "anything" model that supports multiple styles (2.1 GB)|https://huggingface.co/coreco/seek.art_MEGA | +|trinart-2.0|naclbit/trinart_stable_diffusion_v2|An SD-1.5 model finetuned with ~40K assorted high resolution manga/anime-style images (2.13 GB)|https://huggingface.co/naclbit/trinart_stable_diffusion_v2 | +|waifu-diffusion-1.4|hakurei/waifu-diffusion|An SD-1.5 model trained on 680k anime/manga-style images (2.13 GB)|https://huggingface.co/hakurei/waifu-diffusion | -Note that these files are covered by an "Ethical AI" license which forbids -certain uses. When you initially download them, you are asked to -accept the license terms. +Note that these files are covered by an "Ethical AI" license which +forbids certain uses. When you initially download them, you are asked +to accept the license terms. In addition, some of these models carry +additional license terms that limit their use in commercial +applications or on public servers. Be sure to familiarize yourself +with the model terms by visiting the URLs in the table above. ## Community-Contributed Models diff --git a/scripts/make_models_markdown_table.py b/scripts/make_models_markdown_table.py new file mode 100755 index 0000000000..128ced371d --- /dev/null +++ b/scripts/make_models_markdown_table.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python + +''' +This script is used at release time to generate a markdown table describing the +starter models. This text is then manually copied into 050_INSTALL_MODELS.md. +''' + +from omegaconf import OmegaConf +from pathlib import Path + + +def main(): + initial_models_file = Path(__file__).parent / '../invokeai/configs/INITIAL_MODELS.yaml' + models = OmegaConf.load(initial_models_file) + print('|Model Name | HuggingFace Repo ID | Description | URL |') + print('|---------- | ---------- | ----------- | --- |') + for model in models: + repo_id = models[model].repo_id + url = f'https://huggingface.co/{repo_id}' + print(f'|{model}|{repo_id}|{models[model].description}|{url} |') + +if __name__ == '__main__': + main() From d078941316f2bb227785222c5f3a8958a6bb2e27 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 10:04:06 -0500 Subject: [PATCH 08/81] add low memory troubleshooting guide --- docs/installation/010_INSTALL_AUTOMATED.md | 51 +++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/docs/installation/010_INSTALL_AUTOMATED.md b/docs/installation/010_INSTALL_AUTOMATED.md index 7f50e906da..228c0ae9a4 100644 --- a/docs/installation/010_INSTALL_AUTOMATED.md +++ b/docs/installation/010_INSTALL_AUTOMATED.md @@ -221,7 +221,10 @@ experimental versions later. - ***NSFW checker*** If checked, InvokeAI will test images for potential sexual content - and blur them out if found. + and blur them out if found. Note that the NSFW checker consumes + an additional 0.6 GB of VRAM on top of the 2-3 GB of VRAM used + by most image models. If you have a low VRAM GPU (4-6 GB), you + can reduce out of memory errors by disabling the checker. - ***HuggingFace Access Token*** InvokeAI has the ability to download embedded styles and subjects @@ -440,6 +443,52 @@ the [InvokeAI Issues](https://github.com/invoke-ai/InvokeAI/issues) section, or visit our [Discord Server](https://discord.gg/ZmtBAhwWhy) for interactive assistance. +### Out of Memory Issues + +The models are large, VRAM is expensive, and you may find yourself +faced with Out of Memory errors when generating images. Here are some +tips to reduce the problem: + +* **4 GB of VRAM** + +This should be adequate for 512x512 pixel images using Stable Diffusion 1.5 +and derived models, provided that you **disable** the NSFW checker. To +disable the filter, do one of the following: + + * Select option (6) "_change InvokeAI startup options_" from the + launcher. This will bring up the console-based startup settings + dialogue and allow you to unselect the "NSFW Checker" option. + * Start the startup settings dialogue directly by running + `invokeai-configure --skip-sd-weights --skip-support-models` + from the command line. + * Find the `invokeai.init` initialization file in the InvokeAI root + directory, open it in a text editor, and change `--nsfw_checker` + to `--no-nsfw_checker` + +If you are on a CUDA system, you can realize significant memory +savings by activating the `xformers` library as described above. The +downside is `xformers` introduces non-deterministic behavior, such +that images generated with exactly the same prompt and settings will +be slightly different from each other. See above for more information. + +* **6 GB of VRAM** + +This is a border case. Using the SD 1.5 series you should be able to +generate images up to 640x640 with the NSFW checker enabled, and up to +1024x1024 with it disabled and `xformers` activated. + +If you run into persistent memory issues there are a series of +environment variables that you can set before launching InvokeAI that +alter how the PyTorch machine learning library manages memory. See +https://pytorch.org/docs/stable/notes/cuda.html#memory-management for +a list of these tweaks. + +* **12 GB of VRAM** + +This should be sufficient to generate larger images up to about +1280x1280. If you wish to push further, consider activating +`xformers`. + ### Other Problems If you run into problems during or after installation, the InvokeAI team is From 4c93b514bbd0d2be2cdf5b5517f311677cd64f40 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 10:04:41 -0500 Subject: [PATCH 09/81] bump version to final 2.3.1 --- ldm/invoke/_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ldm/invoke/_version.py b/ldm/invoke/_version.py index 92cc704e25..259b4f09e5 100644 --- a/ldm/invoke/_version.py +++ b/ldm/invoke/_version.py @@ -1 +1 @@ -__version__='2.3.1-rc4' +__version__='2.3.1' From d0be79c33d51c012790a733fc678945c6ae4cedd Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 14:54:23 -0500 Subject: [PATCH 10/81] fixes crashes on merge in both WebUI and console - an inadvertent change to the model manager broke the merging functions - corrected here - will be a hotfix --- ldm/invoke/model_manager.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ldm/invoke/model_manager.py b/ldm/invoke/model_manager.py index 694d65c1a7..4957052e44 100644 --- a/ldm/invoke/model_manager.py +++ b/ldm/invoke/model_manager.py @@ -624,7 +624,7 @@ class ModelManager(object): self, repo_or_path: Union[str, Path], model_name: str = None, - model_description: str = None, + description: str = None, vae: dict = None, commit_to_conf: Path = None, ) -> bool: @@ -640,7 +640,7 @@ class ModelManager(object): models.yaml file. """ model_name = model_name or Path(repo_or_path).stem - model_description = model_description or f"Imported diffusers model {model_name}" + model_description = description or f"Imported diffusers model {model_name}" new_config = dict( description=model_description, vae=vae, From 5beeb1a897c744a9faacf719e58dc5ac015a3d00 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 15:00:22 -0500 Subject: [PATCH 11/81] hotfix for broken merge function --- ldm/invoke/_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ldm/invoke/_version.py b/ldm/invoke/_version.py index 259b4f09e5..3de47b2717 100644 --- a/ldm/invoke/_version.py +++ b/ldm/invoke/_version.py @@ -1 +1 @@ -__version__='2.3.1' +__version__='2.3.1p1' From 604acb9d91196fc967f355a5e5095013cd3d1728 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 15:07:54 -0500 Subject: [PATCH 12/81] use pep-440 standard version number --- ldm/invoke/_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ldm/invoke/_version.py b/ldm/invoke/_version.py index 3de47b2717..513fd95b82 100644 --- a/ldm/invoke/_version.py +++ b/ldm/invoke/_version.py @@ -1 +1 @@ -__version__='2.3.1p1' +__version__='2.3.1-p1' From 210998081ad5a121a5037a3dbfd8c1efb3b48e67 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Fri, 24 Feb 2023 15:14:39 -0500 Subject: [PATCH 13/81] use right pep-440 standard version number --- ldm/invoke/_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ldm/invoke/_version.py b/ldm/invoke/_version.py index 513fd95b82..323ba35167 100644 --- a/ldm/invoke/_version.py +++ b/ldm/invoke/_version.py @@ -1 +1 @@ -__version__='2.3.1-p1' +__version__='2.3.1.post1' From 7012e16c437c28e3660e1ca08754d9144c7c27fe Mon Sep 17 00:00:00 2001 From: gallegonovato Date: Thu, 23 Feb 2023 23:38:25 +0100 Subject: [PATCH 14/81] translationBot(ui): update translation (Spanish) Currently translated at 100.0% (469 of 469 strings) Co-authored-by: gallegonovato Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/es/ Translation: InvokeAI/Web UI --- invokeai/frontend/public/locales/es.json | 115 ++++++++++++++++++++--- 1 file changed, 102 insertions(+), 13 deletions(-) diff --git a/invokeai/frontend/public/locales/es.json b/invokeai/frontend/public/locales/es.json index 2eff2e1e01..5081ab0799 100644 --- a/invokeai/frontend/public/locales/es.json +++ b/invokeai/frontend/public/locales/es.json @@ -15,7 +15,7 @@ "langSpanish": "Español", "nodesDesc": "Un sistema de generación de imágenes basado en nodos, actualmente se encuentra en desarrollo. Mantente pendiente a nuestras actualizaciones acerca de esta fabulosa funcionalidad.", "postProcessing": "Post-procesamiento", - "postProcessDesc1": "Invoke AI ofrece una gran variedad de funciones de post-procesamiento, El aumento de tamaño y Restauración de Rostros ya se encuentran disponibles en la interfaz web, puedes acceder desde el menú de Opciones Avanzadas en las pestañas de Texto a Imagen y de Imagen a Imagen. También puedes acceder a estas funciones directamente mediante el botón de acciones en el menú superior de la imagen actual o en el visualizador", + "postProcessDesc1": "Invoke AI ofrece una gran variedad de funciones de post-procesamiento, El aumento de tamaño y Restauración de Rostros ya se encuentran disponibles en la interfaz web, puedes acceder desde el menú de Opciones Avanzadas en las pestañas de Texto a Imagen y de Imagen a Imagen. También puedes acceder a estas funciones directamente mediante el botón de acciones en el menú superior de la imagen actual o en el visualizador.", "postProcessDesc2": "Una interfaz de usuario dedicada se lanzará pronto para facilitar flujos de trabajo de postprocesamiento más avanzado.", "postProcessDesc3": "La Interfaz de Línea de Comandos de Invoke AI ofrece muchas otras características, incluyendo -Embiggen-.", "training": "Entrenamiento", @@ -44,7 +44,26 @@ "statusUpscaling": "Aumentando Tamaño", "statusUpscalingESRGAN": "Restaurando Rostros(ESRGAN)", "statusLoadingModel": "Cargando Modelo", - "statusModelChanged": "Modelo cambiado" + "statusModelChanged": "Modelo cambiado", + "statusMergedModels": "Modelos combinados", + "githubLabel": "Github", + "discordLabel": "Discord", + "langEnglish": "Inglés", + "langDutch": "Holandés", + "langFrench": "Francés", + "langGerman": "Alemán", + "langItalian": "Italiano", + "langArabic": "Árabe", + "langJapanese": "Japones", + "langPolish": "Polaco", + "langBrPortuguese": "Portugués brasileño", + "langRussian": "Ruso", + "langSimplifiedChinese": "Chino simplificado", + "langUkranian": "Ucraniano", + "back": "Atrás", + "statusConvertingModel": "Convertir el modelo", + "statusModelConverted": "Modelo adaptado", + "statusMergingModels": "Fusionar modelos" }, "gallery": { "generations": "Generaciones", @@ -284,16 +303,16 @@ "nameValidationMsg": "Introduce un nombre para tu modelo", "description": "Descripción", "descriptionValidationMsg": "Introduce una descripción para tu modelo", - "config": "Config", - "configValidationMsg": "Ruta del archivo de configuración del modelo", + "config": "Configurar", + "configValidationMsg": "Ruta del archivo de configuración del modelo.", "modelLocation": "Ubicación del Modelo", - "modelLocationValidationMsg": "Ruta del archivo de modelo", + "modelLocationValidationMsg": "Ruta del archivo de modelo.", "vaeLocation": "Ubicación VAE", - "vaeLocationValidationMsg": "Ruta del archivo VAE", + "vaeLocationValidationMsg": "Ruta del archivo VAE.", "width": "Ancho", - "widthValidationMsg": "Ancho predeterminado de tu modelo", + "widthValidationMsg": "Ancho predeterminado de tu modelo.", "height": "Alto", - "heightValidationMsg": "Alto predeterminado de tu modelo", + "heightValidationMsg": "Alto predeterminado de tu modelo.", "addModel": "Añadir Modelo", "updateModel": "Actualizar Modelo", "availableModels": "Modelos disponibles", @@ -320,7 +339,61 @@ "deleteModel": "Eliminar Modelo", "deleteConfig": "Eliminar Configuración", "deleteMsg1": "¿Estás seguro de querer eliminar esta entrada de modelo de InvokeAI?", - "deleteMsg2": "El checkpoint del modelo no se eliminará de tu disco. Puedes volver a añadirlo si lo deseas." + "deleteMsg2": "El checkpoint del modelo no se eliminará de tu disco. Puedes volver a añadirlo si lo deseas.", + "safetensorModels": "SafeTensors", + "addDiffuserModel": "Añadir difusores", + "inpainting": "v1 Repintado", + "repoIDValidationMsg": "Repositorio en línea de tu modelo", + "checkpointModels": "Puntos de control", + "convertToDiffusersHelpText4": "Este proceso se realiza una sola vez. Puede tardar entre 30 y 60 segundos dependiendo de las especificaciones de tu ordenador.", + "diffusersModels": "Difusores", + "addCheckpointModel": "Agregar modelo de punto de control/Modelo Safetensor", + "vaeRepoID": "Identificador del repositorio de VAE", + "vaeRepoIDValidationMsg": "Repositorio en línea de tú VAE", + "formMessageDiffusersModelLocation": "Difusores Modelo Ubicación", + "formMessageDiffusersModelLocationDesc": "Por favor, introduzca al menos uno.", + "formMessageDiffusersVAELocation": "Ubicación VAE", + "formMessageDiffusersVAELocationDesc": "Si no se proporciona, InvokeAI buscará el archivo VAE dentro de la ubicación del modelo indicada anteriormente.", + "convert": "Convertir", + "convertToDiffusers": "Convertir en difusores", + "convertToDiffusersHelpText1": "Este modelo se convertirá al formato 🧨 Difusores.", + "convertToDiffusersHelpText2": "Este proceso sustituirá su entrada del Gestor de Modelos por la versión de Difusores del mismo modelo.", + "convertToDiffusersHelpText3": "Su archivo de puntos de control en el disco NO será borrado ni modificado de ninguna manera. Puede volver a añadir su punto de control al Gestor de Modelos si lo desea.", + "convertToDiffusersHelpText5": "Asegúrese de que dispone de suficiente espacio en disco. Los modelos suelen variar entre 4 GB y 7 GB de tamaño.", + "convertToDiffusersHelpText6": "¿Desea transformar este modelo?", + "convertToDiffusersSaveLocation": "Guardar ubicación", + "v1": "v1", + "v2": "v2", + "statusConverting": "Adaptar", + "modelConverted": "Modelo adaptado", + "sameFolder": "La misma carpeta", + "invokeRoot": "Carpeta InvokeAI", + "custom": "Personalizado", + "customSaveLocation": "Ubicación personalizada para guardar", + "merge": "Fusión", + "modelsMerged": "Modelos fusionados", + "mergeModels": "Combinar modelos", + "modelOne": "Modelo 1", + "modelTwo": "Modelo 2", + "modelThree": "Modelo 3", + "mergedModelName": "Nombre del modelo combinado", + "alpha": "Alfa", + "interpolationType": "Tipo de interpolación", + "mergedModelSaveLocation": "Guardar ubicación", + "mergedModelCustomSaveLocation": "Ruta personalizada", + "invokeAIFolder": "Invocar carpeta de la inteligencia artificial", + "modelMergeHeaderHelp2": "Sólo se pueden fusionar difusores. Si desea fusionar un modelo de punto de control, conviértalo primero en difusores.", + "modelMergeAlphaHelp": "Alfa controla la fuerza de mezcla de los modelos. Los valores alfa más bajos reducen la influencia del segundo modelo.", + "modelMergeInterpAddDifferenceHelp": "En este modo, el Modelo 3 se sustrae primero del Modelo 2. La versión resultante se mezcla con el Modelo 1 con la tasa alfa establecida anteriormente. La versión resultante se mezcla con el Modelo 1 con la tasa alfa establecida anteriormente.", + "ignoreMismatch": "Ignorar discrepancias entre modelos seleccionados", + "modelMergeHeaderHelp1": "Puede combinar hasta tres modelos diferentes para crear una mezcla que se adapte a sus necesidades.", + "inverseSigmoid": "Sigmoideo inverso", + "weightedSum": "Modelo de suma ponderada", + "sigmoid": "Función sigmoide", + "allModels": "Todos los modelos", + "repo_id": "Identificador del repositorio", + "pathToCustomConfig": "Ruta a la configuración personalizada", + "customConfig": "Configuración personalizada" }, "parameters": { "images": "Imágenes", @@ -380,7 +453,22 @@ "info": "Información", "deleteImage": "Eliminar Imagen", "initialImage": "Imagen Inicial", - "showOptionsPanel": "Mostrar panel de opciones" + "showOptionsPanel": "Mostrar panel de opciones", + "symmetry": "Simetría", + "vSymmetryStep": "Paso de simetría V", + "hSymmetryStep": "Paso de simetría H", + "cancel": { + "immediate": "Cancelar inmediatamente", + "schedule": "Cancelar tras la iteración actual", + "isScheduled": "Cancelando", + "setType": "Tipo de cancelación" + }, + "copyImage": "Copiar la imagen", + "general": "General", + "negativePrompts": "Preguntas negativas", + "imageToImage": "Imagen a imagen", + "denoisingStrength": "Intensidad de la eliminación del ruido", + "hiresStrength": "Alta resistencia" }, "settings": { "models": "Modelos", @@ -393,7 +481,8 @@ "resetWebUI": "Restablecer interfaz web", "resetWebUIDesc1": "Al restablecer la interfaz web, solo se restablece la caché local del navegador de sus imágenes y la configuración guardada. No se elimina ninguna imagen de su disco duro.", "resetWebUIDesc2": "Si las imágenes no se muestran en la galería o algo más no funciona, intente restablecer antes de reportar un incidente en GitHub.", - "resetComplete": "La interfaz web se ha restablecido. Actualice la página para recargarla." + "resetComplete": "La interfaz web se ha restablecido. Actualice la página para recargarla.", + "useSlidersForAll": "Utilice controles deslizantes para todas las opciones" }, "toast": { "tempFoldersEmptied": "Directorio temporal vaciado", @@ -431,12 +520,12 @@ "feature": { "prompt": "Este campo tomará todo el texto de entrada, incluidos tanto los términos de contenido como los estilísticos. Si bien se pueden incluir pesos en la solicitud, los comandos/parámetros estándar de línea de comandos no funcionarán.", "gallery": "Conforme se generan nuevas invocaciones, los archivos del directorio de salida se mostrarán aquí. Las generaciones tienen opciones adicionales para configurar nuevas generaciones.", - "other": "Estas opciones habilitarán modos de procesamiento alternativos para Invoke. El modo sin costuras funciona para generar patrones repetitivos en la salida. La optimización de alta resolución realiza un ciclo de generación de dos pasos y debe usarse en resoluciones más altas cuando desee una imagen/composición más coherente.", + "other": "Estas opciones habilitarán modos de procesamiento alternativos para Invoke. 'Seamless mosaico' creará patrones repetitivos en la salida. 'Alta resolución' es la generación en dos pasos con img2img: use esta configuración cuando desee una imagen más grande y más coherente sin artefactos. tomar más tiempo de lo habitual txt2img.", "seed": "Los valores de semilla proporcionan un conjunto inicial de ruido que guían el proceso de eliminación de ruido y se pueden aleatorizar o rellenar con una semilla de una invocación anterior. La función Umbral se puede usar para mitigar resultados indeseables a valores CFG más altos (intente entre 0-10), y Perlin se puede usar para agregar ruido Perlin al proceso de eliminación de ruido. Ambos sirven para agregar variación a sus salidas.", "variations": "Pruebe una variación con una cantidad entre 0 y 1 para cambiar la imagen de salida para la semilla establecida. Se encuentran variaciones interesantes en la semilla entre 0.1 y 0.3.", "upscale": "Usando ESRGAN, puede aumentar la resolución de salida sin requerir un ancho/alto más alto en la generación inicial.", "faceCorrection": "Usando GFPGAN o Codeformer, la corrección de rostros intentará identificar rostros en las salidas y corregir cualquier defecto/anormalidad. Los valores de fuerza más altos aplicarán una presión correctiva más fuerte en las salidas, lo que resultará en rostros más atractivos. Con Codeformer, una mayor fidelidad intentará preservar la imagen original, a expensas de la fuerza de corrección de rostros.", - "imageToImage": "Imagen a Imagen permite cargar una imagen inicial, que InvokeAI usará para guiar el proceso de generación, junto con una solicitud. Un valor más bajo para esta configuración se parecerá más a la imagen original. Se aceptan valores entre 0-1, y se recomienda un rango de .25-.75.", + "imageToImage": "Imagen a Imagen permite cargar una imagen inicial, que InvokeAI usará para guiar el proceso de generación, junto con una solicitud. Un valor más bajo para esta configuración se parecerá más a la imagen original. Se aceptan valores entre 0-1, y se recomienda un rango de .25-.75", "boundingBox": "La caja delimitadora es análoga a las configuraciones de Ancho y Alto para Texto a Imagen o Imagen a Imagen. Solo se procesará el área en la caja.", "seamCorrection": "Controla el manejo de parches visibles que pueden ocurrir cuando se pega una imagen generada de nuevo en el lienzo.", "infillAndScaling": "Administra los métodos de relleno (utilizados en áreas enmascaradas o borradas del lienzo) y la escala (útil para tamaños de caja delimitadora pequeños)." From da983c77732d1024ddf01977a1e6e66234d816ad Mon Sep 17 00:00:00 2001 From: Jeff Mahoney Date: Thu, 23 Feb 2023 23:38:25 +0100 Subject: [PATCH 15/81] translationBot(ui): added translation (Romanian) Co-authored-by: Jeff Mahoney --- invokeai/frontend/public/locales/ro.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 invokeai/frontend/public/locales/ro.json diff --git a/invokeai/frontend/public/locales/ro.json b/invokeai/frontend/public/locales/ro.json new file mode 100644 index 0000000000..0967ef424b --- /dev/null +++ b/invokeai/frontend/public/locales/ro.json @@ -0,0 +1 @@ +{} From 218f30b7d0efa53828123e5f7307f4528cd72b08 Mon Sep 17 00:00:00 2001 From: Gabriel Mackievicz Telles Date: Thu, 23 Feb 2023 23:38:25 +0100 Subject: [PATCH 16/81] translationBot(ui): update translation (Portuguese (Brazil)) Currently translated at 91.8% (431 of 469 strings) Co-authored-by: Gabriel Mackievicz Telles Translate-URL: https://hosted.weblate.org/projects/invokeai/web-ui/pt_BR/ Translation: InvokeAI/Web UI --- invokeai/frontend/public/locales/pt_BR.json | 76 +++++++++++++++++++-- 1 file changed, 70 insertions(+), 6 deletions(-) diff --git a/invokeai/frontend/public/locales/pt_BR.json b/invokeai/frontend/public/locales/pt_BR.json index 2380f92932..fdfe2270bf 100644 --- a/invokeai/frontend/public/locales/pt_BR.json +++ b/invokeai/frontend/public/locales/pt_BR.json @@ -44,7 +44,26 @@ "statusUpscaling": "Redimensinando", "statusUpscalingESRGAN": "Redimensinando (ESRGAN)", "statusLoadingModel": "Carregando Modelo", - "statusModelChanged": "Modelo Alterado" + "statusModelChanged": "Modelo Alterado", + "githubLabel": "Github", + "discordLabel": "Discord", + "langArabic": "Árabe", + "langEnglish": "Inglês", + "langDutch": "Holandês", + "langFrench": "Francês", + "langGerman": "Alemão", + "langItalian": "Italiano", + "langJapanese": "Japonês", + "langPolish": "Polonês", + "langSimplifiedChinese": "Chinês", + "langUkranian": "Ucraniano", + "back": "Voltar", + "statusConvertingModel": "Convertendo Modelo", + "statusModelConverted": "Modelo Convertido", + "statusMergingModels": "Mesclando Modelos", + "statusMergedModels": "Modelos Mesclados", + "langRussian": "Russo", + "langSpanish": "Espanhol" }, "gallery": { "generations": "Gerações", @@ -237,7 +256,7 @@ "desc": "Salva a tela atual na galeria" }, "copyToClipboard": { - "title": "Copiar Para a Área de Transferência ", + "title": "Copiar para a Área de Transferência", "desc": "Copia a tela atual para a área de transferência" }, "downloadImage": { @@ -284,7 +303,7 @@ "nameValidationMsg": "Insira um nome para o seu modelo", "description": "Descrição", "descriptionValidationMsg": "Adicione uma descrição para o seu modelo", - "config": "Config", + "config": "Configuração", "configValidationMsg": "Caminho para o arquivo de configuração do seu modelo.", "modelLocation": "Localização do modelo", "modelLocationValidationMsg": "Caminho para onde seu modelo está localizado.", @@ -317,7 +336,52 @@ "deleteModel": "Excluir modelo", "deleteConfig": "Excluir Config", "deleteMsg1": "Tem certeza de que deseja excluir esta entrada do modelo de InvokeAI?", - "deleteMsg2": "Isso não vai excluir o arquivo de modelo checkpoint do seu disco. Você pode lê-los, se desejar." + "deleteMsg2": "Isso não vai excluir o arquivo de modelo checkpoint do seu disco. Você pode lê-los, se desejar.", + "checkpointModels": "Checkpoints", + "diffusersModels": "Diffusers", + "safetensorModels": "SafeTensors", + "addCheckpointModel": "Adicionar Modelo de Checkpoint/Safetensor", + "addDiffuserModel": "Adicionar Diffusers", + "repo_id": "Repo ID", + "vaeRepoID": "VAE Repo ID", + "vaeRepoIDValidationMsg": "Repositório Online do seu VAE", + "scanAgain": "Digitalize Novamente", + "selectAndAdd": "Selecione e Adicione Modelos Listados Abaixo", + "noModelsFound": "Nenhum Modelo Encontrado", + "formMessageDiffusersModelLocation": "Localização dos Modelos Diffusers", + "formMessageDiffusersModelLocationDesc": "Por favor entre com ao menos um.", + "formMessageDiffusersVAELocation": "Localização do VAE", + "formMessageDiffusersVAELocationDesc": "Se não provido, InvokeAI irá procurar pelo arquivo VAE dentro do local do modelo.", + "convertToDiffusers": "Converter para Diffusers", + "convertToDiffusersHelpText1": "Este modelo será convertido para o formato 🧨 Diffusers.", + "convertToDiffusersHelpText5": "Por favor, certifique-se de que você tenha espaço suficiente em disco. Os modelos geralmente variam entre 4GB e 7GB de tamanho.", + "convertToDiffusersHelpText6": "Você deseja converter este modelo?", + "convertToDiffusersSaveLocation": "Local para Salvar", + "v1": "v1", + "v2": "v2", + "inpainting": "v1 Inpainting", + "customConfig": "Configuração personalizada", + "pathToCustomConfig": "Caminho para configuração personalizada", + "convertToDiffusersHelpText3": "Seu arquivo de ponto de verificação no disco NÃO será excluído ou modificado de forma alguma. Você pode adicionar seu ponto de verificação ao Gerenciador de modelos novamente, se desejar.", + "convertToDiffusersHelpText4": "Este é um processo único. Pode levar cerca de 30 a 60s, dependendo das especificações do seu computador.", + "merge": "Mesclar", + "modelsMerged": "Modelos mesclados", + "mergeModels": "Mesclar modelos", + "modelOne": "Modelo 1", + "modelTwo": "Modelo 2", + "modelThree": "Modelo 3", + "statusConverting": "Convertendo", + "modelConverted": "Modelo Convertido", + "sameFolder": "Mesma pasta", + "invokeRoot": "Pasta do InvokeAI", + "custom": "Personalizado", + "customSaveLocation": "Local de salvamento personalizado", + "mergedModelName": "Nome do modelo mesclado", + "alpha": "Alpha", + "allModels": "Todos os Modelos", + "repoIDValidationMsg": "Repositório Online do seu Modelo", + "convert": "Converter", + "convertToDiffusersHelpText2": "Este processo irá substituir sua entrada de Gerenciador de Modelos por uma versão Diffusers do mesmo modelo." }, "parameters": { "images": "Imagems", @@ -442,14 +506,14 @@ "move": "Mover", "resetView": "Resetar Visualização", "mergeVisible": "Fundir Visível", - "saveToGallery": "Save To Gallery", + "saveToGallery": "Salvar na Galeria", "copyToClipboard": "Copiar para a Área de Transferência", "downloadAsImage": "Baixar Como Imagem", "undo": "Desfazer", "redo": "Refazer", "clearCanvas": "Limpar Tela", "canvasSettings": "Configurações de Tela", - "showIntermediates": "Show Intermediates", + "showIntermediates": "Mostrar Intermediários", "showGrid": "Mostrar Grade", "snapToGrid": "Encaixar na Grade", "darkenOutsideSelection": "Escurecer Seleção Externa", From d8bf2e3c102b8ab30bff44d3ff40b6134345eebf Mon Sep 17 00:00:00 2001 From: psychedelicious <4822129+psychedelicious@users.noreply.github.com> Date: Sat, 25 Feb 2023 09:56:21 +1100 Subject: [PATCH 17/81] fix(ui): fix translation typing, fix strings I had inadvertently un-safe-d our translation types when migrating to Weblate. This PR fixes that, and a number of translation string bugs that went unnoticed due to the lack of type safety, --- invokeai/frontend/src/app/socketio/listeners.ts | 6 +++--- .../features/canvas/components/IAICanvasStatusText.tsx | 10 +++++----- .../IAICanvasStatusTextCursorPos.tsx | 2 +- .../system/components/ModelManager/MergeModels.tsx | 2 +- invokeai/frontend/src/i18.d.ts | 5 +++++ 5 files changed, 15 insertions(+), 10 deletions(-) diff --git a/invokeai/frontend/src/app/socketio/listeners.ts b/invokeai/frontend/src/app/socketio/listeners.ts index 6442564e48..08de671260 100644 --- a/invokeai/frontend/src/app/socketio/listeners.ts +++ b/invokeai/frontend/src/app/socketio/listeners.ts @@ -392,7 +392,7 @@ const makeSocketIOListeners = ( addLogEntry({ timestamp: dateFormat(new Date(), 'isoDateTime'), message: `${i18n.t( - 'modelmanager:modelAdded' + 'modelManager.modelAdded' )}: ${deleted_model_name}`, level: 'info', }) @@ -400,7 +400,7 @@ const makeSocketIOListeners = ( dispatch( addToast({ title: `${i18n.t( - 'modelmanager:modelEntryDeleted' + 'modelManager.modelEntryDeleted' )}: ${deleted_model_name}`, status: 'success', duration: 2500, @@ -424,7 +424,7 @@ const makeSocketIOListeners = ( dispatch( addToast({ title: `${i18n.t( - 'modelmanager:modelConverted' + 'modelManager.modelConverted' )}: ${converted_model_name}`, status: 'success', duration: 2500, diff --git a/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText.tsx b/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText.tsx index 83ee94520a..5bd25e6925 100644 --- a/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText.tsx +++ b/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText.tsx @@ -109,7 +109,7 @@ const IAICanvasStatusText = () => { color: boundingBoxColor, }} >{`${t( - 'unifiedcanvas:boundingBox' + 'unifiedCanvas.boundingBox' )}: ${boundingBoxDimensionsString}`} )} {shouldShowScaledBoundingBox && ( @@ -118,19 +118,19 @@ const IAICanvasStatusText = () => { color: boundingBoxColor, }} >{`${t( - 'unifiedcanvas:scaledBoundingBox' + 'unifiedCanvas.scaledBoundingBox' )}: ${scaledBoundingBoxDimensionsString}`} )} {shouldShowCanvasDebugInfo && ( <>
{`${t( - 'unifiedcanvas:boundingBoxPosition' + 'unifiedCanvas.boundingBoxPosition' )}: ${boundingBoxCoordinatesString}`}
{`${t( - 'unifiedcanvas:canvasDimensions' + 'unifiedCanvas.canvasDimensions' )}: ${canvasDimensionsString}`}
{`${t( - 'unifiedcanvas:canvasPosition' + 'unifiedCanvas.canvasPosition' )}: ${canvasCoordinatesString}`}
diff --git a/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText/IAICanvasStatusTextCursorPos.tsx b/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText/IAICanvasStatusTextCursorPos.tsx index c77d0cae65..ae5d5fd063 100644 --- a/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText/IAICanvasStatusTextCursorPos.tsx +++ b/invokeai/frontend/src/features/canvas/components/IAICanvasStatusText/IAICanvasStatusTextCursorPos.tsx @@ -34,7 +34,7 @@ export default function IAICanvasStatusTextCursorPos() { return (
{`${t( - 'unifiedcanvas:cursorPosition' + 'unifiedCanvas.cursorPosition' )}: ${cursorCoordinatesString}`}
); } diff --git a/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx b/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx index cd10a43856..959896b8e0 100644 --- a/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx +++ b/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx @@ -217,7 +217,7 @@ export default function MergeModels() { add_difference diff --git a/invokeai/frontend/src/i18.d.ts b/invokeai/frontend/src/i18.d.ts index 61878384e6..90cee53385 100644 --- a/invokeai/frontend/src/i18.d.ts +++ b/invokeai/frontend/src/i18.d.ts @@ -1,11 +1,16 @@ import 'i18next'; +import en from '../public/locales/en.json'; + declare module 'i18next' { // Extend CustomTypeOptions interface CustomTypeOptions { // Setting Default Namespace As English defaultNS: 'en'; // Custom Types For Resources + resources: { + en: typeof en; + }; // Never Return Null returnNull: false; } From 251e9c029445268876be05a37d3a1b889b51835e Mon Sep 17 00:00:00 2001 From: psychedelicious <4822129+psychedelicious@users.noreply.github.com> Date: Sat, 25 Feb 2023 11:12:20 +1100 Subject: [PATCH 18/81] fix(ui): add missing strings Fixes #2797 Fixes #2798 --- invokeai/frontend/public/locales/en.json | 7 ++-- .../components/ModelManager/MergeModels.tsx | 32 +++++++++++-------- .../ui/components/InvokeParametersPanel.tsx | 5 ++- 3 files changed, 27 insertions(+), 17 deletions(-) diff --git a/invokeai/frontend/public/locales/en.json b/invokeai/frontend/public/locales/en.json index c9a3f48c47..b074e35060 100644 --- a/invokeai/frontend/public/locales/en.json +++ b/invokeai/frontend/public/locales/en.json @@ -63,7 +63,8 @@ "statusConvertingModel": "Converting Model", "statusModelConverted": "Model Converted", "statusMergingModels": "Merging Models", - "statusMergedModels": "Models Merged" + "statusMergedModels": "Models Merged", + "pinOptionsPanel": "Pin Options Panel" }, "gallery": { "generations": "Generations", @@ -393,7 +394,9 @@ "modelMergeInterpAddDifferenceHelp": "In this mode, Model 3 is first subtracted from Model 2. The resulting version is blended with Model 1 with the alpha rate set above.", "inverseSigmoid": "Inverse Sigmoid", "sigmoid": "Sigmoid", - "weightedSum": "Weighted Sum" + "weightedSum": "Weighted Sum", + "none": "none", + "addDifference": "Add Difference" }, "parameters": { "general": "General", diff --git a/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx b/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx index 959896b8e0..8f1dc92f41 100644 --- a/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx +++ b/invokeai/frontend/src/features/system/components/ModelManager/MergeModels.tsx @@ -57,19 +57,19 @@ export default function MergeModels() { const [modelMergeForce, setModelMergeForce] = useState(false); - const modelOneList = Object.keys(diffusersModels).filter((model) => { - if (model !== modelTwo && model !== modelThree) return model; - }); + const modelOneList = Object.keys(diffusersModels).filter( + (model) => model !== modelTwo && model !== modelThree + ); - const modelTwoList = Object.keys(diffusersModels).filter((model) => { - if (model !== modelOne && model !== modelThree) return model; - }); + const modelTwoList = Object.keys(diffusersModels).filter( + (model) => model !== modelOne && model !== modelThree + ); const modelThreeList = [ - 'none', - ...Object.keys(diffusersModels).filter((model) => { - if (model !== modelOne && model !== modelTwo) return model; - }), + { key: t('modelManager.none'), value: 'none' }, + ...Object.keys(diffusersModels) + .filter((model) => model !== modelOne && model !== modelTwo) + .map((model) => ({ key: model, value: model })), ]; const isProcessing = useAppSelector( @@ -209,9 +209,13 @@ export default function MergeModels() { {modelThree === 'none' ? ( <> - weighted_sum - sigmoid - inv_sigmoid + + {t('modelManager.weightedSum')} + + {t('modelManager.sigmoid')} + + {t('modelManager.inverseSigmoid')} + ) : ( @@ -220,7 +224,7 @@ export default function MergeModels() { 'modelManager.modelMergeInterpAddDifferenceHelp' )} > - add_difference + {t('modelManager.addDifference')} )} diff --git a/invokeai/frontend/src/features/ui/components/InvokeParametersPanel.tsx b/invokeai/frontend/src/features/ui/components/InvokeParametersPanel.tsx index 8dcd4f4a78..c342e5c920 100644 --- a/invokeai/frontend/src/features/ui/components/InvokeParametersPanel.tsx +++ b/invokeai/frontend/src/features/ui/components/InvokeParametersPanel.tsx @@ -18,6 +18,7 @@ import { setParametersPanelScrollPosition } from 'features/ui/store/uiSlice'; import InvokeAILogo from 'assets/images/logo.png'; import { isEqual } from 'lodash'; import { uiSelector } from '../store/uiSelectors'; +import { useTranslation } from 'react-i18next'; type Props = { children: ReactNode }; @@ -60,6 +61,8 @@ const InvokeOptionsPanel = (props: Props) => { const { children } = props; + const { t } = useTranslation(); + // Hotkeys useHotkeys( 'o', @@ -176,7 +179,7 @@ const InvokeOptionsPanel = (props: Props) => { } }} > - +
Date: Sat, 25 Feb 2023 11:25:13 +1100 Subject: [PATCH 19/81] fix(ui): fix #2802 vertical symmetry not working --- invokeai/frontend/src/common/util/parameterTranslation.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/invokeai/frontend/src/common/util/parameterTranslation.ts b/invokeai/frontend/src/common/util/parameterTranslation.ts index f703a96f4a..3ea9e3bb29 100644 --- a/invokeai/frontend/src/common/util/parameterTranslation.ts +++ b/invokeai/frontend/src/common/util/parameterTranslation.ts @@ -192,7 +192,7 @@ export const frontendToBackendParameters = ( ); } - if (horizontalSymmetryTimePercentage > 0) { + if (verticalSymmetryTimePercentage > 0) { generationParameters.v_symmetry_time_pct = Math.max( 0, Math.min(1, verticalSymmetryTimePercentage / steps) From 3858bef185d7d3ff5b71c6662de835b5a128ab92 Mon Sep 17 00:00:00 2001 From: psychedelicious <4822129+psychedelicious@users.noreply.github.com> Date: Sat, 25 Feb 2023 11:56:09 +1100 Subject: [PATCH 20/81] fix(ui): clamp symmetry steps to generation steps Also renamed the variables to `horizontalSymmetrySteps` as `TimePercentage` is not accurate. --- .../src/common/util/parameterTranslation.ts | 12 +++--- .../Output/SymmetrySettings.tsx | 24 +++++------ .../components/MainParameters/MainSteps.tsx | 14 ++++++- .../ProcessButtons/InvokeButton.tsx | 2 + .../parameters/store/generationSlice.ts | 40 +++++++++++-------- 5 files changed, 56 insertions(+), 36 deletions(-) diff --git a/invokeai/frontend/src/common/util/parameterTranslation.ts b/invokeai/frontend/src/common/util/parameterTranslation.ts index 3ea9e3bb29..07b8ac8ea1 100644 --- a/invokeai/frontend/src/common/util/parameterTranslation.ts +++ b/invokeai/frontend/src/common/util/parameterTranslation.ts @@ -144,8 +144,8 @@ export const frontendToBackendParameters = ( variationAmount, width, shouldUseSymmetry, - horizontalSymmetryTimePercentage, - verticalSymmetryTimePercentage, + horizontalSymmetrySteps, + verticalSymmetrySteps, } = generationState; const { @@ -185,17 +185,17 @@ export const frontendToBackendParameters = ( // Symmetry Settings if (shouldUseSymmetry) { - if (horizontalSymmetryTimePercentage > 0) { + if (horizontalSymmetrySteps > 0) { generationParameters.h_symmetry_time_pct = Math.max( 0, - Math.min(1, horizontalSymmetryTimePercentage / steps) + Math.min(1, horizontalSymmetrySteps / steps) ); } - if (verticalSymmetryTimePercentage > 0) { + if (verticalSymmetrySteps > 0) { generationParameters.v_symmetry_time_pct = Math.max( 0, - Math.min(1, verticalSymmetryTimePercentage / steps) + Math.min(1, verticalSymmetrySteps / steps) ); } } diff --git a/invokeai/frontend/src/features/parameters/components/AdvancedParameters/Output/SymmetrySettings.tsx b/invokeai/frontend/src/features/parameters/components/AdvancedParameters/Output/SymmetrySettings.tsx index 37bb7bdbda..bf3e49d34d 100644 --- a/invokeai/frontend/src/features/parameters/components/AdvancedParameters/Output/SymmetrySettings.tsx +++ b/invokeai/frontend/src/features/parameters/components/AdvancedParameters/Output/SymmetrySettings.tsx @@ -2,18 +2,18 @@ import { RootState } from 'app/store'; import { useAppDispatch, useAppSelector } from 'app/storeHooks'; import IAISlider from 'common/components/IAISlider'; import { - setHorizontalSymmetryTimePercentage, - setVerticalSymmetryTimePercentage, + setHorizontalSymmetrySteps, + setVerticalSymmetrySteps, } from 'features/parameters/store/generationSlice'; import { useTranslation } from 'react-i18next'; export default function SymmetrySettings() { - const horizontalSymmetryTimePercentage = useAppSelector( - (state: RootState) => state.generation.horizontalSymmetryTimePercentage + const horizontalSymmetrySteps = useAppSelector( + (state: RootState) => state.generation.horizontalSymmetrySteps ); - const verticalSymmetryTimePercentage = useAppSelector( - (state: RootState) => state.generation.verticalSymmetryTimePercentage + const verticalSymmetrySteps = useAppSelector( + (state: RootState) => state.generation.verticalSymmetrySteps ); const steps = useAppSelector((state: RootState) => state.generation.steps); @@ -26,28 +26,28 @@ export default function SymmetrySettings() { <> dispatch(setHorizontalSymmetryTimePercentage(v))} + value={horizontalSymmetrySteps} + onChange={(v) => dispatch(setHorizontalSymmetrySteps(v))} min={0} max={steps} step={1} withInput withSliderMarks withReset - handleReset={() => dispatch(setHorizontalSymmetryTimePercentage(0))} + handleReset={() => dispatch(setHorizontalSymmetrySteps(0))} sliderMarkRightOffset={-6} > dispatch(setVerticalSymmetryTimePercentage(v))} + value={verticalSymmetrySteps} + onChange={(v) => dispatch(setVerticalSymmetrySteps(v))} min={0} max={steps} step={1} withInput withSliderMarks withReset - handleReset={() => dispatch(setVerticalSymmetryTimePercentage(0))} + handleReset={() => dispatch(setVerticalSymmetrySteps(0))} sliderMarkRightOffset={-6} > diff --git a/invokeai/frontend/src/features/parameters/components/MainParameters/MainSteps.tsx b/invokeai/frontend/src/features/parameters/components/MainParameters/MainSteps.tsx index 3be575f7bf..79edd27924 100644 --- a/invokeai/frontend/src/features/parameters/components/MainParameters/MainSteps.tsx +++ b/invokeai/frontend/src/features/parameters/components/MainParameters/MainSteps.tsx @@ -3,7 +3,10 @@ import { useAppDispatch, useAppSelector } from 'app/storeHooks'; import IAINumberInput from 'common/components/IAINumberInput'; import IAISlider from 'common/components/IAISlider'; -import { setSteps } from 'features/parameters/store/generationSlice'; +import { + clampSymmetrySteps, + setSteps, +} from 'features/parameters/store/generationSlice'; import { useTranslation } from 'react-i18next'; export default function MainSteps() { @@ -14,7 +17,13 @@ export default function MainSteps() { ); const { t } = useTranslation(); - const handleChangeSteps = (v: number) => dispatch(setSteps(v)); + const handleChangeSteps = (v: number) => { + dispatch(setSteps(v)); + }; + + const handleBlur = () => { + dispatch(clampSymmetrySteps()); + }; return shouldUseSliders ? ( ); } diff --git a/invokeai/frontend/src/features/parameters/components/ProcessButtons/InvokeButton.tsx b/invokeai/frontend/src/features/parameters/components/ProcessButtons/InvokeButton.tsx index 504714d329..682d43366e 100644 --- a/invokeai/frontend/src/features/parameters/components/ProcessButtons/InvokeButton.tsx +++ b/invokeai/frontend/src/features/parameters/components/ProcessButtons/InvokeButton.tsx @@ -5,6 +5,7 @@ import IAIButton, { IAIButtonProps } from 'common/components/IAIButton'; import IAIIconButton, { IAIIconButtonProps, } from 'common/components/IAIIconButton'; +import { clampSymmetrySteps } from 'features/parameters/store/generationSlice'; import { activeTabNameSelector } from 'features/ui/store/uiSelectors'; import { useHotkeys } from 'react-hotkeys-hook'; import { useTranslation } from 'react-i18next'; @@ -30,6 +31,7 @@ export default function InvokeButton(props: InvokeButton) { useHotkeys( ['ctrl+enter', 'meta+enter'], () => { + dispatch(clampSymmetrySteps()); dispatch(generateImage(activeTabName)); }, { diff --git a/invokeai/frontend/src/features/parameters/store/generationSlice.ts b/invokeai/frontend/src/features/parameters/store/generationSlice.ts index e05c49f3f7..6554d64c8f 100644 --- a/invokeai/frontend/src/features/parameters/store/generationSlice.ts +++ b/invokeai/frontend/src/features/parameters/store/generationSlice.ts @@ -4,6 +4,7 @@ import * as InvokeAI from 'app/invokeai'; import { getPromptAndNegative } from 'common/util/getPromptAndNegative'; import promptToString from 'common/util/promptToString'; import { seedWeightsToString } from 'common/util/seedWeightPairs'; +import { clamp } from 'lodash'; export interface GenerationState { cfgScale: number; @@ -33,8 +34,8 @@ export interface GenerationState { variationAmount: number; width: number; shouldUseSymmetry: boolean; - horizontalSymmetryTimePercentage: number; - verticalSymmetryTimePercentage: number; + horizontalSymmetrySteps: number; + verticalSymmetrySteps: number; } const initialGenerationState: GenerationState = { @@ -64,8 +65,8 @@ const initialGenerationState: GenerationState = { variationAmount: 0.1, width: 512, shouldUseSymmetry: false, - horizontalSymmetryTimePercentage: 0, - verticalSymmetryTimePercentage: 0, + horizontalSymmetrySteps: 0, + verticalSymmetrySteps: 0, }; const initialState: GenerationState = initialGenerationState; @@ -99,6 +100,18 @@ export const generationSlice = createSlice({ setSteps: (state, action: PayloadAction) => { state.steps = action.payload; }, + clampSymmetrySteps: (state) => { + state.horizontalSymmetrySteps = clamp( + state.horizontalSymmetrySteps, + 0, + state.steps + ); + state.verticalSymmetrySteps = clamp( + state.verticalSymmetrySteps, + 0, + state.steps + ); + }, setCfgScale: (state, action: PayloadAction) => { state.cfgScale = action.payload; }, @@ -334,22 +347,17 @@ export const generationSlice = createSlice({ setShouldUseSymmetry: (state, action: PayloadAction) => { state.shouldUseSymmetry = action.payload; }, - setHorizontalSymmetryTimePercentage: ( - state, - action: PayloadAction - ) => { - state.horizontalSymmetryTimePercentage = action.payload; + setHorizontalSymmetrySteps: (state, action: PayloadAction) => { + state.horizontalSymmetrySteps = action.payload; }, - setVerticalSymmetryTimePercentage: ( - state, - action: PayloadAction - ) => { - state.verticalSymmetryTimePercentage = action.payload; + setVerticalSymmetrySteps: (state, action: PayloadAction) => { + state.verticalSymmetrySteps = action.payload; }, }, }); export const { + clampSymmetrySteps, clearInitialImage, resetParametersState, resetSeed, @@ -384,8 +392,8 @@ export const { setVariationAmount, setWidth, setShouldUseSymmetry, - setHorizontalSymmetryTimePercentage, - setVerticalSymmetryTimePercentage, + setHorizontalSymmetrySteps, + setVerticalSymmetrySteps, } = generationSlice.actions; export default generationSlice.reducer; From 281c78848984001907f3e324ae7cfbe5faa10ff0 Mon Sep 17 00:00:00 2001 From: psychedelicious <4822129+psychedelicious@users.noreply.github.com> Date: Sat, 25 Feb 2023 11:56:56 +1100 Subject: [PATCH 21/81] chore(ui): build frontend --- .../{index-0e39fbc4.js => index-c33fa9da.js} | 90 +++++++------- invokeai/frontend/dist/index.html | 2 +- invokeai/frontend/dist/locales/en.json | 7 +- invokeai/frontend/dist/locales/es.json | 115 ++++++++++++++++-- invokeai/frontend/dist/locales/pt_BR.json | 76 +++++++++++- invokeai/frontend/dist/locales/ro.json | 1 + invokeai/frontend/stats.html | 2 +- 7 files changed, 225 insertions(+), 68 deletions(-) rename invokeai/frontend/dist/assets/{index-0e39fbc4.js => index-c33fa9da.js} (61%) create mode 100644 invokeai/frontend/dist/locales/ro.json diff --git a/invokeai/frontend/dist/assets/index-0e39fbc4.js b/invokeai/frontend/dist/assets/index-c33fa9da.js similarity index 61% rename from invokeai/frontend/dist/assets/index-0e39fbc4.js rename to invokeai/frontend/dist/assets/index-c33fa9da.js index 62299eb79e..36991a7111 100644 --- a/invokeai/frontend/dist/assets/index-0e39fbc4.js +++ b/invokeai/frontend/dist/assets/index-c33fa9da.js @@ -1,4 +1,4 @@ -function Cj(e,t){for(var n=0;nr[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();var So=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function S7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var g={},XQ={get exports(){return g},set exports(e){g=e}},V3={},S={},ZQ={get exports(){return S},set exports(e){S=e}},Jt={};/** +function Cj(e,t){for(var n=0;nr[i]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const a of o.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(i){if(i.ep)return;i.ep=!0;const o=n(i);fetch(i.href,o)}})();var So=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function S7(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var g={},ZQ={get exports(){return g},set exports(e){g=e}},V3={},S={},QQ={get exports(){return S},set exports(e){S=e}},Jt={};/** * @license React * react.production.min.js * @@ -6,7 +6,7 @@ function Cj(e,t){for(var n=0;n0?Vi(s0,--ea):0,jm--,ri===10&&(jm=1,q3--),ri}function Ea(){return ri=ea2||ey(ri)>3?"":" "}function AJ(e,t){for(;--t&&Ea()&&!(ri<48||ri>102||ri>57&&ri<65||ri>70&&ri<97););return Gy(e,Ax()+(t<6&&Ul()==32&&Ea()==32))}function m6(e){for(;Ea();)switch(ri){case e:return ea;case 34:case 39:e!==34&&e!==39&&m6(ri);break;case 40:e===41&&m6(e);break;case 92:Ea();break}return ea}function OJ(e,t){for(;Ea()&&e+ri!==47+10;)if(e+ri===42+42&&Ul()===47)break;return"/*"+Gy(t,ea-1)+"*"+G3(e===47?e:Ea())}function RJ(e){for(;!ey(Ul());)Ea();return Gy(e,ea)}function IJ(e){return Nj(Rx("",null,null,null,[""],e=jj(e),0,[0],e))}function Rx(e,t,n,r,i,o,a,s,l){for(var u=0,d=0,h=a,m=0,y=0,b=0,w=1,E=1,_=1,k=0,T="",L=i,O=o,D=r,I=T;E;)switch(b=k,k=Ea()){case 40:if(b!=108&&Vi(I,h-1)==58){g6(I+=kn(Ox(k),"&","&\f"),"&\f")!=-1&&(_=-1);break}case 34:case 39:case 91:I+=Ox(k);break;case 9:case 10:case 13:case 32:I+=LJ(b);break;case 92:I+=AJ(Ax()-1,7);continue;case 47:switch(Ul()){case 42:case 47:gb(DJ(OJ(Ea(),Ax()),t,n),l);break;default:I+="/"}break;case 123*w:s[u++]=Il(I)*_;case 125*w:case 59:case 0:switch(k){case 0:case 125:E=0;case 59+d:y>0&&Il(I)-h&&gb(y>32?kT(I+";",r,n,h-1):kT(kn(I," ","")+";",r,n,h-2),l);break;case 59:I+=";";default:if(gb(D=_T(I,t,n,u,d,i,s,T,L=[],O=[],h),o),k===123)if(d===0)Rx(I,t,D,D,L,o,h,s,O);else switch(m===99&&Vi(I,3)===110?100:m){case 100:case 109:case 115:Rx(e,D,D,r&&gb(_T(e,D,D,0,0,i,s,T,i,L=[],h),O),i,O,h,s,r?L:O);break;default:Rx(I,D,D,D,[""],O,0,s,O)}}u=d=y=0,w=_=1,T=I="",h=a;break;case 58:h=1+Il(I),y=b;default:if(w<1){if(k==123)--w;else if(k==125&&w++==0&&MJ()==125)continue}switch(I+=G3(k),k*w){case 38:_=d>0?1:(I+="\f",-1);break;case 44:s[u++]=(Il(I)-1)*_,_=1;break;case 64:Ul()===45&&(I+=Ox(Ea())),m=Ul(),d=h=Il(T=I+=RJ(Ax())),k++;break;case 45:b===45&&Il(I)==2&&(w=0)}}return o}function _T(e,t,n,r,i,o,a,s,l,u,d){for(var h=i-1,m=i===0?o:[""],y=T7(m),b=0,w=0,E=0;b0?m[_]+" "+k:kn(k,/&\f/g,m[_])))&&(l[E++]=T);return K3(e,t,n,i===0?E7:s,l,u,d)}function DJ(e,t,n){return K3(e,t,n,Oj,G3(TJ()),J1(e,2,-2),0)}function kT(e,t,n,r){return K3(e,t,n,P7,J1(e,0,r),J1(e,r+1,-1),r)}function dm(e,t){for(var n="",r=T7(e),i=0;i6)switch(Vi(e,t+1)){case 109:if(Vi(e,t+4)!==45)break;case 102:return kn(e,/(.+:)(.+)-([^]+)/,"$1"+bn+"$2-$3$1"+yS+(Vi(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~g6(e,"stretch")?Fj(kn(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(Vi(e,t+1)!==115)break;case 6444:switch(Vi(e,Il(e)-3-(~g6(e,"!important")&&10))){case 107:return kn(e,":",":"+bn)+e;case 101:return kn(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+bn+(Vi(e,14)===45?"inline-":"")+"box$3$1"+bn+"$2$3$1"+no+"$2box$3")+e}break;case 5936:switch(Vi(e,t+11)){case 114:return bn+e+no+kn(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return bn+e+no+kn(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return bn+e+no+kn(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return bn+e+no+e+e}return e}var UJ=function(t,n,r,i){if(t.length>-1&&!t.return)switch(t.type){case P7:t.return=Fj(t.value,t.length);break;case Rj:return dm([Av(t,{value:kn(t.value,"@","@"+bn)})],i);case E7:if(t.length)return PJ(t.props,function(o){switch(EJ(o,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return dm([Av(t,{props:[kn(o,/:(read-\w+)/,":"+yS+"$1")]})],i);case"::placeholder":return dm([Av(t,{props:[kn(o,/:(plac\w+)/,":"+bn+"input-$1")]}),Av(t,{props:[kn(o,/:(plac\w+)/,":"+yS+"$1")]}),Av(t,{props:[kn(o,/:(plac\w+)/,no+"input-$1")]})],i)}return""})}},VJ=[UJ],Bj=function(t){var n=t.key;if(n==="css"){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,function(w){var E=w.getAttribute("data-emotion");E.indexOf(" ")!==-1&&(document.head.appendChild(w),w.setAttribute("data-s",""))})}var i=t.stylisPlugins||VJ,o={},a,s=[];a=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(w){for(var E=w.getAttribute("data-emotion").split(" "),_=1;_0?Vi(s0,--ea):0,jm--,ri===10&&(jm=1,q3--),ri}function Ea(){return ri=ea2||ey(ri)>3?"":" "}function OJ(e,t){for(;--t&&Ea()&&!(ri<48||ri>102||ri>57&&ri<65||ri>70&&ri<97););return Gy(e,Ax()+(t<6&&Ul()==32&&Ea()==32))}function m6(e){for(;Ea();)switch(ri){case e:return ea;case 34:case 39:e!==34&&e!==39&&m6(ri);break;case 40:e===41&&m6(e);break;case 92:Ea();break}return ea}function RJ(e,t){for(;Ea()&&e+ri!==47+10;)if(e+ri===42+42&&Ul()===47)break;return"/*"+Gy(t,ea-1)+"*"+G3(e===47?e:Ea())}function IJ(e){for(;!ey(Ul());)Ea();return Gy(e,ea)}function DJ(e){return Nj(Rx("",null,null,null,[""],e=jj(e),0,[0],e))}function Rx(e,t,n,r,i,o,a,s,l){for(var u=0,d=0,p=a,m=0,y=0,b=0,w=1,E=1,_=1,k=0,T="",L=i,O=o,D=r,I=T;E;)switch(b=k,k=Ea()){case 40:if(b!=108&&Vi(I,p-1)==58){g6(I+=kn(Ox(k),"&","&\f"),"&\f")!=-1&&(_=-1);break}case 34:case 39:case 91:I+=Ox(k);break;case 9:case 10:case 13:case 32:I+=AJ(b);break;case 92:I+=OJ(Ax()-1,7);continue;case 47:switch(Ul()){case 42:case 47:gb(jJ(RJ(Ea(),Ax()),t,n),l);break;default:I+="/"}break;case 123*w:s[u++]=Il(I)*_;case 125*w:case 59:case 0:switch(k){case 0:case 125:E=0;case 59+d:y>0&&Il(I)-p&&gb(y>32?kT(I+";",r,n,p-1):kT(kn(I," ","")+";",r,n,p-2),l);break;case 59:I+=";";default:if(gb(D=_T(I,t,n,u,d,i,s,T,L=[],O=[],p),o),k===123)if(d===0)Rx(I,t,D,D,L,o,p,s,O);else switch(m===99&&Vi(I,3)===110?100:m){case 100:case 109:case 115:Rx(e,D,D,r&&gb(_T(e,D,D,0,0,i,s,T,i,L=[],p),O),i,O,p,s,r?L:O);break;default:Rx(I,D,D,D,[""],O,0,s,O)}}u=d=y=0,w=_=1,T=I="",p=a;break;case 58:p=1+Il(I),y=b;default:if(w<1){if(k==123)--w;else if(k==125&&w++==0&&LJ()==125)continue}switch(I+=G3(k),k*w){case 38:_=d>0?1:(I+="\f",-1);break;case 44:s[u++]=(Il(I)-1)*_,_=1;break;case 64:Ul()===45&&(I+=Ox(Ea())),m=Ul(),d=p=Il(T=I+=IJ(Ax())),k++;break;case 45:b===45&&Il(I)==2&&(w=0)}}return o}function _T(e,t,n,r,i,o,a,s,l,u,d){for(var p=i-1,m=i===0?o:[""],y=T7(m),b=0,w=0,E=0;b0?m[_]+" "+k:kn(k,/&\f/g,m[_])))&&(l[E++]=T);return K3(e,t,n,i===0?E7:s,l,u,d)}function jJ(e,t,n){return K3(e,t,n,Oj,G3(MJ()),J1(e,2,-2),0)}function kT(e,t,n,r){return K3(e,t,n,P7,J1(e,0,r),J1(e,r+1,-1),r)}function dm(e,t){for(var n="",r=T7(e),i=0;i6)switch(Vi(e,t+1)){case 109:if(Vi(e,t+4)!==45)break;case 102:return kn(e,/(.+:)(.+)-([^]+)/,"$1"+bn+"$2-$3$1"+yS+(Vi(e,t+3)==108?"$3":"$2-$3"))+e;case 115:return~g6(e,"stretch")?Fj(kn(e,"stretch","fill-available"),t)+e:e}break;case 4949:if(Vi(e,t+1)!==115)break;case 6444:switch(Vi(e,Il(e)-3-(~g6(e,"!important")&&10))){case 107:return kn(e,":",":"+bn)+e;case 101:return kn(e,/(.+:)([^;!]+)(;|!.+)?/,"$1"+bn+(Vi(e,14)===45?"inline-":"")+"box$3$1"+bn+"$2$3$1"+no+"$2box$3")+e}break;case 5936:switch(Vi(e,t+11)){case 114:return bn+e+no+kn(e,/[svh]\w+-[tblr]{2}/,"tb")+e;case 108:return bn+e+no+kn(e,/[svh]\w+-[tblr]{2}/,"tb-rl")+e;case 45:return bn+e+no+kn(e,/[svh]\w+-[tblr]{2}/,"lr")+e}return bn+e+no+e+e}return e}var VJ=function(t,n,r,i){if(t.length>-1&&!t.return)switch(t.type){case P7:t.return=Fj(t.value,t.length);break;case Rj:return dm([Av(t,{value:kn(t.value,"@","@"+bn)})],i);case E7:if(t.length)return TJ(t.props,function(o){switch(PJ(o,/(::plac\w+|:read-\w+)/)){case":read-only":case":read-write":return dm([Av(t,{props:[kn(o,/:(read-\w+)/,":"+yS+"$1")]})],i);case"::placeholder":return dm([Av(t,{props:[kn(o,/:(plac\w+)/,":"+bn+"input-$1")]}),Av(t,{props:[kn(o,/:(plac\w+)/,":"+yS+"$1")]}),Av(t,{props:[kn(o,/:(plac\w+)/,no+"input-$1")]})],i)}return""})}},GJ=[VJ],Bj=function(t){var n=t.key;if(n==="css"){var r=document.querySelectorAll("style[data-emotion]:not([data-s])");Array.prototype.forEach.call(r,function(w){var E=w.getAttribute("data-emotion");E.indexOf(" ")!==-1&&(document.head.appendChild(w),w.setAttribute("data-s",""))})}var i=t.stylisPlugins||GJ,o={},a,s=[];a=t.container||document.head,Array.prototype.forEach.call(document.querySelectorAll('style[data-emotion^="'+n+' "]'),function(w){for(var E=w.getAttribute("data-emotion").split(" "),_=1;_=4;++r,i-=4)n=e.charCodeAt(r)&255|(e.charCodeAt(++r)&255)<<8|(e.charCodeAt(++r)&255)<<16|(e.charCodeAt(++r)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,t=(n&65535)*1540483477+((n>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(i){case 3:t^=(e.charCodeAt(r+2)&255)<<16;case 2:t^=(e.charCodeAt(r+1)&255)<<8;case 1:t^=e.charCodeAt(r)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}var ree={animationIterationCount:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},iee=/[A-Z]|^ms/g,oee=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Gj=function(t){return t.charCodeAt(1)===45},TT=function(t){return t!=null&&typeof t!="boolean"},s5=$j(function(e){return Gj(e)?e:e.replace(iee,"-$&").toLowerCase()}),MT=function(t,n){switch(t){case"animation":case"animationName":if(typeof n=="string")return n.replace(oee,function(r,i,o){return Dl={name:i,styles:o,next:Dl},i})}return ree[t]!==1&&!Gj(t)&&typeof n=="number"&&n!==0?n+"px":n};function ty(e,t,n){if(n==null)return"";if(n.__emotion_styles!==void 0)return n;switch(typeof n){case"boolean":return"";case"object":{if(n.anim===1)return Dl={name:n.name,styles:n.styles,next:Dl},n.name;if(n.styles!==void 0){var r=n.next;if(r!==void 0)for(;r!==void 0;)Dl={name:r.name,styles:r.styles,next:Dl},r=r.next;var i=n.styles+";";return i}return aee(e,t,n)}case"function":{if(e!==void 0){var o=Dl,a=n(e);return Dl=o,ty(e,t,a)}break}}if(t==null)return n;var s=t[n];return s!==void 0?s:n}function aee(e,t,n){var r="";if(Array.isArray(n))for(var i=0;i=4;++r,i-=4)n=e.charCodeAt(r)&255|(e.charCodeAt(++r)&255)<<8|(e.charCodeAt(++r)&255)<<16|(e.charCodeAt(++r)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,t=(n&65535)*1540483477+((n>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(i){case 3:t^=(e.charCodeAt(r+2)&255)<<16;case 2:t^=(e.charCodeAt(r+1)&255)<<8;case 1:t^=e.charCodeAt(r)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}var iee={animationIterationCount:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},oee=/[A-Z]|^ms/g,aee=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Gj=function(t){return t.charCodeAt(1)===45},TT=function(t){return t!=null&&typeof t!="boolean"},s5=$j(function(e){return Gj(e)?e:e.replace(oee,"-$&").toLowerCase()}),MT=function(t,n){switch(t){case"animation":case"animationName":if(typeof n=="string")return n.replace(aee,function(r,i,o){return Dl={name:i,styles:o,next:Dl},i})}return iee[t]!==1&&!Gj(t)&&typeof n=="number"&&n!==0?n+"px":n};function ty(e,t,n){if(n==null)return"";if(n.__emotion_styles!==void 0)return n;switch(typeof n){case"boolean":return"";case"object":{if(n.anim===1)return Dl={name:n.name,styles:n.styles,next:Dl},n.name;if(n.styles!==void 0){var r=n.next;if(r!==void 0)for(;r!==void 0;)Dl={name:r.name,styles:r.styles,next:Dl},r=r.next;var i=n.styles+";";return i}return see(e,t,n)}case"function":{if(e!==void 0){var o=Dl,a=n(e);return Dl=o,ty(e,t,a)}break}}if(t==null)return n;var s=t[n];return s!==void 0?s:n}function see(e,t,n){var r="";if(Array.isArray(n))for(var i=0;ig.jsx(ow,{styles:Xj}),gee=()=>g.jsx(ow,{styles:` +`,gee=()=>g.jsx(ow,{styles:Xj}),mee=()=>g.jsx(ow,{styles:` html { line-height: 1.5; -webkit-text-size-adjust: 100%; @@ -321,7 +321,7 @@ function Cj(e,t){for(var n=0;n>>1,Ce=G[fe];if(0>>1;fei(Le,ee))Sei(Qe,Le)?(G[fe]=Qe,G[Se]=ee,fe=Se):(G[fe]=Le,G[xe]=ee,fe=xe);else if(Sei(Qe,ee))G[fe]=Qe,G[Se]=ee,fe=Se;else break e}}return Y}function i(G,Y){var ee=G.sortIndex-Y.sortIndex;return ee!==0?ee:G.id-Y.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var a=Date,s=a.now();e.unstable_now=function(){return a.now()-s}}var l=[],u=[],d=1,h=null,m=3,y=!1,b=!1,w=!1,E=typeof setTimeout=="function"?setTimeout:null,_=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function T(G){for(var Y=n(u);Y!==null;){if(Y.callback===null)r(u);else if(Y.startTime<=G)r(u),Y.sortIndex=Y.expirationTime,t(l,Y);else break;Y=n(u)}}function L(G){if(w=!1,T(G),!b)if(n(l)!==null)b=!0,X(O);else{var Y=n(u);Y!==null&&Q(L,Y.startTime-G)}}function O(G,Y){b=!1,w&&(w=!1,_(N),N=-1),y=!0;var ee=m;try{for(T(Y),h=n(l);h!==null&&(!(h.expirationTime>Y)||G&&!K());){var fe=h.callback;if(typeof fe=="function"){h.callback=null,m=h.priorityLevel;var Ce=fe(h.expirationTime<=Y);Y=e.unstable_now(),typeof Ce=="function"?h.callback=Ce:h===n(l)&&r(l),T(Y)}else r(l);h=n(l)}if(h!==null)var we=!0;else{var xe=n(u);xe!==null&&Q(L,xe.startTime-Y),we=!1}return we}finally{h=null,m=ee,y=!1}}var D=!1,I=null,N=-1,W=5,B=-1;function K(){return!(e.unstable_now()-BG||125fe?(G.sortIndex=ee,t(u,G),n(l)===null&&G===n(u)&&(w?(_(N),N=-1):w=!0,Q(L,ee-fe))):(G.sortIndex=Ce,t(l,G),b||y||(b=!0,X(O))),G},e.unstable_shouldYield=K,e.unstable_wrapCallback=function(G){var Y=m;return function(){var ee=m;m=Y;try{return G.apply(this,arguments)}finally{m=ee}}}})(Qj);(function(e){e.exports=Qj})(xee);/** + */(function(e){function t(G,Y){var ee=G.length;G.push(Y);e:for(;0>>1,_e=G[fe];if(0>>1;fei(Le,ee))Se<_e&&0>i(Je,Le)?(G[fe]=Je,G[Se]=ee,fe=Se):(G[fe]=Le,G[xe]=ee,fe=xe);else if(Se<_e&&0>i(Je,ee))G[fe]=Je,G[Se]=ee,fe=Se;else break e}}return Y}function i(G,Y){var ee=G.sortIndex-Y.sortIndex;return ee!==0?ee:G.id-Y.id}if(typeof performance=="object"&&typeof performance.now=="function"){var o=performance;e.unstable_now=function(){return o.now()}}else{var a=Date,s=a.now();e.unstable_now=function(){return a.now()-s}}var l=[],u=[],d=1,p=null,m=3,y=!1,b=!1,w=!1,E=typeof setTimeout=="function"?setTimeout:null,_=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function T(G){for(var Y=n(u);Y!==null;){if(Y.callback===null)r(u);else if(Y.startTime<=G)r(u),Y.sortIndex=Y.expirationTime,t(l,Y);else break;Y=n(u)}}function L(G){if(w=!1,T(G),!b)if(n(l)!==null)b=!0,X(O);else{var Y=n(u);Y!==null&&Q(L,Y.startTime-G)}}function O(G,Y){b=!1,w&&(w=!1,_(N),N=-1),y=!0;var ee=m;try{for(T(Y),p=n(l);p!==null&&(!(p.expirationTime>Y)||G&&!K());){var fe=p.callback;if(typeof fe=="function"){p.callback=null,m=p.priorityLevel;var _e=fe(p.expirationTime<=Y);Y=e.unstable_now(),typeof _e=="function"?p.callback=_e:p===n(l)&&r(l),T(Y)}else r(l);p=n(l)}if(p!==null)var we=!0;else{var xe=n(u);xe!==null&&Q(L,xe.startTime-Y),we=!1}return we}finally{p=null,m=ee,y=!1}}var D=!1,I=null,N=-1,W=5,B=-1;function K(){return!(e.unstable_now()-BG||125fe?(G.sortIndex=ee,t(u,G),n(l)===null&&G===n(u)&&(w?(_(N),N=-1):w=!0,Q(L,ee-fe))):(G.sortIndex=_e,t(l,G),b||y||(b=!0,X(O))),G},e.unstable_shouldYield=K,e.unstable_wrapCallback=function(G){var Y=m;return function(){var ee=m;m=Y;try{return G.apply(this,arguments)}finally{m=ee}}}})(Qj);(function(e){e.exports=Qj})(See);/** * @license React * react-dom.production.min.js * @@ -337,14 +337,14 @@ function Cj(e,t){for(var n=0;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),y6=Object.prototype.hasOwnProperty,See=/^[: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]*$/,OT={},RT={};function wee(e){return y6.call(RT,e)?!0:y6.call(OT,e)?!1:See.test(e)?RT[e]=!0:(OT[e]=!0,!1)}function Cee(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 _ee(e,t,n,r){if(t===null||typeof t>"u"||Cee(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 To(e,t,n,r,i,o,a){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=a}var Ki={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ki[e]=new To(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ki[t]=new To(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ki[e]=new To(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ki[e]=new To(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){Ki[e]=new To(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Ki[e]=new To(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Ki[e]=new To(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Ki[e]=new To(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Ki[e]=new To(e,5,!1,e.toLowerCase(),null,!1,!1)});var R7=/[\-:]([a-z])/g;function I7(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(R7,I7);Ki[t]=new To(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(R7,I7);Ki[t]=new To(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(R7,I7);Ki[t]=new To(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Ki[e]=new To(e,1,!1,e.toLowerCase(),null,!1,!1)});Ki.xlinkHref=new To("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Ki[e]=new To(e,1,!1,e.toLowerCase(),null,!0,!0)});function D7(e,t,n,r){var i=Ki.hasOwnProperty(t)?Ki[t]:null;(i!==null?i.type!==0:r||!(2"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),y6=Object.prototype.hasOwnProperty,wee=/^[: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]*$/,OT={},RT={};function Cee(e){return y6.call(RT,e)?!0:y6.call(OT,e)?!1:wee.test(e)?RT[e]=!0:(OT[e]=!0,!1)}function _ee(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 kee(e,t,n,r){if(t===null||typeof t>"u"||_ee(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 To(e,t,n,r,i,o,a){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=o,this.removeEmptyString=a}var Ki={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ki[e]=new To(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ki[t]=new To(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ki[e]=new To(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ki[e]=new To(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){Ki[e]=new To(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){Ki[e]=new To(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){Ki[e]=new To(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){Ki[e]=new To(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){Ki[e]=new To(e,5,!1,e.toLowerCase(),null,!1,!1)});var R7=/[\-:]([a-z])/g;function I7(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(R7,I7);Ki[t]=new To(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(R7,I7);Ki[t]=new To(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(R7,I7);Ki[t]=new To(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){Ki[e]=new To(e,1,!1,e.toLowerCase(),null,!1,!1)});Ki.xlinkHref=new To("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){Ki[e]=new To(e,1,!1,e.toLowerCase(),null,!0,!0)});function D7(e,t,n,r){var i=Ki.hasOwnProperty(t)?Ki[t]:null;(i!==null?i.type!==0:r||!(2s||i[a]!==o[s]){var l=` -`+i[a].replace(" at new "," at ");return e.displayName&&l.includes("")&&(l=l.replace("",e.displayName)),l}while(1<=a&&0<=s);break}}}finally{u5=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?i1(e):""}function kee(e){switch(e.tag){case 5:return i1(e.type);case 16:return i1("Lazy");case 13:return i1("Suspense");case 19:return i1("SuspenseList");case 0:case 2:case 15:return e=c5(e.type,!1),e;case 11:return e=c5(e.type.render,!1),e;case 1:return e=c5(e.type,!0),e;default:return""}}function w6(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 zg:return"Fragment";case Bg:return"Portal";case b6:return"Profiler";case j7:return"StrictMode";case x6:return"Suspense";case S6:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case nN:return(e.displayName||"Context")+".Consumer";case tN:return(e._context.displayName||"Context")+".Provider";case N7:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case $7:return t=e.displayName||null,t!==null?t:w6(e.type)||"Memo";case hd:t=e._payload,e=e._init;try{return w6(e(t))}catch{}}return null}function Eee(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 w6(t);case 8:return t===j7?"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 Ud(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function iN(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Pee(e){var t=iN(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 i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(a){r=""+a,o.call(this,a)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function vb(e){e._valueTracker||(e._valueTracker=Pee(e))}function oN(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=iN(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function bS(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 C6(e,t){var n=t.checked;return Pr({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function DT(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Ud(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 aN(e,t){t=t.checked,t!=null&&D7(e,"checked",t,!1)}function _6(e,t){aN(e,t);var n=Ud(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")?k6(e,t.type,n):t.hasOwnProperty("defaultValue")&&k6(e,t.type,Ud(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function jT(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 k6(e,t,n){(t!=="number"||bS(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var o1=Array.isArray;function fm(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=yb.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function iy(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var C1={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},Tee=["Webkit","ms","Moz","O"];Object.keys(C1).forEach(function(e){Tee.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),C1[t]=C1[e]})});function cN(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||C1.hasOwnProperty(e)&&C1[e]?(""+t).trim():t+"px"}function dN(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=cN(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var Mee=Pr({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 T6(e,t){if(t){if(Mee[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(ze(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(ze(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(ze(61))}if(t.style!=null&&typeof t.style!="object")throw Error(ze(62))}}function M6(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 L6=null;function F7(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var A6=null,hm=null,pm=null;function FT(e){if(e=Yy(e)){if(typeof A6!="function")throw Error(ze(280));var t=e.stateNode;t&&(t=cw(t),A6(e.stateNode,e.type,t))}}function fN(e){hm?pm?pm.push(e):pm=[e]:hm=e}function hN(){if(hm){var e=hm,t=pm;if(pm=hm=null,FT(e),t)for(e=0;e>>=0,e===0?32:31-(Bee(e)/zee|0)|0}var bb=64,xb=4194304;function a1(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 CS(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,a=n&268435455;if(a!==0){var s=a&~i;s!==0?r=a1(s):(o&=a,o!==0&&(r=a1(o)))}else a=n&~i,a!==0?r=a1(a):o!==0&&(r=a1(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,o=t&-t,i>=o||i===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 qy(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Gs(t),e[t]=n}function Vee(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=k1),KT=String.fromCharCode(32),YT=!1;function RN(e,t){switch(e){case"keyup":return bte.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function IN(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Hg=!1;function Ste(e,t){switch(e){case"compositionend":return IN(t);case"keypress":return t.which!==32?null:(YT=!0,KT);case"textInput":return e=t.data,e===KT&&YT?null:e;default:return null}}function wte(e,t){if(Hg)return e==="compositionend"||!q7&&RN(e,t)?(e=AN(),Dx=U7=Sd=null,Hg=!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=JT(n)}}function $N(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?$N(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function FN(){for(var e=window,t=bS();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=bS(e.document)}return t}function K7(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 Ate(e){var t=FN(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&$N(n.ownerDocument.documentElement,n)){if(r!==null&&K7(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 i=n.textContent.length,o=Math.min(r.start,i);r=r.end===void 0?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=eM(n,o);var a=eM(n,r);i&&a&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.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,Wg=null,N6=null,P1=null,$6=!1;function tM(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;$6||Wg==null||Wg!==bS(r)||(r=Wg,"selectionStart"in r&&K7(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}),P1&&cy(P1,r)||(P1=r,r=ES(N6,"onSelect"),0Gg||(e.current=U6[Gg],U6[Gg]=null,Gg--)}function nr(e,t){Gg++,U6[Gg]=e.current,e.current=t}var Vd={},lo=of(Vd),Ko=of(!1),Hh=Vd;function $m(e,t){var n=e.type.contextTypes;if(!n)return Vd;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Yo(e){return e=e.childContextTypes,e!=null}function TS(){cr(Ko),cr(lo)}function lM(e,t,n){if(lo.current!==Vd)throw Error(ze(168));nr(lo,t),nr(Ko,n)}function KN(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(ze(108,Eee(e)||"Unknown",i));return Pr({},n,r)}function MS(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Vd,Hh=lo.current,nr(lo,e),nr(Ko,Ko.current),!0}function uM(e,t,n){var r=e.stateNode;if(!r)throw Error(ze(169));n?(e=KN(e,t,Hh),r.__reactInternalMemoizedMergedChildContext=e,cr(Ko),cr(lo),nr(lo,e)):cr(Ko),nr(Ko,n)}var ju=null,dw=!1,_5=!1;function YN(e){ju===null?ju=[e]:ju.push(e)}function Wte(e){dw=!0,YN(e)}function af(){if(!_5&&ju!==null){_5=!0;var e=0,t=In;try{var n=ju;for(In=1;e>=a,i-=a,Fu=1<<32-Gs(t)+i|n<N?(W=I,I=null):W=I.sibling;var B=m(_,I,T[N],L);if(B===null){I===null&&(I=W);break}e&&I&&B.alternate===null&&t(_,I),k=o(B,k,N),D===null?O=B:D.sibling=B,D=B,I=W}if(N===T.length)return n(_,I),yr&&uh(_,N),O;if(I===null){for(;NN?(W=I,I=null):W=I.sibling;var K=m(_,I,B.value,L);if(K===null){I===null&&(I=W);break}e&&I&&K.alternate===null&&t(_,I),k=o(K,k,N),D===null?O=K:D.sibling=K,D=K,I=W}if(B.done)return n(_,I),yr&&uh(_,N),O;if(I===null){for(;!B.done;N++,B=T.next())B=h(_,B.value,L),B!==null&&(k=o(B,k,N),D===null?O=B:D.sibling=B,D=B);return yr&&uh(_,N),O}for(I=r(_,I);!B.done;N++,B=T.next())B=y(I,_,N,B.value,L),B!==null&&(e&&B.alternate!==null&&I.delete(B.key===null?N:B.key),k=o(B,k,N),D===null?O=B:D.sibling=B,D=B);return e&&I.forEach(function(ne){return t(_,ne)}),yr&&uh(_,N),O}function E(_,k,T,L){if(typeof T=="object"&&T!==null&&T.type===zg&&T.key===null&&(T=T.props.children),typeof T=="object"&&T!==null){switch(T.$$typeof){case mb:e:{for(var O=T.key,D=k;D!==null;){if(D.key===O){if(O=T.type,O===zg){if(D.tag===7){n(_,D.sibling),k=i(D,T.props.children),k.return=_,_=k;break e}}else if(D.elementType===O||typeof O=="object"&&O!==null&&O.$$typeof===hd&&mM(O)===D.type){n(_,D.sibling),k=i(D,T.props),k.ref=Nv(_,D,T),k.return=_,_=k;break e}n(_,D);break}else t(_,D);D=D.sibling}T.type===zg?(k=Lh(T.props.children,_.mode,L,T.key),k.return=_,_=k):(L=Wx(T.type,T.key,T.props,null,_.mode,L),L.ref=Nv(_,k,T),L.return=_,_=L)}return a(_);case Bg:e:{for(D=T.key;k!==null;){if(k.key===D)if(k.tag===4&&k.stateNode.containerInfo===T.containerInfo&&k.stateNode.implementation===T.implementation){n(_,k.sibling),k=i(k,T.children||[]),k.return=_,_=k;break e}else{n(_,k);break}else t(_,k);k=k.sibling}k=O5(T,_.mode,L),k.return=_,_=k}return a(_);case hd:return D=T._init,E(_,k,D(T._payload),L)}if(o1(T))return b(_,k,T,L);if(Ov(T))return w(_,k,T,L);Pb(_,T)}return typeof T=="string"&&T!==""||typeof T=="number"?(T=""+T,k!==null&&k.tag===6?(n(_,k.sibling),k=i(k,T),k.return=_,_=k):(n(_,k),k=A5(T,_.mode,L),k.return=_,_=k),a(_)):n(_,k)}return E}var Bm=r$(!0),i$=r$(!1),Xy={},ql=of(Xy),py=of(Xy),gy=of(Xy);function _h(e){if(e===Xy)throw Error(ze(174));return e}function r9(e,t){switch(nr(gy,t),nr(py,e),nr(ql,Xy),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:P6(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=P6(t,e)}cr(ql),nr(ql,t)}function zm(){cr(ql),cr(py),cr(gy)}function o$(e){_h(gy.current);var t=_h(ql.current),n=P6(t,e.type);t!==n&&(nr(py,e),nr(ql,n))}function i9(e){py.current===e&&(cr(ql),cr(py))}var kr=of(0);function DS(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 k5=[];function o9(){for(var e=0;en?n:4,e(!0);var r=E5.transition;E5.transition={};try{e(!1),t()}finally{In=n,E5.transition=r}}function S$(){return as().memoizedState}function qte(e,t,n){var r=Dd(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},w$(e))C$(t,n);else if(n=JN(e,t,n,r),n!==null){var i=_o();qs(n,e,r,i),_$(n,t,r)}}function Kte(e,t,n){var r=Dd(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(w$(e))C$(t,i);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var a=t.lastRenderedState,s=o(a,n);if(i.hasEagerState=!0,i.eagerState=s,Zs(s,a)){var l=t.interleaved;l===null?(i.next=i,t9(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}n=JN(e,t,i,r),n!==null&&(i=_o(),qs(n,e,r,i),_$(n,t,r))}}function w$(e){var t=e.alternate;return e===Er||t!==null&&t===Er}function C$(e,t){T1=jS=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function _$(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,z7(e,n)}}var NS={readContext:os,useCallback:eo,useContext:eo,useEffect:eo,useImperativeHandle:eo,useInsertionEffect:eo,useLayoutEffect:eo,useMemo:eo,useReducer:eo,useRef:eo,useState:eo,useDebugValue:eo,useDeferredValue:eo,useTransition:eo,useMutableSource:eo,useSyncExternalStore:eo,useId:eo,unstable_isNewReconciler:!1},Yte={readContext:os,useCallback:function(e,t){return Ll().memoizedState=[e,t===void 0?null:t],e},useContext:os,useEffect:yM,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Fx(4194308,4,m$.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Fx(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fx(4,2,e,t)},useMemo:function(e,t){var n=Ll();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ll();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=qte.bind(null,Er,e),[r.memoizedState,e]},useRef:function(e){var t=Ll();return e={current:e},t.memoizedState=e},useState:vM,useDebugValue:c9,useDeferredValue:function(e){return Ll().memoizedState=e},useTransition:function(){var e=vM(!1),t=e[0];return e=Gte.bind(null,e[1]),Ll().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Er,i=Ll();if(yr){if(n===void 0)throw Error(ze(407));n=n()}else{if(n=t(),Ai===null)throw Error(ze(349));Uh&30||l$(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,yM(c$.bind(null,r,o,e),[e]),r.flags|=2048,yy(9,u$.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Ll(),t=Ai.identifierPrefix;if(yr){var n=Bu,r=Fu;n=(r&~(1<<32-Gs(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=my++,0")&&(l=l.replace("",e.displayName)),l}while(1<=a&&0<=s);break}}}finally{u5=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?i1(e):""}function Eee(e){switch(e.tag){case 5:return i1(e.type);case 16:return i1("Lazy");case 13:return i1("Suspense");case 19:return i1("SuspenseList");case 0:case 2:case 15:return e=c5(e.type,!1),e;case 11:return e=c5(e.type.render,!1),e;case 1:return e=c5(e.type,!0),e;default:return""}}function w6(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 zg:return"Fragment";case Bg:return"Portal";case b6:return"Profiler";case j7:return"StrictMode";case x6:return"Suspense";case S6:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case nN:return(e.displayName||"Context")+".Consumer";case tN:return(e._context.displayName||"Context")+".Provider";case N7:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case $7:return t=e.displayName||null,t!==null?t:w6(e.type)||"Memo";case hd:t=e._payload,e=e._init;try{return w6(e(t))}catch{}}return null}function Pee(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 w6(t);case 8:return t===j7?"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 Ud(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function iN(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function Tee(e){var t=iN(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 i=n.get,o=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(a){r=""+a,o.call(this,a)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(a){r=""+a},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function vb(e){e._valueTracker||(e._valueTracker=Tee(e))}function oN(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=iN(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function bS(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 C6(e,t){var n=t.checked;return Pr({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function DT(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Ud(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 aN(e,t){t=t.checked,t!=null&&D7(e,"checked",t,!1)}function _6(e,t){aN(e,t);var n=Ud(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")?k6(e,t.type,n):t.hasOwnProperty("defaultValue")&&k6(e,t.type,Ud(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function jT(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 k6(e,t,n){(t!=="number"||bS(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var o1=Array.isArray;function fm(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i"+t.valueOf().toString()+"",t=yb.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function iy(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var C1={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},Mee=["Webkit","ms","Moz","O"];Object.keys(C1).forEach(function(e){Mee.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),C1[t]=C1[e]})});function cN(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||C1.hasOwnProperty(e)&&C1[e]?(""+t).trim():t+"px"}function dN(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,i=cN(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,i):e[n]=i}}var Lee=Pr({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 T6(e,t){if(t){if(Lee[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(ze(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(ze(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(ze(61))}if(t.style!=null&&typeof t.style!="object")throw Error(ze(62))}}function M6(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 L6=null;function F7(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var A6=null,hm=null,pm=null;function FT(e){if(e=Yy(e)){if(typeof A6!="function")throw Error(ze(280));var t=e.stateNode;t&&(t=cw(t),A6(e.stateNode,e.type,t))}}function fN(e){hm?pm?pm.push(e):pm=[e]:hm=e}function hN(){if(hm){var e=hm,t=pm;if(pm=hm=null,FT(e),t)for(e=0;e>>=0,e===0?32:31-(zee(e)/Hee|0)|0}var bb=64,xb=4194304;function a1(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 CS(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,o=e.pingedLanes,a=n&268435455;if(a!==0){var s=a&~i;s!==0?r=a1(s):(o&=a,o!==0&&(r=a1(o)))}else a=n&~i,a!==0?r=a1(a):o!==0&&(r=a1(o));if(r===0)return 0;if(t!==0&&t!==r&&!(t&i)&&(i=r&-r,o=t&-t,i>=o||i===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 qy(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Gs(t),e[t]=n}function Gee(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=k1),KT=String.fromCharCode(32),YT=!1;function RN(e,t){switch(e){case"keyup":return xte.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function IN(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Hg=!1;function wte(e,t){switch(e){case"compositionend":return IN(t);case"keypress":return t.which!==32?null:(YT=!0,KT);case"textInput":return e=t.data,e===KT&&YT?null:e;default:return null}}function Cte(e,t){if(Hg)return e==="compositionend"||!q7&&RN(e,t)?(e=AN(),Dx=U7=Sd=null,Hg=!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=JT(n)}}function $N(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?$N(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function FN(){for(var e=window,t=bS();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=bS(e.document)}return t}function K7(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 Ote(e){var t=FN(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&$N(n.ownerDocument.documentElement,n)){if(r!==null&&K7(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 i=n.textContent.length,o=Math.min(r.start,i);r=r.end===void 0?o:Math.min(r.end,i),!e.extend&&o>r&&(i=r,r=o,o=i),i=eM(n,o);var a=eM(n,r);i&&a&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==a.node||e.focusOffset!==a.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),o>r?(e.addRange(t),e.extend(a.node,a.offset)):(t.setEnd(a.node,a.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,Wg=null,N6=null,P1=null,$6=!1;function tM(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;$6||Wg==null||Wg!==bS(r)||(r=Wg,"selectionStart"in r&&K7(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}),P1&&cy(P1,r)||(P1=r,r=ES(N6,"onSelect"),0Gg||(e.current=U6[Gg],U6[Gg]=null,Gg--)}function nr(e,t){Gg++,U6[Gg]=e.current,e.current=t}var Vd={},lo=of(Vd),Ko=of(!1),Hh=Vd;function $m(e,t){var n=e.type.contextTypes;if(!n)return Vd;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},o;for(o in n)i[o]=t[o];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function Yo(e){return e=e.childContextTypes,e!=null}function TS(){cr(Ko),cr(lo)}function lM(e,t,n){if(lo.current!==Vd)throw Error(ze(168));nr(lo,t),nr(Ko,n)}function KN(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var i in r)if(!(i in t))throw Error(ze(108,Pee(e)||"Unknown",i));return Pr({},n,r)}function MS(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Vd,Hh=lo.current,nr(lo,e),nr(Ko,Ko.current),!0}function uM(e,t,n){var r=e.stateNode;if(!r)throw Error(ze(169));n?(e=KN(e,t,Hh),r.__reactInternalMemoizedMergedChildContext=e,cr(Ko),cr(lo),nr(lo,e)):cr(Ko),nr(Ko,n)}var ju=null,dw=!1,_5=!1;function YN(e){ju===null?ju=[e]:ju.push(e)}function Ute(e){dw=!0,YN(e)}function af(){if(!_5&&ju!==null){_5=!0;var e=0,t=In;try{var n=ju;for(In=1;e>=a,i-=a,Fu=1<<32-Gs(t)+i|n<N?(W=I,I=null):W=I.sibling;var B=m(_,I,T[N],L);if(B===null){I===null&&(I=W);break}e&&I&&B.alternate===null&&t(_,I),k=o(B,k,N),D===null?O=B:D.sibling=B,D=B,I=W}if(N===T.length)return n(_,I),yr&&uh(_,N),O;if(I===null){for(;NN?(W=I,I=null):W=I.sibling;var K=m(_,I,B.value,L);if(K===null){I===null&&(I=W);break}e&&I&&K.alternate===null&&t(_,I),k=o(K,k,N),D===null?O=K:D.sibling=K,D=K,I=W}if(B.done)return n(_,I),yr&&uh(_,N),O;if(I===null){for(;!B.done;N++,B=T.next())B=p(_,B.value,L),B!==null&&(k=o(B,k,N),D===null?O=B:D.sibling=B,D=B);return yr&&uh(_,N),O}for(I=r(_,I);!B.done;N++,B=T.next())B=y(I,_,N,B.value,L),B!==null&&(e&&B.alternate!==null&&I.delete(B.key===null?N:B.key),k=o(B,k,N),D===null?O=B:D.sibling=B,D=B);return e&&I.forEach(function(ne){return t(_,ne)}),yr&&uh(_,N),O}function E(_,k,T,L){if(typeof T=="object"&&T!==null&&T.type===zg&&T.key===null&&(T=T.props.children),typeof T=="object"&&T!==null){switch(T.$$typeof){case mb:e:{for(var O=T.key,D=k;D!==null;){if(D.key===O){if(O=T.type,O===zg){if(D.tag===7){n(_,D.sibling),k=i(D,T.props.children),k.return=_,_=k;break e}}else if(D.elementType===O||typeof O=="object"&&O!==null&&O.$$typeof===hd&&mM(O)===D.type){n(_,D.sibling),k=i(D,T.props),k.ref=Nv(_,D,T),k.return=_,_=k;break e}n(_,D);break}else t(_,D);D=D.sibling}T.type===zg?(k=Lh(T.props.children,_.mode,L,T.key),k.return=_,_=k):(L=Wx(T.type,T.key,T.props,null,_.mode,L),L.ref=Nv(_,k,T),L.return=_,_=L)}return a(_);case Bg:e:{for(D=T.key;k!==null;){if(k.key===D)if(k.tag===4&&k.stateNode.containerInfo===T.containerInfo&&k.stateNode.implementation===T.implementation){n(_,k.sibling),k=i(k,T.children||[]),k.return=_,_=k;break e}else{n(_,k);break}else t(_,k);k=k.sibling}k=O5(T,_.mode,L),k.return=_,_=k}return a(_);case hd:return D=T._init,E(_,k,D(T._payload),L)}if(o1(T))return b(_,k,T,L);if(Ov(T))return w(_,k,T,L);Pb(_,T)}return typeof T=="string"&&T!==""||typeof T=="number"?(T=""+T,k!==null&&k.tag===6?(n(_,k.sibling),k=i(k,T),k.return=_,_=k):(n(_,k),k=A5(T,_.mode,L),k.return=_,_=k),a(_)):n(_,k)}return E}var Bm=r$(!0),i$=r$(!1),Xy={},ql=of(Xy),py=of(Xy),gy=of(Xy);function _h(e){if(e===Xy)throw Error(ze(174));return e}function r9(e,t){switch(nr(gy,t),nr(py,e),nr(ql,Xy),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:P6(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=P6(t,e)}cr(ql),nr(ql,t)}function zm(){cr(ql),cr(py),cr(gy)}function o$(e){_h(gy.current);var t=_h(ql.current),n=P6(t,e.type);t!==n&&(nr(py,e),nr(ql,n))}function i9(e){py.current===e&&(cr(ql),cr(py))}var kr=of(0);function DS(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 k5=[];function o9(){for(var e=0;en?n:4,e(!0);var r=E5.transition;E5.transition={};try{e(!1),t()}finally{In=n,E5.transition=r}}function S$(){return as().memoizedState}function Kte(e,t,n){var r=Dd(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},w$(e))C$(t,n);else if(n=JN(e,t,n,r),n!==null){var i=_o();qs(n,e,r,i),_$(n,t,r)}}function Yte(e,t,n){var r=Dd(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(w$(e))C$(t,i);else{var o=e.alternate;if(e.lanes===0&&(o===null||o.lanes===0)&&(o=t.lastRenderedReducer,o!==null))try{var a=t.lastRenderedState,s=o(a,n);if(i.hasEagerState=!0,i.eagerState=s,Zs(s,a)){var l=t.interleaved;l===null?(i.next=i,t9(t)):(i.next=l.next,l.next=i),t.interleaved=i;return}}catch{}finally{}n=JN(e,t,i,r),n!==null&&(i=_o(),qs(n,e,r,i),_$(n,t,r))}}function w$(e){var t=e.alternate;return e===Er||t!==null&&t===Er}function C$(e,t){T1=jS=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function _$(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,z7(e,n)}}var NS={readContext:os,useCallback:eo,useContext:eo,useEffect:eo,useImperativeHandle:eo,useInsertionEffect:eo,useLayoutEffect:eo,useMemo:eo,useReducer:eo,useRef:eo,useState:eo,useDebugValue:eo,useDeferredValue:eo,useTransition:eo,useMutableSource:eo,useSyncExternalStore:eo,useId:eo,unstable_isNewReconciler:!1},Xte={readContext:os,useCallback:function(e,t){return Ll().memoizedState=[e,t===void 0?null:t],e},useContext:os,useEffect:yM,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Fx(4194308,4,m$.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Fx(4194308,4,e,t)},useInsertionEffect:function(e,t){return Fx(4,2,e,t)},useMemo:function(e,t){var n=Ll();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Ll();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=Kte.bind(null,Er,e),[r.memoizedState,e]},useRef:function(e){var t=Ll();return e={current:e},t.memoizedState=e},useState:vM,useDebugValue:c9,useDeferredValue:function(e){return Ll().memoizedState=e},useTransition:function(){var e=vM(!1),t=e[0];return e=qte.bind(null,e[1]),Ll().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Er,i=Ll();if(yr){if(n===void 0)throw Error(ze(407));n=n()}else{if(n=t(),Ai===null)throw Error(ze(349));Uh&30||l$(r,t,n)}i.memoizedState=n;var o={value:n,getSnapshot:t};return i.queue=o,yM(c$.bind(null,r,o,e),[e]),r.flags|=2048,yy(9,u$.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=Ll(),t=Ai.identifierPrefix;if(yr){var n=Bu,r=Fu;n=(r&~(1<<32-Gs(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=my++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=a.createElement(n,{is:r.is}):(e=a.createElement(n),n==="select"&&(a=e,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):e=a.createElementNS(e,n),e[jl]=t,e[hy]=r,R$(e,t,!1,!1),t.stateNode=e;e:{switch(a=M6(n,r),n){case"dialog":ir("cancel",e),ir("close",e),i=r;break;case"iframe":case"object":case"embed":ir("load",e),i=r;break;case"video":case"audio":for(i=0;iWm&&(t.flags|=128,r=!0,$v(o,!1),t.lanes=4194304)}else{if(!r)if(e=DS(a),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),$v(o,!0),o.tail===null&&o.tailMode==="hidden"&&!a.alternate&&!yr)return to(t),null}else 2*Zr()-o.renderingStartTime>Wm&&n!==1073741824&&(t.flags|=128,r=!0,$v(o,!1),t.lanes=4194304);o.isBackwards?(a.sibling=t.child,t.child=a):(n=o.last,n!==null?n.sibling=a:t.child=a,o.last=a)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=Zr(),t.sibling=null,n=kr.current,nr(kr,r?n&1|2:n&1),t):(to(t),null);case 22:case 23:return m9(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Sa&1073741824&&(to(t),t.subtreeFlags&6&&(t.flags|=8192)):to(t),null;case 24:return null;case 25:return null}throw Error(ze(156,t.tag))}function rne(e,t){switch(X7(t),t.tag){case 1:return Yo(t.type)&&TS(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return zm(),cr(Ko),cr(lo),o9(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return i9(t),null;case 13:if(cr(kr),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(ze(340));Fm()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return cr(kr),null;case 4:return zm(),null;case 10:return e9(t.type._context),null;case 22:case 23:return m9(),null;case 24:return null;default:return null}}var Mb=!1,io=!1,ine=typeof WeakSet=="function"?WeakSet:Set,dt=null;function Xg(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){$r(e,t,r)}else n.current=null}function n_(e,t,n){try{n()}catch(r){$r(e,t,r)}}var PM=!1;function one(e,t){if(F6=_S,e=FN(),K7(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 i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var a=0,s=-1,l=-1,u=0,d=0,h=e,m=null;t:for(;;){for(var y;h!==n||i!==0&&h.nodeType!==3||(s=a+i),h!==o||r!==0&&h.nodeType!==3||(l=a+r),h.nodeType===3&&(a+=h.nodeValue.length),(y=h.firstChild)!==null;)m=h,h=y;for(;;){if(h===e)break t;if(m===n&&++u===i&&(s=a),m===o&&++d===r&&(l=a),(y=h.nextSibling)!==null)break;h=m,m=h.parentNode}h=y}n=s===-1||l===-1?null:{start:s,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(B6={focusedElem:e,selectionRange:n},_S=!1,dt=t;dt!==null;)if(t=dt,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,dt=e;else for(;dt!==null;){t=dt;try{var b=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(b!==null){var w=b.memoizedProps,E=b.memoizedState,_=t.stateNode,k=_.getSnapshotBeforeUpdate(t.elementType===t.type?w:Bs(t.type,w),E);_.__reactInternalSnapshotBeforeUpdate=k}break;case 3:var T=t.stateNode.containerInfo;T.nodeType===1?T.textContent="":T.nodeType===9&&T.documentElement&&T.removeChild(T.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(ze(163))}}catch(L){$r(t,t.return,L)}if(e=t.sibling,e!==null){e.return=t.return,dt=e;break}dt=t.return}return b=PM,PM=!1,b}function M1(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,o!==void 0&&n_(t,n,o)}i=i.next}while(i!==r)}}function pw(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 r_(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 j$(e){var t=e.alternate;t!==null&&(e.alternate=null,j$(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[jl],delete t[hy],delete t[W6],delete t[zte],delete t[Hte])),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 N$(e){return e.tag===5||e.tag===3||e.tag===4}function TM(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||N$(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 i_(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=PS));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}function o_(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(o_(e,t,n),e=e.sibling;e!==null;)o_(e,t,n),e=e.sibling}var Wi=null,zs=!1;function od(e,t,n){for(n=n.child;n!==null;)$$(e,t,n),n=n.sibling}function $$(e,t,n){if(Gl&&typeof Gl.onCommitFiberUnmount=="function")try{Gl.onCommitFiberUnmount(aw,n)}catch{}switch(n.tag){case 5:io||Xg(n,t);case 6:var r=Wi,i=zs;Wi=null,od(e,t,n),Wi=r,zs=i,Wi!==null&&(zs?(e=Wi,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Wi.removeChild(n.stateNode));break;case 18:Wi!==null&&(zs?(e=Wi,n=n.stateNode,e.nodeType===8?C5(e.parentNode,n):e.nodeType===1&&C5(e,n),ly(e)):C5(Wi,n.stateNode));break;case 4:r=Wi,i=zs,Wi=n.stateNode.containerInfo,zs=!0,od(e,t,n),Wi=r,zs=i;break;case 0:case 11:case 14:case 15:if(!io&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var o=i,a=o.destroy;o=o.tag,a!==void 0&&(o&2||o&4)&&n_(n,t,a),i=i.next}while(i!==r)}od(e,t,n);break;case 1:if(!io&&(Xg(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(s){$r(n,t,s)}od(e,t,n);break;case 21:od(e,t,n);break;case 22:n.mode&1?(io=(r=io)||n.memoizedState!==null,od(e,t,n),io=r):od(e,t,n);break;default:od(e,t,n)}}function MM(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new ine),t.forEach(function(r){var i=pne.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function Is(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=a),r&=~o}if(r=i,r=Zr()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*sne(r/1960))-r,10e?16:e,wd===null)var r=!1;else{if(e=wd,wd=null,BS=0,un&6)throw Error(ze(331));var i=un;for(un|=4,dt=e.current;dt!==null;){var o=dt,a=o.child;if(dt.flags&16){var s=o.deletions;if(s!==null){for(var l=0;lZr()-p9?Mh(e,0):h9|=n),Xo(e,t)}function G$(e,t){t===0&&(e.mode&1?(t=xb,xb<<=1,!(xb&130023424)&&(xb=4194304)):t=1);var n=_o();e=ec(e,t),e!==null&&(qy(e,t,n),Xo(e,n))}function hne(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),G$(e,n)}function pne(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(ze(314))}r!==null&&r.delete(t),G$(e,n)}var q$;q$=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ko.current)qo=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return qo=!1,tne(e,t,n);qo=!!(e.flags&131072)}else qo=!1,yr&&t.flags&1048576&&XN(t,AS,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Bx(e,t),e=t.pendingProps;var i=$m(t,lo.current);mm(t,n),i=s9(null,t,r,e,i,n);var o=l9();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Yo(r)?(o=!0,MS(t)):o=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,n9(t),i.updater=fw,t.stateNode=i,i._reactInternals=t,Y6(t,r,e,n),t=Q6(null,t,r,!0,o,n)):(t.tag=0,yr&&o&&Y7(t),xo(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Bx(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=mne(r),e=Bs(r,e),i){case 0:t=Z6(null,t,r,e,n);break e;case 1:t=_M(null,t,r,e,n);break e;case 11:t=wM(null,t,r,e,n);break e;case 14:t=CM(null,t,r,Bs(r.type,e),n);break e}throw Error(ze(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),Z6(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),_M(e,t,r,i,n);case 3:e:{if(L$(t),e===null)throw Error(ze(387));r=t.pendingProps,o=t.memoizedState,i=o.element,e$(e,t),IS(t,r,null,n);var a=t.memoizedState;if(r=a.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){i=Hm(Error(ze(423)),t),t=kM(e,t,r,n,i);break e}else if(r!==i){i=Hm(Error(ze(424)),t),t=kM(e,t,r,n,i);break e}else for(ka=Od(t.stateNode.containerInfo.firstChild),Pa=t,yr=!0,Ws=null,n=i$(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Fm(),r===i){t=tc(e,t,n);break e}xo(e,t,r,n)}t=t.child}return t;case 5:return o$(t),e===null&&G6(t),r=t.type,i=t.pendingProps,o=e!==null?e.memoizedProps:null,a=i.children,z6(r,i)?a=null:o!==null&&z6(r,o)&&(t.flags|=32),M$(e,t),xo(e,t,a,n),t.child;case 6:return e===null&&G6(t),null;case 13:return A$(e,t,n);case 4:return r9(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Bm(t,null,r,n):xo(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),wM(e,t,r,i,n);case 7:return xo(e,t,t.pendingProps,n),t.child;case 8:return xo(e,t,t.pendingProps.children,n),t.child;case 12:return xo(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,o=t.memoizedProps,a=i.value,nr(OS,r._currentValue),r._currentValue=a,o!==null)if(Zs(o.value,a)){if(o.children===i.children&&!Ko.current){t=tc(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var s=o.dependencies;if(s!==null){a=o.child;for(var l=s.firstContext;l!==null;){if(l.context===r){if(o.tag===1){l=Wu(-1,n&-n),l.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?l.next=l:(l.next=d.next,d.next=l),u.pending=l}}o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),q6(o.return,n,t),s.lanes|=n;break}l=l.next}}else if(o.tag===10)a=o.type===t.type?null:o.child;else if(o.tag===18){if(a=o.return,a===null)throw Error(ze(341));a.lanes|=n,s=a.alternate,s!==null&&(s.lanes|=n),q6(a,n,t),a=o.sibling}else a=o.child;if(a!==null)a.return=o;else for(a=o;a!==null;){if(a===t){a=null;break}if(o=a.sibling,o!==null){o.return=a.return,a=o;break}a=a.return}o=a}xo(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,mm(t,n),i=os(i),r=r(i),t.flags|=1,xo(e,t,r,n),t.child;case 14:return r=t.type,i=Bs(r,t.pendingProps),i=Bs(r.type,i),CM(e,t,r,i,n);case 15:return P$(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),Bx(e,t),t.tag=1,Yo(r)?(e=!0,MS(t)):e=!1,mm(t,n),n$(t,r,i),Y6(t,r,i,n),Q6(null,t,r,!0,e,n);case 19:return O$(e,t,n);case 22:return T$(e,t,n)}throw Error(ze(156,t.tag))};function K$(e,t){return xN(e,t)}function gne(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 es(e,t,n,r){return new gne(e,t,n,r)}function y9(e){return e=e.prototype,!(!e||!e.isReactComponent)}function mne(e){if(typeof e=="function")return y9(e)?1:0;if(e!=null){if(e=e.$$typeof,e===N7)return 11;if(e===$7)return 14}return 2}function jd(e,t){var n=e.alternate;return n===null?(n=es(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 Wx(e,t,n,r,i,o){var a=2;if(r=e,typeof e=="function")y9(e)&&(a=1);else if(typeof e=="string")a=5;else e:switch(e){case zg:return Lh(n.children,i,o,t);case j7:a=8,i|=8;break;case b6:return e=es(12,n,t,i|2),e.elementType=b6,e.lanes=o,e;case x6:return e=es(13,n,t,i),e.elementType=x6,e.lanes=o,e;case S6:return e=es(19,n,t,i),e.elementType=S6,e.lanes=o,e;case rN:return mw(n,i,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case tN:a=10;break e;case nN:a=9;break e;case N7:a=11;break e;case $7:a=14;break e;case hd:a=16,r=null;break e}throw Error(ze(130,e==null?e:typeof e,""))}return t=es(a,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function Lh(e,t,n,r){return e=es(7,e,r,t),e.lanes=n,e}function mw(e,t,n,r){return e=es(22,e,r,t),e.elementType=rN,e.lanes=n,e.stateNode={isHidden:!1},e}function A5(e,t,n){return e=es(6,e,null,t),e.lanes=n,e}function O5(e,t,n){return t=es(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function vne(e,t,n,r,i){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=f5(0),this.expirationTimes=f5(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=f5(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function b9(e,t,n,r,i,o,a,s,l){return e=new vne(e,t,n,s,l),t===1?(t=1,o===!0&&(t|=8)):t=0,o=es(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},n9(o),e}function yne(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(n){console.error(n)}}t(),e.exports=Ia})(bee);const Ob=S7(Xs);var[Q$,Cne]=Pn({strict:!1,name:"PortalContext"}),C9="chakra-portal",_ne=".chakra-portal",kne=e=>g.jsx("div",{className:"chakra-portal-zIndex",style:{position:"absolute",zIndex:e.zIndex,top:0,left:0,right:0},children:e.children}),Ene=e=>{const{appendToParentPortal:t,children:n}=e,[r,i]=S.useState(null),o=S.useRef(null),[,a]=S.useState({});S.useEffect(()=>a({}),[]);const s=Cne(),l=yee();Vl(()=>{if(!r)return;const d=r.ownerDocument,h=t?s??d.body:d.body;if(!h)return;o.current=d.createElement("div"),o.current.className=C9,h.appendChild(o.current),a({});const m=o.current;return()=>{h.contains(m)&&h.removeChild(m)}},[r]);const u=l!=null&&l.zIndex?g.jsx(kne,{zIndex:l==null?void 0:l.zIndex,children:n}):n;return o.current?Xs.createPortal(g.jsx(Q$,{value:o.current,children:u}),o.current):g.jsx("span",{ref:d=>{d&&i(d)}})},Pne=e=>{const{children:t,containerRef:n,appendToParentPortal:r}=e,i=n.current,o=i??(typeof window<"u"?document.body:void 0),a=S.useMemo(()=>{const l=i==null?void 0:i.ownerDocument.createElement("div");return l&&(l.className=C9),l},[i]),[,s]=S.useState({});return Vl(()=>s({}),[]),Vl(()=>{if(!(!a||!o))return o.appendChild(a),()=>{o.removeChild(a)}},[a,o]),o&&a?Xs.createPortal(g.jsx(Q$,{value:r?a:null,children:t}),a):null};function c0(e){const t={appendToParentPortal:!0,...e},{containerRef:n,...r}=t;return n?g.jsx(Pne,{containerRef:n,...r}):g.jsx(Ene,{...r})}c0.className=C9;c0.selector=_ne;c0.displayName="Portal";function Zy(){const e=S.useContext(ny);if(!e)throw Error("useTheme: `theme` is undefined. Seems you forgot to wrap your app in `` or ``");return e}var _9=S.createContext({});_9.displayName="ColorModeContext";function Qy(){const e=S.useContext(_9);if(e===void 0)throw new Error("useColorMode must be used within a ColorModeProvider");return e}var Rb={light:"chakra-ui-light",dark:"chakra-ui-dark"};function Tne(e={}){const{preventTransition:t=!0}=e,n={setDataset:r=>{const i=t?n.preventTransition():void 0;document.documentElement.dataset.theme=r,document.documentElement.style.colorScheme=r,i==null||i()},setClassName(r){document.body.classList.add(r?Rb.dark:Rb.light),document.body.classList.remove(r?Rb.light:Rb.dark)},query(){return window.matchMedia("(prefers-color-scheme: dark)")},getSystemTheme(r){var i;return((i=n.query().matches)!=null?i:r==="dark")?"dark":"light"},addListener(r){const i=n.query(),o=a=>{r(a.matches?"dark":"light")};return typeof i.addListener=="function"?i.addListener(o):i.addEventListener("change",o),()=>{typeof i.removeListener=="function"?i.removeListener(o):i.removeEventListener("change",o)}},preventTransition(){const r=document.createElement("style");return r.appendChild(document.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(r),()=>{window.getComputedStyle(document.body),requestAnimationFrame(()=>{requestAnimationFrame(()=>{document.head.removeChild(r)})})}}};return n}var Mne="chakra-ui-color-mode";function Lne(e){return{ssr:!1,type:"localStorage",get(t){if(!(globalThis!=null&&globalThis.document))return t;let n;try{n=localStorage.getItem(e)||t}catch{}return n||t},set(t){try{localStorage.setItem(e,t)}catch{}}}}var Ane=Lne(Mne),NM=()=>{};function $M(e,t){return e.type==="cookie"&&e.ssr?e.get(t):t}function J$(e){const{value:t,children:n,options:{useSystemColorMode:r,initialColorMode:i,disableTransitionOnChange:o}={},colorModeManager:a=Ane}=e,s=i==="dark"?"dark":"light",[l,u]=S.useState(()=>$M(a,s)),[d,h]=S.useState(()=>$M(a)),{getSystemTheme:m,setClassName:y,setDataset:b,addListener:w}=S.useMemo(()=>Tne({preventTransition:o}),[o]),E=i==="system"&&!l?d:l,_=S.useCallback(L=>{const O=L==="system"?m():L;u(O),y(O==="dark"),b(O),a.set(O)},[a,m,y,b]);Vl(()=>{i==="system"&&h(m())},[]),S.useEffect(()=>{const L=a.get();if(L){_(L);return}if(i==="system"){_("system");return}_(s)},[a,s,i,_]);const k=S.useCallback(()=>{_(E==="dark"?"light":"dark")},[E,_]);S.useEffect(()=>{if(r)return w(_)},[r,w,_]);const T=S.useMemo(()=>({colorMode:t??E,toggleColorMode:t?NM:k,setColorMode:t?NM:_,forced:t!==void 0}),[E,k,_,t]);return g.jsx(_9.Provider,{value:T,children:n})}J$.displayName="ColorModeProvider";function eF(){const e=Qy(),t=Zy();return{...e,theme:t}}var xt=(...e)=>e.filter(Boolean).join(" ");function One(){return!1}function ko(e){const t=typeof e;return e!=null&&(t==="object"||t==="function")&&!Array.isArray(e)}var Jy=e=>{const{condition:t,message:n}=e;t&&One()&&console.warn(n)};function ts(e,...t){return Rne(e)?e(...t):e}var Rne=e=>typeof e=="function",Bt=e=>e?"":void 0,Uu=e=>e?!0:void 0;function ht(...e){return function(n){e.some(r=>(r==null||r(n),n==null?void 0:n.defaultPrevented))}}function Sw(...e){return function(n){e.forEach(r=>{r==null||r(n)})}}var WS={},Ine={get exports(){return WS},set exports(e){WS=e}};(function(e,t){var n=200,r="__lodash_hash_undefined__",i=800,o=16,a=9007199254740991,s="[object Arguments]",l="[object Array]",u="[object AsyncFunction]",d="[object Boolean]",h="[object Date]",m="[object Error]",y="[object Function]",b="[object GeneratorFunction]",w="[object Map]",E="[object Number]",_="[object Null]",k="[object Object]",T="[object Proxy]",L="[object RegExp]",O="[object Set]",D="[object String]",I="[object Undefined]",N="[object WeakMap]",W="[object ArrayBuffer]",B="[object DataView]",K="[object Float32Array]",ne="[object Float64Array]",z="[object Int8Array]",$="[object Int16Array]",V="[object Int32Array]",X="[object Uint8Array]",Q="[object Uint8ClampedArray]",G="[object Uint16Array]",Y="[object Uint32Array]",ee=/[\\^$.*+?()[\]{}|]/g,fe=/^\[object .+?Constructor\]$/,Ce=/^(?:0|[1-9]\d*)$/,we={};we[K]=we[ne]=we[z]=we[$]=we[V]=we[X]=we[Q]=we[G]=we[Y]=!0,we[s]=we[l]=we[W]=we[d]=we[B]=we[h]=we[m]=we[y]=we[w]=we[E]=we[k]=we[L]=we[O]=we[D]=we[N]=!1;var xe=typeof So=="object"&&So&&So.Object===Object&&So,Le=typeof self=="object"&&self&&self.Object===Object&&self,Se=xe||Le||Function("return this")(),Qe=t&&!t.nodeType&&t,Xe=Qe&&!0&&e&&!e.nodeType&&e,tt=Xe&&Xe.exports===Qe,yt=tt&&xe.process,Be=function(){try{var q=Xe&&Xe.require&&Xe.require("util").types;return q||yt&&yt.binding&&yt.binding("util")}catch{}}(),Ae=Be&&Be.isTypedArray;function bt(q,re,pe){switch(pe.length){case 0:return q.call(re);case 1:return q.call(re,pe[0]);case 2:return q.call(re,pe[0],pe[1]);case 3:return q.call(re,pe[0],pe[1],pe[2])}return q.apply(re,pe)}function Fe(q,re){for(var pe=-1,ot=Array(q);++pe-1}function P0(q,re){var pe=this.__data__,ot=xs(pe,q);return ot<0?(++this.size,pe.push([q,re])):pe[ot][1]=re,this}na.prototype.clear=mf,na.prototype.delete=E0,na.prototype.get=xc,na.prototype.has=vf,na.prototype.set=P0;function nl(q){var re=-1,pe=q==null?0:q.length;for(this.clear();++re1?pe[Ht-1]:void 0,St=Ht>2?pe[2]:void 0;for(mn=q.length>3&&typeof mn=="function"?(Ht--,mn):void 0,St&&Pp(pe[0],pe[1],St)&&(mn=Ht<3?void 0:mn,Ht=1),re=Object(re);++ot-1&&q%1==0&&q0){if(++re>=i)return arguments[0]}else re=0;return q.apply(void 0,arguments)}}function kc(q){if(q!=null){try{return He.call(q)}catch{}try{return q+""}catch{}}return""}function $a(q,re){return q===re||q!==q&&re!==re}var wf=pu(function(){return arguments}())?pu:function(q){return Xn(q)&&Ue.call(q,"callee")&&!zr.call(q,"callee")},vu=Array.isArray;function Gt(q){return q!=null&&Mp(q.length)&&!Pc(q)}function Tp(q){return Xn(q)&&Gt(q)}var Ec=vs||B0;function Pc(q){if(!aa(q))return!1;var re=il(q);return re==y||re==b||re==u||re==T}function Mp(q){return typeof q=="number"&&q>-1&&q%1==0&&q<=a}function aa(q){var re=typeof q;return q!=null&&(re=="object"||re=="function")}function Xn(q){return q!=null&&typeof q=="object"}function Cf(q){if(!Xn(q)||il(q)!=k)return!1;var re=qe(q);if(re===null)return!0;var pe=Ue.call(re,"constructor")&&re.constructor;return typeof pe=="function"&&pe instanceof pe&&He.call(pe)==vt}var Lp=Ae?at(Ae):wc;function _f(q){return ci(q,Ap(q))}function Ap(q){return Gt(q)?N0(q,!0):ol(q)}var cn=Ss(function(q,re,pe,ot){ra(q,re,pe,ot)});function qt(q){return function(){return q}}function Op(q){return q}function B0(){return!1}e.exports=cn})(Ine,WS);const Bl=WS;var Dne=e=>/!(important)?$/.test(e),FM=e=>typeof e=="string"?e.replace(/!(important)?$/,"").trim():e,jne=(e,t)=>n=>{const r=String(t),i=Dne(r),o=FM(r),a=e?`${e}.${o}`:o;let s=ko(n.__cssMap)&&a in n.__cssMap?n.__cssMap[a].varRef:t;return s=FM(s),i?`${s} !important`:s};function k9(e){const{scale:t,transform:n,compose:r}=e;return(o,a)=>{var s;const l=jne(t,o)(a);let u=(s=n==null?void 0:n(l,a))!=null?s:l;return r&&(u=r(u,a)),u}}var Ib=(...e)=>t=>e.reduce((n,r)=>r(n),t);function Ds(e,t){return n=>{const r={property:n,scale:e};return r.transform=k9({scale:e,transform:t}),r}}var Nne=({rtl:e,ltr:t})=>n=>n.direction==="rtl"?e:t;function $ne(e){const{property:t,scale:n,transform:r}=e;return{scale:n,property:Nne(t),transform:n?k9({scale:n,compose:r}):r}}var tF=["rotate(var(--chakra-rotate, 0))","scaleX(var(--chakra-scale-x, 1))","scaleY(var(--chakra-scale-y, 1))","skewX(var(--chakra-skew-x, 0))","skewY(var(--chakra-skew-y, 0))"];function Fne(){return["translateX(var(--chakra-translate-x, 0))","translateY(var(--chakra-translate-y, 0))",...tF].join(" ")}function Bne(){return["translate3d(var(--chakra-translate-x, 0), var(--chakra-translate-y, 0), 0)",...tF].join(" ")}var zne={"--chakra-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-sepia":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-drop-shadow":"var(--chakra-empty,/*!*/ /*!*/)",filter:["var(--chakra-blur)","var(--chakra-brightness)","var(--chakra-contrast)","var(--chakra-grayscale)","var(--chakra-hue-rotate)","var(--chakra-invert)","var(--chakra-saturate)","var(--chakra-sepia)","var(--chakra-drop-shadow)"].join(" ")},Hne={backdropFilter:["var(--chakra-backdrop-blur)","var(--chakra-backdrop-brightness)","var(--chakra-backdrop-contrast)","var(--chakra-backdrop-grayscale)","var(--chakra-backdrop-hue-rotate)","var(--chakra-backdrop-invert)","var(--chakra-backdrop-opacity)","var(--chakra-backdrop-saturate)","var(--chakra-backdrop-sepia)"].join(" "),"--chakra-backdrop-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-opacity":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-sepia":"var(--chakra-empty,/*!*/ /*!*/)"};function Wne(e){return{"--chakra-ring-offset-shadow":"var(--chakra-ring-inset) 0 0 0 var(--chakra-ring-offset-width) var(--chakra-ring-offset-color)","--chakra-ring-shadow":"var(--chakra-ring-inset) 0 0 0 calc(var(--chakra-ring-width) + var(--chakra-ring-offset-width)) var(--chakra-ring-color)","--chakra-ring-width":e,boxShadow:["var(--chakra-ring-offset-shadow)","var(--chakra-ring-shadow)","var(--chakra-shadow, 0 0 #0000)"].join(", ")}}var Une={"row-reverse":{space:"--chakra-space-x-reverse",divide:"--chakra-divide-x-reverse"},"column-reverse":{space:"--chakra-space-y-reverse",divide:"--chakra-divide-y-reverse"}},c_={"to-t":"to top","to-tr":"to top right","to-r":"to right","to-br":"to bottom right","to-b":"to bottom","to-bl":"to bottom left","to-l":"to left","to-tl":"to top left"},Vne=new Set(Object.values(c_)),nF=new Set(["none","-moz-initial","inherit","initial","revert","unset"]),Gne=e=>e.trim();function qne(e,t){if(e==null||nF.has(e))return e;const r=/(^[a-z-A-Z]+)\((.*)\)/g.exec(e),i=r==null?void 0:r[1],o=r==null?void 0:r[2];if(!i||!o)return e;const a=i.includes("-gradient")?i:`${i}-gradient`,[s,...l]=o.split(",").map(Gne).filter(Boolean);if((l==null?void 0:l.length)===0)return e;const u=s in c_?c_[s]:s;l.unshift(u);const d=l.map(h=>{if(Vne.has(h))return h;const m=h.indexOf(" "),[y,b]=m!==-1?[h.substr(0,m),h.substr(m+1)]:[h],w=rF(b)?b:b&&b.split(" "),E=`colors.${y}`,_=E in t.__cssMap?t.__cssMap[E].varRef:y;return w?[_,...Array.isArray(w)?w:[w]].join(" "):_});return`${a}(${d.join(", ")})`}var rF=e=>typeof e=="string"&&e.includes("(")&&e.includes(")"),Kne=(e,t)=>qne(e,t??{});function Yne(e){return/^var\(--.+\)$/.test(e)}var Xne=e=>{const t=parseFloat(e.toString()),n=e.toString().replace(String(t),"");return{unitless:!n,value:t,unit:n}},Pl=e=>t=>`${e}(${t})`,ln={filter(e){return e!=="auto"?e:zne},backdropFilter(e){return e!=="auto"?e:Hne},ring(e){return Wne(ln.px(e))},bgClip(e){return e==="text"?{color:"transparent",backgroundClip:"text"}:{backgroundClip:e}},transform(e){return e==="auto"?Fne():e==="auto-gpu"?Bne():e},vh(e){return e==="$100vh"?"var(--chakra-vh)":e},px(e){if(e==null)return e;const{unitless:t}=Xne(e);return t||typeof e=="number"?`${e}px`:e},fraction(e){return typeof e!="number"||e>1?e:`${e*100}%`},float(e,t){const n={left:"right",right:"left"};return t.direction==="rtl"?n[e]:e},degree(e){if(Yne(e)||e==null)return e;const t=typeof e=="string"&&!e.endsWith("deg");return typeof e=="number"||t?`${e}deg`:e},gradient:Kne,blur:Pl("blur"),opacity:Pl("opacity"),brightness:Pl("brightness"),contrast:Pl("contrast"),dropShadow:Pl("drop-shadow"),grayscale:Pl("grayscale"),hueRotate:Pl("hue-rotate"),invert:Pl("invert"),saturate:Pl("saturate"),sepia:Pl("sepia"),bgImage(e){return e==null||rF(e)||nF.has(e)?e:`url(${e})`},outline(e){const t=String(e)==="0"||String(e)==="none";return e!==null&&t?{outline:"2px solid transparent",outlineOffset:"2px"}:{outline:e}},flexDirection(e){var t;const{space:n,divide:r}=(t=Une[e])!=null?t:{},i={flexDirection:e};return n&&(i[n]=1),r&&(i[r]=1),i}},oe={borderWidths:Ds("borderWidths"),borderStyles:Ds("borderStyles"),colors:Ds("colors"),borders:Ds("borders"),radii:Ds("radii",ln.px),space:Ds("space",Ib(ln.vh,ln.px)),spaceT:Ds("space",Ib(ln.vh,ln.px)),degreeT(e){return{property:e,transform:ln.degree}},prop(e,t,n){return{property:e,scale:t,...t&&{transform:k9({scale:t,transform:n})}}},propT(e,t){return{property:e,transform:t}},sizes:Ds("sizes",Ib(ln.vh,ln.px)),sizesT:Ds("sizes",Ib(ln.vh,ln.fraction)),shadows:Ds("shadows"),logical:$ne,blur:Ds("blur",ln.blur)},Ux={background:oe.colors("background"),backgroundColor:oe.colors("backgroundColor"),backgroundImage:oe.propT("backgroundImage",ln.bgImage),backgroundSize:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundAttachment:!0,backgroundClip:{transform:ln.bgClip},bgSize:oe.prop("backgroundSize"),bgPosition:oe.prop("backgroundPosition"),bg:oe.colors("background"),bgColor:oe.colors("backgroundColor"),bgPos:oe.prop("backgroundPosition"),bgRepeat:oe.prop("backgroundRepeat"),bgAttachment:oe.prop("backgroundAttachment"),bgGradient:oe.propT("backgroundImage",ln.gradient),bgClip:{transform:ln.bgClip}};Object.assign(Ux,{bgImage:Ux.backgroundImage,bgImg:Ux.backgroundImage});var yn={border:oe.borders("border"),borderWidth:oe.borderWidths("borderWidth"),borderStyle:oe.borderStyles("borderStyle"),borderColor:oe.colors("borderColor"),borderRadius:oe.radii("borderRadius"),borderTop:oe.borders("borderTop"),borderBlockStart:oe.borders("borderBlockStart"),borderTopLeftRadius:oe.radii("borderTopLeftRadius"),borderStartStartRadius:oe.logical({scale:"radii",property:{ltr:"borderTopLeftRadius",rtl:"borderTopRightRadius"}}),borderEndStartRadius:oe.logical({scale:"radii",property:{ltr:"borderBottomLeftRadius",rtl:"borderBottomRightRadius"}}),borderTopRightRadius:oe.radii("borderTopRightRadius"),borderStartEndRadius:oe.logical({scale:"radii",property:{ltr:"borderTopRightRadius",rtl:"borderTopLeftRadius"}}),borderEndEndRadius:oe.logical({scale:"radii",property:{ltr:"borderBottomRightRadius",rtl:"borderBottomLeftRadius"}}),borderRight:oe.borders("borderRight"),borderInlineEnd:oe.borders("borderInlineEnd"),borderBottom:oe.borders("borderBottom"),borderBlockEnd:oe.borders("borderBlockEnd"),borderBottomLeftRadius:oe.radii("borderBottomLeftRadius"),borderBottomRightRadius:oe.radii("borderBottomRightRadius"),borderLeft:oe.borders("borderLeft"),borderInlineStart:{property:"borderInlineStart",scale:"borders"},borderInlineStartRadius:oe.logical({scale:"radii",property:{ltr:["borderTopLeftRadius","borderBottomLeftRadius"],rtl:["borderTopRightRadius","borderBottomRightRadius"]}}),borderInlineEndRadius:oe.logical({scale:"radii",property:{ltr:["borderTopRightRadius","borderBottomRightRadius"],rtl:["borderTopLeftRadius","borderBottomLeftRadius"]}}),borderX:oe.borders(["borderLeft","borderRight"]),borderInline:oe.borders("borderInline"),borderY:oe.borders(["borderTop","borderBottom"]),borderBlock:oe.borders("borderBlock"),borderTopWidth:oe.borderWidths("borderTopWidth"),borderBlockStartWidth:oe.borderWidths("borderBlockStartWidth"),borderTopColor:oe.colors("borderTopColor"),borderBlockStartColor:oe.colors("borderBlockStartColor"),borderTopStyle:oe.borderStyles("borderTopStyle"),borderBlockStartStyle:oe.borderStyles("borderBlockStartStyle"),borderBottomWidth:oe.borderWidths("borderBottomWidth"),borderBlockEndWidth:oe.borderWidths("borderBlockEndWidth"),borderBottomColor:oe.colors("borderBottomColor"),borderBlockEndColor:oe.colors("borderBlockEndColor"),borderBottomStyle:oe.borderStyles("borderBottomStyle"),borderBlockEndStyle:oe.borderStyles("borderBlockEndStyle"),borderLeftWidth:oe.borderWidths("borderLeftWidth"),borderInlineStartWidth:oe.borderWidths("borderInlineStartWidth"),borderLeftColor:oe.colors("borderLeftColor"),borderInlineStartColor:oe.colors("borderInlineStartColor"),borderLeftStyle:oe.borderStyles("borderLeftStyle"),borderInlineStartStyle:oe.borderStyles("borderInlineStartStyle"),borderRightWidth:oe.borderWidths("borderRightWidth"),borderInlineEndWidth:oe.borderWidths("borderInlineEndWidth"),borderRightColor:oe.colors("borderRightColor"),borderInlineEndColor:oe.colors("borderInlineEndColor"),borderRightStyle:oe.borderStyles("borderRightStyle"),borderInlineEndStyle:oe.borderStyles("borderInlineEndStyle"),borderTopRadius:oe.radii(["borderTopLeftRadius","borderTopRightRadius"]),borderBottomRadius:oe.radii(["borderBottomLeftRadius","borderBottomRightRadius"]),borderLeftRadius:oe.radii(["borderTopLeftRadius","borderBottomLeftRadius"]),borderRightRadius:oe.radii(["borderTopRightRadius","borderBottomRightRadius"])};Object.assign(yn,{rounded:yn.borderRadius,roundedTop:yn.borderTopRadius,roundedTopLeft:yn.borderTopLeftRadius,roundedTopRight:yn.borderTopRightRadius,roundedTopStart:yn.borderStartStartRadius,roundedTopEnd:yn.borderStartEndRadius,roundedBottom:yn.borderBottomRadius,roundedBottomLeft:yn.borderBottomLeftRadius,roundedBottomRight:yn.borderBottomRightRadius,roundedBottomStart:yn.borderEndStartRadius,roundedBottomEnd:yn.borderEndEndRadius,roundedLeft:yn.borderLeftRadius,roundedRight:yn.borderRightRadius,roundedStart:yn.borderInlineStartRadius,roundedEnd:yn.borderInlineEndRadius,borderStart:yn.borderInlineStart,borderEnd:yn.borderInlineEnd,borderTopStartRadius:yn.borderStartStartRadius,borderTopEndRadius:yn.borderStartEndRadius,borderBottomStartRadius:yn.borderEndStartRadius,borderBottomEndRadius:yn.borderEndEndRadius,borderStartRadius:yn.borderInlineStartRadius,borderEndRadius:yn.borderInlineEndRadius,borderStartWidth:yn.borderInlineStartWidth,borderEndWidth:yn.borderInlineEndWidth,borderStartColor:yn.borderInlineStartColor,borderEndColor:yn.borderInlineEndColor,borderStartStyle:yn.borderInlineStartStyle,borderEndStyle:yn.borderInlineEndStyle});var Zne={color:oe.colors("color"),textColor:oe.colors("color"),fill:oe.colors("fill"),stroke:oe.colors("stroke")},d_={boxShadow:oe.shadows("boxShadow"),mixBlendMode:!0,blendMode:oe.prop("mixBlendMode"),backgroundBlendMode:!0,bgBlendMode:oe.prop("backgroundBlendMode"),opacity:!0};Object.assign(d_,{shadow:d_.boxShadow});var Qne={filter:{transform:ln.filter},blur:oe.blur("--chakra-blur"),brightness:oe.propT("--chakra-brightness",ln.brightness),contrast:oe.propT("--chakra-contrast",ln.contrast),hueRotate:oe.degreeT("--chakra-hue-rotate"),invert:oe.propT("--chakra-invert",ln.invert),saturate:oe.propT("--chakra-saturate",ln.saturate),dropShadow:oe.propT("--chakra-drop-shadow",ln.dropShadow),backdropFilter:{transform:ln.backdropFilter},backdropBlur:oe.blur("--chakra-backdrop-blur"),backdropBrightness:oe.propT("--chakra-backdrop-brightness",ln.brightness),backdropContrast:oe.propT("--chakra-backdrop-contrast",ln.contrast),backdropHueRotate:oe.degreeT("--chakra-backdrop-hue-rotate"),backdropInvert:oe.propT("--chakra-backdrop-invert",ln.invert),backdropSaturate:oe.propT("--chakra-backdrop-saturate",ln.saturate)},US={alignItems:!0,alignContent:!0,justifyItems:!0,justifyContent:!0,flexWrap:!0,flexDirection:{transform:ln.flexDirection},flex:!0,flexFlow:!0,flexGrow:!0,flexShrink:!0,flexBasis:oe.sizes("flexBasis"),justifySelf:!0,alignSelf:!0,order:!0,placeItems:!0,placeContent:!0,placeSelf:!0,gap:oe.space("gap"),rowGap:oe.space("rowGap"),columnGap:oe.space("columnGap")};Object.assign(US,{flexDir:US.flexDirection});var iF={gridGap:oe.space("gridGap"),gridColumnGap:oe.space("gridColumnGap"),gridRowGap:oe.space("gridRowGap"),gridColumn:!0,gridRow:!0,gridAutoFlow:!0,gridAutoColumns:!0,gridColumnStart:!0,gridColumnEnd:!0,gridRowStart:!0,gridRowEnd:!0,gridAutoRows:!0,gridTemplate:!0,gridTemplateColumns:!0,gridTemplateRows:!0,gridTemplateAreas:!0,gridArea:!0},Jne={appearance:!0,cursor:!0,resize:!0,userSelect:!0,pointerEvents:!0,outline:{transform:ln.outline},outlineOffset:!0,outlineColor:oe.colors("outlineColor")},Ka={width:oe.sizesT("width"),inlineSize:oe.sizesT("inlineSize"),height:oe.sizes("height"),blockSize:oe.sizes("blockSize"),boxSize:oe.sizes(["width","height"]),minWidth:oe.sizes("minWidth"),minInlineSize:oe.sizes("minInlineSize"),minHeight:oe.sizes("minHeight"),minBlockSize:oe.sizes("minBlockSize"),maxWidth:oe.sizes("maxWidth"),maxInlineSize:oe.sizes("maxInlineSize"),maxHeight:oe.sizes("maxHeight"),maxBlockSize:oe.sizes("maxBlockSize"),overflow:!0,overflowX:!0,overflowY:!0,overscrollBehavior:!0,overscrollBehaviorX:!0,overscrollBehaviorY:!0,display:!0,hideFrom:{scale:"breakpoints",transform:(e,t)=>{var n,r,i;return{[(i=(r=(n=t.__breakpoints)==null?void 0:n.get(e))==null?void 0:r.minWQuery)!=null?i:`@media screen and (min-width: ${e})`]:{display:"none"}}}},hideBelow:{scale:"breakpoints",transform:(e,t)=>{var n,r,i;return{[(i=(r=(n=t.__breakpoints)==null?void 0:n.get(e))==null?void 0:r.maxWQuery)!=null?i:`@media screen and (max-width: ${e})`]:{display:"none"}}}},verticalAlign:!0,boxSizing:!0,boxDecorationBreak:!0,float:oe.propT("float",ln.float),objectFit:!0,objectPosition:!0,visibility:!0,isolation:!0};Object.assign(Ka,{w:Ka.width,h:Ka.height,minW:Ka.minWidth,maxW:Ka.maxWidth,minH:Ka.minHeight,maxH:Ka.maxHeight,overscroll:Ka.overscrollBehavior,overscrollX:Ka.overscrollBehaviorX,overscrollY:Ka.overscrollBehaviorY});var ere={listStyleType:!0,listStylePosition:!0,listStylePos:oe.prop("listStylePosition"),listStyleImage:!0,listStyleImg:oe.prop("listStyleImage")};function tre(e,t,n,r){const i=typeof t=="string"?t.split("."):[t];for(r=0;r{const t=new WeakMap;return(r,i,o,a)=>{if(typeof r>"u")return e(r,i,o);t.has(r)||t.set(r,new Map);const s=t.get(r);if(s.has(i))return s.get(i);const l=e(r,i,o,a);return s.set(i,l),l}},rre=nre(tre),ire={border:"0px",clip:"rect(0, 0, 0, 0)",width:"1px",height:"1px",margin:"-1px",padding:"0px",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"},ore={position:"static",width:"auto",height:"auto",clip:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal"},R5=(e,t,n)=>{const r={},i=rre(e,t,{});for(const o in i)o in n&&n[o]!=null||(r[o]=i[o]);return r},are={srOnly:{transform(e){return e===!0?ire:e==="focusable"?ore:{}}},layerStyle:{processResult:!0,transform:(e,t,n)=>R5(t,`layerStyles.${e}`,n)},textStyle:{processResult:!0,transform:(e,t,n)=>R5(t,`textStyles.${e}`,n)},apply:{processResult:!0,transform:(e,t,n)=>R5(t,e,n)}},O1={position:!0,pos:oe.prop("position"),zIndex:oe.prop("zIndex","zIndices"),inset:oe.spaceT("inset"),insetX:oe.spaceT(["left","right"]),insetInline:oe.spaceT("insetInline"),insetY:oe.spaceT(["top","bottom"]),insetBlock:oe.spaceT("insetBlock"),top:oe.spaceT("top"),insetBlockStart:oe.spaceT("insetBlockStart"),bottom:oe.spaceT("bottom"),insetBlockEnd:oe.spaceT("insetBlockEnd"),left:oe.spaceT("left"),insetInlineStart:oe.logical({scale:"space",property:{ltr:"left",rtl:"right"}}),right:oe.spaceT("right"),insetInlineEnd:oe.logical({scale:"space",property:{ltr:"right",rtl:"left"}})};Object.assign(O1,{insetStart:O1.insetInlineStart,insetEnd:O1.insetInlineEnd});var sre={ring:{transform:ln.ring},ringColor:oe.colors("--chakra-ring-color"),ringOffset:oe.prop("--chakra-ring-offset-width"),ringOffsetColor:oe.colors("--chakra-ring-offset-color"),ringInset:oe.prop("--chakra-ring-inset")},or={margin:oe.spaceT("margin"),marginTop:oe.spaceT("marginTop"),marginBlockStart:oe.spaceT("marginBlockStart"),marginRight:oe.spaceT("marginRight"),marginInlineEnd:oe.spaceT("marginInlineEnd"),marginBottom:oe.spaceT("marginBottom"),marginBlockEnd:oe.spaceT("marginBlockEnd"),marginLeft:oe.spaceT("marginLeft"),marginInlineStart:oe.spaceT("marginInlineStart"),marginX:oe.spaceT(["marginInlineStart","marginInlineEnd"]),marginInline:oe.spaceT("marginInline"),marginY:oe.spaceT(["marginTop","marginBottom"]),marginBlock:oe.spaceT("marginBlock"),padding:oe.space("padding"),paddingTop:oe.space("paddingTop"),paddingBlockStart:oe.space("paddingBlockStart"),paddingRight:oe.space("paddingRight"),paddingBottom:oe.space("paddingBottom"),paddingBlockEnd:oe.space("paddingBlockEnd"),paddingLeft:oe.space("paddingLeft"),paddingInlineStart:oe.space("paddingInlineStart"),paddingInlineEnd:oe.space("paddingInlineEnd"),paddingX:oe.space(["paddingInlineStart","paddingInlineEnd"]),paddingInline:oe.space("paddingInline"),paddingY:oe.space(["paddingTop","paddingBottom"]),paddingBlock:oe.space("paddingBlock")};Object.assign(or,{m:or.margin,mt:or.marginTop,mr:or.marginRight,me:or.marginInlineEnd,marginEnd:or.marginInlineEnd,mb:or.marginBottom,ml:or.marginLeft,ms:or.marginInlineStart,marginStart:or.marginInlineStart,mx:or.marginX,my:or.marginY,p:or.padding,pt:or.paddingTop,py:or.paddingY,px:or.paddingX,pb:or.paddingBottom,pl:or.paddingLeft,ps:or.paddingInlineStart,paddingStart:or.paddingInlineStart,pr:or.paddingRight,pe:or.paddingInlineEnd,paddingEnd:or.paddingInlineEnd});var lre={textDecorationColor:oe.colors("textDecorationColor"),textDecoration:!0,textDecor:{property:"textDecoration"},textDecorationLine:!0,textDecorationStyle:!0,textDecorationThickness:!0,textUnderlineOffset:!0,textShadow:oe.shadows("textShadow")},ure={clipPath:!0,transform:oe.propT("transform",ln.transform),transformOrigin:!0,translateX:oe.spaceT("--chakra-translate-x"),translateY:oe.spaceT("--chakra-translate-y"),skewX:oe.degreeT("--chakra-skew-x"),skewY:oe.degreeT("--chakra-skew-y"),scaleX:oe.prop("--chakra-scale-x"),scaleY:oe.prop("--chakra-scale-y"),scale:oe.prop(["--chakra-scale-x","--chakra-scale-y"]),rotate:oe.degreeT("--chakra-rotate")},cre={transition:!0,transitionDelay:!0,animation:!0,willChange:!0,transitionDuration:oe.prop("transitionDuration","transition.duration"),transitionProperty:oe.prop("transitionProperty","transition.property"),transitionTimingFunction:oe.prop("transitionTimingFunction","transition.easing")},dre={fontFamily:oe.prop("fontFamily","fonts"),fontSize:oe.prop("fontSize","fontSizes",ln.px),fontWeight:oe.prop("fontWeight","fontWeights"),lineHeight:oe.prop("lineHeight","lineHeights"),letterSpacing:oe.prop("letterSpacing","letterSpacings"),textAlign:!0,fontStyle:!0,textIndent:!0,wordBreak:!0,overflowWrap:!0,textOverflow:!0,textTransform:!0,whiteSpace:!0,isTruncated:{transform(e){if(e===!0)return{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}},noOfLines:{static:{overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"var(--chakra-line-clamp)"},property:"--chakra-line-clamp"}},fre={scrollBehavior:!0,scrollSnapAlign:!0,scrollSnapStop:!0,scrollSnapType:!0,scrollMargin:oe.spaceT("scrollMargin"),scrollMarginTop:oe.spaceT("scrollMarginTop"),scrollMarginBottom:oe.spaceT("scrollMarginBottom"),scrollMarginLeft:oe.spaceT("scrollMarginLeft"),scrollMarginRight:oe.spaceT("scrollMarginRight"),scrollMarginX:oe.spaceT(["scrollMarginLeft","scrollMarginRight"]),scrollMarginY:oe.spaceT(["scrollMarginTop","scrollMarginBottom"]),scrollPadding:oe.spaceT("scrollPadding"),scrollPaddingTop:oe.spaceT("scrollPaddingTop"),scrollPaddingBottom:oe.spaceT("scrollPaddingBottom"),scrollPaddingLeft:oe.spaceT("scrollPaddingLeft"),scrollPaddingRight:oe.spaceT("scrollPaddingRight"),scrollPaddingX:oe.spaceT(["scrollPaddingLeft","scrollPaddingRight"]),scrollPaddingY:oe.spaceT(["scrollPaddingTop","scrollPaddingBottom"])};function oF(e){return ko(e)&&e.reference?e.reference:String(e)}var ww=(e,...t)=>t.map(oF).join(` ${e} `).replace(/calc/g,""),BM=(...e)=>`calc(${ww("+",...e)})`,zM=(...e)=>`calc(${ww("-",...e)})`,f_=(...e)=>`calc(${ww("*",...e)})`,HM=(...e)=>`calc(${ww("/",...e)})`,WM=e=>{const t=oF(e);return t!=null&&!Number.isNaN(parseFloat(t))?String(t).startsWith("-")?String(t).slice(1):`-${t}`:f_(t,-1)},bh=Object.assign(e=>({add:(...t)=>bh(BM(e,...t)),subtract:(...t)=>bh(zM(e,...t)),multiply:(...t)=>bh(f_(e,...t)),divide:(...t)=>bh(HM(e,...t)),negate:()=>bh(WM(e)),toString:()=>e.toString()}),{add:BM,subtract:zM,multiply:f_,divide:HM,negate:WM});function hre(e,t="-"){return e.replace(/\s+/g,t)}function pre(e){const t=hre(e.toString());return mre(gre(t))}function gre(e){return e.includes("\\.")?e:!Number.isInteger(parseFloat(e.toString()))?e.replace(".","\\."):e}function mre(e){return e.replace(/[!-,/:-@[-^`{-~]/g,"\\$&")}function vre(e,t=""){return[t,e].filter(Boolean).join("-")}function yre(e,t){return`var(${e}${t?`, ${t}`:""})`}function bre(e,t=""){return pre(`--${vre(e,t)}`)}function gn(e,t,n){const r=bre(e,n);return{variable:r,reference:yre(r,t)}}function xre(e){const t=e==null?0:e.length;return t?e[t-1]:void 0}function Sre(e){const t=parseFloat(e.toString()),n=e.toString().replace(String(t),"");return{unitless:!n,value:t,unit:n}}function h_(e){if(e==null)return e;const{unitless:t}=Sre(e);return t||typeof e=="number"?`${e}px`:e}var aF=(e,t)=>parseInt(e[1],10)>parseInt(t[1],10)?1:-1,E9=e=>Object.fromEntries(Object.entries(e).sort(aF));function UM(e){const t=E9(e);return Object.assign(Object.values(t),t)}function wre(e){const t=Object.keys(E9(e));return new Set(t)}function VM(e){var t;if(!e)return e;e=(t=h_(e))!=null?t:e;const n=-.02;return typeof e=="number"?`${e+n}`:e.replace(/(\d+\.?\d*)/u,r=>`${parseFloat(r)+n}`)}function l1(e,t){const n=["@media screen"];return e&&n.push("and",`(min-width: ${h_(e)})`),t&&n.push("and",`(max-width: ${h_(t)})`),n.join(" ")}function Cre(e){var t;if(!e)return null;e.base=(t=e.base)!=null?t:"0px";const n=UM(e),r=Object.entries(e).sort(aF).map(([a,s],l,u)=>{var d;let[,h]=(d=u[l+1])!=null?d:[];return h=parseFloat(h)>0?VM(h):void 0,{_minW:VM(s),breakpoint:a,minW:s,maxW:h,maxWQuery:l1(null,h),minWQuery:l1(s),minMaxQuery:l1(s,h)}}),i=wre(e),o=Array.from(i.values());return{keys:i,normalized:n,isResponsive(a){const s=Object.keys(a);return s.length>0&&s.every(l=>i.has(l))},asObject:E9(e),asArray:UM(e),details:r,get(a){return r.find(s=>s.breakpoint===a)},media:[null,...n.map(a=>l1(a)).slice(1)],toArrayValue(a){if(!ko(a))throw new Error("toArrayValue: value must be an object");const s=o.map(l=>{var u;return(u=a[l])!=null?u:null});for(;xre(s)===null;)s.pop();return s},toObjectValue(a){if(!Array.isArray(a))throw new Error("toObjectValue: value must be an array");return a.reduce((s,l,u)=>{const d=o[u];return d!=null&&l!=null&&(s[d]=l),s},{})}}}var zi={hover:(e,t)=>`${e}:hover ${t}, ${e}[data-hover] ${t}`,focus:(e,t)=>`${e}:focus ${t}, ${e}[data-focus] ${t}`,focusVisible:(e,t)=>`${e}:focus-visible ${t}`,focusWithin:(e,t)=>`${e}:focus-within ${t}`,active:(e,t)=>`${e}:active ${t}, ${e}[data-active] ${t}`,disabled:(e,t)=>`${e}:disabled ${t}, ${e}[data-disabled] ${t}`,invalid:(e,t)=>`${e}:invalid ${t}, ${e}[data-invalid] ${t}`,checked:(e,t)=>`${e}:checked ${t}, ${e}[data-checked] ${t}`,indeterminate:(e,t)=>`${e}:indeterminate ${t}, ${e}[aria-checked=mixed] ${t}, ${e}[data-indeterminate] ${t}`,readOnly:(e,t)=>`${e}:read-only ${t}, ${e}[readonly] ${t}, ${e}[data-read-only] ${t}`,expanded:(e,t)=>`${e}:read-only ${t}, ${e}[aria-expanded=true] ${t}, ${e}[data-expanded] ${t}`,placeholderShown:(e,t)=>`${e}:placeholder-shown ${t}`},ad=e=>sF(t=>e(t,"&"),"[role=group]","[data-group]",".group"),Au=e=>sF(t=>e(t,"~ &"),"[data-peer]",".peer"),sF=(e,...t)=>t.map(e).join(", "),Cw={_hover:"&:hover, &[data-hover]",_active:"&:active, &[data-active]",_focus:"&:focus, &[data-focus]",_highlighted:"&[data-highlighted]",_focusWithin:"&:focus-within",_focusVisible:"&:focus-visible, &[data-focus-visible]",_disabled:"&:disabled, &[disabled], &[aria-disabled=true], &[data-disabled]",_readOnly:"&[aria-readonly=true], &[readonly], &[data-readonly]",_before:"&::before",_after:"&::after",_empty:"&:empty",_expanded:"&[aria-expanded=true], &[data-expanded]",_checked:"&[aria-checked=true], &[data-checked]",_grabbed:"&[aria-grabbed=true], &[data-grabbed]",_pressed:"&[aria-pressed=true], &[data-pressed]",_invalid:"&[aria-invalid=true], &[data-invalid]",_valid:"&[data-valid], &[data-state=valid]",_loading:"&[data-loading], &[aria-busy=true]",_selected:"&[aria-selected=true], &[data-selected]",_hidden:"&[hidden], &[data-hidden]",_autofill:"&:-webkit-autofill",_even:"&:nth-of-type(even)",_odd:"&:nth-of-type(odd)",_first:"&:first-of-type",_last:"&:last-of-type",_notFirst:"&:not(:first-of-type)",_notLast:"&:not(:last-of-type)",_visited:"&:visited",_activeLink:"&[aria-current=page]",_activeStep:"&[aria-current=step]",_indeterminate:"&:indeterminate, &[aria-checked=mixed], &[data-indeterminate]",_groupHover:ad(zi.hover),_peerHover:Au(zi.hover),_groupFocus:ad(zi.focus),_peerFocus:Au(zi.focus),_groupFocusVisible:ad(zi.focusVisible),_peerFocusVisible:Au(zi.focusVisible),_groupActive:ad(zi.active),_peerActive:Au(zi.active),_groupDisabled:ad(zi.disabled),_peerDisabled:Au(zi.disabled),_groupInvalid:ad(zi.invalid),_peerInvalid:Au(zi.invalid),_groupChecked:ad(zi.checked),_peerChecked:Au(zi.checked),_groupFocusWithin:ad(zi.focusWithin),_peerFocusWithin:Au(zi.focusWithin),_peerPlaceholderShown:Au(zi.placeholderShown),_placeholder:"&::placeholder",_placeholderShown:"&:placeholder-shown",_fullScreen:"&:fullscreen",_selection:"&::selection",_rtl:"[dir=rtl] &, &[dir=rtl]",_ltr:"[dir=ltr] &, &[dir=ltr]",_mediaDark:"@media (prefers-color-scheme: dark)",_mediaReduceMotion:"@media (prefers-reduced-motion: reduce)",_dark:".chakra-ui-dark &:not([data-theme]),[data-theme=dark] &:not([data-theme]),&[data-theme=dark]",_light:".chakra-ui-light &:not([data-theme]),[data-theme=light] &:not([data-theme]),&[data-theme=light]"},_re=Object.keys(Cw);function GM(e,t){return gn(String(e).replace(/\./g,"-"),void 0,t)}function kre(e,t){let n={};const r={};for(const[i,o]of Object.entries(e)){const{isSemantic:a,value:s}=o,{variable:l,reference:u}=GM(i,t==null?void 0:t.cssVarPrefix);if(!a){if(i.startsWith("space")){const m=i.split("."),[y,...b]=m,w=`${y}.-${b.join(".")}`,E=bh.negate(s),_=bh.negate(u);r[w]={value:E,var:l,varRef:_}}n[l]=s,r[i]={value:s,var:l,varRef:u};continue}const d=m=>{const b=[String(i).split(".")[0],m].join(".");if(!e[b])return m;const{reference:E}=GM(b,t==null?void 0:t.cssVarPrefix);return E},h=ko(s)?s:{default:s};n=Bl(n,Object.entries(h).reduce((m,[y,b])=>{var w,E;const _=d(b);if(y==="default")return m[l]=_,m;const k=(E=(w=Cw)==null?void 0:w[y])!=null?E:y;return m[k]={[l]:_},m},{})),r[i]={value:u,var:l,varRef:u}}return{cssVars:n,cssMap:r}}function Ere(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function Pre(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}var Tre=["colors","borders","borderWidths","borderStyles","fonts","fontSizes","fontWeights","letterSpacings","lineHeights","radii","space","shadows","sizes","zIndices","transition","blur","breakpoints"];function Mre(e){return Pre(e,Tre)}function Lre(e){return e.semanticTokens}function Are(e){const{__cssMap:t,__cssVars:n,__breakpoints:r,...i}=e;return i}function Ore({tokens:e,semanticTokens:t}){var n,r;const i=Object.entries((n=p_(e))!=null?n:{}).map(([a,s])=>[a,{isSemantic:!1,value:s}]),o=Object.entries((r=p_(t,1))!=null?r:{}).map(([a,s])=>[a,{isSemantic:!0,value:s}]);return Object.fromEntries([...i,...o])}function p_(e,t=1/0){return!ko(e)&&!Array.isArray(e)||!t?e:Object.entries(e).reduce((n,[r,i])=>(ko(i)||Array.isArray(i)?Object.entries(p_(i,t-1)).forEach(([o,a])=>{n[`${r}.${o}`]=a}):n[r]=i,n),{})}function Rre(e){var t;const n=Are(e),r=Mre(n),i=Lre(n),o=Ore({tokens:r,semanticTokens:i}),a=(t=n.config)==null?void 0:t.cssVarPrefix,{cssMap:s,cssVars:l}=kre(o,{cssVarPrefix:a});return Object.assign(n,{__cssVars:{...{"--chakra-ring-inset":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-ring-offset-width":"0px","--chakra-ring-offset-color":"#fff","--chakra-ring-color":"rgba(66, 153, 225, 0.6)","--chakra-ring-offset-shadow":"0 0 #0000","--chakra-ring-shadow":"0 0 #0000","--chakra-space-x-reverse":"0","--chakra-space-y-reverse":"0"},...l},__cssMap:s,__breakpoints:Cre(n.breakpoints)}),n}var P9=Bl({},Ux,yn,Zne,US,Ka,Qne,sre,Jne,iF,are,O1,d_,or,fre,dre,lre,ure,ere,cre),Ire=Object.assign({},or,Ka,US,iF,O1),lF=Object.keys(Ire),Dre=[...Object.keys(P9),..._re],jre={...P9,...Cw},Nre=e=>e in jre,$re=e=>t=>{if(!t.__breakpoints)return e;const{isResponsive:n,toArrayValue:r,media:i}=t.__breakpoints,o={};for(const a in e){let s=ts(e[a],t);if(s==null)continue;if(s=ko(s)&&n(s)?r(s):s,!Array.isArray(s)){o[a]=s;continue}const l=s.slice(0,i.length).length;for(let u=0;ue.startsWith("--")&&typeof t=="string"&&!Bre(t),Hre=(e,t)=>{var n,r;if(t==null)return t;const i=l=>{var u,d;return(d=(u=e.__cssMap)==null?void 0:u[l])==null?void 0:d.varRef},o=l=>{var u;return(u=i(l))!=null?u:l},[a,s]=Fre(t);return t=(r=(n=i(a))!=null?n:o(s))!=null?r:o(t),t};function Wre(e){const{configs:t={},pseudos:n={},theme:r}=e,i=(o,a=!1)=>{var s,l,u;const d=ts(o,r),h=$re(d)(r);let m={};for(let y in h){const b=h[y];let w=ts(b,r);y in n&&(y=n[y]),zre(y,w)&&(w=Hre(r,w));let E=t[y];if(E===!0&&(E={property:y}),ko(w)){m[y]=(s=m[y])!=null?s:{},m[y]=Bl({},m[y],i(w,!0));continue}let _=(u=(l=E==null?void 0:E.transform)==null?void 0:l.call(E,w,r,d))!=null?u:w;_=E!=null&&E.processResult?i(_,!0):_;const k=ts(E==null?void 0:E.property,r);if(!a&&(E!=null&&E.static)){const T=ts(E.static,r);m=Bl({},m,T)}if(k&&Array.isArray(k)){for(const T of k)m[T]=_;continue}if(k){k==="&"&&ko(_)?m=Bl({},m,_):m[k]=_;continue}if(ko(_)){m=Bl({},m,_);continue}m[y]=_}return m};return i}var uF=e=>t=>Wre({theme:t,pseudos:Cw,configs:P9})(e);function dr(e){return{definePartsStyle(t){return t},defineMultiStyleConfig(t){return{parts:e,...t}}}}function Ure(e,t){if(Array.isArray(e))return e;if(ko(e))return t(e);if(e!=null)return[e]}function Vre(e,t){for(let n=t+1;n{Bl(u,{[T]:m?k[T]:{[_]:k[T]}})});continue}if(!y){m?Bl(u,k):u[_]=k;continue}u[_]=k}}return u}}function qre(e){return t=>{var n;const{variant:r,size:i,theme:o}=t,a=Gre(o);return Bl({},ts((n=e.baseStyle)!=null?n:{},t),a(e,"sizes",i,t),a(e,"variants",r,t))}}function Kre(e,t,n){var r,i,o;return(o=(i=(r=e.__cssMap)==null?void 0:r[`${t}.${n}`])==null?void 0:i.varRef)!=null?o:n}function fr(e){return Ere(e,["styleConfig","size","variant","colorScheme"])}var Yre={hide:-1,auto:"auto",base:0,docked:10,dropdown:1e3,sticky:1100,banner:1200,overlay:1300,modal:1400,popover:1500,skipLink:1600,toast:1700,tooltip:1800},Xre=Yre,Zre={base:"0em",sm:"30em",md:"48em",lg:"62em",xl:"80em","2xl":"96em"},Qre=Zre,Jre={transparent:"transparent",current:"currentColor",black:"#000000",white:"#FFFFFF",whiteAlpha:{50:"rgba(255, 255, 255, 0.04)",100:"rgba(255, 255, 255, 0.06)",200:"rgba(255, 255, 255, 0.08)",300:"rgba(255, 255, 255, 0.16)",400:"rgba(255, 255, 255, 0.24)",500:"rgba(255, 255, 255, 0.36)",600:"rgba(255, 255, 255, 0.48)",700:"rgba(255, 255, 255, 0.64)",800:"rgba(255, 255, 255, 0.80)",900:"rgba(255, 255, 255, 0.92)"},blackAlpha:{50:"rgba(0, 0, 0, 0.04)",100:"rgba(0, 0, 0, 0.06)",200:"rgba(0, 0, 0, 0.08)",300:"rgba(0, 0, 0, 0.16)",400:"rgba(0, 0, 0, 0.24)",500:"rgba(0, 0, 0, 0.36)",600:"rgba(0, 0, 0, 0.48)",700:"rgba(0, 0, 0, 0.64)",800:"rgba(0, 0, 0, 0.80)",900:"rgba(0, 0, 0, 0.92)"},gray:{50:"#F7FAFC",100:"#EDF2F7",200:"#E2E8F0",300:"#CBD5E0",400:"#A0AEC0",500:"#718096",600:"#4A5568",700:"#2D3748",800:"#1A202C",900:"#171923"},red:{50:"#FFF5F5",100:"#FED7D7",200:"#FEB2B2",300:"#FC8181",400:"#F56565",500:"#E53E3E",600:"#C53030",700:"#9B2C2C",800:"#822727",900:"#63171B"},orange:{50:"#FFFAF0",100:"#FEEBC8",200:"#FBD38D",300:"#F6AD55",400:"#ED8936",500:"#DD6B20",600:"#C05621",700:"#9C4221",800:"#7B341E",900:"#652B19"},yellow:{50:"#FFFFF0",100:"#FEFCBF",200:"#FAF089",300:"#F6E05E",400:"#ECC94B",500:"#D69E2E",600:"#B7791F",700:"#975A16",800:"#744210",900:"#5F370E"},green:{50:"#F0FFF4",100:"#C6F6D5",200:"#9AE6B4",300:"#68D391",400:"#48BB78",500:"#38A169",600:"#2F855A",700:"#276749",800:"#22543D",900:"#1C4532"},teal:{50:"#E6FFFA",100:"#B2F5EA",200:"#81E6D9",300:"#4FD1C5",400:"#38B2AC",500:"#319795",600:"#2C7A7B",700:"#285E61",800:"#234E52",900:"#1D4044"},blue:{50:"#ebf8ff",100:"#bee3f8",200:"#90cdf4",300:"#63b3ed",400:"#4299e1",500:"#3182ce",600:"#2b6cb0",700:"#2c5282",800:"#2a4365",900:"#1A365D"},cyan:{50:"#EDFDFD",100:"#C4F1F9",200:"#9DECF9",300:"#76E4F7",400:"#0BC5EA",500:"#00B5D8",600:"#00A3C4",700:"#0987A0",800:"#086F83",900:"#065666"},purple:{50:"#FAF5FF",100:"#E9D8FD",200:"#D6BCFA",300:"#B794F4",400:"#9F7AEA",500:"#805AD5",600:"#6B46C1",700:"#553C9A",800:"#44337A",900:"#322659"},pink:{50:"#FFF5F7",100:"#FED7E2",200:"#FBB6CE",300:"#F687B3",400:"#ED64A6",500:"#D53F8C",600:"#B83280",700:"#97266D",800:"#702459",900:"#521B41"},linkedin:{50:"#E8F4F9",100:"#CFEDFB",200:"#9BDAF3",300:"#68C7EC",400:"#34B3E4",500:"#00A0DC",600:"#008CC9",700:"#0077B5",800:"#005E93",900:"#004471"},facebook:{50:"#E8F4F9",100:"#D9DEE9",200:"#B7C2DA",300:"#6482C0",400:"#4267B2",500:"#385898",600:"#314E89",700:"#29487D",800:"#223B67",900:"#1E355B"},messenger:{50:"#D0E6FF",100:"#B9DAFF",200:"#A2CDFF",300:"#7AB8FF",400:"#2E90FF",500:"#0078FF",600:"#0063D1",700:"#0052AC",800:"#003C7E",900:"#002C5C"},whatsapp:{50:"#dffeec",100:"#b9f5d0",200:"#90edb3",300:"#65e495",400:"#3cdd78",500:"#22c35e",600:"#179848",700:"#0c6c33",800:"#01421c",900:"#001803"},twitter:{50:"#E5F4FD",100:"#C8E9FB",200:"#A8DCFA",300:"#83CDF7",400:"#57BBF5",500:"#1DA1F2",600:"#1A94DA",700:"#1681BF",800:"#136B9E",900:"#0D4D71"},telegram:{50:"#E3F2F9",100:"#C5E4F3",200:"#A2D4EC",300:"#7AC1E4",400:"#47A9DA",500:"#0088CC",600:"#007AB8",700:"#006BA1",800:"#005885",900:"#003F5E"}},eie=Jre,tie={none:"0",sm:"0.125rem",base:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},nie=tie,rie={xs:"0 0 0 1px rgba(0, 0, 0, 0.05)",sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"0 0 0 3px rgba(66, 153, 225, 0.6)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.06)",none:"none","dark-lg":"rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px"},iie=rie,oie={common:"background-color, border-color, color, fill, stroke, opacity, box-shadow, transform",colors:"background-color, border-color, color, fill, stroke",dimensions:"width, height",position:"left, right, top, bottom",background:"background-color, background-image, background-position"},aie={"ease-in":"cubic-bezier(0.4, 0, 1, 1)","ease-out":"cubic-bezier(0, 0, 0.2, 1)","ease-in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},sie={"ultra-fast":"50ms",faster:"100ms",fast:"150ms",normal:"200ms",slow:"300ms",slower:"400ms","ultra-slow":"500ms"},lie={property:oie,easing:aie,duration:sie},uie=lie,cie={none:0,sm:"4px",base:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},die=cie,fie={none:0,"1px":"1px solid","2px":"2px solid","4px":"4px solid","8px":"8px solid"},hie=fie,pie={letterSpacings:{tighter:"-0.05em",tight:"-0.025em",normal:"0",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeights:{normal:"normal",none:1,shorter:1.25,short:1.375,base:1.5,tall:1.625,taller:"2",3:".75rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem"},fontWeights:{hairline:100,thin:200,light:300,normal:400,medium:500,semibold:600,bold:700,extrabold:800,black:900},fonts:{heading:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'},fontSizes:{"3xs":"0.45rem","2xs":"0.625rem",xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"}},cF=pie,dF={px:"1px",.5:"0.125rem",1:"0.25rem",1.5:"0.375rem",2:"0.5rem",2.5:"0.625rem",3:"0.75rem",3.5:"0.875rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem",12:"3rem",14:"3.5rem",16:"4rem",20:"5rem",24:"6rem",28:"7rem",32:"8rem",36:"9rem",40:"10rem",44:"11rem",48:"12rem",52:"13rem",56:"14rem",60:"15rem",64:"16rem",72:"18rem",80:"20rem",96:"24rem"},gie={max:"max-content",min:"min-content",full:"100%","3xs":"14rem","2xs":"16rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem","8xl":"90rem",prose:"60ch"},mie={sm:"640px",md:"768px",lg:"1024px",xl:"1280px"},vie={...dF,...gie,container:mie},fF=vie,yie={breakpoints:Qre,zIndices:Xre,radii:nie,blur:die,colors:eie,...cF,sizes:fF,shadows:iie,space:dF,borders:hie,transition:uie};function En(e,t={}){let n=!1;function r(){if(!n){n=!0;return}throw new Error("[anatomy] .part(...) should only be called once. Did you mean to use .extend(...) ?")}function i(...d){r();for(const h of d)t[h]=l(h);return En(e,t)}function o(...d){for(const h of d)h in t||(t[h]=l(h));return En(e,t)}function a(){return Object.fromEntries(Object.entries(t).map(([h,m])=>[h,m.selector]))}function s(){return Object.fromEntries(Object.entries(t).map(([h,m])=>[h,m.className]))}function l(d){const y=`chakra-${(["container","root"].includes(d??"")?[e]:[e,d]).filter(Boolean).join("__")}`;return{className:y,selector:`.${y}`,toString:()=>d}}return{parts:i,toPart:l,extend:o,selectors:a,classnames:s,get keys(){return Object.keys(t)},__type:{}}}var bie=En("accordion").parts("root","container","button","panel").extend("icon"),xie=En("alert").parts("title","description","container").extend("icon","spinner"),Sie=En("avatar").parts("label","badge","container").extend("excessLabel","group"),wie=En("breadcrumb").parts("link","item","container").extend("separator");En("button").parts();var Cie=En("checkbox").parts("control","icon","container").extend("label");En("progress").parts("track","filledTrack").extend("label");var _ie=En("drawer").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),kie=En("editable").parts("preview","input","textarea"),Eie=En("form").parts("container","requiredIndicator","helperText"),Pie=En("formError").parts("text","icon"),Tie=En("input").parts("addon","field","element"),Mie=En("list").parts("container","item","icon"),Lie=En("menu").parts("button","list","item").extend("groupTitle","command","divider"),Aie=En("modal").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),Oie=En("numberinput").parts("root","field","stepperGroup","stepper");En("pininput").parts("field");var Rie=En("popover").parts("content","header","body","footer").extend("popper","arrow","closeButton"),Iie=En("progress").parts("label","filledTrack","track"),Die=En("radio").parts("container","control","label"),jie=En("select").parts("field","icon"),Nie=En("slider").parts("container","track","thumb","filledTrack","mark"),$ie=En("stat").parts("container","label","helpText","number","icon"),Fie=En("switch").parts("container","track","thumb"),Bie=En("table").parts("table","thead","tbody","tr","th","td","tfoot","caption"),zie=En("tabs").parts("root","tab","tablist","tabpanel","tabpanels","indicator"),Hie=En("tag").parts("container","label","closeButton"),Wie=En("card").parts("container","header","body","footer");function kh(e,t,n){return Math.min(Math.max(e,n),t)}class Uie extends Error{constructor(t){super(`Failed to parse color: "${t}"`)}}var u1=Uie;function T9(e){if(typeof e!="string")throw new u1(e);if(e.trim().toLowerCase()==="transparent")return[0,0,0,0];let t=e.trim();t=Qie.test(e)?qie(e):e;const n=Kie.exec(t);if(n){const a=Array.from(n).slice(1);return[...a.slice(0,3).map(s=>parseInt(xy(s,2),16)),parseInt(xy(a[3]||"f",2),16)/255]}const r=Yie.exec(t);if(r){const a=Array.from(r).slice(1);return[...a.slice(0,3).map(s=>parseInt(s,16)),parseInt(a[3]||"ff",16)/255]}const i=Xie.exec(t);if(i){const a=Array.from(i).slice(1);return[...a.slice(0,3).map(s=>parseInt(s,10)),parseFloat(a[3]||"1")]}const o=Zie.exec(t);if(o){const[a,s,l,u]=Array.from(o).slice(1).map(parseFloat);if(kh(0,100,s)!==s)throw new u1(e);if(kh(0,100,l)!==l)throw new u1(e);return[...Jie(a,s,l),Number.isNaN(u)?1:u]}throw new u1(e)}function Vie(e){let t=5381,n=e.length;for(;n;)t=t*33^e.charCodeAt(--n);return(t>>>0)%2341}const qM=e=>parseInt(e.replace(/_/g,""),36),Gie="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((e,t)=>{const n=qM(t.substring(0,3)),r=qM(t.substring(3)).toString(16);let i="";for(let o=0;o<6-r.length;o++)i+="0";return e[n]=`${i}${r}`,e},{});function qie(e){const t=e.toLowerCase().trim(),n=Gie[Vie(t)];if(!n)throw new u1(e);return`#${n}`}const xy=(e,t)=>Array.from(Array(t)).map(()=>e).join(""),Kie=new RegExp(`^#${xy("([a-f0-9])",3)}([a-f0-9])?$`,"i"),Yie=new RegExp(`^#${xy("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),Xie=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${xy(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),Zie=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,Qie=/^[a-z]+$/i,KM=e=>Math.round(e*255),Jie=(e,t,n)=>{let r=n/100;if(t===0)return[r,r,r].map(KM);const i=(e%360+360)%360/60,o=(1-Math.abs(2*r-1))*(t/100),a=o*(1-Math.abs(i%2-1));let s=0,l=0,u=0;i>=0&&i<1?(s=o,l=a):i>=1&&i<2?(s=a,l=o):i>=2&&i<3?(l=o,u=a):i>=3&&i<4?(l=a,u=o):i>=4&&i<5?(s=a,u=o):i>=5&&i<6&&(s=o,u=a);const d=r-o/2,h=s+d,m=l+d,y=u+d;return[h,m,y].map(KM)};function eoe(e,t,n,r){return`rgba(${kh(0,255,e).toFixed()}, ${kh(0,255,t).toFixed()}, ${kh(0,255,n).toFixed()}, ${parseFloat(kh(0,1,r).toFixed(3))})`}function toe(e,t){const[n,r,i,o]=T9(e);return eoe(n,r,i,o-t)}function noe(e){const[t,n,r,i]=T9(e);let o=a=>{const s=kh(0,255,a).toString(16);return s.length===1?`0${s}`:s};return`#${o(t)}${o(n)}${o(r)}${i<1?o(Math.round(i*255)):""}`}function roe(e,t,n,r,i){for(t=t.split?t.split("."):t,r=0;rObject.keys(e).length===0,wo=(e,t,n)=>{const r=roe(e,`colors.${t}`,t);try{return noe(r),r}catch{return n??"#000000"}},ooe=e=>{const[t,n,r]=T9(e);return(t*299+n*587+r*114)/1e3},aoe=e=>t=>{const n=wo(t,e);return ooe(n)<128?"dark":"light"},soe=e=>t=>aoe(e)(t)==="dark",Um=(e,t)=>n=>{const r=wo(n,e);return toe(r,1-t)};function YM(e="1rem",t="rgba(255, 255, 255, 0.15)"){return{backgroundImage:`linear-gradient( +`+o.stack}return{value:e,source:t,stack:i,digest:null}}function M5(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function X6(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var Jte=typeof WeakMap=="function"?WeakMap:Map;function k$(e,t,n){n=Wu(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){FS||(FS=!0,a_=r),X6(e,t)},n}function E$(e,t,n){n=Wu(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){X6(e,t)}}var o=e.stateNode;return o!==null&&typeof o.componentDidCatch=="function"&&(n.callback=function(){X6(e,t),typeof r!="function"&&(Id===null?Id=new Set([this]):Id.add(this));var a=t.stack;this.componentDidCatch(t.value,{componentStack:a!==null?a:""})}),n}function bM(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Jte;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=hne.bind(null,e,t,n),t.then(e,e))}function xM(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 SM(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,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=Wu(-1,1),t.tag=2,Rd(n,t,1))),n.lanes|=1),e)}var ene=dc.ReactCurrentOwner,qo=!1;function xo(e,t,n,r){t.child=e===null?i$(t,null,n,r):Bm(t,e.child,n,r)}function wM(e,t,n,r,i){n=n.render;var o=t.ref;return mm(t,i),r=s9(e,t,n,r,o,i),n=l9(),e!==null&&!qo?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,tc(e,t,i)):(yr&&n&&Y7(t),t.flags|=1,xo(e,t,r,i),t.child)}function CM(e,t,n,r,i){if(e===null){var o=n.type;return typeof o=="function"&&!y9(o)&&o.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=o,P$(e,t,o,r,i)):(e=Wx(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(o=e.child,!(e.lanes&i)){var a=o.memoizedProps;if(n=n.compare,n=n!==null?n:cy,n(a,r)&&e.ref===t.ref)return tc(e,t,i)}return t.flags|=1,e=jd(o,r),e.ref=t.ref,e.return=t,t.child=e}function P$(e,t,n,r,i){if(e!==null){var o=e.memoizedProps;if(cy(o,r)&&e.ref===t.ref)if(qo=!1,t.pendingProps=r=o,(e.lanes&i)!==0)e.flags&131072&&(qo=!0);else return t.lanes=e.lanes,tc(e,t,i)}return Z6(e,t,n,r,i)}function T$(e,t,n){var r=t.pendingProps,i=r.children,o=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},nr(Zg,Sa),Sa|=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,nr(Zg,Sa),Sa|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=o!==null?o.baseLanes:n,nr(Zg,Sa),Sa|=r}else o!==null?(r=o.baseLanes|n,t.memoizedState=null):r=n,nr(Zg,Sa),Sa|=r;return xo(e,t,i,n),t.child}function M$(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Z6(e,t,n,r,i){var o=Yo(n)?Hh:lo.current;return o=$m(t,o),mm(t,i),n=s9(e,t,n,r,o,i),r=l9(),e!==null&&!qo?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,tc(e,t,i)):(yr&&r&&Y7(t),t.flags|=1,xo(e,t,n,i),t.child)}function _M(e,t,n,r,i){if(Yo(n)){var o=!0;MS(t)}else o=!1;if(mm(t,i),t.stateNode===null)Bx(e,t),n$(t,n,r),Y6(t,n,r,i),r=!0;else if(e===null){var a=t.stateNode,s=t.memoizedProps;a.props=s;var l=a.context,u=n.contextType;typeof u=="object"&&u!==null?u=os(u):(u=Yo(n)?Hh:lo.current,u=$m(t,u));var d=n.getDerivedStateFromProps,p=typeof d=="function"||typeof a.getSnapshotBeforeUpdate=="function";p||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(s!==r||l!==u)&&gM(t,a,r,u),pd=!1;var m=t.memoizedState;a.state=m,IS(t,r,a,i),l=t.memoizedState,s!==r||m!==l||Ko.current||pd?(typeof d=="function"&&(K6(t,n,d,r),l=t.memoizedState),(s=pd||pM(t,n,s,r,m,l,u))?(p||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount=="function"&&(t.flags|=4194308)):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=u,r=s):(typeof a.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,e$(e,t),s=t.memoizedProps,u=t.type===t.elementType?s:Bs(t.type,s),a.props=u,p=t.pendingProps,m=a.context,l=n.contextType,typeof l=="object"&&l!==null?l=os(l):(l=Yo(n)?Hh:lo.current,l=$m(t,l));var y=n.getDerivedStateFromProps;(d=typeof y=="function"||typeof a.getSnapshotBeforeUpdate=="function")||typeof a.UNSAFE_componentWillReceiveProps!="function"&&typeof a.componentWillReceiveProps!="function"||(s!==p||m!==l)&&gM(t,a,r,l),pd=!1,m=t.memoizedState,a.state=m,IS(t,r,a,i);var b=t.memoizedState;s!==p||m!==b||Ko.current||pd?(typeof y=="function"&&(K6(t,n,y,r),b=t.memoizedState),(u=pd||pM(t,n,u,r,m,b,l)||!1)?(d||typeof a.UNSAFE_componentWillUpdate!="function"&&typeof a.componentWillUpdate!="function"||(typeof a.componentWillUpdate=="function"&&a.componentWillUpdate(r,b,l),typeof a.UNSAFE_componentWillUpdate=="function"&&a.UNSAFE_componentWillUpdate(r,b,l)),typeof a.componentDidUpdate=="function"&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof a.componentDidUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=b),a.props=r,a.state=b,a.context=l,r=u):(typeof a.componentDidUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!="function"||s===e.memoizedProps&&m===e.memoizedState||(t.flags|=1024),r=!1)}return Q6(e,t,n,r,o,i)}function Q6(e,t,n,r,i,o){M$(e,t);var a=(t.flags&128)!==0;if(!r&&!a)return i&&uM(t,n,!1),tc(e,t,o);r=t.stateNode,ene.current=t;var s=a&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&a?(t.child=Bm(t,e.child,null,o),t.child=Bm(t,null,s,o)):xo(e,t,s,o),t.memoizedState=r.state,i&&uM(t,n,!0),t.child}function L$(e){var t=e.stateNode;t.pendingContext?lM(e,t.pendingContext,t.pendingContext!==t.context):t.context&&lM(e,t.context,!1),r9(e,t.containerInfo)}function kM(e,t,n,r,i){return Fm(),Z7(i),t.flags|=256,xo(e,t,n,r),t.child}var J6={dehydrated:null,treeContext:null,retryLane:0};function e_(e){return{baseLanes:e,cachePool:null,transitions:null}}function A$(e,t,n){var r=t.pendingProps,i=kr.current,o=!1,a=(t.flags&128)!==0,s;if((s=a)||(s=e!==null&&e.memoizedState===null?!1:(i&2)!==0),s?(o=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),nr(kr,i&1),e===null)return G6(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):(a=r.children,e=r.fallback,o?(r=t.mode,o=t.child,a={mode:"hidden",children:a},!(r&1)&&o!==null?(o.childLanes=0,o.pendingProps=a):o=mw(a,r,0,null),e=Lh(e,r,n,null),o.return=t,e.return=t,o.sibling=e,t.child=o,t.child.memoizedState=e_(n),t.memoizedState=J6,e):d9(t,a));if(i=e.memoizedState,i!==null&&(s=i.dehydrated,s!==null))return tne(e,t,a,r,s,i,n);if(o){o=r.fallback,a=t.mode,i=e.child,s=i.sibling;var l={mode:"hidden",children:r.children};return!(a&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=l,t.deletions=null):(r=jd(i,l),r.subtreeFlags=i.subtreeFlags&14680064),s!==null?o=jd(s,o):(o=Lh(o,a,n,null),o.flags|=2),o.return=t,r.return=t,r.sibling=o,t.child=r,r=o,o=t.child,a=e.child.memoizedState,a=a===null?e_(n):{baseLanes:a.baseLanes|n,cachePool:null,transitions:a.transitions},o.memoizedState=a,o.childLanes=e.childLanes&~n,t.memoizedState=J6,r}return o=e.child,e=o.sibling,r=jd(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 d9(e,t){return t=mw({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function Tb(e,t,n,r){return r!==null&&Z7(r),Bm(t,e.child,null,n),e=d9(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function tne(e,t,n,r,i,o,a){if(n)return t.flags&256?(t.flags&=-257,r=M5(Error(ze(422))),Tb(e,t,a,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(o=r.fallback,i=t.mode,r=mw({mode:"visible",children:r.children},i,0,null),o=Lh(o,i,a,null),o.flags|=2,r.return=t,o.return=t,r.sibling=o,t.child=r,t.mode&1&&Bm(t,e.child,null,a),t.child.memoizedState=e_(a),t.memoizedState=J6,o);if(!(t.mode&1))return Tb(e,t,a,null);if(i.data==="$!"){if(r=i.nextSibling&&i.nextSibling.dataset,r)var s=r.dgst;return r=s,o=Error(ze(419)),r=M5(o,r,void 0),Tb(e,t,a,r)}if(s=(a&e.childLanes)!==0,qo||s){if(r=Ai,r!==null){switch(a&-a){case 4:i=2;break;case 16:i=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:i=32;break;case 536870912:i=268435456;break;default:i=0}i=i&(r.suspendedLanes|a)?0:i,i!==0&&i!==o.retryLane&&(o.retryLane=i,ec(e,i),qs(r,e,i,-1))}return v9(),r=M5(Error(ze(421))),Tb(e,t,a,r)}return i.data==="$?"?(t.flags|=128,t.child=e.child,t=pne.bind(null,e),i._reactRetry=t,null):(e=o.treeContext,ka=Od(i.nextSibling),Pa=t,yr=!0,Ws=null,e!==null&&(Ya[Xa++]=Fu,Ya[Xa++]=Bu,Ya[Xa++]=Wh,Fu=e.id,Bu=e.overflow,Wh=t),t=d9(t,r.children),t.flags|=4096,t)}function EM(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),q6(e.return,t,n)}function L5(e,t,n,r,i){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i)}function O$(e,t,n){var r=t.pendingProps,i=r.revealOrder,o=r.tail;if(xo(e,t,r.children,n),r=kr.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&&EM(e,n,t);else if(e.tag===19)EM(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(nr(kr,r),!(t.mode&1))t.memoizedState=null;else switch(i){case"forwards":for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&DS(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),L5(t,!1,i,n,o);break;case"backwards":for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&DS(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}L5(t,!0,n,null,o);break;case"together":L5(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function Bx(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function tc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Vh|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(ze(153));if(t.child!==null){for(e=t.child,n=jd(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=jd(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function nne(e,t,n){switch(t.tag){case 3:L$(t),Fm();break;case 5:o$(t);break;case 1:Yo(t.type)&&MS(t);break;case 4:r9(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;nr(OS,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(nr(kr,kr.current&1),t.flags|=128,null):n&t.child.childLanes?A$(e,t,n):(nr(kr,kr.current&1),e=tc(e,t,n),e!==null?e.sibling:null);nr(kr,kr.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return O$(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),nr(kr,kr.current),r)break;return null;case 22:case 23:return t.lanes=0,T$(e,t,n)}return tc(e,t,n)}var R$,t_,I$,D$;R$=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}};t_=function(){};I$=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,_h(ql.current);var o=null;switch(n){case"input":i=C6(e,i),r=C6(e,r),o=[];break;case"select":i=Pr({},i,{value:void 0}),r=Pr({},r,{value:void 0}),o=[];break;case"textarea":i=E6(e,i),r=E6(e,r),o=[];break;default:typeof i.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=PS)}T6(n,r);var a;n=null;for(u in i)if(!r.hasOwnProperty(u)&&i.hasOwnProperty(u)&&i[u]!=null)if(u==="style"){var s=i[u];for(a in s)s.hasOwnProperty(a)&&(n||(n={}),n[a]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(ry.hasOwnProperty(u)?o||(o=[]):(o=o||[]).push(u,null));for(u in r){var l=r[u];if(s=i!=null?i[u]:void 0,r.hasOwnProperty(u)&&l!==s&&(l!=null||s!=null))if(u==="style")if(s){for(a in s)!s.hasOwnProperty(a)||l&&l.hasOwnProperty(a)||(n||(n={}),n[a]="");for(a in l)l.hasOwnProperty(a)&&s[a]!==l[a]&&(n||(n={}),n[a]=l[a])}else n||(o||(o=[]),o.push(u,n)),n=l;else u==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,s=s?s.__html:void 0,l!=null&&s!==l&&(o=o||[]).push(u,l)):u==="children"?typeof l!="string"&&typeof l!="number"||(o=o||[]).push(u,""+l):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(ry.hasOwnProperty(u)?(l!=null&&u==="onScroll"&&ir("scroll",e),o||s===l||(o=[])):(o=o||[]).push(u,l))}n&&(o=o||[]).push("style",n);var u=o;(t.updateQueue=u)&&(t.flags|=4)}};D$=function(e,t,n,r){n!==r&&(t.flags|=4)};function $v(e,t){if(!yr)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 to(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function rne(e,t,n){var r=t.pendingProps;switch(X7(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return to(t),null;case 1:return Yo(t.type)&&TS(),to(t),null;case 3:return r=t.stateNode,zm(),cr(Ko),cr(lo),o9(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Eb(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Ws!==null&&(u_(Ws),Ws=null))),t_(e,t),to(t),null;case 5:i9(t);var i=_h(gy.current);if(n=t.type,e!==null&&t.stateNode!=null)I$(e,t,n,r,i),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(ze(166));return to(t),null}if(e=_h(ql.current),Eb(t)){r=t.stateNode,n=t.type;var o=t.memoizedProps;switch(r[jl]=t,r[hy]=o,e=(t.mode&1)!==0,n){case"dialog":ir("cancel",r),ir("close",r);break;case"iframe":case"object":case"embed":ir("load",r);break;case"video":case"audio":for(i=0;i<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=a.createElement(n,{is:r.is}):(e=a.createElement(n),n==="select"&&(a=e,r.multiple?a.multiple=!0:r.size&&(a.size=r.size))):e=a.createElementNS(e,n),e[jl]=t,e[hy]=r,R$(e,t,!1,!1),t.stateNode=e;e:{switch(a=M6(n,r),n){case"dialog":ir("cancel",e),ir("close",e),i=r;break;case"iframe":case"object":case"embed":ir("load",e),i=r;break;case"video":case"audio":for(i=0;iWm&&(t.flags|=128,r=!0,$v(o,!1),t.lanes=4194304)}else{if(!r)if(e=DS(a),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),$v(o,!0),o.tail===null&&o.tailMode==="hidden"&&!a.alternate&&!yr)return to(t),null}else 2*Zr()-o.renderingStartTime>Wm&&n!==1073741824&&(t.flags|=128,r=!0,$v(o,!1),t.lanes=4194304);o.isBackwards?(a.sibling=t.child,t.child=a):(n=o.last,n!==null?n.sibling=a:t.child=a,o.last=a)}return o.tail!==null?(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=Zr(),t.sibling=null,n=kr.current,nr(kr,r?n&1|2:n&1),t):(to(t),null);case 22:case 23:return m9(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Sa&1073741824&&(to(t),t.subtreeFlags&6&&(t.flags|=8192)):to(t),null;case 24:return null;case 25:return null}throw Error(ze(156,t.tag))}function ine(e,t){switch(X7(t),t.tag){case 1:return Yo(t.type)&&TS(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return zm(),cr(Ko),cr(lo),o9(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return i9(t),null;case 13:if(cr(kr),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(ze(340));Fm()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return cr(kr),null;case 4:return zm(),null;case 10:return e9(t.type._context),null;case 22:case 23:return m9(),null;case 24:return null;default:return null}}var Mb=!1,io=!1,one=typeof WeakSet=="function"?WeakSet:Set,dt=null;function Xg(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){$r(e,t,r)}else n.current=null}function n_(e,t,n){try{n()}catch(r){$r(e,t,r)}}var PM=!1;function ane(e,t){if(F6=_S,e=FN(),K7(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 i=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break e}var a=0,s=-1,l=-1,u=0,d=0,p=e,m=null;t:for(;;){for(var y;p!==n||i!==0&&p.nodeType!==3||(s=a+i),p!==o||r!==0&&p.nodeType!==3||(l=a+r),p.nodeType===3&&(a+=p.nodeValue.length),(y=p.firstChild)!==null;)m=p,p=y;for(;;){if(p===e)break t;if(m===n&&++u===i&&(s=a),m===o&&++d===r&&(l=a),(y=p.nextSibling)!==null)break;p=m,m=p.parentNode}p=y}n=s===-1||l===-1?null:{start:s,end:l}}else n=null}n=n||{start:0,end:0}}else n=null;for(B6={focusedElem:e,selectionRange:n},_S=!1,dt=t;dt!==null;)if(t=dt,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,dt=e;else for(;dt!==null;){t=dt;try{var b=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(b!==null){var w=b.memoizedProps,E=b.memoizedState,_=t.stateNode,k=_.getSnapshotBeforeUpdate(t.elementType===t.type?w:Bs(t.type,w),E);_.__reactInternalSnapshotBeforeUpdate=k}break;case 3:var T=t.stateNode.containerInfo;T.nodeType===1?T.textContent="":T.nodeType===9&&T.documentElement&&T.removeChild(T.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(ze(163))}}catch(L){$r(t,t.return,L)}if(e=t.sibling,e!==null){e.return=t.return,dt=e;break}dt=t.return}return b=PM,PM=!1,b}function M1(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var o=i.destroy;i.destroy=void 0,o!==void 0&&n_(t,n,o)}i=i.next}while(i!==r)}}function pw(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 r_(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 j$(e){var t=e.alternate;t!==null&&(e.alternate=null,j$(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[jl],delete t[hy],delete t[W6],delete t[Hte],delete t[Wte])),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 N$(e){return e.tag===5||e.tag===3||e.tag===4}function TM(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||N$(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 i_(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=PS));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}function o_(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(o_(e,t,n),e=e.sibling;e!==null;)o_(e,t,n),e=e.sibling}var Wi=null,zs=!1;function od(e,t,n){for(n=n.child;n!==null;)$$(e,t,n),n=n.sibling}function $$(e,t,n){if(Gl&&typeof Gl.onCommitFiberUnmount=="function")try{Gl.onCommitFiberUnmount(aw,n)}catch{}switch(n.tag){case 5:io||Xg(n,t);case 6:var r=Wi,i=zs;Wi=null,od(e,t,n),Wi=r,zs=i,Wi!==null&&(zs?(e=Wi,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Wi.removeChild(n.stateNode));break;case 18:Wi!==null&&(zs?(e=Wi,n=n.stateNode,e.nodeType===8?C5(e.parentNode,n):e.nodeType===1&&C5(e,n),ly(e)):C5(Wi,n.stateNode));break;case 4:r=Wi,i=zs,Wi=n.stateNode.containerInfo,zs=!0,od(e,t,n),Wi=r,zs=i;break;case 0:case 11:case 14:case 15:if(!io&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var o=i,a=o.destroy;o=o.tag,a!==void 0&&(o&2||o&4)&&n_(n,t,a),i=i.next}while(i!==r)}od(e,t,n);break;case 1:if(!io&&(Xg(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(s){$r(n,t,s)}od(e,t,n);break;case 21:od(e,t,n);break;case 22:n.mode&1?(io=(r=io)||n.memoizedState!==null,od(e,t,n),io=r):od(e,t,n);break;default:od(e,t,n)}}function MM(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new one),t.forEach(function(r){var i=gne.bind(null,e,r);n.has(r)||(n.add(r),r.then(i,i))})}}function Is(e,t){var n=t.deletions;if(n!==null)for(var r=0;ri&&(i=a),r&=~o}if(r=i,r=Zr()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*lne(r/1960))-r,10e?16:e,wd===null)var r=!1;else{if(e=wd,wd=null,BS=0,un&6)throw Error(ze(331));var i=un;for(un|=4,dt=e.current;dt!==null;){var o=dt,a=o.child;if(dt.flags&16){var s=o.deletions;if(s!==null){for(var l=0;lZr()-p9?Mh(e,0):h9|=n),Xo(e,t)}function G$(e,t){t===0&&(e.mode&1?(t=xb,xb<<=1,!(xb&130023424)&&(xb=4194304)):t=1);var n=_o();e=ec(e,t),e!==null&&(qy(e,t,n),Xo(e,n))}function pne(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),G$(e,n)}function gne(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(ze(314))}r!==null&&r.delete(t),G$(e,n)}var q$;q$=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Ko.current)qo=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return qo=!1,nne(e,t,n);qo=!!(e.flags&131072)}else qo=!1,yr&&t.flags&1048576&&XN(t,AS,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Bx(e,t),e=t.pendingProps;var i=$m(t,lo.current);mm(t,n),i=s9(null,t,r,e,i,n);var o=l9();return t.flags|=1,typeof i=="object"&&i!==null&&typeof i.render=="function"&&i.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Yo(r)?(o=!0,MS(t)):o=!1,t.memoizedState=i.state!==null&&i.state!==void 0?i.state:null,n9(t),i.updater=fw,t.stateNode=i,i._reactInternals=t,Y6(t,r,e,n),t=Q6(null,t,r,!0,o,n)):(t.tag=0,yr&&o&&Y7(t),xo(null,t,i,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Bx(e,t),e=t.pendingProps,i=r._init,r=i(r._payload),t.type=r,i=t.tag=vne(r),e=Bs(r,e),i){case 0:t=Z6(null,t,r,e,n);break e;case 1:t=_M(null,t,r,e,n);break e;case 11:t=wM(null,t,r,e,n);break e;case 14:t=CM(null,t,r,Bs(r.type,e),n);break e}throw Error(ze(306,r,""))}return t;case 0:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),Z6(e,t,r,i,n);case 1:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),_M(e,t,r,i,n);case 3:e:{if(L$(t),e===null)throw Error(ze(387));r=t.pendingProps,o=t.memoizedState,i=o.element,e$(e,t),IS(t,r,null,n);var a=t.memoizedState;if(r=a.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:a.cache,pendingSuspenseBoundaries:a.pendingSuspenseBoundaries,transitions:a.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){i=Hm(Error(ze(423)),t),t=kM(e,t,r,n,i);break e}else if(r!==i){i=Hm(Error(ze(424)),t),t=kM(e,t,r,n,i);break e}else for(ka=Od(t.stateNode.containerInfo.firstChild),Pa=t,yr=!0,Ws=null,n=i$(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Fm(),r===i){t=tc(e,t,n);break e}xo(e,t,r,n)}t=t.child}return t;case 5:return o$(t),e===null&&G6(t),r=t.type,i=t.pendingProps,o=e!==null?e.memoizedProps:null,a=i.children,z6(r,i)?a=null:o!==null&&z6(r,o)&&(t.flags|=32),M$(e,t),xo(e,t,a,n),t.child;case 6:return e===null&&G6(t),null;case 13:return A$(e,t,n);case 4:return r9(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Bm(t,null,r,n):xo(e,t,r,n),t.child;case 11:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),wM(e,t,r,i,n);case 7:return xo(e,t,t.pendingProps,n),t.child;case 8:return xo(e,t,t.pendingProps.children,n),t.child;case 12:return xo(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,i=t.pendingProps,o=t.memoizedProps,a=i.value,nr(OS,r._currentValue),r._currentValue=a,o!==null)if(Zs(o.value,a)){if(o.children===i.children&&!Ko.current){t=tc(e,t,n);break e}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var s=o.dependencies;if(s!==null){a=o.child;for(var l=s.firstContext;l!==null;){if(l.context===r){if(o.tag===1){l=Wu(-1,n&-n),l.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?l.next=l:(l.next=d.next,d.next=l),u.pending=l}}o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),q6(o.return,n,t),s.lanes|=n;break}l=l.next}}else if(o.tag===10)a=o.type===t.type?null:o.child;else if(o.tag===18){if(a=o.return,a===null)throw Error(ze(341));a.lanes|=n,s=a.alternate,s!==null&&(s.lanes|=n),q6(a,n,t),a=o.sibling}else a=o.child;if(a!==null)a.return=o;else for(a=o;a!==null;){if(a===t){a=null;break}if(o=a.sibling,o!==null){o.return=a.return,a=o;break}a=a.return}o=a}xo(e,t,i.children,n),t=t.child}return t;case 9:return i=t.type,r=t.pendingProps.children,mm(t,n),i=os(i),r=r(i),t.flags|=1,xo(e,t,r,n),t.child;case 14:return r=t.type,i=Bs(r,t.pendingProps),i=Bs(r.type,i),CM(e,t,r,i,n);case 15:return P$(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,i=t.pendingProps,i=t.elementType===r?i:Bs(r,i),Bx(e,t),t.tag=1,Yo(r)?(e=!0,MS(t)):e=!1,mm(t,n),n$(t,r,i),Y6(t,r,i,n),Q6(null,t,r,!0,e,n);case 19:return O$(e,t,n);case 22:return T$(e,t,n)}throw Error(ze(156,t.tag))};function K$(e,t){return xN(e,t)}function mne(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 es(e,t,n,r){return new mne(e,t,n,r)}function y9(e){return e=e.prototype,!(!e||!e.isReactComponent)}function vne(e){if(typeof e=="function")return y9(e)?1:0;if(e!=null){if(e=e.$$typeof,e===N7)return 11;if(e===$7)return 14}return 2}function jd(e,t){var n=e.alternate;return n===null?(n=es(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 Wx(e,t,n,r,i,o){var a=2;if(r=e,typeof e=="function")y9(e)&&(a=1);else if(typeof e=="string")a=5;else e:switch(e){case zg:return Lh(n.children,i,o,t);case j7:a=8,i|=8;break;case b6:return e=es(12,n,t,i|2),e.elementType=b6,e.lanes=o,e;case x6:return e=es(13,n,t,i),e.elementType=x6,e.lanes=o,e;case S6:return e=es(19,n,t,i),e.elementType=S6,e.lanes=o,e;case rN:return mw(n,i,o,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case tN:a=10;break e;case nN:a=9;break e;case N7:a=11;break e;case $7:a=14;break e;case hd:a=16,r=null;break e}throw Error(ze(130,e==null?e:typeof e,""))}return t=es(a,n,t,i),t.elementType=e,t.type=r,t.lanes=o,t}function Lh(e,t,n,r){return e=es(7,e,r,t),e.lanes=n,e}function mw(e,t,n,r){return e=es(22,e,r,t),e.elementType=rN,e.lanes=n,e.stateNode={isHidden:!1},e}function A5(e,t,n){return e=es(6,e,null,t),e.lanes=n,e}function O5(e,t,n){return t=es(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function yne(e,t,n,r,i){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=f5(0),this.expirationTimes=f5(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=f5(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function b9(e,t,n,r,i,o,a,s,l){return e=new yne(e,t,n,s,l),t===1?(t=1,o===!0&&(t|=8)):t=0,o=es(3,null,null,t),e.current=o,o.stateNode=e,o.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},n9(o),e}function bne(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(t)}catch(n){console.error(n)}}t(),e.exports=Ia})(xee);const Ob=S7(Xs);var[Q$,_ne]=Pn({strict:!1,name:"PortalContext"}),C9="chakra-portal",kne=".chakra-portal",Ene=e=>g.jsx("div",{className:"chakra-portal-zIndex",style:{position:"absolute",zIndex:e.zIndex,top:0,left:0,right:0},children:e.children}),Pne=e=>{const{appendToParentPortal:t,children:n}=e,[r,i]=S.useState(null),o=S.useRef(null),[,a]=S.useState({});S.useEffect(()=>a({}),[]);const s=_ne(),l=bee();Vl(()=>{if(!r)return;const d=r.ownerDocument,p=t?s??d.body:d.body;if(!p)return;o.current=d.createElement("div"),o.current.className=C9,p.appendChild(o.current),a({});const m=o.current;return()=>{p.contains(m)&&p.removeChild(m)}},[r]);const u=l!=null&&l.zIndex?g.jsx(Ene,{zIndex:l==null?void 0:l.zIndex,children:n}):n;return o.current?Xs.createPortal(g.jsx(Q$,{value:o.current,children:u}),o.current):g.jsx("span",{ref:d=>{d&&i(d)}})},Tne=e=>{const{children:t,containerRef:n,appendToParentPortal:r}=e,i=n.current,o=i??(typeof window<"u"?document.body:void 0),a=S.useMemo(()=>{const l=i==null?void 0:i.ownerDocument.createElement("div");return l&&(l.className=C9),l},[i]),[,s]=S.useState({});return Vl(()=>s({}),[]),Vl(()=>{if(!(!a||!o))return o.appendChild(a),()=>{o.removeChild(a)}},[a,o]),o&&a?Xs.createPortal(g.jsx(Q$,{value:r?a:null,children:t}),a):null};function c0(e){const t={appendToParentPortal:!0,...e},{containerRef:n,...r}=t;return n?g.jsx(Tne,{containerRef:n,...r}):g.jsx(Pne,{...r})}c0.className=C9;c0.selector=kne;c0.displayName="Portal";function Zy(){const e=S.useContext(ny);if(!e)throw Error("useTheme: `theme` is undefined. Seems you forgot to wrap your app in `` or ``");return e}var _9=S.createContext({});_9.displayName="ColorModeContext";function Qy(){const e=S.useContext(_9);if(e===void 0)throw new Error("useColorMode must be used within a ColorModeProvider");return e}var Rb={light:"chakra-ui-light",dark:"chakra-ui-dark"};function Mne(e={}){const{preventTransition:t=!0}=e,n={setDataset:r=>{const i=t?n.preventTransition():void 0;document.documentElement.dataset.theme=r,document.documentElement.style.colorScheme=r,i==null||i()},setClassName(r){document.body.classList.add(r?Rb.dark:Rb.light),document.body.classList.remove(r?Rb.light:Rb.dark)},query(){return window.matchMedia("(prefers-color-scheme: dark)")},getSystemTheme(r){var i;return((i=n.query().matches)!=null?i:r==="dark")?"dark":"light"},addListener(r){const i=n.query(),o=a=>{r(a.matches?"dark":"light")};return typeof i.addListener=="function"?i.addListener(o):i.addEventListener("change",o),()=>{typeof i.removeListener=="function"?i.removeListener(o):i.removeEventListener("change",o)}},preventTransition(){const r=document.createElement("style");return r.appendChild(document.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),document.head.appendChild(r),()=>{window.getComputedStyle(document.body),requestAnimationFrame(()=>{requestAnimationFrame(()=>{document.head.removeChild(r)})})}}};return n}var Lne="chakra-ui-color-mode";function Ane(e){return{ssr:!1,type:"localStorage",get(t){if(!(globalThis!=null&&globalThis.document))return t;let n;try{n=localStorage.getItem(e)||t}catch{}return n||t},set(t){try{localStorage.setItem(e,t)}catch{}}}}var One=Ane(Lne),NM=()=>{};function $M(e,t){return e.type==="cookie"&&e.ssr?e.get(t):t}function J$(e){const{value:t,children:n,options:{useSystemColorMode:r,initialColorMode:i,disableTransitionOnChange:o}={},colorModeManager:a=One}=e,s=i==="dark"?"dark":"light",[l,u]=S.useState(()=>$M(a,s)),[d,p]=S.useState(()=>$M(a)),{getSystemTheme:m,setClassName:y,setDataset:b,addListener:w}=S.useMemo(()=>Mne({preventTransition:o}),[o]),E=i==="system"&&!l?d:l,_=S.useCallback(L=>{const O=L==="system"?m():L;u(O),y(O==="dark"),b(O),a.set(O)},[a,m,y,b]);Vl(()=>{i==="system"&&p(m())},[]),S.useEffect(()=>{const L=a.get();if(L){_(L);return}if(i==="system"){_("system");return}_(s)},[a,s,i,_]);const k=S.useCallback(()=>{_(E==="dark"?"light":"dark")},[E,_]);S.useEffect(()=>{if(r)return w(_)},[r,w,_]);const T=S.useMemo(()=>({colorMode:t??E,toggleColorMode:t?NM:k,setColorMode:t?NM:_,forced:t!==void 0}),[E,k,_,t]);return g.jsx(_9.Provider,{value:T,children:n})}J$.displayName="ColorModeProvider";function eF(){const e=Qy(),t=Zy();return{...e,theme:t}}var xt=(...e)=>e.filter(Boolean).join(" ");function Rne(){return!1}function ko(e){const t=typeof e;return e!=null&&(t==="object"||t==="function")&&!Array.isArray(e)}var Jy=e=>{const{condition:t,message:n}=e;t&&Rne()&&console.warn(n)};function ts(e,...t){return Ine(e)?e(...t):e}var Ine=e=>typeof e=="function",Bt=e=>e?"":void 0,Uu=e=>e?!0:void 0;function ht(...e){return function(n){e.some(r=>(r==null||r(n),n==null?void 0:n.defaultPrevented))}}function Sw(...e){return function(n){e.forEach(r=>{r==null||r(n)})}}var WS={},Dne={get exports(){return WS},set exports(e){WS=e}};(function(e,t){var n=200,r="__lodash_hash_undefined__",i=800,o=16,a=9007199254740991,s="[object Arguments]",l="[object Array]",u="[object AsyncFunction]",d="[object Boolean]",p="[object Date]",m="[object Error]",y="[object Function]",b="[object GeneratorFunction]",w="[object Map]",E="[object Number]",_="[object Null]",k="[object Object]",T="[object Proxy]",L="[object RegExp]",O="[object Set]",D="[object String]",I="[object Undefined]",N="[object WeakMap]",W="[object ArrayBuffer]",B="[object DataView]",K="[object Float32Array]",ne="[object Float64Array]",z="[object Int8Array]",$="[object Int16Array]",V="[object Int32Array]",X="[object Uint8Array]",Q="[object Uint8ClampedArray]",G="[object Uint16Array]",Y="[object Uint32Array]",ee=/[\\^$.*+?()[\]{}|]/g,fe=/^\[object .+?Constructor\]$/,_e=/^(?:0|[1-9]\d*)$/,we={};we[K]=we[ne]=we[z]=we[$]=we[V]=we[X]=we[Q]=we[G]=we[Y]=!0,we[s]=we[l]=we[W]=we[d]=we[B]=we[p]=we[m]=we[y]=we[w]=we[E]=we[k]=we[L]=we[O]=we[D]=we[N]=!1;var xe=typeof So=="object"&&So&&So.Object===Object&&So,Le=typeof self=="object"&&self&&self.Object===Object&&self,Se=xe||Le||Function("return this")(),Je=t&&!t.nodeType&&t,Xe=Je&&!0&&e&&!e.nodeType&&e,tt=Xe&&Xe.exports===Je,yt=tt&&xe.process,Be=function(){try{var q=Xe&&Xe.require&&Xe.require("util").types;return q||yt&&yt.binding&&yt.binding("util")}catch{}}(),Ae=Be&&Be.isTypedArray;function bt(q,re,pe){switch(pe.length){case 0:return q.call(re);case 1:return q.call(re,pe[0]);case 2:return q.call(re,pe[0],pe[1]);case 3:return q.call(re,pe[0],pe[1],pe[2])}return q.apply(re,pe)}function Fe(q,re){for(var pe=-1,ot=Array(q);++pe-1}function P0(q,re){var pe=this.__data__,ot=xs(pe,q);return ot<0?(++this.size,pe.push([q,re])):pe[ot][1]=re,this}na.prototype.clear=mf,na.prototype.delete=E0,na.prototype.get=xc,na.prototype.has=vf,na.prototype.set=P0;function nl(q){var re=-1,pe=q==null?0:q.length;for(this.clear();++re1?pe[Ht-1]:void 0,St=Ht>2?pe[2]:void 0;for(mn=q.length>3&&typeof mn=="function"?(Ht--,mn):void 0,St&&Pp(pe[0],pe[1],St)&&(mn=Ht<3?void 0:mn,Ht=1),re=Object(re);++ot-1&&q%1==0&&q0){if(++re>=i)return arguments[0]}else re=0;return q.apply(void 0,arguments)}}function kc(q){if(q!=null){try{return He.call(q)}catch{}try{return q+""}catch{}}return""}function $a(q,re){return q===re||q!==q&&re!==re}var wf=pu(function(){return arguments}())?pu:function(q){return Xn(q)&&Ue.call(q,"callee")&&!zr.call(q,"callee")},vu=Array.isArray;function Gt(q){return q!=null&&Mp(q.length)&&!Pc(q)}function Tp(q){return Xn(q)&&Gt(q)}var Ec=vs||B0;function Pc(q){if(!aa(q))return!1;var re=il(q);return re==y||re==b||re==u||re==T}function Mp(q){return typeof q=="number"&&q>-1&&q%1==0&&q<=a}function aa(q){var re=typeof q;return q!=null&&(re=="object"||re=="function")}function Xn(q){return q!=null&&typeof q=="object"}function Cf(q){if(!Xn(q)||il(q)!=k)return!1;var re=qe(q);if(re===null)return!0;var pe=Ue.call(re,"constructor")&&re.constructor;return typeof pe=="function"&&pe instanceof pe&&He.call(pe)==vt}var Lp=Ae?at(Ae):wc;function _f(q){return ci(q,Ap(q))}function Ap(q){return Gt(q)?N0(q,!0):ol(q)}var cn=Ss(function(q,re,pe,ot){ra(q,re,pe,ot)});function qt(q){return function(){return q}}function Op(q){return q}function B0(){return!1}e.exports=cn})(Dne,WS);const Bl=WS;var jne=e=>/!(important)?$/.test(e),FM=e=>typeof e=="string"?e.replace(/!(important)?$/,"").trim():e,Nne=(e,t)=>n=>{const r=String(t),i=jne(r),o=FM(r),a=e?`${e}.${o}`:o;let s=ko(n.__cssMap)&&a in n.__cssMap?n.__cssMap[a].varRef:t;return s=FM(s),i?`${s} !important`:s};function k9(e){const{scale:t,transform:n,compose:r}=e;return(o,a)=>{var s;const l=Nne(t,o)(a);let u=(s=n==null?void 0:n(l,a))!=null?s:l;return r&&(u=r(u,a)),u}}var Ib=(...e)=>t=>e.reduce((n,r)=>r(n),t);function Ds(e,t){return n=>{const r={property:n,scale:e};return r.transform=k9({scale:e,transform:t}),r}}var $ne=({rtl:e,ltr:t})=>n=>n.direction==="rtl"?e:t;function Fne(e){const{property:t,scale:n,transform:r}=e;return{scale:n,property:$ne(t),transform:n?k9({scale:n,compose:r}):r}}var tF=["rotate(var(--chakra-rotate, 0))","scaleX(var(--chakra-scale-x, 1))","scaleY(var(--chakra-scale-y, 1))","skewX(var(--chakra-skew-x, 0))","skewY(var(--chakra-skew-y, 0))"];function Bne(){return["translateX(var(--chakra-translate-x, 0))","translateY(var(--chakra-translate-y, 0))",...tF].join(" ")}function zne(){return["translate3d(var(--chakra-translate-x, 0), var(--chakra-translate-y, 0), 0)",...tF].join(" ")}var Hne={"--chakra-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-sepia":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-drop-shadow":"var(--chakra-empty,/*!*/ /*!*/)",filter:["var(--chakra-blur)","var(--chakra-brightness)","var(--chakra-contrast)","var(--chakra-grayscale)","var(--chakra-hue-rotate)","var(--chakra-invert)","var(--chakra-saturate)","var(--chakra-sepia)","var(--chakra-drop-shadow)"].join(" ")},Wne={backdropFilter:["var(--chakra-backdrop-blur)","var(--chakra-backdrop-brightness)","var(--chakra-backdrop-contrast)","var(--chakra-backdrop-grayscale)","var(--chakra-backdrop-hue-rotate)","var(--chakra-backdrop-invert)","var(--chakra-backdrop-opacity)","var(--chakra-backdrop-saturate)","var(--chakra-backdrop-sepia)"].join(" "),"--chakra-backdrop-blur":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-brightness":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-contrast":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-grayscale":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-hue-rotate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-invert":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-opacity":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-saturate":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-backdrop-sepia":"var(--chakra-empty,/*!*/ /*!*/)"};function Une(e){return{"--chakra-ring-offset-shadow":"var(--chakra-ring-inset) 0 0 0 var(--chakra-ring-offset-width) var(--chakra-ring-offset-color)","--chakra-ring-shadow":"var(--chakra-ring-inset) 0 0 0 calc(var(--chakra-ring-width) + var(--chakra-ring-offset-width)) var(--chakra-ring-color)","--chakra-ring-width":e,boxShadow:["var(--chakra-ring-offset-shadow)","var(--chakra-ring-shadow)","var(--chakra-shadow, 0 0 #0000)"].join(", ")}}var Vne={"row-reverse":{space:"--chakra-space-x-reverse",divide:"--chakra-divide-x-reverse"},"column-reverse":{space:"--chakra-space-y-reverse",divide:"--chakra-divide-y-reverse"}},c_={"to-t":"to top","to-tr":"to top right","to-r":"to right","to-br":"to bottom right","to-b":"to bottom","to-bl":"to bottom left","to-l":"to left","to-tl":"to top left"},Gne=new Set(Object.values(c_)),nF=new Set(["none","-moz-initial","inherit","initial","revert","unset"]),qne=e=>e.trim();function Kne(e,t){if(e==null||nF.has(e))return e;const r=/(^[a-z-A-Z]+)\((.*)\)/g.exec(e),i=r==null?void 0:r[1],o=r==null?void 0:r[2];if(!i||!o)return e;const a=i.includes("-gradient")?i:`${i}-gradient`,[s,...l]=o.split(",").map(qne).filter(Boolean);if((l==null?void 0:l.length)===0)return e;const u=s in c_?c_[s]:s;l.unshift(u);const d=l.map(p=>{if(Gne.has(p))return p;const m=p.indexOf(" "),[y,b]=m!==-1?[p.substr(0,m),p.substr(m+1)]:[p],w=rF(b)?b:b&&b.split(" "),E=`colors.${y}`,_=E in t.__cssMap?t.__cssMap[E].varRef:y;return w?[_,...Array.isArray(w)?w:[w]].join(" "):_});return`${a}(${d.join(", ")})`}var rF=e=>typeof e=="string"&&e.includes("(")&&e.includes(")"),Yne=(e,t)=>Kne(e,t??{});function Xne(e){return/^var\(--.+\)$/.test(e)}var Zne=e=>{const t=parseFloat(e.toString()),n=e.toString().replace(String(t),"");return{unitless:!n,value:t,unit:n}},Pl=e=>t=>`${e}(${t})`,ln={filter(e){return e!=="auto"?e:Hne},backdropFilter(e){return e!=="auto"?e:Wne},ring(e){return Une(ln.px(e))},bgClip(e){return e==="text"?{color:"transparent",backgroundClip:"text"}:{backgroundClip:e}},transform(e){return e==="auto"?Bne():e==="auto-gpu"?zne():e},vh(e){return e==="$100vh"?"var(--chakra-vh)":e},px(e){if(e==null)return e;const{unitless:t}=Zne(e);return t||typeof e=="number"?`${e}px`:e},fraction(e){return typeof e!="number"||e>1?e:`${e*100}%`},float(e,t){const n={left:"right",right:"left"};return t.direction==="rtl"?n[e]:e},degree(e){if(Xne(e)||e==null)return e;const t=typeof e=="string"&&!e.endsWith("deg");return typeof e=="number"||t?`${e}deg`:e},gradient:Yne,blur:Pl("blur"),opacity:Pl("opacity"),brightness:Pl("brightness"),contrast:Pl("contrast"),dropShadow:Pl("drop-shadow"),grayscale:Pl("grayscale"),hueRotate:Pl("hue-rotate"),invert:Pl("invert"),saturate:Pl("saturate"),sepia:Pl("sepia"),bgImage(e){return e==null||rF(e)||nF.has(e)?e:`url(${e})`},outline(e){const t=String(e)==="0"||String(e)==="none";return e!==null&&t?{outline:"2px solid transparent",outlineOffset:"2px"}:{outline:e}},flexDirection(e){var t;const{space:n,divide:r}=(t=Vne[e])!=null?t:{},i={flexDirection:e};return n&&(i[n]=1),r&&(i[r]=1),i}},oe={borderWidths:Ds("borderWidths"),borderStyles:Ds("borderStyles"),colors:Ds("colors"),borders:Ds("borders"),radii:Ds("radii",ln.px),space:Ds("space",Ib(ln.vh,ln.px)),spaceT:Ds("space",Ib(ln.vh,ln.px)),degreeT(e){return{property:e,transform:ln.degree}},prop(e,t,n){return{property:e,scale:t,...t&&{transform:k9({scale:t,transform:n})}}},propT(e,t){return{property:e,transform:t}},sizes:Ds("sizes",Ib(ln.vh,ln.px)),sizesT:Ds("sizes",Ib(ln.vh,ln.fraction)),shadows:Ds("shadows"),logical:Fne,blur:Ds("blur",ln.blur)},Ux={background:oe.colors("background"),backgroundColor:oe.colors("backgroundColor"),backgroundImage:oe.propT("backgroundImage",ln.bgImage),backgroundSize:!0,backgroundPosition:!0,backgroundRepeat:!0,backgroundAttachment:!0,backgroundClip:{transform:ln.bgClip},bgSize:oe.prop("backgroundSize"),bgPosition:oe.prop("backgroundPosition"),bg:oe.colors("background"),bgColor:oe.colors("backgroundColor"),bgPos:oe.prop("backgroundPosition"),bgRepeat:oe.prop("backgroundRepeat"),bgAttachment:oe.prop("backgroundAttachment"),bgGradient:oe.propT("backgroundImage",ln.gradient),bgClip:{transform:ln.bgClip}};Object.assign(Ux,{bgImage:Ux.backgroundImage,bgImg:Ux.backgroundImage});var yn={border:oe.borders("border"),borderWidth:oe.borderWidths("borderWidth"),borderStyle:oe.borderStyles("borderStyle"),borderColor:oe.colors("borderColor"),borderRadius:oe.radii("borderRadius"),borderTop:oe.borders("borderTop"),borderBlockStart:oe.borders("borderBlockStart"),borderTopLeftRadius:oe.radii("borderTopLeftRadius"),borderStartStartRadius:oe.logical({scale:"radii",property:{ltr:"borderTopLeftRadius",rtl:"borderTopRightRadius"}}),borderEndStartRadius:oe.logical({scale:"radii",property:{ltr:"borderBottomLeftRadius",rtl:"borderBottomRightRadius"}}),borderTopRightRadius:oe.radii("borderTopRightRadius"),borderStartEndRadius:oe.logical({scale:"radii",property:{ltr:"borderTopRightRadius",rtl:"borderTopLeftRadius"}}),borderEndEndRadius:oe.logical({scale:"radii",property:{ltr:"borderBottomRightRadius",rtl:"borderBottomLeftRadius"}}),borderRight:oe.borders("borderRight"),borderInlineEnd:oe.borders("borderInlineEnd"),borderBottom:oe.borders("borderBottom"),borderBlockEnd:oe.borders("borderBlockEnd"),borderBottomLeftRadius:oe.radii("borderBottomLeftRadius"),borderBottomRightRadius:oe.radii("borderBottomRightRadius"),borderLeft:oe.borders("borderLeft"),borderInlineStart:{property:"borderInlineStart",scale:"borders"},borderInlineStartRadius:oe.logical({scale:"radii",property:{ltr:["borderTopLeftRadius","borderBottomLeftRadius"],rtl:["borderTopRightRadius","borderBottomRightRadius"]}}),borderInlineEndRadius:oe.logical({scale:"radii",property:{ltr:["borderTopRightRadius","borderBottomRightRadius"],rtl:["borderTopLeftRadius","borderBottomLeftRadius"]}}),borderX:oe.borders(["borderLeft","borderRight"]),borderInline:oe.borders("borderInline"),borderY:oe.borders(["borderTop","borderBottom"]),borderBlock:oe.borders("borderBlock"),borderTopWidth:oe.borderWidths("borderTopWidth"),borderBlockStartWidth:oe.borderWidths("borderBlockStartWidth"),borderTopColor:oe.colors("borderTopColor"),borderBlockStartColor:oe.colors("borderBlockStartColor"),borderTopStyle:oe.borderStyles("borderTopStyle"),borderBlockStartStyle:oe.borderStyles("borderBlockStartStyle"),borderBottomWidth:oe.borderWidths("borderBottomWidth"),borderBlockEndWidth:oe.borderWidths("borderBlockEndWidth"),borderBottomColor:oe.colors("borderBottomColor"),borderBlockEndColor:oe.colors("borderBlockEndColor"),borderBottomStyle:oe.borderStyles("borderBottomStyle"),borderBlockEndStyle:oe.borderStyles("borderBlockEndStyle"),borderLeftWidth:oe.borderWidths("borderLeftWidth"),borderInlineStartWidth:oe.borderWidths("borderInlineStartWidth"),borderLeftColor:oe.colors("borderLeftColor"),borderInlineStartColor:oe.colors("borderInlineStartColor"),borderLeftStyle:oe.borderStyles("borderLeftStyle"),borderInlineStartStyle:oe.borderStyles("borderInlineStartStyle"),borderRightWidth:oe.borderWidths("borderRightWidth"),borderInlineEndWidth:oe.borderWidths("borderInlineEndWidth"),borderRightColor:oe.colors("borderRightColor"),borderInlineEndColor:oe.colors("borderInlineEndColor"),borderRightStyle:oe.borderStyles("borderRightStyle"),borderInlineEndStyle:oe.borderStyles("borderInlineEndStyle"),borderTopRadius:oe.radii(["borderTopLeftRadius","borderTopRightRadius"]),borderBottomRadius:oe.radii(["borderBottomLeftRadius","borderBottomRightRadius"]),borderLeftRadius:oe.radii(["borderTopLeftRadius","borderBottomLeftRadius"]),borderRightRadius:oe.radii(["borderTopRightRadius","borderBottomRightRadius"])};Object.assign(yn,{rounded:yn.borderRadius,roundedTop:yn.borderTopRadius,roundedTopLeft:yn.borderTopLeftRadius,roundedTopRight:yn.borderTopRightRadius,roundedTopStart:yn.borderStartStartRadius,roundedTopEnd:yn.borderStartEndRadius,roundedBottom:yn.borderBottomRadius,roundedBottomLeft:yn.borderBottomLeftRadius,roundedBottomRight:yn.borderBottomRightRadius,roundedBottomStart:yn.borderEndStartRadius,roundedBottomEnd:yn.borderEndEndRadius,roundedLeft:yn.borderLeftRadius,roundedRight:yn.borderRightRadius,roundedStart:yn.borderInlineStartRadius,roundedEnd:yn.borderInlineEndRadius,borderStart:yn.borderInlineStart,borderEnd:yn.borderInlineEnd,borderTopStartRadius:yn.borderStartStartRadius,borderTopEndRadius:yn.borderStartEndRadius,borderBottomStartRadius:yn.borderEndStartRadius,borderBottomEndRadius:yn.borderEndEndRadius,borderStartRadius:yn.borderInlineStartRadius,borderEndRadius:yn.borderInlineEndRadius,borderStartWidth:yn.borderInlineStartWidth,borderEndWidth:yn.borderInlineEndWidth,borderStartColor:yn.borderInlineStartColor,borderEndColor:yn.borderInlineEndColor,borderStartStyle:yn.borderInlineStartStyle,borderEndStyle:yn.borderInlineEndStyle});var Qne={color:oe.colors("color"),textColor:oe.colors("color"),fill:oe.colors("fill"),stroke:oe.colors("stroke")},d_={boxShadow:oe.shadows("boxShadow"),mixBlendMode:!0,blendMode:oe.prop("mixBlendMode"),backgroundBlendMode:!0,bgBlendMode:oe.prop("backgroundBlendMode"),opacity:!0};Object.assign(d_,{shadow:d_.boxShadow});var Jne={filter:{transform:ln.filter},blur:oe.blur("--chakra-blur"),brightness:oe.propT("--chakra-brightness",ln.brightness),contrast:oe.propT("--chakra-contrast",ln.contrast),hueRotate:oe.degreeT("--chakra-hue-rotate"),invert:oe.propT("--chakra-invert",ln.invert),saturate:oe.propT("--chakra-saturate",ln.saturate),dropShadow:oe.propT("--chakra-drop-shadow",ln.dropShadow),backdropFilter:{transform:ln.backdropFilter},backdropBlur:oe.blur("--chakra-backdrop-blur"),backdropBrightness:oe.propT("--chakra-backdrop-brightness",ln.brightness),backdropContrast:oe.propT("--chakra-backdrop-contrast",ln.contrast),backdropHueRotate:oe.degreeT("--chakra-backdrop-hue-rotate"),backdropInvert:oe.propT("--chakra-backdrop-invert",ln.invert),backdropSaturate:oe.propT("--chakra-backdrop-saturate",ln.saturate)},US={alignItems:!0,alignContent:!0,justifyItems:!0,justifyContent:!0,flexWrap:!0,flexDirection:{transform:ln.flexDirection},flex:!0,flexFlow:!0,flexGrow:!0,flexShrink:!0,flexBasis:oe.sizes("flexBasis"),justifySelf:!0,alignSelf:!0,order:!0,placeItems:!0,placeContent:!0,placeSelf:!0,gap:oe.space("gap"),rowGap:oe.space("rowGap"),columnGap:oe.space("columnGap")};Object.assign(US,{flexDir:US.flexDirection});var iF={gridGap:oe.space("gridGap"),gridColumnGap:oe.space("gridColumnGap"),gridRowGap:oe.space("gridRowGap"),gridColumn:!0,gridRow:!0,gridAutoFlow:!0,gridAutoColumns:!0,gridColumnStart:!0,gridColumnEnd:!0,gridRowStart:!0,gridRowEnd:!0,gridAutoRows:!0,gridTemplate:!0,gridTemplateColumns:!0,gridTemplateRows:!0,gridTemplateAreas:!0,gridArea:!0},ere={appearance:!0,cursor:!0,resize:!0,userSelect:!0,pointerEvents:!0,outline:{transform:ln.outline},outlineOffset:!0,outlineColor:oe.colors("outlineColor")},Ka={width:oe.sizesT("width"),inlineSize:oe.sizesT("inlineSize"),height:oe.sizes("height"),blockSize:oe.sizes("blockSize"),boxSize:oe.sizes(["width","height"]),minWidth:oe.sizes("minWidth"),minInlineSize:oe.sizes("minInlineSize"),minHeight:oe.sizes("minHeight"),minBlockSize:oe.sizes("minBlockSize"),maxWidth:oe.sizes("maxWidth"),maxInlineSize:oe.sizes("maxInlineSize"),maxHeight:oe.sizes("maxHeight"),maxBlockSize:oe.sizes("maxBlockSize"),overflow:!0,overflowX:!0,overflowY:!0,overscrollBehavior:!0,overscrollBehaviorX:!0,overscrollBehaviorY:!0,display:!0,hideFrom:{scale:"breakpoints",transform:(e,t)=>{var n,r,i;return{[(i=(r=(n=t.__breakpoints)==null?void 0:n.get(e))==null?void 0:r.minWQuery)!=null?i:`@media screen and (min-width: ${e})`]:{display:"none"}}}},hideBelow:{scale:"breakpoints",transform:(e,t)=>{var n,r,i;return{[(i=(r=(n=t.__breakpoints)==null?void 0:n.get(e))==null?void 0:r.maxWQuery)!=null?i:`@media screen and (max-width: ${e})`]:{display:"none"}}}},verticalAlign:!0,boxSizing:!0,boxDecorationBreak:!0,float:oe.propT("float",ln.float),objectFit:!0,objectPosition:!0,visibility:!0,isolation:!0};Object.assign(Ka,{w:Ka.width,h:Ka.height,minW:Ka.minWidth,maxW:Ka.maxWidth,minH:Ka.minHeight,maxH:Ka.maxHeight,overscroll:Ka.overscrollBehavior,overscrollX:Ka.overscrollBehaviorX,overscrollY:Ka.overscrollBehaviorY});var tre={listStyleType:!0,listStylePosition:!0,listStylePos:oe.prop("listStylePosition"),listStyleImage:!0,listStyleImg:oe.prop("listStyleImage")};function nre(e,t,n,r){const i=typeof t=="string"?t.split("."):[t];for(r=0;r{const t=new WeakMap;return(r,i,o,a)=>{if(typeof r>"u")return e(r,i,o);t.has(r)||t.set(r,new Map);const s=t.get(r);if(s.has(i))return s.get(i);const l=e(r,i,o,a);return s.set(i,l),l}},ire=rre(nre),ore={border:"0px",clip:"rect(0, 0, 0, 0)",width:"1px",height:"1px",margin:"-1px",padding:"0px",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"},are={position:"static",width:"auto",height:"auto",clip:"auto",padding:"0",margin:"0",overflow:"visible",whiteSpace:"normal"},R5=(e,t,n)=>{const r={},i=ire(e,t,{});for(const o in i)o in n&&n[o]!=null||(r[o]=i[o]);return r},sre={srOnly:{transform(e){return e===!0?ore:e==="focusable"?are:{}}},layerStyle:{processResult:!0,transform:(e,t,n)=>R5(t,`layerStyles.${e}`,n)},textStyle:{processResult:!0,transform:(e,t,n)=>R5(t,`textStyles.${e}`,n)},apply:{processResult:!0,transform:(e,t,n)=>R5(t,e,n)}},O1={position:!0,pos:oe.prop("position"),zIndex:oe.prop("zIndex","zIndices"),inset:oe.spaceT("inset"),insetX:oe.spaceT(["left","right"]),insetInline:oe.spaceT("insetInline"),insetY:oe.spaceT(["top","bottom"]),insetBlock:oe.spaceT("insetBlock"),top:oe.spaceT("top"),insetBlockStart:oe.spaceT("insetBlockStart"),bottom:oe.spaceT("bottom"),insetBlockEnd:oe.spaceT("insetBlockEnd"),left:oe.spaceT("left"),insetInlineStart:oe.logical({scale:"space",property:{ltr:"left",rtl:"right"}}),right:oe.spaceT("right"),insetInlineEnd:oe.logical({scale:"space",property:{ltr:"right",rtl:"left"}})};Object.assign(O1,{insetStart:O1.insetInlineStart,insetEnd:O1.insetInlineEnd});var lre={ring:{transform:ln.ring},ringColor:oe.colors("--chakra-ring-color"),ringOffset:oe.prop("--chakra-ring-offset-width"),ringOffsetColor:oe.colors("--chakra-ring-offset-color"),ringInset:oe.prop("--chakra-ring-inset")},or={margin:oe.spaceT("margin"),marginTop:oe.spaceT("marginTop"),marginBlockStart:oe.spaceT("marginBlockStart"),marginRight:oe.spaceT("marginRight"),marginInlineEnd:oe.spaceT("marginInlineEnd"),marginBottom:oe.spaceT("marginBottom"),marginBlockEnd:oe.spaceT("marginBlockEnd"),marginLeft:oe.spaceT("marginLeft"),marginInlineStart:oe.spaceT("marginInlineStart"),marginX:oe.spaceT(["marginInlineStart","marginInlineEnd"]),marginInline:oe.spaceT("marginInline"),marginY:oe.spaceT(["marginTop","marginBottom"]),marginBlock:oe.spaceT("marginBlock"),padding:oe.space("padding"),paddingTop:oe.space("paddingTop"),paddingBlockStart:oe.space("paddingBlockStart"),paddingRight:oe.space("paddingRight"),paddingBottom:oe.space("paddingBottom"),paddingBlockEnd:oe.space("paddingBlockEnd"),paddingLeft:oe.space("paddingLeft"),paddingInlineStart:oe.space("paddingInlineStart"),paddingInlineEnd:oe.space("paddingInlineEnd"),paddingX:oe.space(["paddingInlineStart","paddingInlineEnd"]),paddingInline:oe.space("paddingInline"),paddingY:oe.space(["paddingTop","paddingBottom"]),paddingBlock:oe.space("paddingBlock")};Object.assign(or,{m:or.margin,mt:or.marginTop,mr:or.marginRight,me:or.marginInlineEnd,marginEnd:or.marginInlineEnd,mb:or.marginBottom,ml:or.marginLeft,ms:or.marginInlineStart,marginStart:or.marginInlineStart,mx:or.marginX,my:or.marginY,p:or.padding,pt:or.paddingTop,py:or.paddingY,px:or.paddingX,pb:or.paddingBottom,pl:or.paddingLeft,ps:or.paddingInlineStart,paddingStart:or.paddingInlineStart,pr:or.paddingRight,pe:or.paddingInlineEnd,paddingEnd:or.paddingInlineEnd});var ure={textDecorationColor:oe.colors("textDecorationColor"),textDecoration:!0,textDecor:{property:"textDecoration"},textDecorationLine:!0,textDecorationStyle:!0,textDecorationThickness:!0,textUnderlineOffset:!0,textShadow:oe.shadows("textShadow")},cre={clipPath:!0,transform:oe.propT("transform",ln.transform),transformOrigin:!0,translateX:oe.spaceT("--chakra-translate-x"),translateY:oe.spaceT("--chakra-translate-y"),skewX:oe.degreeT("--chakra-skew-x"),skewY:oe.degreeT("--chakra-skew-y"),scaleX:oe.prop("--chakra-scale-x"),scaleY:oe.prop("--chakra-scale-y"),scale:oe.prop(["--chakra-scale-x","--chakra-scale-y"]),rotate:oe.degreeT("--chakra-rotate")},dre={transition:!0,transitionDelay:!0,animation:!0,willChange:!0,transitionDuration:oe.prop("transitionDuration","transition.duration"),transitionProperty:oe.prop("transitionProperty","transition.property"),transitionTimingFunction:oe.prop("transitionTimingFunction","transition.easing")},fre={fontFamily:oe.prop("fontFamily","fonts"),fontSize:oe.prop("fontSize","fontSizes",ln.px),fontWeight:oe.prop("fontWeight","fontWeights"),lineHeight:oe.prop("lineHeight","lineHeights"),letterSpacing:oe.prop("letterSpacing","letterSpacings"),textAlign:!0,fontStyle:!0,textIndent:!0,wordBreak:!0,overflowWrap:!0,textOverflow:!0,textTransform:!0,whiteSpace:!0,isTruncated:{transform(e){if(e===!0)return{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}},noOfLines:{static:{overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitBoxOrient:"vertical",WebkitLineClamp:"var(--chakra-line-clamp)"},property:"--chakra-line-clamp"}},hre={scrollBehavior:!0,scrollSnapAlign:!0,scrollSnapStop:!0,scrollSnapType:!0,scrollMargin:oe.spaceT("scrollMargin"),scrollMarginTop:oe.spaceT("scrollMarginTop"),scrollMarginBottom:oe.spaceT("scrollMarginBottom"),scrollMarginLeft:oe.spaceT("scrollMarginLeft"),scrollMarginRight:oe.spaceT("scrollMarginRight"),scrollMarginX:oe.spaceT(["scrollMarginLeft","scrollMarginRight"]),scrollMarginY:oe.spaceT(["scrollMarginTop","scrollMarginBottom"]),scrollPadding:oe.spaceT("scrollPadding"),scrollPaddingTop:oe.spaceT("scrollPaddingTop"),scrollPaddingBottom:oe.spaceT("scrollPaddingBottom"),scrollPaddingLeft:oe.spaceT("scrollPaddingLeft"),scrollPaddingRight:oe.spaceT("scrollPaddingRight"),scrollPaddingX:oe.spaceT(["scrollPaddingLeft","scrollPaddingRight"]),scrollPaddingY:oe.spaceT(["scrollPaddingTop","scrollPaddingBottom"])};function oF(e){return ko(e)&&e.reference?e.reference:String(e)}var ww=(e,...t)=>t.map(oF).join(` ${e} `).replace(/calc/g,""),BM=(...e)=>`calc(${ww("+",...e)})`,zM=(...e)=>`calc(${ww("-",...e)})`,f_=(...e)=>`calc(${ww("*",...e)})`,HM=(...e)=>`calc(${ww("/",...e)})`,WM=e=>{const t=oF(e);return t!=null&&!Number.isNaN(parseFloat(t))?String(t).startsWith("-")?String(t).slice(1):`-${t}`:f_(t,-1)},bh=Object.assign(e=>({add:(...t)=>bh(BM(e,...t)),subtract:(...t)=>bh(zM(e,...t)),multiply:(...t)=>bh(f_(e,...t)),divide:(...t)=>bh(HM(e,...t)),negate:()=>bh(WM(e)),toString:()=>e.toString()}),{add:BM,subtract:zM,multiply:f_,divide:HM,negate:WM});function pre(e,t="-"){return e.replace(/\s+/g,t)}function gre(e){const t=pre(e.toString());return vre(mre(t))}function mre(e){return e.includes("\\.")?e:!Number.isInteger(parseFloat(e.toString()))?e.replace(".","\\."):e}function vre(e){return e.replace(/[!-,/:-@[-^`{-~]/g,"\\$&")}function yre(e,t=""){return[t,e].filter(Boolean).join("-")}function bre(e,t){return`var(${e}${t?`, ${t}`:""})`}function xre(e,t=""){return gre(`--${yre(e,t)}`)}function gn(e,t,n){const r=xre(e,n);return{variable:r,reference:bre(r,t)}}function Sre(e){const t=e==null?0:e.length;return t?e[t-1]:void 0}function wre(e){const t=parseFloat(e.toString()),n=e.toString().replace(String(t),"");return{unitless:!n,value:t,unit:n}}function h_(e){if(e==null)return e;const{unitless:t}=wre(e);return t||typeof e=="number"?`${e}px`:e}var aF=(e,t)=>parseInt(e[1],10)>parseInt(t[1],10)?1:-1,E9=e=>Object.fromEntries(Object.entries(e).sort(aF));function UM(e){const t=E9(e);return Object.assign(Object.values(t),t)}function Cre(e){const t=Object.keys(E9(e));return new Set(t)}function VM(e){var t;if(!e)return e;e=(t=h_(e))!=null?t:e;const n=-.02;return typeof e=="number"?`${e+n}`:e.replace(/(\d+\.?\d*)/u,r=>`${parseFloat(r)+n}`)}function l1(e,t){const n=["@media screen"];return e&&n.push("and",`(min-width: ${h_(e)})`),t&&n.push("and",`(max-width: ${h_(t)})`),n.join(" ")}function _re(e){var t;if(!e)return null;e.base=(t=e.base)!=null?t:"0px";const n=UM(e),r=Object.entries(e).sort(aF).map(([a,s],l,u)=>{var d;let[,p]=(d=u[l+1])!=null?d:[];return p=parseFloat(p)>0?VM(p):void 0,{_minW:VM(s),breakpoint:a,minW:s,maxW:p,maxWQuery:l1(null,p),minWQuery:l1(s),minMaxQuery:l1(s,p)}}),i=Cre(e),o=Array.from(i.values());return{keys:i,normalized:n,isResponsive(a){const s=Object.keys(a);return s.length>0&&s.every(l=>i.has(l))},asObject:E9(e),asArray:UM(e),details:r,get(a){return r.find(s=>s.breakpoint===a)},media:[null,...n.map(a=>l1(a)).slice(1)],toArrayValue(a){if(!ko(a))throw new Error("toArrayValue: value must be an object");const s=o.map(l=>{var u;return(u=a[l])!=null?u:null});for(;Sre(s)===null;)s.pop();return s},toObjectValue(a){if(!Array.isArray(a))throw new Error("toObjectValue: value must be an array");return a.reduce((s,l,u)=>{const d=o[u];return d!=null&&l!=null&&(s[d]=l),s},{})}}}var zi={hover:(e,t)=>`${e}:hover ${t}, ${e}[data-hover] ${t}`,focus:(e,t)=>`${e}:focus ${t}, ${e}[data-focus] ${t}`,focusVisible:(e,t)=>`${e}:focus-visible ${t}`,focusWithin:(e,t)=>`${e}:focus-within ${t}`,active:(e,t)=>`${e}:active ${t}, ${e}[data-active] ${t}`,disabled:(e,t)=>`${e}:disabled ${t}, ${e}[data-disabled] ${t}`,invalid:(e,t)=>`${e}:invalid ${t}, ${e}[data-invalid] ${t}`,checked:(e,t)=>`${e}:checked ${t}, ${e}[data-checked] ${t}`,indeterminate:(e,t)=>`${e}:indeterminate ${t}, ${e}[aria-checked=mixed] ${t}, ${e}[data-indeterminate] ${t}`,readOnly:(e,t)=>`${e}:read-only ${t}, ${e}[readonly] ${t}, ${e}[data-read-only] ${t}`,expanded:(e,t)=>`${e}:read-only ${t}, ${e}[aria-expanded=true] ${t}, ${e}[data-expanded] ${t}`,placeholderShown:(e,t)=>`${e}:placeholder-shown ${t}`},ad=e=>sF(t=>e(t,"&"),"[role=group]","[data-group]",".group"),Au=e=>sF(t=>e(t,"~ &"),"[data-peer]",".peer"),sF=(e,...t)=>t.map(e).join(", "),Cw={_hover:"&:hover, &[data-hover]",_active:"&:active, &[data-active]",_focus:"&:focus, &[data-focus]",_highlighted:"&[data-highlighted]",_focusWithin:"&:focus-within",_focusVisible:"&:focus-visible, &[data-focus-visible]",_disabled:"&:disabled, &[disabled], &[aria-disabled=true], &[data-disabled]",_readOnly:"&[aria-readonly=true], &[readonly], &[data-readonly]",_before:"&::before",_after:"&::after",_empty:"&:empty",_expanded:"&[aria-expanded=true], &[data-expanded]",_checked:"&[aria-checked=true], &[data-checked]",_grabbed:"&[aria-grabbed=true], &[data-grabbed]",_pressed:"&[aria-pressed=true], &[data-pressed]",_invalid:"&[aria-invalid=true], &[data-invalid]",_valid:"&[data-valid], &[data-state=valid]",_loading:"&[data-loading], &[aria-busy=true]",_selected:"&[aria-selected=true], &[data-selected]",_hidden:"&[hidden], &[data-hidden]",_autofill:"&:-webkit-autofill",_even:"&:nth-of-type(even)",_odd:"&:nth-of-type(odd)",_first:"&:first-of-type",_last:"&:last-of-type",_notFirst:"&:not(:first-of-type)",_notLast:"&:not(:last-of-type)",_visited:"&:visited",_activeLink:"&[aria-current=page]",_activeStep:"&[aria-current=step]",_indeterminate:"&:indeterminate, &[aria-checked=mixed], &[data-indeterminate]",_groupHover:ad(zi.hover),_peerHover:Au(zi.hover),_groupFocus:ad(zi.focus),_peerFocus:Au(zi.focus),_groupFocusVisible:ad(zi.focusVisible),_peerFocusVisible:Au(zi.focusVisible),_groupActive:ad(zi.active),_peerActive:Au(zi.active),_groupDisabled:ad(zi.disabled),_peerDisabled:Au(zi.disabled),_groupInvalid:ad(zi.invalid),_peerInvalid:Au(zi.invalid),_groupChecked:ad(zi.checked),_peerChecked:Au(zi.checked),_groupFocusWithin:ad(zi.focusWithin),_peerFocusWithin:Au(zi.focusWithin),_peerPlaceholderShown:Au(zi.placeholderShown),_placeholder:"&::placeholder",_placeholderShown:"&:placeholder-shown",_fullScreen:"&:fullscreen",_selection:"&::selection",_rtl:"[dir=rtl] &, &[dir=rtl]",_ltr:"[dir=ltr] &, &[dir=ltr]",_mediaDark:"@media (prefers-color-scheme: dark)",_mediaReduceMotion:"@media (prefers-reduced-motion: reduce)",_dark:".chakra-ui-dark &:not([data-theme]),[data-theme=dark] &:not([data-theme]),&[data-theme=dark]",_light:".chakra-ui-light &:not([data-theme]),[data-theme=light] &:not([data-theme]),&[data-theme=light]"},kre=Object.keys(Cw);function GM(e,t){return gn(String(e).replace(/\./g,"-"),void 0,t)}function Ere(e,t){let n={};const r={};for(const[i,o]of Object.entries(e)){const{isSemantic:a,value:s}=o,{variable:l,reference:u}=GM(i,t==null?void 0:t.cssVarPrefix);if(!a){if(i.startsWith("space")){const m=i.split("."),[y,...b]=m,w=`${y}.-${b.join(".")}`,E=bh.negate(s),_=bh.negate(u);r[w]={value:E,var:l,varRef:_}}n[l]=s,r[i]={value:s,var:l,varRef:u};continue}const d=m=>{const b=[String(i).split(".")[0],m].join(".");if(!e[b])return m;const{reference:E}=GM(b,t==null?void 0:t.cssVarPrefix);return E},p=ko(s)?s:{default:s};n=Bl(n,Object.entries(p).reduce((m,[y,b])=>{var w,E;const _=d(b);if(y==="default")return m[l]=_,m;const k=(E=(w=Cw)==null?void 0:w[y])!=null?E:y;return m[k]={[l]:_},m},{})),r[i]={value:u,var:l,varRef:u}}return{cssVars:n,cssMap:r}}function Pre(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function Tre(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}var Mre=["colors","borders","borderWidths","borderStyles","fonts","fontSizes","fontWeights","letterSpacings","lineHeights","radii","space","shadows","sizes","zIndices","transition","blur","breakpoints"];function Lre(e){return Tre(e,Mre)}function Are(e){return e.semanticTokens}function Ore(e){const{__cssMap:t,__cssVars:n,__breakpoints:r,...i}=e;return i}function Rre({tokens:e,semanticTokens:t}){var n,r;const i=Object.entries((n=p_(e))!=null?n:{}).map(([a,s])=>[a,{isSemantic:!1,value:s}]),o=Object.entries((r=p_(t,1))!=null?r:{}).map(([a,s])=>[a,{isSemantic:!0,value:s}]);return Object.fromEntries([...i,...o])}function p_(e,t=1/0){return!ko(e)&&!Array.isArray(e)||!t?e:Object.entries(e).reduce((n,[r,i])=>(ko(i)||Array.isArray(i)?Object.entries(p_(i,t-1)).forEach(([o,a])=>{n[`${r}.${o}`]=a}):n[r]=i,n),{})}function Ire(e){var t;const n=Ore(e),r=Lre(n),i=Are(n),o=Rre({tokens:r,semanticTokens:i}),a=(t=n.config)==null?void 0:t.cssVarPrefix,{cssMap:s,cssVars:l}=Ere(o,{cssVarPrefix:a});return Object.assign(n,{__cssVars:{...{"--chakra-ring-inset":"var(--chakra-empty,/*!*/ /*!*/)","--chakra-ring-offset-width":"0px","--chakra-ring-offset-color":"#fff","--chakra-ring-color":"rgba(66, 153, 225, 0.6)","--chakra-ring-offset-shadow":"0 0 #0000","--chakra-ring-shadow":"0 0 #0000","--chakra-space-x-reverse":"0","--chakra-space-y-reverse":"0"},...l},__cssMap:s,__breakpoints:_re(n.breakpoints)}),n}var P9=Bl({},Ux,yn,Qne,US,Ka,Jne,lre,ere,iF,sre,O1,d_,or,hre,fre,ure,cre,tre,dre),Dre=Object.assign({},or,Ka,US,iF,O1),lF=Object.keys(Dre),jre=[...Object.keys(P9),...kre],Nre={...P9,...Cw},$re=e=>e in Nre,Fre=e=>t=>{if(!t.__breakpoints)return e;const{isResponsive:n,toArrayValue:r,media:i}=t.__breakpoints,o={};for(const a in e){let s=ts(e[a],t);if(s==null)continue;if(s=ko(s)&&n(s)?r(s):s,!Array.isArray(s)){o[a]=s;continue}const l=s.slice(0,i.length).length;for(let u=0;ue.startsWith("--")&&typeof t=="string"&&!zre(t),Wre=(e,t)=>{var n,r;if(t==null)return t;const i=l=>{var u,d;return(d=(u=e.__cssMap)==null?void 0:u[l])==null?void 0:d.varRef},o=l=>{var u;return(u=i(l))!=null?u:l},[a,s]=Bre(t);return t=(r=(n=i(a))!=null?n:o(s))!=null?r:o(t),t};function Ure(e){const{configs:t={},pseudos:n={},theme:r}=e,i=(o,a=!1)=>{var s,l,u;const d=ts(o,r),p=Fre(d)(r);let m={};for(let y in p){const b=p[y];let w=ts(b,r);y in n&&(y=n[y]),Hre(y,w)&&(w=Wre(r,w));let E=t[y];if(E===!0&&(E={property:y}),ko(w)){m[y]=(s=m[y])!=null?s:{},m[y]=Bl({},m[y],i(w,!0));continue}let _=(u=(l=E==null?void 0:E.transform)==null?void 0:l.call(E,w,r,d))!=null?u:w;_=E!=null&&E.processResult?i(_,!0):_;const k=ts(E==null?void 0:E.property,r);if(!a&&(E!=null&&E.static)){const T=ts(E.static,r);m=Bl({},m,T)}if(k&&Array.isArray(k)){for(const T of k)m[T]=_;continue}if(k){k==="&"&&ko(_)?m=Bl({},m,_):m[k]=_;continue}if(ko(_)){m=Bl({},m,_);continue}m[y]=_}return m};return i}var uF=e=>t=>Ure({theme:t,pseudos:Cw,configs:P9})(e);function dr(e){return{definePartsStyle(t){return t},defineMultiStyleConfig(t){return{parts:e,...t}}}}function Vre(e,t){if(Array.isArray(e))return e;if(ko(e))return t(e);if(e!=null)return[e]}function Gre(e,t){for(let n=t+1;n{Bl(u,{[T]:m?k[T]:{[_]:k[T]}})});continue}if(!y){m?Bl(u,k):u[_]=k;continue}u[_]=k}}return u}}function Kre(e){return t=>{var n;const{variant:r,size:i,theme:o}=t,a=qre(o);return Bl({},ts((n=e.baseStyle)!=null?n:{},t),a(e,"sizes",i,t),a(e,"variants",r,t))}}function Yre(e,t,n){var r,i,o;return(o=(i=(r=e.__cssMap)==null?void 0:r[`${t}.${n}`])==null?void 0:i.varRef)!=null?o:n}function fr(e){return Pre(e,["styleConfig","size","variant","colorScheme"])}var Xre={hide:-1,auto:"auto",base:0,docked:10,dropdown:1e3,sticky:1100,banner:1200,overlay:1300,modal:1400,popover:1500,skipLink:1600,toast:1700,tooltip:1800},Zre=Xre,Qre={base:"0em",sm:"30em",md:"48em",lg:"62em",xl:"80em","2xl":"96em"},Jre=Qre,eie={transparent:"transparent",current:"currentColor",black:"#000000",white:"#FFFFFF",whiteAlpha:{50:"rgba(255, 255, 255, 0.04)",100:"rgba(255, 255, 255, 0.06)",200:"rgba(255, 255, 255, 0.08)",300:"rgba(255, 255, 255, 0.16)",400:"rgba(255, 255, 255, 0.24)",500:"rgba(255, 255, 255, 0.36)",600:"rgba(255, 255, 255, 0.48)",700:"rgba(255, 255, 255, 0.64)",800:"rgba(255, 255, 255, 0.80)",900:"rgba(255, 255, 255, 0.92)"},blackAlpha:{50:"rgba(0, 0, 0, 0.04)",100:"rgba(0, 0, 0, 0.06)",200:"rgba(0, 0, 0, 0.08)",300:"rgba(0, 0, 0, 0.16)",400:"rgba(0, 0, 0, 0.24)",500:"rgba(0, 0, 0, 0.36)",600:"rgba(0, 0, 0, 0.48)",700:"rgba(0, 0, 0, 0.64)",800:"rgba(0, 0, 0, 0.80)",900:"rgba(0, 0, 0, 0.92)"},gray:{50:"#F7FAFC",100:"#EDF2F7",200:"#E2E8F0",300:"#CBD5E0",400:"#A0AEC0",500:"#718096",600:"#4A5568",700:"#2D3748",800:"#1A202C",900:"#171923"},red:{50:"#FFF5F5",100:"#FED7D7",200:"#FEB2B2",300:"#FC8181",400:"#F56565",500:"#E53E3E",600:"#C53030",700:"#9B2C2C",800:"#822727",900:"#63171B"},orange:{50:"#FFFAF0",100:"#FEEBC8",200:"#FBD38D",300:"#F6AD55",400:"#ED8936",500:"#DD6B20",600:"#C05621",700:"#9C4221",800:"#7B341E",900:"#652B19"},yellow:{50:"#FFFFF0",100:"#FEFCBF",200:"#FAF089",300:"#F6E05E",400:"#ECC94B",500:"#D69E2E",600:"#B7791F",700:"#975A16",800:"#744210",900:"#5F370E"},green:{50:"#F0FFF4",100:"#C6F6D5",200:"#9AE6B4",300:"#68D391",400:"#48BB78",500:"#38A169",600:"#2F855A",700:"#276749",800:"#22543D",900:"#1C4532"},teal:{50:"#E6FFFA",100:"#B2F5EA",200:"#81E6D9",300:"#4FD1C5",400:"#38B2AC",500:"#319795",600:"#2C7A7B",700:"#285E61",800:"#234E52",900:"#1D4044"},blue:{50:"#ebf8ff",100:"#bee3f8",200:"#90cdf4",300:"#63b3ed",400:"#4299e1",500:"#3182ce",600:"#2b6cb0",700:"#2c5282",800:"#2a4365",900:"#1A365D"},cyan:{50:"#EDFDFD",100:"#C4F1F9",200:"#9DECF9",300:"#76E4F7",400:"#0BC5EA",500:"#00B5D8",600:"#00A3C4",700:"#0987A0",800:"#086F83",900:"#065666"},purple:{50:"#FAF5FF",100:"#E9D8FD",200:"#D6BCFA",300:"#B794F4",400:"#9F7AEA",500:"#805AD5",600:"#6B46C1",700:"#553C9A",800:"#44337A",900:"#322659"},pink:{50:"#FFF5F7",100:"#FED7E2",200:"#FBB6CE",300:"#F687B3",400:"#ED64A6",500:"#D53F8C",600:"#B83280",700:"#97266D",800:"#702459",900:"#521B41"},linkedin:{50:"#E8F4F9",100:"#CFEDFB",200:"#9BDAF3",300:"#68C7EC",400:"#34B3E4",500:"#00A0DC",600:"#008CC9",700:"#0077B5",800:"#005E93",900:"#004471"},facebook:{50:"#E8F4F9",100:"#D9DEE9",200:"#B7C2DA",300:"#6482C0",400:"#4267B2",500:"#385898",600:"#314E89",700:"#29487D",800:"#223B67",900:"#1E355B"},messenger:{50:"#D0E6FF",100:"#B9DAFF",200:"#A2CDFF",300:"#7AB8FF",400:"#2E90FF",500:"#0078FF",600:"#0063D1",700:"#0052AC",800:"#003C7E",900:"#002C5C"},whatsapp:{50:"#dffeec",100:"#b9f5d0",200:"#90edb3",300:"#65e495",400:"#3cdd78",500:"#22c35e",600:"#179848",700:"#0c6c33",800:"#01421c",900:"#001803"},twitter:{50:"#E5F4FD",100:"#C8E9FB",200:"#A8DCFA",300:"#83CDF7",400:"#57BBF5",500:"#1DA1F2",600:"#1A94DA",700:"#1681BF",800:"#136B9E",900:"#0D4D71"},telegram:{50:"#E3F2F9",100:"#C5E4F3",200:"#A2D4EC",300:"#7AC1E4",400:"#47A9DA",500:"#0088CC",600:"#007AB8",700:"#006BA1",800:"#005885",900:"#003F5E"}},tie=eie,nie={none:"0",sm:"0.125rem",base:"0.25rem",md:"0.375rem",lg:"0.5rem",xl:"0.75rem","2xl":"1rem","3xl":"1.5rem",full:"9999px"},rie=nie,iie={xs:"0 0 0 1px rgba(0, 0, 0, 0.05)",sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",base:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)",xl:"0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)","2xl":"0 25px 50px -12px rgba(0, 0, 0, 0.25)",outline:"0 0 0 3px rgba(66, 153, 225, 0.6)",inner:"inset 0 2px 4px 0 rgba(0,0,0,0.06)",none:"none","dark-lg":"rgba(0, 0, 0, 0.1) 0px 0px 0px 1px, rgba(0, 0, 0, 0.2) 0px 5px 10px, rgba(0, 0, 0, 0.4) 0px 15px 40px"},oie=iie,aie={common:"background-color, border-color, color, fill, stroke, opacity, box-shadow, transform",colors:"background-color, border-color, color, fill, stroke",dimensions:"width, height",position:"left, right, top, bottom",background:"background-color, background-image, background-position"},sie={"ease-in":"cubic-bezier(0.4, 0, 1, 1)","ease-out":"cubic-bezier(0, 0, 0.2, 1)","ease-in-out":"cubic-bezier(0.4, 0, 0.2, 1)"},lie={"ultra-fast":"50ms",faster:"100ms",fast:"150ms",normal:"200ms",slow:"300ms",slower:"400ms","ultra-slow":"500ms"},uie={property:aie,easing:sie,duration:lie},cie=uie,die={none:0,sm:"4px",base:"8px",md:"12px",lg:"16px",xl:"24px","2xl":"40px","3xl":"64px"},fie=die,hie={none:0,"1px":"1px solid","2px":"2px solid","4px":"4px solid","8px":"8px solid"},pie=hie,gie={letterSpacings:{tighter:"-0.05em",tight:"-0.025em",normal:"0",wide:"0.025em",wider:"0.05em",widest:"0.1em"},lineHeights:{normal:"normal",none:1,shorter:1.25,short:1.375,base:1.5,tall:1.625,taller:"2",3:".75rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem"},fontWeights:{hairline:100,thin:200,light:300,normal:400,medium:500,semibold:600,bold:700,extrabold:800,black:900},fonts:{heading:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',body:'-apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"',mono:'SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace'},fontSizes:{"3xs":"0.45rem","2xs":"0.625rem",xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem","2xl":"1.5rem","3xl":"1.875rem","4xl":"2.25rem","5xl":"3rem","6xl":"3.75rem","7xl":"4.5rem","8xl":"6rem","9xl":"8rem"}},cF=gie,dF={px:"1px",.5:"0.125rem",1:"0.25rem",1.5:"0.375rem",2:"0.5rem",2.5:"0.625rem",3:"0.75rem",3.5:"0.875rem",4:"1rem",5:"1.25rem",6:"1.5rem",7:"1.75rem",8:"2rem",9:"2.25rem",10:"2.5rem",12:"3rem",14:"3.5rem",16:"4rem",20:"5rem",24:"6rem",28:"7rem",32:"8rem",36:"9rem",40:"10rem",44:"11rem",48:"12rem",52:"13rem",56:"14rem",60:"15rem",64:"16rem",72:"18rem",80:"20rem",96:"24rem"},mie={max:"max-content",min:"min-content",full:"100%","3xs":"14rem","2xs":"16rem",xs:"20rem",sm:"24rem",md:"28rem",lg:"32rem",xl:"36rem","2xl":"42rem","3xl":"48rem","4xl":"56rem","5xl":"64rem","6xl":"72rem","7xl":"80rem","8xl":"90rem",prose:"60ch"},vie={sm:"640px",md:"768px",lg:"1024px",xl:"1280px"},yie={...dF,...mie,container:vie},fF=yie,bie={breakpoints:Jre,zIndices:Zre,radii:rie,blur:fie,colors:tie,...cF,sizes:fF,shadows:oie,space:dF,borders:pie,transition:cie};function En(e,t={}){let n=!1;function r(){if(!n){n=!0;return}throw new Error("[anatomy] .part(...) should only be called once. Did you mean to use .extend(...) ?")}function i(...d){r();for(const p of d)t[p]=l(p);return En(e,t)}function o(...d){for(const p of d)p in t||(t[p]=l(p));return En(e,t)}function a(){return Object.fromEntries(Object.entries(t).map(([p,m])=>[p,m.selector]))}function s(){return Object.fromEntries(Object.entries(t).map(([p,m])=>[p,m.className]))}function l(d){const y=`chakra-${(["container","root"].includes(d??"")?[e]:[e,d]).filter(Boolean).join("__")}`;return{className:y,selector:`.${y}`,toString:()=>d}}return{parts:i,toPart:l,extend:o,selectors:a,classnames:s,get keys(){return Object.keys(t)},__type:{}}}var xie=En("accordion").parts("root","container","button","panel").extend("icon"),Sie=En("alert").parts("title","description","container").extend("icon","spinner"),wie=En("avatar").parts("label","badge","container").extend("excessLabel","group"),Cie=En("breadcrumb").parts("link","item","container").extend("separator");En("button").parts();var _ie=En("checkbox").parts("control","icon","container").extend("label");En("progress").parts("track","filledTrack").extend("label");var kie=En("drawer").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),Eie=En("editable").parts("preview","input","textarea"),Pie=En("form").parts("container","requiredIndicator","helperText"),Tie=En("formError").parts("text","icon"),Mie=En("input").parts("addon","field","element"),Lie=En("list").parts("container","item","icon"),Aie=En("menu").parts("button","list","item").extend("groupTitle","command","divider"),Oie=En("modal").parts("overlay","dialogContainer","dialog").extend("header","closeButton","body","footer"),Rie=En("numberinput").parts("root","field","stepperGroup","stepper");En("pininput").parts("field");var Iie=En("popover").parts("content","header","body","footer").extend("popper","arrow","closeButton"),Die=En("progress").parts("label","filledTrack","track"),jie=En("radio").parts("container","control","label"),Nie=En("select").parts("field","icon"),$ie=En("slider").parts("container","track","thumb","filledTrack","mark"),Fie=En("stat").parts("container","label","helpText","number","icon"),Bie=En("switch").parts("container","track","thumb"),zie=En("table").parts("table","thead","tbody","tr","th","td","tfoot","caption"),Hie=En("tabs").parts("root","tab","tablist","tabpanel","tabpanels","indicator"),Wie=En("tag").parts("container","label","closeButton"),Uie=En("card").parts("container","header","body","footer");function kh(e,t,n){return Math.min(Math.max(e,n),t)}class Vie extends Error{constructor(t){super(`Failed to parse color: "${t}"`)}}var u1=Vie;function T9(e){if(typeof e!="string")throw new u1(e);if(e.trim().toLowerCase()==="transparent")return[0,0,0,0];let t=e.trim();t=Jie.test(e)?Kie(e):e;const n=Yie.exec(t);if(n){const a=Array.from(n).slice(1);return[...a.slice(0,3).map(s=>parseInt(xy(s,2),16)),parseInt(xy(a[3]||"f",2),16)/255]}const r=Xie.exec(t);if(r){const a=Array.from(r).slice(1);return[...a.slice(0,3).map(s=>parseInt(s,16)),parseInt(a[3]||"ff",16)/255]}const i=Zie.exec(t);if(i){const a=Array.from(i).slice(1);return[...a.slice(0,3).map(s=>parseInt(s,10)),parseFloat(a[3]||"1")]}const o=Qie.exec(t);if(o){const[a,s,l,u]=Array.from(o).slice(1).map(parseFloat);if(kh(0,100,s)!==s)throw new u1(e);if(kh(0,100,l)!==l)throw new u1(e);return[...eoe(a,s,l),Number.isNaN(u)?1:u]}throw new u1(e)}function Gie(e){let t=5381,n=e.length;for(;n;)t=t*33^e.charCodeAt(--n);return(t>>>0)%2341}const qM=e=>parseInt(e.replace(/_/g,""),36),qie="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((e,t)=>{const n=qM(t.substring(0,3)),r=qM(t.substring(3)).toString(16);let i="";for(let o=0;o<6-r.length;o++)i+="0";return e[n]=`${i}${r}`,e},{});function Kie(e){const t=e.toLowerCase().trim(),n=qie[Gie(t)];if(!n)throw new u1(e);return`#${n}`}const xy=(e,t)=>Array.from(Array(t)).map(()=>e).join(""),Yie=new RegExp(`^#${xy("([a-f0-9])",3)}([a-f0-9])?$`,"i"),Xie=new RegExp(`^#${xy("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),Zie=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${xy(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),Qie=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,Jie=/^[a-z]+$/i,KM=e=>Math.round(e*255),eoe=(e,t,n)=>{let r=n/100;if(t===0)return[r,r,r].map(KM);const i=(e%360+360)%360/60,o=(1-Math.abs(2*r-1))*(t/100),a=o*(1-Math.abs(i%2-1));let s=0,l=0,u=0;i>=0&&i<1?(s=o,l=a):i>=1&&i<2?(s=a,l=o):i>=2&&i<3?(l=o,u=a):i>=3&&i<4?(l=a,u=o):i>=4&&i<5?(s=a,u=o):i>=5&&i<6&&(s=o,u=a);const d=r-o/2,p=s+d,m=l+d,y=u+d;return[p,m,y].map(KM)};function toe(e,t,n,r){return`rgba(${kh(0,255,e).toFixed()}, ${kh(0,255,t).toFixed()}, ${kh(0,255,n).toFixed()}, ${parseFloat(kh(0,1,r).toFixed(3))})`}function noe(e,t){const[n,r,i,o]=T9(e);return toe(n,r,i,o-t)}function roe(e){const[t,n,r,i]=T9(e);let o=a=>{const s=kh(0,255,a).toString(16);return s.length===1?`0${s}`:s};return`#${o(t)}${o(n)}${o(r)}${i<1?o(Math.round(i*255)):""}`}function ioe(e,t,n,r,i){for(t=t.split?t.split("."):t,r=0;rObject.keys(e).length===0,wo=(e,t,n)=>{const r=ioe(e,`colors.${t}`,t);try{return roe(r),r}catch{return n??"#000000"}},aoe=e=>{const[t,n,r]=T9(e);return(t*299+n*587+r*114)/1e3},soe=e=>t=>{const n=wo(t,e);return aoe(n)<128?"dark":"light"},loe=e=>t=>soe(e)(t)==="dark",Um=(e,t)=>n=>{const r=wo(n,e);return noe(r,1-t)};function YM(e="1rem",t="rgba(255, 255, 255, 0.15)"){return{backgroundImage:`linear-gradient( 45deg, ${t} 25%, transparent 25%, @@ -353,12 +353,12 @@ Error generating stack: `+o.message+` ${t} 75%, transparent 75%, transparent - )`,backgroundSize:`${e} ${e}`}}var loe=()=>`#${Math.floor(Math.random()*16777215).toString(16).padEnd(6,"0")}`;function uoe(e){const t=loe();return!e||ioe(e)?t:e.string&&e.colors?doe(e.string,e.colors):e.string&&!e.colors?coe(e.string):e.colors&&!e.string?foe(e.colors):t}function coe(e){let t=0;if(e.length===0)return t.toString();for(let r=0;r>r*8&255;n+=`00${i.toString(16)}`.substr(-2)}return n}function doe(e,t){let n=0;if(e.length===0)return t[0];for(let r=0;rn.colorMode==="dark"?t:e}function M9(e){const{orientation:t,vertical:n,horizontal:r}=e;return t?t==="vertical"?n:r:{}}function hF(e){return ko(e)&&e.reference?e.reference:String(e)}var _w=(e,...t)=>t.map(hF).join(` ${e} `).replace(/calc/g,""),XM=(...e)=>`calc(${_w("+",...e)})`,ZM=(...e)=>`calc(${_w("-",...e)})`,g_=(...e)=>`calc(${_w("*",...e)})`,QM=(...e)=>`calc(${_w("/",...e)})`,JM=e=>{const t=hF(e);return t!=null&&!Number.isNaN(parseFloat(t))?String(t).startsWith("-")?String(t).slice(1):`-${t}`:g_(t,-1)},Nu=Object.assign(e=>({add:(...t)=>Nu(XM(e,...t)),subtract:(...t)=>Nu(ZM(e,...t)),multiply:(...t)=>Nu(g_(e,...t)),divide:(...t)=>Nu(QM(e,...t)),negate:()=>Nu(JM(e)),toString:()=>e.toString()}),{add:XM,subtract:ZM,multiply:g_,divide:QM,negate:JM});function hoe(e){return!Number.isInteger(parseFloat(e.toString()))}function poe(e,t="-"){return e.replace(/\s+/g,t)}function pF(e){const t=poe(e.toString());return t.includes("\\.")?e:hoe(e)?t.replace(".","\\."):e}function goe(e,t=""){return[t,pF(e)].filter(Boolean).join("-")}function moe(e,t){return`var(${pF(e)}${t?`, ${t}`:""})`}function voe(e,t=""){return`--${goe(e,t)}`}function yi(e,t){const n=voe(e,t==null?void 0:t.prefix);return{variable:n,reference:moe(n,yoe(t==null?void 0:t.fallback))}}function yoe(e){return typeof e=="string"?e:e==null?void 0:e.reference}var{defineMultiStyleConfig:boe,definePartsStyle:Vx}=dr(Fie.keys),R1=yi("switch-track-width"),Ah=yi("switch-track-height"),I5=yi("switch-track-diff"),xoe=Nu.subtract(R1,Ah),m_=yi("switch-thumb-x"),Bv=yi("switch-bg"),Soe=e=>{const{colorScheme:t}=e;return{borderRadius:"full",p:"0.5",width:[R1.reference],height:[Ah.reference],transitionProperty:"common",transitionDuration:"fast",[Bv.variable]:"colors.gray.300",_dark:{[Bv.variable]:"colors.whiteAlpha.400"},_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed"},_checked:{[Bv.variable]:`colors.${t}.500`,_dark:{[Bv.variable]:`colors.${t}.200`}},bg:Bv.reference}},woe={bg:"white",transitionProperty:"transform",transitionDuration:"normal",borderRadius:"inherit",width:[Ah.reference],height:[Ah.reference],_checked:{transform:`translateX(${m_.reference})`}},Coe=Vx(e=>({container:{[I5.variable]:xoe,[m_.variable]:I5.reference,_rtl:{[m_.variable]:Nu(I5).negate().toString()}},track:Soe(e),thumb:woe})),_oe={sm:Vx({container:{[R1.variable]:"1.375rem",[Ah.variable]:"sizes.3"}}),md:Vx({container:{[R1.variable]:"1.875rem",[Ah.variable]:"sizes.4"}}),lg:Vx({container:{[R1.variable]:"2.875rem",[Ah.variable]:"sizes.6"}})},koe=boe({baseStyle:Coe,sizes:_oe,defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:Eoe,definePartsStyle:ym}=dr(Bie.keys),Poe=ym({table:{fontVariantNumeric:"lining-nums tabular-nums",borderCollapse:"collapse",width:"full"},th:{fontFamily:"heading",fontWeight:"bold",textTransform:"uppercase",letterSpacing:"wider",textAlign:"start"},td:{textAlign:"start"},caption:{mt:4,fontFamily:"heading",textAlign:"center",fontWeight:"medium"}}),VS={"&[data-is-numeric=true]":{textAlign:"end"}},Toe=ym(e=>{const{colorScheme:t}=e;return{th:{color:wt("gray.600","gray.400")(e),borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},td:{borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},caption:{color:wt("gray.600","gray.100")(e)},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}}),Moe=ym(e=>{const{colorScheme:t}=e;return{th:{color:wt("gray.600","gray.400")(e),borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},td:{borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},caption:{color:wt("gray.600","gray.100")(e)},tbody:{tr:{"&:nth-of-type(odd)":{"th, td":{borderBottomWidth:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e)},td:{background:wt(`${t}.100`,`${t}.700`)(e)}}}},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}}),Loe={simple:Toe,striped:Moe,unstyled:{}},Aoe={sm:ym({th:{px:"4",py:"1",lineHeight:"4",fontSize:"xs"},td:{px:"4",py:"2",fontSize:"sm",lineHeight:"4"},caption:{px:"4",py:"2",fontSize:"xs"}}),md:ym({th:{px:"6",py:"3",lineHeight:"4",fontSize:"xs"},td:{px:"6",py:"4",lineHeight:"5"},caption:{px:"6",py:"2",fontSize:"sm"}}),lg:ym({th:{px:"8",py:"4",lineHeight:"5",fontSize:"sm"},td:{px:"8",py:"5",lineHeight:"6"},caption:{px:"6",py:"2",fontSize:"md"}})},Ooe=Eoe({baseStyle:Poe,variants:Loe,sizes:Aoe,defaultProps:{variant:"simple",size:"md",colorScheme:"gray"}}),Go=gn("tabs-color"),Us=gn("tabs-bg"),Db=gn("tabs-border-color"),{defineMultiStyleConfig:Roe,definePartsStyle:Kl}=dr(zie.keys),Ioe=e=>{const{orientation:t}=e;return{display:t==="vertical"?"flex":"block"}},Doe=e=>{const{isFitted:t}=e;return{flex:t?1:void 0,transitionProperty:"common",transitionDuration:"normal",_focusVisible:{zIndex:1,boxShadow:"outline"},_disabled:{cursor:"not-allowed",opacity:.4}}},joe=e=>{const{align:t="start",orientation:n}=e;return{justifyContent:{end:"flex-end",center:"center",start:"flex-start"}[t],flexDirection:n==="vertical"?"column":"row"}},Noe={p:4},$oe=Kl(e=>({root:Ioe(e),tab:Doe(e),tablist:joe(e),tabpanel:Noe})),Foe={sm:Kl({tab:{py:1,px:4,fontSize:"sm"}}),md:Kl({tab:{fontSize:"md",py:2,px:4}}),lg:Kl({tab:{fontSize:"lg",py:3,px:4}})},Boe=Kl(e=>{const{colorScheme:t,orientation:n}=e,r=n==="vertical",i=n==="vertical"?"borderStart":"borderBottom",o=r?"marginStart":"marginBottom";return{tablist:{[i]:"2px solid",borderColor:"inherit"},tab:{[i]:"2px solid",borderColor:"transparent",[o]:"-2px",_selected:{[Go.variable]:`colors.${t}.600`,_dark:{[Go.variable]:`colors.${t}.300`},borderColor:"currentColor"},_active:{[Us.variable]:"colors.gray.200",_dark:{[Us.variable]:"colors.whiteAlpha.300"}},_disabled:{_active:{bg:"none"}},color:Go.reference,bg:Us.reference}}}),zoe=Kl(e=>{const{colorScheme:t}=e;return{tab:{borderTopRadius:"md",border:"1px solid",borderColor:"transparent",mb:"-1px",[Db.variable]:"transparent",_selected:{[Go.variable]:`colors.${t}.600`,[Db.variable]:"colors.white",_dark:{[Go.variable]:`colors.${t}.300`,[Db.variable]:"colors.gray.800"},borderColor:"inherit",borderBottomColor:Db.reference},color:Go.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}}),Hoe=Kl(e=>{const{colorScheme:t}=e;return{tab:{border:"1px solid",borderColor:"inherit",[Us.variable]:"colors.gray.50",_dark:{[Us.variable]:"colors.whiteAlpha.50"},mb:"-1px",_notLast:{marginEnd:"-1px"},_selected:{[Us.variable]:"colors.white",[Go.variable]:`colors.${t}.600`,_dark:{[Us.variable]:"colors.gray.800",[Go.variable]:`colors.${t}.300`},borderColor:"inherit",borderTopColor:"currentColor",borderBottomColor:"transparent"},color:Go.reference,bg:Us.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}}),Woe=Kl(e=>{const{colorScheme:t,theme:n}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",color:"gray.600",_selected:{color:wo(n,`${t}.700`),bg:wo(n,`${t}.100`)}}}}),Uoe=Kl(e=>{const{colorScheme:t}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",[Go.variable]:"colors.gray.600",_dark:{[Go.variable]:"inherit"},_selected:{[Go.variable]:"colors.white",[Us.variable]:`colors.${t}.600`,_dark:{[Go.variable]:"colors.gray.800",[Us.variable]:`colors.${t}.300`}},color:Go.reference,bg:Us.reference}}}),Voe=Kl({}),Goe={line:Boe,enclosed:zoe,"enclosed-colored":Hoe,"soft-rounded":Woe,"solid-rounded":Uoe,unstyled:Voe},qoe=Roe({baseStyle:$oe,sizes:Foe,variants:Goe,defaultProps:{size:"md",variant:"line",colorScheme:"blue"}}),Koe={px:1,textTransform:"uppercase",fontSize:"xs",borderRadius:"sm",fontWeight:"bold"},bm=gn("badge-bg"),zl=gn("badge-color"),Yoe=e=>{const{colorScheme:t,theme:n}=e,r=Um(`${t}.500`,.6)(n);return{[bm.variable]:`colors.${t}.500`,[zl.variable]:"colors.white",_dark:{[bm.variable]:r,[zl.variable]:"colors.whiteAlpha.800"},bg:bm.reference,color:zl.reference}},Xoe=e=>{const{colorScheme:t,theme:n}=e,r=Um(`${t}.200`,.16)(n);return{[bm.variable]:`colors.${t}.100`,[zl.variable]:`colors.${t}.800`,_dark:{[bm.variable]:r,[zl.variable]:`colors.${t}.200`},bg:bm.reference,color:zl.reference}},Zoe=e=>{const{colorScheme:t,theme:n}=e,r=Um(`${t}.200`,.8)(n);return{[zl.variable]:`colors.${t}.500`,_dark:{[zl.variable]:r},color:zl.reference,boxShadow:`inset 0 0 0px 1px ${zl.reference}`}},Qoe={solid:Yoe,subtle:Xoe,outline:Zoe},I1={baseStyle:Koe,variants:Qoe,defaultProps:{variant:"subtle",colorScheme:"gray"}},{defineMultiStyleConfig:Joe,definePartsStyle:Oh}=dr(Hie.keys),eae={fontWeight:"medium",lineHeight:1.2,outline:0,borderRadius:"md",_focusVisible:{boxShadow:"outline"}},tae={lineHeight:1.2,overflow:"visible"},nae={fontSize:"lg",w:"5",h:"5",transitionProperty:"common",transitionDuration:"normal",borderRadius:"full",marginStart:"1.5",marginEnd:"-1",opacity:.5,_disabled:{opacity:.4},_focusVisible:{boxShadow:"outline",bg:"rgba(0, 0, 0, 0.14)"},_hover:{opacity:.8},_active:{opacity:1}},rae=Oh({container:eae,label:tae,closeButton:nae}),iae={sm:Oh({container:{minH:"5",minW:"5",fontSize:"xs",px:"2"},closeButton:{marginEnd:"-2px",marginStart:"0.35rem"}}),md:Oh({container:{minH:"6",minW:"6",fontSize:"sm",px:"2"}}),lg:Oh({container:{minH:"8",minW:"8",fontSize:"md",px:"3"}})},oae={subtle:Oh(e=>{var t;return{container:(t=I1.variants)==null?void 0:t.subtle(e)}}),solid:Oh(e=>{var t;return{container:(t=I1.variants)==null?void 0:t.solid(e)}}),outline:Oh(e=>{var t;return{container:(t=I1.variants)==null?void 0:t.outline(e)}})},aae=Joe({variants:oae,baseStyle:rae,sizes:iae,defaultProps:{size:"md",variant:"subtle",colorScheme:"gray"}}),{definePartsStyle:zu,defineMultiStyleConfig:sae}=dr(Tie.keys),lae=zu({field:{width:"100%",minWidth:0,outline:0,position:"relative",appearance:"none",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed"}}}),sd={lg:{fontSize:"lg",px:"4",h:"12",borderRadius:"md"},md:{fontSize:"md",px:"4",h:"10",borderRadius:"md"},sm:{fontSize:"sm",px:"3",h:"8",borderRadius:"sm"},xs:{fontSize:"xs",px:"2",h:"6",borderRadius:"sm"}},uae={lg:zu({field:sd.lg,addon:sd.lg}),md:zu({field:sd.md,addon:sd.md}),sm:zu({field:sd.sm,addon:sd.sm}),xs:zu({field:sd.xs,addon:sd.xs})};function L9(e){const{focusBorderColor:t,errorBorderColor:n}=e;return{focusBorderColor:t||wt("blue.500","blue.300")(e),errorBorderColor:n||wt("red.500","red.300")(e)}}var cae=zu(e=>{const{theme:t}=e,{focusBorderColor:n,errorBorderColor:r}=L9(e);return{field:{border:"1px solid",borderColor:"inherit",bg:"inherit",_hover:{borderColor:wt("gray.300","whiteAlpha.400")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:wo(t,r),boxShadow:`0 0 0 1px ${wo(t,r)}`},_focusVisible:{zIndex:1,borderColor:wo(t,n),boxShadow:`0 0 0 1px ${wo(t,n)}`}},addon:{border:"1px solid",borderColor:wt("inherit","whiteAlpha.50")(e),bg:wt("gray.100","whiteAlpha.300")(e)}}}),dae=zu(e=>{const{theme:t}=e,{focusBorderColor:n,errorBorderColor:r}=L9(e);return{field:{border:"2px solid",borderColor:"transparent",bg:wt("gray.100","whiteAlpha.50")(e),_hover:{bg:wt("gray.200","whiteAlpha.100")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:wo(t,r)},_focusVisible:{bg:"transparent",borderColor:wo(t,n)}},addon:{border:"2px solid",borderColor:"transparent",bg:wt("gray.100","whiteAlpha.50")(e)}}}),fae=zu(e=>{const{theme:t}=e,{focusBorderColor:n,errorBorderColor:r}=L9(e);return{field:{borderBottom:"1px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent",_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:wo(t,r),boxShadow:`0px 1px 0px 0px ${wo(t,r)}`},_focusVisible:{borderColor:wo(t,n),boxShadow:`0px 1px 0px 0px ${wo(t,n)}`}},addon:{borderBottom:"2px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent"}}}),hae=zu({field:{bg:"transparent",px:"0",height:"auto"},addon:{bg:"transparent",px:"0",height:"auto"}}),pae={outline:cae,filled:dae,flushed:fae,unstyled:hae},xn=sae({baseStyle:lae,sizes:uae,variants:pae,defaultProps:{size:"md",variant:"outline"}}),eL,gae={...(eL=xn.baseStyle)==null?void 0:eL.field,paddingY:"2",minHeight:"20",lineHeight:"short",verticalAlign:"top"},tL,nL,mae={outline:e=>{var t,n;return(n=(t=xn.variants)==null?void 0:t.outline(e).field)!=null?n:{}},flushed:e=>{var t,n;return(n=(t=xn.variants)==null?void 0:t.flushed(e).field)!=null?n:{}},filled:e=>{var t,n;return(n=(t=xn.variants)==null?void 0:t.filled(e).field)!=null?n:{}},unstyled:(nL=(tL=xn.variants)==null?void 0:tL.unstyled.field)!=null?nL:{}},rL,iL,oL,aL,sL,lL,uL,cL,vae={xs:(iL=(rL=xn.sizes)==null?void 0:rL.xs.field)!=null?iL:{},sm:(aL=(oL=xn.sizes)==null?void 0:oL.sm.field)!=null?aL:{},md:(lL=(sL=xn.sizes)==null?void 0:sL.md.field)!=null?lL:{},lg:(cL=(uL=xn.sizes)==null?void 0:uL.lg.field)!=null?cL:{}},yae={baseStyle:gae,sizes:vae,variants:mae,defaultProps:{size:"md",variant:"outline"}},jb=yi("tooltip-bg"),D5=yi("tooltip-fg"),bae=yi("popper-arrow-bg"),xae={bg:jb.reference,color:D5.reference,[jb.variable]:"colors.gray.700",[D5.variable]:"colors.whiteAlpha.900",_dark:{[jb.variable]:"colors.gray.300",[D5.variable]:"colors.gray.900"},[bae.variable]:jb.reference,px:"2",py:"0.5",borderRadius:"sm",fontWeight:"medium",fontSize:"sm",boxShadow:"md",maxW:"xs",zIndex:"tooltip"},Sae={baseStyle:xae},{defineMultiStyleConfig:wae,definePartsStyle:c1}=dr(Iie.keys),Cae=e=>{const{colorScheme:t,theme:n,isIndeterminate:r,hasStripe:i}=e,o=wt(YM(),YM("1rem","rgba(0,0,0,0.1)"))(e),a=wt(`${t}.500`,`${t}.200`)(e),s=`linear-gradient( + )`,backgroundSize:`${e} ${e}`}}var uoe=()=>`#${Math.floor(Math.random()*16777215).toString(16).padEnd(6,"0")}`;function coe(e){const t=uoe();return!e||ooe(e)?t:e.string&&e.colors?foe(e.string,e.colors):e.string&&!e.colors?doe(e.string):e.colors&&!e.string?hoe(e.colors):t}function doe(e){let t=0;if(e.length===0)return t.toString();for(let r=0;r>r*8&255;n+=`00${i.toString(16)}`.substr(-2)}return n}function foe(e,t){let n=0;if(e.length===0)return t[0];for(let r=0;rn.colorMode==="dark"?t:e}function M9(e){const{orientation:t,vertical:n,horizontal:r}=e;return t?t==="vertical"?n:r:{}}function hF(e){return ko(e)&&e.reference?e.reference:String(e)}var _w=(e,...t)=>t.map(hF).join(` ${e} `).replace(/calc/g,""),XM=(...e)=>`calc(${_w("+",...e)})`,ZM=(...e)=>`calc(${_w("-",...e)})`,g_=(...e)=>`calc(${_w("*",...e)})`,QM=(...e)=>`calc(${_w("/",...e)})`,JM=e=>{const t=hF(e);return t!=null&&!Number.isNaN(parseFloat(t))?String(t).startsWith("-")?String(t).slice(1):`-${t}`:g_(t,-1)},Nu=Object.assign(e=>({add:(...t)=>Nu(XM(e,...t)),subtract:(...t)=>Nu(ZM(e,...t)),multiply:(...t)=>Nu(g_(e,...t)),divide:(...t)=>Nu(QM(e,...t)),negate:()=>Nu(JM(e)),toString:()=>e.toString()}),{add:XM,subtract:ZM,multiply:g_,divide:QM,negate:JM});function poe(e){return!Number.isInteger(parseFloat(e.toString()))}function goe(e,t="-"){return e.replace(/\s+/g,t)}function pF(e){const t=goe(e.toString());return t.includes("\\.")?e:poe(e)?t.replace(".","\\."):e}function moe(e,t=""){return[t,pF(e)].filter(Boolean).join("-")}function voe(e,t){return`var(${pF(e)}${t?`, ${t}`:""})`}function yoe(e,t=""){return`--${moe(e,t)}`}function yi(e,t){const n=yoe(e,t==null?void 0:t.prefix);return{variable:n,reference:voe(n,boe(t==null?void 0:t.fallback))}}function boe(e){return typeof e=="string"?e:e==null?void 0:e.reference}var{defineMultiStyleConfig:xoe,definePartsStyle:Vx}=dr(Bie.keys),R1=yi("switch-track-width"),Ah=yi("switch-track-height"),I5=yi("switch-track-diff"),Soe=Nu.subtract(R1,Ah),m_=yi("switch-thumb-x"),Bv=yi("switch-bg"),woe=e=>{const{colorScheme:t}=e;return{borderRadius:"full",p:"0.5",width:[R1.reference],height:[Ah.reference],transitionProperty:"common",transitionDuration:"fast",[Bv.variable]:"colors.gray.300",_dark:{[Bv.variable]:"colors.whiteAlpha.400"},_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed"},_checked:{[Bv.variable]:`colors.${t}.500`,_dark:{[Bv.variable]:`colors.${t}.200`}},bg:Bv.reference}},Coe={bg:"white",transitionProperty:"transform",transitionDuration:"normal",borderRadius:"inherit",width:[Ah.reference],height:[Ah.reference],_checked:{transform:`translateX(${m_.reference})`}},_oe=Vx(e=>({container:{[I5.variable]:Soe,[m_.variable]:I5.reference,_rtl:{[m_.variable]:Nu(I5).negate().toString()}},track:woe(e),thumb:Coe})),koe={sm:Vx({container:{[R1.variable]:"1.375rem",[Ah.variable]:"sizes.3"}}),md:Vx({container:{[R1.variable]:"1.875rem",[Ah.variable]:"sizes.4"}}),lg:Vx({container:{[R1.variable]:"2.875rem",[Ah.variable]:"sizes.6"}})},Eoe=xoe({baseStyle:_oe,sizes:koe,defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:Poe,definePartsStyle:ym}=dr(zie.keys),Toe=ym({table:{fontVariantNumeric:"lining-nums tabular-nums",borderCollapse:"collapse",width:"full"},th:{fontFamily:"heading",fontWeight:"bold",textTransform:"uppercase",letterSpacing:"wider",textAlign:"start"},td:{textAlign:"start"},caption:{mt:4,fontFamily:"heading",textAlign:"center",fontWeight:"medium"}}),VS={"&[data-is-numeric=true]":{textAlign:"end"}},Moe=ym(e=>{const{colorScheme:t}=e;return{th:{color:wt("gray.600","gray.400")(e),borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},td:{borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},caption:{color:wt("gray.600","gray.100")(e)},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}}),Loe=ym(e=>{const{colorScheme:t}=e;return{th:{color:wt("gray.600","gray.400")(e),borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},td:{borderBottom:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e),...VS},caption:{color:wt("gray.600","gray.100")(e)},tbody:{tr:{"&:nth-of-type(odd)":{"th, td":{borderBottomWidth:"1px",borderColor:wt(`${t}.100`,`${t}.700`)(e)},td:{background:wt(`${t}.100`,`${t}.700`)(e)}}}},tfoot:{tr:{"&:last-of-type":{th:{borderBottomWidth:0}}}}}}),Aoe={simple:Moe,striped:Loe,unstyled:{}},Ooe={sm:ym({th:{px:"4",py:"1",lineHeight:"4",fontSize:"xs"},td:{px:"4",py:"2",fontSize:"sm",lineHeight:"4"},caption:{px:"4",py:"2",fontSize:"xs"}}),md:ym({th:{px:"6",py:"3",lineHeight:"4",fontSize:"xs"},td:{px:"6",py:"4",lineHeight:"5"},caption:{px:"6",py:"2",fontSize:"sm"}}),lg:ym({th:{px:"8",py:"4",lineHeight:"5",fontSize:"sm"},td:{px:"8",py:"5",lineHeight:"6"},caption:{px:"6",py:"2",fontSize:"md"}})},Roe=Poe({baseStyle:Toe,variants:Aoe,sizes:Ooe,defaultProps:{variant:"simple",size:"md",colorScheme:"gray"}}),Go=gn("tabs-color"),Us=gn("tabs-bg"),Db=gn("tabs-border-color"),{defineMultiStyleConfig:Ioe,definePartsStyle:Kl}=dr(Hie.keys),Doe=e=>{const{orientation:t}=e;return{display:t==="vertical"?"flex":"block"}},joe=e=>{const{isFitted:t}=e;return{flex:t?1:void 0,transitionProperty:"common",transitionDuration:"normal",_focusVisible:{zIndex:1,boxShadow:"outline"},_disabled:{cursor:"not-allowed",opacity:.4}}},Noe=e=>{const{align:t="start",orientation:n}=e;return{justifyContent:{end:"flex-end",center:"center",start:"flex-start"}[t],flexDirection:n==="vertical"?"column":"row"}},$oe={p:4},Foe=Kl(e=>({root:Doe(e),tab:joe(e),tablist:Noe(e),tabpanel:$oe})),Boe={sm:Kl({tab:{py:1,px:4,fontSize:"sm"}}),md:Kl({tab:{fontSize:"md",py:2,px:4}}),lg:Kl({tab:{fontSize:"lg",py:3,px:4}})},zoe=Kl(e=>{const{colorScheme:t,orientation:n}=e,r=n==="vertical",i=n==="vertical"?"borderStart":"borderBottom",o=r?"marginStart":"marginBottom";return{tablist:{[i]:"2px solid",borderColor:"inherit"},tab:{[i]:"2px solid",borderColor:"transparent",[o]:"-2px",_selected:{[Go.variable]:`colors.${t}.600`,_dark:{[Go.variable]:`colors.${t}.300`},borderColor:"currentColor"},_active:{[Us.variable]:"colors.gray.200",_dark:{[Us.variable]:"colors.whiteAlpha.300"}},_disabled:{_active:{bg:"none"}},color:Go.reference,bg:Us.reference}}}),Hoe=Kl(e=>{const{colorScheme:t}=e;return{tab:{borderTopRadius:"md",border:"1px solid",borderColor:"transparent",mb:"-1px",[Db.variable]:"transparent",_selected:{[Go.variable]:`colors.${t}.600`,[Db.variable]:"colors.white",_dark:{[Go.variable]:`colors.${t}.300`,[Db.variable]:"colors.gray.800"},borderColor:"inherit",borderBottomColor:Db.reference},color:Go.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}}),Woe=Kl(e=>{const{colorScheme:t}=e;return{tab:{border:"1px solid",borderColor:"inherit",[Us.variable]:"colors.gray.50",_dark:{[Us.variable]:"colors.whiteAlpha.50"},mb:"-1px",_notLast:{marginEnd:"-1px"},_selected:{[Us.variable]:"colors.white",[Go.variable]:`colors.${t}.600`,_dark:{[Us.variable]:"colors.gray.800",[Go.variable]:`colors.${t}.300`},borderColor:"inherit",borderTopColor:"currentColor",borderBottomColor:"transparent"},color:Go.reference,bg:Us.reference},tablist:{mb:"-1px",borderBottom:"1px solid",borderColor:"inherit"}}}),Uoe=Kl(e=>{const{colorScheme:t,theme:n}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",color:"gray.600",_selected:{color:wo(n,`${t}.700`),bg:wo(n,`${t}.100`)}}}}),Voe=Kl(e=>{const{colorScheme:t}=e;return{tab:{borderRadius:"full",fontWeight:"semibold",[Go.variable]:"colors.gray.600",_dark:{[Go.variable]:"inherit"},_selected:{[Go.variable]:"colors.white",[Us.variable]:`colors.${t}.600`,_dark:{[Go.variable]:"colors.gray.800",[Us.variable]:`colors.${t}.300`}},color:Go.reference,bg:Us.reference}}}),Goe=Kl({}),qoe={line:zoe,enclosed:Hoe,"enclosed-colored":Woe,"soft-rounded":Uoe,"solid-rounded":Voe,unstyled:Goe},Koe=Ioe({baseStyle:Foe,sizes:Boe,variants:qoe,defaultProps:{size:"md",variant:"line",colorScheme:"blue"}}),Yoe={px:1,textTransform:"uppercase",fontSize:"xs",borderRadius:"sm",fontWeight:"bold"},bm=gn("badge-bg"),zl=gn("badge-color"),Xoe=e=>{const{colorScheme:t,theme:n}=e,r=Um(`${t}.500`,.6)(n);return{[bm.variable]:`colors.${t}.500`,[zl.variable]:"colors.white",_dark:{[bm.variable]:r,[zl.variable]:"colors.whiteAlpha.800"},bg:bm.reference,color:zl.reference}},Zoe=e=>{const{colorScheme:t,theme:n}=e,r=Um(`${t}.200`,.16)(n);return{[bm.variable]:`colors.${t}.100`,[zl.variable]:`colors.${t}.800`,_dark:{[bm.variable]:r,[zl.variable]:`colors.${t}.200`},bg:bm.reference,color:zl.reference}},Qoe=e=>{const{colorScheme:t,theme:n}=e,r=Um(`${t}.200`,.8)(n);return{[zl.variable]:`colors.${t}.500`,_dark:{[zl.variable]:r},color:zl.reference,boxShadow:`inset 0 0 0px 1px ${zl.reference}`}},Joe={solid:Xoe,subtle:Zoe,outline:Qoe},I1={baseStyle:Yoe,variants:Joe,defaultProps:{variant:"subtle",colorScheme:"gray"}},{defineMultiStyleConfig:eae,definePartsStyle:Oh}=dr(Wie.keys),tae={fontWeight:"medium",lineHeight:1.2,outline:0,borderRadius:"md",_focusVisible:{boxShadow:"outline"}},nae={lineHeight:1.2,overflow:"visible"},rae={fontSize:"lg",w:"5",h:"5",transitionProperty:"common",transitionDuration:"normal",borderRadius:"full",marginStart:"1.5",marginEnd:"-1",opacity:.5,_disabled:{opacity:.4},_focusVisible:{boxShadow:"outline",bg:"rgba(0, 0, 0, 0.14)"},_hover:{opacity:.8},_active:{opacity:1}},iae=Oh({container:tae,label:nae,closeButton:rae}),oae={sm:Oh({container:{minH:"5",minW:"5",fontSize:"xs",px:"2"},closeButton:{marginEnd:"-2px",marginStart:"0.35rem"}}),md:Oh({container:{minH:"6",minW:"6",fontSize:"sm",px:"2"}}),lg:Oh({container:{minH:"8",minW:"8",fontSize:"md",px:"3"}})},aae={subtle:Oh(e=>{var t;return{container:(t=I1.variants)==null?void 0:t.subtle(e)}}),solid:Oh(e=>{var t;return{container:(t=I1.variants)==null?void 0:t.solid(e)}}),outline:Oh(e=>{var t;return{container:(t=I1.variants)==null?void 0:t.outline(e)}})},sae=eae({variants:aae,baseStyle:iae,sizes:oae,defaultProps:{size:"md",variant:"subtle",colorScheme:"gray"}}),{definePartsStyle:zu,defineMultiStyleConfig:lae}=dr(Mie.keys),uae=zu({field:{width:"100%",minWidth:0,outline:0,position:"relative",appearance:"none",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed"}}}),sd={lg:{fontSize:"lg",px:"4",h:"12",borderRadius:"md"},md:{fontSize:"md",px:"4",h:"10",borderRadius:"md"},sm:{fontSize:"sm",px:"3",h:"8",borderRadius:"sm"},xs:{fontSize:"xs",px:"2",h:"6",borderRadius:"sm"}},cae={lg:zu({field:sd.lg,addon:sd.lg}),md:zu({field:sd.md,addon:sd.md}),sm:zu({field:sd.sm,addon:sd.sm}),xs:zu({field:sd.xs,addon:sd.xs})};function L9(e){const{focusBorderColor:t,errorBorderColor:n}=e;return{focusBorderColor:t||wt("blue.500","blue.300")(e),errorBorderColor:n||wt("red.500","red.300")(e)}}var dae=zu(e=>{const{theme:t}=e,{focusBorderColor:n,errorBorderColor:r}=L9(e);return{field:{border:"1px solid",borderColor:"inherit",bg:"inherit",_hover:{borderColor:wt("gray.300","whiteAlpha.400")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:wo(t,r),boxShadow:`0 0 0 1px ${wo(t,r)}`},_focusVisible:{zIndex:1,borderColor:wo(t,n),boxShadow:`0 0 0 1px ${wo(t,n)}`}},addon:{border:"1px solid",borderColor:wt("inherit","whiteAlpha.50")(e),bg:wt("gray.100","whiteAlpha.300")(e)}}}),fae=zu(e=>{const{theme:t}=e,{focusBorderColor:n,errorBorderColor:r}=L9(e);return{field:{border:"2px solid",borderColor:"transparent",bg:wt("gray.100","whiteAlpha.50")(e),_hover:{bg:wt("gray.200","whiteAlpha.100")(e)},_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:wo(t,r)},_focusVisible:{bg:"transparent",borderColor:wo(t,n)}},addon:{border:"2px solid",borderColor:"transparent",bg:wt("gray.100","whiteAlpha.50")(e)}}}),hae=zu(e=>{const{theme:t}=e,{focusBorderColor:n,errorBorderColor:r}=L9(e);return{field:{borderBottom:"1px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent",_readOnly:{boxShadow:"none !important",userSelect:"all"},_invalid:{borderColor:wo(t,r),boxShadow:`0px 1px 0px 0px ${wo(t,r)}`},_focusVisible:{borderColor:wo(t,n),boxShadow:`0px 1px 0px 0px ${wo(t,n)}`}},addon:{borderBottom:"2px solid",borderColor:"inherit",borderRadius:"0",px:"0",bg:"transparent"}}}),pae=zu({field:{bg:"transparent",px:"0",height:"auto"},addon:{bg:"transparent",px:"0",height:"auto"}}),gae={outline:dae,filled:fae,flushed:hae,unstyled:pae},xn=lae({baseStyle:uae,sizes:cae,variants:gae,defaultProps:{size:"md",variant:"outline"}}),eL,mae={...(eL=xn.baseStyle)==null?void 0:eL.field,paddingY:"2",minHeight:"20",lineHeight:"short",verticalAlign:"top"},tL,nL,vae={outline:e=>{var t,n;return(n=(t=xn.variants)==null?void 0:t.outline(e).field)!=null?n:{}},flushed:e=>{var t,n;return(n=(t=xn.variants)==null?void 0:t.flushed(e).field)!=null?n:{}},filled:e=>{var t,n;return(n=(t=xn.variants)==null?void 0:t.filled(e).field)!=null?n:{}},unstyled:(nL=(tL=xn.variants)==null?void 0:tL.unstyled.field)!=null?nL:{}},rL,iL,oL,aL,sL,lL,uL,cL,yae={xs:(iL=(rL=xn.sizes)==null?void 0:rL.xs.field)!=null?iL:{},sm:(aL=(oL=xn.sizes)==null?void 0:oL.sm.field)!=null?aL:{},md:(lL=(sL=xn.sizes)==null?void 0:sL.md.field)!=null?lL:{},lg:(cL=(uL=xn.sizes)==null?void 0:uL.lg.field)!=null?cL:{}},bae={baseStyle:mae,sizes:yae,variants:vae,defaultProps:{size:"md",variant:"outline"}},jb=yi("tooltip-bg"),D5=yi("tooltip-fg"),xae=yi("popper-arrow-bg"),Sae={bg:jb.reference,color:D5.reference,[jb.variable]:"colors.gray.700",[D5.variable]:"colors.whiteAlpha.900",_dark:{[jb.variable]:"colors.gray.300",[D5.variable]:"colors.gray.900"},[xae.variable]:jb.reference,px:"2",py:"0.5",borderRadius:"sm",fontWeight:"medium",fontSize:"sm",boxShadow:"md",maxW:"xs",zIndex:"tooltip"},wae={baseStyle:Sae},{defineMultiStyleConfig:Cae,definePartsStyle:c1}=dr(Die.keys),_ae=e=>{const{colorScheme:t,theme:n,isIndeterminate:r,hasStripe:i}=e,o=wt(YM(),YM("1rem","rgba(0,0,0,0.1)"))(e),a=wt(`${t}.500`,`${t}.200`)(e),s=`linear-gradient( to right, transparent 0%, ${wo(n,a)} 50%, transparent 100% - )`;return{...!r&&i&&o,...r?{bgImage:s}:{bgColor:a}}},_ae={lineHeight:"1",fontSize:"0.25em",fontWeight:"bold",color:"white"},kae=e=>({bg:wt("gray.100","whiteAlpha.300")(e)}),Eae=e=>({transitionProperty:"common",transitionDuration:"slow",...Cae(e)}),Pae=c1(e=>({label:_ae,filledTrack:Eae(e),track:kae(e)})),Tae={xs:c1({track:{h:"1"}}),sm:c1({track:{h:"2"}}),md:c1({track:{h:"3"}}),lg:c1({track:{h:"4"}})},Mae=wae({sizes:Tae,baseStyle:Pae,defaultProps:{size:"md",colorScheme:"blue"}}),Lae=e=>typeof e=="function";function Eo(e,...t){return Lae(e)?e(...t):e}var{definePartsStyle:Gx,defineMultiStyleConfig:Aae}=dr(Cie.keys),D1=gn("checkbox-size"),Oae=e=>{const{colorScheme:t}=e;return{w:D1.reference,h:D1.reference,transitionProperty:"box-shadow",transitionDuration:"normal",border:"2px solid",borderRadius:"sm",borderColor:"inherit",color:"white",_checked:{bg:wt(`${t}.500`,`${t}.200`)(e),borderColor:wt(`${t}.500`,`${t}.200`)(e),color:wt("white","gray.900")(e),_hover:{bg:wt(`${t}.600`,`${t}.300`)(e),borderColor:wt(`${t}.600`,`${t}.300`)(e)},_disabled:{borderColor:wt("gray.200","transparent")(e),bg:wt("gray.200","whiteAlpha.300")(e),color:wt("gray.500","whiteAlpha.500")(e)}},_indeterminate:{bg:wt(`${t}.500`,`${t}.200`)(e),borderColor:wt(`${t}.500`,`${t}.200`)(e),color:wt("white","gray.900")(e)},_disabled:{bg:wt("gray.100","whiteAlpha.100")(e),borderColor:wt("gray.100","transparent")(e)},_focusVisible:{boxShadow:"outline"},_invalid:{borderColor:wt("red.500","red.300")(e)}}},Rae={_disabled:{cursor:"not-allowed"}},Iae={userSelect:"none",_disabled:{opacity:.4}},Dae={transitionProperty:"transform",transitionDuration:"normal"},jae=Gx(e=>({icon:Dae,container:Rae,control:Eo(Oae,e),label:Iae})),Nae={sm:Gx({control:{[D1.variable]:"sizes.3"},label:{fontSize:"sm"},icon:{fontSize:"3xs"}}),md:Gx({control:{[D1.variable]:"sizes.4"},label:{fontSize:"md"},icon:{fontSize:"2xs"}}),lg:Gx({control:{[D1.variable]:"sizes.5"},label:{fontSize:"lg"},icon:{fontSize:"2xs"}})},GS=Aae({baseStyle:jae,sizes:Nae,defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:$ae,definePartsStyle:qx}=dr(Die.keys),Fae=e=>{var t;const n=(t=Eo(GS.baseStyle,e))==null?void 0:t.control;return{...n,borderRadius:"full",_checked:{...n==null?void 0:n._checked,_before:{content:'""',display:"inline-block",pos:"relative",w:"50%",h:"50%",borderRadius:"50%",bg:"currentColor"}}}},Bae=qx(e=>{var t,n,r,i;return{label:(n=(t=GS).baseStyle)==null?void 0:n.call(t,e).label,container:(i=(r=GS).baseStyle)==null?void 0:i.call(r,e).container,control:Fae(e)}}),zae={md:qx({control:{w:"4",h:"4"},label:{fontSize:"md"}}),lg:qx({control:{w:"5",h:"5"},label:{fontSize:"lg"}}),sm:qx({control:{width:"3",height:"3"},label:{fontSize:"sm"}})},Hae=$ae({baseStyle:Bae,sizes:zae,defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:Wae,definePartsStyle:Uae}=dr(jie.keys),Nb=gn("select-bg"),dL,Vae={...(dL=xn.baseStyle)==null?void 0:dL.field,appearance:"none",paddingBottom:"1px",lineHeight:"normal",bg:Nb.reference,[Nb.variable]:"colors.white",_dark:{[Nb.variable]:"colors.gray.700"},"> option, > optgroup":{bg:Nb.reference}},Gae={width:"6",height:"100%",insetEnd:"2",position:"relative",color:"currentColor",fontSize:"xl",_disabled:{opacity:.5}},qae=Uae({field:Vae,icon:Gae}),$b={paddingInlineEnd:"8"},fL,hL,pL,gL,mL,vL,yL,bL,Kae={lg:{...(fL=xn.sizes)==null?void 0:fL.lg,field:{...(hL=xn.sizes)==null?void 0:hL.lg.field,...$b}},md:{...(pL=xn.sizes)==null?void 0:pL.md,field:{...(gL=xn.sizes)==null?void 0:gL.md.field,...$b}},sm:{...(mL=xn.sizes)==null?void 0:mL.sm,field:{...(vL=xn.sizes)==null?void 0:vL.sm.field,...$b}},xs:{...(yL=xn.sizes)==null?void 0:yL.xs,field:{...(bL=xn.sizes)==null?void 0:bL.xs.field,...$b},icon:{insetEnd:"1"}}},Yae=Wae({baseStyle:qae,sizes:Kae,variants:xn.variants,defaultProps:xn.defaultProps}),j5=gn("skeleton-start-color"),N5=gn("skeleton-end-color"),Xae={[j5.variable]:"colors.gray.100",[N5.variable]:"colors.gray.400",_dark:{[j5.variable]:"colors.gray.800",[N5.variable]:"colors.gray.600"},background:j5.reference,borderColor:N5.reference,opacity:.7,borderRadius:"sm"},Zae={baseStyle:Xae},$5=gn("skip-link-bg"),Qae={borderRadius:"md",fontWeight:"semibold",_focusVisible:{boxShadow:"outline",padding:"4",position:"fixed",top:"6",insetStart:"6",[$5.variable]:"colors.white",_dark:{[$5.variable]:"colors.gray.700"},bg:$5.reference}},Jae={baseStyle:Qae},{defineMultiStyleConfig:ese,definePartsStyle:kw}=dr(Nie.keys),Sy=gn("slider-thumb-size"),wy=gn("slider-track-size"),bd=gn("slider-bg"),tse=e=>{const{orientation:t}=e;return{display:"inline-block",position:"relative",cursor:"pointer",_disabled:{opacity:.6,cursor:"default",pointerEvents:"none"},...M9({orientation:t,vertical:{h:"100%"},horizontal:{w:"100%"}})}},nse=e=>({...M9({orientation:e.orientation,horizontal:{h:wy.reference},vertical:{w:wy.reference}}),overflow:"hidden",borderRadius:"sm",[bd.variable]:"colors.gray.200",_dark:{[bd.variable]:"colors.whiteAlpha.200"},_disabled:{[bd.variable]:"colors.gray.300",_dark:{[bd.variable]:"colors.whiteAlpha.300"}},bg:bd.reference}),rse=e=>{const{orientation:t}=e;return{...M9({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",_active:{transform:"translateX(-50%) scale(1.15)"}},horizontal:{top:"50%",transform:"translateY(-50%)",_active:{transform:"translateY(-50%) scale(1.15)"}}}),w:Sy.reference,h:Sy.reference,display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",outline:0,zIndex:1,borderRadius:"full",bg:"white",boxShadow:"base",border:"1px solid",borderColor:"transparent",transitionProperty:"transform",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{bg:"gray.300"}}},ise=e=>{const{colorScheme:t}=e;return{width:"inherit",height:"inherit",[bd.variable]:`colors.${t}.500`,_dark:{[bd.variable]:`colors.${t}.200`},bg:bd.reference}},ose=kw(e=>({container:tse(e),track:nse(e),thumb:rse(e),filledTrack:ise(e)})),ase=kw({container:{[Sy.variable]:"sizes.4",[wy.variable]:"sizes.1"}}),sse=kw({container:{[Sy.variable]:"sizes.3.5",[wy.variable]:"sizes.1"}}),lse=kw({container:{[Sy.variable]:"sizes.2.5",[wy.variable]:"sizes.0.5"}}),use={lg:ase,md:sse,sm:lse},cse=ese({baseStyle:ose,sizes:use,defaultProps:{size:"md",colorScheme:"blue"}}),xh=yi("spinner-size"),dse={width:[xh.reference],height:[xh.reference]},fse={xs:{[xh.variable]:"sizes.3"},sm:{[xh.variable]:"sizes.4"},md:{[xh.variable]:"sizes.6"},lg:{[xh.variable]:"sizes.8"},xl:{[xh.variable]:"sizes.12"}},hse={baseStyle:dse,sizes:fse,defaultProps:{size:"md"}},{defineMultiStyleConfig:pse,definePartsStyle:gF}=dr($ie.keys),gse={fontWeight:"medium"},mse={opacity:.8,marginBottom:"2"},vse={verticalAlign:"baseline",fontWeight:"semibold"},yse={marginEnd:1,w:"3.5",h:"3.5",verticalAlign:"middle"},bse=gF({container:{},label:gse,helpText:mse,number:vse,icon:yse}),xse={md:gF({label:{fontSize:"sm"},helpText:{fontSize:"sm"},number:{fontSize:"2xl"}})},Sse=pse({baseStyle:bse,sizes:xse,defaultProps:{size:"md"}}),F5=gn("kbd-bg"),wse={[F5.variable]:"colors.gray.100",_dark:{[F5.variable]:"colors.whiteAlpha.100"},bg:F5.reference,borderRadius:"md",borderWidth:"1px",borderBottomWidth:"3px",fontSize:"0.8em",fontWeight:"bold",lineHeight:"normal",px:"0.4em",whiteSpace:"nowrap"},Cse={baseStyle:wse},_se={transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}},kse={baseStyle:_se},{defineMultiStyleConfig:Ese,definePartsStyle:Pse}=dr(Mie.keys),Tse={marginEnd:"2",display:"inline",verticalAlign:"text-bottom"},Mse=Pse({icon:Tse}),Lse=Ese({baseStyle:Mse}),{defineMultiStyleConfig:Ase,definePartsStyle:Ose}=dr(Lie.keys),Rl=gn("menu-bg"),B5=gn("menu-shadow"),Rse={[Rl.variable]:"#fff",[B5.variable]:"shadows.sm",_dark:{[Rl.variable]:"colors.gray.700",[B5.variable]:"shadows.dark-lg"},color:"inherit",minW:"3xs",py:"2",zIndex:1,borderRadius:"md",borderWidth:"1px",bg:Rl.reference,boxShadow:B5.reference},Ise={py:"1.5",px:"3",transitionProperty:"background",transitionDuration:"ultra-fast",transitionTimingFunction:"ease-in",_focus:{[Rl.variable]:"colors.gray.100",_dark:{[Rl.variable]:"colors.whiteAlpha.100"}},_active:{[Rl.variable]:"colors.gray.200",_dark:{[Rl.variable]:"colors.whiteAlpha.200"}},_expanded:{[Rl.variable]:"colors.gray.100",_dark:{[Rl.variable]:"colors.whiteAlpha.100"}},_disabled:{opacity:.4,cursor:"not-allowed"},bg:Rl.reference},Dse={mx:4,my:2,fontWeight:"semibold",fontSize:"sm"},jse={opacity:.6},Nse={border:0,borderBottom:"1px solid",borderColor:"inherit",my:"2",opacity:.6},$se={transitionProperty:"common",transitionDuration:"normal"},Fse=Ose({button:$se,list:Rse,item:Ise,groupTitle:Dse,command:jse,divider:Nse}),Bse=Ase({baseStyle:Fse}),{defineMultiStyleConfig:zse,definePartsStyle:v_}=dr(Aie.keys),Hse={bg:"blackAlpha.600",zIndex:"modal"},Wse=e=>{const{isCentered:t,scrollBehavior:n}=e;return{display:"flex",zIndex:"modal",justifyContent:"center",alignItems:t?"center":"flex-start",overflow:n==="inside"?"hidden":"auto",overscrollBehaviorY:"none"}},Use=e=>{const{scrollBehavior:t}=e;return{borderRadius:"md",bg:wt("white","gray.700")(e),color:"inherit",my:"16",zIndex:"modal",maxH:t==="inside"?"calc(100% - 7.5rem)":void 0,boxShadow:wt("lg","dark-lg")(e)}},Vse={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Gse={position:"absolute",top:"2",insetEnd:"3"},qse=e=>{const{scrollBehavior:t}=e;return{px:"6",py:"2",flex:"1",overflow:t==="inside"?"auto":void 0}},Kse={px:"6",py:"4"},Yse=v_(e=>({overlay:Hse,dialogContainer:Eo(Wse,e),dialog:Eo(Use,e),header:Vse,closeButton:Gse,body:Eo(qse,e),footer:Kse}));function js(e){return v_(e==="full"?{dialog:{maxW:"100vw",minH:"$100vh",my:"0",borderRadius:"0"}}:{dialog:{maxW:e}})}var Xse={xs:js("xs"),sm:js("sm"),md:js("md"),lg:js("lg"),xl:js("xl"),"2xl":js("2xl"),"3xl":js("3xl"),"4xl":js("4xl"),"5xl":js("5xl"),"6xl":js("6xl"),full:js("full")},Zse=zse({baseStyle:Yse,sizes:Xse,defaultProps:{size:"md"}}),{defineMultiStyleConfig:Qse,definePartsStyle:mF}=dr(Oie.keys),A9=yi("number-input-stepper-width"),vF=yi("number-input-input-padding"),Jse=Nu(A9).add("0.5rem").toString(),z5=yi("number-input-bg"),H5=yi("number-input-color"),W5=yi("number-input-border-color"),ele={[A9.variable]:"sizes.6",[vF.variable]:Jse},tle=e=>{var t,n;return(n=(t=Eo(xn.baseStyle,e))==null?void 0:t.field)!=null?n:{}},nle={width:A9.reference},rle={borderStart:"1px solid",borderStartColor:W5.reference,color:H5.reference,bg:z5.reference,[H5.variable]:"colors.chakra-body-text",[W5.variable]:"colors.chakra-border-color",_dark:{[H5.variable]:"colors.whiteAlpha.800",[W5.variable]:"colors.whiteAlpha.300"},_active:{[z5.variable]:"colors.gray.200",_dark:{[z5.variable]:"colors.whiteAlpha.300"}},_disabled:{opacity:.4,cursor:"not-allowed"}},ile=mF(e=>{var t;return{root:ele,field:(t=Eo(tle,e))!=null?t:{},stepperGroup:nle,stepper:rle}});function Fb(e){var t,n,r;const i=(t=xn.sizes)==null?void 0:t[e],o={lg:"md",md:"md",sm:"sm",xs:"sm"},a=(r=(n=i.field)==null?void 0:n.fontSize)!=null?r:"md",s=cF.fontSizes[a];return mF({field:{...i.field,paddingInlineEnd:vF.reference,verticalAlign:"top"},stepper:{fontSize:Nu(s).multiply(.75).toString(),_first:{borderTopEndRadius:o[e]},_last:{borderBottomEndRadius:o[e],mt:"-1px",borderTopWidth:1}}})}var ole={xs:Fb("xs"),sm:Fb("sm"),md:Fb("md"),lg:Fb("lg")},ale=Qse({baseStyle:ile,sizes:ole,variants:xn.variants,defaultProps:xn.defaultProps}),xL,sle={...(xL=xn.baseStyle)==null?void 0:xL.field,textAlign:"center"},lle={lg:{fontSize:"lg",w:12,h:12,borderRadius:"md"},md:{fontSize:"md",w:10,h:10,borderRadius:"md"},sm:{fontSize:"sm",w:8,h:8,borderRadius:"sm"},xs:{fontSize:"xs",w:6,h:6,borderRadius:"sm"}},SL,wL,ule={outline:e=>{var t,n,r;return(r=(n=Eo((t=xn.variants)==null?void 0:t.outline,e))==null?void 0:n.field)!=null?r:{}},flushed:e=>{var t,n,r;return(r=(n=Eo((t=xn.variants)==null?void 0:t.flushed,e))==null?void 0:n.field)!=null?r:{}},filled:e=>{var t,n,r;return(r=(n=Eo((t=xn.variants)==null?void 0:t.filled,e))==null?void 0:n.field)!=null?r:{}},unstyled:(wL=(SL=xn.variants)==null?void 0:SL.unstyled.field)!=null?wL:{}},cle={baseStyle:sle,sizes:lle,variants:ule,defaultProps:xn.defaultProps},{defineMultiStyleConfig:dle,definePartsStyle:fle}=dr(Rie.keys),Bb=yi("popper-bg"),hle=yi("popper-arrow-bg"),CL=yi("popper-arrow-shadow-color"),ple={zIndex:10},gle={[Bb.variable]:"colors.white",bg:Bb.reference,[hle.variable]:Bb.reference,[CL.variable]:"colors.gray.200",_dark:{[Bb.variable]:"colors.gray.700",[CL.variable]:"colors.whiteAlpha.300"},width:"xs",border:"1px solid",borderColor:"inherit",borderRadius:"md",boxShadow:"sm",zIndex:"inherit",_focusVisible:{outline:0,boxShadow:"outline"}},mle={px:3,py:2,borderBottomWidth:"1px"},vle={px:3,py:2},yle={px:3,py:2,borderTopWidth:"1px"},ble={position:"absolute",borderRadius:"md",top:1,insetEnd:2,padding:2},xle=fle({popper:ple,content:gle,header:mle,body:vle,footer:yle,closeButton:ble}),Sle=dle({baseStyle:xle}),{definePartsStyle:y_,defineMultiStyleConfig:wle}=dr(_ie.keys),U5=gn("drawer-bg"),V5=gn("drawer-box-shadow");function bg(e){return y_(e==="full"?{dialog:{maxW:"100vw",h:"100vh"}}:{dialog:{maxW:e}})}var Cle={bg:"blackAlpha.600",zIndex:"overlay"},_le={display:"flex",zIndex:"modal",justifyContent:"center"},kle=e=>{const{isFullHeight:t}=e;return{...t&&{height:"100vh"},zIndex:"modal",maxH:"100vh",color:"inherit",[U5.variable]:"colors.white",[V5.variable]:"shadows.lg",_dark:{[U5.variable]:"colors.gray.700",[V5.variable]:"shadows.dark-lg"},bg:U5.reference,boxShadow:V5.reference}},Ele={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Ple={position:"absolute",top:"2",insetEnd:"3"},Tle={px:"6",py:"2",flex:"1",overflow:"auto"},Mle={px:"6",py:"4"},Lle=y_(e=>({overlay:Cle,dialogContainer:_le,dialog:Eo(kle,e),header:Ele,closeButton:Ple,body:Tle,footer:Mle})),Ale={xs:bg("xs"),sm:bg("md"),md:bg("lg"),lg:bg("2xl"),xl:bg("4xl"),full:bg("full")},Ole=wle({baseStyle:Lle,sizes:Ale,defaultProps:{size:"xs"}}),{definePartsStyle:Rle,defineMultiStyleConfig:Ile}=dr(kie.keys),Dle={borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal"},jle={borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},Nle={borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},$le=Rle({preview:Dle,input:jle,textarea:Nle}),Fle=Ile({baseStyle:$le}),{definePartsStyle:Ble,defineMultiStyleConfig:zle}=dr(Eie.keys),xm=gn("form-control-color"),Hle={marginStart:"1",[xm.variable]:"colors.red.500",_dark:{[xm.variable]:"colors.red.300"},color:xm.reference},Wle={mt:"2",[xm.variable]:"colors.gray.600",_dark:{[xm.variable]:"colors.whiteAlpha.600"},color:xm.reference,lineHeight:"normal",fontSize:"sm"},Ule=Ble({container:{width:"100%",position:"relative"},requiredIndicator:Hle,helperText:Wle}),Vle=zle({baseStyle:Ule}),{definePartsStyle:Gle,defineMultiStyleConfig:qle}=dr(Pie.keys),Sm=gn("form-error-color"),Kle={[Sm.variable]:"colors.red.500",_dark:{[Sm.variable]:"colors.red.300"},color:Sm.reference,mt:"2",fontSize:"sm",lineHeight:"normal"},Yle={marginEnd:"0.5em",[Sm.variable]:"colors.red.500",_dark:{[Sm.variable]:"colors.red.300"},color:Sm.reference},Xle=Gle({text:Kle,icon:Yle}),Zle=qle({baseStyle:Xle}),Qle={fontSize:"md",marginEnd:"3",mb:"2",fontWeight:"medium",transitionProperty:"common",transitionDuration:"normal",opacity:1,_disabled:{opacity:.4}},Jle={baseStyle:Qle},eue={fontFamily:"heading",fontWeight:"bold"},tue={"4xl":{fontSize:["6xl",null,"7xl"],lineHeight:1},"3xl":{fontSize:["5xl",null,"6xl"],lineHeight:1},"2xl":{fontSize:["4xl",null,"5xl"],lineHeight:[1.2,null,1]},xl:{fontSize:["3xl",null,"4xl"],lineHeight:[1.33,null,1.2]},lg:{fontSize:["2xl",null,"3xl"],lineHeight:[1.33,null,1.2]},md:{fontSize:"xl",lineHeight:1.2},sm:{fontSize:"md",lineHeight:1.2},xs:{fontSize:"sm",lineHeight:1.2}},nue={baseStyle:eue,sizes:tue,defaultProps:{size:"xl"}},{defineMultiStyleConfig:rue,definePartsStyle:iue}=dr(wie.keys),oue={transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}},aue=iue({link:oue}),sue=rue({baseStyle:aue}),lue={lineHeight:"1.2",borderRadius:"md",fontWeight:"semibold",transitionProperty:"common",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{_disabled:{bg:"initial"}}},yF=e=>{const{colorScheme:t,theme:n}=e;if(t==="gray")return{color:wt("inherit","whiteAlpha.900")(e),_hover:{bg:wt("gray.100","whiteAlpha.200")(e)},_active:{bg:wt("gray.200","whiteAlpha.300")(e)}};const r=Um(`${t}.200`,.12)(n),i=Um(`${t}.200`,.24)(n);return{color:wt(`${t}.600`,`${t}.200`)(e),bg:"transparent",_hover:{bg:wt(`${t}.50`,r)(e)},_active:{bg:wt(`${t}.100`,i)(e)}}},uue=e=>{const{colorScheme:t}=e,n=wt("gray.200","whiteAlpha.300")(e);return{border:"1px solid",borderColor:t==="gray"?n:"currentColor",".chakra-button__group[data-attached][data-orientation=horizontal] > &:not(:last-of-type)":{marginEnd:"-1px"},".chakra-button__group[data-attached][data-orientation=vertical] > &:not(:last-of-type)":{marginBottom:"-1px"},...Eo(yF,e)}},cue={yellow:{bg:"yellow.400",color:"black",hoverBg:"yellow.500",activeBg:"yellow.600"},cyan:{bg:"cyan.400",color:"black",hoverBg:"cyan.500",activeBg:"cyan.600"}},due=e=>{var t;const{colorScheme:n}=e;if(n==="gray"){const l=wt("gray.100","whiteAlpha.200")(e);return{bg:l,_hover:{bg:wt("gray.200","whiteAlpha.300")(e),_disabled:{bg:l}},_active:{bg:wt("gray.300","whiteAlpha.400")(e)}}}const{bg:r=`${n}.500`,color:i="white",hoverBg:o=`${n}.600`,activeBg:a=`${n}.700`}=(t=cue[n])!=null?t:{},s=wt(r,`${n}.200`)(e);return{bg:s,color:wt(i,"gray.800")(e),_hover:{bg:wt(o,`${n}.300`)(e),_disabled:{bg:s}},_active:{bg:wt(a,`${n}.400`)(e)}}},fue=e=>{const{colorScheme:t}=e;return{padding:0,height:"auto",lineHeight:"normal",verticalAlign:"baseline",color:wt(`${t}.500`,`${t}.200`)(e),_hover:{textDecoration:"underline",_disabled:{textDecoration:"none"}},_active:{color:wt(`${t}.700`,`${t}.500`)(e)}}},hue={bg:"none",color:"inherit",display:"inline",lineHeight:"inherit",m:"0",p:"0"},pue={ghost:yF,outline:uue,solid:due,link:fue,unstyled:hue},gue={lg:{h:"12",minW:"12",fontSize:"lg",px:"6"},md:{h:"10",minW:"10",fontSize:"md",px:"4"},sm:{h:"8",minW:"8",fontSize:"sm",px:"3"},xs:{h:"6",minW:"6",fontSize:"xs",px:"2"}},mue={baseStyle:lue,variants:pue,sizes:gue,defaultProps:{variant:"solid",size:"md",colorScheme:"gray"}},{definePartsStyle:Rh,defineMultiStyleConfig:vue}=dr(Wie.keys),qS=gn("card-bg"),Vu=gn("card-padding"),bF=gn("card-shadow"),Kx=gn("card-radius"),xF=gn("card-border-width","0"),SF=gn("card-border-color"),yue=Rh({container:{[qS.variable]:"colors.chakra-body-bg",backgroundColor:qS.reference,boxShadow:bF.reference,borderRadius:Kx.reference,color:"chakra-body-text",borderWidth:xF.reference,borderColor:SF.reference},body:{padding:Vu.reference,flex:"1 1 0%"},header:{padding:Vu.reference},footer:{padding:Vu.reference}}),bue={sm:Rh({container:{[Kx.variable]:"radii.base",[Vu.variable]:"space.3"}}),md:Rh({container:{[Kx.variable]:"radii.md",[Vu.variable]:"space.5"}}),lg:Rh({container:{[Kx.variable]:"radii.xl",[Vu.variable]:"space.7"}})},xue={elevated:Rh({container:{[bF.variable]:"shadows.base",_dark:{[qS.variable]:"colors.gray.700"}}}),outline:Rh({container:{[xF.variable]:"1px",[SF.variable]:"colors.chakra-border-color"}}),filled:Rh({container:{[qS.variable]:"colors.chakra-subtle-bg"}}),unstyled:{body:{[Vu.variable]:0},header:{[Vu.variable]:0},footer:{[Vu.variable]:0}}},Sue=vue({baseStyle:yue,variants:xue,sizes:bue,defaultProps:{variant:"elevated",size:"md"}}),j1=yi("close-button-size"),zv=yi("close-button-bg"),wue={w:[j1.reference],h:[j1.reference],borderRadius:"md",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{[zv.variable]:"colors.blackAlpha.100",_dark:{[zv.variable]:"colors.whiteAlpha.100"}},_active:{[zv.variable]:"colors.blackAlpha.200",_dark:{[zv.variable]:"colors.whiteAlpha.200"}},_focusVisible:{boxShadow:"outline"},bg:zv.reference},Cue={lg:{[j1.variable]:"sizes.10",fontSize:"md"},md:{[j1.variable]:"sizes.8",fontSize:"xs"},sm:{[j1.variable]:"sizes.6",fontSize:"2xs"}},_ue={baseStyle:wue,sizes:Cue,defaultProps:{size:"md"}},{variants:kue,defaultProps:Eue}=I1,Pue={fontFamily:"mono",fontSize:"sm",px:"0.2em",borderRadius:"sm"},Tue={baseStyle:Pue,variants:kue,defaultProps:Eue},Mue={w:"100%",mx:"auto",maxW:"prose",px:"4"},Lue={baseStyle:Mue},Aue={opacity:.6,borderColor:"inherit"},Oue={borderStyle:"solid"},Rue={borderStyle:"dashed"},Iue={solid:Oue,dashed:Rue},Due={baseStyle:Aue,variants:Iue,defaultProps:{variant:"solid"}},{definePartsStyle:jue,defineMultiStyleConfig:Nue}=dr(bie.keys),$ue={borderTopWidth:"1px",borderColor:"inherit",_last:{borderBottomWidth:"1px"}},Fue={transitionProperty:"common",transitionDuration:"normal",fontSize:"md",_focusVisible:{boxShadow:"outline"},_hover:{bg:"blackAlpha.50"},_disabled:{opacity:.4,cursor:"not-allowed"},px:"4",py:"2"},Bue={pt:"2",px:"4",pb:"5"},zue={fontSize:"1.25em"},Hue=jue({container:$ue,button:Fue,panel:Bue,icon:zue}),Wue=Nue({baseStyle:Hue}),{definePartsStyle:e2,defineMultiStyleConfig:Uue}=dr(xie.keys),Ta=gn("alert-fg"),nc=gn("alert-bg"),Vue=e2({container:{bg:nc.reference,px:"4",py:"3"},title:{fontWeight:"bold",lineHeight:"6",marginEnd:"2"},description:{lineHeight:"6"},icon:{color:Ta.reference,flexShrink:0,marginEnd:"3",w:"5",h:"6"},spinner:{color:Ta.reference,flexShrink:0,marginEnd:"3",w:"5",h:"5"}});function O9(e){const{theme:t,colorScheme:n}=e,r=Um(`${n}.200`,.16)(t);return{light:`colors.${n}.100`,dark:r}}var Gue=e2(e=>{const{colorScheme:t}=e,n=O9(e);return{container:{[Ta.variable]:`colors.${t}.500`,[nc.variable]:n.light,_dark:{[Ta.variable]:`colors.${t}.200`,[nc.variable]:n.dark}}}}),que=e2(e=>{const{colorScheme:t}=e,n=O9(e);return{container:{[Ta.variable]:`colors.${t}.500`,[nc.variable]:n.light,_dark:{[Ta.variable]:`colors.${t}.200`,[nc.variable]:n.dark},paddingStart:"3",borderStartWidth:"4px",borderStartColor:Ta.reference}}}),Kue=e2(e=>{const{colorScheme:t}=e,n=O9(e);return{container:{[Ta.variable]:`colors.${t}.500`,[nc.variable]:n.light,_dark:{[Ta.variable]:`colors.${t}.200`,[nc.variable]:n.dark},pt:"2",borderTopWidth:"4px",borderTopColor:Ta.reference}}}),Yue=e2(e=>{const{colorScheme:t}=e;return{container:{[Ta.variable]:"colors.white",[nc.variable]:`colors.${t}.500`,_dark:{[Ta.variable]:"colors.gray.900",[nc.variable]:`colors.${t}.200`},color:Ta.reference}}}),Xue={subtle:Gue,"left-accent":que,"top-accent":Kue,solid:Yue},Zue=Uue({baseStyle:Vue,variants:Xue,defaultProps:{variant:"subtle",colorScheme:"blue"}}),{definePartsStyle:wF,defineMultiStyleConfig:Que}=dr(Sie.keys),wm=gn("avatar-border-color"),G5=gn("avatar-bg"),Jue={borderRadius:"full",border:"0.2em solid",[wm.variable]:"white",_dark:{[wm.variable]:"colors.gray.800"},borderColor:wm.reference},ece={[G5.variable]:"colors.gray.200",_dark:{[G5.variable]:"colors.whiteAlpha.400"},bgColor:G5.reference},_L=gn("avatar-background"),tce=e=>{const{name:t,theme:n}=e,r=t?uoe({string:t}):"colors.gray.400",i=soe(r)(n);let o="white";return i||(o="gray.800"),{bg:_L.reference,"&:not([data-loaded])":{[_L.variable]:r},color:o,[wm.variable]:"colors.white",_dark:{[wm.variable]:"colors.gray.800"},borderColor:wm.reference,verticalAlign:"top"}},nce=wF(e=>({badge:Eo(Jue,e),excessLabel:Eo(ece,e),container:Eo(tce,e)}));function ld(e){const t=e!=="100%"?fF[e]:void 0;return wF({container:{width:e,height:e,fontSize:`calc(${t??e} / 2.5)`},excessLabel:{width:e,height:e},label:{fontSize:`calc(${t??e} / 2.5)`,lineHeight:e!=="100%"?t??e:void 0}})}var rce={"2xs":ld(4),xs:ld(6),sm:ld(8),md:ld(12),lg:ld(16),xl:ld(24),"2xl":ld(32),full:ld("100%")},ice=Que({baseStyle:nce,sizes:rce,defaultProps:{size:"md"}}),oce={Accordion:Wue,Alert:Zue,Avatar:ice,Badge:I1,Breadcrumb:sue,Button:mue,Checkbox:GS,CloseButton:_ue,Code:Tue,Container:Lue,Divider:Due,Drawer:Ole,Editable:Fle,Form:Vle,FormError:Zle,FormLabel:Jle,Heading:nue,Input:xn,Kbd:Cse,Link:kse,List:Lse,Menu:Bse,Modal:Zse,NumberInput:ale,PinInput:cle,Popover:Sle,Progress:Mae,Radio:Hae,Select:Yae,Skeleton:Zae,SkipLink:Jae,Slider:cse,Spinner:hse,Stat:Sse,Switch:koe,Table:Ooe,Tabs:qoe,Tag:aae,Textarea:yae,Tooltip:Sae,Card:Sue},ace={colors:{"chakra-body-text":{_light:"gray.800",_dark:"whiteAlpha.900"},"chakra-body-bg":{_light:"white",_dark:"gray.800"},"chakra-border-color":{_light:"gray.200",_dark:"whiteAlpha.300"},"chakra-subtle-bg":{_light:"gray.100",_dark:"gray.700"},"chakra-placeholder-color":{_light:"gray.500",_dark:"whiteAlpha.400"}}},sce={global:{body:{fontFamily:"body",color:"chakra-body-text",bg:"chakra-body-bg",transitionProperty:"background-color",transitionDuration:"normal",lineHeight:"base"},"*::placeholder":{color:"chakra-placeholder-color"},"*, *::before, &::after":{borderColor:"chakra-border-color",wordWrap:"break-word"}}},lce="ltr",uce={useSystemColorMode:!1,initialColorMode:"light",cssVarPrefix:"chakra"},cce={semanticTokens:ace,direction:lce,...yie,components:oce,styles:sce,config:uce};function dce(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}var fce=dce();function hce(e,t){const n={};return Object.keys(e).forEach(r=>{t.includes(r)||(n[r]=e[r])}),n}function pce(e,t,n,r){const i=typeof t=="string"?t.split("."):[t];for(r=0;r{const t=new WeakMap;return(r,i,o,a)=>{if(typeof r>"u")return e(r,i,o);t.has(r)||t.set(r,new Map);const s=t.get(r);if(s.has(i))return s.get(i);const l=e(r,i,o,a);return s.set(i,l),l}},CF=gce(pce);function _F(e,t){const n={};return Object.keys(e).forEach(r=>{const i=e[r];t(i,r,e)&&(n[r]=i)}),n}var kF=e=>_F(e,t=>t!=null);function mce(e){return typeof e=="function"}function EF(e,...t){return mce(e)?e(...t):e}function vce(...e){return function(n){e.some(r=>(r==null||r(n),n==null?void 0:n.defaultPrevented))}}const PF=1/60*1e3,yce=typeof performance<"u"?()=>performance.now():()=>Date.now(),TF=typeof window<"u"?e=>window.requestAnimationFrame(e):e=>setTimeout(()=>e(yce()),PF);function bce(e){let t=[],n=[],r=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(l,u=!1,d=!1)=>{const h=d&&i,m=h?t:n;return u&&a.add(l),m.indexOf(l)===-1&&(m.push(l),h&&i&&(r=t.length)),l},cancel:l=>{const u=n.indexOf(l);u!==-1&&n.splice(u,1),a.delete(l)},process:l=>{if(i){o=!0;return}if(i=!0,[t,n]=[n,t],n.length=0,r=t.length,r)for(let u=0;u(e[t]=bce(()=>Cy=!0),e),{}),Sce=t2.reduce((e,t)=>{const n=Ew[t];return e[t]=(r,i=!1,o=!1)=>(Cy||_ce(),n.schedule(r,i,o)),e},{}),wce=t2.reduce((e,t)=>(e[t]=Ew[t].cancel,e),{});t2.reduce((e,t)=>(e[t]=()=>Ew[t].process(Cm),e),{});const Cce=e=>Ew[e].process(Cm),MF=e=>{Cy=!1,Cm.delta=b_?PF:Math.max(Math.min(e-Cm.timestamp,xce),1),Cm.timestamp=e,x_=!0,t2.forEach(Cce),x_=!1,Cy&&(b_=!1,TF(MF))},_ce=()=>{Cy=!0,b_=!0,x_||TF(MF)},kL=()=>Cm;var kce=typeof Element<"u",Ece=typeof Map=="function",Pce=typeof Set=="function",Tce=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Yx(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var n,r,i;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Yx(e[r],t[r]))return!1;return!0}var o;if(Ece&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(o=e.entries();!(r=o.next()).done;)if(!t.has(r.value[0]))return!1;for(o=e.entries();!(r=o.next()).done;)if(!Yx(r.value[1],t.get(r.value[0])))return!1;return!0}if(Pce&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(o=e.entries();!(r=o.next()).done;)if(!t.has(r.value[0]))return!1;return!0}if(Tce&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,i[r]))return!1;if(kce&&e instanceof Element)return!1;for(r=n;r--!==0;)if(!((i[r]==="_owner"||i[r]==="__v"||i[r]==="__o")&&e.$$typeof)&&!Yx(e[i[r]],t[i[r]]))return!1;return!0}return e!==e&&t!==t}var Mce=function(t,n){try{return Yx(t,n)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}};function LF(e,t={}){var n;const{styleConfig:r,...i}=t,{theme:o,colorMode:a}=eF(),s=e?CF(o,`components.${e}`):void 0,l=r||s,u=Bl({theme:o,colorMode:a},(n=l==null?void 0:l.defaultProps)!=null?n:{},kF(hce(i,["children"]))),d=S.useRef({});if(l){const m=qre(l)(u);Mce(d.current,m)||(d.current=m)}return d.current}function au(e,t={}){return LF(e,t)}function Yi(e,t={}){return LF(e,t)}var Lce=new Set([...Dre,"textStyle","layerStyle","apply","noOfLines","focusBorderColor","errorBorderColor","as","__css","css","sx"]),Ace=new Set(["htmlWidth","htmlHeight","htmlSize","htmlTranslate"]);function Oce(e){return Ace.has(e)||!Lce.has(e)}function Rce(e){const t=Object.assign({},e);for(let n in t)t[n]===void 0&&delete t[n];return t}function Ice(e,...t){if(e==null)throw new TypeError("Cannot convert undefined or null to object");const n={...e};for(const r of t)if(r!=null)for(const i in r)Object.prototype.hasOwnProperty.call(r,i)&&(i in n&&delete n[i],n[i]=r[i]);return n}var Dce=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,jce=$j(function(e){return Dce.test(e)||e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)<91}),Nce=jce,$ce=function(t){return t!=="theme"},EL=function(t){return typeof t=="string"&&t.charCodeAt(0)>96?Nce:$ce},PL=function(t,n,r){var i;if(n){var o=n.shouldForwardProp;i=t.__emotion_forwardProp&&o?function(a){return t.__emotion_forwardProp(a)&&o(a)}:o}return typeof i!="function"&&r&&(i=t.__emotion_forwardProp),i},Fce=function(t){var n=t.cache,r=t.serialized,i=t.isStringTag;return Uj(n,r,i),lee(function(){return Vj(n,r,i)}),null},Bce=function e(t,n){var r=t.__emotion_real===t,i=r&&t.__emotion_base||t,o,a;n!==void 0&&(o=n.label,a=n.target);var s=PL(t,n,r),l=s||EL(i),u=!l("as");return function(){var d=arguments,h=r&&t.__emotion_styles!==void 0?t.__emotion_styles.slice(0):[];if(o!==void 0&&h.push("label:"+o+";"),d[0]==null||d[0].raw===void 0)h.push.apply(h,d);else{h.push(d[0][0]);for(var m=d.length,y=1;yt=>{const{theme:n,css:r,__css:i,sx:o,...a}=t,s=_F(a,(h,m)=>Nre(m)),l=EF(e,t),u=Ice({},i,l,kF(s),o),d=uF(u)(t.theme);return r?[d,r]:d};function q5(e,t){const{baseStyle:n,...r}=t??{};r.shouldForwardProp||(r.shouldForwardProp=Oce);const i=Wce({baseStyle:n}),o=Hce(e,r)(i);return Ke.forwardRef(function(l,u){const{colorMode:d,forced:h}=Qy();return Ke.createElement(o,{ref:u,"data-theme":h?d:void 0,...l})})}function Uce(){const e=new Map;return new Proxy(q5,{apply(t,n,r){return q5(...r)},get(t,n){return e.has(n)||e.set(n,q5(n)),e.get(n)}})}var Ne=Uce();function Ze(e){return S.forwardRef(e)}function Vce(e={}){const{strict:t=!0,errorMessage:n="useContext: `context` is undefined. Seems you forgot to wrap component within the Provider",name:r}=e,i=S.createContext(void 0);i.displayName=r;function o(){var a;const s=S.useContext(i);if(!s&&t){const l=new Error(n);throw l.name="ContextError",(a=Error.captureStackTrace)==null||a.call(Error,l,o),l}return s}return[i.Provider,o,i]}function Gce(e){const{cssVarsRoot:t,theme:n,children:r}=e,i=S.useMemo(()=>Rre(n),[n]);return g.jsxs(fee,{theme:i,children:[g.jsx(qce,{root:t}),r]})}function qce({root:e=":host, :root"}){const t=[e,"[data-theme]"].join(",");return g.jsx(ow,{styles:n=>({[t]:n.__cssVars})})}Vce({name:"StylesContext",errorMessage:"useStyles: `styles` is undefined. Seems you forgot to wrap the components in `` "});function Kce(){const{colorMode:e}=Qy();return g.jsx(ow,{styles:t=>{const n=CF(t,"styles.global"),r=EF(n,{theme:t,colorMode:e});return r?uF(r)(t):void 0}})}var AF=S.createContext({getDocument(){return document},getWindow(){return window}});AF.displayName="EnvironmentContext";function OF(e){const{children:t,environment:n,disabled:r}=e,i=S.useRef(null),o=S.useMemo(()=>n||{getDocument:()=>{var s,l;return(l=(s=i.current)==null?void 0:s.ownerDocument)!=null?l:document},getWindow:()=>{var s,l;return(l=(s=i.current)==null?void 0:s.ownerDocument.defaultView)!=null?l:window}},[n]),a=!r||!n;return g.jsxs(AF.Provider,{value:o,children:[t,a&&g.jsx("span",{id:"__chakra_env",hidden:!0,ref:i})]})}OF.displayName="EnvironmentProvider";var Yce=e=>{const{children:t,colorModeManager:n,portalZIndex:r,resetCSS:i=!0,theme:o={},environment:a,cssVarsRoot:s,disableEnvironment:l}=e,u=g.jsx(OF,{environment:a,disabled:l,children:t});return g.jsx(Gce,{theme:o,cssVarsRoot:s,children:g.jsxs(J$,{colorModeManager:n,options:o.config,children:[i?g.jsx(gee,{}):g.jsx(pee,{}),g.jsx(Kce,{}),r?g.jsx(Zj,{zIndex:r,children:u}):u]})})},Xce=(e,t)=>e.find(n=>n.id===t);function ML(e,t){const n=RF(e,t),r=n?e[n].findIndex(i=>i.id===t):-1;return{position:n,index:r}}function RF(e,t){for(const[n,r]of Object.entries(e))if(Xce(r,t))return n}function Zce(e){const t=e.includes("right"),n=e.includes("left");let r="center";return t&&(r="flex-end"),n&&(r="flex-start"),{display:"flex",flexDirection:"column",alignItems:r}}function Qce(e){const n=e==="top"||e==="bottom"?"0 auto":void 0,r=e.includes("top")?"env(safe-area-inset-top, 0px)":void 0,i=e.includes("bottom")?"env(safe-area-inset-bottom, 0px)":void 0,o=e.includes("left")?void 0:"env(safe-area-inset-right, 0px)",a=e.includes("right")?void 0:"env(safe-area-inset-left, 0px)";return{position:"fixed",zIndex:5500,pointerEvents:"none",display:"flex",flexDirection:"column",margin:n,top:r,bottom:i,right:o,left:a}}function Qr(e,t=[]){const n=S.useRef(e);return S.useEffect(()=>{n.current=e}),S.useCallback((...r)=>{var i;return(i=n.current)==null?void 0:i.call(n,...r)},t)}function Jce(e,t){const n=Qr(e);S.useEffect(()=>{if(t==null)return;let r=null;return r=window.setTimeout(()=>{n()},t),()=>{r&&window.clearTimeout(r)}},[t,n])}function rc(e,t){const n=S.useRef(!1),r=S.useRef(!1);S.useEffect(()=>{if(n.current&&r.current)return e();r.current=!0},t),S.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[])}const IF=S.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"}),Pw=S.createContext({});function ede(){return S.useContext(Pw).visualElement}const n2=S.createContext(null),Tw=typeof document<"u",YS=Tw?S.useLayoutEffect:S.useEffect,DF=S.createContext({strict:!1});function tde(e,t,n,r){const i=ede(),o=S.useContext(DF),a=S.useContext(n2),s=S.useContext(IF).reducedMotion,l=S.useRef();r=r||o.renderer,!l.current&&r&&(l.current=r(e,{visualState:t,parent:i,props:n,presenceContext:a,blockInitialAnimation:a?a.initial===!1:!1,reducedMotionConfig:s}));const u=l.current;return S.useInsertionEffect(()=>{u&&u.update(n,a)}),YS(()=>{u&&u.render()}),S.useEffect(()=>{u&&u.updateFeatures()}),(window.HandoffAppearAnimations?YS:S.useEffect)(()=>{u&&u.animationState&&u.animationState.animateChanges()}),u}function Qg(e){return typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function nde(e,t,n){return S.useCallback(r=>{r&&e.mount&&e.mount(r),t&&(r?t.mount(r):t.unmount()),n&&(typeof n=="function"?n(r):Qg(n)&&(n.current=r))},[t])}function _y(e){return typeof e=="string"||Array.isArray(e)}function Mw(e){return typeof e=="object"&&typeof e.start=="function"}const rde=["initial","animate","exit","whileHover","whileDrag","whileTap","whileFocus","whileInView"];function Lw(e){return Mw(e.animate)||rde.some(t=>_y(e[t]))}function jF(e){return Boolean(Lw(e)||e.variants)}function ide(e,t){if(Lw(e)){const{initial:n,animate:r}=e;return{initial:n===!1||_y(n)?n:void 0,animate:_y(r)?r:void 0}}return e.inherit!==!1?t:{}}function ode(e){const{initial:t,animate:n}=ide(e,S.useContext(Pw));return S.useMemo(()=>({initial:t,animate:n}),[LL(t),LL(n)])}function LL(e){return Array.isArray(e)?e.join(" "):e}const AL={animation:["animate","exit","variants","whileHover","whileTap","whileFocus","whileDrag","whileInView"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},ky={};for(const e in AL)ky[e]={isEnabled:t=>AL[e].some(n=>!!t[n])};function ade(e){for(const t in e)ky[t]={...ky[t],...e[t]}}function R9(e){const t=S.useRef(null);return t.current===null&&(t.current=e()),t.current}const N1={hasAnimatedSinceResize:!0,hasEverUpdated:!1};let sde=1;function lde(){return R9(()=>{if(N1.hasEverUpdated)return sde++})}const I9=S.createContext({}),NF=S.createContext({}),ude=Symbol.for("motionComponentSymbol");function cde({preloadedFeatures:e,createVisualElement:t,useRender:n,useVisualState:r,Component:i}){e&&ade(e);function o(s,l){let u;const d={...S.useContext(IF),...s,layoutId:dde(s)},{isStatic:h}=d,m=ode(s),y=h?void 0:lde(),b=r(s,h);if(!h&&Tw){m.visualElement=tde(i,b,d,t);const w=S.useContext(NF),E=S.useContext(DF).strict;m.visualElement&&(u=m.visualElement.loadFeatures(d,E,e,y,w))}return S.createElement(Pw.Provider,{value:m},u&&m.visualElement?S.createElement(u,{visualElement:m.visualElement,...d}):null,n(i,s,y,nde(b,m.visualElement,l),b,h,m.visualElement))}const a=S.forwardRef(o);return a[ude]=i,a}function dde({layoutId:e}){const t=S.useContext(I9).id;return t&&e!==void 0?t+"-"+e:e}function fde(e){function t(r,i={}){return cde(e(r,i))}if(typeof Proxy>"u")return t;const n=new Map;return new Proxy(t,{get:(r,i)=>(n.has(i)||n.set(i,t(i)),n.get(i))})}const hde=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function D9(e){return typeof e!="string"||e.includes("-")?!1:!!(hde.indexOf(e)>-1||/[A-Z]/.test(e))}const XS={};function pde(e){Object.assign(XS,e)}const Aw=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],d0=new Set(Aw);function $F(e,{layout:t,layoutId:n}){return d0.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!XS[e]||e==="opacity")}const ta=e=>Boolean(e&&e.getVelocity),gde={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},mde=Aw.length;function vde(e,{enableHardwareAcceleration:t=!0,allowTransformNone:n=!0},r,i){let o="";for(let a=0;at&&typeof e=="number"?t.transform(e):e,Vm=(e,t,n)=>Math.min(Math.max(n,e),t),np={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},$1={...np,transform:e=>Vm(0,1,e)},zb={...np,default:1},F1=e=>Math.round(e*1e5)/1e5,Ey=/(-)?([\d]*\.?[\d])+/g,S_=/(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,bde=/^(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function r2(e){return typeof e=="string"}const i2=e=>({test:t=>r2(t)&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),cd=i2("deg"),Yl=i2("%"),Pt=i2("px"),xde=i2("vh"),Sde=i2("vw"),OL={...Yl,parse:e=>Yl.parse(e)/100,transform:e=>Yl.transform(e*100)},RL={...np,transform:Math.round},BF={borderWidth:Pt,borderTopWidth:Pt,borderRightWidth:Pt,borderBottomWidth:Pt,borderLeftWidth:Pt,borderRadius:Pt,radius:Pt,borderTopLeftRadius:Pt,borderTopRightRadius:Pt,borderBottomRightRadius:Pt,borderBottomLeftRadius:Pt,width:Pt,maxWidth:Pt,height:Pt,maxHeight:Pt,size:Pt,top:Pt,right:Pt,bottom:Pt,left:Pt,padding:Pt,paddingTop:Pt,paddingRight:Pt,paddingBottom:Pt,paddingLeft:Pt,margin:Pt,marginTop:Pt,marginRight:Pt,marginBottom:Pt,marginLeft:Pt,rotate:cd,rotateX:cd,rotateY:cd,rotateZ:cd,scale:zb,scaleX:zb,scaleY:zb,scaleZ:zb,skew:cd,skewX:cd,skewY:cd,distance:Pt,translateX:Pt,translateY:Pt,translateZ:Pt,x:Pt,y:Pt,z:Pt,perspective:Pt,transformPerspective:Pt,opacity:$1,originX:OL,originY:OL,originZ:Pt,zIndex:RL,fillOpacity:$1,strokeOpacity:$1,numOctaves:RL};function j9(e,t,n,r){const{style:i,vars:o,transform:a,transformOrigin:s}=e;let l=!1,u=!1,d=!0;for(const h in t){const m=t[h];if(FF(h)){o[h]=m;continue}const y=BF[h],b=yde(m,y);if(d0.has(h)){if(l=!0,a[h]=b,!d)continue;m!==(y.default||0)&&(d=!1)}else h.startsWith("origin")?(u=!0,s[h]=b):i[h]=b}if(t.transform||(l||r?i.transform=vde(e.transform,n,d,r):i.transform&&(i.transform="none")),u){const{originX:h="50%",originY:m="50%",originZ:y=0}=s;i.transformOrigin=`${h} ${m} ${y}`}}const N9=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function zF(e,t,n){for(const r in t)!ta(t[r])&&!$F(r,n)&&(e[r]=t[r])}function wde({transformTemplate:e},t,n){return S.useMemo(()=>{const r=N9();return j9(r,t,{enableHardwareAcceleration:!n},e),Object.assign({},r.vars,r.style)},[t])}function Cde(e,t,n){const r=e.style||{},i={};return zF(i,r,e),Object.assign(i,wde(e,t,n)),e.transformValues?e.transformValues(i):i}function _de(e,t,n){const r={},i=Cde(e,t,n);return e.drag&&e.dragListener!==!1&&(r.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(r.tabIndex=0),r.style=i,r}const kde=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","transformValues","custom","inherit","onLayoutAnimationStart","onLayoutAnimationComplete","onLayoutMeasure","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","ignoreStrict","viewport"]);function ZS(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||kde.has(e)}let HF=e=>!ZS(e);function Ede(e){e&&(HF=t=>t.startsWith("on")?!ZS(t):e(t))}try{Ede(require("@emotion/is-prop-valid").default)}catch{}function Pde(e,t,n){const r={};for(const i in e)i==="values"&&typeof e.values=="object"||(HF(i)||n===!0&&ZS(i)||!t&&!ZS(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}function IL(e,t,n){return typeof e=="string"?e:Pt.transform(t+n*e)}function Tde(e,t,n){const r=IL(t,e.x,e.width),i=IL(n,e.y,e.height);return`${r} ${i}`}const Mde={offset:"stroke-dashoffset",array:"stroke-dasharray"},Lde={offset:"strokeDashoffset",array:"strokeDasharray"};function Ade(e,t,n=1,r=0,i=!0){e.pathLength=1;const o=i?Mde:Lde;e[o.offset]=Pt.transform(-r);const a=Pt.transform(t),s=Pt.transform(n);e[o.array]=`${a} ${s}`}function $9(e,{attrX:t,attrY:n,originX:r,originY:i,pathLength:o,pathSpacing:a=1,pathOffset:s=0,...l},u,d,h){if(j9(e,l,u,h),d){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:m,style:y,dimensions:b}=e;m.transform&&(b&&(y.transform=m.transform),delete m.transform),b&&(r!==void 0||i!==void 0||y.transform)&&(y.transformOrigin=Tde(b,r!==void 0?r:.5,i!==void 0?i:.5)),t!==void 0&&(m.x=t),n!==void 0&&(m.y=n),o!==void 0&&Ade(m,o,a,s,!1)}const WF=()=>({...N9(),attrs:{}}),F9=e=>typeof e=="string"&&e.toLowerCase()==="svg";function Ode(e,t,n,r){const i=S.useMemo(()=>{const o=WF();return $9(o,t,{enableHardwareAcceleration:!1},F9(r),e.transformTemplate),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};zF(o,e.style,e),i.style={...o,...i.style}}return i}function Rde(e=!1){return(n,r,i,o,{latestValues:a},s)=>{const u=(D9(n)?Ode:_de)(r,a,s,n),h={...Pde(r,typeof n=="string",e),...u,ref:o},{children:m}=r,y=S.useMemo(()=>ta(m)?m.get():m,[m]);return i&&(h["data-projection-id"]=i),S.createElement(n,{...h,children:y})}}const B9=e=>e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();function UF(e,{style:t,vars:n},r,i){Object.assign(e.style,t,i&&i.getProjectionStyles(r));for(const o in n)e.style.setProperty(o,n[o])}const VF=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function GF(e,t,n,r){UF(e,t,void 0,r);for(const i in t.attrs)e.setAttribute(VF.has(i)?i:B9(i),t.attrs[i])}function z9(e,t){const{style:n}=e,r={};for(const i in n)(ta(n[i])||t.style&&ta(t.style[i])||$F(i,e))&&(r[i]=n[i]);return r}function qF(e,t){const n=z9(e,t);for(const r in e)if(ta(e[r])||ta(t[r])){const i=r==="x"||r==="y"?"attr"+r.toUpperCase():r;n[i]=e[r]}return n}function H9(e,t,n,r={},i={}){return typeof t=="function"&&(t=t(n!==void 0?n:e.custom,r,i)),typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"&&(t=t(n!==void 0?n:e.custom,r,i)),t}const QS=e=>Array.isArray(e),Ide=e=>Boolean(e&&typeof e=="object"&&e.mix&&e.toValue),Dde=e=>QS(e)?e[e.length-1]||0:e;function Xx(e){const t=ta(e)?e.get():e;return Ide(t)?t.toValue():t}function jde({scrapeMotionValuesFromProps:e,createRenderState:t,onMount:n},r,i,o){const a={latestValues:Nde(r,i,o,e),renderState:t()};return n&&(a.mount=s=>n(r,s,a)),a}const KF=e=>(t,n)=>{const r=S.useContext(Pw),i=S.useContext(n2),o=()=>jde(e,t,r,i);return n?o():R9(o)};function Nde(e,t,n,r){const i={},o=r(e,{});for(const m in o)i[m]=Xx(o[m]);let{initial:a,animate:s}=e;const l=Lw(e),u=jF(e);t&&u&&!l&&e.inherit!==!1&&(a===void 0&&(a=t.initial),s===void 0&&(s=t.animate));let d=n?n.initial===!1:!1;d=d||a===!1;const h=d?s:a;return h&&typeof h!="boolean"&&!Mw(h)&&(Array.isArray(h)?h:[h]).forEach(y=>{const b=H9(e,y);if(!b)return;const{transitionEnd:w,transition:E,..._}=b;for(const k in _){let T=_[k];if(Array.isArray(T)){const L=d?T.length-1:0;T=T[L]}T!==null&&(i[k]=T)}for(const k in w)i[k]=w[k]}),i}const $de={useVisualState:KF({scrapeMotionValuesFromProps:qF,createRenderState:WF,onMount:(e,t,{renderState:n,latestValues:r})=>{try{n.dimensions=typeof t.getBBox=="function"?t.getBBox():t.getBoundingClientRect()}catch{n.dimensions={x:0,y:0,width:0,height:0}}$9(n,r,{enableHardwareAcceleration:!1},F9(t.tagName),e.transformTemplate),GF(t,n)}})},Fde={useVisualState:KF({scrapeMotionValuesFromProps:z9,createRenderState:N9})};function Bde(e,{forwardMotionProps:t=!1},n,r){return{...D9(e)?$de:Fde,preloadedFeatures:n,useRender:Rde(t),createVisualElement:r,Component:e}}function Hu(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const YF=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1;function Ow(e,t="page"){return{point:{x:e[t+"X"],y:e[t+"Y"]}}}const zde=e=>t=>YF(t)&&e(t,Ow(t));function Gu(e,t,n,r){return Hu(e,t,zde(n),r)}var tr;(function(e){e.Animate="animate",e.Hover="whileHover",e.Tap="whileTap",e.Drag="whileDrag",e.Focus="whileFocus",e.InView="whileInView",e.Exit="exit"})(tr||(tr={}));const Hde=(e,t)=>n=>t(e(n)),Nd=(...e)=>e.reduce(Hde);function XF(e){let t=null;return()=>{const n=()=>{t=null};return t===null?(t=e,n):!1}}const DL=XF("dragHorizontal"),jL=XF("dragVertical");function ZF(e){let t=!1;if(e==="y")t=jL();else if(e==="x")t=DL();else{const n=DL(),r=jL();n&&r?t=()=>{n(),r()}:(n&&n(),r&&r())}return t}function QF(){const e=ZF(!0);return e?(e(),!1):!0}let sf=class{constructor(t){this.isMounted=!1,this.node=t}update(){}};function NL(e,t){const n="pointer"+(t?"enter":"leave"),r="onHover"+(t?"Start":"End"),i=(o,a)=>{if(o.type==="touch"||QF())return;const s=e.getProps();e.animationState&&s.whileHover&&e.animationState.setActive(tr.Hover,t),s[r]&&s[r](o,a)};return Gu(e.current,n,i,{passive:!e.getProps()[r]})}class Wde extends sf{mount(){this.unmount=Nd(NL(this.node,!0),NL(this.node,!1))}unmount(){}}class Ude extends sf{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive(tr.Focus,!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive(tr.Focus,!1),this.isActive=!1)}mount(){this.unmount=Nd(Hu(this.node.current,"focus",()=>this.onFocus()),Hu(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}const JF=(e,t)=>t?e===t?!0:JF(e,t.parentElement):!1,Xl=e=>e;function K5(e,t){if(!t)return;const n=new PointerEvent("pointer"+e);t(n,Ow(n))}class Vde extends sf{constructor(){super(...arguments),this.removeStartListeners=Xl,this.removeEndListeners=Xl,this.removeAccessibleListeners=Xl,this.startPointerPress=(t,n)=>{if(this.removeEndListeners(),this.isPressing)return;const r=this.node.getProps(),o=Gu(window,"pointerup",(s,l)=>{if(!this.checkPressEnd())return;const{onTap:u,onTapCancel:d}=this.node.getProps();JF(this.node.current,s.target)?u&&u(s,l):d&&d(s,l)},{passive:!(r.onTap||r.onPointerUp)}),a=Gu(window,"pointercancel",(s,l)=>this.cancelPress(s,l),{passive:!(r.onTapCancel||r.onPointerCancel)});this.removeEndListeners=Nd(o,a),this.startPress(t,n)},this.startAccessiblePress=()=>{const t=o=>{if(o.key!=="Enter"||this.isPressing)return;const a=s=>{s.key!=="Enter"||!this.checkPressEnd()||K5("up",this.node.getProps().onTap)};this.removeEndListeners(),this.removeEndListeners=Hu(this.node.current,"keyup",a),K5("down",(s,l)=>{this.startPress(s,l)})},n=Hu(this.node.current,"keydown",t),r=()=>{this.isPressing&&K5("cancel",(o,a)=>this.cancelPress(o,a))},i=Hu(this.node.current,"blur",r);this.removeAccessibleListeners=Nd(n,i)}}startPress(t,n){this.isPressing=!0;const{onTapStart:r,whileTap:i}=this.node.getProps();i&&this.node.animationState&&this.node.animationState.setActive(tr.Tap,!0),r&&r(t,n)}checkPressEnd(){return this.removeEndListeners(),this.isPressing=!1,this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive(tr.Tap,!1),!QF()}cancelPress(t,n){if(!this.checkPressEnd())return;const{onTapCancel:r}=this.node.getProps();r&&r(t,n)}mount(){const t=this.node.getProps(),n=Gu(this.node.current,"pointerdown",this.startPointerPress,{passive:!(t.onTapStart||t.onPointerStart)}),r=Hu(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=Nd(n,r)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}const w_=new WeakMap,Y5=new WeakMap,Gde=e=>{const t=w_.get(e.target);t&&t(e)},qde=e=>{e.forEach(Gde)};function Kde({root:e,...t}){const n=e||document;Y5.has(n)||Y5.set(n,{});const r=Y5.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(qde,{root:e,...t})),r[i]}function Yde(e,t,n){const r=Kde(t);return w_.set(e,n),r.observe(e),()=>{w_.delete(e),r.unobserve(e)}}const Xde={some:0,all:1};class Zde extends sf{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}viewportFallback(){requestAnimationFrame(()=>{this.hasEnteredView=!0;const{onViewportEnter:t}=this.node.getProps();t&&t(null),this.node.animationState&&this.node.animationState.setActive(tr.InView,!0)})}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:i="some",once:o,fallback:a=!0}=t;if(typeof IntersectionObserver>"u"){a&&this.viewportFallback();return}const s={root:n?n.current:void 0,rootMargin:r,threshold:typeof i=="number"?i:Xde[i]},l=u=>{const{isIntersecting:d}=u;if(this.isInView===d||(this.isInView=d,o&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive(tr.InView,d);const{onViewportEnter:h,onViewportLeave:m}=this.node.getProps(),y=d?h:m;y&&y(u)};return Yde(this.node.current,s,l)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(Qde(t,n))&&this.startObserver()}unmount(){}}function Qde({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const Jde={inView:{Feature:Zde},tap:{Feature:Vde},focus:{Feature:Ude},hover:{Feature:Wde}};function eB(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;r/^\-?\d*\.?\d+$/.test(e),tfe=e=>/^0[^.\s]+$/.test(e),qu={delta:0,timestamp:0},tB=1/60*1e3,nfe=typeof performance<"u"?()=>performance.now():()=>Date.now(),nB=typeof window<"u"?e=>window.requestAnimationFrame(e):e=>setTimeout(()=>e(nfe()),tB);function rfe(e){let t=[],n=[],r=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(l,u=!1,d=!1)=>{const h=d&&i,m=h?t:n;return u&&a.add(l),m.indexOf(l)===-1&&(m.push(l),h&&i&&(r=t.length)),l},cancel:l=>{const u=n.indexOf(l);u!==-1&&n.splice(u,1),a.delete(l)},process:l=>{if(i){o=!0;return}if(i=!0,[t,n]=[n,t],n.length=0,r=t.length,r)for(let u=0;u(e[t]=rfe(()=>Py=!0),e),{}),so=o2.reduce((e,t)=>{const n=Rw[t];return e[t]=(r,i=!1,o=!1)=>(Py||afe(),n.schedule(r,i,o)),e},{}),Gd=o2.reduce((e,t)=>(e[t]=Rw[t].cancel,e),{}),X5=o2.reduce((e,t)=>(e[t]=()=>Rw[t].process(qu),e),{}),ofe=e=>Rw[e].process(qu),rB=e=>{Py=!1,qu.delta=C_?tB:Math.max(Math.min(e-qu.timestamp,ife),1),qu.timestamp=e,__=!0,o2.forEach(ofe),__=!1,Py&&(C_=!1,nB(rB))},afe=()=>{Py=!0,C_=!0,__||nB(rB)};function W9(e,t){e.indexOf(t)===-1&&e.push(t)}function U9(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}class V9{constructor(){this.subscriptions=[]}add(t){return W9(this.subscriptions,t),()=>U9(this.subscriptions,t)}notify(t,n,r){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](t,n,r);else for(let o=0;o!isNaN(parseFloat(e));class lfe{constructor(t,n={}){this.version="9.0.4",this.timeDelta=0,this.lastUpdated=0,this.canTrackVelocity=!1,this.events={},this.updateAndNotify=(r,i=!0)=>{this.prev=this.current,this.current=r;const{delta:o,timestamp:a}=qu;this.lastUpdated!==a&&(this.timeDelta=o,this.lastUpdated=a,so.postRender(this.scheduleVelocityCheck)),this.prev!==this.current&&this.events.change&&this.events.change.notify(this.current),this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()),i&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.scheduleVelocityCheck=()=>so.postRender(this.velocityCheck),this.velocityCheck=({timestamp:r})=>{r!==this.lastUpdated&&(this.prev=this.current,this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()))},this.hasAnimated=!1,this.prev=this.current=t,this.canTrackVelocity=sfe(this.current),this.owner=n.owner}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new V9);const r=this.events[t].add(n);return t==="change"?()=>{r(),so.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t,n=!0){!n||!this.passiveEffect?this.updateAndNotify(t,n):this.passiveEffect(t,this.updateAndNotify)}setWithVelocity(t,n,r){this.set(n),this.prev=t,this.timeDelta=r}jump(t){this.updateAndNotify(t),this.prev=t,this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?G9(parseFloat(this.current)-parseFloat(this.prev),this.timeDelta):0}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n)||null,this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){this.animation=null}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Gm(e,t){return new lfe(e,t)}const q9=(e,t)=>n=>Boolean(r2(n)&&bde.test(n)&&n.startsWith(e)||t&&Object.prototype.hasOwnProperty.call(n,t)),iB=(e,t,n)=>r=>{if(!r2(r))return r;const[i,o,a,s]=r.match(Ey);return{[e]:parseFloat(i),[t]:parseFloat(o),[n]:parseFloat(a),alpha:s!==void 0?parseFloat(s):1}},ufe=e=>Vm(0,255,e),Z5={...np,transform:e=>Math.round(ufe(e))},Eh={test:q9("rgb","red"),parse:iB("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+Z5.transform(e)+", "+Z5.transform(t)+", "+Z5.transform(n)+", "+F1($1.transform(r))+")"};function cfe(e){let t="",n="",r="",i="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}}const k_={test:q9("#"),parse:cfe,transform:Eh.transform},Jg={test:q9("hsl","hue"),parse:iB("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Yl.transform(F1(t))+", "+Yl.transform(F1(n))+", "+F1($1.transform(r))+")"},bo={test:e=>Eh.test(e)||k_.test(e)||Jg.test(e),parse:e=>Eh.test(e)?Eh.parse(e):Jg.test(e)?Jg.parse(e):k_.parse(e),transform:e=>r2(e)?e:e.hasOwnProperty("red")?Eh.transform(e):Jg.transform(e)},oB="${c}",aB="${n}";function dfe(e){var t,n;return isNaN(e)&&r2(e)&&(((t=e.match(Ey))===null||t===void 0?void 0:t.length)||0)+(((n=e.match(S_))===null||n===void 0?void 0:n.length)||0)>0}function JS(e){typeof e=="number"&&(e=`${e}`);const t=[];let n=0,r=0;const i=e.match(S_);i&&(n=i.length,e=e.replace(S_,oB),t.push(...i.map(bo.parse)));const o=e.match(Ey);return o&&(r=o.length,e=e.replace(Ey,aB),t.push(...o.map(np.parse))),{values:t,numColors:n,numNumbers:r,tokenised:e}}function sB(e){return JS(e).values}function lB(e){const{values:t,numColors:n,tokenised:r}=JS(e),i=t.length;return o=>{let a=r;for(let s=0;stypeof e=="number"?0:e;function hfe(e){const t=sB(e);return lB(e)(t.map(ffe))}const qd={test:dfe,parse:sB,createTransformer:lB,getAnimatableNone:hfe},pfe=new Set(["brightness","contrast","saturate","opacity"]);function gfe(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(Ey)||[];if(!r)return e;const i=n.replace(r,"");let o=pfe.has(t)?1:0;return r!==n&&(o*=100),t+"("+o+i+")"}const mfe=/([a-z-]*)\(.*?\)/g,E_={...qd,getAnimatableNone:e=>{const t=e.match(mfe);return t?t.map(gfe).join(" "):e}},vfe={...BF,color:bo,backgroundColor:bo,outlineColor:bo,fill:bo,stroke:bo,borderColor:bo,borderTopColor:bo,borderRightColor:bo,borderBottomColor:bo,borderLeftColor:bo,filter:E_,WebkitFilter:E_},K9=e=>vfe[e];function Y9(e,t){let n=K9(e);return n!==E_&&(n=qd),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const uB=e=>t=>t.test(e),yfe={test:e=>e==="auto",parse:e=>e},cB=[np,Pt,Yl,cd,Sde,xde,yfe],Hv=e=>cB.find(uB(e)),bfe=[...cB,bo,qd],xfe=e=>bfe.find(uB(e));function Sfe(e){const t={};return e.values.forEach((n,r)=>t[r]=n.get()),t}function wfe(e){const t={};return e.values.forEach((n,r)=>t[r]=n.getVelocity()),t}function Iw(e,t,n){const r=e.getProps();return H9(r,t,n!==void 0?n:r.custom,Sfe(e),wfe(e))}function Cfe(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,Gm(n))}function _fe(e,t){const n=Iw(e,t);let{transitionEnd:r={},transition:i={},...o}=n?e.makeTargetAnimatable(n,!1):{};o={...o,...r};for(const a in o){const s=Dde(o[a]);Cfe(e,a,s)}}function kfe(e,t,n){var r,i;const o=Object.keys(t).filter(s=>!e.hasValue(s)),a=o.length;if(a)for(let s=0;se*1e3,Afe={current:!1},X9=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,Z9=e=>t=>1-e(1-t),Q9=e=>e*e,Ofe=Z9(Q9),J9=X9(Q9),Fr=(e,t,n)=>-n*e+n*t+e;function Q5(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function Rfe({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,o=0,a=0;if(!t)i=o=a=n;else{const s=n<.5?n*(1+t):n+t-n*t,l=2*n-s;i=Q5(l,s,e+1/3),o=Q5(l,s,e),a=Q5(l,s,e-1/3)}return{red:Math.round(i*255),green:Math.round(o*255),blue:Math.round(a*255),alpha:r}}const J5=(e,t,n)=>{const r=e*e;return Math.sqrt(Math.max(0,n*(t*t-r)+r))},Ife=[k_,Eh,Jg],Dfe=e=>Ife.find(t=>t.test(e));function $L(e){const t=Dfe(e);let n=t.parse(e);return t===Jg&&(n=Rfe(n)),n}const dB=(e,t)=>{const n=$L(e),r=$L(t),i={...n};return o=>(i.red=J5(n.red,r.red,o),i.green=J5(n.green,r.green,o),i.blue=J5(n.blue,r.blue,o),i.alpha=Fr(n.alpha,r.alpha,o),Eh.transform(i))};function fB(e,t){return typeof e=="number"?n=>Fr(e,t,n):bo.test(e)?dB(e,t):pB(e,t)}const hB=(e,t)=>{const n=[...e],r=n.length,i=e.map((o,a)=>fB(o,t[a]));return o=>{for(let a=0;a{const n={...e,...t},r={};for(const i in n)e[i]!==void 0&&t[i]!==void 0&&(r[i]=fB(e[i],t[i]));return i=>{for(const o in r)n[o]=r[o](i);return n}},pB=(e,t)=>{const n=qd.createTransformer(t),r=JS(e),i=JS(t);return r.numColors===i.numColors&&r.numNumbers>=i.numNumbers?Nd(hB(r.values,i.values),n):a=>`${a>0?t:e}`},n3=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r},FL=(e,t)=>n=>Fr(e,t,n);function Nfe(e){return typeof e=="number"?FL:typeof e=="string"?bo.test(e)?dB:pB:Array.isArray(e)?hB:typeof e=="object"?jfe:FL}function $fe(e,t,n){const r=[],i=n||Nfe(e[0]),o=e.length-1;for(let a=0;ae[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const a=$fe(t,r,i),s=a.length,l=u=>{let d=0;if(s>1)for(;dl(Vm(e[0],e[o-1],u)):l}const mB=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,Ffe=1e-7,Bfe=12;function zfe(e,t,n,r,i){let o,a,s=0;do a=t+(n-t)/2,o=mB(a,r,i)-e,o>0?n=a:t=a;while(Math.abs(o)>Ffe&&++szfe(o,0,1,e,n);return o=>o===0||o===1?o:mB(i(o),t,r)}const yB=e=>1-Math.sin(Math.acos(e)),e8=Z9(yB),Hfe=X9(e8),bB=vB(.33,1.53,.69,.99),t8=Z9(bB),Wfe=X9(t8),Ufe=e=>(e*=2)<1?.5*t8(e):.5*(2-Math.pow(2,-10*(e-1))),Vfe={linear:Xl,easeIn:Q9,easeInOut:J9,easeOut:Ofe,circIn:yB,circInOut:Hfe,circOut:e8,backIn:t8,backInOut:Wfe,backOut:bB,anticipate:Ufe},BL=e=>{if(Array.isArray(e)){t3(e.length===4);const[t,n,r,i]=e;return vB(t,n,r,i)}else if(typeof e=="string")return Vfe[e];return e},Gfe=e=>Array.isArray(e)&&typeof e[0]!="number";function qfe(e,t){return e.map(()=>t||J9).splice(0,e.length-1)}function Kfe(e){const t=e.length;return e.map((n,r)=>r!==0?r/(t-1):0)}function Yfe(e,t){return e.map(n=>n*t)}function P_({keyframes:e,ease:t=J9,times:n,duration:r=300}){e=[...e];const i=Gfe(t)?t.map(BL):BL(t),o={done:!1,value:e[0]},a=Yfe(n&&n.length===e.length?n:Kfe(e),r);function s(){return gB(a,e,{ease:Array.isArray(i)?i:qfe(e,i)})}let l=s();return{next:u=>(o.value=l(u),o.done=u>=r,o),flipTarget:()=>{e.reverse(),l=s()}}}const eC=.001,Xfe=.01,zL=10,Zfe=.05,Qfe=1;function Jfe({duration:e=800,bounce:t=.25,velocity:n=0,mass:r=1}){let i,o;Lfe(e<=zL*1e3);let a=1-t;a=Vm(Zfe,Qfe,a),e=Vm(Xfe,zL,e/1e3),a<1?(i=u=>{const d=u*a,h=d*e,m=d-n,y=T_(u,a),b=Math.exp(-h);return eC-m/y*b},o=u=>{const h=u*a*e,m=h*n+n,y=Math.pow(a,2)*Math.pow(u,2)*e,b=Math.exp(-h),w=T_(Math.pow(u,2),a);return(-i(u)+eC>0?-1:1)*((m-y)*b)/w}):(i=u=>{const d=Math.exp(-u*e),h=(u-n)*e+1;return-eC+d*h},o=u=>{const d=Math.exp(-u*e),h=(n-u)*(e*e);return d*h});const s=5/e,l=the(i,o,s);if(e=e*1e3,isNaN(l))return{stiffness:100,damping:10,duration:e};{const u=Math.pow(l,2)*r;return{stiffness:u,damping:a*2*Math.sqrt(r*u),duration:e}}}const ehe=12;function the(e,t,n){let r=n;for(let i=1;ie[n]!==void 0)}function ihe(e){let t={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...e};if(!HL(e,rhe)&&HL(e,nhe)){const n=Jfe(e);t={...t,...n,velocity:0,mass:1},t.isResolvedFromDuration=!0}return t}const ohe=5;function xB({keyframes:e,restDelta:t,restSpeed:n,...r}){let i=e[0],o=e[e.length-1];const a={done:!1,value:i},{stiffness:s,damping:l,mass:u,velocity:d,duration:h,isResolvedFromDuration:m}=ihe(r);let y=ahe,b=d?-(d/1e3):0;const w=l/(2*Math.sqrt(s*u));function E(){const _=o-i,k=Math.sqrt(s/u)/1e3,T=Math.abs(_)<5;if(n||(n=T?.01:2),t||(t=T?.005:.5),w<1){const L=T_(k,w);y=O=>{const D=Math.exp(-w*k*O);return o-D*((b+w*k*_)/L*Math.sin(L*O)+_*Math.cos(L*O))}}else if(w===1)y=L=>o-Math.exp(-k*L)*(_+(b+k*_)*L);else{const L=k*Math.sqrt(w*w-1);y=O=>{const D=Math.exp(-w*k*O),I=Math.min(L*O,300);return o-D*((b+w*k*_)*Math.sinh(I)+L*_*Math.cosh(I))/L}}}return E(),{next:_=>{const k=y(_);if(m)a.done=_>=h;else{let T=b;if(_!==0)if(w<1){const D=Math.max(0,_-ohe);T=G9(k-y(D),_-D)}else T=0;const L=Math.abs(T)<=n,O=Math.abs(o-k)<=t;a.done=L&&O}return a.value=a.done?o:k,a},flipTarget:()=>{b=-b,[i,o]=[o,i],E()}}}xB.needsInterpolation=(e,t)=>typeof e=="string"||typeof t=="string";const ahe=e=>0;function she({keyframes:e=[0],velocity:t=0,power:n=.8,timeConstant:r=350,restDelta:i=.5,modifyTarget:o}){const a=e[0],s={done:!1,value:a};let l=n*t;const u=a+l,d=o===void 0?u:o(u);return d!==u&&(l=d-a),{next:h=>{const m=-l*Math.exp(-h/r);return s.done=!(m>i||m<-i),s.value=s.done?d:d+m,s},flipTarget:()=>{}}}const lhe={decay:she,keyframes:P_,tween:P_,spring:xB};function SB(e,t,n=0){return e-t-n}function uhe(e,t=0,n=0,r=!0){return r?SB(t+-e,t,n):t-(e-t)+n}function che(e,t,n,r){return r?e>=t+n:e<=-n}const dhe=e=>{const t=({delta:n})=>e(n);return{start:()=>so.update(t,!0),stop:()=>Gd.update(t)}};function r3({duration:e,driver:t=dhe,elapsed:n=0,repeat:r=0,repeatType:i="loop",repeatDelay:o=0,keyframes:a,autoplay:s=!0,onPlay:l,onStop:u,onComplete:d,onRepeat:h,onUpdate:m,type:y="keyframes",...b}){const w=n;let E,_=0,k=e,T=!1,L=!0,O;const D=lhe[a.length>2?"keyframes":y]||P_,I=a[0],N=a[a.length-1];let W={done:!1,value:I};const{needsInterpolation:B}=D;B&&B(I,N)&&(O=gB([0,100],[I,N],{clamp:!1}),a=[0,100]);const K=D({...b,duration:e,keyframes:a});function ne(){_++,i==="reverse"?(L=_%2===0,n=uhe(n,k,o,L)):(n=SB(n,k,o),i==="mirror"&&K.flipTarget()),T=!1,h&&h()}function z(){E&&E.stop(),d&&d()}function $(X){L||(X=-X),n+=X,T||(W=K.next(Math.max(0,n)),O&&(W.value=O(W.value)),T=L?W.done:n<=0),m&&m(W.value),T&&(_===0&&(k=k!==void 0?k:n),_{u&&u(),E&&E.stop()},set currentTime(X){n=w,$(X)},sample:X=>{n=w;const Q=e&&typeof e=="number"?Math.max(e*.5,50):50;let G=0;for($(0);G<=X;){const Y=X-G;$(Math.min(Y,Q)),G+=Q}return W}}}function fhe(e){return!e||Array.isArray(e)||typeof e=="string"&&wB[e]}const d1=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,wB={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:d1([0,.65,.55,1]),circOut:d1([.55,0,1,.45]),backIn:d1([.31,.01,.66,-.59]),backOut:d1([.33,1.53,.69,.99])};function hhe(e){if(e)return Array.isArray(e)?d1(e):wB[e]}function phe(e,t,n,{delay:r=0,duration:i,repeat:o=0,repeatType:a="loop",ease:s,times:l}={}){return e.animate({[t]:n,offset:l},{delay:r,duration:i,easing:hhe(s),fill:"both",iterations:o+1,direction:a==="reverse"?"alternate":"normal"})}const WL={waapi:()=>Object.hasOwnProperty.call(Element.prototype,"animate")},tC={},CB={};for(const e in WL)CB[e]=()=>(tC[e]===void 0&&(tC[e]=WL[e]()),tC[e]);function ghe(e,{repeat:t,repeatType:n="loop"}){const r=t&&n!=="loop"&&t%2===1?0:e.length-1;return e[r]}const mhe=new Set(["opacity"]),Hb=10;function vhe(e,t,{onUpdate:n,onComplete:r,...i}){if(!(CB.waapi()&&mhe.has(t)&&!i.repeatDelay&&i.repeatType!=="mirror"&&i.damping!==0))return!1;let{keyframes:a,duration:s=300,elapsed:l=0,ease:u}=i;if(i.type==="spring"||!fhe(i.ease)){if(i.repeat===1/0)return;const h=r3({...i,elapsed:0});let m={done:!1,value:a[0]};const y=[];let b=0;for(;!m.done&&b<2e4;)m=h.sample(b),y.push(m.value),b+=Hb;a=y,s=b-Hb,u="linear"}const d=phe(e.owner.current,t,a,{...i,delay:-l,duration:s,ease:u});return d.onfinish=()=>{e.set(ghe(a,i)),so.update(()=>d.cancel()),r&&r()},{get currentTime(){return d.currentTime||0},set currentTime(h){d.currentTime=h},stop:()=>{const{currentTime:h}=d;if(h){const m=r3({...i,autoplay:!1});e.setWithVelocity(m.sample(h-Hb).value,m.sample(h).value,Hb)}so.update(()=>d.cancel())}}}function _B(e,t){const n=performance.now(),r=({timestamp:i})=>{const o=i-n;o>=t&&(Gd.read(r),e(o-t))};return so.read(r,!0),()=>Gd.read(r)}function yhe({keyframes:e,elapsed:t,onUpdate:n,onComplete:r}){const i=()=>{n&&n(e[e.length-1]),r&&r()};return t?{stop:_B(i,-t)}:i()}function bhe({keyframes:e,velocity:t=0,min:n,max:r,power:i=.8,timeConstant:o=750,bounceStiffness:a=500,bounceDamping:s=10,restDelta:l=1,modifyTarget:u,driver:d,onUpdate:h,onComplete:m,onStop:y}){const b=e[0];let w;function E(L){return n!==void 0&&Lr}function _(L){return n===void 0?r:r===void 0||Math.abs(n-L){h&&h(O),L.onUpdate&&L.onUpdate(O)},onComplete:m,onStop:y})}function T(L){k({type:"spring",stiffness:a,damping:s,restDelta:l,...L})}if(E(b))T({velocity:t,keyframes:[b,_(b)]});else{let L=i*t+b;typeof u<"u"&&(L=u(L));const O=_(L),D=O===n?-1:1;let I,N;const W=B=>{I=N,N=B,t=G9(B-I,qu.delta),(D===1&&B>O||D===-1&&Bw&&w.stop()}}const nh=()=>({type:"spring",stiffness:500,damping:25,restSpeed:10}),Wb=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),nC=()=>({type:"keyframes",ease:"linear",duration:.3}),xhe={type:"keyframes",duration:.8},UL={x:nh,y:nh,z:nh,rotate:nh,rotateX:nh,rotateY:nh,rotateZ:nh,scaleX:Wb,scaleY:Wb,scale:Wb,opacity:nC,backgroundColor:nC,color:nC,default:Wb},She=(e,{keyframes:t})=>t.length>2?xhe:(UL[e]||UL.default)(t[1]),M_=(e,t)=>e==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&qd.test(t)&&!t.startsWith("url("));function whe({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:i,repeat:o,repeatType:a,repeatDelay:s,from:l,elapsed:u,...d}){return!!Object.keys(d).length}function VL(e){return e===0||typeof e=="string"&&parseFloat(e)===0&&e.indexOf(" ")===-1}function GL(e){return typeof e=="number"?0:Y9("",e)}function kB(e,t){return e[t]||e.default||e}function Che(e,t,n,r){const i=M_(t,n);let o=r.from!==void 0?r.from:e.get();return o==="none"&&i&&typeof n=="string"?o=Y9(t,n):VL(o)&&typeof n=="string"?o=GL(n):!Array.isArray(n)&&VL(n)&&typeof o=="string"&&(n=GL(o)),Array.isArray(n)?(n[0]===null&&(n[0]=o),n):[o,n]}const n8=(e,t,n,r={})=>i=>{const o=kB(r,e)||{},a=o.delay||r.delay||0;let{elapsed:s=0}=r;s=s-Zx(a);const l=Che(t,e,n,o),u=l[0],d=l[l.length-1],h=M_(e,u),m=M_(e,d);let y={keyframes:l,velocity:t.getVelocity(),...o,elapsed:s,onUpdate:b=>{t.set(b),o.onUpdate&&o.onUpdate(b)},onComplete:()=>{i(),o.onComplete&&o.onComplete()}};if(!h||!m||Afe.current||o.type===!1)return yhe(y);if(o.type==="inertia")return bhe(y);if(whe(o)||(y={...y,...She(e,y)}),y.duration&&(y.duration=Zx(y.duration)),y.repeatDelay&&(y.repeatDelay=Zx(y.repeatDelay)),t.owner&&t.owner.current instanceof HTMLElement&&!t.owner.getProps().onUpdate){const b=vhe(t,e,y);if(b)return b}return r3(y)};function _he(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const i=t.map(o=>L_(e,o,n));r=Promise.all(i)}else if(typeof t=="string")r=L_(e,t,n);else{const i=typeof t=="function"?Iw(e,t,n.custom):t;r=EB(e,i,n)}return r.then(()=>e.notify("AnimationComplete",t))}function L_(e,t,n={}){const r=Iw(e,t,n.custom);let{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);const o=r?()=>EB(e,r,n):()=>Promise.resolve(),a=e.variantChildren&&e.variantChildren.size?(l=0)=>{const{delayChildren:u=0,staggerChildren:d,staggerDirection:h}=i;return khe(e,t,u+l,d,h,n)}:()=>Promise.resolve(),{when:s}=i;if(s){const[l,u]=s==="beforeChildren"?[o,a]:[a,o];return l().then(u)}else return Promise.all([o(),a(n.delay)])}function EB(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:o=e.getDefaultTransition(),transitionEnd:a,...s}=e.makeTargetAnimatable(t);const l=e.getValue("willChange");r&&(o=r);const u=[],d=i&&e.animationState&&e.animationState.getState()[i];for(const h in s){const m=e.getValue(h),y=s[h];if(!m||y===void 0||d&&Phe(d,h))continue;const b={delay:n,elapsed:0,...o};if(window.HandoffAppearAnimations&&!m.hasAnimated){const E=e.getProps()[Mfe];E&&(b.elapsed=window.HandoffAppearAnimations(E,h,m,so))}let w=m.start(n8(h,m,y,e.shouldReduceMotion&&d0.has(h)?{type:!1}:b));e3(l)&&(l.add(h),w=w.then(()=>l.remove(h))),u.push(w)}return Promise.all(u).then(()=>{a&&_fe(e,a)})}function khe(e,t,n=0,r=0,i=1,o){const a=[],s=(e.variantChildren.size-1)*r,l=i===1?(u=0)=>u*r:(u=0)=>s-u*r;return Array.from(e.variantChildren).sort(Ehe).forEach((u,d)=>{u.notify("AnimationStart",t),a.push(L_(u,t,{...o,delay:n+l(d)}).then(()=>u.notify("AnimationComplete",t)))}),Promise.all(a)}function Ehe(e,t){return e.sortNodePosition(t)}function Phe({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}const r8=[tr.Animate,tr.InView,tr.Focus,tr.Hover,tr.Tap,tr.Drag,tr.Exit],The=[...r8].reverse(),Mhe=r8.length;function Lhe(e){return t=>Promise.all(t.map(({animation:n,options:r})=>_he(e,n,r)))}function Ahe(e){let t=Lhe(e);const n=Rhe();let r=!0;const i=(l,u)=>{const d=Iw(e,u);if(d){const{transition:h,transitionEnd:m,...y}=d;l={...l,...y,...m}}return l};function o(l){t=l(e)}function a(l,u){const d=e.getProps(),h=e.getVariantContext(!0)||{},m=[],y=new Set;let b={},w=1/0;for(let _=0;_w&&O;const B=Array.isArray(L)?L:[L];let K=B.reduce(i,{});D===!1&&(K={});const{prevResolvedValues:ne={}}=T,z={...ne,...K},$=V=>{W=!0,y.delete(V),T.needsAnimating[V]=!0};for(const V in z){const X=K[V],Q=ne[V];b.hasOwnProperty(V)||(X!==Q?QS(X)&&QS(Q)?!eB(X,Q)||N?$(V):T.protectedKeys[V]=!0:X!==void 0?$(V):y.add(V):X!==void 0&&y.has(V)?$(V):T.protectedKeys[V]=!0)}T.prevProp=L,T.prevResolvedValues=K,T.isActive&&(b={...b,...K}),r&&e.blockInitialAnimation&&(W=!1),W&&!I&&m.push(...B.map(V=>({animation:V,options:{type:k,...l}})))}if(y.size){const _={};y.forEach(k=>{const T=e.getBaseTarget(k);T!==void 0&&(_[k]=T)}),m.push({animation:_})}let E=Boolean(m.length);return r&&d.initial===!1&&!e.manuallyAnimateOnMount&&(E=!1),r=!1,E?t(m):Promise.resolve()}function s(l,u,d){if(n[l].isActive===u)return Promise.resolve();e.variantChildren&&e.variantChildren.forEach(m=>{m.animationState&&m.animationState.setActive(l,u)}),n[l].isActive=u;const h=a(d,l);for(const m in n)n[m].protectedKeys={};return h}return{animateChanges:a,setActive:s,setAnimateFunction:o,getState:()=>n}}function Ohe(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!eB(t,e):!1}function rh(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Rhe(){return{[tr.Animate]:rh(!0),[tr.InView]:rh(),[tr.Hover]:rh(),[tr.Tap]:rh(),[tr.Drag]:rh(),[tr.Focus]:rh(),[tr.Exit]:rh()}}class Ihe extends sf{constructor(t){super(t),t.animationState||(t.animationState=Ahe(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();this.unmount(),Mw(t)&&(this.unmount=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){}}let Dhe=0;class jhe extends sf{constructor(){super(...arguments),this.id=Dhe++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n,custom:r}=this.node.presenceContext,{isPresent:i}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===i)return;const o=this.node.animationState.setActive(tr.Exit,!t,{custom:r??this.node.getProps().custom});n&&!t&&o.then(()=>n(this.id))}mount(){const{register:t}=this.node.presenceContext||{};t&&(this.unmount=t(this.id))}unmount(){}}const Nhe={animation:{Feature:Ihe},exit:{Feature:jhe}},qL=(e,t)=>Math.abs(e-t);function $he(e,t){const n=qL(e.x,t.x),r=qL(e.y,t.y);return Math.sqrt(n**2+r**2)}class PB{constructor(t,n,{transformPagePoint:r}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const u=iC(this.lastMoveEventInfo,this.history),d=this.startEvent!==null,h=$he(u.offset,{x:0,y:0})>=3;if(!d&&!h)return;const{point:m}=u,{timestamp:y}=qu;this.history.push({...m,timestamp:y});const{onStart:b,onMove:w}=this.handlers;d||(b&&b(this.lastMoveEvent,u),this.startEvent=this.lastMoveEvent),w&&w(this.lastMoveEvent,u)},this.handlePointerMove=(u,d)=>{this.lastMoveEvent=u,this.lastMoveEventInfo=rC(d,this.transformPagePoint),so.update(this.updatePoint,!0)},this.handlePointerUp=(u,d)=>{if(this.end(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const{onEnd:h,onSessionEnd:m}=this.handlers,y=iC(u.type==="pointercancel"?this.lastMoveEventInfo:rC(d,this.transformPagePoint),this.history);this.startEvent&&h&&h(u,y),m&&m(u,y)},!YF(t))return;this.handlers=n,this.transformPagePoint=r;const i=Ow(t),o=rC(i,this.transformPagePoint),{point:a}=o,{timestamp:s}=qu;this.history=[{...a,timestamp:s}];const{onSessionStart:l}=n;l&&l(t,iC(o,this.history)),this.removeListeners=Nd(Gu(window,"pointermove",this.handlePointerMove),Gu(window,"pointerup",this.handlePointerUp),Gu(window,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),Gd.update(this.updatePoint)}}function rC(e,t){return t?{point:t(e.point)}:e}function KL(e,t){return{x:e.x-t.x,y:e.y-t.y}}function iC({point:e},t){return{point:e,delta:KL(e,TB(t)),offset:KL(e,Fhe(t)),velocity:Bhe(t,.1)}}function Fhe(e){return e[0]}function TB(e){return e[e.length-1]}function Bhe(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=TB(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>Zx(t)));)n--;if(!r)return{x:0,y:0};const o=(i.timestamp-r.timestamp)/1e3;if(o===0)return{x:0,y:0};const a={x:(i.x-r.x)/o,y:(i.y-r.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function Aa(e){return e.max-e.min}function A_(e,t=0,n=.01){return Math.abs(e-t)<=n}function YL(e,t,n,r=.5){e.origin=r,e.originPoint=Fr(t.min,t.max,e.origin),e.scale=Aa(n)/Aa(t),(A_(e.scale,1,1e-4)||isNaN(e.scale))&&(e.scale=1),e.translate=Fr(n.min,n.max,e.origin)-e.originPoint,(A_(e.translate)||isNaN(e.translate))&&(e.translate=0)}function B1(e,t,n,r){YL(e.x,t.x,n.x,r?r.originX:void 0),YL(e.y,t.y,n.y,r?r.originY:void 0)}function XL(e,t,n){e.min=n.min+t.min,e.max=e.min+Aa(t)}function zhe(e,t,n){XL(e.x,t.x,n.x),XL(e.y,t.y,n.y)}function ZL(e,t,n){e.min=t.min-n.min,e.max=e.min+Aa(t)}function z1(e,t,n){ZL(e.x,t.x,n.x),ZL(e.y,t.y,n.y)}function Hhe(e,{min:t,max:n},r){return t!==void 0&&en&&(e=r?Fr(n,e,r.max):Math.min(e,n)),e}function QL(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function Whe(e,{top:t,left:n,bottom:r,right:i}){return{x:QL(e.x,n,i),y:QL(e.y,t,r)}}function JL(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.minr?n=n3(t.min,t.max-r,e.min):r>i&&(n=n3(e.min,e.max-i,t.min)),Vm(0,1,n)}function Ghe(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const O_=.35;function qhe(e=O_){return e===!1?e=0:e===!0&&(e=O_),{x:eA(e,"left","right"),y:eA(e,"top","bottom")}}function eA(e,t,n){return{min:tA(e,t),max:tA(e,n)}}function tA(e,t){return typeof e=="number"?e:e[t]||0}const nA=()=>({translate:0,scale:1,origin:0,originPoint:0}),H1=()=>({x:nA(),y:nA()}),rA=()=>({min:0,max:0}),gi=()=>({x:rA(),y:rA()});function Al(e){return[e("x"),e("y")]}function MB({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function Khe({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function Yhe(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function oC(e){return e===void 0||e===1}function R_({scale:e,scaleX:t,scaleY:n}){return!oC(e)||!oC(t)||!oC(n)}function dh(e){return R_(e)||LB(e)||e.z||e.rotate||e.rotateX||e.rotateY}function LB(e){return iA(e.x)||iA(e.y)}function iA(e){return e&&e!=="0%"}function i3(e,t,n){const r=e-n,i=t*r;return n+i}function oA(e,t,n,r,i){return i!==void 0&&(e=i3(e,i,r)),i3(e,n,r)+t}function I_(e,t=0,n=1,r,i){e.min=oA(e.min,t,n,r,i),e.max=oA(e.max,t,n,r,i)}function AB(e,{x:t,y:n}){I_(e.x,t.translate,t.scale,t.originPoint),I_(e.y,n.translate,n.scale,n.originPoint)}function Xhe(e,t,n,r=!1){const i=n.length;if(!i)return;t.x=t.y=1;let o,a;for(let s=0;s1.0000000000001||e<.999999999999?e:1}function gd(e,t){e.min=e.min+t,e.max=e.max+t}function sA(e,t,[n,r,i]){const o=t[i]!==void 0?t[i]:.5,a=Fr(e.min,e.max,o);I_(e,t[n],t[r],a,t.scale)}const Zhe=["x","scaleX","originX"],Qhe=["y","scaleY","originY"];function em(e,t){sA(e.x,t,Zhe),sA(e.y,t,Qhe)}function OB(e,t){return MB(Yhe(e.getBoundingClientRect(),t))}function Jhe(e,t,n){const r=OB(e,n),{scroll:i}=t;return i&&(gd(r.x,i.offset.x),gd(r.y,i.offset.y)),r}const epe=new WeakMap;class tpe{constructor(t){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=gi(),this.visualElement=t}start(t,{snapToCursor:n=!1}={}){const{presenceContext:r}=this.visualElement;if(r&&r.isPresent===!1)return;const i=l=>{this.stopAnimation(),n&&this.snapToCursor(Ow(l,"page").point)},o=(l,u)=>{const{drag:d,dragPropagation:h,onDragStart:m}=this.getProps();if(d&&!h&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=ZF(d),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Al(b=>{let w=this.getAxisMotionValue(b).get()||0;if(Yl.test(w)){const{projection:E}=this.visualElement;if(E&&E.layout){const _=E.layout.layoutBox[b];_&&(w=Aa(_)*(parseFloat(w)/100))}}this.originPoint[b]=w}),m&&m(l,u);const{animationState:y}=this.visualElement;y&&y.setActive(tr.Drag,!0)},a=(l,u)=>{const{dragPropagation:d,dragDirectionLock:h,onDirectionLock:m,onDrag:y}=this.getProps();if(!d&&!this.openGlobalLock)return;const{offset:b}=u;if(h&&this.currentDirection===null){this.currentDirection=npe(b),this.currentDirection!==null&&m&&m(this.currentDirection);return}this.updateAxis("x",u.point,b),this.updateAxis("y",u.point,b),this.visualElement.render(),y&&y(l,u)},s=(l,u)=>this.stop(l,u);this.panSession=new PB(t,{onSessionStart:i,onStart:o,onMove:a,onSessionEnd:s},{transformPagePoint:this.visualElement.getTransformPagePoint()})}stop(t,n){const r=this.isDragging;if(this.cancel(),!r)return;const{velocity:i}=n;this.startAnimation(i);const{onDragEnd:o}=this.getProps();o&&o(t,n)}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),n&&n.setActive(tr.Drag,!1)}updateAxis(t,n,r){const{drag:i}=this.getProps();if(!r||!Ub(t,i,this.currentDirection))return;const o=this.getAxisMotionValue(t);let a=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(a=Hhe(a,this.constraints[t],this.elastic[t])),o.set(a)}resolveConstraints(){const{dragConstraints:t,dragElastic:n}=this.getProps(),{layout:r}=this.visualElement.projection||{},i=this.constraints;t&&Qg(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=Whe(r.layoutBox,t):this.constraints=!1,this.elastic=qhe(n),i!==this.constraints&&r&&this.constraints&&!this.hasMutatedConstraints&&Al(o=>{this.getAxisMotionValue(o)&&(this.constraints[o]=Ghe(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Qg(t))return!1;const r=t.current,{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const o=Jhe(r,i.root,this.visualElement.getTransformPagePoint());let a=Uhe(i.layout.layoutBox,o);if(n){const s=n(Khe(a));this.hasMutatedConstraints=!!s,s&&(a=MB(s))}return a}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:i,dragTransition:o,dragSnapToOrigin:a,onDragTransitionEnd:s}=this.getProps(),l=this.constraints||{},u=Al(d=>{if(!Ub(d,n,this.currentDirection))return;let h=l&&l[d]||{};a&&(h={min:0,max:0});const m=i?200:1e6,y=i?40:1e7,b={type:"inertia",velocity:r?t[d]:0,bounceStiffness:m,bounceDamping:y,timeConstant:750,restDelta:1,restSpeed:10,...o,...h};return this.startAxisValueAnimation(d,b)});return Promise.all(u).then(s)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return r.start(n8(t,r,0,n))}stopAnimation(){Al(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n="_drag"+t.toUpperCase(),r=this.visualElement.getProps(),i=r[n];return i||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Al(n=>{const{drag:r}=this.getProps();if(!Ub(n,r,this.currentDirection))return;const{projection:i}=this.visualElement,o=this.getAxisMotionValue(n);if(i&&i.layout){const{min:a,max:s}=i.layout.layoutBox[n];o.set(t[n]-Fr(a,s,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Qg(n)||!r||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};Al(a=>{const s=this.getAxisMotionValue(a);if(s){const l=s.get();i[a]=Vhe({min:l,max:l},this.constraints[a])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),Al(a=>{if(!Ub(a,t,null))return;const s=this.getAxisMotionValue(a),{min:l,max:u}=this.constraints[a];s.set(Fr(l,u,i[a]))})}addListeners(){if(!this.visualElement.current)return;epe.set(this.visualElement,this);const t=this.visualElement.current,n=Gu(t,"pointerdown",l=>{const{drag:u,dragListener:d=!0}=this.getProps();u&&d&&this.start(l)}),r=()=>{const{dragConstraints:l}=this.getProps();Qg(l)&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,o=i.addEventListener("measure",r);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),r();const a=Hu(window,"resize",()=>this.scalePositionWithinConstraints()),s=i.addEventListener("didUpdate",({delta:l,hasLayoutChanged:u})=>{this.isDragging&&u&&(Al(d=>{const h=this.getAxisMotionValue(d);h&&(this.originPoint[d]+=l[d].translate,h.set(h.get()+l[d].translate))}),this.visualElement.render())});return()=>{a(),n(),o(),s&&s()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:i=!1,dragConstraints:o=!1,dragElastic:a=O_,dragMomentum:s=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:i,dragConstraints:o,dragElastic:a,dragMomentum:s}}}function Ub(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function npe(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class rpe extends sf{constructor(t){super(t),this.removeGroupControls=Xl,this.removeListeners=Xl,this.controls=new tpe(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Xl}unmount(){this.removeGroupControls(),this.removeListeners()}}class ipe extends sf{constructor(){super(...arguments),this.removePointerDownListener=Xl}onPointerDown(t){this.session=new PB(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint()})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:i}=this.node.getProps();return{onSessionStart:t,onStart:n,onMove:r,onEnd:(o,a)=>{delete this.session,i&&i(o,a)}}}mount(){this.removePointerDownListener=Gu(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}function RB(){const e=S.useContext(n2);if(e===null)return[!0,null];const{isPresent:t,onExitComplete:n,register:r}=e,i=S.useId();return S.useEffect(()=>r(i),[]),!t&&n?[!1,()=>n&&n(i)]:[!0]}function ope(){return ape(S.useContext(n2))}function ape(e){return e===null?!0:e.isPresent}function lA(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const Wv={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(Pt.test(e))e=parseFloat(e);else return e;const n=lA(e,t.target.x),r=lA(e,t.target.y);return`${n}% ${r}%`}};function D_(e){return typeof e=="string"&&e.startsWith("var(--")}const IB=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;function spe(e){const t=IB.exec(e);if(!t)return[,];const[,n,r]=t;return[n,r]}function j_(e,t,n=1){const[r,i]=spe(e);if(!r)return;const o=window.getComputedStyle(t).getPropertyValue(r);return o?o.trim():D_(i)?j_(i,t,n+1):i}function lpe(e,{...t},n){const r=e.current;if(!(r instanceof Element))return{target:t,transitionEnd:n};n&&(n={...n}),e.values.forEach(i=>{const o=i.get();if(!D_(o))return;const a=j_(o,r);a&&i.set(a)});for(const i in t){const o=t[i];if(!D_(o))continue;const a=j_(o,r);a&&(t[i]=a,n&&n[i]===void 0&&(n[i]=o))}return{target:t,transitionEnd:n}}const uA="_$css",upe={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=e.includes("var("),o=[];i&&(e=e.replace(IB,y=>(o.push(y),uA)));const a=qd.parse(e);if(a.length>5)return r;const s=qd.createTransformer(e),l=typeof a[0]!="number"?1:0,u=n.x.scale*t.x,d=n.y.scale*t.y;a[0+l]/=u,a[1+l]/=d;const h=Fr(u,d,.5);typeof a[2+l]=="number"&&(a[2+l]/=h),typeof a[3+l]=="number"&&(a[3+l]/=h);let m=s(a);if(i){let y=0;m=m.replace(uA,()=>{const b=o[y];return y++,b})}return m}};class cpe extends Ke.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:i}=this.props,{projection:o}=t;pde(dpe),o&&(n.group&&n.group.add(o),r&&r.register&&i&&r.register(o),o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,onExitComplete:()=>this.safeToRemove()})),N1.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:i,isPresent:o}=this.props,a=r.projection;return a&&(a.isPresent=o,i||t.layoutDependency!==n||n===void 0?a.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?a.promote():a.relegate()||so.postRender(()=>{const s=a.getStack();(!s||!s.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),!t.currentAnimation&&t.isLead()&&this.safeToRemove())}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:i}=t;i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),r&&r.deregister&&r.deregister(i))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function DB(e){const[t,n]=RB(),r=S.useContext(I9);return Ke.createElement(cpe,{...e,layoutGroup:r,switchLayoutGroup:S.useContext(NF),isPresent:t,safeToRemove:n})}const dpe={borderRadius:{...Wv,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Wv,borderTopRightRadius:Wv,borderBottomLeftRadius:Wv,borderBottomRightRadius:Wv,boxShadow:upe};function fpe(e,t,n={}){const r=ta(e)?e:Gm(e);return r.start(n8("",r,t,n)),{stop:()=>r.stop(),isAnimating:()=>r.isAnimating()}}const jB=["TopLeft","TopRight","BottomLeft","BottomRight"],hpe=jB.length,cA=e=>typeof e=="string"?parseFloat(e):e,dA=e=>typeof e=="number"||Pt.test(e);function ppe(e,t,n,r,i,o){i?(e.opacity=Fr(0,n.opacity!==void 0?n.opacity:1,gpe(r)),e.opacityExit=Fr(t.opacity!==void 0?t.opacity:1,0,mpe(r))):o&&(e.opacity=Fr(t.opacity!==void 0?t.opacity:1,n.opacity!==void 0?n.opacity:1,r));for(let a=0;art?1:n(n3(e,t,r))}function hA(e,t){e.min=t.min,e.max=t.max}function Ns(e,t){hA(e.x,t.x),hA(e.y,t.y)}function pA(e,t,n,r,i){return e-=t,e=i3(e,1/n,r),i!==void 0&&(e=i3(e,1/i,r)),e}function vpe(e,t=0,n=1,r=.5,i,o=e,a=e){if(Yl.test(t)&&(t=parseFloat(t),t=Fr(a.min,a.max,t/100)-a.min),typeof t!="number")return;let s=Fr(o.min,o.max,r);e===o&&(s-=t),e.min=pA(e.min,t,n,s,i),e.max=pA(e.max,t,n,s,i)}function gA(e,t,[n,r,i],o,a){vpe(e,t[n],t[r],t[i],t.scale,o,a)}const ype=["x","scaleX","originX"],bpe=["y","scaleY","originY"];function mA(e,t,n,r){gA(e.x,t,ype,n?n.x:void 0,r?r.x:void 0),gA(e.y,t,bpe,n?n.y:void 0,r?r.y:void 0)}function vA(e){return e.translate===0&&e.scale===1}function $B(e){return vA(e.x)&&vA(e.y)}function FB(e,t){return e.x.min===t.x.min&&e.x.max===t.x.max&&e.y.min===t.y.min&&e.y.max===t.y.max}function yA(e){return Aa(e.x)/Aa(e.y)}class xpe{constructor(){this.members=[]}add(t){W9(this.members,t),t.scheduleRender()}remove(t){if(U9(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){const n=this.members.findIndex(i=>t===i);if(n===0)return!1;let r;for(let i=n;i>=0;i--){const o=this.members[i];if(o.isPresent!==!1){r=o;break}}return r?(this.promote(r),!0):!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.instance&&r.scheduleRender(),t.scheduleRender(),t.resumeFrom=r,n&&(t.resumeFrom.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:i}=t.options;i===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:n,resumingFrom:r}=t;n.onExitComplete&&n.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function bA(e,t,n){let r="";const i=e.x.translate/t.x,o=e.y.translate/t.y;if((i||o)&&(r=`translate3d(${i}px, ${o}px, 0) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{rotate:l,rotateX:u,rotateY:d}=n;l&&(r+=`rotate(${l}deg) `),u&&(r+=`rotateX(${u}deg) `),d&&(r+=`rotateY(${d}deg) `)}const a=e.x.scale*t.x,s=e.y.scale*t.y;return(a!==1||s!==1)&&(r+=`scale(${a}, ${s})`),r||"none"}const Spe=(e,t)=>e.depth-t.depth;class wpe{constructor(){this.children=[],this.isDirty=!1}add(t){W9(this.children,t),this.isDirty=!0}remove(t){U9(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(Spe),this.isDirty=!1,this.children.forEach(t)}}const xA=["","X","Y","Z"],SA=1e3;let Cpe=0;function BB({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(a,s={},l=t==null?void 0:t()){this.id=Cpe++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isTransformDirty=!1,this.isProjectionDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.potentialNodes=new Map,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.nodes.forEach(Epe),this.nodes.forEach(Mpe),this.nodes.forEach(Lpe)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.elementId=a,this.latestValues=s,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0,a&&this.root.registerPotentialNode(a,this);for(let u=0;uthis.root.updateBlockedByResize=!1;e(a,()=>{this.root.updateBlockedByResize=!0,h&&h(),h=_B(m,250),N1.hasAnimatedSinceResize&&(N1.hasAnimatedSinceResize=!1,this.nodes.forEach(CA))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&d&&(l||u)&&this.addEventListener("didUpdate",({delta:h,hasLayoutChanged:m,hasRelativeTargetChanged:y,layout:b})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const w=this.options.transition||d.getDefaultTransition()||Dpe,{onLayoutAnimationStart:E,onLayoutAnimationComplete:_}=d.getProps(),k=!this.targetLayout||!FB(this.targetLayout,b)||y,T=!m&&y;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||T||m&&(k||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(h,T);const L={...kB(w,"layout"),onPlay:E,onComplete:_};(d.shouldReduceMotion||this.options.layoutRoot)&&(L.delay=0,L.type=!1),this.startAnimation(L)}else!m&&this.animationProgress===0&&CA(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=b})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const a=this.getStack();a&&a.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,Gd.preRender(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(Ape),this.animationId++)}getTransformTemplate(){const{visualElement:a}=this.options;return a&&a.getProps().transformTemplate}willUpdate(a=!0){if(this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure())}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l{const L=T/1e3;_A(h.x,a.x,L),_A(h.y,a.y,L),this.setTargetDelta(h),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(z1(m,this.layout.layoutBox,this.relativeParent.layout.layoutBox),Rpe(this.relativeTarget,this.relativeTargetOrigin,m,L)),w&&(this.animationValues=d,ppe(d,u,this.latestValues,L,k,_)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=L},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(a){this.notifyListeners("animationStart"),this.currentAnimation&&this.currentAnimation.stop(),this.resumingFrom&&this.resumingFrom.currentAnimation&&this.resumingFrom.currentAnimation.stop(),this.pendingAnimation&&(Gd.update(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=so.update(()=>{N1.hasAnimatedSinceResize=!0,this.currentAnimation=fpe(0,SA,{...a,onUpdate:s=>{this.mixTargetDelta(s),a.onUpdate&&a.onUpdate(s)},onComplete:()=>{a.onComplete&&a.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const a=this.getStack();a&&a.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(SA),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const a=this.getLead();let{targetWithTransforms:s,target:l,layout:u,latestValues:d}=a;if(!(!s||!l||!u)){if(this!==a&&this.layout&&u&&zB(this.options.animationType,this.layout.layoutBox,u.layoutBox)){l=this.target||gi();const h=Aa(this.layout.layoutBox.x);l.x.min=a.target.x.min,l.x.max=l.x.min+h;const m=Aa(this.layout.layoutBox.y);l.y.min=a.target.y.min,l.y.max=l.y.min+m}Ns(s,l),em(s,d),B1(this.projectionDeltaWithTransform,this.layoutCorrected,s,d)}}registerSharedNode(a,s){this.sharedNodes.has(a)||this.sharedNodes.set(a,new xpe),this.sharedNodes.get(a).add(s);const u=s.options.initialPromotionConfig;s.promote({transition:u?u.transition:void 0,preserveFollowOpacity:u&&u.shouldPreserveFollowOpacity?u.shouldPreserveFollowOpacity(s):void 0})}isLead(){const a=this.getStack();return a?a.lead===this:!0}getLead(){var a;const{layoutId:s}=this.options;return s?((a=this.getStack())===null||a===void 0?void 0:a.lead)||this:this}getPrevLead(){var a;const{layoutId:s}=this.options;return s?(a=this.getStack())===null||a===void 0?void 0:a.prevLead:void 0}getStack(){const{layoutId:a}=this.options;if(a)return this.root.sharedNodes.get(a)}promote({needsReset:a,transition:s,preserveFollowOpacity:l}={}){const u=this.getStack();u&&u.promote(this,l),a&&(this.projectionDelta=void 0,this.needsReset=!0),s&&this.setOptions({transition:s})}relegate(){const a=this.getStack();return a?a.relegate(this):!1}resetRotation(){const{visualElement:a}=this.options;if(!a)return;let s=!1;const{latestValues:l}=a;if((l.rotate||l.rotateX||l.rotateY||l.rotateZ)&&(s=!0),!s)return;const u={};for(let d=0;d{var s;return(s=a.currentAnimation)===null||s===void 0?void 0:s.stop()}),this.root.nodes.forEach(wA),this.root.sharedNodes.clear()}}}function _pe(e){e.updateLayout()}function kpe(e){var t;const n=((t=e.resumeFrom)===null||t===void 0?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&n&&e.hasListeners("didUpdate")){const{layoutBox:r,measuredBox:i}=e.layout,{animationType:o}=e.options,a=n.source!==e.layout.source;o==="size"?Al(h=>{const m=a?n.measuredBox[h]:n.layoutBox[h],y=Aa(m);m.min=r[h].min,m.max=m.min+y}):zB(o,n.layoutBox,r)&&Al(h=>{const m=a?n.measuredBox[h]:n.layoutBox[h],y=Aa(r[h]);m.max=m.min+y});const s=H1();B1(s,r,n.layoutBox);const l=H1();a?B1(l,e.applyTransform(i,!0),n.measuredBox):B1(l,r,n.layoutBox);const u=!$B(s);let d=!1;if(!e.resumeFrom){const h=e.getClosestProjectingParent();if(h&&!h.resumeFrom){const{snapshot:m,layout:y}=h;if(m&&y){const b=gi();z1(b,n.layoutBox,m.layoutBox);const w=gi();z1(w,r,y.layoutBox),FB(b,w)||(d=!0),h.options.layoutRoot&&(e.relativeTarget=w,e.relativeTargetOrigin=b,e.relativeParent=h)}}}e.notifyListeners("didUpdate",{layout:r,snapshot:n,delta:l,layoutDelta:s,hasLayoutChanged:u,hasRelativeTargetChanged:d})}else if(e.isLead()){const{onExitComplete:r}=e.options;r&&r()}e.options.transition=void 0}function Epe(e){e.isProjectionDirty||(e.isProjectionDirty=Boolean(e.parent&&e.parent.isProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=Boolean(e.parent&&e.parent.isTransformDirty))}function Ppe(e){e.clearSnapshot()}function wA(e){e.clearMeasurements()}function Tpe(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function CA(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0}function Mpe(e){e.resolveTargetDelta()}function Lpe(e){e.calcProjection()}function Ape(e){e.resetRotation()}function Ope(e){e.removeLeadSnapshot()}function _A(e,t,n){e.translate=Fr(t.translate,0,n),e.scale=Fr(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function kA(e,t,n,r){e.min=Fr(t.min,n.min,r),e.max=Fr(t.max,n.max,r)}function Rpe(e,t,n,r){kA(e.x,t.x,n.x,r),kA(e.y,t.y,n.y,r)}function Ipe(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const Dpe={duration:.45,ease:[.4,0,.1,1]};function jpe(e,t){let n=e.root;for(let o=e.path.length-1;o>=0;o--)if(Boolean(e.path[o].instance)){n=e.path[o];break}const i=(n&&n!==e.root?n.instance:document).querySelector(`[data-projection-id="${t}"]`);i&&e.mount(i,!0)}function EA(e){e.min=Math.round(e.min),e.max=Math.round(e.max)}function Npe(e){EA(e.x),EA(e.y)}function zB(e,t,n){return e==="position"||e==="preserve-aspect"&&!A_(yA(t),yA(n),.2)}const $pe=BB({attachResizeListener:(e,t)=>Hu(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),aC={current:void 0},HB=BB({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!aC.current){const e=new $pe(0,{});e.mount(window),e.setOptions({layoutScroll:!0}),aC.current=e}return aC.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>Boolean(window.getComputedStyle(e).position==="fixed")}),Fpe={pan:{Feature:ipe},drag:{Feature:rpe,ProjectionNode:HB,MeasureLayout:DB}},Bpe=new Set(["width","height","top","left","right","bottom","x","y"]),WB=e=>Bpe.has(e),zpe=e=>Object.keys(e).some(WB),PA=e=>e===np||e===Pt;var TA;(function(e){e.width="width",e.height="height",e.left="left",e.right="right",e.top="top",e.bottom="bottom"})(TA||(TA={}));const MA=(e,t)=>parseFloat(e.split(", ")[t]),LA=(e,t)=>(n,{transform:r})=>{if(r==="none"||!r)return 0;const i=r.match(/^matrix3d\((.+)\)$/);if(i)return MA(i[1],t);{const o=r.match(/^matrix\((.+)\)$/);return o?MA(o[1],e):0}},Hpe=new Set(["x","y","z"]),Wpe=Aw.filter(e=>!Hpe.has(e));function Upe(e){const t=[];return Wpe.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t.length&&e.render(),t}const AA={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:LA(4,13),y:LA(5,14)},Vpe=(e,t,n)=>{const r=t.measureViewportBox(),i=t.current,o=getComputedStyle(i),{display:a}=o,s={};a==="none"&&t.setStaticValue("display",e.display||"block"),n.forEach(u=>{s[u]=AA[u](r,o)}),t.render();const l=t.measureViewportBox();return n.forEach(u=>{const d=t.getValue(u);d&&d.jump(s[u]),e[u]=AA[u](l,o)}),e},Gpe=(e,t,n={},r={})=>{t={...t},r={...r};const i=Object.keys(t).filter(WB);let o=[],a=!1;const s=[];if(i.forEach(l=>{const u=e.getValue(l);if(!e.hasValue(l))return;let d=n[l],h=Hv(d);const m=t[l];let y;if(QS(m)){const b=m.length,w=m[0]===null?1:0;d=m[w],h=Hv(d);for(let E=w;E=0?window.pageYOffset:null,u=Vpe(t,e,s);return o.length&&o.forEach(([d,h])=>{e.getValue(d).set(h)}),e.render(),Tw&&l!==null&&window.scrollTo({top:l}),{target:u,transitionEnd:r}}else return{target:t,transitionEnd:r}};function qpe(e,t,n,r){return zpe(t)?Gpe(e,t,n,r):{target:t,transitionEnd:r}}const Kpe=(e,t,n,r)=>{const i=lpe(e,t,r);return t=i.target,r=i.transitionEnd,qpe(e,t,n,r)},N_={current:null},UB={current:!1};function Ype(){if(UB.current=!0,!!Tw)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>N_.current=e.matches;e.addListener(t),t()}else N_.current=!1}function Xpe(e,t,n){const{willChange:r}=t;for(const i in t){const o=t[i],a=n[i];if(ta(o))e.addValue(i,o),e3(r)&&r.add(i);else if(ta(a))e.addValue(i,Gm(o,{owner:e})),e3(r)&&r.remove(i);else if(a!==o)if(e.hasValue(i)){const s=e.getValue(i);!s.hasAnimated&&s.set(o)}else{const s=e.getStaticValue(i);e.addValue(i,Gm(s!==void 0?s:o,{owner:e}))}}for(const i in n)t[i]===void 0&&e.removeValue(i);return t}const VB=Object.keys(ky),Zpe=VB.length,OA=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class Qpe{constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:i,visualState:o},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>so.render(this.render,!1,!0);const{latestValues:s,renderState:l}=o;this.latestValues=s,this.baseTarget={...s},this.initialValues=n.initial?{...s}:{},this.renderState=l,this.parent=t,this.props=n,this.presenceContext=r,this.depth=t?t.depth+1:0,this.reducedMotionConfig=i,this.options=a,this.isControllingVariants=Lw(n),this.isVariantNode=jF(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(t&&t.current);const{willChange:u,...d}=this.scrapeMotionValuesFromProps(n,{});for(const h in d){const m=d[h];s[h]!==void 0&&ta(m)&&(m.set(s[h],!1),e3(u)&&u.add(h))}}scrapeMotionValuesFromProps(t,n){return{}}mount(t){this.current=t,this.projection&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,r)=>this.bindToMotionValue(r,n)),UB.current||Ype(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:N_.current,this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),Gd.update(this.notifyUpdate),Gd.render(this.render),this.valueSubscriptions.forEach(t=>t()),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const t in this.events)this.events[t].clear();for(const t in this.features)this.features[t].unmount();this.current=null}bindToMotionValue(t,n){const r=d0.has(t),i=n.on("change",a=>{this.latestValues[t]=a,this.props.onUpdate&&so.update(this.notifyUpdate,!1,!0),r&&this.projection&&(this.projection.isTransformDirty=!0)}),o=n.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(t,()=>{i(),o()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}loadFeatures({children:t,...n},r,i,o,a){let s,l;for(let u=0;uthis.scheduleRender(),animationType:typeof d=="string"?d:"both",initialPromotionConfig:a,layoutScroll:y,layoutRoot:b})}return l}updateFeatures(){for(const t in this.features){const n=this.features[t];n.isMounted?n.update(this.props,this.prevProps):(n.mount(),n.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):gi()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}makeTargetAnimatable(t,n=!0){return this.makeTargetAnimatableFromInstance(t,this.props,n)}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;rn.variantChildren.delete(t)}addValue(t,n){n!==this.values.get(t)&&(this.removeValue(t),this.bindToMotionValue(t,n)),this.values.set(t,n),this.latestValues[t]=n.get()}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=Gm(n,{owner:this}),this.addValue(t,r)),r}readValue(t){return this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.readValueFromInstance(this.current,t,this.options)}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var n;const{initial:r}=this.props,i=typeof r=="string"||typeof r=="object"?(n=H9(this.props,r))===null||n===void 0?void 0:n[t]:void 0;if(r&&i!==void 0)return i;const o=this.getBaseTargetFromProps(this.props,t);return o!==void 0&&!ta(o)?o:this.initialValues[t]!==void 0&&i===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new V9),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}}const GB=["initial",...r8],Jpe=GB.length;class qB extends Qpe{sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){return t.style?t.style[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}makeTargetAnimatableFromInstance({transition:t,transitionEnd:n,...r},{transformValues:i},o){let a=Pfe(r,t||{},this);if(i&&(n&&(n=i(n)),r&&(r=i(r)),a&&(a=i(a))),o){kfe(this,r,a);const s=Kpe(this,r,a,n);n=s.transitionEnd,r=s.target}return{transition:t,transitionEnd:n,...r}}}function ege(e){return window.getComputedStyle(e)}class tge extends qB{readValueFromInstance(t,n){if(d0.has(n)){const r=K9(n);return r&&r.default||0}else{const r=ege(t),i=(FF(n)?r.getPropertyValue(n):r[n])||0;return typeof i=="string"?i.trim():i}}measureInstanceViewportBox(t,{transformPagePoint:n}){return OB(t,n)}build(t,n,r,i){j9(t,n,r,i.transformTemplate)}scrapeMotionValuesFromProps(t,n){return z9(t,n)}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;ta(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}renderInstance(t,n,r,i){UF(t,n,r,i)}}class nge extends qB{constructor(){super(...arguments),this.isSVGTag=!1}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(d0.has(n)){const r=K9(n);return r&&r.default||0}return n=VF.has(n)?n:B9(n),t.getAttribute(n)}measureInstanceViewportBox(){return gi()}scrapeMotionValuesFromProps(t,n){return qF(t,n)}build(t,n,r,i){$9(t,n,r,this.isSVGTag,i.transformTemplate)}renderInstance(t,n,r,i){GF(t,n,r,i)}mount(t){this.isSVGTag=F9(t.tagName),super.mount(t)}}const rge=(e,t)=>D9(e)?new nge(t,{enableHardwareAcceleration:!1}):new tge(t,{enableHardwareAcceleration:!0}),ige={layout:{ProjectionNode:HB,MeasureLayout:DB}},oge={...Nhe,...Jde,...Fpe,...ige},su=fde((e,t)=>Bde(e,t,oge,rge));function KB(){const e=S.useRef(!1);return YS(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function age(){const e=KB(),[t,n]=S.useState(0),r=S.useCallback(()=>{e.current&&n(t+1)},[t]);return[S.useCallback(()=>so.postRender(r),[r]),t]}class sge extends S.Component{getSnapshotBeforeUpdate(t){const n=this.props.childRef.current;if(n&&t.isPresent&&!this.props.isPresent){const r=this.props.sizeRef.current;r.height=n.offsetHeight||0,r.width=n.offsetWidth||0,r.top=n.offsetTop,r.left=n.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function lge({children:e,isPresent:t}){const n=S.useId(),r=S.useRef(null),i=S.useRef({width:0,height:0,top:0,left:0});return S.useInsertionEffect(()=>{const{width:o,height:a,top:s,left:l}=i.current;if(t||!r.current||!o||!a)return;r.current.dataset.motionPopId=n;const u=document.createElement("style");return document.head.appendChild(u),u.sheet&&u.sheet.insertRule(` + )`;return{...!r&&i&&o,...r?{bgImage:s}:{bgColor:a}}},kae={lineHeight:"1",fontSize:"0.25em",fontWeight:"bold",color:"white"},Eae=e=>({bg:wt("gray.100","whiteAlpha.300")(e)}),Pae=e=>({transitionProperty:"common",transitionDuration:"slow",..._ae(e)}),Tae=c1(e=>({label:kae,filledTrack:Pae(e),track:Eae(e)})),Mae={xs:c1({track:{h:"1"}}),sm:c1({track:{h:"2"}}),md:c1({track:{h:"3"}}),lg:c1({track:{h:"4"}})},Lae=Cae({sizes:Mae,baseStyle:Tae,defaultProps:{size:"md",colorScheme:"blue"}}),Aae=e=>typeof e=="function";function Eo(e,...t){return Aae(e)?e(...t):e}var{definePartsStyle:Gx,defineMultiStyleConfig:Oae}=dr(_ie.keys),D1=gn("checkbox-size"),Rae=e=>{const{colorScheme:t}=e;return{w:D1.reference,h:D1.reference,transitionProperty:"box-shadow",transitionDuration:"normal",border:"2px solid",borderRadius:"sm",borderColor:"inherit",color:"white",_checked:{bg:wt(`${t}.500`,`${t}.200`)(e),borderColor:wt(`${t}.500`,`${t}.200`)(e),color:wt("white","gray.900")(e),_hover:{bg:wt(`${t}.600`,`${t}.300`)(e),borderColor:wt(`${t}.600`,`${t}.300`)(e)},_disabled:{borderColor:wt("gray.200","transparent")(e),bg:wt("gray.200","whiteAlpha.300")(e),color:wt("gray.500","whiteAlpha.500")(e)}},_indeterminate:{bg:wt(`${t}.500`,`${t}.200`)(e),borderColor:wt(`${t}.500`,`${t}.200`)(e),color:wt("white","gray.900")(e)},_disabled:{bg:wt("gray.100","whiteAlpha.100")(e),borderColor:wt("gray.100","transparent")(e)},_focusVisible:{boxShadow:"outline"},_invalid:{borderColor:wt("red.500","red.300")(e)}}},Iae={_disabled:{cursor:"not-allowed"}},Dae={userSelect:"none",_disabled:{opacity:.4}},jae={transitionProperty:"transform",transitionDuration:"normal"},Nae=Gx(e=>({icon:jae,container:Iae,control:Eo(Rae,e),label:Dae})),$ae={sm:Gx({control:{[D1.variable]:"sizes.3"},label:{fontSize:"sm"},icon:{fontSize:"3xs"}}),md:Gx({control:{[D1.variable]:"sizes.4"},label:{fontSize:"md"},icon:{fontSize:"2xs"}}),lg:Gx({control:{[D1.variable]:"sizes.5"},label:{fontSize:"lg"},icon:{fontSize:"2xs"}})},GS=Oae({baseStyle:Nae,sizes:$ae,defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:Fae,definePartsStyle:qx}=dr(jie.keys),Bae=e=>{var t;const n=(t=Eo(GS.baseStyle,e))==null?void 0:t.control;return{...n,borderRadius:"full",_checked:{...n==null?void 0:n._checked,_before:{content:'""',display:"inline-block",pos:"relative",w:"50%",h:"50%",borderRadius:"50%",bg:"currentColor"}}}},zae=qx(e=>{var t,n,r,i;return{label:(n=(t=GS).baseStyle)==null?void 0:n.call(t,e).label,container:(i=(r=GS).baseStyle)==null?void 0:i.call(r,e).container,control:Bae(e)}}),Hae={md:qx({control:{w:"4",h:"4"},label:{fontSize:"md"}}),lg:qx({control:{w:"5",h:"5"},label:{fontSize:"lg"}}),sm:qx({control:{width:"3",height:"3"},label:{fontSize:"sm"}})},Wae=Fae({baseStyle:zae,sizes:Hae,defaultProps:{size:"md",colorScheme:"blue"}}),{defineMultiStyleConfig:Uae,definePartsStyle:Vae}=dr(Nie.keys),Nb=gn("select-bg"),dL,Gae={...(dL=xn.baseStyle)==null?void 0:dL.field,appearance:"none",paddingBottom:"1px",lineHeight:"normal",bg:Nb.reference,[Nb.variable]:"colors.white",_dark:{[Nb.variable]:"colors.gray.700"},"> option, > optgroup":{bg:Nb.reference}},qae={width:"6",height:"100%",insetEnd:"2",position:"relative",color:"currentColor",fontSize:"xl",_disabled:{opacity:.5}},Kae=Vae({field:Gae,icon:qae}),$b={paddingInlineEnd:"8"},fL,hL,pL,gL,mL,vL,yL,bL,Yae={lg:{...(fL=xn.sizes)==null?void 0:fL.lg,field:{...(hL=xn.sizes)==null?void 0:hL.lg.field,...$b}},md:{...(pL=xn.sizes)==null?void 0:pL.md,field:{...(gL=xn.sizes)==null?void 0:gL.md.field,...$b}},sm:{...(mL=xn.sizes)==null?void 0:mL.sm,field:{...(vL=xn.sizes)==null?void 0:vL.sm.field,...$b}},xs:{...(yL=xn.sizes)==null?void 0:yL.xs,field:{...(bL=xn.sizes)==null?void 0:bL.xs.field,...$b},icon:{insetEnd:"1"}}},Xae=Uae({baseStyle:Kae,sizes:Yae,variants:xn.variants,defaultProps:xn.defaultProps}),j5=gn("skeleton-start-color"),N5=gn("skeleton-end-color"),Zae={[j5.variable]:"colors.gray.100",[N5.variable]:"colors.gray.400",_dark:{[j5.variable]:"colors.gray.800",[N5.variable]:"colors.gray.600"},background:j5.reference,borderColor:N5.reference,opacity:.7,borderRadius:"sm"},Qae={baseStyle:Zae},$5=gn("skip-link-bg"),Jae={borderRadius:"md",fontWeight:"semibold",_focusVisible:{boxShadow:"outline",padding:"4",position:"fixed",top:"6",insetStart:"6",[$5.variable]:"colors.white",_dark:{[$5.variable]:"colors.gray.700"},bg:$5.reference}},ese={baseStyle:Jae},{defineMultiStyleConfig:tse,definePartsStyle:kw}=dr($ie.keys),Sy=gn("slider-thumb-size"),wy=gn("slider-track-size"),bd=gn("slider-bg"),nse=e=>{const{orientation:t}=e;return{display:"inline-block",position:"relative",cursor:"pointer",_disabled:{opacity:.6,cursor:"default",pointerEvents:"none"},...M9({orientation:t,vertical:{h:"100%"},horizontal:{w:"100%"}})}},rse=e=>({...M9({orientation:e.orientation,horizontal:{h:wy.reference},vertical:{w:wy.reference}}),overflow:"hidden",borderRadius:"sm",[bd.variable]:"colors.gray.200",_dark:{[bd.variable]:"colors.whiteAlpha.200"},_disabled:{[bd.variable]:"colors.gray.300",_dark:{[bd.variable]:"colors.whiteAlpha.300"}},bg:bd.reference}),ise=e=>{const{orientation:t}=e;return{...M9({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",_active:{transform:"translateX(-50%) scale(1.15)"}},horizontal:{top:"50%",transform:"translateY(-50%)",_active:{transform:"translateY(-50%) scale(1.15)"}}}),w:Sy.reference,h:Sy.reference,display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",outline:0,zIndex:1,borderRadius:"full",bg:"white",boxShadow:"base",border:"1px solid",borderColor:"transparent",transitionProperty:"transform",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{bg:"gray.300"}}},ose=e=>{const{colorScheme:t}=e;return{width:"inherit",height:"inherit",[bd.variable]:`colors.${t}.500`,_dark:{[bd.variable]:`colors.${t}.200`},bg:bd.reference}},ase=kw(e=>({container:nse(e),track:rse(e),thumb:ise(e),filledTrack:ose(e)})),sse=kw({container:{[Sy.variable]:"sizes.4",[wy.variable]:"sizes.1"}}),lse=kw({container:{[Sy.variable]:"sizes.3.5",[wy.variable]:"sizes.1"}}),use=kw({container:{[Sy.variable]:"sizes.2.5",[wy.variable]:"sizes.0.5"}}),cse={lg:sse,md:lse,sm:use},dse=tse({baseStyle:ase,sizes:cse,defaultProps:{size:"md",colorScheme:"blue"}}),xh=yi("spinner-size"),fse={width:[xh.reference],height:[xh.reference]},hse={xs:{[xh.variable]:"sizes.3"},sm:{[xh.variable]:"sizes.4"},md:{[xh.variable]:"sizes.6"},lg:{[xh.variable]:"sizes.8"},xl:{[xh.variable]:"sizes.12"}},pse={baseStyle:fse,sizes:hse,defaultProps:{size:"md"}},{defineMultiStyleConfig:gse,definePartsStyle:gF}=dr(Fie.keys),mse={fontWeight:"medium"},vse={opacity:.8,marginBottom:"2"},yse={verticalAlign:"baseline",fontWeight:"semibold"},bse={marginEnd:1,w:"3.5",h:"3.5",verticalAlign:"middle"},xse=gF({container:{},label:mse,helpText:vse,number:yse,icon:bse}),Sse={md:gF({label:{fontSize:"sm"},helpText:{fontSize:"sm"},number:{fontSize:"2xl"}})},wse=gse({baseStyle:xse,sizes:Sse,defaultProps:{size:"md"}}),F5=gn("kbd-bg"),Cse={[F5.variable]:"colors.gray.100",_dark:{[F5.variable]:"colors.whiteAlpha.100"},bg:F5.reference,borderRadius:"md",borderWidth:"1px",borderBottomWidth:"3px",fontSize:"0.8em",fontWeight:"bold",lineHeight:"normal",px:"0.4em",whiteSpace:"nowrap"},_se={baseStyle:Cse},kse={transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}},Ese={baseStyle:kse},{defineMultiStyleConfig:Pse,definePartsStyle:Tse}=dr(Lie.keys),Mse={marginEnd:"2",display:"inline",verticalAlign:"text-bottom"},Lse=Tse({icon:Mse}),Ase=Pse({baseStyle:Lse}),{defineMultiStyleConfig:Ose,definePartsStyle:Rse}=dr(Aie.keys),Rl=gn("menu-bg"),B5=gn("menu-shadow"),Ise={[Rl.variable]:"#fff",[B5.variable]:"shadows.sm",_dark:{[Rl.variable]:"colors.gray.700",[B5.variable]:"shadows.dark-lg"},color:"inherit",minW:"3xs",py:"2",zIndex:1,borderRadius:"md",borderWidth:"1px",bg:Rl.reference,boxShadow:B5.reference},Dse={py:"1.5",px:"3",transitionProperty:"background",transitionDuration:"ultra-fast",transitionTimingFunction:"ease-in",_focus:{[Rl.variable]:"colors.gray.100",_dark:{[Rl.variable]:"colors.whiteAlpha.100"}},_active:{[Rl.variable]:"colors.gray.200",_dark:{[Rl.variable]:"colors.whiteAlpha.200"}},_expanded:{[Rl.variable]:"colors.gray.100",_dark:{[Rl.variable]:"colors.whiteAlpha.100"}},_disabled:{opacity:.4,cursor:"not-allowed"},bg:Rl.reference},jse={mx:4,my:2,fontWeight:"semibold",fontSize:"sm"},Nse={opacity:.6},$se={border:0,borderBottom:"1px solid",borderColor:"inherit",my:"2",opacity:.6},Fse={transitionProperty:"common",transitionDuration:"normal"},Bse=Rse({button:Fse,list:Ise,item:Dse,groupTitle:jse,command:Nse,divider:$se}),zse=Ose({baseStyle:Bse}),{defineMultiStyleConfig:Hse,definePartsStyle:v_}=dr(Oie.keys),Wse={bg:"blackAlpha.600",zIndex:"modal"},Use=e=>{const{isCentered:t,scrollBehavior:n}=e;return{display:"flex",zIndex:"modal",justifyContent:"center",alignItems:t?"center":"flex-start",overflow:n==="inside"?"hidden":"auto",overscrollBehaviorY:"none"}},Vse=e=>{const{scrollBehavior:t}=e;return{borderRadius:"md",bg:wt("white","gray.700")(e),color:"inherit",my:"16",zIndex:"modal",maxH:t==="inside"?"calc(100% - 7.5rem)":void 0,boxShadow:wt("lg","dark-lg")(e)}},Gse={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},qse={position:"absolute",top:"2",insetEnd:"3"},Kse=e=>{const{scrollBehavior:t}=e;return{px:"6",py:"2",flex:"1",overflow:t==="inside"?"auto":void 0}},Yse={px:"6",py:"4"},Xse=v_(e=>({overlay:Wse,dialogContainer:Eo(Use,e),dialog:Eo(Vse,e),header:Gse,closeButton:qse,body:Eo(Kse,e),footer:Yse}));function js(e){return v_(e==="full"?{dialog:{maxW:"100vw",minH:"$100vh",my:"0",borderRadius:"0"}}:{dialog:{maxW:e}})}var Zse={xs:js("xs"),sm:js("sm"),md:js("md"),lg:js("lg"),xl:js("xl"),"2xl":js("2xl"),"3xl":js("3xl"),"4xl":js("4xl"),"5xl":js("5xl"),"6xl":js("6xl"),full:js("full")},Qse=Hse({baseStyle:Xse,sizes:Zse,defaultProps:{size:"md"}}),{defineMultiStyleConfig:Jse,definePartsStyle:mF}=dr(Rie.keys),A9=yi("number-input-stepper-width"),vF=yi("number-input-input-padding"),ele=Nu(A9).add("0.5rem").toString(),z5=yi("number-input-bg"),H5=yi("number-input-color"),W5=yi("number-input-border-color"),tle={[A9.variable]:"sizes.6",[vF.variable]:ele},nle=e=>{var t,n;return(n=(t=Eo(xn.baseStyle,e))==null?void 0:t.field)!=null?n:{}},rle={width:A9.reference},ile={borderStart:"1px solid",borderStartColor:W5.reference,color:H5.reference,bg:z5.reference,[H5.variable]:"colors.chakra-body-text",[W5.variable]:"colors.chakra-border-color",_dark:{[H5.variable]:"colors.whiteAlpha.800",[W5.variable]:"colors.whiteAlpha.300"},_active:{[z5.variable]:"colors.gray.200",_dark:{[z5.variable]:"colors.whiteAlpha.300"}},_disabled:{opacity:.4,cursor:"not-allowed"}},ole=mF(e=>{var t;return{root:tle,field:(t=Eo(nle,e))!=null?t:{},stepperGroup:rle,stepper:ile}});function Fb(e){var t,n,r;const i=(t=xn.sizes)==null?void 0:t[e],o={lg:"md",md:"md",sm:"sm",xs:"sm"},a=(r=(n=i.field)==null?void 0:n.fontSize)!=null?r:"md",s=cF.fontSizes[a];return mF({field:{...i.field,paddingInlineEnd:vF.reference,verticalAlign:"top"},stepper:{fontSize:Nu(s).multiply(.75).toString(),_first:{borderTopEndRadius:o[e]},_last:{borderBottomEndRadius:o[e],mt:"-1px",borderTopWidth:1}}})}var ale={xs:Fb("xs"),sm:Fb("sm"),md:Fb("md"),lg:Fb("lg")},sle=Jse({baseStyle:ole,sizes:ale,variants:xn.variants,defaultProps:xn.defaultProps}),xL,lle={...(xL=xn.baseStyle)==null?void 0:xL.field,textAlign:"center"},ule={lg:{fontSize:"lg",w:12,h:12,borderRadius:"md"},md:{fontSize:"md",w:10,h:10,borderRadius:"md"},sm:{fontSize:"sm",w:8,h:8,borderRadius:"sm"},xs:{fontSize:"xs",w:6,h:6,borderRadius:"sm"}},SL,wL,cle={outline:e=>{var t,n,r;return(r=(n=Eo((t=xn.variants)==null?void 0:t.outline,e))==null?void 0:n.field)!=null?r:{}},flushed:e=>{var t,n,r;return(r=(n=Eo((t=xn.variants)==null?void 0:t.flushed,e))==null?void 0:n.field)!=null?r:{}},filled:e=>{var t,n,r;return(r=(n=Eo((t=xn.variants)==null?void 0:t.filled,e))==null?void 0:n.field)!=null?r:{}},unstyled:(wL=(SL=xn.variants)==null?void 0:SL.unstyled.field)!=null?wL:{}},dle={baseStyle:lle,sizes:ule,variants:cle,defaultProps:xn.defaultProps},{defineMultiStyleConfig:fle,definePartsStyle:hle}=dr(Iie.keys),Bb=yi("popper-bg"),ple=yi("popper-arrow-bg"),CL=yi("popper-arrow-shadow-color"),gle={zIndex:10},mle={[Bb.variable]:"colors.white",bg:Bb.reference,[ple.variable]:Bb.reference,[CL.variable]:"colors.gray.200",_dark:{[Bb.variable]:"colors.gray.700",[CL.variable]:"colors.whiteAlpha.300"},width:"xs",border:"1px solid",borderColor:"inherit",borderRadius:"md",boxShadow:"sm",zIndex:"inherit",_focusVisible:{outline:0,boxShadow:"outline"}},vle={px:3,py:2,borderBottomWidth:"1px"},yle={px:3,py:2},ble={px:3,py:2,borderTopWidth:"1px"},xle={position:"absolute",borderRadius:"md",top:1,insetEnd:2,padding:2},Sle=hle({popper:gle,content:mle,header:vle,body:yle,footer:ble,closeButton:xle}),wle=fle({baseStyle:Sle}),{definePartsStyle:y_,defineMultiStyleConfig:Cle}=dr(kie.keys),U5=gn("drawer-bg"),V5=gn("drawer-box-shadow");function bg(e){return y_(e==="full"?{dialog:{maxW:"100vw",h:"100vh"}}:{dialog:{maxW:e}})}var _le={bg:"blackAlpha.600",zIndex:"overlay"},kle={display:"flex",zIndex:"modal",justifyContent:"center"},Ele=e=>{const{isFullHeight:t}=e;return{...t&&{height:"100vh"},zIndex:"modal",maxH:"100vh",color:"inherit",[U5.variable]:"colors.white",[V5.variable]:"shadows.lg",_dark:{[U5.variable]:"colors.gray.700",[V5.variable]:"shadows.dark-lg"},bg:U5.reference,boxShadow:V5.reference}},Ple={px:"6",py:"4",fontSize:"xl",fontWeight:"semibold"},Tle={position:"absolute",top:"2",insetEnd:"3"},Mle={px:"6",py:"2",flex:"1",overflow:"auto"},Lle={px:"6",py:"4"},Ale=y_(e=>({overlay:_le,dialogContainer:kle,dialog:Eo(Ele,e),header:Ple,closeButton:Tle,body:Mle,footer:Lle})),Ole={xs:bg("xs"),sm:bg("md"),md:bg("lg"),lg:bg("2xl"),xl:bg("4xl"),full:bg("full")},Rle=Cle({baseStyle:Ale,sizes:Ole,defaultProps:{size:"xs"}}),{definePartsStyle:Ile,defineMultiStyleConfig:Dle}=dr(Eie.keys),jle={borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal"},Nle={borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},$le={borderRadius:"md",py:"1",transitionProperty:"common",transitionDuration:"normal",width:"full",_focusVisible:{boxShadow:"outline"},_placeholder:{opacity:.6}},Fle=Ile({preview:jle,input:Nle,textarea:$le}),Ble=Dle({baseStyle:Fle}),{definePartsStyle:zle,defineMultiStyleConfig:Hle}=dr(Pie.keys),xm=gn("form-control-color"),Wle={marginStart:"1",[xm.variable]:"colors.red.500",_dark:{[xm.variable]:"colors.red.300"},color:xm.reference},Ule={mt:"2",[xm.variable]:"colors.gray.600",_dark:{[xm.variable]:"colors.whiteAlpha.600"},color:xm.reference,lineHeight:"normal",fontSize:"sm"},Vle=zle({container:{width:"100%",position:"relative"},requiredIndicator:Wle,helperText:Ule}),Gle=Hle({baseStyle:Vle}),{definePartsStyle:qle,defineMultiStyleConfig:Kle}=dr(Tie.keys),Sm=gn("form-error-color"),Yle={[Sm.variable]:"colors.red.500",_dark:{[Sm.variable]:"colors.red.300"},color:Sm.reference,mt:"2",fontSize:"sm",lineHeight:"normal"},Xle={marginEnd:"0.5em",[Sm.variable]:"colors.red.500",_dark:{[Sm.variable]:"colors.red.300"},color:Sm.reference},Zle=qle({text:Yle,icon:Xle}),Qle=Kle({baseStyle:Zle}),Jle={fontSize:"md",marginEnd:"3",mb:"2",fontWeight:"medium",transitionProperty:"common",transitionDuration:"normal",opacity:1,_disabled:{opacity:.4}},eue={baseStyle:Jle},tue={fontFamily:"heading",fontWeight:"bold"},nue={"4xl":{fontSize:["6xl",null,"7xl"],lineHeight:1},"3xl":{fontSize:["5xl",null,"6xl"],lineHeight:1},"2xl":{fontSize:["4xl",null,"5xl"],lineHeight:[1.2,null,1]},xl:{fontSize:["3xl",null,"4xl"],lineHeight:[1.33,null,1.2]},lg:{fontSize:["2xl",null,"3xl"],lineHeight:[1.33,null,1.2]},md:{fontSize:"xl",lineHeight:1.2},sm:{fontSize:"md",lineHeight:1.2},xs:{fontSize:"sm",lineHeight:1.2}},rue={baseStyle:tue,sizes:nue,defaultProps:{size:"xl"}},{defineMultiStyleConfig:iue,definePartsStyle:oue}=dr(Cie.keys),aue={transitionProperty:"common",transitionDuration:"fast",transitionTimingFunction:"ease-out",cursor:"pointer",textDecoration:"none",outline:"none",color:"inherit",_hover:{textDecoration:"underline"},_focusVisible:{boxShadow:"outline"}},sue=oue({link:aue}),lue=iue({baseStyle:sue}),uue={lineHeight:"1.2",borderRadius:"md",fontWeight:"semibold",transitionProperty:"common",transitionDuration:"normal",_focusVisible:{boxShadow:"outline"},_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{_disabled:{bg:"initial"}}},yF=e=>{const{colorScheme:t,theme:n}=e;if(t==="gray")return{color:wt("inherit","whiteAlpha.900")(e),_hover:{bg:wt("gray.100","whiteAlpha.200")(e)},_active:{bg:wt("gray.200","whiteAlpha.300")(e)}};const r=Um(`${t}.200`,.12)(n),i=Um(`${t}.200`,.24)(n);return{color:wt(`${t}.600`,`${t}.200`)(e),bg:"transparent",_hover:{bg:wt(`${t}.50`,r)(e)},_active:{bg:wt(`${t}.100`,i)(e)}}},cue=e=>{const{colorScheme:t}=e,n=wt("gray.200","whiteAlpha.300")(e);return{border:"1px solid",borderColor:t==="gray"?n:"currentColor",".chakra-button__group[data-attached][data-orientation=horizontal] > &:not(:last-of-type)":{marginEnd:"-1px"},".chakra-button__group[data-attached][data-orientation=vertical] > &:not(:last-of-type)":{marginBottom:"-1px"},...Eo(yF,e)}},due={yellow:{bg:"yellow.400",color:"black",hoverBg:"yellow.500",activeBg:"yellow.600"},cyan:{bg:"cyan.400",color:"black",hoverBg:"cyan.500",activeBg:"cyan.600"}},fue=e=>{var t;const{colorScheme:n}=e;if(n==="gray"){const l=wt("gray.100","whiteAlpha.200")(e);return{bg:l,_hover:{bg:wt("gray.200","whiteAlpha.300")(e),_disabled:{bg:l}},_active:{bg:wt("gray.300","whiteAlpha.400")(e)}}}const{bg:r=`${n}.500`,color:i="white",hoverBg:o=`${n}.600`,activeBg:a=`${n}.700`}=(t=due[n])!=null?t:{},s=wt(r,`${n}.200`)(e);return{bg:s,color:wt(i,"gray.800")(e),_hover:{bg:wt(o,`${n}.300`)(e),_disabled:{bg:s}},_active:{bg:wt(a,`${n}.400`)(e)}}},hue=e=>{const{colorScheme:t}=e;return{padding:0,height:"auto",lineHeight:"normal",verticalAlign:"baseline",color:wt(`${t}.500`,`${t}.200`)(e),_hover:{textDecoration:"underline",_disabled:{textDecoration:"none"}},_active:{color:wt(`${t}.700`,`${t}.500`)(e)}}},pue={bg:"none",color:"inherit",display:"inline",lineHeight:"inherit",m:"0",p:"0"},gue={ghost:yF,outline:cue,solid:fue,link:hue,unstyled:pue},mue={lg:{h:"12",minW:"12",fontSize:"lg",px:"6"},md:{h:"10",minW:"10",fontSize:"md",px:"4"},sm:{h:"8",minW:"8",fontSize:"sm",px:"3"},xs:{h:"6",minW:"6",fontSize:"xs",px:"2"}},vue={baseStyle:uue,variants:gue,sizes:mue,defaultProps:{variant:"solid",size:"md",colorScheme:"gray"}},{definePartsStyle:Rh,defineMultiStyleConfig:yue}=dr(Uie.keys),qS=gn("card-bg"),Vu=gn("card-padding"),bF=gn("card-shadow"),Kx=gn("card-radius"),xF=gn("card-border-width","0"),SF=gn("card-border-color"),bue=Rh({container:{[qS.variable]:"colors.chakra-body-bg",backgroundColor:qS.reference,boxShadow:bF.reference,borderRadius:Kx.reference,color:"chakra-body-text",borderWidth:xF.reference,borderColor:SF.reference},body:{padding:Vu.reference,flex:"1 1 0%"},header:{padding:Vu.reference},footer:{padding:Vu.reference}}),xue={sm:Rh({container:{[Kx.variable]:"radii.base",[Vu.variable]:"space.3"}}),md:Rh({container:{[Kx.variable]:"radii.md",[Vu.variable]:"space.5"}}),lg:Rh({container:{[Kx.variable]:"radii.xl",[Vu.variable]:"space.7"}})},Sue={elevated:Rh({container:{[bF.variable]:"shadows.base",_dark:{[qS.variable]:"colors.gray.700"}}}),outline:Rh({container:{[xF.variable]:"1px",[SF.variable]:"colors.chakra-border-color"}}),filled:Rh({container:{[qS.variable]:"colors.chakra-subtle-bg"}}),unstyled:{body:{[Vu.variable]:0},header:{[Vu.variable]:0},footer:{[Vu.variable]:0}}},wue=yue({baseStyle:bue,variants:Sue,sizes:xue,defaultProps:{variant:"elevated",size:"md"}}),j1=yi("close-button-size"),zv=yi("close-button-bg"),Cue={w:[j1.reference],h:[j1.reference],borderRadius:"md",transitionProperty:"common",transitionDuration:"normal",_disabled:{opacity:.4,cursor:"not-allowed",boxShadow:"none"},_hover:{[zv.variable]:"colors.blackAlpha.100",_dark:{[zv.variable]:"colors.whiteAlpha.100"}},_active:{[zv.variable]:"colors.blackAlpha.200",_dark:{[zv.variable]:"colors.whiteAlpha.200"}},_focusVisible:{boxShadow:"outline"},bg:zv.reference},_ue={lg:{[j1.variable]:"sizes.10",fontSize:"md"},md:{[j1.variable]:"sizes.8",fontSize:"xs"},sm:{[j1.variable]:"sizes.6",fontSize:"2xs"}},kue={baseStyle:Cue,sizes:_ue,defaultProps:{size:"md"}},{variants:Eue,defaultProps:Pue}=I1,Tue={fontFamily:"mono",fontSize:"sm",px:"0.2em",borderRadius:"sm"},Mue={baseStyle:Tue,variants:Eue,defaultProps:Pue},Lue={w:"100%",mx:"auto",maxW:"prose",px:"4"},Aue={baseStyle:Lue},Oue={opacity:.6,borderColor:"inherit"},Rue={borderStyle:"solid"},Iue={borderStyle:"dashed"},Due={solid:Rue,dashed:Iue},jue={baseStyle:Oue,variants:Due,defaultProps:{variant:"solid"}},{definePartsStyle:Nue,defineMultiStyleConfig:$ue}=dr(xie.keys),Fue={borderTopWidth:"1px",borderColor:"inherit",_last:{borderBottomWidth:"1px"}},Bue={transitionProperty:"common",transitionDuration:"normal",fontSize:"md",_focusVisible:{boxShadow:"outline"},_hover:{bg:"blackAlpha.50"},_disabled:{opacity:.4,cursor:"not-allowed"},px:"4",py:"2"},zue={pt:"2",px:"4",pb:"5"},Hue={fontSize:"1.25em"},Wue=Nue({container:Fue,button:Bue,panel:zue,icon:Hue}),Uue=$ue({baseStyle:Wue}),{definePartsStyle:e2,defineMultiStyleConfig:Vue}=dr(Sie.keys),Ta=gn("alert-fg"),nc=gn("alert-bg"),Gue=e2({container:{bg:nc.reference,px:"4",py:"3"},title:{fontWeight:"bold",lineHeight:"6",marginEnd:"2"},description:{lineHeight:"6"},icon:{color:Ta.reference,flexShrink:0,marginEnd:"3",w:"5",h:"6"},spinner:{color:Ta.reference,flexShrink:0,marginEnd:"3",w:"5",h:"5"}});function O9(e){const{theme:t,colorScheme:n}=e,r=Um(`${n}.200`,.16)(t);return{light:`colors.${n}.100`,dark:r}}var que=e2(e=>{const{colorScheme:t}=e,n=O9(e);return{container:{[Ta.variable]:`colors.${t}.500`,[nc.variable]:n.light,_dark:{[Ta.variable]:`colors.${t}.200`,[nc.variable]:n.dark}}}}),Kue=e2(e=>{const{colorScheme:t}=e,n=O9(e);return{container:{[Ta.variable]:`colors.${t}.500`,[nc.variable]:n.light,_dark:{[Ta.variable]:`colors.${t}.200`,[nc.variable]:n.dark},paddingStart:"3",borderStartWidth:"4px",borderStartColor:Ta.reference}}}),Yue=e2(e=>{const{colorScheme:t}=e,n=O9(e);return{container:{[Ta.variable]:`colors.${t}.500`,[nc.variable]:n.light,_dark:{[Ta.variable]:`colors.${t}.200`,[nc.variable]:n.dark},pt:"2",borderTopWidth:"4px",borderTopColor:Ta.reference}}}),Xue=e2(e=>{const{colorScheme:t}=e;return{container:{[Ta.variable]:"colors.white",[nc.variable]:`colors.${t}.500`,_dark:{[Ta.variable]:"colors.gray.900",[nc.variable]:`colors.${t}.200`},color:Ta.reference}}}),Zue={subtle:que,"left-accent":Kue,"top-accent":Yue,solid:Xue},Que=Vue({baseStyle:Gue,variants:Zue,defaultProps:{variant:"subtle",colorScheme:"blue"}}),{definePartsStyle:wF,defineMultiStyleConfig:Jue}=dr(wie.keys),wm=gn("avatar-border-color"),G5=gn("avatar-bg"),ece={borderRadius:"full",border:"0.2em solid",[wm.variable]:"white",_dark:{[wm.variable]:"colors.gray.800"},borderColor:wm.reference},tce={[G5.variable]:"colors.gray.200",_dark:{[G5.variable]:"colors.whiteAlpha.400"},bgColor:G5.reference},_L=gn("avatar-background"),nce=e=>{const{name:t,theme:n}=e,r=t?coe({string:t}):"colors.gray.400",i=loe(r)(n);let o="white";return i||(o="gray.800"),{bg:_L.reference,"&:not([data-loaded])":{[_L.variable]:r},color:o,[wm.variable]:"colors.white",_dark:{[wm.variable]:"colors.gray.800"},borderColor:wm.reference,verticalAlign:"top"}},rce=wF(e=>({badge:Eo(ece,e),excessLabel:Eo(tce,e),container:Eo(nce,e)}));function ld(e){const t=e!=="100%"?fF[e]:void 0;return wF({container:{width:e,height:e,fontSize:`calc(${t??e} / 2.5)`},excessLabel:{width:e,height:e},label:{fontSize:`calc(${t??e} / 2.5)`,lineHeight:e!=="100%"?t??e:void 0}})}var ice={"2xs":ld(4),xs:ld(6),sm:ld(8),md:ld(12),lg:ld(16),xl:ld(24),"2xl":ld(32),full:ld("100%")},oce=Jue({baseStyle:rce,sizes:ice,defaultProps:{size:"md"}}),ace={Accordion:Uue,Alert:Que,Avatar:oce,Badge:I1,Breadcrumb:lue,Button:vue,Checkbox:GS,CloseButton:kue,Code:Mue,Container:Aue,Divider:jue,Drawer:Rle,Editable:Ble,Form:Gle,FormError:Qle,FormLabel:eue,Heading:rue,Input:xn,Kbd:_se,Link:Ese,List:Ase,Menu:zse,Modal:Qse,NumberInput:sle,PinInput:dle,Popover:wle,Progress:Lae,Radio:Wae,Select:Xae,Skeleton:Qae,SkipLink:ese,Slider:dse,Spinner:pse,Stat:wse,Switch:Eoe,Table:Roe,Tabs:Koe,Tag:sae,Textarea:bae,Tooltip:wae,Card:wue},sce={colors:{"chakra-body-text":{_light:"gray.800",_dark:"whiteAlpha.900"},"chakra-body-bg":{_light:"white",_dark:"gray.800"},"chakra-border-color":{_light:"gray.200",_dark:"whiteAlpha.300"},"chakra-subtle-bg":{_light:"gray.100",_dark:"gray.700"},"chakra-placeholder-color":{_light:"gray.500",_dark:"whiteAlpha.400"}}},lce={global:{body:{fontFamily:"body",color:"chakra-body-text",bg:"chakra-body-bg",transitionProperty:"background-color",transitionDuration:"normal",lineHeight:"base"},"*::placeholder":{color:"chakra-placeholder-color"},"*, *::before, &::after":{borderColor:"chakra-border-color",wordWrap:"break-word"}}},uce="ltr",cce={useSystemColorMode:!1,initialColorMode:"light",cssVarPrefix:"chakra"},dce={semanticTokens:sce,direction:uce,...bie,components:ace,styles:lce,config:cce};function fce(){return!!(typeof window<"u"&&window.document&&window.document.createElement)}var hce=fce();function pce(e,t){const n={};return Object.keys(e).forEach(r=>{t.includes(r)||(n[r]=e[r])}),n}function gce(e,t,n,r){const i=typeof t=="string"?t.split("."):[t];for(r=0;r{const t=new WeakMap;return(r,i,o,a)=>{if(typeof r>"u")return e(r,i,o);t.has(r)||t.set(r,new Map);const s=t.get(r);if(s.has(i))return s.get(i);const l=e(r,i,o,a);return s.set(i,l),l}},CF=mce(gce);function _F(e,t){const n={};return Object.keys(e).forEach(r=>{const i=e[r];t(i,r,e)&&(n[r]=i)}),n}var kF=e=>_F(e,t=>t!=null);function vce(e){return typeof e=="function"}function EF(e,...t){return vce(e)?e(...t):e}function yce(...e){return function(n){e.some(r=>(r==null||r(n),n==null?void 0:n.defaultPrevented))}}const PF=1/60*1e3,bce=typeof performance<"u"?()=>performance.now():()=>Date.now(),TF=typeof window<"u"?e=>window.requestAnimationFrame(e):e=>setTimeout(()=>e(bce()),PF);function xce(e){let t=[],n=[],r=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(l,u=!1,d=!1)=>{const p=d&&i,m=p?t:n;return u&&a.add(l),m.indexOf(l)===-1&&(m.push(l),p&&i&&(r=t.length)),l},cancel:l=>{const u=n.indexOf(l);u!==-1&&n.splice(u,1),a.delete(l)},process:l=>{if(i){o=!0;return}if(i=!0,[t,n]=[n,t],n.length=0,r=t.length,r)for(let u=0;u(e[t]=xce(()=>Cy=!0),e),{}),wce=t2.reduce((e,t)=>{const n=Ew[t];return e[t]=(r,i=!1,o=!1)=>(Cy||kce(),n.schedule(r,i,o)),e},{}),Cce=t2.reduce((e,t)=>(e[t]=Ew[t].cancel,e),{});t2.reduce((e,t)=>(e[t]=()=>Ew[t].process(Cm),e),{});const _ce=e=>Ew[e].process(Cm),MF=e=>{Cy=!1,Cm.delta=b_?PF:Math.max(Math.min(e-Cm.timestamp,Sce),1),Cm.timestamp=e,x_=!0,t2.forEach(_ce),x_=!1,Cy&&(b_=!1,TF(MF))},kce=()=>{Cy=!0,b_=!0,x_||TF(MF)},kL=()=>Cm;var Ece=typeof Element<"u",Pce=typeof Map=="function",Tce=typeof Set=="function",Mce=typeof ArrayBuffer=="function"&&!!ArrayBuffer.isView;function Yx(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor!==t.constructor)return!1;var n,r,i;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Yx(e[r],t[r]))return!1;return!0}var o;if(Pce&&e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(o=e.entries();!(r=o.next()).done;)if(!t.has(r.value[0]))return!1;for(o=e.entries();!(r=o.next()).done;)if(!Yx(r.value[1],t.get(r.value[0])))return!1;return!0}if(Tce&&e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(o=e.entries();!(r=o.next()).done;)if(!t.has(r.value[0]))return!1;return!0}if(Mce&&ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(e[r]!==t[r])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===t.toString();if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,i[r]))return!1;if(Ece&&e instanceof Element)return!1;for(r=n;r--!==0;)if(!((i[r]==="_owner"||i[r]==="__v"||i[r]==="__o")&&e.$$typeof)&&!Yx(e[i[r]],t[i[r]]))return!1;return!0}return e!==e&&t!==t}var Lce=function(t,n){try{return Yx(t,n)}catch(r){if((r.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw r}};function LF(e,t={}){var n;const{styleConfig:r,...i}=t,{theme:o,colorMode:a}=eF(),s=e?CF(o,`components.${e}`):void 0,l=r||s,u=Bl({theme:o,colorMode:a},(n=l==null?void 0:l.defaultProps)!=null?n:{},kF(pce(i,["children"]))),d=S.useRef({});if(l){const m=Kre(l)(u);Lce(d.current,m)||(d.current=m)}return d.current}function au(e,t={}){return LF(e,t)}function Yi(e,t={}){return LF(e,t)}var Ace=new Set([...jre,"textStyle","layerStyle","apply","noOfLines","focusBorderColor","errorBorderColor","as","__css","css","sx"]),Oce=new Set(["htmlWidth","htmlHeight","htmlSize","htmlTranslate"]);function Rce(e){return Oce.has(e)||!Ace.has(e)}function Ice(e){const t=Object.assign({},e);for(let n in t)t[n]===void 0&&delete t[n];return t}function Dce(e,...t){if(e==null)throw new TypeError("Cannot convert undefined or null to object");const n={...e};for(const r of t)if(r!=null)for(const i in r)Object.prototype.hasOwnProperty.call(r,i)&&(i in n&&delete n[i],n[i]=r[i]);return n}var jce=/^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/,Nce=$j(function(e){return jce.test(e)||e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)<91}),$ce=Nce,Fce=function(t){return t!=="theme"},EL=function(t){return typeof t=="string"&&t.charCodeAt(0)>96?$ce:Fce},PL=function(t,n,r){var i;if(n){var o=n.shouldForwardProp;i=t.__emotion_forwardProp&&o?function(a){return t.__emotion_forwardProp(a)&&o(a)}:o}return typeof i!="function"&&r&&(i=t.__emotion_forwardProp),i},Bce=function(t){var n=t.cache,r=t.serialized,i=t.isStringTag;return Uj(n,r,i),uee(function(){return Vj(n,r,i)}),null},zce=function e(t,n){var r=t.__emotion_real===t,i=r&&t.__emotion_base||t,o,a;n!==void 0&&(o=n.label,a=n.target);var s=PL(t,n,r),l=s||EL(i),u=!l("as");return function(){var d=arguments,p=r&&t.__emotion_styles!==void 0?t.__emotion_styles.slice(0):[];if(o!==void 0&&p.push("label:"+o+";"),d[0]==null||d[0].raw===void 0)p.push.apply(p,d);else{p.push(d[0][0]);for(var m=d.length,y=1;yt=>{const{theme:n,css:r,__css:i,sx:o,...a}=t,s=_F(a,(p,m)=>$re(m)),l=EF(e,t),u=Dce({},i,l,kF(s),o),d=uF(u)(t.theme);return r?[d,r]:d};function q5(e,t){const{baseStyle:n,...r}=t??{};r.shouldForwardProp||(r.shouldForwardProp=Rce);const i=Uce({baseStyle:n}),o=Wce(e,r)(i);return Ke.forwardRef(function(l,u){const{colorMode:d,forced:p}=Qy();return Ke.createElement(o,{ref:u,"data-theme":p?d:void 0,...l})})}function Vce(){const e=new Map;return new Proxy(q5,{apply(t,n,r){return q5(...r)},get(t,n){return e.has(n)||e.set(n,q5(n)),e.get(n)}})}var Ne=Vce();function Ze(e){return S.forwardRef(e)}function Gce(e={}){const{strict:t=!0,errorMessage:n="useContext: `context` is undefined. Seems you forgot to wrap component within the Provider",name:r}=e,i=S.createContext(void 0);i.displayName=r;function o(){var a;const s=S.useContext(i);if(!s&&t){const l=new Error(n);throw l.name="ContextError",(a=Error.captureStackTrace)==null||a.call(Error,l,o),l}return s}return[i.Provider,o,i]}function qce(e){const{cssVarsRoot:t,theme:n,children:r}=e,i=S.useMemo(()=>Ire(n),[n]);return g.jsxs(hee,{theme:i,children:[g.jsx(Kce,{root:t}),r]})}function Kce({root:e=":host, :root"}){const t=[e,"[data-theme]"].join(",");return g.jsx(ow,{styles:n=>({[t]:n.__cssVars})})}Gce({name:"StylesContext",errorMessage:"useStyles: `styles` is undefined. Seems you forgot to wrap the components in `` "});function Yce(){const{colorMode:e}=Qy();return g.jsx(ow,{styles:t=>{const n=CF(t,"styles.global"),r=EF(n,{theme:t,colorMode:e});return r?uF(r)(t):void 0}})}var AF=S.createContext({getDocument(){return document},getWindow(){return window}});AF.displayName="EnvironmentContext";function OF(e){const{children:t,environment:n,disabled:r}=e,i=S.useRef(null),o=S.useMemo(()=>n||{getDocument:()=>{var s,l;return(l=(s=i.current)==null?void 0:s.ownerDocument)!=null?l:document},getWindow:()=>{var s,l;return(l=(s=i.current)==null?void 0:s.ownerDocument.defaultView)!=null?l:window}},[n]),a=!r||!n;return g.jsxs(AF.Provider,{value:o,children:[t,a&&g.jsx("span",{id:"__chakra_env",hidden:!0,ref:i})]})}OF.displayName="EnvironmentProvider";var Xce=e=>{const{children:t,colorModeManager:n,portalZIndex:r,resetCSS:i=!0,theme:o={},environment:a,cssVarsRoot:s,disableEnvironment:l}=e,u=g.jsx(OF,{environment:a,disabled:l,children:t});return g.jsx(qce,{theme:o,cssVarsRoot:s,children:g.jsxs(J$,{colorModeManager:n,options:o.config,children:[i?g.jsx(mee,{}):g.jsx(gee,{}),g.jsx(Yce,{}),r?g.jsx(Zj,{zIndex:r,children:u}):u]})})},Zce=(e,t)=>e.find(n=>n.id===t);function ML(e,t){const n=RF(e,t),r=n?e[n].findIndex(i=>i.id===t):-1;return{position:n,index:r}}function RF(e,t){for(const[n,r]of Object.entries(e))if(Zce(r,t))return n}function Qce(e){const t=e.includes("right"),n=e.includes("left");let r="center";return t&&(r="flex-end"),n&&(r="flex-start"),{display:"flex",flexDirection:"column",alignItems:r}}function Jce(e){const n=e==="top"||e==="bottom"?"0 auto":void 0,r=e.includes("top")?"env(safe-area-inset-top, 0px)":void 0,i=e.includes("bottom")?"env(safe-area-inset-bottom, 0px)":void 0,o=e.includes("left")?void 0:"env(safe-area-inset-right, 0px)",a=e.includes("right")?void 0:"env(safe-area-inset-left, 0px)";return{position:"fixed",zIndex:5500,pointerEvents:"none",display:"flex",flexDirection:"column",margin:n,top:r,bottom:i,right:o,left:a}}function Qr(e,t=[]){const n=S.useRef(e);return S.useEffect(()=>{n.current=e}),S.useCallback((...r)=>{var i;return(i=n.current)==null?void 0:i.call(n,...r)},t)}function ede(e,t){const n=Qr(e);S.useEffect(()=>{if(t==null)return;let r=null;return r=window.setTimeout(()=>{n()},t),()=>{r&&window.clearTimeout(r)}},[t,n])}function rc(e,t){const n=S.useRef(!1),r=S.useRef(!1);S.useEffect(()=>{if(n.current&&r.current)return e();r.current=!0},t),S.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[])}const IF=S.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"}),Pw=S.createContext({});function tde(){return S.useContext(Pw).visualElement}const n2=S.createContext(null),Tw=typeof document<"u",YS=Tw?S.useLayoutEffect:S.useEffect,DF=S.createContext({strict:!1});function nde(e,t,n,r){const i=tde(),o=S.useContext(DF),a=S.useContext(n2),s=S.useContext(IF).reducedMotion,l=S.useRef();r=r||o.renderer,!l.current&&r&&(l.current=r(e,{visualState:t,parent:i,props:n,presenceContext:a,blockInitialAnimation:a?a.initial===!1:!1,reducedMotionConfig:s}));const u=l.current;return S.useInsertionEffect(()=>{u&&u.update(n,a)}),YS(()=>{u&&u.render()}),S.useEffect(()=>{u&&u.updateFeatures()}),(window.HandoffAppearAnimations?YS:S.useEffect)(()=>{u&&u.animationState&&u.animationState.animateChanges()}),u}function Qg(e){return typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function rde(e,t,n){return S.useCallback(r=>{r&&e.mount&&e.mount(r),t&&(r?t.mount(r):t.unmount()),n&&(typeof n=="function"?n(r):Qg(n)&&(n.current=r))},[t])}function _y(e){return typeof e=="string"||Array.isArray(e)}function Mw(e){return typeof e=="object"&&typeof e.start=="function"}const ide=["initial","animate","exit","whileHover","whileDrag","whileTap","whileFocus","whileInView"];function Lw(e){return Mw(e.animate)||ide.some(t=>_y(e[t]))}function jF(e){return Boolean(Lw(e)||e.variants)}function ode(e,t){if(Lw(e)){const{initial:n,animate:r}=e;return{initial:n===!1||_y(n)?n:void 0,animate:_y(r)?r:void 0}}return e.inherit!==!1?t:{}}function ade(e){const{initial:t,animate:n}=ode(e,S.useContext(Pw));return S.useMemo(()=>({initial:t,animate:n}),[LL(t),LL(n)])}function LL(e){return Array.isArray(e)?e.join(" "):e}const AL={animation:["animate","exit","variants","whileHover","whileTap","whileFocus","whileDrag","whileInView"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},ky={};for(const e in AL)ky[e]={isEnabled:t=>AL[e].some(n=>!!t[n])};function sde(e){for(const t in e)ky[t]={...ky[t],...e[t]}}function R9(e){const t=S.useRef(null);return t.current===null&&(t.current=e()),t.current}const N1={hasAnimatedSinceResize:!0,hasEverUpdated:!1};let lde=1;function ude(){return R9(()=>{if(N1.hasEverUpdated)return lde++})}const I9=S.createContext({}),NF=S.createContext({}),cde=Symbol.for("motionComponentSymbol");function dde({preloadedFeatures:e,createVisualElement:t,useRender:n,useVisualState:r,Component:i}){e&&sde(e);function o(s,l){let u;const d={...S.useContext(IF),...s,layoutId:fde(s)},{isStatic:p}=d,m=ade(s),y=p?void 0:ude(),b=r(s,p);if(!p&&Tw){m.visualElement=nde(i,b,d,t);const w=S.useContext(NF),E=S.useContext(DF).strict;m.visualElement&&(u=m.visualElement.loadFeatures(d,E,e,y,w))}return S.createElement(Pw.Provider,{value:m},u&&m.visualElement?S.createElement(u,{visualElement:m.visualElement,...d}):null,n(i,s,y,rde(b,m.visualElement,l),b,p,m.visualElement))}const a=S.forwardRef(o);return a[cde]=i,a}function fde({layoutId:e}){const t=S.useContext(I9).id;return t&&e!==void 0?t+"-"+e:e}function hde(e){function t(r,i={}){return dde(e(r,i))}if(typeof Proxy>"u")return t;const n=new Map;return new Proxy(t,{get:(r,i)=>(n.has(i)||n.set(i,t(i)),n.get(i))})}const pde=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function D9(e){return typeof e!="string"||e.includes("-")?!1:!!(pde.indexOf(e)>-1||/[A-Z]/.test(e))}const XS={};function gde(e){Object.assign(XS,e)}const Aw=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],d0=new Set(Aw);function $F(e,{layout:t,layoutId:n}){return d0.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!XS[e]||e==="opacity")}const ta=e=>Boolean(e&&e.getVelocity),mde={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},vde=Aw.length;function yde(e,{enableHardwareAcceleration:t=!0,allowTransformNone:n=!0},r,i){let o="";for(let a=0;at&&typeof e=="number"?t.transform(e):e,Vm=(e,t,n)=>Math.min(Math.max(n,e),t),np={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},$1={...np,transform:e=>Vm(0,1,e)},zb={...np,default:1},F1=e=>Math.round(e*1e5)/1e5,Ey=/(-)?([\d]*\.?[\d])+/g,S_=/(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))/gi,xde=/^(#[0-9a-f]{3,8}|(rgb|hsl)a?\((-?[\d\.]+%?[,\s]+){2}(-?[\d\.]+%?)\s*[\,\/]?\s*[\d\.]*%?\))$/i;function r2(e){return typeof e=="string"}const i2=e=>({test:t=>r2(t)&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),cd=i2("deg"),Yl=i2("%"),Pt=i2("px"),Sde=i2("vh"),wde=i2("vw"),OL={...Yl,parse:e=>Yl.parse(e)/100,transform:e=>Yl.transform(e*100)},RL={...np,transform:Math.round},BF={borderWidth:Pt,borderTopWidth:Pt,borderRightWidth:Pt,borderBottomWidth:Pt,borderLeftWidth:Pt,borderRadius:Pt,radius:Pt,borderTopLeftRadius:Pt,borderTopRightRadius:Pt,borderBottomRightRadius:Pt,borderBottomLeftRadius:Pt,width:Pt,maxWidth:Pt,height:Pt,maxHeight:Pt,size:Pt,top:Pt,right:Pt,bottom:Pt,left:Pt,padding:Pt,paddingTop:Pt,paddingRight:Pt,paddingBottom:Pt,paddingLeft:Pt,margin:Pt,marginTop:Pt,marginRight:Pt,marginBottom:Pt,marginLeft:Pt,rotate:cd,rotateX:cd,rotateY:cd,rotateZ:cd,scale:zb,scaleX:zb,scaleY:zb,scaleZ:zb,skew:cd,skewX:cd,skewY:cd,distance:Pt,translateX:Pt,translateY:Pt,translateZ:Pt,x:Pt,y:Pt,z:Pt,perspective:Pt,transformPerspective:Pt,opacity:$1,originX:OL,originY:OL,originZ:Pt,zIndex:RL,fillOpacity:$1,strokeOpacity:$1,numOctaves:RL};function j9(e,t,n,r){const{style:i,vars:o,transform:a,transformOrigin:s}=e;let l=!1,u=!1,d=!0;for(const p in t){const m=t[p];if(FF(p)){o[p]=m;continue}const y=BF[p],b=bde(m,y);if(d0.has(p)){if(l=!0,a[p]=b,!d)continue;m!==(y.default||0)&&(d=!1)}else p.startsWith("origin")?(u=!0,s[p]=b):i[p]=b}if(t.transform||(l||r?i.transform=yde(e.transform,n,d,r):i.transform&&(i.transform="none")),u){const{originX:p="50%",originY:m="50%",originZ:y=0}=s;i.transformOrigin=`${p} ${m} ${y}`}}const N9=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function zF(e,t,n){for(const r in t)!ta(t[r])&&!$F(r,n)&&(e[r]=t[r])}function Cde({transformTemplate:e},t,n){return S.useMemo(()=>{const r=N9();return j9(r,t,{enableHardwareAcceleration:!n},e),Object.assign({},r.vars,r.style)},[t])}function _de(e,t,n){const r=e.style||{},i={};return zF(i,r,e),Object.assign(i,Cde(e,t,n)),e.transformValues?e.transformValues(i):i}function kde(e,t,n){const r={},i=_de(e,t,n);return e.drag&&e.dragListener!==!1&&(r.draggable=!1,i.userSelect=i.WebkitUserSelect=i.WebkitTouchCallout="none",i.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(r.tabIndex=0),r.style=i,r}const Ede=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","transformValues","custom","inherit","onLayoutAnimationStart","onLayoutAnimationComplete","onLayoutMeasure","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","ignoreStrict","viewport"]);function ZS(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||Ede.has(e)}let HF=e=>!ZS(e);function Pde(e){e&&(HF=t=>t.startsWith("on")?!ZS(t):e(t))}try{Pde(require("@emotion/is-prop-valid").default)}catch{}function Tde(e,t,n){const r={};for(const i in e)i==="values"&&typeof e.values=="object"||(HF(i)||n===!0&&ZS(i)||!t&&!ZS(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}function IL(e,t,n){return typeof e=="string"?e:Pt.transform(t+n*e)}function Mde(e,t,n){const r=IL(t,e.x,e.width),i=IL(n,e.y,e.height);return`${r} ${i}`}const Lde={offset:"stroke-dashoffset",array:"stroke-dasharray"},Ade={offset:"strokeDashoffset",array:"strokeDasharray"};function Ode(e,t,n=1,r=0,i=!0){e.pathLength=1;const o=i?Lde:Ade;e[o.offset]=Pt.transform(-r);const a=Pt.transform(t),s=Pt.transform(n);e[o.array]=`${a} ${s}`}function $9(e,{attrX:t,attrY:n,originX:r,originY:i,pathLength:o,pathSpacing:a=1,pathOffset:s=0,...l},u,d,p){if(j9(e,l,u,p),d){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:m,style:y,dimensions:b}=e;m.transform&&(b&&(y.transform=m.transform),delete m.transform),b&&(r!==void 0||i!==void 0||y.transform)&&(y.transformOrigin=Mde(b,r!==void 0?r:.5,i!==void 0?i:.5)),t!==void 0&&(m.x=t),n!==void 0&&(m.y=n),o!==void 0&&Ode(m,o,a,s,!1)}const WF=()=>({...N9(),attrs:{}}),F9=e=>typeof e=="string"&&e.toLowerCase()==="svg";function Rde(e,t,n,r){const i=S.useMemo(()=>{const o=WF();return $9(o,t,{enableHardwareAcceleration:!1},F9(r),e.transformTemplate),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};zF(o,e.style,e),i.style={...o,...i.style}}return i}function Ide(e=!1){return(n,r,i,o,{latestValues:a},s)=>{const u=(D9(n)?Rde:kde)(r,a,s,n),p={...Tde(r,typeof n=="string",e),...u,ref:o},{children:m}=r,y=S.useMemo(()=>ta(m)?m.get():m,[m]);return i&&(p["data-projection-id"]=i),S.createElement(n,{...p,children:y})}}const B9=e=>e.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();function UF(e,{style:t,vars:n},r,i){Object.assign(e.style,t,i&&i.getProjectionStyles(r));for(const o in n)e.style.setProperty(o,n[o])}const VF=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function GF(e,t,n,r){UF(e,t,void 0,r);for(const i in t.attrs)e.setAttribute(VF.has(i)?i:B9(i),t.attrs[i])}function z9(e,t){const{style:n}=e,r={};for(const i in n)(ta(n[i])||t.style&&ta(t.style[i])||$F(i,e))&&(r[i]=n[i]);return r}function qF(e,t){const n=z9(e,t);for(const r in e)if(ta(e[r])||ta(t[r])){const i=r==="x"||r==="y"?"attr"+r.toUpperCase():r;n[i]=e[r]}return n}function H9(e,t,n,r={},i={}){return typeof t=="function"&&(t=t(n!==void 0?n:e.custom,r,i)),typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"&&(t=t(n!==void 0?n:e.custom,r,i)),t}const QS=e=>Array.isArray(e),Dde=e=>Boolean(e&&typeof e=="object"&&e.mix&&e.toValue),jde=e=>QS(e)?e[e.length-1]||0:e;function Xx(e){const t=ta(e)?e.get():e;return Dde(t)?t.toValue():t}function Nde({scrapeMotionValuesFromProps:e,createRenderState:t,onMount:n},r,i,o){const a={latestValues:$de(r,i,o,e),renderState:t()};return n&&(a.mount=s=>n(r,s,a)),a}const KF=e=>(t,n)=>{const r=S.useContext(Pw),i=S.useContext(n2),o=()=>Nde(e,t,r,i);return n?o():R9(o)};function $de(e,t,n,r){const i={},o=r(e,{});for(const m in o)i[m]=Xx(o[m]);let{initial:a,animate:s}=e;const l=Lw(e),u=jF(e);t&&u&&!l&&e.inherit!==!1&&(a===void 0&&(a=t.initial),s===void 0&&(s=t.animate));let d=n?n.initial===!1:!1;d=d||a===!1;const p=d?s:a;return p&&typeof p!="boolean"&&!Mw(p)&&(Array.isArray(p)?p:[p]).forEach(y=>{const b=H9(e,y);if(!b)return;const{transitionEnd:w,transition:E,..._}=b;for(const k in _){let T=_[k];if(Array.isArray(T)){const L=d?T.length-1:0;T=T[L]}T!==null&&(i[k]=T)}for(const k in w)i[k]=w[k]}),i}const Fde={useVisualState:KF({scrapeMotionValuesFromProps:qF,createRenderState:WF,onMount:(e,t,{renderState:n,latestValues:r})=>{try{n.dimensions=typeof t.getBBox=="function"?t.getBBox():t.getBoundingClientRect()}catch{n.dimensions={x:0,y:0,width:0,height:0}}$9(n,r,{enableHardwareAcceleration:!1},F9(t.tagName),e.transformTemplate),GF(t,n)}})},Bde={useVisualState:KF({scrapeMotionValuesFromProps:z9,createRenderState:N9})};function zde(e,{forwardMotionProps:t=!1},n,r){return{...D9(e)?Fde:Bde,preloadedFeatures:n,useRender:Ide(t),createVisualElement:r,Component:e}}function Hu(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}const YF=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1;function Ow(e,t="page"){return{point:{x:e[t+"X"],y:e[t+"Y"]}}}const Hde=e=>t=>YF(t)&&e(t,Ow(t));function Gu(e,t,n,r){return Hu(e,t,Hde(n),r)}var tr;(function(e){e.Animate="animate",e.Hover="whileHover",e.Tap="whileTap",e.Drag="whileDrag",e.Focus="whileFocus",e.InView="whileInView",e.Exit="exit"})(tr||(tr={}));const Wde=(e,t)=>n=>t(e(n)),Nd=(...e)=>e.reduce(Wde);function XF(e){let t=null;return()=>{const n=()=>{t=null};return t===null?(t=e,n):!1}}const DL=XF("dragHorizontal"),jL=XF("dragVertical");function ZF(e){let t=!1;if(e==="y")t=jL();else if(e==="x")t=DL();else{const n=DL(),r=jL();n&&r?t=()=>{n(),r()}:(n&&n(),r&&r())}return t}function QF(){const e=ZF(!0);return e?(e(),!1):!0}let sf=class{constructor(t){this.isMounted=!1,this.node=t}update(){}};function NL(e,t){const n="pointer"+(t?"enter":"leave"),r="onHover"+(t?"Start":"End"),i=(o,a)=>{if(o.type==="touch"||QF())return;const s=e.getProps();e.animationState&&s.whileHover&&e.animationState.setActive(tr.Hover,t),s[r]&&s[r](o,a)};return Gu(e.current,n,i,{passive:!e.getProps()[r]})}class Ude extends sf{mount(){this.unmount=Nd(NL(this.node,!0),NL(this.node,!1))}unmount(){}}class Vde extends sf{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive(tr.Focus,!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive(tr.Focus,!1),this.isActive=!1)}mount(){this.unmount=Nd(Hu(this.node.current,"focus",()=>this.onFocus()),Hu(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}const JF=(e,t)=>t?e===t?!0:JF(e,t.parentElement):!1,Xl=e=>e;function K5(e,t){if(!t)return;const n=new PointerEvent("pointer"+e);t(n,Ow(n))}class Gde extends sf{constructor(){super(...arguments),this.removeStartListeners=Xl,this.removeEndListeners=Xl,this.removeAccessibleListeners=Xl,this.startPointerPress=(t,n)=>{if(this.removeEndListeners(),this.isPressing)return;const r=this.node.getProps(),o=Gu(window,"pointerup",(s,l)=>{if(!this.checkPressEnd())return;const{onTap:u,onTapCancel:d}=this.node.getProps();JF(this.node.current,s.target)?u&&u(s,l):d&&d(s,l)},{passive:!(r.onTap||r.onPointerUp)}),a=Gu(window,"pointercancel",(s,l)=>this.cancelPress(s,l),{passive:!(r.onTapCancel||r.onPointerCancel)});this.removeEndListeners=Nd(o,a),this.startPress(t,n)},this.startAccessiblePress=()=>{const t=o=>{if(o.key!=="Enter"||this.isPressing)return;const a=s=>{s.key!=="Enter"||!this.checkPressEnd()||K5("up",this.node.getProps().onTap)};this.removeEndListeners(),this.removeEndListeners=Hu(this.node.current,"keyup",a),K5("down",(s,l)=>{this.startPress(s,l)})},n=Hu(this.node.current,"keydown",t),r=()=>{this.isPressing&&K5("cancel",(o,a)=>this.cancelPress(o,a))},i=Hu(this.node.current,"blur",r);this.removeAccessibleListeners=Nd(n,i)}}startPress(t,n){this.isPressing=!0;const{onTapStart:r,whileTap:i}=this.node.getProps();i&&this.node.animationState&&this.node.animationState.setActive(tr.Tap,!0),r&&r(t,n)}checkPressEnd(){return this.removeEndListeners(),this.isPressing=!1,this.node.getProps().whileTap&&this.node.animationState&&this.node.animationState.setActive(tr.Tap,!1),!QF()}cancelPress(t,n){if(!this.checkPressEnd())return;const{onTapCancel:r}=this.node.getProps();r&&r(t,n)}mount(){const t=this.node.getProps(),n=Gu(this.node.current,"pointerdown",this.startPointerPress,{passive:!(t.onTapStart||t.onPointerStart)}),r=Hu(this.node.current,"focus",this.startAccessiblePress);this.removeStartListeners=Nd(n,r)}unmount(){this.removeStartListeners(),this.removeEndListeners(),this.removeAccessibleListeners()}}const w_=new WeakMap,Y5=new WeakMap,qde=e=>{const t=w_.get(e.target);t&&t(e)},Kde=e=>{e.forEach(qde)};function Yde({root:e,...t}){const n=e||document;Y5.has(n)||Y5.set(n,{});const r=Y5.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(Kde,{root:e,...t})),r[i]}function Xde(e,t,n){const r=Yde(t);return w_.set(e,n),r.observe(e),()=>{w_.delete(e),r.unobserve(e)}}const Zde={some:0,all:1};class Qde extends sf{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}viewportFallback(){requestAnimationFrame(()=>{this.hasEnteredView=!0;const{onViewportEnter:t}=this.node.getProps();t&&t(null),this.node.animationState&&this.node.animationState.setActive(tr.InView,!0)})}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:i="some",once:o,fallback:a=!0}=t;if(typeof IntersectionObserver>"u"){a&&this.viewportFallback();return}const s={root:n?n.current:void 0,rootMargin:r,threshold:typeof i=="number"?i:Zde[i]},l=u=>{const{isIntersecting:d}=u;if(this.isInView===d||(this.isInView=d,o&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive(tr.InView,d);const{onViewportEnter:p,onViewportLeave:m}=this.node.getProps(),y=d?p:m;y&&y(u)};return Xde(this.node.current,s,l)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(Jde(t,n))&&this.startObserver()}unmount(){}}function Jde({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const efe={inView:{Feature:Qde},tap:{Feature:Gde},focus:{Feature:Vde},hover:{Feature:Ude}};function eB(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;r/^\-?\d*\.?\d+$/.test(e),nfe=e=>/^0[^.\s]+$/.test(e),qu={delta:0,timestamp:0},tB=1/60*1e3,rfe=typeof performance<"u"?()=>performance.now():()=>Date.now(),nB=typeof window<"u"?e=>window.requestAnimationFrame(e):e=>setTimeout(()=>e(rfe()),tB);function ife(e){let t=[],n=[],r=0,i=!1,o=!1;const a=new WeakSet,s={schedule:(l,u=!1,d=!1)=>{const p=d&&i,m=p?t:n;return u&&a.add(l),m.indexOf(l)===-1&&(m.push(l),p&&i&&(r=t.length)),l},cancel:l=>{const u=n.indexOf(l);u!==-1&&n.splice(u,1),a.delete(l)},process:l=>{if(i){o=!0;return}if(i=!0,[t,n]=[n,t],n.length=0,r=t.length,r)for(let u=0;u(e[t]=ife(()=>Py=!0),e),{}),so=o2.reduce((e,t)=>{const n=Rw[t];return e[t]=(r,i=!1,o=!1)=>(Py||sfe(),n.schedule(r,i,o)),e},{}),Gd=o2.reduce((e,t)=>(e[t]=Rw[t].cancel,e),{}),X5=o2.reduce((e,t)=>(e[t]=()=>Rw[t].process(qu),e),{}),afe=e=>Rw[e].process(qu),rB=e=>{Py=!1,qu.delta=C_?tB:Math.max(Math.min(e-qu.timestamp,ofe),1),qu.timestamp=e,__=!0,o2.forEach(afe),__=!1,Py&&(C_=!1,nB(rB))},sfe=()=>{Py=!0,C_=!0,__||nB(rB)};function W9(e,t){e.indexOf(t)===-1&&e.push(t)}function U9(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}class V9{constructor(){this.subscriptions=[]}add(t){return W9(this.subscriptions,t),()=>U9(this.subscriptions,t)}notify(t,n,r){const i=this.subscriptions.length;if(i)if(i===1)this.subscriptions[0](t,n,r);else for(let o=0;o!isNaN(parseFloat(e));class ufe{constructor(t,n={}){this.version="9.0.4",this.timeDelta=0,this.lastUpdated=0,this.canTrackVelocity=!1,this.events={},this.updateAndNotify=(r,i=!0)=>{this.prev=this.current,this.current=r;const{delta:o,timestamp:a}=qu;this.lastUpdated!==a&&(this.timeDelta=o,this.lastUpdated=a,so.postRender(this.scheduleVelocityCheck)),this.prev!==this.current&&this.events.change&&this.events.change.notify(this.current),this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()),i&&this.events.renderRequest&&this.events.renderRequest.notify(this.current)},this.scheduleVelocityCheck=()=>so.postRender(this.velocityCheck),this.velocityCheck=({timestamp:r})=>{r!==this.lastUpdated&&(this.prev=this.current,this.events.velocityChange&&this.events.velocityChange.notify(this.getVelocity()))},this.hasAnimated=!1,this.prev=this.current=t,this.canTrackVelocity=lfe(this.current),this.owner=n.owner}onChange(t){return this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new V9);const r=this.events[t].add(n);return t==="change"?()=>{r(),so.read(()=>{this.events.change.getSize()||this.stop()})}:r}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t,n=!0){!n||!this.passiveEffect?this.updateAndNotify(t,n):this.passiveEffect(t,this.updateAndNotify)}setWithVelocity(t,n,r){this.set(n),this.prev=t,this.timeDelta=r}jump(t){this.updateAndNotify(t),this.prev=t,this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}get(){return this.current}getPrevious(){return this.prev}getVelocity(){return this.canTrackVelocity?G9(parseFloat(this.current)-parseFloat(this.prev),this.timeDelta):0}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n)||null,this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){this.animation=null}destroy(){this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Gm(e,t){return new ufe(e,t)}const q9=(e,t)=>n=>Boolean(r2(n)&&xde.test(n)&&n.startsWith(e)||t&&Object.prototype.hasOwnProperty.call(n,t)),iB=(e,t,n)=>r=>{if(!r2(r))return r;const[i,o,a,s]=r.match(Ey);return{[e]:parseFloat(i),[t]:parseFloat(o),[n]:parseFloat(a),alpha:s!==void 0?parseFloat(s):1}},cfe=e=>Vm(0,255,e),Z5={...np,transform:e=>Math.round(cfe(e))},Eh={test:q9("rgb","red"),parse:iB("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:r=1})=>"rgba("+Z5.transform(e)+", "+Z5.transform(t)+", "+Z5.transform(n)+", "+F1($1.transform(r))+")"};function dfe(e){let t="",n="",r="",i="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),r=e.substring(5,7),i=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),r=e.substring(3,4),i=e.substring(4,5),t+=t,n+=n,r+=r,i+=i),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(r,16),alpha:i?parseInt(i,16)/255:1}}const k_={test:q9("#"),parse:dfe,transform:Eh.transform},Jg={test:q9("hsl","hue"),parse:iB("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:r=1})=>"hsla("+Math.round(e)+", "+Yl.transform(F1(t))+", "+Yl.transform(F1(n))+", "+F1($1.transform(r))+")"},bo={test:e=>Eh.test(e)||k_.test(e)||Jg.test(e),parse:e=>Eh.test(e)?Eh.parse(e):Jg.test(e)?Jg.parse(e):k_.parse(e),transform:e=>r2(e)?e:e.hasOwnProperty("red")?Eh.transform(e):Jg.transform(e)},oB="${c}",aB="${n}";function ffe(e){var t,n;return isNaN(e)&&r2(e)&&(((t=e.match(Ey))===null||t===void 0?void 0:t.length)||0)+(((n=e.match(S_))===null||n===void 0?void 0:n.length)||0)>0}function JS(e){typeof e=="number"&&(e=`${e}`);const t=[];let n=0,r=0;const i=e.match(S_);i&&(n=i.length,e=e.replace(S_,oB),t.push(...i.map(bo.parse)));const o=e.match(Ey);return o&&(r=o.length,e=e.replace(Ey,aB),t.push(...o.map(np.parse))),{values:t,numColors:n,numNumbers:r,tokenised:e}}function sB(e){return JS(e).values}function lB(e){const{values:t,numColors:n,tokenised:r}=JS(e),i=t.length;return o=>{let a=r;for(let s=0;stypeof e=="number"?0:e;function pfe(e){const t=sB(e);return lB(e)(t.map(hfe))}const qd={test:ffe,parse:sB,createTransformer:lB,getAnimatableNone:pfe},gfe=new Set(["brightness","contrast","saturate","opacity"]);function mfe(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[r]=n.match(Ey)||[];if(!r)return e;const i=n.replace(r,"");let o=gfe.has(t)?1:0;return r!==n&&(o*=100),t+"("+o+i+")"}const vfe=/([a-z-]*)\(.*?\)/g,E_={...qd,getAnimatableNone:e=>{const t=e.match(vfe);return t?t.map(mfe).join(" "):e}},yfe={...BF,color:bo,backgroundColor:bo,outlineColor:bo,fill:bo,stroke:bo,borderColor:bo,borderTopColor:bo,borderRightColor:bo,borderBottomColor:bo,borderLeftColor:bo,filter:E_,WebkitFilter:E_},K9=e=>yfe[e];function Y9(e,t){let n=K9(e);return n!==E_&&(n=qd),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const uB=e=>t=>t.test(e),bfe={test:e=>e==="auto",parse:e=>e},cB=[np,Pt,Yl,cd,wde,Sde,bfe],Hv=e=>cB.find(uB(e)),xfe=[...cB,bo,qd],Sfe=e=>xfe.find(uB(e));function wfe(e){const t={};return e.values.forEach((n,r)=>t[r]=n.get()),t}function Cfe(e){const t={};return e.values.forEach((n,r)=>t[r]=n.getVelocity()),t}function Iw(e,t,n){const r=e.getProps();return H9(r,t,n!==void 0?n:r.custom,wfe(e),Cfe(e))}function _fe(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,Gm(n))}function kfe(e,t){const n=Iw(e,t);let{transitionEnd:r={},transition:i={},...o}=n?e.makeTargetAnimatable(n,!1):{};o={...o,...r};for(const a in o){const s=jde(o[a]);_fe(e,a,s)}}function Efe(e,t,n){var r,i;const o=Object.keys(t).filter(s=>!e.hasValue(s)),a=o.length;if(a)for(let s=0;se*1e3,Ofe={current:!1},X9=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,Z9=e=>t=>1-e(1-t),Q9=e=>e*e,Rfe=Z9(Q9),J9=X9(Q9),Fr=(e,t,n)=>-n*e+n*t+e;function Q5(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function Ife({hue:e,saturation:t,lightness:n,alpha:r}){e/=360,t/=100,n/=100;let i=0,o=0,a=0;if(!t)i=o=a=n;else{const s=n<.5?n*(1+t):n+t-n*t,l=2*n-s;i=Q5(l,s,e+1/3),o=Q5(l,s,e),a=Q5(l,s,e-1/3)}return{red:Math.round(i*255),green:Math.round(o*255),blue:Math.round(a*255),alpha:r}}const J5=(e,t,n)=>{const r=e*e;return Math.sqrt(Math.max(0,n*(t*t-r)+r))},Dfe=[k_,Eh,Jg],jfe=e=>Dfe.find(t=>t.test(e));function $L(e){const t=jfe(e);let n=t.parse(e);return t===Jg&&(n=Ife(n)),n}const dB=(e,t)=>{const n=$L(e),r=$L(t),i={...n};return o=>(i.red=J5(n.red,r.red,o),i.green=J5(n.green,r.green,o),i.blue=J5(n.blue,r.blue,o),i.alpha=Fr(n.alpha,r.alpha,o),Eh.transform(i))};function fB(e,t){return typeof e=="number"?n=>Fr(e,t,n):bo.test(e)?dB(e,t):pB(e,t)}const hB=(e,t)=>{const n=[...e],r=n.length,i=e.map((o,a)=>fB(o,t[a]));return o=>{for(let a=0;a{const n={...e,...t},r={};for(const i in n)e[i]!==void 0&&t[i]!==void 0&&(r[i]=fB(e[i],t[i]));return i=>{for(const o in r)n[o]=r[o](i);return n}},pB=(e,t)=>{const n=qd.createTransformer(t),r=JS(e),i=JS(t);return r.numColors===i.numColors&&r.numNumbers>=i.numNumbers?Nd(hB(r.values,i.values),n):a=>`${a>0?t:e}`},n3=(e,t,n)=>{const r=t-e;return r===0?1:(n-e)/r},FL=(e,t)=>n=>Fr(e,t,n);function $fe(e){return typeof e=="number"?FL:typeof e=="string"?bo.test(e)?dB:pB:Array.isArray(e)?hB:typeof e=="object"?Nfe:FL}function Ffe(e,t,n){const r=[],i=n||$fe(e[0]),o=e.length-1;for(let a=0;ae[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const a=Ffe(t,r,i),s=a.length,l=u=>{let d=0;if(s>1)for(;dl(Vm(e[0],e[o-1],u)):l}const mB=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,Bfe=1e-7,zfe=12;function Hfe(e,t,n,r,i){let o,a,s=0;do a=t+(n-t)/2,o=mB(a,r,i)-e,o>0?n=a:t=a;while(Math.abs(o)>Bfe&&++sHfe(o,0,1,e,n);return o=>o===0||o===1?o:mB(i(o),t,r)}const yB=e=>1-Math.sin(Math.acos(e)),e8=Z9(yB),Wfe=X9(e8),bB=vB(.33,1.53,.69,.99),t8=Z9(bB),Ufe=X9(t8),Vfe=e=>(e*=2)<1?.5*t8(e):.5*(2-Math.pow(2,-10*(e-1))),Gfe={linear:Xl,easeIn:Q9,easeInOut:J9,easeOut:Rfe,circIn:yB,circInOut:Wfe,circOut:e8,backIn:t8,backInOut:Ufe,backOut:bB,anticipate:Vfe},BL=e=>{if(Array.isArray(e)){t3(e.length===4);const[t,n,r,i]=e;return vB(t,n,r,i)}else if(typeof e=="string")return Gfe[e];return e},qfe=e=>Array.isArray(e)&&typeof e[0]!="number";function Kfe(e,t){return e.map(()=>t||J9).splice(0,e.length-1)}function Yfe(e){const t=e.length;return e.map((n,r)=>r!==0?r/(t-1):0)}function Xfe(e,t){return e.map(n=>n*t)}function P_({keyframes:e,ease:t=J9,times:n,duration:r=300}){e=[...e];const i=qfe(t)?t.map(BL):BL(t),o={done:!1,value:e[0]},a=Xfe(n&&n.length===e.length?n:Yfe(e),r);function s(){return gB(a,e,{ease:Array.isArray(i)?i:Kfe(e,i)})}let l=s();return{next:u=>(o.value=l(u),o.done=u>=r,o),flipTarget:()=>{e.reverse(),l=s()}}}const eC=.001,Zfe=.01,zL=10,Qfe=.05,Jfe=1;function ehe({duration:e=800,bounce:t=.25,velocity:n=0,mass:r=1}){let i,o;Afe(e<=zL*1e3);let a=1-t;a=Vm(Qfe,Jfe,a),e=Vm(Zfe,zL,e/1e3),a<1?(i=u=>{const d=u*a,p=d*e,m=d-n,y=T_(u,a),b=Math.exp(-p);return eC-m/y*b},o=u=>{const p=u*a*e,m=p*n+n,y=Math.pow(a,2)*Math.pow(u,2)*e,b=Math.exp(-p),w=T_(Math.pow(u,2),a);return(-i(u)+eC>0?-1:1)*((m-y)*b)/w}):(i=u=>{const d=Math.exp(-u*e),p=(u-n)*e+1;return-eC+d*p},o=u=>{const d=Math.exp(-u*e),p=(n-u)*(e*e);return d*p});const s=5/e,l=nhe(i,o,s);if(e=e*1e3,isNaN(l))return{stiffness:100,damping:10,duration:e};{const u=Math.pow(l,2)*r;return{stiffness:u,damping:a*2*Math.sqrt(r*u),duration:e}}}const the=12;function nhe(e,t,n){let r=n;for(let i=1;ie[n]!==void 0)}function ohe(e){let t={velocity:0,stiffness:100,damping:10,mass:1,isResolvedFromDuration:!1,...e};if(!HL(e,ihe)&&HL(e,rhe)){const n=ehe(e);t={...t,...n,velocity:0,mass:1},t.isResolvedFromDuration=!0}return t}const ahe=5;function xB({keyframes:e,restDelta:t,restSpeed:n,...r}){let i=e[0],o=e[e.length-1];const a={done:!1,value:i},{stiffness:s,damping:l,mass:u,velocity:d,duration:p,isResolvedFromDuration:m}=ohe(r);let y=she,b=d?-(d/1e3):0;const w=l/(2*Math.sqrt(s*u));function E(){const _=o-i,k=Math.sqrt(s/u)/1e3,T=Math.abs(_)<5;if(n||(n=T?.01:2),t||(t=T?.005:.5),w<1){const L=T_(k,w);y=O=>{const D=Math.exp(-w*k*O);return o-D*((b+w*k*_)/L*Math.sin(L*O)+_*Math.cos(L*O))}}else if(w===1)y=L=>o-Math.exp(-k*L)*(_+(b+k*_)*L);else{const L=k*Math.sqrt(w*w-1);y=O=>{const D=Math.exp(-w*k*O),I=Math.min(L*O,300);return o-D*((b+w*k*_)*Math.sinh(I)+L*_*Math.cosh(I))/L}}}return E(),{next:_=>{const k=y(_);if(m)a.done=_>=p;else{let T=b;if(_!==0)if(w<1){const D=Math.max(0,_-ahe);T=G9(k-y(D),_-D)}else T=0;const L=Math.abs(T)<=n,O=Math.abs(o-k)<=t;a.done=L&&O}return a.value=a.done?o:k,a},flipTarget:()=>{b=-b,[i,o]=[o,i],E()}}}xB.needsInterpolation=(e,t)=>typeof e=="string"||typeof t=="string";const she=e=>0;function lhe({keyframes:e=[0],velocity:t=0,power:n=.8,timeConstant:r=350,restDelta:i=.5,modifyTarget:o}){const a=e[0],s={done:!1,value:a};let l=n*t;const u=a+l,d=o===void 0?u:o(u);return d!==u&&(l=d-a),{next:p=>{const m=-l*Math.exp(-p/r);return s.done=!(m>i||m<-i),s.value=s.done?d:d+m,s},flipTarget:()=>{}}}const uhe={decay:lhe,keyframes:P_,tween:P_,spring:xB};function SB(e,t,n=0){return e-t-n}function che(e,t=0,n=0,r=!0){return r?SB(t+-e,t,n):t-(e-t)+n}function dhe(e,t,n,r){return r?e>=t+n:e<=-n}const fhe=e=>{const t=({delta:n})=>e(n);return{start:()=>so.update(t,!0),stop:()=>Gd.update(t)}};function r3({duration:e,driver:t=fhe,elapsed:n=0,repeat:r=0,repeatType:i="loop",repeatDelay:o=0,keyframes:a,autoplay:s=!0,onPlay:l,onStop:u,onComplete:d,onRepeat:p,onUpdate:m,type:y="keyframes",...b}){const w=n;let E,_=0,k=e,T=!1,L=!0,O;const D=uhe[a.length>2?"keyframes":y]||P_,I=a[0],N=a[a.length-1];let W={done:!1,value:I};const{needsInterpolation:B}=D;B&&B(I,N)&&(O=gB([0,100],[I,N],{clamp:!1}),a=[0,100]);const K=D({...b,duration:e,keyframes:a});function ne(){_++,i==="reverse"?(L=_%2===0,n=che(n,k,o,L)):(n=SB(n,k,o),i==="mirror"&&K.flipTarget()),T=!1,p&&p()}function z(){E&&E.stop(),d&&d()}function $(X){L||(X=-X),n+=X,T||(W=K.next(Math.max(0,n)),O&&(W.value=O(W.value)),T=L?W.done:n<=0),m&&m(W.value),T&&(_===0&&(k=k!==void 0?k:n),_{u&&u(),E&&E.stop()},set currentTime(X){n=w,$(X)},sample:X=>{n=w;const Q=e&&typeof e=="number"?Math.max(e*.5,50):50;let G=0;for($(0);G<=X;){const Y=X-G;$(Math.min(Y,Q)),G+=Q}return W}}}function hhe(e){return!e||Array.isArray(e)||typeof e=="string"&&wB[e]}const d1=([e,t,n,r])=>`cubic-bezier(${e}, ${t}, ${n}, ${r})`,wB={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:d1([0,.65,.55,1]),circOut:d1([.55,0,1,.45]),backIn:d1([.31,.01,.66,-.59]),backOut:d1([.33,1.53,.69,.99])};function phe(e){if(e)return Array.isArray(e)?d1(e):wB[e]}function ghe(e,t,n,{delay:r=0,duration:i,repeat:o=0,repeatType:a="loop",ease:s,times:l}={}){return e.animate({[t]:n,offset:l},{delay:r,duration:i,easing:phe(s),fill:"both",iterations:o+1,direction:a==="reverse"?"alternate":"normal"})}const WL={waapi:()=>Object.hasOwnProperty.call(Element.prototype,"animate")},tC={},CB={};for(const e in WL)CB[e]=()=>(tC[e]===void 0&&(tC[e]=WL[e]()),tC[e]);function mhe(e,{repeat:t,repeatType:n="loop"}){const r=t&&n!=="loop"&&t%2===1?0:e.length-1;return e[r]}const vhe=new Set(["opacity"]),Hb=10;function yhe(e,t,{onUpdate:n,onComplete:r,...i}){if(!(CB.waapi()&&vhe.has(t)&&!i.repeatDelay&&i.repeatType!=="mirror"&&i.damping!==0))return!1;let{keyframes:a,duration:s=300,elapsed:l=0,ease:u}=i;if(i.type==="spring"||!hhe(i.ease)){if(i.repeat===1/0)return;const p=r3({...i,elapsed:0});let m={done:!1,value:a[0]};const y=[];let b=0;for(;!m.done&&b<2e4;)m=p.sample(b),y.push(m.value),b+=Hb;a=y,s=b-Hb,u="linear"}const d=ghe(e.owner.current,t,a,{...i,delay:-l,duration:s,ease:u});return d.onfinish=()=>{e.set(mhe(a,i)),so.update(()=>d.cancel()),r&&r()},{get currentTime(){return d.currentTime||0},set currentTime(p){d.currentTime=p},stop:()=>{const{currentTime:p}=d;if(p){const m=r3({...i,autoplay:!1});e.setWithVelocity(m.sample(p-Hb).value,m.sample(p).value,Hb)}so.update(()=>d.cancel())}}}function _B(e,t){const n=performance.now(),r=({timestamp:i})=>{const o=i-n;o>=t&&(Gd.read(r),e(o-t))};return so.read(r,!0),()=>Gd.read(r)}function bhe({keyframes:e,elapsed:t,onUpdate:n,onComplete:r}){const i=()=>{n&&n(e[e.length-1]),r&&r()};return t?{stop:_B(i,-t)}:i()}function xhe({keyframes:e,velocity:t=0,min:n,max:r,power:i=.8,timeConstant:o=750,bounceStiffness:a=500,bounceDamping:s=10,restDelta:l=1,modifyTarget:u,driver:d,onUpdate:p,onComplete:m,onStop:y}){const b=e[0];let w;function E(L){return n!==void 0&&Lr}function _(L){return n===void 0?r:r===void 0||Math.abs(n-L){p&&p(O),L.onUpdate&&L.onUpdate(O)},onComplete:m,onStop:y})}function T(L){k({type:"spring",stiffness:a,damping:s,restDelta:l,...L})}if(E(b))T({velocity:t,keyframes:[b,_(b)]});else{let L=i*t+b;typeof u<"u"&&(L=u(L));const O=_(L),D=O===n?-1:1;let I,N;const W=B=>{I=N,N=B,t=G9(B-I,qu.delta),(D===1&&B>O||D===-1&&Bw&&w.stop()}}const nh=()=>({type:"spring",stiffness:500,damping:25,restSpeed:10}),Wb=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),nC=()=>({type:"keyframes",ease:"linear",duration:.3}),She={type:"keyframes",duration:.8},UL={x:nh,y:nh,z:nh,rotate:nh,rotateX:nh,rotateY:nh,rotateZ:nh,scaleX:Wb,scaleY:Wb,scale:Wb,opacity:nC,backgroundColor:nC,color:nC,default:Wb},whe=(e,{keyframes:t})=>t.length>2?She:(UL[e]||UL.default)(t[1]),M_=(e,t)=>e==="zIndex"?!1:!!(typeof t=="number"||Array.isArray(t)||typeof t=="string"&&qd.test(t)&&!t.startsWith("url("));function Che({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:i,repeat:o,repeatType:a,repeatDelay:s,from:l,elapsed:u,...d}){return!!Object.keys(d).length}function VL(e){return e===0||typeof e=="string"&&parseFloat(e)===0&&e.indexOf(" ")===-1}function GL(e){return typeof e=="number"?0:Y9("",e)}function kB(e,t){return e[t]||e.default||e}function _he(e,t,n,r){const i=M_(t,n);let o=r.from!==void 0?r.from:e.get();return o==="none"&&i&&typeof n=="string"?o=Y9(t,n):VL(o)&&typeof n=="string"?o=GL(n):!Array.isArray(n)&&VL(n)&&typeof o=="string"&&(n=GL(o)),Array.isArray(n)?(n[0]===null&&(n[0]=o),n):[o,n]}const n8=(e,t,n,r={})=>i=>{const o=kB(r,e)||{},a=o.delay||r.delay||0;let{elapsed:s=0}=r;s=s-Zx(a);const l=_he(t,e,n,o),u=l[0],d=l[l.length-1],p=M_(e,u),m=M_(e,d);let y={keyframes:l,velocity:t.getVelocity(),...o,elapsed:s,onUpdate:b=>{t.set(b),o.onUpdate&&o.onUpdate(b)},onComplete:()=>{i(),o.onComplete&&o.onComplete()}};if(!p||!m||Ofe.current||o.type===!1)return bhe(y);if(o.type==="inertia")return xhe(y);if(Che(o)||(y={...y,...whe(e,y)}),y.duration&&(y.duration=Zx(y.duration)),y.repeatDelay&&(y.repeatDelay=Zx(y.repeatDelay)),t.owner&&t.owner.current instanceof HTMLElement&&!t.owner.getProps().onUpdate){const b=yhe(t,e,y);if(b)return b}return r3(y)};function khe(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const i=t.map(o=>L_(e,o,n));r=Promise.all(i)}else if(typeof t=="string")r=L_(e,t,n);else{const i=typeof t=="function"?Iw(e,t,n.custom):t;r=EB(e,i,n)}return r.then(()=>e.notify("AnimationComplete",t))}function L_(e,t,n={}){const r=Iw(e,t,n.custom);let{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);const o=r?()=>EB(e,r,n):()=>Promise.resolve(),a=e.variantChildren&&e.variantChildren.size?(l=0)=>{const{delayChildren:u=0,staggerChildren:d,staggerDirection:p}=i;return Ehe(e,t,u+l,d,p,n)}:()=>Promise.resolve(),{when:s}=i;if(s){const[l,u]=s==="beforeChildren"?[o,a]:[a,o];return l().then(u)}else return Promise.all([o(),a(n.delay)])}function EB(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:o=e.getDefaultTransition(),transitionEnd:a,...s}=e.makeTargetAnimatable(t);const l=e.getValue("willChange");r&&(o=r);const u=[],d=i&&e.animationState&&e.animationState.getState()[i];for(const p in s){const m=e.getValue(p),y=s[p];if(!m||y===void 0||d&&The(d,p))continue;const b={delay:n,elapsed:0,...o};if(window.HandoffAppearAnimations&&!m.hasAnimated){const E=e.getProps()[Lfe];E&&(b.elapsed=window.HandoffAppearAnimations(E,p,m,so))}let w=m.start(n8(p,m,y,e.shouldReduceMotion&&d0.has(p)?{type:!1}:b));e3(l)&&(l.add(p),w=w.then(()=>l.remove(p))),u.push(w)}return Promise.all(u).then(()=>{a&&kfe(e,a)})}function Ehe(e,t,n=0,r=0,i=1,o){const a=[],s=(e.variantChildren.size-1)*r,l=i===1?(u=0)=>u*r:(u=0)=>s-u*r;return Array.from(e.variantChildren).sort(Phe).forEach((u,d)=>{u.notify("AnimationStart",t),a.push(L_(u,t,{...o,delay:n+l(d)}).then(()=>u.notify("AnimationComplete",t)))}),Promise.all(a)}function Phe(e,t){return e.sortNodePosition(t)}function The({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}const r8=[tr.Animate,tr.InView,tr.Focus,tr.Hover,tr.Tap,tr.Drag,tr.Exit],Mhe=[...r8].reverse(),Lhe=r8.length;function Ahe(e){return t=>Promise.all(t.map(({animation:n,options:r})=>khe(e,n,r)))}function Ohe(e){let t=Ahe(e);const n=Ihe();let r=!0;const i=(l,u)=>{const d=Iw(e,u);if(d){const{transition:p,transitionEnd:m,...y}=d;l={...l,...y,...m}}return l};function o(l){t=l(e)}function a(l,u){const d=e.getProps(),p=e.getVariantContext(!0)||{},m=[],y=new Set;let b={},w=1/0;for(let _=0;_w&&O;const B=Array.isArray(L)?L:[L];let K=B.reduce(i,{});D===!1&&(K={});const{prevResolvedValues:ne={}}=T,z={...ne,...K},$=V=>{W=!0,y.delete(V),T.needsAnimating[V]=!0};for(const V in z){const X=K[V],Q=ne[V];b.hasOwnProperty(V)||(X!==Q?QS(X)&&QS(Q)?!eB(X,Q)||N?$(V):T.protectedKeys[V]=!0:X!==void 0?$(V):y.add(V):X!==void 0&&y.has(V)?$(V):T.protectedKeys[V]=!0)}T.prevProp=L,T.prevResolvedValues=K,T.isActive&&(b={...b,...K}),r&&e.blockInitialAnimation&&(W=!1),W&&!I&&m.push(...B.map(V=>({animation:V,options:{type:k,...l}})))}if(y.size){const _={};y.forEach(k=>{const T=e.getBaseTarget(k);T!==void 0&&(_[k]=T)}),m.push({animation:_})}let E=Boolean(m.length);return r&&d.initial===!1&&!e.manuallyAnimateOnMount&&(E=!1),r=!1,E?t(m):Promise.resolve()}function s(l,u,d){if(n[l].isActive===u)return Promise.resolve();e.variantChildren&&e.variantChildren.forEach(m=>{m.animationState&&m.animationState.setActive(l,u)}),n[l].isActive=u;const p=a(d,l);for(const m in n)n[m].protectedKeys={};return p}return{animateChanges:a,setActive:s,setAnimateFunction:o,getState:()=>n}}function Rhe(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!eB(t,e):!1}function rh(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Ihe(){return{[tr.Animate]:rh(!0),[tr.InView]:rh(),[tr.Hover]:rh(),[tr.Tap]:rh(),[tr.Drag]:rh(),[tr.Focus]:rh(),[tr.Exit]:rh()}}class Dhe extends sf{constructor(t){super(t),t.animationState||(t.animationState=Ohe(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();this.unmount(),Mw(t)&&(this.unmount=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){}}let jhe=0;class Nhe extends sf{constructor(){super(...arguments),this.id=jhe++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n,custom:r}=this.node.presenceContext,{isPresent:i}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===i)return;const o=this.node.animationState.setActive(tr.Exit,!t,{custom:r??this.node.getProps().custom});n&&!t&&o.then(()=>n(this.id))}mount(){const{register:t}=this.node.presenceContext||{};t&&(this.unmount=t(this.id))}unmount(){}}const $he={animation:{Feature:Dhe},exit:{Feature:Nhe}},qL=(e,t)=>Math.abs(e-t);function Fhe(e,t){const n=qL(e.x,t.x),r=qL(e.y,t.y);return Math.sqrt(n**2+r**2)}class PB{constructor(t,n,{transformPagePoint:r}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const u=iC(this.lastMoveEventInfo,this.history),d=this.startEvent!==null,p=Fhe(u.offset,{x:0,y:0})>=3;if(!d&&!p)return;const{point:m}=u,{timestamp:y}=qu;this.history.push({...m,timestamp:y});const{onStart:b,onMove:w}=this.handlers;d||(b&&b(this.lastMoveEvent,u),this.startEvent=this.lastMoveEvent),w&&w(this.lastMoveEvent,u)},this.handlePointerMove=(u,d)=>{this.lastMoveEvent=u,this.lastMoveEventInfo=rC(d,this.transformPagePoint),so.update(this.updatePoint,!0)},this.handlePointerUp=(u,d)=>{if(this.end(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const{onEnd:p,onSessionEnd:m}=this.handlers,y=iC(u.type==="pointercancel"?this.lastMoveEventInfo:rC(d,this.transformPagePoint),this.history);this.startEvent&&p&&p(u,y),m&&m(u,y)},!YF(t))return;this.handlers=n,this.transformPagePoint=r;const i=Ow(t),o=rC(i,this.transformPagePoint),{point:a}=o,{timestamp:s}=qu;this.history=[{...a,timestamp:s}];const{onSessionStart:l}=n;l&&l(t,iC(o,this.history)),this.removeListeners=Nd(Gu(window,"pointermove",this.handlePointerMove),Gu(window,"pointerup",this.handlePointerUp),Gu(window,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),Gd.update(this.updatePoint)}}function rC(e,t){return t?{point:t(e.point)}:e}function KL(e,t){return{x:e.x-t.x,y:e.y-t.y}}function iC({point:e},t){return{point:e,delta:KL(e,TB(t)),offset:KL(e,Bhe(t)),velocity:zhe(t,.1)}}function Bhe(e){return e[0]}function TB(e){return e[e.length-1]}function zhe(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=TB(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>Zx(t)));)n--;if(!r)return{x:0,y:0};const o=(i.timestamp-r.timestamp)/1e3;if(o===0)return{x:0,y:0};const a={x:(i.x-r.x)/o,y:(i.y-r.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function Aa(e){return e.max-e.min}function A_(e,t=0,n=.01){return Math.abs(e-t)<=n}function YL(e,t,n,r=.5){e.origin=r,e.originPoint=Fr(t.min,t.max,e.origin),e.scale=Aa(n)/Aa(t),(A_(e.scale,1,1e-4)||isNaN(e.scale))&&(e.scale=1),e.translate=Fr(n.min,n.max,e.origin)-e.originPoint,(A_(e.translate)||isNaN(e.translate))&&(e.translate=0)}function B1(e,t,n,r){YL(e.x,t.x,n.x,r?r.originX:void 0),YL(e.y,t.y,n.y,r?r.originY:void 0)}function XL(e,t,n){e.min=n.min+t.min,e.max=e.min+Aa(t)}function Hhe(e,t,n){XL(e.x,t.x,n.x),XL(e.y,t.y,n.y)}function ZL(e,t,n){e.min=t.min-n.min,e.max=e.min+Aa(t)}function z1(e,t,n){ZL(e.x,t.x,n.x),ZL(e.y,t.y,n.y)}function Whe(e,{min:t,max:n},r){return t!==void 0&&en&&(e=r?Fr(n,e,r.max):Math.min(e,n)),e}function QL(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function Uhe(e,{top:t,left:n,bottom:r,right:i}){return{x:QL(e.x,n,i),y:QL(e.y,t,r)}}function JL(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.minr?n=n3(t.min,t.max-r,e.min):r>i&&(n=n3(e.min,e.max-i,t.min)),Vm(0,1,n)}function qhe(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const O_=.35;function Khe(e=O_){return e===!1?e=0:e===!0&&(e=O_),{x:eA(e,"left","right"),y:eA(e,"top","bottom")}}function eA(e,t,n){return{min:tA(e,t),max:tA(e,n)}}function tA(e,t){return typeof e=="number"?e:e[t]||0}const nA=()=>({translate:0,scale:1,origin:0,originPoint:0}),H1=()=>({x:nA(),y:nA()}),rA=()=>({min:0,max:0}),gi=()=>({x:rA(),y:rA()});function Al(e){return[e("x"),e("y")]}function MB({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function Yhe({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function Xhe(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function oC(e){return e===void 0||e===1}function R_({scale:e,scaleX:t,scaleY:n}){return!oC(e)||!oC(t)||!oC(n)}function dh(e){return R_(e)||LB(e)||e.z||e.rotate||e.rotateX||e.rotateY}function LB(e){return iA(e.x)||iA(e.y)}function iA(e){return e&&e!=="0%"}function i3(e,t,n){const r=e-n,i=t*r;return n+i}function oA(e,t,n,r,i){return i!==void 0&&(e=i3(e,i,r)),i3(e,n,r)+t}function I_(e,t=0,n=1,r,i){e.min=oA(e.min,t,n,r,i),e.max=oA(e.max,t,n,r,i)}function AB(e,{x:t,y:n}){I_(e.x,t.translate,t.scale,t.originPoint),I_(e.y,n.translate,n.scale,n.originPoint)}function Zhe(e,t,n,r=!1){const i=n.length;if(!i)return;t.x=t.y=1;let o,a;for(let s=0;s1.0000000000001||e<.999999999999?e:1}function gd(e,t){e.min=e.min+t,e.max=e.max+t}function sA(e,t,[n,r,i]){const o=t[i]!==void 0?t[i]:.5,a=Fr(e.min,e.max,o);I_(e,t[n],t[r],a,t.scale)}const Qhe=["x","scaleX","originX"],Jhe=["y","scaleY","originY"];function em(e,t){sA(e.x,t,Qhe),sA(e.y,t,Jhe)}function OB(e,t){return MB(Xhe(e.getBoundingClientRect(),t))}function epe(e,t,n){const r=OB(e,n),{scroll:i}=t;return i&&(gd(r.x,i.offset.x),gd(r.y,i.offset.y)),r}const tpe=new WeakMap;class npe{constructor(t){this.openGlobalLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=gi(),this.visualElement=t}start(t,{snapToCursor:n=!1}={}){const{presenceContext:r}=this.visualElement;if(r&&r.isPresent===!1)return;const i=l=>{this.stopAnimation(),n&&this.snapToCursor(Ow(l,"page").point)},o=(l,u)=>{const{drag:d,dragPropagation:p,onDragStart:m}=this.getProps();if(d&&!p&&(this.openGlobalLock&&this.openGlobalLock(),this.openGlobalLock=ZF(d),!this.openGlobalLock))return;this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Al(b=>{let w=this.getAxisMotionValue(b).get()||0;if(Yl.test(w)){const{projection:E}=this.visualElement;if(E&&E.layout){const _=E.layout.layoutBox[b];_&&(w=Aa(_)*(parseFloat(w)/100))}}this.originPoint[b]=w}),m&&m(l,u);const{animationState:y}=this.visualElement;y&&y.setActive(tr.Drag,!0)},a=(l,u)=>{const{dragPropagation:d,dragDirectionLock:p,onDirectionLock:m,onDrag:y}=this.getProps();if(!d&&!this.openGlobalLock)return;const{offset:b}=u;if(p&&this.currentDirection===null){this.currentDirection=rpe(b),this.currentDirection!==null&&m&&m(this.currentDirection);return}this.updateAxis("x",u.point,b),this.updateAxis("y",u.point,b),this.visualElement.render(),y&&y(l,u)},s=(l,u)=>this.stop(l,u);this.panSession=new PB(t,{onSessionStart:i,onStart:o,onMove:a,onSessionEnd:s},{transformPagePoint:this.visualElement.getTransformPagePoint()})}stop(t,n){const r=this.isDragging;if(this.cancel(),!r)return;const{velocity:i}=n;this.startAnimation(i);const{onDragEnd:o}=this.getProps();o&&o(t,n)}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openGlobalLock&&(this.openGlobalLock(),this.openGlobalLock=null),n&&n.setActive(tr.Drag,!1)}updateAxis(t,n,r){const{drag:i}=this.getProps();if(!r||!Ub(t,i,this.currentDirection))return;const o=this.getAxisMotionValue(t);let a=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(a=Whe(a,this.constraints[t],this.elastic[t])),o.set(a)}resolveConstraints(){const{dragConstraints:t,dragElastic:n}=this.getProps(),{layout:r}=this.visualElement.projection||{},i=this.constraints;t&&Qg(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=Uhe(r.layoutBox,t):this.constraints=!1,this.elastic=Khe(n),i!==this.constraints&&r&&this.constraints&&!this.hasMutatedConstraints&&Al(o=>{this.getAxisMotionValue(o)&&(this.constraints[o]=qhe(r.layoutBox[o],this.constraints[o]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Qg(t))return!1;const r=t.current,{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const o=epe(r,i.root,this.visualElement.getTransformPagePoint());let a=Vhe(i.layout.layoutBox,o);if(n){const s=n(Yhe(a));this.hasMutatedConstraints=!!s,s&&(a=MB(s))}return a}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:i,dragTransition:o,dragSnapToOrigin:a,onDragTransitionEnd:s}=this.getProps(),l=this.constraints||{},u=Al(d=>{if(!Ub(d,n,this.currentDirection))return;let p=l&&l[d]||{};a&&(p={min:0,max:0});const m=i?200:1e6,y=i?40:1e7,b={type:"inertia",velocity:r?t[d]:0,bounceStiffness:m,bounceDamping:y,timeConstant:750,restDelta:1,restSpeed:10,...o,...p};return this.startAxisValueAnimation(d,b)});return Promise.all(u).then(s)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return r.start(n8(t,r,0,n))}stopAnimation(){Al(t=>this.getAxisMotionValue(t).stop())}getAxisMotionValue(t){const n="_drag"+t.toUpperCase(),r=this.visualElement.getProps(),i=r[n];return i||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Al(n=>{const{drag:r}=this.getProps();if(!Ub(n,r,this.currentDirection))return;const{projection:i}=this.visualElement,o=this.getAxisMotionValue(n);if(i&&i.layout){const{min:a,max:s}=i.layout.layoutBox[n];o.set(t[n]-Fr(a,s,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!Qg(n)||!r||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};Al(a=>{const s=this.getAxisMotionValue(a);if(s){const l=s.get();i[a]=Ghe({min:l,max:l},this.constraints[a])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),Al(a=>{if(!Ub(a,t,null))return;const s=this.getAxisMotionValue(a),{min:l,max:u}=this.constraints[a];s.set(Fr(l,u,i[a]))})}addListeners(){if(!this.visualElement.current)return;tpe.set(this.visualElement,this);const t=this.visualElement.current,n=Gu(t,"pointerdown",l=>{const{drag:u,dragListener:d=!0}=this.getProps();u&&d&&this.start(l)}),r=()=>{const{dragConstraints:l}=this.getProps();Qg(l)&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,o=i.addEventListener("measure",r);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),r();const a=Hu(window,"resize",()=>this.scalePositionWithinConstraints()),s=i.addEventListener("didUpdate",({delta:l,hasLayoutChanged:u})=>{this.isDragging&&u&&(Al(d=>{const p=this.getAxisMotionValue(d);p&&(this.originPoint[d]+=l[d].translate,p.set(p.get()+l[d].translate))}),this.visualElement.render())});return()=>{a(),n(),o(),s&&s()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:i=!1,dragConstraints:o=!1,dragElastic:a=O_,dragMomentum:s=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:i,dragConstraints:o,dragElastic:a,dragMomentum:s}}}function Ub(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function rpe(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class ipe extends sf{constructor(t){super(t),this.removeGroupControls=Xl,this.removeListeners=Xl,this.controls=new npe(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Xl}unmount(){this.removeGroupControls(),this.removeListeners()}}class ope extends sf{constructor(){super(...arguments),this.removePointerDownListener=Xl}onPointerDown(t){this.session=new PB(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint()})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:i}=this.node.getProps();return{onSessionStart:t,onStart:n,onMove:r,onEnd:(o,a)=>{delete this.session,i&&i(o,a)}}}mount(){this.removePointerDownListener=Gu(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}function RB(){const e=S.useContext(n2);if(e===null)return[!0,null];const{isPresent:t,onExitComplete:n,register:r}=e,i=S.useId();return S.useEffect(()=>r(i),[]),!t&&n?[!1,()=>n&&n(i)]:[!0]}function ape(){return spe(S.useContext(n2))}function spe(e){return e===null?!0:e.isPresent}function lA(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const Wv={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(Pt.test(e))e=parseFloat(e);else return e;const n=lA(e,t.target.x),r=lA(e,t.target.y);return`${n}% ${r}%`}};function D_(e){return typeof e=="string"&&e.startsWith("var(--")}const IB=/var\((--[a-zA-Z0-9-_]+),? ?([a-zA-Z0-9 ()%#.,-]+)?\)/;function lpe(e){const t=IB.exec(e);if(!t)return[,];const[,n,r]=t;return[n,r]}function j_(e,t,n=1){const[r,i]=lpe(e);if(!r)return;const o=window.getComputedStyle(t).getPropertyValue(r);return o?o.trim():D_(i)?j_(i,t,n+1):i}function upe(e,{...t},n){const r=e.current;if(!(r instanceof Element))return{target:t,transitionEnd:n};n&&(n={...n}),e.values.forEach(i=>{const o=i.get();if(!D_(o))return;const a=j_(o,r);a&&i.set(a)});for(const i in t){const o=t[i];if(!D_(o))continue;const a=j_(o,r);a&&(t[i]=a,n&&n[i]===void 0&&(n[i]=o))}return{target:t,transitionEnd:n}}const uA="_$css",cpe={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=e.includes("var("),o=[];i&&(e=e.replace(IB,y=>(o.push(y),uA)));const a=qd.parse(e);if(a.length>5)return r;const s=qd.createTransformer(e),l=typeof a[0]!="number"?1:0,u=n.x.scale*t.x,d=n.y.scale*t.y;a[0+l]/=u,a[1+l]/=d;const p=Fr(u,d,.5);typeof a[2+l]=="number"&&(a[2+l]/=p),typeof a[3+l]=="number"&&(a[3+l]/=p);let m=s(a);if(i){let y=0;m=m.replace(uA,()=>{const b=o[y];return y++,b})}return m}};class dpe extends Ke.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:i}=this.props,{projection:o}=t;gde(fpe),o&&(n.group&&n.group.add(o),r&&r.register&&i&&r.register(o),o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,onExitComplete:()=>this.safeToRemove()})),N1.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:i,isPresent:o}=this.props,a=r.projection;return a&&(a.isPresent=o,i||t.layoutDependency!==n||n===void 0?a.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?a.promote():a.relegate()||so.postRender(()=>{const s=a.getStack();(!s||!s.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),!t.currentAnimation&&t.isLead()&&this.safeToRemove())}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:i}=t;i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),r&&r.deregister&&r.deregister(i))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function DB(e){const[t,n]=RB(),r=S.useContext(I9);return Ke.createElement(dpe,{...e,layoutGroup:r,switchLayoutGroup:S.useContext(NF),isPresent:t,safeToRemove:n})}const fpe={borderRadius:{...Wv,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Wv,borderTopRightRadius:Wv,borderBottomLeftRadius:Wv,borderBottomRightRadius:Wv,boxShadow:cpe};function hpe(e,t,n={}){const r=ta(e)?e:Gm(e);return r.start(n8("",r,t,n)),{stop:()=>r.stop(),isAnimating:()=>r.isAnimating()}}const jB=["TopLeft","TopRight","BottomLeft","BottomRight"],ppe=jB.length,cA=e=>typeof e=="string"?parseFloat(e):e,dA=e=>typeof e=="number"||Pt.test(e);function gpe(e,t,n,r,i,o){i?(e.opacity=Fr(0,n.opacity!==void 0?n.opacity:1,mpe(r)),e.opacityExit=Fr(t.opacity!==void 0?t.opacity:1,0,vpe(r))):o&&(e.opacity=Fr(t.opacity!==void 0?t.opacity:1,n.opacity!==void 0?n.opacity:1,r));for(let a=0;art?1:n(n3(e,t,r))}function hA(e,t){e.min=t.min,e.max=t.max}function Ns(e,t){hA(e.x,t.x),hA(e.y,t.y)}function pA(e,t,n,r,i){return e-=t,e=i3(e,1/n,r),i!==void 0&&(e=i3(e,1/i,r)),e}function ype(e,t=0,n=1,r=.5,i,o=e,a=e){if(Yl.test(t)&&(t=parseFloat(t),t=Fr(a.min,a.max,t/100)-a.min),typeof t!="number")return;let s=Fr(o.min,o.max,r);e===o&&(s-=t),e.min=pA(e.min,t,n,s,i),e.max=pA(e.max,t,n,s,i)}function gA(e,t,[n,r,i],o,a){ype(e,t[n],t[r],t[i],t.scale,o,a)}const bpe=["x","scaleX","originX"],xpe=["y","scaleY","originY"];function mA(e,t,n,r){gA(e.x,t,bpe,n?n.x:void 0,r?r.x:void 0),gA(e.y,t,xpe,n?n.y:void 0,r?r.y:void 0)}function vA(e){return e.translate===0&&e.scale===1}function $B(e){return vA(e.x)&&vA(e.y)}function FB(e,t){return e.x.min===t.x.min&&e.x.max===t.x.max&&e.y.min===t.y.min&&e.y.max===t.y.max}function yA(e){return Aa(e.x)/Aa(e.y)}class Spe{constructor(){this.members=[]}add(t){W9(this.members,t),t.scheduleRender()}remove(t){if(U9(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){const n=this.members.findIndex(i=>t===i);if(n===0)return!1;let r;for(let i=n;i>=0;i--){const o=this.members[i];if(o.isPresent!==!1){r=o;break}}return r?(this.promote(r),!0):!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.instance&&r.scheduleRender(),t.scheduleRender(),t.resumeFrom=r,n&&(t.resumeFrom.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:i}=t.options;i===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:n,resumingFrom:r}=t;n.onExitComplete&&n.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function bA(e,t,n){let r="";const i=e.x.translate/t.x,o=e.y.translate/t.y;if((i||o)&&(r=`translate3d(${i}px, ${o}px, 0) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{rotate:l,rotateX:u,rotateY:d}=n;l&&(r+=`rotate(${l}deg) `),u&&(r+=`rotateX(${u}deg) `),d&&(r+=`rotateY(${d}deg) `)}const a=e.x.scale*t.x,s=e.y.scale*t.y;return(a!==1||s!==1)&&(r+=`scale(${a}, ${s})`),r||"none"}const wpe=(e,t)=>e.depth-t.depth;class Cpe{constructor(){this.children=[],this.isDirty=!1}add(t){W9(this.children,t),this.isDirty=!0}remove(t){U9(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(wpe),this.isDirty=!1,this.children.forEach(t)}}const xA=["","X","Y","Z"],SA=1e3;let _pe=0;function BB({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(a,s={},l=t==null?void 0:t()){this.id=_pe++,this.animationId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isTransformDirty=!1,this.isProjectionDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.potentialNodes=new Map,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.nodes.forEach(Ppe),this.nodes.forEach(Lpe),this.nodes.forEach(Ape)},this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.elementId=a,this.latestValues=s,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0,a&&this.root.registerPotentialNode(a,this);for(let u=0;uthis.root.updateBlockedByResize=!1;e(a,()=>{this.root.updateBlockedByResize=!0,p&&p(),p=_B(m,250),N1.hasAnimatedSinceResize&&(N1.hasAnimatedSinceResize=!1,this.nodes.forEach(CA))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&d&&(l||u)&&this.addEventListener("didUpdate",({delta:p,hasLayoutChanged:m,hasRelativeTargetChanged:y,layout:b})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const w=this.options.transition||d.getDefaultTransition()||jpe,{onLayoutAnimationStart:E,onLayoutAnimationComplete:_}=d.getProps(),k=!this.targetLayout||!FB(this.targetLayout,b)||y,T=!m&&y;if(this.options.layoutRoot||this.resumeFrom&&this.resumeFrom.instance||T||m&&(k||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0),this.setAnimationOrigin(p,T);const L={...kB(w,"layout"),onPlay:E,onComplete:_};(d.shouldReduceMotion||this.options.layoutRoot)&&(L.delay=0,L.type=!1),this.startAnimation(L)}else!m&&this.animationProgress===0&&CA(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=b})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const a=this.getStack();a&&a.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,Gd.preRender(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(Ope),this.animationId++)}getTransformTemplate(){const{visualElement:a}=this.options;return a&&a.getProps().transformTemplate}willUpdate(a=!0){if(this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let d=0;d{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure())}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l{const L=T/1e3;_A(p.x,a.x,L),_A(p.y,a.y,L),this.setTargetDelta(p),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(z1(m,this.layout.layoutBox,this.relativeParent.layout.layoutBox),Ipe(this.relativeTarget,this.relativeTargetOrigin,m,L)),w&&(this.animationValues=d,gpe(d,u,this.latestValues,L,k,_)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=L},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(a){this.notifyListeners("animationStart"),this.currentAnimation&&this.currentAnimation.stop(),this.resumingFrom&&this.resumingFrom.currentAnimation&&this.resumingFrom.currentAnimation.stop(),this.pendingAnimation&&(Gd.update(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=so.update(()=>{N1.hasAnimatedSinceResize=!0,this.currentAnimation=hpe(0,SA,{...a,onUpdate:s=>{this.mixTargetDelta(s),a.onUpdate&&a.onUpdate(s)},onComplete:()=>{a.onComplete&&a.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const a=this.getStack();a&&a.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(SA),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const a=this.getLead();let{targetWithTransforms:s,target:l,layout:u,latestValues:d}=a;if(!(!s||!l||!u)){if(this!==a&&this.layout&&u&&zB(this.options.animationType,this.layout.layoutBox,u.layoutBox)){l=this.target||gi();const p=Aa(this.layout.layoutBox.x);l.x.min=a.target.x.min,l.x.max=l.x.min+p;const m=Aa(this.layout.layoutBox.y);l.y.min=a.target.y.min,l.y.max=l.y.min+m}Ns(s,l),em(s,d),B1(this.projectionDeltaWithTransform,this.layoutCorrected,s,d)}}registerSharedNode(a,s){this.sharedNodes.has(a)||this.sharedNodes.set(a,new Spe),this.sharedNodes.get(a).add(s);const u=s.options.initialPromotionConfig;s.promote({transition:u?u.transition:void 0,preserveFollowOpacity:u&&u.shouldPreserveFollowOpacity?u.shouldPreserveFollowOpacity(s):void 0})}isLead(){const a=this.getStack();return a?a.lead===this:!0}getLead(){var a;const{layoutId:s}=this.options;return s?((a=this.getStack())===null||a===void 0?void 0:a.lead)||this:this}getPrevLead(){var a;const{layoutId:s}=this.options;return s?(a=this.getStack())===null||a===void 0?void 0:a.prevLead:void 0}getStack(){const{layoutId:a}=this.options;if(a)return this.root.sharedNodes.get(a)}promote({needsReset:a,transition:s,preserveFollowOpacity:l}={}){const u=this.getStack();u&&u.promote(this,l),a&&(this.projectionDelta=void 0,this.needsReset=!0),s&&this.setOptions({transition:s})}relegate(){const a=this.getStack();return a?a.relegate(this):!1}resetRotation(){const{visualElement:a}=this.options;if(!a)return;let s=!1;const{latestValues:l}=a;if((l.rotate||l.rotateX||l.rotateY||l.rotateZ)&&(s=!0),!s)return;const u={};for(let d=0;d{var s;return(s=a.currentAnimation)===null||s===void 0?void 0:s.stop()}),this.root.nodes.forEach(wA),this.root.sharedNodes.clear()}}}function kpe(e){e.updateLayout()}function Epe(e){var t;const n=((t=e.resumeFrom)===null||t===void 0?void 0:t.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&n&&e.hasListeners("didUpdate")){const{layoutBox:r,measuredBox:i}=e.layout,{animationType:o}=e.options,a=n.source!==e.layout.source;o==="size"?Al(p=>{const m=a?n.measuredBox[p]:n.layoutBox[p],y=Aa(m);m.min=r[p].min,m.max=m.min+y}):zB(o,n.layoutBox,r)&&Al(p=>{const m=a?n.measuredBox[p]:n.layoutBox[p],y=Aa(r[p]);m.max=m.min+y});const s=H1();B1(s,r,n.layoutBox);const l=H1();a?B1(l,e.applyTransform(i,!0),n.measuredBox):B1(l,r,n.layoutBox);const u=!$B(s);let d=!1;if(!e.resumeFrom){const p=e.getClosestProjectingParent();if(p&&!p.resumeFrom){const{snapshot:m,layout:y}=p;if(m&&y){const b=gi();z1(b,n.layoutBox,m.layoutBox);const w=gi();z1(w,r,y.layoutBox),FB(b,w)||(d=!0),p.options.layoutRoot&&(e.relativeTarget=w,e.relativeTargetOrigin=b,e.relativeParent=p)}}}e.notifyListeners("didUpdate",{layout:r,snapshot:n,delta:l,layoutDelta:s,hasLayoutChanged:u,hasRelativeTargetChanged:d})}else if(e.isLead()){const{onExitComplete:r}=e.options;r&&r()}e.options.transition=void 0}function Ppe(e){e.isProjectionDirty||(e.isProjectionDirty=Boolean(e.parent&&e.parent.isProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=Boolean(e.parent&&e.parent.isTransformDirty))}function Tpe(e){e.clearSnapshot()}function wA(e){e.clearMeasurements()}function Mpe(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function CA(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0}function Lpe(e){e.resolveTargetDelta()}function Ape(e){e.calcProjection()}function Ope(e){e.resetRotation()}function Rpe(e){e.removeLeadSnapshot()}function _A(e,t,n){e.translate=Fr(t.translate,0,n),e.scale=Fr(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function kA(e,t,n,r){e.min=Fr(t.min,n.min,r),e.max=Fr(t.max,n.max,r)}function Ipe(e,t,n,r){kA(e.x,t.x,n.x,r),kA(e.y,t.y,n.y,r)}function Dpe(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const jpe={duration:.45,ease:[.4,0,.1,1]};function Npe(e,t){let n=e.root;for(let o=e.path.length-1;o>=0;o--)if(Boolean(e.path[o].instance)){n=e.path[o];break}const i=(n&&n!==e.root?n.instance:document).querySelector(`[data-projection-id="${t}"]`);i&&e.mount(i,!0)}function EA(e){e.min=Math.round(e.min),e.max=Math.round(e.max)}function $pe(e){EA(e.x),EA(e.y)}function zB(e,t,n){return e==="position"||e==="preserve-aspect"&&!A_(yA(t),yA(n),.2)}const Fpe=BB({attachResizeListener:(e,t)=>Hu(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),aC={current:void 0},HB=BB({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!aC.current){const e=new Fpe(0,{});e.mount(window),e.setOptions({layoutScroll:!0}),aC.current=e}return aC.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>Boolean(window.getComputedStyle(e).position==="fixed")}),Bpe={pan:{Feature:ope},drag:{Feature:ipe,ProjectionNode:HB,MeasureLayout:DB}},zpe=new Set(["width","height","top","left","right","bottom","x","y"]),WB=e=>zpe.has(e),Hpe=e=>Object.keys(e).some(WB),PA=e=>e===np||e===Pt;var TA;(function(e){e.width="width",e.height="height",e.left="left",e.right="right",e.top="top",e.bottom="bottom"})(TA||(TA={}));const MA=(e,t)=>parseFloat(e.split(", ")[t]),LA=(e,t)=>(n,{transform:r})=>{if(r==="none"||!r)return 0;const i=r.match(/^matrix3d\((.+)\)$/);if(i)return MA(i[1],t);{const o=r.match(/^matrix\((.+)\)$/);return o?MA(o[1],e):0}},Wpe=new Set(["x","y","z"]),Upe=Aw.filter(e=>!Wpe.has(e));function Vpe(e){const t=[];return Upe.forEach(n=>{const r=e.getValue(n);r!==void 0&&(t.push([n,r.get()]),r.set(n.startsWith("scale")?1:0))}),t.length&&e.render(),t}const AA={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:LA(4,13),y:LA(5,14)},Gpe=(e,t,n)=>{const r=t.measureViewportBox(),i=t.current,o=getComputedStyle(i),{display:a}=o,s={};a==="none"&&t.setStaticValue("display",e.display||"block"),n.forEach(u=>{s[u]=AA[u](r,o)}),t.render();const l=t.measureViewportBox();return n.forEach(u=>{const d=t.getValue(u);d&&d.jump(s[u]),e[u]=AA[u](l,o)}),e},qpe=(e,t,n={},r={})=>{t={...t},r={...r};const i=Object.keys(t).filter(WB);let o=[],a=!1;const s=[];if(i.forEach(l=>{const u=e.getValue(l);if(!e.hasValue(l))return;let d=n[l],p=Hv(d);const m=t[l];let y;if(QS(m)){const b=m.length,w=m[0]===null?1:0;d=m[w],p=Hv(d);for(let E=w;E=0?window.pageYOffset:null,u=Gpe(t,e,s);return o.length&&o.forEach(([d,p])=>{e.getValue(d).set(p)}),e.render(),Tw&&l!==null&&window.scrollTo({top:l}),{target:u,transitionEnd:r}}else return{target:t,transitionEnd:r}};function Kpe(e,t,n,r){return Hpe(t)?qpe(e,t,n,r):{target:t,transitionEnd:r}}const Ype=(e,t,n,r)=>{const i=upe(e,t,r);return t=i.target,r=i.transitionEnd,Kpe(e,t,n,r)},N_={current:null},UB={current:!1};function Xpe(){if(UB.current=!0,!!Tw)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>N_.current=e.matches;e.addListener(t),t()}else N_.current=!1}function Zpe(e,t,n){const{willChange:r}=t;for(const i in t){const o=t[i],a=n[i];if(ta(o))e.addValue(i,o),e3(r)&&r.add(i);else if(ta(a))e.addValue(i,Gm(o,{owner:e})),e3(r)&&r.remove(i);else if(a!==o)if(e.hasValue(i)){const s=e.getValue(i);!s.hasAnimated&&s.set(o)}else{const s=e.getStaticValue(i);e.addValue(i,Gm(s!==void 0?s:o,{owner:e}))}}for(const i in n)t[i]===void 0&&e.removeValue(i);return t}const VB=Object.keys(ky),Qpe=VB.length,OA=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class Jpe{constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:i,visualState:o},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.scheduleRender=()=>so.render(this.render,!1,!0);const{latestValues:s,renderState:l}=o;this.latestValues=s,this.baseTarget={...s},this.initialValues=n.initial?{...s}:{},this.renderState=l,this.parent=t,this.props=n,this.presenceContext=r,this.depth=t?t.depth+1:0,this.reducedMotionConfig=i,this.options=a,this.isControllingVariants=Lw(n),this.isVariantNode=jF(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=Boolean(t&&t.current);const{willChange:u,...d}=this.scrapeMotionValuesFromProps(n,{});for(const p in d){const m=d[p];s[p]!==void 0&&ta(m)&&(m.set(s[p],!1),e3(u)&&u.add(p))}}scrapeMotionValuesFromProps(t,n){return{}}mount(t){this.current=t,this.projection&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((n,r)=>this.bindToMotionValue(r,n)),UB.current||Xpe(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:N_.current,this.parent&&this.parent.children.add(this),this.update(this.props,this.presenceContext)}unmount(){this.projection&&this.projection.unmount(),Gd.update(this.notifyUpdate),Gd.render(this.render),this.valueSubscriptions.forEach(t=>t()),this.removeFromVariantTree&&this.removeFromVariantTree(),this.parent&&this.parent.children.delete(this);for(const t in this.events)this.events[t].clear();for(const t in this.features)this.features[t].unmount();this.current=null}bindToMotionValue(t,n){const r=d0.has(t),i=n.on("change",a=>{this.latestValues[t]=a,this.props.onUpdate&&so.update(this.notifyUpdate,!1,!0),r&&this.projection&&(this.projection.isTransformDirty=!0)}),o=n.on("renderRequest",this.scheduleRender);this.valueSubscriptions.set(t,()=>{i(),o()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}loadFeatures({children:t,...n},r,i,o,a){let s,l;for(let u=0;uthis.scheduleRender(),animationType:typeof d=="string"?d:"both",initialPromotionConfig:a,layoutScroll:y,layoutRoot:b})}return l}updateFeatures(){for(const t in this.features){const n=this.features[t];n.isMounted?n.update(this.props,this.prevProps):(n.mount(),n.isMounted=!0)}}triggerBuild(){this.build(this.renderState,this.latestValues,this.options,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):gi()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}makeTargetAnimatable(t,n=!0){return this.makeTargetAnimatableFromInstance(t,this.props,n)}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;rn.variantChildren.delete(t)}addValue(t,n){n!==this.values.get(t)&&(this.removeValue(t),this.bindToMotionValue(t,n)),this.values.set(t,n),this.latestValues[t]=n.get()}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=Gm(n,{owner:this}),this.addValue(t,r)),r}readValue(t){return this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.readValueFromInstance(this.current,t,this.options)}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var n;const{initial:r}=this.props,i=typeof r=="string"||typeof r=="object"?(n=H9(this.props,r))===null||n===void 0?void 0:n[t]:void 0;if(r&&i!==void 0)return i;const o=this.getBaseTargetFromProps(this.props,t);return o!==void 0&&!ta(o)?o:this.initialValues[t]!==void 0&&i===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new V9),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}}const GB=["initial",...r8],ege=GB.length;class qB extends Jpe{sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){return t.style?t.style[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}makeTargetAnimatableFromInstance({transition:t,transitionEnd:n,...r},{transformValues:i},o){let a=Tfe(r,t||{},this);if(i&&(n&&(n=i(n)),r&&(r=i(r)),a&&(a=i(a))),o){Efe(this,r,a);const s=Ype(this,r,a,n);n=s.transitionEnd,r=s.target}return{transition:t,transitionEnd:n,...r}}}function tge(e){return window.getComputedStyle(e)}class nge extends qB{readValueFromInstance(t,n){if(d0.has(n)){const r=K9(n);return r&&r.default||0}else{const r=tge(t),i=(FF(n)?r.getPropertyValue(n):r[n])||0;return typeof i=="string"?i.trim():i}}measureInstanceViewportBox(t,{transformPagePoint:n}){return OB(t,n)}build(t,n,r,i){j9(t,n,r,i.transformTemplate)}scrapeMotionValuesFromProps(t,n){return z9(t,n)}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;ta(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}renderInstance(t,n,r,i){UF(t,n,r,i)}}class rge extends qB{constructor(){super(...arguments),this.isSVGTag=!1}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(d0.has(n)){const r=K9(n);return r&&r.default||0}return n=VF.has(n)?n:B9(n),t.getAttribute(n)}measureInstanceViewportBox(){return gi()}scrapeMotionValuesFromProps(t,n){return qF(t,n)}build(t,n,r,i){$9(t,n,r,this.isSVGTag,i.transformTemplate)}renderInstance(t,n,r,i){GF(t,n,r,i)}mount(t){this.isSVGTag=F9(t.tagName),super.mount(t)}}const ige=(e,t)=>D9(e)?new rge(t,{enableHardwareAcceleration:!1}):new nge(t,{enableHardwareAcceleration:!0}),oge={layout:{ProjectionNode:HB,MeasureLayout:DB}},age={...$he,...efe,...Bpe,...oge},su=hde((e,t)=>zde(e,t,age,ige));function KB(){const e=S.useRef(!1);return YS(()=>(e.current=!0,()=>{e.current=!1}),[]),e}function sge(){const e=KB(),[t,n]=S.useState(0),r=S.useCallback(()=>{e.current&&n(t+1)},[t]);return[S.useCallback(()=>so.postRender(r),[r]),t]}class lge extends S.Component{getSnapshotBeforeUpdate(t){const n=this.props.childRef.current;if(n&&t.isPresent&&!this.props.isPresent){const r=this.props.sizeRef.current;r.height=n.offsetHeight||0,r.width=n.offsetWidth||0,r.top=n.offsetTop,r.left=n.offsetLeft}return null}componentDidUpdate(){}render(){return this.props.children}}function uge({children:e,isPresent:t}){const n=S.useId(),r=S.useRef(null),i=S.useRef({width:0,height:0,top:0,left:0});return S.useInsertionEffect(()=>{const{width:o,height:a,top:s,left:l}=i.current;if(t||!r.current||!o||!a)return;r.current.dataset.motionPopId=n;const u=document.createElement("style");return document.head.appendChild(u),u.sheet&&u.sheet.insertRule(` [data-motion-pop-id="${n}"] { position: absolute !important; width: ${o}px !important; @@ -366,9 +366,9 @@ Error generating stack: `+o.message+` top: ${s}px !important; left: ${l}px !important; } - `),()=>{document.head.removeChild(u)}},[t]),S.createElement(sge,{isPresent:t,childRef:r,sizeRef:i},S.cloneElement(e,{ref:r}))}const sC=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:i,presenceAffectsLayout:o,mode:a})=>{const s=R9(uge),l=S.useId(),u=S.useMemo(()=>({id:l,initial:t,isPresent:n,custom:i,onExitComplete:d=>{s.set(d,!0);for(const h of s.values())if(!h)return;r&&r()},register:d=>(s.set(d,!1),()=>s.delete(d))}),o?void 0:[n]);return S.useMemo(()=>{s.forEach((d,h)=>s.set(h,!1))},[n]),S.useEffect(()=>{!n&&!s.size&&r&&r()},[n]),a==="popLayout"&&(e=S.createElement(lge,{isPresent:n},e)),S.createElement(n2.Provider,{value:u},e)};function uge(){return new Map}function cge(e){return S.useEffect(()=>()=>e(),[])}const jg=e=>e.key||"";function dge(e,t){e.forEach(n=>{const r=jg(n);t.set(r,n)})}function fge(e){const t=[];return S.Children.forEach(e,n=>{S.isValidElement(n)&&t.push(n)}),t}const rp=({children:e,custom:t,initial:n=!0,onExitComplete:r,exitBeforeEnter:i,presenceAffectsLayout:o=!0,mode:a="sync"})=>{i&&(a="wait");let[s]=age();const l=S.useContext(I9).forceRender;l&&(s=l);const u=KB(),d=fge(e);let h=d;const m=new Set,y=S.useRef(h),b=S.useRef(new Map).current,w=S.useRef(!0);if(YS(()=>{w.current=!1,dge(d,b),y.current=h}),cge(()=>{w.current=!0,b.clear(),m.clear()}),w.current)return S.createElement(S.Fragment,null,h.map(T=>S.createElement(sC,{key:jg(T),isPresent:!0,initial:n?void 0:!1,presenceAffectsLayout:o,mode:a},T)));h=[...h];const E=y.current.map(jg),_=d.map(jg),k=E.length;for(let T=0;T{if(_.indexOf(T)!==-1)return;const L=b.get(T);if(!L)return;const O=E.indexOf(T),D=()=>{b.delete(T),m.delete(T);const I=y.current.findIndex(N=>N.key===T);if(y.current.splice(I,1),!m.size){if(y.current=d,u.current===!1)return;s(),r&&r()}};h.splice(O,0,S.createElement(sC,{key:jg(L),isPresent:!1,onExitComplete:D,custom:t,presenceAffectsLayout:o,mode:a},L))}),h=h.map(T=>{const L=T.key;return m.has(L)?T:S.createElement(sC,{key:jg(T),isPresent:!0,presenceAffectsLayout:o,mode:a},T)}),S.createElement(S.Fragment,null,m.size?h:h.map(T=>S.cloneElement(T)))};var Nl=function(){return Nl=Object.assign||function(t){for(var n,r=1,i=arguments.length;r0&&o[o.length-1])&&(u[0]===6||u[0]===2)){n=0;continue}if(u[0]===3&&(!o||u[1]>o[0]&&u[1]0)&&!(i=r.next()).done;)o.push(i.value)}catch(s){a={error:s}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return o}function $_(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,o;r{const{position:t}=e,n=["top","bottom"].includes(t)?"y":"x";let r=["top-right","bottom-right"].includes(t)?1:-1;return t==="bottom"&&(r=1),{opacity:0,[n]:r*24}},animate:{opacity:1,y:0,x:0,scale:1,transition:{duration:.4,ease:[.4,0,.2,1]}},exit:{opacity:0,scale:.85,transition:{duration:.2,ease:[.4,0,1,1]}}},XB=S.memo(e=>{const{id:t,message:n,onCloseComplete:r,onRequestRemove:i,requestClose:o=!1,position:a="bottom",duration:s=5e3,containerStyle:l,motionVariants:u=hge,toastSpacing:d="0.5rem"}=e,[h,m]=S.useState(s),y=ope();rc(()=>{y||r==null||r()},[y]),rc(()=>{m(s)},[s]);const b=()=>m(null),w=()=>m(s),E=()=>{y&&i()};S.useEffect(()=>{y&&o&&i()},[y,o,i]),Jce(E,h);const _=S.useMemo(()=>({pointerEvents:"auto",maxWidth:560,minWidth:300,margin:d,...l}),[l,d]),k=S.useMemo(()=>Zce(a),[a]);return g.jsx(su.li,{layout:!0,className:"chakra-toast",variants:u,initial:"initial",animate:"animate",exit:"exit",onHoverStart:b,onHoverEnd:w,custom:{position:a},style:k,children:g.jsx(Ne.div,{role:"status","aria-atomic":"true",className:"chakra-toast__inner",__css:_,children:ts(n,{id:t,onClose:E})})})});XB.displayName="ToastComponent";function pge(e,t){var n;const r=e??"bottom",o={"top-start":{ltr:"top-left",rtl:"top-right"},"top-end":{ltr:"top-right",rtl:"top-left"},"bottom-start":{ltr:"bottom-left",rtl:"bottom-right"},"bottom-end":{ltr:"bottom-right",rtl:"bottom-left"}}[r];return(n=o==null?void 0:o[t])!=null?n:r}var IA={path:g.jsxs("g",{stroke:"currentColor",strokeWidth:"1.5",children:[g.jsx("path",{strokeLinecap:"round",fill:"none",d:"M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"}),g.jsx("path",{fill:"currentColor",strokeLinecap:"round",d:"M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"}),g.jsx("circle",{fill:"none",strokeMiterlimit:"10",cx:"12",cy:"12",r:"11.25"})]}),viewBox:"0 0 24 24"},ja=Ze((e,t)=>{const{as:n,viewBox:r,color:i="currentColor",focusable:o=!1,children:a,className:s,__css:l,...u}=e,d=xt("chakra-icon",s),h=au("Icon",e),m={w:"1em",h:"1em",display:"inline-block",lineHeight:"1em",flexShrink:0,color:i,...l,...h},y={ref:t,focusable:o,className:d,__css:m},b=r??IA.viewBox;if(n&&typeof n!="string")return g.jsx(Ne.svg,{as:n,...y,...u});const w=a??IA.path;return g.jsx(Ne.svg,{verticalAlign:"middle",viewBox:b,...y,...u,children:w})});ja.displayName="Icon";function fc(e){const{viewBox:t="0 0 24 24",d:n,displayName:r,defaultProps:i={}}=e,o=S.Children.toArray(e.path),a=Ze((s,l)=>g.jsx(ja,{ref:l,viewBox:t,...i,...s,children:o.length?o:g.jsx("path",{fill:"currentColor",d:n})}));return a.displayName=r,a}function gge(e){return g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.014,12.014,0,0,0,12,0Zm6.927,8.2-6.845,9.289a1.011,1.011,0,0,1-1.43.188L5.764,13.769a1,1,0,1,1,1.25-1.562l4.076,3.261,6.227-8.451A1,1,0,1,1,18.927,8.2Z"})})}function mge(e){return g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.013,12.013,0,0,0,12,0Zm.25,5a1.5,1.5,0,1,1-1.5,1.5A1.5,1.5,0,0,1,12.25,5ZM14.5,18.5h-4a1,1,0,0,1,0-2h.75a.25.25,0,0,0,.25-.25v-4.5a.25.25,0,0,0-.25-.25H10.5a1,1,0,0,1,0-2h1a2,2,0,0,1,2,2v4.75a.25.25,0,0,0,.25.25h.75a1,1,0,1,1,0,2Z"})})}function DA(e){return g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}var vge=nf({"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}),p0=Ze((e,t)=>{const n=au("Spinner",e),{label:r="Loading...",thickness:i="2px",speed:o="0.45s",emptyColor:a="transparent",className:s,...l}=fr(e),u=xt("chakra-spinner",s),d={display:"inline-block",borderColor:"currentColor",borderStyle:"solid",borderRadius:"99999px",borderWidth:i,borderBottomColor:a,borderLeftColor:a,animation:`${vge} ${o} linear infinite`,...n};return g.jsx(Ne.div,{ref:t,__css:d,className:u,...l,children:r&&g.jsx(Ne.span,{srOnly:!0,children:r})})});p0.displayName="Spinner";var[yge,bge]=Pn({name:"AlertContext",hookName:"useAlertContext",providerName:""}),[xge,i8]=Pn({name:"AlertStylesContext",hookName:"useAlertStyles",providerName:""}),ZB={info:{icon:mge,colorScheme:"blue"},warning:{icon:DA,colorScheme:"orange"},success:{icon:gge,colorScheme:"green"},error:{icon:DA,colorScheme:"red"},loading:{icon:p0,colorScheme:"blue"}};function Sge(e){return ZB[e].colorScheme}function wge(e){return ZB[e].icon}var QB=Ze(function(t,n){const i={display:"inline",...i8().description};return g.jsx(Ne.div,{ref:n,...t,className:xt("chakra-alert__desc",t.className),__css:i})});QB.displayName="AlertDescription";function JB(e){const{status:t}=bge(),n=wge(t),r=i8(),i=t==="loading"?r.spinner:r.icon;return g.jsx(Ne.span,{display:"inherit",...e,className:xt("chakra-alert__icon",e.className),__css:i,children:e.children||g.jsx(n,{h:"100%",w:"100%"})})}JB.displayName="AlertIcon";var ez=Ze(function(t,n){const r=i8();return g.jsx(Ne.div,{ref:n,...t,className:xt("chakra-alert__title",t.className),__css:r.title})});ez.displayName="AlertTitle";var tz=Ze(function(t,n){var r;const{status:i="info",addRole:o=!0,...a}=fr(t),s=(r=t.colorScheme)!=null?r:Sge(i),l=Yi("Alert",{...t,colorScheme:s}),u={width:"100%",display:"flex",alignItems:"center",position:"relative",overflow:"hidden",...l.container};return g.jsx(yge,{value:{status:i},children:g.jsx(xge,{value:l,children:g.jsx(Ne.div,{role:o?"alert":void 0,ref:n,...a,className:xt("chakra-alert",t.className),__css:u})})})});tz.displayName="Alert";function Cge(e){return g.jsx(ja,{focusable:"false","aria-hidden":!0,...e,children:g.jsx("path",{fill:"currentColor",d:"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z"})})}var o8=Ze(function(t,n){const r=au("CloseButton",t),{children:i,isDisabled:o,__css:a,...s}=fr(t),l={outline:0,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0};return g.jsx(Ne.button,{type:"button","aria-label":"Close",ref:n,disabled:o,__css:{...l,...r,...a},...s,children:i||g.jsx(Cge,{width:"1em",height:"1em"})})});o8.displayName="CloseButton";var _ge={top:[],"top-left":[],"top-right":[],"bottom-left":[],bottom:[],"bottom-right":[]},$l=kge(_ge);function kge(e){let t=e;const n=new Set,r=i=>{t=i(t),n.forEach(o=>o())};return{getState:()=>t,subscribe:i=>(n.add(i),()=>{r(()=>e),n.delete(i)}),removeToast:(i,o)=>{r(a=>({...a,[o]:a[o].filter(s=>s.id!=i)}))},notify:(i,o)=>{const a=Ege(i,o),{position:s,id:l}=a;return r(u=>{var d,h;const y=s.includes("top")?[a,...(d=u[s])!=null?d:[]]:[...(h=u[s])!=null?h:[],a];return{...u,[s]:y}}),l},update:(i,o)=>{i&&r(a=>{const s={...a},{position:l,index:u}=ML(s,i);return l&&u!==-1&&(s[l][u]={...s[l][u],...o,message:nz(o)}),s})},closeAll:({positions:i}={})=>{r(o=>(i??["bottom","bottom-right","bottom-left","top","top-left","top-right"]).reduce((l,u)=>(l[u]=o[u].map(d=>({...d,requestClose:!0})),l),{...o}))},close:i=>{r(o=>{const a=RF(o,i);return a?{...o,[a]:o[a].map(s=>s.id==i?{...s,requestClose:!0}:s)}:o})},isActive:i=>Boolean(ML($l.getState(),i).position)}}var jA=0;function Ege(e,t={}){var n,r;jA+=1;const i=(n=t.id)!=null?n:jA,o=(r=t.position)!=null?r:"bottom";return{id:i,message:e,position:o,duration:t.duration,onCloseComplete:t.onCloseComplete,onRequestRemove:()=>$l.removeToast(String(i),o),status:t.status,requestClose:!1,containerStyle:t.containerStyle}}var Pge=e=>{const{status:t,variant:n="solid",id:r,title:i,isClosable:o,onClose:a,description:s,icon:l}=e,u=r?{root:`toast-${r}`,title:`toast-${r}-title`,description:`toast-${r}-description`}:void 0;return g.jsxs(tz,{addRole:!1,status:t,variant:n,id:u==null?void 0:u.root,alignItems:"start",borderRadius:"md",boxShadow:"lg",paddingEnd:8,textAlign:"start",width:"auto",children:[g.jsx(JB,{children:l}),g.jsxs(Ne.div,{flex:"1",maxWidth:"100%",children:[i&&g.jsx(ez,{id:u==null?void 0:u.title,children:i}),s&&g.jsx(QB,{id:u==null?void 0:u.description,display:"block",children:s})]}),o&&g.jsx(o8,{size:"sm",onClick:a,position:"absolute",insetEnd:1,top:1})]})};function nz(e={}){const{render:t,toastComponent:n=Pge}=e;return i=>typeof t=="function"?t({...i,...e}):g.jsx(n,{...i,...e})}function Tge(e,t){const n=i=>{var o;return{...t,...i,position:pge((o=i==null?void 0:i.position)!=null?o:t==null?void 0:t.position,e)}},r=i=>{const o=n(i),a=nz(o);return $l.notify(a,o)};return r.update=(i,o)=>{$l.update(i,n(o))},r.promise=(i,o)=>{const a=r({...o.loading,status:"loading",duration:null});i.then(s=>r.update(a,{status:"success",duration:5e3,...ts(o.success,s)})).catch(s=>r.update(a,{status:"error",duration:5e3,...ts(o.error,s)}))},r.closeAll=$l.closeAll,r.close=$l.close,r.isActive=$l.isActive,r}var[Mge,Lge]=Pn({name:"ToastOptionsContext",strict:!1}),Age=e=>{const t=S.useSyncExternalStore($l.subscribe,$l.getState,$l.getState),{motionVariants:n,component:r=XB,portalProps:i}=e,a=Object.keys(t).map(s=>{const l=t[s];return g.jsx("ul",{role:"region","aria-live":"polite",id:`chakra-toast-manager-${s}`,style:Qce(s),children:g.jsx(rp,{initial:!1,children:l.map(u=>g.jsx(r,{motionVariants:n,...u},u.id))})},s)});return g.jsx(c0,{...i,children:a})};function a2(e){const{theme:t}=eF(),n=Lge();return S.useMemo(()=>Tge(t.direction,{...n,...e}),[e,t.direction,n])}var Oge=e=>function({children:n,theme:r=e,toastOptions:i,...o}){return g.jsxs(Yce,{theme:r,...o,children:[g.jsx(Mge,{value:i==null?void 0:i.defaultOptions,children:n}),g.jsx(Age,{...i})]})},Rge=Oge(cce),Ige=Object.defineProperty,Dge=(e,t,n)=>t in e?Ige(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Nr=(e,t,n)=>(Dge(e,typeof t!="symbol"?t+"":t,n),n);function NA(e){return e.sort((t,n)=>{const r=t.compareDocumentPosition(n);if(r&Node.DOCUMENT_POSITION_FOLLOWING||r&Node.DOCUMENT_POSITION_CONTAINED_BY)return-1;if(r&Node.DOCUMENT_POSITION_PRECEDING||r&Node.DOCUMENT_POSITION_CONTAINS)return 1;if(r&Node.DOCUMENT_POSITION_DISCONNECTED||r&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)throw Error("Cannot sort the given nodes.");return 0})}var jge=e=>typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE;function $A(e,t,n){let r=e+1;return n&&r>=t&&(r=0),r}function FA(e,t,n){let r=e-1;return n&&r<0&&(r=t),r}var F_=typeof window<"u"?S.useLayoutEffect:S.useEffect,o3=e=>e,Nge=class{constructor(){Nr(this,"descendants",new Map),Nr(this,"register",e=>{if(e!=null)return jge(e)?this.registerNode(e):t=>{this.registerNode(t,e)}}),Nr(this,"unregister",e=>{this.descendants.delete(e);const t=NA(Array.from(this.descendants.keys()));this.assignIndex(t)}),Nr(this,"destroy",()=>{this.descendants.clear()}),Nr(this,"assignIndex",e=>{this.descendants.forEach(t=>{const n=e.indexOf(t.node);t.index=n,t.node.dataset.index=t.index.toString()})}),Nr(this,"count",()=>this.descendants.size),Nr(this,"enabledCount",()=>this.enabledValues().length),Nr(this,"values",()=>Array.from(this.descendants.values()).sort((t,n)=>t.index-n.index)),Nr(this,"enabledValues",()=>this.values().filter(e=>!e.disabled)),Nr(this,"item",e=>{if(this.count()!==0)return this.values()[e]}),Nr(this,"enabledItem",e=>{if(this.enabledCount()!==0)return this.enabledValues()[e]}),Nr(this,"first",()=>this.item(0)),Nr(this,"firstEnabled",()=>this.enabledItem(0)),Nr(this,"last",()=>this.item(this.descendants.size-1)),Nr(this,"lastEnabled",()=>{const e=this.enabledValues().length-1;return this.enabledItem(e)}),Nr(this,"indexOf",e=>{var t,n;return e&&(n=(t=this.descendants.get(e))==null?void 0:t.index)!=null?n:-1}),Nr(this,"enabledIndexOf",e=>e==null?-1:this.enabledValues().findIndex(t=>t.node.isSameNode(e))),Nr(this,"next",(e,t=!0)=>{const n=$A(e,this.count(),t);return this.item(n)}),Nr(this,"nextEnabled",(e,t=!0)=>{const n=this.item(e);if(!n)return;const r=this.enabledIndexOf(n.node),i=$A(r,this.enabledCount(),t);return this.enabledItem(i)}),Nr(this,"prev",(e,t=!0)=>{const n=FA(e,this.count()-1,t);return this.item(n)}),Nr(this,"prevEnabled",(e,t=!0)=>{const n=this.item(e);if(!n)return;const r=this.enabledIndexOf(n.node),i=FA(r,this.enabledCount()-1,t);return this.enabledItem(i)}),Nr(this,"registerNode",(e,t)=>{if(!e||this.descendants.has(e))return;const n=Array.from(this.descendants.keys()).concat(e),r=NA(n);t!=null&&t.disabled&&(t.disabled=!!t.disabled);const i={node:e,index:-1,...t};this.descendants.set(e,i),this.assignIndex(r)})}};function $ge(e,t){if(e!=null){if(typeof e=="function"){e(t);return}try{e.current=t}catch{throw new Error(`Cannot assign value '${t}' to ref '${e}'`)}}}function Rn(...e){return t=>{e.forEach(n=>{$ge(n,t)})}}function Fge(...e){return S.useMemo(()=>Rn(...e),e)}function Bge(){const e=S.useRef(new Nge);return F_(()=>()=>e.current.destroy()),e.current}var[zge,rz]=Pn({name:"DescendantsProvider",errorMessage:"useDescendantsContext must be used within DescendantsProvider"});function Hge(e){const t=rz(),[n,r]=S.useState(-1),i=S.useRef(null);F_(()=>()=>{i.current&&t.unregister(i.current)},[]),F_(()=>{if(!i.current)return;const a=Number(i.current.dataset.index);n!=a&&!Number.isNaN(a)&&r(a)});const o=o3(e?t.register(e):t.register);return{descendants:t,index:n,enabledIndex:t.enabledIndexOf(i.current),register:Rn(o,i)}}function a8(){return[o3(zge),()=>o3(rz()),()=>Bge(),i=>Hge(i)]}var[Wge,Dw]=Pn({name:"AccordionStylesContext",hookName:"useAccordionStyles",providerName:""}),[Uge,s8]=Pn({name:"AccordionItemContext",hookName:"useAccordionItemContext",providerName:""}),[Vge,pNe,Gge,qge]=a8(),tm=Ze(function(t,n){const{getButtonProps:r}=s8(),i=r(t,n),a={display:"flex",alignItems:"center",width:"100%",outline:0,...Dw().button};return g.jsx(Ne.button,{...i,className:xt("chakra-accordion__button",t.className),__css:a})});tm.displayName="AccordionButton";function l8(e){const{value:t,defaultValue:n,onChange:r,shouldUpdate:i=(m,y)=>m!==y}=e,o=Qr(r),a=Qr(i),[s,l]=S.useState(n),u=t!==void 0,d=u?t:s,h=Qr(m=>{const b=typeof m=="function"?m(d):m;a(d,b)&&(u||l(b),o(b))},[u,o,d,a]);return[d,h]}function Kge(e){const{onChange:t,defaultIndex:n,index:r,allowMultiple:i,allowToggle:o,...a}=e;Zge(e),Qge(e);const s=Gge(),[l,u]=S.useState(-1);S.useEffect(()=>()=>{u(-1)},[]);const[d,h]=l8({value:r,defaultValue(){return i?n??[]:n??-1},onChange:t});return{index:d,setIndex:h,htmlProps:a,getAccordionItemProps:y=>{let b=!1;return y!==null&&(b=Array.isArray(d)?d.includes(y):d===y),{isOpen:b,onChange:E=>{if(y!==null)if(i&&Array.isArray(d)){const _=E?d.concat(y):d.filter(k=>k!==y);h(_)}else E?h(y):o&&h(-1)}}},focusedIndex:l,setFocusedIndex:u,descendants:s}}var[Yge,u8]=Pn({name:"AccordionContext",hookName:"useAccordionContext",providerName:"Accordion"});function Xge(e){const{isDisabled:t,isFocusable:n,id:r,...i}=e,{getAccordionItemProps:o,setFocusedIndex:a}=u8(),s=S.useRef(null),l=S.useId(),u=r??l,d=`accordion-button-${u}`,h=`accordion-panel-${u}`;Jge(e);const{register:m,index:y,descendants:b}=qge({disabled:t&&!n}),{isOpen:w,onChange:E}=o(y===-1?null:y);eme({isOpen:w,isDisabled:t});const _=()=>{E==null||E(!0)},k=()=>{E==null||E(!1)},T=S.useCallback(()=>{E==null||E(!w),a(y)},[y,a,w,E]),L=S.useCallback(N=>{const B={ArrowDown:()=>{const K=b.nextEnabled(y);K==null||K.node.focus()},ArrowUp:()=>{const K=b.prevEnabled(y);K==null||K.node.focus()},Home:()=>{const K=b.firstEnabled();K==null||K.node.focus()},End:()=>{const K=b.lastEnabled();K==null||K.node.focus()}}[N.key];B&&(N.preventDefault(),B(N))},[b,y]),O=S.useCallback(()=>{a(y)},[a,y]),D=S.useCallback(function(W={},B=null){return{...W,type:"button",ref:Rn(m,s,B),id:d,disabled:!!t,"aria-expanded":!!w,"aria-controls":h,onClick:ht(W.onClick,T),onFocus:ht(W.onFocus,O),onKeyDown:ht(W.onKeyDown,L)}},[d,t,w,T,O,L,h,m]),I=S.useCallback(function(W={},B=null){return{...W,ref:B,role:"region",id:h,"aria-labelledby":d,hidden:!w}},[d,w,h]);return{isOpen:w,isDisabled:t,isFocusable:n,onOpen:_,onClose:k,getButtonProps:D,getPanelProps:I,htmlProps:i}}function Zge(e){const t=e.index||e.defaultIndex,n=t!=null&&!Array.isArray(t)&&e.allowMultiple;Jy({condition:!!n,message:`If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof t},`})}function Qge(e){Jy({condition:!!(e.allowMultiple&&e.allowToggle),message:"If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not"})}function Jge(e){Jy({condition:!!(e.isFocusable&&!e.isDisabled),message:`Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well. - `})}function eme(e){Jy({condition:e.isOpen&&!!e.isDisabled,message:"Cannot open a disabled accordion item"})}function nm(e){const{isOpen:t,isDisabled:n}=s8(),{reduceMotion:r}=u8(),i=xt("chakra-accordion__icon",e.className),o=Dw(),a={opacity:n?.4:1,transform:t?"rotate(-180deg)":void 0,transition:r?void 0:"transform 0.2s",transformOrigin:"center",...o.icon};return g.jsx(ja,{viewBox:"0 0 24 24","aria-hidden":!0,className:i,__css:a,...e,children:g.jsx("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})})}nm.displayName="AccordionIcon";var rm=Ze(function(t,n){const{children:r,className:i}=t,{htmlProps:o,...a}=Xge(t),l={...Dw().container,overflowAnchor:"none"},u=S.useMemo(()=>a,[a]);return g.jsx(Uge,{value:u,children:g.jsx(Ne.div,{ref:n,...o,className:xt("chakra-accordion__item",i),__css:l,children:typeof r=="function"?r({isExpanded:!!a.isOpen,isDisabled:!!a.isDisabled}):r})})});rm.displayName="AccordionItem";var im={ease:[.25,.1,.25,1],easeIn:[.4,0,1,1],easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1]},Ih={enter:{duration:.2,ease:im.easeOut},exit:{duration:.1,ease:im.easeIn}},Ku={enter:(e,t)=>({...e,delay:typeof t=="number"?t:t==null?void 0:t.enter}),exit:(e,t)=>({...e,delay:typeof t=="number"?t:t==null?void 0:t.exit})},tme=e=>e!=null&&parseInt(e.toString(),10)>0,BA={exit:{height:{duration:.2,ease:im.ease},opacity:{duration:.3,ease:im.ease}},enter:{height:{duration:.3,ease:im.ease},opacity:{duration:.4,ease:im.ease}}},nme={exit:({animateOpacity:e,startingHeight:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{...e&&{opacity:tme(t)?1:0},height:t,transitionEnd:r==null?void 0:r.exit,transition:(o=n==null?void 0:n.exit)!=null?o:Ku.exit(BA.exit,i)}},enter:({animateOpacity:e,endingHeight:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{...e&&{opacity:1},height:t,transitionEnd:r==null?void 0:r.enter,transition:(o=n==null?void 0:n.enter)!=null?o:Ku.enter(BA.enter,i)}}},iz=S.forwardRef((e,t)=>{const{in:n,unmountOnExit:r,animateOpacity:i=!0,startingHeight:o=0,endingHeight:a="auto",style:s,className:l,transition:u,transitionEnd:d,...h}=e,[m,y]=S.useState(!1);S.useEffect(()=>{const k=setTimeout(()=>{y(!0)});return()=>clearTimeout(k)},[]),Jy({condition:Boolean(o>0&&r),message:"startingHeight and unmountOnExit are mutually exclusive. You can't use them together"});const b=parseFloat(o.toString())>0,w={startingHeight:o,endingHeight:a,animateOpacity:i,transition:m?u:{enter:{duration:0}},transitionEnd:{enter:d==null?void 0:d.enter,exit:r?d==null?void 0:d.exit:{...d==null?void 0:d.exit,display:b?"block":"none"}}},E=r?n:!0,_=n||r?"enter":"exit";return g.jsx(rp,{initial:!1,custom:w,children:E&&g.jsx(su.div,{ref:t,...h,className:xt("chakra-collapse",l),style:{overflow:"hidden",display:"block",...s},custom:w,variants:nme,initial:r?"exit":!1,animate:_,exit:"exit"})})});iz.displayName="Collapse";var rme={enter:({transition:e,transitionEnd:t,delay:n}={})=>{var r;return{opacity:1,transition:(r=e==null?void 0:e.enter)!=null?r:Ku.enter(Ih.enter,n),transitionEnd:t==null?void 0:t.enter}},exit:({transition:e,transitionEnd:t,delay:n}={})=>{var r;return{opacity:0,transition:(r=e==null?void 0:e.exit)!=null?r:Ku.exit(Ih.exit,n),transitionEnd:t==null?void 0:t.exit}}},oz={initial:"exit",animate:"enter",exit:"exit",variants:rme},ime=S.forwardRef(function(t,n){const{unmountOnExit:r,in:i,className:o,transition:a,transitionEnd:s,delay:l,...u}=t,d=i||r?"enter":"exit",h=r?i&&r:!0,m={transition:a,transitionEnd:s,delay:l};return g.jsx(rp,{custom:m,children:h&&g.jsx(su.div,{ref:n,className:xt("chakra-fade",o),custom:m,...oz,animate:d,...u})})});ime.displayName="Fade";var ome={exit:({reverse:e,initialScale:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{opacity:0,...e?{scale:t,transitionEnd:r==null?void 0:r.exit}:{transitionEnd:{scale:t,...r==null?void 0:r.exit}},transition:(o=n==null?void 0:n.exit)!=null?o:Ku.exit(Ih.exit,i)}},enter:({transitionEnd:e,transition:t,delay:n})=>{var r;return{opacity:1,scale:1,transition:(r=t==null?void 0:t.enter)!=null?r:Ku.enter(Ih.enter,n),transitionEnd:e==null?void 0:e.enter}}},az={initial:"exit",animate:"enter",exit:"exit",variants:ome},ame=S.forwardRef(function(t,n){const{unmountOnExit:r,in:i,reverse:o=!0,initialScale:a=.95,className:s,transition:l,transitionEnd:u,delay:d,...h}=t,m=r?i&&r:!0,y=i||r?"enter":"exit",b={initialScale:a,reverse:o,transition:l,transitionEnd:u,delay:d};return g.jsx(rp,{custom:b,children:m&&g.jsx(su.div,{ref:n,className:xt("chakra-offset-slide",s),...az,animate:y,custom:b,...h})})});ame.displayName="ScaleFade";var sme={initial:({offsetX:e,offsetY:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{opacity:0,x:e,y:t,transition:(o=n==null?void 0:n.exit)!=null?o:Ku.exit(Ih.exit,i),transitionEnd:r==null?void 0:r.exit}},enter:({transition:e,transitionEnd:t,delay:n})=>{var r;return{opacity:1,x:0,y:0,transition:(r=e==null?void 0:e.enter)!=null?r:Ku.enter(Ih.enter,n),transitionEnd:t==null?void 0:t.enter}},exit:({offsetY:e,offsetX:t,transition:n,transitionEnd:r,reverse:i,delay:o})=>{var a;const s={x:t,y:e};return{opacity:0,transition:(a=n==null?void 0:n.exit)!=null?a:Ku.exit(Ih.exit,o),...i?{...s,transitionEnd:r==null?void 0:r.exit}:{transitionEnd:{...s,...r==null?void 0:r.exit}}}}},B_={initial:"initial",animate:"enter",exit:"exit",variants:sme},lme=S.forwardRef(function(t,n){const{unmountOnExit:r,in:i,reverse:o=!0,className:a,offsetX:s=0,offsetY:l=8,transition:u,transitionEnd:d,delay:h,...m}=t,y=r?i&&r:!0,b=i||r?"enter":"exit",w={offsetX:s,offsetY:l,reverse:o,transition:u,transitionEnd:d,delay:h};return g.jsx(rp,{custom:w,children:y&&g.jsx(su.div,{ref:n,className:xt("chakra-offset-slide",a),custom:w,...B_,animate:b,...m})})});lme.displayName="SlideFade";var om=Ze(function(t,n){const{className:r,motionProps:i,...o}=t,{reduceMotion:a}=u8(),{getPanelProps:s,isOpen:l}=s8(),u=s(o,n),d=xt("chakra-accordion__panel",r),h=Dw();a||delete u.hidden;const m=g.jsx(Ne.div,{...u,__css:h.panel,className:d});return a?m:g.jsx(iz,{in:l,...i,children:m})});om.displayName="AccordionPanel";var c8=Ze(function({children:t,reduceMotion:n,...r},i){const o=Yi("Accordion",r),a=fr(r),{htmlProps:s,descendants:l,...u}=Kge(a),d=S.useMemo(()=>({...u,reduceMotion:!!n}),[u,n]);return g.jsx(Vge,{value:l,children:g.jsx(Yge,{value:d,children:g.jsx(Wge,{value:o,children:g.jsx(Ne.div,{ref:i,...s,className:xt("chakra-accordion",r.className),__css:o.root,children:t})})})})});c8.displayName="Accordion";var z_=Ze(function(t,n){const{htmlWidth:r,htmlHeight:i,alt:o,...a}=t;return g.jsx("img",{width:r,height:i,ref:n,alt:o,...a})});z_.displayName="NativeImage";function ume(e){const{loading:t,src:n,srcSet:r,onLoad:i,onError:o,crossOrigin:a,sizes:s,ignoreFallback:l}=e,[u,d]=S.useState("pending");S.useEffect(()=>{d(n?"loading":"pending")},[n]);const h=S.useRef(),m=S.useCallback(()=>{if(!n)return;y();const b=new Image;b.src=n,a&&(b.crossOrigin=a),r&&(b.srcset=r),s&&(b.sizes=s),t&&(b.loading=t),b.onload=w=>{y(),d("loaded"),i==null||i(w)},b.onerror=w=>{y(),d("failed"),o==null||o(w)},h.current=b},[n,a,r,s,i,o,t]),y=()=>{h.current&&(h.current.onload=null,h.current.onerror=null,h.current=null)};return Vl(()=>{if(!l)return u==="loading"&&m(),()=>{y()}},[u,m,l]),l?"loaded":u}var cme=(e,t)=>e!=="loaded"&&t==="beforeLoadOrError"||e==="failed"&&t==="onError";function dme(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}var jw=Ze(function(t,n){const{fallbackSrc:r,fallback:i,src:o,srcSet:a,align:s,fit:l,loading:u,ignoreFallback:d,crossOrigin:h,fallbackStrategy:m="beforeLoadOrError",referrerPolicy:y,...b}=t,w=r!==void 0||i!==void 0,E=u!=null||d||!w,_=ume({...t,ignoreFallback:E}),k=cme(_,m),T={ref:n,objectFit:l,objectPosition:s,...E?b:dme(b,["onError","onLoad"])};return k?i||g.jsx(Ne.img,{as:z_,className:"chakra-image__placeholder",src:r,...T}):g.jsx(Ne.img,{as:z_,src:o,srcSet:a,crossOrigin:h,loading:u,referrerPolicy:y,className:"chakra-image",...T})});jw.displayName="Image";function d8(e){return S.Children.toArray(e).filter(t=>S.isValidElement(t))}var[fme,hme]=Pn({strict:!1,name:"ButtonGroupContext"}),pme={horizontal:{"> *:first-of-type:not(:last-of-type)":{borderEndRadius:0},"> *:not(:first-of-type):not(:last-of-type)":{borderRadius:0},"> *:not(:first-of-type):last-of-type":{borderStartRadius:0}},vertical:{"> *:first-of-type:not(:last-of-type)":{borderBottomRadius:0},"> *:not(:first-of-type):not(:last-of-type)":{borderRadius:0},"> *:not(:first-of-type):last-of-type":{borderTopRadius:0}}},gme={horizontal:e=>({"& > *:not(style) ~ *:not(style)":{marginStart:e}}),vertical:e=>({"& > *:not(style) ~ *:not(style)":{marginTop:e}})},Gi=Ze(function(t,n){const{size:r,colorScheme:i,variant:o,className:a,spacing:s="0.5rem",isAttached:l,isDisabled:u,orientation:d="horizontal",...h}=t,m=xt("chakra-button__group",a),y=S.useMemo(()=>({size:r,colorScheme:i,variant:o,isDisabled:u}),[r,i,o,u]);let b={display:"inline-flex",...l?pme[d]:gme[d](s)};const w=d==="vertical";return g.jsx(fme,{value:y,children:g.jsx(Ne.div,{ref:n,role:"group",__css:b,className:m,"data-attached":l?"":void 0,"data-orientation":d,flexDir:w?"column":void 0,...h})})});Gi.displayName="ButtonGroup";function mme(e){const[t,n]=S.useState(!e);return{ref:S.useCallback(o=>{o&&n(o.tagName==="BUTTON")},[]),type:t?"button":void 0}}function H_(e){const{children:t,className:n,...r}=e,i=S.isValidElement(t)?S.cloneElement(t,{"aria-hidden":!0,focusable:!1}):t,o=xt("chakra-button__icon",n);return g.jsx(Ne.span,{display:"inline-flex",alignSelf:"center",flexShrink:0,...r,className:o,children:i})}H_.displayName="ButtonIcon";function a3(e){const{label:t,placement:n,spacing:r="0.5rem",children:i=g.jsx(p0,{color:"currentColor",width:"1em",height:"1em"}),className:o,__css:a,...s}=e,l=xt("chakra-button__spinner",o),u=n==="start"?"marginEnd":"marginStart",d=S.useMemo(()=>({display:"flex",alignItems:"center",position:t?"relative":"absolute",[u]:t?r:0,fontSize:"1em",lineHeight:"normal",...a}),[a,t,u,r]);return g.jsx(Ne.div,{className:l,...s,__css:d,children:i})}a3.displayName="ButtonSpinner";var ss=Ze((e,t)=>{const n=hme(),r=au("Button",{...n,...e}),{isDisabled:i=n==null?void 0:n.isDisabled,isLoading:o,isActive:a,children:s,leftIcon:l,rightIcon:u,loadingText:d,iconSpacing:h="0.5rem",type:m,spinner:y,spinnerPlacement:b="start",className:w,as:E,..._}=fr(e),k=S.useMemo(()=>{const D={...r==null?void 0:r._focus,zIndex:1};return{display:"inline-flex",appearance:"none",alignItems:"center",justifyContent:"center",userSelect:"none",position:"relative",whiteSpace:"nowrap",verticalAlign:"middle",outline:"none",...r,...!!n&&{_focus:D}}},[r,n]),{ref:T,type:L}=mme(E),O={rightIcon:u,leftIcon:l,iconSpacing:h,children:s};return g.jsxs(Ne.button,{ref:Fge(t,T),as:E,type:m??L,"data-active":Bt(a),"data-loading":Bt(o),__css:k,className:xt("chakra-button",w),..._,disabled:i||o,children:[o&&b==="start"&&g.jsx(a3,{className:"chakra-button__spinner--start",label:d,placement:"start",spacing:h,children:y}),o?d||g.jsx(Ne.span,{opacity:0,children:g.jsx(zA,{...O})}):g.jsx(zA,{...O}),o&&b==="end"&&g.jsx(a3,{className:"chakra-button__spinner--end",label:d,placement:"end",spacing:h,children:y})]})});ss.displayName="Button";function zA(e){const{leftIcon:t,rightIcon:n,children:r,iconSpacing:i}=e;return g.jsxs(g.Fragment,{children:[t&&g.jsx(H_,{marginEnd:i,children:t}),r,n&&g.jsx(H_,{marginStart:i,children:n})]})}var ls=Ze((e,t)=>{const{icon:n,children:r,isRound:i,"aria-label":o,...a}=e,s=n||r,l=S.isValidElement(s)?S.cloneElement(s,{"aria-hidden":!0,focusable:!1}):null;return g.jsx(ss,{padding:"0",borderRadius:i?"full":void 0,ref:t,"aria-label":o,...a,children:l})});ls.displayName="IconButton";var[gNe,vme]=Pn({name:"CheckboxGroupContext",strict:!1});function yme(e){return g.jsx(Ne.svg,{width:"1.2em",viewBox:"0 0 12 10",style:{fill:"none",strokeWidth:2,stroke:"currentColor",strokeDasharray:16},...e,children:g.jsx("polyline",{points:"1.5 6 4.5 9 10.5 1"})})}function bme(e){return g.jsx(Ne.svg,{width:"1.2em",viewBox:"0 0 24 24",style:{stroke:"currentColor",strokeWidth:4},...e,children:g.jsx("line",{x1:"21",x2:"3",y1:"12",y2:"12"})})}function xme(e){const{isIndeterminate:t,isChecked:n,...r}=e,i=t?bme:yme;return n||t?g.jsx(Ne.div,{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:g.jsx(i,{...r})}):null}var[Sme,sz]=Pn({name:"FormControlStylesContext",errorMessage:`useFormControlStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),[wme,ip]=Pn({strict:!1,name:"FormControlContext"});function Cme(e){const{id:t,isRequired:n,isInvalid:r,isDisabled:i,isReadOnly:o,...a}=e,s=S.useId(),l=t||`field-${s}`,u=`${l}-label`,d=`${l}-feedback`,h=`${l}-helptext`,[m,y]=S.useState(!1),[b,w]=S.useState(!1),[E,_]=S.useState(!1),k=S.useCallback((I={},N=null)=>({id:h,...I,ref:Rn(N,W=>{W&&w(!0)})}),[h]),T=S.useCallback((I={},N=null)=>{var W,B;return{...I,ref:N,"data-focus":Bt(E),"data-disabled":Bt(i),"data-invalid":Bt(r),"data-readonly":Bt(o),id:(W=I.id)!=null?W:u,htmlFor:(B=I.htmlFor)!=null?B:l}},[l,i,E,r,o,u]),L=S.useCallback((I={},N=null)=>({id:d,...I,ref:Rn(N,W=>{W&&y(!0)}),"aria-live":"polite"}),[d]),O=S.useCallback((I={},N=null)=>({...I,...a,ref:N,role:"group"}),[a]),D=S.useCallback((I={},N=null)=>({...I,ref:N,role:"presentation","aria-hidden":!0,children:I.children||"*"}),[]);return{isRequired:!!n,isInvalid:!!r,isReadOnly:!!o,isDisabled:!!i,isFocused:!!E,onFocus:()=>_(!0),onBlur:()=>_(!1),hasFeedbackText:m,setHasFeedbackText:y,hasHelpText:b,setHasHelpText:w,id:l,labelId:u,feedbackId:d,helpTextId:h,htmlProps:a,getHelpTextProps:k,getErrorMessageProps:L,getRootProps:O,getLabelProps:T,getRequiredIndicatorProps:D}}var sn=Ze(function(t,n){const r=Yi("Form",t),i=fr(t),{getRootProps:o,htmlProps:a,...s}=Cme(i),l=xt("chakra-form-control",t.className);return g.jsx(wme,{value:s,children:g.jsx(Sme,{value:r,children:g.jsx(Ne.div,{...o({},n),className:l,__css:r.container})})})});sn.displayName="FormControl";var sr=Ze(function(t,n){const r=ip(),i=sz(),o=xt("chakra-form__helper-text",t.className);return g.jsx(Ne.div,{...r==null?void 0:r.getHelpTextProps(t,n),__css:i.helperText,className:o})});sr.displayName="FormHelperText";var[_me,kme]=Pn({name:"FormErrorStylesContext",errorMessage:`useFormErrorStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),lr=Ze((e,t)=>{const n=Yi("FormError",e),r=fr(e),i=ip();return i!=null&&i.isInvalid?g.jsx(_me,{value:n,children:g.jsx(Ne.div,{...i==null?void 0:i.getErrorMessageProps(r,t),className:xt("chakra-form__error-message",e.className),__css:{display:"flex",alignItems:"center",...n.text}})}):null});lr.displayName="FormErrorMessage";var Eme=Ze((e,t)=>{const n=kme(),r=ip();if(!(r!=null&&r.isInvalid))return null;const i=xt("chakra-form__error-icon",e.className);return g.jsx(ja,{ref:t,"aria-hidden":!0,...e,__css:n.icon,className:i,children:g.jsx("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})});Eme.displayName="FormErrorIcon";var Sn=Ze(function(t,n){var r;const i=au("FormLabel",t),o=fr(t),{className:a,children:s,requiredIndicator:l=g.jsx(lz,{}),optionalIndicator:u=null,...d}=o,h=ip(),m=(r=h==null?void 0:h.getLabelProps(d,n))!=null?r:{ref:n,...d};return g.jsxs(Ne.label,{...m,className:xt("chakra-form__label",o.className),__css:{display:"block",textAlign:"start",...i},children:[s,h!=null&&h.isRequired?l:u]})});Sn.displayName="FormLabel";var lz=Ze(function(t,n){const r=ip(),i=sz();if(!(r!=null&&r.isRequired))return null;const o=xt("chakra-form__required-indicator",t.className);return g.jsx(Ne.span,{...r==null?void 0:r.getRequiredIndicatorProps(t,n),__css:i.requiredIndicator,className:o})});lz.displayName="RequiredIndicator";function f8(e){const{isDisabled:t,isInvalid:n,isReadOnly:r,isRequired:i,...o}=h8(e);return{...o,disabled:t,readOnly:r,required:i,"aria-invalid":Uu(n),"aria-required":Uu(i),"aria-readonly":Uu(r)}}function h8(e){var t,n,r;const i=ip(),{id:o,disabled:a,readOnly:s,required:l,isRequired:u,isInvalid:d,isReadOnly:h,isDisabled:m,onFocus:y,onBlur:b,...w}=e,E=e["aria-describedby"]?[e["aria-describedby"]]:[];return i!=null&&i.hasFeedbackText&&(i!=null&&i.isInvalid)&&E.push(i.feedbackId),i!=null&&i.hasHelpText&&E.push(i.helpTextId),{...w,"aria-describedby":E.join(" ")||void 0,id:o??(i==null?void 0:i.id),isDisabled:(t=a??m)!=null?t:i==null?void 0:i.isDisabled,isReadOnly:(n=s??h)!=null?n:i==null?void 0:i.isReadOnly,isRequired:(r=l??u)!=null?r:i==null?void 0:i.isRequired,isInvalid:d??(i==null?void 0:i.isInvalid),onFocus:ht(i==null?void 0:i.onFocus,y),onBlur:ht(i==null?void 0:i.onBlur,b)}}var Pme={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"},HA=!1,s2=null,qh=!1,W_=!1,U_=new Set;function p8(e,t){U_.forEach(n=>n(e,t))}var Tme=typeof window<"u"&&window.navigator!=null?/^Mac/.test(window.navigator.platform):!1;function Mme(e){return!(e.metaKey||!Tme&&e.altKey||e.ctrlKey||e.key==="Control"||e.key==="Shift"||e.key==="Meta")}function WA(e){qh=!0,Mme(e)&&(s2="keyboard",p8("keyboard",e))}function xg(e){if(s2="pointer",e.type==="mousedown"||e.type==="pointerdown"){qh=!0;const t=e.composedPath?e.composedPath()[0]:e.target;let n=!1;try{n=t.matches(":focus-visible")}catch{}if(n)return;p8("pointer",e)}}function Lme(e){return e.mozInputSource===0&&e.isTrusted?!0:e.detail===0&&!e.pointerType}function Ame(e){Lme(e)&&(qh=!0,s2="virtual")}function Ome(e){e.target===window||e.target===document||(!qh&&!W_&&(s2="virtual",p8("virtual",e)),qh=!1,W_=!1)}function Rme(){qh=!1,W_=!0}function UA(){return s2!=="pointer"}function Ime(){if(typeof window>"u"||HA)return;const{focus:e}=HTMLElement.prototype;HTMLElement.prototype.focus=function(...n){qh=!0,e.apply(this,n)},document.addEventListener("keydown",WA,!0),document.addEventListener("keyup",WA,!0),document.addEventListener("click",Ame,!0),window.addEventListener("focus",Ome,!0),window.addEventListener("blur",Rme,!1),typeof PointerEvent<"u"?(document.addEventListener("pointerdown",xg,!0),document.addEventListener("pointermove",xg,!0),document.addEventListener("pointerup",xg,!0)):(document.addEventListener("mousedown",xg,!0),document.addEventListener("mousemove",xg,!0),document.addEventListener("mouseup",xg,!0)),HA=!0}function uz(e){Ime(),e(UA());const t=()=>e(UA());return U_.add(t),()=>{U_.delete(t)}}function Dme(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function cz(e={}){const t=h8(e),{isDisabled:n,isReadOnly:r,isRequired:i,isInvalid:o,id:a,onBlur:s,onFocus:l,"aria-describedby":u}=t,{defaultChecked:d,isChecked:h,isFocusable:m,onChange:y,isIndeterminate:b,name:w,value:E,tabIndex:_=void 0,"aria-label":k,"aria-labelledby":T,"aria-invalid":L,...O}=e,D=Dme(O,["isDisabled","isReadOnly","isRequired","isInvalid","id","onBlur","onFocus","aria-describedby"]),I=Qr(y),N=Qr(s),W=Qr(l),[B,K]=S.useState(!1),[ne,z]=S.useState(!1),[$,V]=S.useState(!1),[X,Q]=S.useState(!1);S.useEffect(()=>uz(K),[]);const G=S.useRef(null),[Y,ee]=S.useState(!0),[fe,Ce]=S.useState(!!d),we=h!==void 0,xe=we?h:fe,Le=S.useCallback(Fe=>{if(r||n){Fe.preventDefault();return}we||Ce(xe?Fe.target.checked:b?!0:Fe.target.checked),I==null||I(Fe)},[r,n,xe,we,b,I]);Vl(()=>{G.current&&(G.current.indeterminate=Boolean(b))},[b]),rc(()=>{n&&z(!1)},[n,z]),Vl(()=>{const Fe=G.current;Fe!=null&&Fe.form&&(Fe.form.onreset=()=>{Ce(!!d)})},[]);const Se=n&&!m,Qe=S.useCallback(Fe=>{Fe.key===" "&&Q(!0)},[Q]),Xe=S.useCallback(Fe=>{Fe.key===" "&&Q(!1)},[Q]);Vl(()=>{if(!G.current)return;G.current.checked!==xe&&Ce(G.current.checked)},[G.current]);const tt=S.useCallback((Fe={},at=null)=>{const jt=mt=>{ne&&mt.preventDefault(),Q(!0)};return{...Fe,ref:at,"data-active":Bt(X),"data-hover":Bt($),"data-checked":Bt(xe),"data-focus":Bt(ne),"data-focus-visible":Bt(ne&&B),"data-indeterminate":Bt(b),"data-disabled":Bt(n),"data-invalid":Bt(o),"data-readonly":Bt(r),"aria-hidden":!0,onMouseDown:ht(Fe.onMouseDown,jt),onMouseUp:ht(Fe.onMouseUp,()=>Q(!1)),onMouseEnter:ht(Fe.onMouseEnter,()=>V(!0)),onMouseLeave:ht(Fe.onMouseLeave,()=>V(!1))}},[X,xe,n,ne,B,$,b,o,r]),yt=S.useCallback((Fe={},at=null)=>({...D,...Fe,ref:Rn(at,jt=>{jt&&ee(jt.tagName==="LABEL")}),onClick:ht(Fe.onClick,()=>{var jt;Y||((jt=G.current)==null||jt.click(),requestAnimationFrame(()=>{var mt;(mt=G.current)==null||mt.focus()}))}),"data-disabled":Bt(n),"data-checked":Bt(xe),"data-invalid":Bt(o)}),[D,n,xe,o,Y]),Be=S.useCallback((Fe={},at=null)=>({...Fe,ref:Rn(G,at),type:"checkbox",name:w,value:E,id:a,tabIndex:_,onChange:ht(Fe.onChange,Le),onBlur:ht(Fe.onBlur,N,()=>z(!1)),onFocus:ht(Fe.onFocus,W,()=>z(!0)),onKeyDown:ht(Fe.onKeyDown,Qe),onKeyUp:ht(Fe.onKeyUp,Xe),required:i,checked:xe,disabled:Se,readOnly:r,"aria-label":k,"aria-labelledby":T,"aria-invalid":L?Boolean(L):o,"aria-describedby":u,"aria-disabled":n,style:Pme}),[w,E,a,Le,N,W,Qe,Xe,i,xe,Se,r,k,T,L,o,u,n,_]),Ae=S.useCallback((Fe={},at=null)=>({...Fe,ref:at,onMouseDown:ht(Fe.onMouseDown,VA),onTouchStart:ht(Fe.onTouchStart,VA),"data-disabled":Bt(n),"data-checked":Bt(xe),"data-invalid":Bt(o)}),[xe,n,o]);return{state:{isInvalid:o,isFocused:ne,isChecked:xe,isActive:X,isHovered:$,isIndeterminate:b,isDisabled:n,isReadOnly:r,isRequired:i},getRootProps:yt,getCheckboxProps:tt,getInputProps:Be,getLabelProps:Ae,htmlProps:D}}function VA(e){e.preventDefault(),e.stopPropagation()}var jme={display:"inline-flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",userSelect:"none",flexShrink:0},Nme={cursor:"pointer",display:"inline-flex",alignItems:"center",verticalAlign:"top",position:"relative"},$me=nf({from:{opacity:0,strokeDashoffset:16,transform:"scale(0.95)"},to:{opacity:1,strokeDashoffset:0,transform:"scale(1)"}}),Fme=nf({from:{opacity:0},to:{opacity:1}}),Bme=nf({from:{transform:"scaleX(0.65)"},to:{transform:"scaleX(1)"}}),dz=Ze(function(t,n){const r=vme(),i={...r,...t},o=Yi("Checkbox",i),a=fr(t),{spacing:s="0.5rem",className:l,children:u,iconColor:d,iconSize:h,icon:m=g.jsx(xme,{}),isChecked:y,isDisabled:b=r==null?void 0:r.isDisabled,onChange:w,inputProps:E,..._}=a;let k=y;r!=null&&r.value&&a.value&&(k=r.value.includes(a.value));let T=w;r!=null&&r.onChange&&a.value&&(T=Sw(r.onChange,w));const{state:L,getInputProps:O,getCheckboxProps:D,getLabelProps:I,getRootProps:N}=cz({..._,isDisabled:b,isChecked:k,onChange:T}),W=S.useMemo(()=>({animation:L.isIndeterminate?`${Fme} 20ms linear, ${Bme} 200ms linear`:`${$me} 200ms linear`,fontSize:h,color:d,...o.icon}),[d,h,,L.isIndeterminate,o.icon]),B=S.cloneElement(m,{__css:W,isIndeterminate:L.isIndeterminate,isChecked:L.isChecked});return g.jsxs(Ne.label,{__css:{...Nme,...o.container},className:xt("chakra-checkbox",l),...N(),children:[g.jsx("input",{className:"chakra-checkbox__input",...O(E,n)}),g.jsx(Ne.span,{__css:{...jme,...o.control},className:"chakra-checkbox__control",...D(),children:B}),u&&g.jsx(Ne.span,{className:"chakra-checkbox__label",...I(),__css:{marginStart:s,...o.label},children:u})]})});dz.displayName="Checkbox";function zme(e){const t=parseFloat(e);return typeof t!="number"||Number.isNaN(t)?0:t}function g8(e,t){let n=zme(e);const r=10**(t??10);return n=Math.round(n*r)/r,t?n.toFixed(t):n.toString()}function V_(e){if(!Number.isFinite(e))return 0;let t=1,n=0;for(;Math.round(e*t)/t!==e;)t*=10,n+=1;return n}function GA(e,t,n){return(e-t)*100/(n-t)}function Hme(e,t,n){return(n-t)*e+t}function qA(e,t,n){const r=Math.round((e-t)/n)*n+t,i=V_(n);return g8(r,i)}function Qx(e,t,n){return e==null?e:(n{var B;return r==null?"":(B=lC(r,o,n))!=null?B:""}),m=typeof i<"u",y=m?i:d,b=fz(dd(y),o),w=n??b,E=S.useCallback(B=>{B!==y&&(m||h(B.toString()),u==null||u(B.toString(),dd(B)))},[u,m,y]),_=S.useCallback(B=>{let K=B;return l&&(K=Qx(K,a,s)),g8(K,w)},[w,l,s,a]),k=S.useCallback((B=o)=>{let K;y===""?K=dd(B):K=dd(y)+B,K=_(K),E(K)},[_,o,E,y]),T=S.useCallback((B=o)=>{let K;y===""?K=dd(-B):K=dd(y)-B,K=_(K),E(K)},[_,o,E,y]),L=S.useCallback(()=>{var B;let K;r==null?K="":K=(B=lC(r,o,n))!=null?B:a,E(K)},[r,n,o,E,a]),O=S.useCallback(B=>{var K;const ne=(K=lC(B,o,w))!=null?K:a;E(ne)},[w,o,E,a]),D=dd(y);return{isOutOfRange:D>s||D{const o=typeof e=="function"?e():e??document;if(!(!n||!o))return o.addEventListener(t,i,r),()=>{o.removeEventListener(t,i,r)}},[t,e,r,i,n]),()=>{const o=typeof e=="function"?e():e??document;o==null||o.removeEventListener(t,i,r)}}function Ume(e){return"current"in e}var hz=()=>typeof window<"u";function Vme(){var e;const t=navigator.userAgentData;return(e=t==null?void 0:t.platform)!=null?e:navigator.platform}var Gme=e=>hz()&&e.test(navigator.vendor),qme=e=>hz()&&e.test(Vme()),Kme=()=>qme(/mac|iphone|ipad|ipod/i),Yme=()=>Kme()&&Gme(/apple/i);function Xme(e){const{ref:t,elements:n,enabled:r}=e,i=()=>{var o,a;return(a=(o=t.current)==null?void 0:o.ownerDocument)!=null?a:document};Dh(i,"pointerdown",o=>{if(!Yme()||!r)return;const a=o.target,l=(n??[t]).some(u=>{const d=Ume(u)?u.current:u;return(d==null?void 0:d.contains(a))||d===a});i().activeElement!==a&&l&&(o.preventDefault(),a.focus())})}function m8(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,o;for(o=0;o=0)&&(n[i]=e[i]);return n}var An={},Zme={get exports(){return An},set exports(e){An=e}},Qme="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",Jme=Qme,e0e=Jme;function pz(){}function gz(){}gz.resetWarningCache=pz;var t0e=function(){function e(r,i,o,a,s,l){if(l!==e0e){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:gz,resetWarningCache:pz};return n.PropTypes=n,n};Zme.exports=t0e();var G_="data-focus-lock",mz="data-focus-lock-disabled",n0e="data-no-focus-lock",r0e="data-autofocus-inside",i0e="data-no-autofocus";function o0e(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function a0e(e,t){var n=S.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var i=n.value;i!==r&&(n.value=r,n.callback(r,i))}}}})[0];return n.callback=t,n.facade}function vz(e,t){return a0e(t||null,function(n){return e.forEach(function(r){return o0e(r,n)})})}var uC={width:"1px",height:"0px",padding:0,overflow:"hidden",position:"fixed",top:"1px",left:"1px"};function yz(e){return e}function bz(e,t){t===void 0&&(t=yz);var n=[],r=!1,i={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(o){var a=t(o,r);return n.push(a),function(){n=n.filter(function(s){return s!==a})}},assignSyncMedium:function(o){for(r=!0;n.length;){var a=n;n=[],a.forEach(o)}n={push:function(s){return o(s)},filter:function(){return n}}},assignMedium:function(o){r=!0;var a=[];if(n.length){var s=n;n=[],s.forEach(o),a=n}var l=function(){var d=a;a=[],d.forEach(o)},u=function(){return Promise.resolve().then(l)};u(),n={push:function(d){a.push(d),u()},filter:function(d){return a=a.filter(d),n}}}};return i}function v8(e,t){return t===void 0&&(t=yz),bz(e,t)}function xz(e){e===void 0&&(e={});var t=bz(null);return t.options=Nl({async:!0,ssr:!1},e),t}var Sz=function(e){var t=e.sideCar,n=YB(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return S.createElement(r,Nl({},n))};Sz.isSideCarExport=!0;function s0e(e,t){return e.useMedium(t),Sz}var wz=v8({},function(e){var t=e.target,n=e.currentTarget;return{target:t,currentTarget:n}}),Cz=v8(),l0e=v8(),u0e=xz({async:!0}),c0e=[],y8=S.forwardRef(function(t,n){var r,i=S.useState(),o=i[0],a=i[1],s=S.useRef(),l=S.useRef(!1),u=S.useRef(null),d=t.children,h=t.disabled,m=t.noFocusGuards,y=t.persistentFocus,b=t.crossFrame,w=t.autoFocus;t.allowTextSelection;var E=t.group,_=t.className,k=t.whiteList,T=t.hasPositiveIndices,L=t.shards,O=L===void 0?c0e:L,D=t.as,I=D===void 0?"div":D,N=t.lockProps,W=N===void 0?{}:N,B=t.sideCar,K=t.returnFocus,ne=t.focusOptions,z=t.onActivation,$=t.onDeactivation,V=S.useState({}),X=V[0],Q=S.useCallback(function(){u.current=u.current||document&&document.activeElement,s.current&&z&&z(s.current),l.current=!0},[z]),G=S.useCallback(function(){l.current=!1,$&&$(s.current)},[$]);S.useEffect(function(){h||(u.current=null)},[]);var Y=S.useCallback(function(Qe){var Xe=u.current;if(Xe&&Xe.focus){var tt=typeof K=="function"?K(Xe):K;if(tt){var yt=typeof tt=="object"?tt:void 0;u.current=null,Qe?Promise.resolve().then(function(){return Xe.focus(yt)}):Xe.focus(yt)}}},[K]),ee=S.useCallback(function(Qe){l.current&&wz.useMedium(Qe)},[]),fe=Cz.useMedium,Ce=S.useCallback(function(Qe){s.current!==Qe&&(s.current=Qe,a(Qe))},[]),we=pn((r={},r[mz]=h&&"disabled",r[G_]=E,r),W),xe=m!==!0,Le=xe&&m!=="tail",Se=vz([n,Ce]);return S.createElement(S.Fragment,null,xe&&[S.createElement("div",{key:"guard-first","data-focus-guard":!0,tabIndex:h?-1:0,style:uC}),T?S.createElement("div",{key:"guard-nearest","data-focus-guard":!0,tabIndex:h?-1:1,style:uC}):null],!h&&S.createElement(B,{id:X,sideCar:u0e,observed:o,disabled:h,persistentFocus:y,crossFrame:b,autoFocus:w,whiteList:k,shards:O,onActivation:Q,onDeactivation:G,returnFocus:Y,focusOptions:ne}),S.createElement(I,pn({ref:Se},we,{className:_,onBlur:fe,onFocus:ee}),d),Le&&S.createElement("div",{"data-focus-guard":!0,tabIndex:h?-1:0,style:uC}))});y8.propTypes={};y8.defaultProps={children:void 0,disabled:!1,returnFocus:!1,focusOptions:void 0,noFocusGuards:!1,autoFocus:!0,persistentFocus:!1,crossFrame:!0,hasPositiveIndices:void 0,allowTextSelection:void 0,group:void 0,className:void 0,whiteList:void 0,shards:void 0,as:"div",lockProps:{},onActivation:void 0,onDeactivation:void 0};const _z=y8;function s3(e,t){return s3=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,i){return r.__proto__=i,r},s3(e,t)}function b8(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,s3(e,t)}function Ks(e){return Ks=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ks(e)}function d0e(e,t){if(Ks(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(Ks(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function kz(e){var t=d0e(e,"string");return Ks(t)==="symbol"?t:String(t)}function fs(e,t,n){return t=kz(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function f0e(e,t){function n(r){return r.displayName||r.name||"Component"}return function(i){var o=[],a;function s(){a=e(o.map(function(u){return u.props})),t(a)}var l=function(u){b8(d,u);function d(){return u.apply(this,arguments)||this}d.peek=function(){return a};var h=d.prototype;return h.componentDidMount=function(){o.push(this),s()},h.componentDidUpdate=function(){s()},h.componentWillUnmount=function(){var y=o.indexOf(this);o.splice(y,1),s()},h.render=function(){return Ke.createElement(i,this.props)},d}(S.PureComponent);return fs(l,"displayName","SideEffect("+n(i)+")"),l}}var lu=function(e){for(var t=Array(e.length),n=0;n=0}).sort(x0e)},S0e=["button:enabled","select:enabled","textarea:enabled","input:enabled","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[tabindex]","[contenteditable]","[autofocus]"],S8=S0e.join(","),w0e="".concat(S8,", [data-focus-guard]"),Dz=function(e,t){return lu((e.shadowRoot||e).children).reduce(function(n,r){return n.concat(r.matches(t?w0e:S8)?[r]:[],Dz(r))},[])},C0e=function(e,t){var n;return e instanceof HTMLIFrameElement&&(!((n=e.contentDocument)===null||n===void 0)&&n.body)?Nw([e.contentDocument.body],t):[e]},Nw=function(e,t){return e.reduce(function(n,r){var i,o=Dz(r,t),a=(i=[]).concat.apply(i,o.map(function(s){return C0e(s,t)}));return n.concat(a,r.parentNode?lu(r.parentNode.querySelectorAll(S8)).filter(function(s){return s===r}):[])},[])},_0e=function(e){var t=e.querySelectorAll("[".concat(r0e,"]"));return lu(t).map(function(n){return Nw([n])}).reduce(function(n,r){return n.concat(r)},[])},w8=function(e,t){return lu(e).filter(function(n){return Mz(t,n)}).filter(function(n){return v0e(n)})},KA=function(e,t){return t===void 0&&(t=new Map),lu(e).filter(function(n){return Lz(t,n)})},q_=function(e,t,n){return Iz(w8(Nw(e,n),t),!0,n)},YA=function(e,t){return Iz(w8(Nw(e),t),!1)},k0e=function(e,t){return w8(_0e(e),t)},_m=function(e,t){return e.shadowRoot?_m(e.shadowRoot,t):Object.getPrototypeOf(e).contains!==void 0&&Object.getPrototypeOf(e).contains.call(e,t)?!0:lu(e.children).some(function(n){var r;if(n instanceof HTMLIFrameElement){var i=(r=n.contentDocument)===null||r===void 0?void 0:r.body;return i?_m(i,t):!1}return _m(n,t)})},E0e=function(e){for(var t=new Set,n=e.length,r=0;r0&&t.add(i),(o&Node.DOCUMENT_POSITION_CONTAINS)>0&&t.add(r)}return e.filter(function(a,s){return!t.has(s)})},jz=function(e){return e.parentNode?jz(e.parentNode):e},C8=function(e){var t=l3(e);return t.filter(Boolean).reduce(function(n,r){var i=r.getAttribute(G_);return n.push.apply(n,i?E0e(lu(jz(r).querySelectorAll("[".concat(G_,'="').concat(i,'"]:not([').concat(mz,'="disabled"])')))):[r]),n},[])},P0e=function(e){try{return e()}catch{return}},Ty=function(e){if(e===void 0&&(e=document),!(!e||!e.activeElement)){var t=e.activeElement;return t.shadowRoot?Ty(t.shadowRoot):t instanceof HTMLIFrameElement&&P0e(function(){return t.contentWindow.document})?Ty(t.contentWindow.document):t}},T0e=function(e,t){return e===t},M0e=function(e,t){return Boolean(lu(e.querySelectorAll("iframe")).some(function(n){return T0e(n,t)}))},Nz=function(e,t){return t===void 0&&(t=Ty(Ez(e).ownerDocument)),!t||t.dataset&&t.dataset.focusGuard?!1:C8(e).some(function(n){return _m(n,t)||M0e(n,t)})},L0e=function(e){e===void 0&&(e=document);var t=Ty(e);return t?lu(e.querySelectorAll("[".concat(n0e,"]"))).some(function(n){return _m(n,t)}):!1},A0e=function(e,t){return t.filter(Rz).filter(function(n){return n.name===e.name}).filter(function(n){return n.checked})[0]||e},_8=function(e,t){return Rz(e)&&e.name?A0e(e,t):e},O0e=function(e){var t=new Set;return e.forEach(function(n){return t.add(_8(n,e))}),e.filter(function(n){return t.has(n)})},XA=function(e){return e[0]&&e.length>1?_8(e[0],e):e[0]},ZA=function(e,t){return e.length>1?e.indexOf(_8(e[t],e)):t},$z="NEW_FOCUS",R0e=function(e,t,n,r){var i=e.length,o=e[0],a=e[i-1],s=x8(n);if(!(n&&e.indexOf(n)>=0)){var l=n!==void 0?t.indexOf(n):-1,u=r?t.indexOf(r):l,d=r?e.indexOf(r):-1,h=l-u,m=t.indexOf(o),y=t.indexOf(a),b=O0e(t),w=n!==void 0?b.indexOf(n):-1,E=w-(r?b.indexOf(r):l),_=ZA(e,0),k=ZA(e,i-1);if(l===-1||d===-1)return $z;if(!h&&d>=0)return d;if(l<=m&&s&&Math.abs(h)>1)return k;if(l>=y&&s&&Math.abs(h)>1)return _;if(h&&Math.abs(E)>1)return d;if(l<=m)return k;if(l>y)return _;if(h)return Math.abs(h)>1?d:(i+d+h)%i}},I0e=function(e){return function(t){var n,r=(n=Az(t))===null||n===void 0?void 0:n.autofocus;return t.autofocus||r!==void 0&&r!=="false"||e.indexOf(t)>=0}},D0e=function(e,t,n){var r=e.map(function(o){var a=o.node;return a}),i=KA(r.filter(I0e(n)));return i&&i.length?XA(i):XA(KA(t))},K_=function(e,t){return t===void 0&&(t=[]),t.push(e),e.parentNode&&K_(e.parentNode.host||e.parentNode,t),t},cC=function(e,t){for(var n=K_(e),r=K_(t),i=0;i=0)return o}return!1},Fz=function(e,t,n){var r=l3(e),i=l3(t),o=r[0],a=!1;return i.filter(Boolean).forEach(function(s){a=cC(a||s,s)||a,n.filter(Boolean).forEach(function(l){var u=cC(o,l);u&&(!a||_m(u,a)?a=u:a=cC(u,a))})}),a},j0e=function(e,t){return e.reduce(function(n,r){return n.concat(k0e(r,t))},[])},N0e=function(e,t){var n=new Map;return t.forEach(function(r){return n.set(r.node,r)}),e.map(function(r){return n.get(r)}).filter(b0e)},$0e=function(e,t){var n=Ty(l3(e).length>0?document:Ez(e).ownerDocument),r=C8(e).filter(u3),i=Fz(n||e,e,r),o=new Map,a=YA(r,o),s=q_(r,o).filter(function(y){var b=y.node;return u3(b)});if(!(!s[0]&&(s=a,!s[0]))){var l=YA([i],o).map(function(y){var b=y.node;return b}),u=N0e(l,s),d=u.map(function(y){var b=y.node;return b}),h=R0e(d,l,n,t);if(h===$z){var m=D0e(a,d,j0e(r,o));if(m)return{node:m};console.warn("focus-lock: cannot find any node to move focus into");return}return h===void 0?h:u[h]}},F0e=function(e){var t=C8(e).filter(u3),n=Fz(e,e,t),r=new Map,i=q_([n],r,!0),o=q_(t,r).filter(function(a){var s=a.node;return u3(s)}).map(function(a){var s=a.node;return s});return i.map(function(a){var s=a.node,l=a.index;return{node:s,index:l,lockItem:o.indexOf(s)>=0,guard:x8(s)}})},B0e=function(e,t){"focus"in e&&e.focus(t),"contentWindow"in e&&e.contentWindow&&e.contentWindow.focus()},dC=0,fC=!1,Bz=function(e,t,n){n===void 0&&(n={});var r=$0e(e,t);if(!fC&&r){if(dC>2){console.error("FocusLock: focus-fighting detected. Only one focus management system could be active. See https://github.com/theKashey/focus-lock/#focus-fighting"),fC=!0,setTimeout(function(){fC=!1},1);return}dC++,B0e(r.node,n.focusOptions),dC--}};function zz(e){var t=window,n=t.setImmediate;typeof n<"u"?n(e):setTimeout(e,1)}var z0e=function(){return document&&document.activeElement===document.body},H0e=function(){return z0e()||L0e()},km=null,am=null,Em=null,My=!1,W0e=function(){return!0},U0e=function(t){return(km.whiteList||W0e)(t)},V0e=function(t,n){Em={observerNode:t,portaledElement:n}},G0e=function(t){return Em&&Em.portaledElement===t};function QA(e,t,n,r){var i=null,o=e;do{var a=r[o];if(a.guard)a.node.dataset.focusAutoGuard&&(i=a);else if(a.lockItem){if(o!==e)return;i=null}else break}while((o+=n)!==t);i&&(i.node.tabIndex=0)}var q0e=function(t){return t&&"current"in t?t.current:t},K0e=function(t){return t?Boolean(My):My==="meanwhile"},Y0e=function e(t,n,r){return n&&(n.host===t&&(!n.activeElement||r.contains(n.activeElement))||n.parentNode&&e(t,n.parentNode,r))},X0e=function(t,n){return n.some(function(r){return Y0e(t,r,r)})},c3=function(){var t=!1;if(km){var n=km,r=n.observed,i=n.persistentFocus,o=n.autoFocus,a=n.shards,s=n.crossFrame,l=n.focusOptions,u=r||Em&&Em.portaledElement,d=document&&document.activeElement;if(u){var h=[u].concat(a.map(q0e).filter(Boolean));if((!d||U0e(d))&&(i||K0e(s)||!H0e()||!am&&o)&&(u&&!(Nz(h)||d&&X0e(d,h)||G0e(d))&&(document&&!am&&d&&!o?(d.blur&&d.blur(),document.body.focus()):(t=Bz(h,am,{focusOptions:l}),Em={})),My=!1,am=document&&document.activeElement),document){var m=document&&document.activeElement,y=F0e(h),b=y.map(function(w){var E=w.node;return E}).indexOf(m);b>-1&&(y.filter(function(w){var E=w.guard,_=w.node;return E&&_.dataset.focusAutoGuard}).forEach(function(w){var E=w.node;return E.removeAttribute("tabIndex")}),QA(b,y.length,1,y),QA(b,-1,-1,y))}}}return t},Hz=function(t){c3()&&t&&(t.stopPropagation(),t.preventDefault())},k8=function(){return zz(c3)},Z0e=function(t){var n=t.target,r=t.currentTarget;r.contains(n)||V0e(r,n)},Q0e=function(){return null},Wz=function(){My="just",setTimeout(function(){My="meanwhile"},0)},J0e=function(){document.addEventListener("focusin",Hz),document.addEventListener("focusout",k8),window.addEventListener("blur",Wz)},eve=function(){document.removeEventListener("focusin",Hz),document.removeEventListener("focusout",k8),window.removeEventListener("blur",Wz)};function tve(e){return e.filter(function(t){var n=t.disabled;return!n})}function nve(e){var t=e.slice(-1)[0];t&&!km&&J0e();var n=km,r=n&&t&&t.id===n.id;km=t,n&&!r&&(n.onDeactivation(),e.filter(function(i){var o=i.id;return o===n.id}).length||n.returnFocus(!t)),t?(am=null,(!r||n.observed!==t.observed)&&t.onActivation(),c3(),zz(c3)):(eve(),am=null)}wz.assignSyncMedium(Z0e);Cz.assignMedium(k8);l0e.assignMedium(function(e){return e({moveFocusInside:Bz,focusInside:Nz})});const rve=f0e(tve,nve)(Q0e);var Uz=S.forwardRef(function(t,n){return S.createElement(_z,pn({sideCar:rve,ref:n},t))}),Vz=_z.propTypes||{};Vz.sideCar;m8(Vz,["sideCar"]);Uz.propTypes={};const JA=Uz;function Gz(e){return e!=null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function qz(e){var t;if(!Gz(e))return!1;const n=(t=e.ownerDocument.defaultView)!=null?t:window;return e instanceof n.HTMLElement}function ive(e){var t,n;return(n=(t=Kz(e))==null?void 0:t.defaultView)!=null?n:window}function Kz(e){return Gz(e)?e.ownerDocument:document}function ove(e){return Kz(e).activeElement}var Yz=e=>e.hasAttribute("tabindex"),ave=e=>Yz(e)&&e.tabIndex===-1;function sve(e){return Boolean(e.getAttribute("disabled"))===!0||Boolean(e.getAttribute("aria-disabled"))===!0}function Xz(e){return e.parentElement&&Xz(e.parentElement)?!0:e.hidden}function lve(e){const t=e.getAttribute("contenteditable");return t!=="false"&&t!=null}function Zz(e){if(!qz(e)||Xz(e)||sve(e))return!1;const{localName:t}=e;if(["input","select","textarea","button"].indexOf(t)>=0)return!0;const r={a:()=>e.hasAttribute("href"),audio:()=>e.hasAttribute("controls"),video:()=>e.hasAttribute("controls")};return t in r?r[t]():lve(e)?!0:Yz(e)}function uve(e){return e?qz(e)&&Zz(e)&&!ave(e):!1}var cve=["input:not(:disabled):not([disabled])","select:not(:disabled):not([disabled])","textarea:not(:disabled):not([disabled])","embed","iframe","object","a[href]","area[href]","button:not(:disabled):not([disabled])","[tabindex]","audio[controls]","video[controls]","*[tabindex]:not([aria-disabled])","*[contenteditable]"],dve=cve.join(),fve=e=>e.offsetWidth>0&&e.offsetHeight>0;function Qz(e){const t=Array.from(e.querySelectorAll(dve));return t.unshift(e),t.filter(n=>Zz(n)&&fve(n))}var eO,hve=(eO=JA.default)!=null?eO:JA,Jz=e=>{const{initialFocusRef:t,finalFocusRef:n,contentRef:r,restoreFocus:i,children:o,isDisabled:a,autoFocus:s,persistentFocus:l,lockFocusAcrossFrames:u}=e,d=S.useCallback(()=>{t!=null&&t.current?t.current.focus():r!=null&&r.current&&Qz(r.current).length===0&&requestAnimationFrame(()=>{var b;(b=r.current)==null||b.focus()})},[t,r]),h=S.useCallback(()=>{var y;(y=n==null?void 0:n.current)==null||y.focus()},[n]),m=i&&!n;return g.jsx(hve,{crossFrame:u,persistentFocus:l,autoFocus:s,disabled:a,onActivation:d,onDeactivation:h,returnFocus:m,children:o})};Jz.displayName="FocusLock";var pve=fce?S.useLayoutEffect:S.useEffect;function tO(e,t=[]){const n=S.useRef(e);return pve(()=>{n.current=e}),S.useCallback((...r)=>{var i;return(i=n.current)==null?void 0:i.call(n,...r)},t)}function gve(e,t){const n=S.useId();return S.useMemo(()=>e||[t,n].filter(Boolean).join("-"),[e,t,n])}function mve(e,t){const n=e!==void 0;return[n,n&&typeof e<"u"?e:t]}function Kd(e={}){const{onClose:t,onOpen:n,isOpen:r,id:i}=e,o=tO(n),a=tO(t),[s,l]=S.useState(e.defaultIsOpen||!1),[u,d]=mve(r,s),h=gve(i,"disclosure"),m=S.useCallback(()=>{u||l(!1),a==null||a()},[u,a]),y=S.useCallback(()=>{u||l(!0),o==null||o()},[u,o]),b=S.useCallback(()=>{(d?m:y)()},[d,y,m]);return{isOpen:!!d,onOpen:y,onClose:m,onToggle:b,isControlled:u,getButtonProps:(w={})=>({...w,"aria-expanded":d,"aria-controls":h,onClick:vce(w.onClick,b)}),getDisclosureProps:(w={})=>({...w,hidden:!d,id:h})}}var E8=Ze(function(t,n){const{htmlSize:r,...i}=t,o=Yi("Input",i),a=fr(i),s=f8(a),l=xt("chakra-input",t.className);return g.jsx(Ne.input,{size:r,...s,__css:o.field,ref:n,className:l})});E8.displayName="Input";E8.id="Input";var[vve,eH]=Pn({name:"ListStylesContext",errorMessage:`useListStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),P8=Ze(function(t,n){const r=Yi("List",t),{children:i,styleType:o="none",stylePosition:a,spacing:s,...l}=fr(t),u=d8(i),h=s?{["& > *:not(style) ~ *:not(style)"]:{mt:s}}:{};return g.jsx(vve,{value:r,children:g.jsx(Ne.ul,{ref:n,listStyleType:o,listStylePosition:a,role:"list",__css:{...r.container,...h},...l,children:u})})});P8.displayName="List";var yve=Ze((e,t)=>{const{as:n,...r}=e;return g.jsx(P8,{ref:t,as:"ol",styleType:"decimal",marginStart:"1em",...r})});yve.displayName="OrderedList";var tH=Ze(function(t,n){const{as:r,...i}=t;return g.jsx(P8,{ref:n,as:"ul",styleType:"initial",marginStart:"1em",...i})});tH.displayName="UnorderedList";var f1=Ze(function(t,n){const r=eH();return g.jsx(Ne.li,{ref:n,...t,__css:r.item})});f1.displayName="ListItem";var bve=Ze(function(t,n){const r=eH();return g.jsx(ja,{ref:n,role:"presentation",...t,__css:r.icon})});bve.displayName="ListIcon";function nH(e,t){return Array.isArray(e)?e.map(n=>n===null?null:t(n)):ko(e)?Object.keys(e).reduce((n,r)=>(n[r]=t(e[r]),n),{}):e!=null?t(e):null}var rH=Ne("div",{baseStyle:{flex:1,justifySelf:"stretch",alignSelf:"stretch"}});rH.displayName="Spacer";var Dt=Ze(function(t,n){const r=au("Text",t),{className:i,align:o,decoration:a,casing:s,...l}=fr(t),u=Rce({textAlign:t.align,textDecoration:t.decoration,textTransform:t.casing});return g.jsx(Ne.p,{ref:n,className:xt("chakra-text",t.className),...u,...l,__css:r})});Dt.displayName="Text";var iH=e=>g.jsx(Ne.div,{className:"chakra-stack__item",...e,__css:{display:"inline-block",flex:"0 0 auto",minWidth:0,...e.__css}});iH.displayName="StackItem";var Y_="& > *:not(style) ~ *:not(style)";function xve(e){const{spacing:t,direction:n}=e,r={column:{marginTop:t,marginEnd:0,marginBottom:0,marginStart:0},row:{marginTop:0,marginEnd:0,marginBottom:0,marginStart:t},"column-reverse":{marginTop:0,marginEnd:0,marginBottom:t,marginStart:0},"row-reverse":{marginTop:0,marginEnd:t,marginBottom:0,marginStart:0}};return{flexDirection:n,[Y_]:nH(n,i=>r[i])}}function Sve(e){const{spacing:t,direction:n}=e,r={column:{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},"column-reverse":{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},row:{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0},"row-reverse":{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0}};return{"&":nH(n,i=>r[i])}}var T8=Ze((e,t)=>{const{isInline:n,direction:r,align:i,justify:o,spacing:a="0.5rem",wrap:s,children:l,divider:u,className:d,shouldWrapChildren:h,...m}=e,y=n?"row":r??"column",b=S.useMemo(()=>xve({direction:y,spacing:a}),[y,a]),w=S.useMemo(()=>Sve({spacing:a,direction:y}),[a,y]),E=!!u,_=!h&&!E,k=S.useMemo(()=>{const L=d8(l);return _?L:L.map((O,D)=>{const I=typeof O.key<"u"?O.key:D,N=D+1===L.length,B=h?g.jsx(iH,{children:O},I):O;if(!E)return B;const K=S.cloneElement(u,{__css:w}),ne=N?null:K;return g.jsxs(S.Fragment,{children:[B,ne]},I)})},[u,w,E,_,h,l]),T=xt("chakra-stack",d);return g.jsx(Ne.div,{ref:t,display:"flex",alignItems:i,justifyContent:o,flexDirection:b.flexDirection,flexWrap:s,className:T,__css:E?{}:{[Y_]:b[Y_]},...m,children:k})});T8.displayName="Stack";var hn=Ze((e,t)=>g.jsx(T8,{align:"center",...e,direction:"column",ref:t}));hn.displayName="VStack";var l2=Ze((e,t)=>g.jsx(T8,{align:"center",...e,direction:"row",ref:t}));l2.displayName="HStack";var jh=Ze(function(t,n){const r=au("Heading",t),{className:i,...o}=fr(t);return g.jsx(Ne.h2,{ref:n,className:xt("chakra-heading",t.className),...o,__css:r})});jh.displayName="Heading";var ao=Ne("div");ao.displayName="Box";var oH=Ze(function(t,n){const{size:r,centerContent:i=!0,...o}=t,a=i?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return g.jsx(ao,{ref:n,boxSize:r,__css:{...a,flexShrink:0,flexGrow:0},...o})});oH.displayName="Square";var wve=Ze(function(t,n){const{size:r,...i}=t;return g.jsx(oH,{size:r,ref:n,borderRadius:"9999px",...i})});wve.displayName="Circle";var Nh=Ze(function(t,n){const r=au("Link",t),{className:i,isExternal:o,...a}=fr(t);return g.jsx(Ne.a,{target:o?"_blank":void 0,rel:o?"noopener":void 0,ref:n,className:xt("chakra-link",i),...a,__css:r})});Nh.displayName="Link";var aH=Ne("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center"}});aH.displayName="Center";var Cve={horizontal:{insetStart:"50%",transform:"translateX(-50%)"},vertical:{top:"50%",transform:"translateY(-50%)"},both:{insetStart:"50%",top:"50%",transform:"translate(-50%, -50%)"}};Ze(function(t,n){const{axis:r="both",...i}=t;return g.jsx(Ne.div,{ref:n,__css:Cve[r],...i,position:"absolute"})});var ke=Ze(function(t,n){const{direction:r,align:i,justify:o,wrap:a,basis:s,grow:l,shrink:u,...d}=t,h={display:"flex",flexDirection:r,alignItems:i,justifyContent:o,flexWrap:a,flexBasis:s,flexGrow:l,flexShrink:u};return g.jsx(Ne.div,{ref:n,__css:h,...d})});ke.displayName="Flex";function _ve(e){const{key:t}=e;return t.length===1||t.length>1&&/[^a-zA-Z0-9]/.test(t)}function kve(e={}){const{timeout:t=300,preventDefault:n=()=>!0}=e,[r,i]=S.useState([]),o=S.useRef(),a=()=>{o.current&&(clearTimeout(o.current),o.current=null)},s=()=>{a(),o.current=setTimeout(()=>{i([]),o.current=null},t)};S.useEffect(()=>a,[]);function l(u){return d=>{if(d.key==="Backspace"){const h=[...r];h.pop(),i(h);return}if(_ve(d)){const h=r.concat(d.key);n(d)&&(d.preventDefault(),d.stopPropagation()),i(h),u(h.join("")),s()}}}return l}function Eve(e,t,n,r){if(t==null)return r;if(!r)return e.find(a=>n(a).toLowerCase().startsWith(t.toLowerCase()));const i=e.filter(o=>n(o).toLowerCase().startsWith(t.toLowerCase()));if(i.length>0){let o;return i.includes(r)?(o=i.indexOf(r)+1,o===i.length&&(o=0),i[o]):(o=e.indexOf(i[0]),e[o])}return r}function Pve(){const e=S.useRef(new Map),t=e.current,n=S.useCallback((i,o,a,s)=>{e.current.set(a,{type:o,el:i,options:s}),i.addEventListener(o,a,s)},[]),r=S.useCallback((i,o,a,s)=>{i.removeEventListener(o,a,s),e.current.delete(a)},[]);return S.useEffect(()=>()=>{t.forEach((i,o)=>{r(i.el,i.type,o,i.options)})},[r,t]),{add:n,remove:r}}function hC(e){const t=e.target,{tagName:n,isContentEditable:r}=t;return n!=="INPUT"&&n!=="TEXTAREA"&&r!==!0}function sH(e={}){const{ref:t,isDisabled:n,isFocusable:r,clickOnEnter:i=!0,clickOnSpace:o=!0,onMouseDown:a,onMouseUp:s,onClick:l,onKeyDown:u,onKeyUp:d,tabIndex:h,onMouseOver:m,onMouseLeave:y,...b}=e,[w,E]=S.useState(!0),[_,k]=S.useState(!1),T=Pve(),L=Q=>{Q&&Q.tagName!=="BUTTON"&&E(!1)},O=w?h:h||0,D=n&&!r,I=S.useCallback(Q=>{if(n){Q.stopPropagation(),Q.preventDefault();return}Q.currentTarget.focus(),l==null||l(Q)},[n,l]),N=S.useCallback(Q=>{_&&hC(Q)&&(Q.preventDefault(),Q.stopPropagation(),k(!1),T.remove(document,"keyup",N,!1))},[_,T]),W=S.useCallback(Q=>{if(u==null||u(Q),n||Q.defaultPrevented||Q.metaKey||!hC(Q.nativeEvent)||w)return;const G=i&&Q.key==="Enter";o&&Q.key===" "&&(Q.preventDefault(),k(!0)),G&&(Q.preventDefault(),Q.currentTarget.click()),T.add(document,"keyup",N,!1)},[n,w,u,i,o,T,N]),B=S.useCallback(Q=>{if(d==null||d(Q),n||Q.defaultPrevented||Q.metaKey||!hC(Q.nativeEvent)||w)return;o&&Q.key===" "&&(Q.preventDefault(),k(!1),Q.currentTarget.click())},[o,w,n,d]),K=S.useCallback(Q=>{Q.button===0&&(k(!1),T.remove(document,"mouseup",K,!1))},[T]),ne=S.useCallback(Q=>{if(Q.button!==0)return;if(n){Q.stopPropagation(),Q.preventDefault();return}w||k(!0),Q.currentTarget.focus({preventScroll:!0}),T.add(document,"mouseup",K,!1),a==null||a(Q)},[n,w,a,T,K]),z=S.useCallback(Q=>{Q.button===0&&(w||k(!1),s==null||s(Q))},[s,w]),$=S.useCallback(Q=>{if(n){Q.preventDefault();return}m==null||m(Q)},[n,m]),V=S.useCallback(Q=>{_&&(Q.preventDefault(),k(!1)),y==null||y(Q)},[_,y]),X=Rn(t,L);return w?{...b,ref:X,type:"button","aria-disabled":D?void 0:n,disabled:D,onClick:I,onMouseDown:a,onMouseUp:s,onKeyUp:d,onKeyDown:u,onMouseOver:m,onMouseLeave:y}:{...b,ref:X,role:"button","data-active":Bt(_),"aria-disabled":n?"true":void 0,tabIndex:D?void 0:O,onClick:I,onMouseDown:ne,onMouseUp:z,onKeyUp:B,onKeyDown:W,onMouseOver:$,onMouseLeave:V}}function Tve(e){const t=e.current;if(!t)return!1;const n=ove(t);return!n||t.contains(n)?!1:!!uve(n)}function lH(e,t){const{shouldFocus:n,visible:r,focusRef:i}=t,o=n&&!r;rc(()=>{if(!o||Tve(e))return;const a=(i==null?void 0:i.current)||e.current;a&&requestAnimationFrame(()=>{a.focus()})},[o,e,i])}var Mve={preventScroll:!0,shouldFocus:!1};function Lve(e,t=Mve){const{focusRef:n,preventScroll:r,shouldFocus:i,visible:o}=t,a=Ave(e)?e.current:e,s=i&&o,l=S.useRef(s),u=S.useRef(o);Vl(()=>{!u.current&&o&&(l.current=s),u.current=o},[o,s]);const d=S.useCallback(()=>{if(!(!o||!a||!l.current)&&(l.current=!1,!a.contains(document.activeElement)))if(n!=null&&n.current)requestAnimationFrame(()=>{var h;(h=n.current)==null||h.focus({preventScroll:r})});else{const h=Qz(a);h.length>0&&requestAnimationFrame(()=>{h[0].focus({preventScroll:r})})}},[o,r,a,n]);rc(()=>{d()},[d]),Dh(a,"transitionend",d)}function Ave(e){return"current"in e}var Sg=(e,t)=>({var:e,varRef:t?`var(${e}, ${t})`:`var(${e})`}),ii={arrowShadowColor:Sg("--popper-arrow-shadow-color"),arrowSize:Sg("--popper-arrow-size","8px"),arrowSizeHalf:Sg("--popper-arrow-size-half"),arrowBg:Sg("--popper-arrow-bg"),transformOrigin:Sg("--popper-transform-origin"),arrowOffset:Sg("--popper-arrow-offset")};function Ove(e){if(e.includes("top"))return"1px 1px 1px 0 var(--popper-arrow-shadow-color)";if(e.includes("bottom"))return"-1px -1px 1px 0 var(--popper-arrow-shadow-color)";if(e.includes("right"))return"-1px 1px 1px 0 var(--popper-arrow-shadow-color)";if(e.includes("left"))return"1px -1px 1px 0 var(--popper-arrow-shadow-color)"}var Rve={top:"bottom center","top-start":"bottom left","top-end":"bottom right",bottom:"top center","bottom-start":"top left","bottom-end":"top right",left:"right center","left-start":"right top","left-end":"right bottom",right:"left center","right-start":"left top","right-end":"left bottom"},Ive=e=>Rve[e],nO={scroll:!0,resize:!0};function Dve(e){let t;return typeof e=="object"?t={enabled:!0,options:{...nO,...e}}:t={enabled:e,options:nO},t}var jve={name:"matchWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:({state:e})=>{e.styles.popper.width=`${e.rects.reference.width}px`},effect:({state:e})=>()=>{const t=e.elements.reference;e.elements.popper.style.width=`${t.offsetWidth}px`}},Nve={name:"transformOrigin",enabled:!0,phase:"write",fn:({state:e})=>{rO(e)},effect:({state:e})=>()=>{rO(e)}},rO=e=>{e.elements.popper.style.setProperty(ii.transformOrigin.var,Ive(e.placement))},$ve={name:"positionArrow",enabled:!0,phase:"afterWrite",fn:({state:e})=>{Fve(e)}},Fve=e=>{var t;if(!e.placement)return;const n=Bve(e.placement);if((t=e.elements)!=null&&t.arrow&&n){Object.assign(e.elements.arrow.style,{[n.property]:n.value,width:ii.arrowSize.varRef,height:ii.arrowSize.varRef,zIndex:-1});const r={[ii.arrowSizeHalf.var]:`calc(${ii.arrowSize.varRef} / 2)`,[ii.arrowOffset.var]:`calc(${ii.arrowSizeHalf.varRef} * -1)`};for(const i in r)e.elements.arrow.style.setProperty(i,r[i])}},Bve=e=>{if(e.startsWith("top"))return{property:"bottom",value:ii.arrowOffset.varRef};if(e.startsWith("bottom"))return{property:"top",value:ii.arrowOffset.varRef};if(e.startsWith("left"))return{property:"right",value:ii.arrowOffset.varRef};if(e.startsWith("right"))return{property:"left",value:ii.arrowOffset.varRef}},zve={name:"innerArrow",enabled:!0,phase:"main",requires:["arrow"],fn:({state:e})=>{iO(e)},effect:({state:e})=>()=>{iO(e)}},iO=e=>{if(!e.elements.arrow)return;const t=e.elements.arrow.querySelector("[data-popper-arrow-inner]");if(!t)return;const n=Ove(e.placement);n&&t.style.setProperty("--popper-arrow-default-shadow",n),Object.assign(t.style,{transform:"rotate(45deg)",background:ii.arrowBg.varRef,top:0,left:0,width:"100%",height:"100%",position:"absolute",zIndex:"inherit",boxShadow:"var(--popper-arrow-shadow, var(--popper-arrow-default-shadow))"})},Hve={"start-start":{ltr:"left-start",rtl:"right-start"},"start-end":{ltr:"left-end",rtl:"right-end"},"end-start":{ltr:"right-start",rtl:"left-start"},"end-end":{ltr:"right-end",rtl:"left-end"},start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}},Wve={"auto-start":"auto-end","auto-end":"auto-start","top-start":"top-end","top-end":"top-start","bottom-start":"bottom-end","bottom-end":"bottom-start"};function Uve(e,t="ltr"){var n,r;const i=((n=Hve[e])==null?void 0:n[t])||e;return t==="ltr"?i:(r=Wve[e])!=null?r:i}var Zo="top",us="bottom",cs="right",Qo="left",M8="auto",u2=[Zo,us,cs,Qo],qm="start",Ly="end",Vve="clippingParents",uH="viewport",Uv="popper",Gve="reference",oO=u2.reduce(function(e,t){return e.concat([t+"-"+qm,t+"-"+Ly])},[]),cH=[].concat(u2,[M8]).reduce(function(e,t){return e.concat([t,t+"-"+qm,t+"-"+Ly])},[]),qve="beforeRead",Kve="read",Yve="afterRead",Xve="beforeMain",Zve="main",Qve="afterMain",Jve="beforeWrite",e1e="write",t1e="afterWrite",n1e=[qve,Kve,Yve,Xve,Zve,Qve,Jve,e1e,t1e];function nu(e){return e?(e.nodeName||"").toLowerCase():null}function hs(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Kh(e){var t=hs(e).Element;return e instanceof t||e instanceof Element}function is(e){var t=hs(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function L8(e){if(typeof ShadowRoot>"u")return!1;var t=hs(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function r1e(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},i=t.attributes[n]||{},o=t.elements[n];!is(o)||!nu(o)||(Object.assign(o.style,r),Object.keys(i).forEach(function(a){var s=i[a];s===!1?o.removeAttribute(a):o.setAttribute(a,s===!0?"":s)}))})}function i1e(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var i=t.elements[r],o=t.attributes[r]||{},a=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),s=a.reduce(function(l,u){return l[u]="",l},{});!is(i)||!nu(i)||(Object.assign(i.style,s),Object.keys(o).forEach(function(l){i.removeAttribute(l)}))})}}const o1e={name:"applyStyles",enabled:!0,phase:"write",fn:r1e,effect:i1e,requires:["computeStyles"]};function Zl(e){return e.split("-")[0]}var $h=Math.max,d3=Math.min,Km=Math.round;function X_(){var e=navigator.userAgentData;return e!=null&&e.brands?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function dH(){return!/^((?!chrome|android).)*safari/i.test(X_())}function Ym(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),i=1,o=1;t&&is(e)&&(i=e.offsetWidth>0&&Km(r.width)/e.offsetWidth||1,o=e.offsetHeight>0&&Km(r.height)/e.offsetHeight||1);var a=Kh(e)?hs(e):window,s=a.visualViewport,l=!dH()&&n,u=(r.left+(l&&s?s.offsetLeft:0))/i,d=(r.top+(l&&s?s.offsetTop:0))/o,h=r.width/i,m=r.height/o;return{width:h,height:m,top:d,right:u+h,bottom:d+m,left:u,x:u,y:d}}function A8(e){var t=Ym(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function fH(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&L8(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function ic(e){return hs(e).getComputedStyle(e)}function a1e(e){return["table","td","th"].indexOf(nu(e))>=0}function lf(e){return((Kh(e)?e.ownerDocument:e.document)||window.document).documentElement}function $w(e){return nu(e)==="html"?e:e.assignedSlot||e.parentNode||(L8(e)?e.host:null)||lf(e)}function aO(e){return!is(e)||ic(e).position==="fixed"?null:e.offsetParent}function s1e(e){var t=/firefox/i.test(X_()),n=/Trident/i.test(X_());if(n&&is(e)){var r=ic(e);if(r.position==="fixed")return null}var i=$w(e);for(L8(i)&&(i=i.host);is(i)&&["html","body"].indexOf(nu(i))<0;){var o=ic(i);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||t&&o.willChange==="filter"||t&&o.filter&&o.filter!=="none")return i;i=i.parentNode}return null}function c2(e){for(var t=hs(e),n=aO(e);n&&a1e(n)&&ic(n).position==="static";)n=aO(n);return n&&(nu(n)==="html"||nu(n)==="body"&&ic(n).position==="static")?t:n||s1e(e)||t}function O8(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function W1(e,t,n){return $h(e,d3(t,n))}function l1e(e,t,n){var r=W1(e,t,n);return r>n?n:r}function hH(){return{top:0,right:0,bottom:0,left:0}}function pH(e){return Object.assign({},hH(),e)}function gH(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var u1e=function(t,n){return t=typeof t=="function"?t(Object.assign({},n.rects,{placement:n.placement})):t,pH(typeof t!="number"?t:gH(t,u2))};function c1e(e){var t,n=e.state,r=e.name,i=e.options,o=n.elements.arrow,a=n.modifiersData.popperOffsets,s=Zl(n.placement),l=O8(s),u=[Qo,cs].indexOf(s)>=0,d=u?"height":"width";if(!(!o||!a)){var h=u1e(i.padding,n),m=A8(o),y=l==="y"?Zo:Qo,b=l==="y"?us:cs,w=n.rects.reference[d]+n.rects.reference[l]-a[l]-n.rects.popper[d],E=a[l]-n.rects.reference[l],_=c2(o),k=_?l==="y"?_.clientHeight||0:_.clientWidth||0:0,T=w/2-E/2,L=h[y],O=k-m[d]-h[b],D=k/2-m[d]/2+T,I=W1(L,D,O),N=l;n.modifiersData[r]=(t={},t[N]=I,t.centerOffset=I-D,t)}}function d1e(e){var t=e.state,n=e.options,r=n.element,i=r===void 0?"[data-popper-arrow]":r;i!=null&&(typeof i=="string"&&(i=t.elements.popper.querySelector(i),!i)||fH(t.elements.popper,i)&&(t.elements.arrow=i))}const f1e={name:"arrow",enabled:!0,phase:"main",fn:c1e,effect:d1e,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Xm(e){return e.split("-")[1]}var h1e={top:"auto",right:"auto",bottom:"auto",left:"auto"};function p1e(e){var t=e.x,n=e.y,r=window,i=r.devicePixelRatio||1;return{x:Km(t*i)/i||0,y:Km(n*i)/i||0}}function sO(e){var t,n=e.popper,r=e.popperRect,i=e.placement,o=e.variation,a=e.offsets,s=e.position,l=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,h=e.isFixed,m=a.x,y=m===void 0?0:m,b=a.y,w=b===void 0?0:b,E=typeof d=="function"?d({x:y,y:w}):{x:y,y:w};y=E.x,w=E.y;var _=a.hasOwnProperty("x"),k=a.hasOwnProperty("y"),T=Qo,L=Zo,O=window;if(u){var D=c2(n),I="clientHeight",N="clientWidth";if(D===hs(n)&&(D=lf(n),ic(D).position!=="static"&&s==="absolute"&&(I="scrollHeight",N="scrollWidth")),D=D,i===Zo||(i===Qo||i===cs)&&o===Ly){L=us;var W=h&&D===O&&O.visualViewport?O.visualViewport.height:D[I];w-=W-r.height,w*=l?1:-1}if(i===Qo||(i===Zo||i===us)&&o===Ly){T=cs;var B=h&&D===O&&O.visualViewport?O.visualViewport.width:D[N];y-=B-r.width,y*=l?1:-1}}var K=Object.assign({position:s},u&&h1e),ne=d===!0?p1e({x:y,y:w}):{x:y,y:w};if(y=ne.x,w=ne.y,l){var z;return Object.assign({},K,(z={},z[L]=k?"0":"",z[T]=_?"0":"",z.transform=(O.devicePixelRatio||1)<=1?"translate("+y+"px, "+w+"px)":"translate3d("+y+"px, "+w+"px, 0)",z))}return Object.assign({},K,(t={},t[L]=k?w+"px":"",t[T]=_?y+"px":"",t.transform="",t))}function g1e(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=r===void 0?!0:r,o=n.adaptive,a=o===void 0?!0:o,s=n.roundOffsets,l=s===void 0?!0:s,u={placement:Zl(t.placement),variation:Xm(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,sO(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,sO(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const m1e={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:g1e,data:{}};var Vb={passive:!0};function v1e(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,o=i===void 0?!0:i,a=r.resize,s=a===void 0?!0:a,l=hs(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&u.forEach(function(d){d.addEventListener("scroll",n.update,Vb)}),s&&l.addEventListener("resize",n.update,Vb),function(){o&&u.forEach(function(d){d.removeEventListener("scroll",n.update,Vb)}),s&&l.removeEventListener("resize",n.update,Vb)}}const y1e={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:v1e,data:{}};var b1e={left:"right",right:"left",bottom:"top",top:"bottom"};function Jx(e){return e.replace(/left|right|bottom|top/g,function(t){return b1e[t]})}var x1e={start:"end",end:"start"};function lO(e){return e.replace(/start|end/g,function(t){return x1e[t]})}function R8(e){var t=hs(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function I8(e){return Ym(lf(e)).left+R8(e).scrollLeft}function S1e(e,t){var n=hs(e),r=lf(e),i=n.visualViewport,o=r.clientWidth,a=r.clientHeight,s=0,l=0;if(i){o=i.width,a=i.height;var u=dH();(u||!u&&t==="fixed")&&(s=i.offsetLeft,l=i.offsetTop)}return{width:o,height:a,x:s+I8(e),y:l}}function w1e(e){var t,n=lf(e),r=R8(e),i=(t=e.ownerDocument)==null?void 0:t.body,o=$h(n.scrollWidth,n.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=$h(n.scrollHeight,n.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-r.scrollLeft+I8(e),l=-r.scrollTop;return ic(i||n).direction==="rtl"&&(s+=$h(n.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:l}}function D8(e){var t=ic(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function mH(e){return["html","body","#document"].indexOf(nu(e))>=0?e.ownerDocument.body:is(e)&&D8(e)?e:mH($w(e))}function U1(e,t){var n;t===void 0&&(t=[]);var r=mH(e),i=r===((n=e.ownerDocument)==null?void 0:n.body),o=hs(r),a=i?[o].concat(o.visualViewport||[],D8(r)?r:[]):r,s=t.concat(a);return i?s:s.concat(U1($w(a)))}function Z_(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function C1e(e,t){var n=Ym(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function uO(e,t,n){return t===uH?Z_(S1e(e,n)):Kh(t)?C1e(t,n):Z_(w1e(lf(e)))}function _1e(e){var t=U1($w(e)),n=["absolute","fixed"].indexOf(ic(e).position)>=0,r=n&&is(e)?c2(e):e;return Kh(r)?t.filter(function(i){return Kh(i)&&fH(i,r)&&nu(i)!=="body"}):[]}function k1e(e,t,n,r){var i=t==="clippingParents"?_1e(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(l,u){var d=uO(e,u,r);return l.top=$h(d.top,l.top),l.right=d3(d.right,l.right),l.bottom=d3(d.bottom,l.bottom),l.left=$h(d.left,l.left),l},uO(e,a,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function vH(e){var t=e.reference,n=e.element,r=e.placement,i=r?Zl(r):null,o=r?Xm(r):null,a=t.x+t.width/2-n.width/2,s=t.y+t.height/2-n.height/2,l;switch(i){case Zo:l={x:a,y:t.y-n.height};break;case us:l={x:a,y:t.y+t.height};break;case cs:l={x:t.x+t.width,y:s};break;case Qo:l={x:t.x-n.width,y:s};break;default:l={x:t.x,y:t.y}}var u=i?O8(i):null;if(u!=null){var d=u==="y"?"height":"width";switch(o){case qm:l[u]=l[u]-(t[d]/2-n[d]/2);break;case Ly:l[u]=l[u]+(t[d]/2-n[d]/2);break}}return l}function Ay(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=r===void 0?e.placement:r,o=n.strategy,a=o===void 0?e.strategy:o,s=n.boundary,l=s===void 0?Vve:s,u=n.rootBoundary,d=u===void 0?uH:u,h=n.elementContext,m=h===void 0?Uv:h,y=n.altBoundary,b=y===void 0?!1:y,w=n.padding,E=w===void 0?0:w,_=pH(typeof E!="number"?E:gH(E,u2)),k=m===Uv?Gve:Uv,T=e.rects.popper,L=e.elements[b?k:m],O=k1e(Kh(L)?L:L.contextElement||lf(e.elements.popper),l,d,a),D=Ym(e.elements.reference),I=vH({reference:D,element:T,strategy:"absolute",placement:i}),N=Z_(Object.assign({},T,I)),W=m===Uv?N:D,B={top:O.top-W.top+_.top,bottom:W.bottom-O.bottom+_.bottom,left:O.left-W.left+_.left,right:W.right-O.right+_.right},K=e.modifiersData.offset;if(m===Uv&&K){var ne=K[i];Object.keys(B).forEach(function(z){var $=[cs,us].indexOf(z)>=0?1:-1,V=[Zo,us].indexOf(z)>=0?"y":"x";B[z]+=ne[V]*$})}return B}function E1e(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=n.boundary,o=n.rootBoundary,a=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,u=l===void 0?cH:l,d=Xm(r),h=d?s?oO:oO.filter(function(b){return Xm(b)===d}):u2,m=h.filter(function(b){return u.indexOf(b)>=0});m.length===0&&(m=h);var y=m.reduce(function(b,w){return b[w]=Ay(e,{placement:w,boundary:i,rootBoundary:o,padding:a})[Zl(w)],b},{});return Object.keys(y).sort(function(b,w){return y[b]-y[w]})}function P1e(e){if(Zl(e)===M8)return[];var t=Jx(e);return[lO(e),t,lO(t)]}function T1e(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var i=n.mainAxis,o=i===void 0?!0:i,a=n.altAxis,s=a===void 0?!0:a,l=n.fallbackPlacements,u=n.padding,d=n.boundary,h=n.rootBoundary,m=n.altBoundary,y=n.flipVariations,b=y===void 0?!0:y,w=n.allowedAutoPlacements,E=t.options.placement,_=Zl(E),k=_===E,T=l||(k||!b?[Jx(E)]:P1e(E)),L=[E].concat(T).reduce(function(xe,Le){return xe.concat(Zl(Le)===M8?E1e(t,{placement:Le,boundary:d,rootBoundary:h,padding:u,flipVariations:b,allowedAutoPlacements:w}):Le)},[]),O=t.rects.reference,D=t.rects.popper,I=new Map,N=!0,W=L[0],B=0;B=0,V=$?"width":"height",X=Ay(t,{placement:K,boundary:d,rootBoundary:h,altBoundary:m,padding:u}),Q=$?z?cs:Qo:z?us:Zo;O[V]>D[V]&&(Q=Jx(Q));var G=Jx(Q),Y=[];if(o&&Y.push(X[ne]<=0),s&&Y.push(X[Q]<=0,X[G]<=0),Y.every(function(xe){return xe})){W=K,N=!1;break}I.set(K,Y)}if(N)for(var ee=b?3:1,fe=function(Le){var Se=L.find(function(Qe){var Xe=I.get(Qe);if(Xe)return Xe.slice(0,Le).every(function(tt){return tt})});if(Se)return W=Se,"break"},Ce=ee;Ce>0;Ce--){var we=fe(Ce);if(we==="break")break}t.placement!==W&&(t.modifiersData[r]._skip=!0,t.placement=W,t.reset=!0)}}const M1e={name:"flip",enabled:!0,phase:"main",fn:T1e,requiresIfExists:["offset"],data:{_skip:!1}};function cO(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function dO(e){return[Zo,cs,us,Qo].some(function(t){return e[t]>=0})}function L1e(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=Ay(t,{elementContext:"reference"}),s=Ay(t,{altBoundary:!0}),l=cO(a,r),u=cO(s,i,o),d=dO(l),h=dO(u);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:h},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":h})}const A1e={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:L1e};function O1e(e,t,n){var r=Zl(e),i=[Qo,Zo].indexOf(r)>=0?-1:1,o=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,a=o[0],s=o[1];return a=a||0,s=(s||0)*i,[Qo,cs].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}function R1e(e){var t=e.state,n=e.options,r=e.name,i=n.offset,o=i===void 0?[0,0]:i,a=cH.reduce(function(d,h){return d[h]=O1e(h,t.rects,o),d},{}),s=a[t.placement],l=s.x,u=s.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=a}const I1e={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:R1e};function D1e(e){var t=e.state,n=e.name;t.modifiersData[n]=vH({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}const j1e={name:"popperOffsets",enabled:!0,phase:"read",fn:D1e,data:{}};function N1e(e){return e==="x"?"y":"x"}function $1e(e){var t=e.state,n=e.options,r=e.name,i=n.mainAxis,o=i===void 0?!0:i,a=n.altAxis,s=a===void 0?!1:a,l=n.boundary,u=n.rootBoundary,d=n.altBoundary,h=n.padding,m=n.tether,y=m===void 0?!0:m,b=n.tetherOffset,w=b===void 0?0:b,E=Ay(t,{boundary:l,rootBoundary:u,padding:h,altBoundary:d}),_=Zl(t.placement),k=Xm(t.placement),T=!k,L=O8(_),O=N1e(L),D=t.modifiersData.popperOffsets,I=t.rects.reference,N=t.rects.popper,W=typeof w=="function"?w(Object.assign({},t.rects,{placement:t.placement})):w,B=typeof W=="number"?{mainAxis:W,altAxis:W}:Object.assign({mainAxis:0,altAxis:0},W),K=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,ne={x:0,y:0};if(D){if(o){var z,$=L==="y"?Zo:Qo,V=L==="y"?us:cs,X=L==="y"?"height":"width",Q=D[L],G=Q+E[$],Y=Q-E[V],ee=y?-N[X]/2:0,fe=k===qm?I[X]:N[X],Ce=k===qm?-N[X]:-I[X],we=t.elements.arrow,xe=y&&we?A8(we):{width:0,height:0},Le=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:hH(),Se=Le[$],Qe=Le[V],Xe=W1(0,I[X],xe[X]),tt=T?I[X]/2-ee-Xe-Se-B.mainAxis:fe-Xe-Se-B.mainAxis,yt=T?-I[X]/2+ee+Xe+Qe+B.mainAxis:Ce+Xe+Qe+B.mainAxis,Be=t.elements.arrow&&c2(t.elements.arrow),Ae=Be?L==="y"?Be.clientTop||0:Be.clientLeft||0:0,bt=(z=K==null?void 0:K[L])!=null?z:0,Fe=Q+tt-bt-Ae,at=Q+yt-bt,jt=W1(y?d3(G,Fe):G,Q,y?$h(Y,at):Y);D[L]=jt,ne[L]=jt-Q}if(s){var mt,Zt=L==="x"?Zo:Qo,on=L==="x"?us:cs,se=D[O],Ie=O==="y"?"height":"width",He=se+E[Zt],Ue=se-E[on],ye=[Zo,Qo].indexOf(_)!==-1,je=(mt=K==null?void 0:K[O])!=null?mt:0,vt=ye?He:se-I[Ie]-N[Ie]-je+B.altAxis,Mt=ye?se+I[Ie]+N[Ie]-je-B.altAxis:Ue,Me=y&&ye?l1e(vt,se,Mt):W1(y?vt:He,se,y?Mt:Ue);D[O]=Me,ne[O]=Me-se}t.modifiersData[r]=ne}}const F1e={name:"preventOverflow",enabled:!0,phase:"main",fn:$1e,requiresIfExists:["offset"]};function B1e(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function z1e(e){return e===hs(e)||!is(e)?R8(e):B1e(e)}function H1e(e){var t=e.getBoundingClientRect(),n=Km(t.width)/e.offsetWidth||1,r=Km(t.height)/e.offsetHeight||1;return n!==1||r!==1}function W1e(e,t,n){n===void 0&&(n=!1);var r=is(t),i=is(t)&&H1e(t),o=lf(t),a=Ym(e,i,n),s={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!n)&&((nu(t)!=="body"||D8(o))&&(s=z1e(t)),is(t)?(l=Ym(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):o&&(l.x=I8(o))),{x:a.left+s.scrollLeft-l.x,y:a.top+s.scrollTop-l.y,width:a.width,height:a.height}}function U1e(e){var t=new Map,n=new Set,r=[];e.forEach(function(o){t.set(o.name,o)});function i(o){n.add(o.name);var a=[].concat(o.requires||[],o.requiresIfExists||[]);a.forEach(function(s){if(!n.has(s)){var l=t.get(s);l&&i(l)}}),r.push(o)}return e.forEach(function(o){n.has(o.name)||i(o)}),r}function V1e(e){var t=U1e(e);return n1e.reduce(function(n,r){return n.concat(t.filter(function(i){return i.phase===r}))},[])}function G1e(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function q1e(e){var t=e.reduce(function(n,r){var i=n[r.name];return n[r.name]=i?Object.assign({},i,r,{options:Object.assign({},i.options,r.options),data:Object.assign({},i.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var fO={placement:"bottom",modifiers:[],strategy:"absolute"};function hO(){for(var e=arguments.length,t=new Array(e),n=0;n{}),T=S.useCallback(()=>{var B;!t||!b.current||!w.current||((B=k.current)==null||B.call(k),E.current=X1e(b.current,w.current,{placement:_,modifiers:[zve,$ve,Nve,{...jve,enabled:!!m},{name:"eventListeners",...Dve(a)},{name:"arrow",options:{padding:o}},{name:"offset",options:{offset:s??[0,l]}},{name:"flip",enabled:!!u,options:{padding:8}},{name:"preventOverflow",enabled:!!h,options:{boundary:d}},...n??[]],strategy:i}),E.current.forceUpdate(),k.current=E.current.destroy)},[_,t,n,m,a,o,s,l,u,h,d,i]);S.useEffect(()=>()=>{var B;!b.current&&!w.current&&((B=E.current)==null||B.destroy(),E.current=null)},[]);const L=S.useCallback(B=>{b.current=B,T()},[T]),O=S.useCallback((B={},K=null)=>({...B,ref:Rn(L,K)}),[L]),D=S.useCallback(B=>{w.current=B,T()},[T]),I=S.useCallback((B={},K=null)=>({...B,ref:Rn(D,K),style:{...B.style,position:i,minWidth:m?void 0:"max-content",inset:"0 auto auto 0"}}),[i,D,m]),N=S.useCallback((B={},K=null)=>{const{size:ne,shadowColor:z,bg:$,style:V,...X}=B;return{...X,ref:K,"data-popper-arrow":"",style:Z1e(B)}},[]),W=S.useCallback((B={},K=null)=>({...B,ref:K,"data-popper-arrow-inner":""}),[]);return{update(){var B;(B=E.current)==null||B.update()},forceUpdate(){var B;(B=E.current)==null||B.forceUpdate()},transformOrigin:ii.transformOrigin.varRef,referenceRef:L,popperRef:D,getPopperProps:I,getArrowProps:N,getArrowInnerProps:W,getReferenceProps:O}}function Z1e(e){const{size:t,shadowColor:n,bg:r,style:i}=e,o={...i,position:"absolute"};return t&&(o["--popper-arrow-size"]=t),n&&(o["--popper-arrow-shadow-color"]=n),r&&(o["--popper-arrow-bg"]=r),o}function N8(e={}){const{onClose:t,onOpen:n,isOpen:r,id:i}=e,o=Qr(n),a=Qr(t),[s,l]=S.useState(e.defaultIsOpen||!1),u=r!==void 0?r:s,d=r!==void 0,h=S.useId(),m=i??`disclosure-${h}`,y=S.useCallback(()=>{d||l(!1),a==null||a()},[d,a]),b=S.useCallback(()=>{d||l(!0),o==null||o()},[d,o]),w=S.useCallback(()=>{u?y():b()},[u,b,y]);function E(k={}){return{...k,"aria-expanded":u,"aria-controls":m,onClick(T){var L;(L=k.onClick)==null||L.call(k,T),w()}}}function _(k={}){return{...k,hidden:!u,id:m}}return{isOpen:u,onOpen:b,onClose:y,onToggle:w,isControlled:d,getButtonProps:E,getDisclosureProps:_}}function Q1e(e){const{ref:t,handler:n,enabled:r=!0}=e,i=Qr(n),a=S.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;S.useEffect(()=>{if(!r)return;const s=h=>{pC(h,t)&&(a.isPointerDown=!0)},l=h=>{if(a.ignoreEmulatedMouseEvents){a.ignoreEmulatedMouseEvents=!1;return}a.isPointerDown&&n&&pC(h,t)&&(a.isPointerDown=!1,i(h))},u=h=>{a.ignoreEmulatedMouseEvents=!0,n&&a.isPointerDown&&pC(h,t)&&(a.isPointerDown=!1,i(h))},d=yH(t.current);return d.addEventListener("mousedown",s,!0),d.addEventListener("mouseup",l,!0),d.addEventListener("touchstart",s,!0),d.addEventListener("touchend",u,!0),()=>{d.removeEventListener("mousedown",s,!0),d.removeEventListener("mouseup",l,!0),d.removeEventListener("touchstart",s,!0),d.removeEventListener("touchend",u,!0)}},[n,t,i,a,r])}function pC(e,t){var n;const r=e.target;return e.button>0||r&&!yH(r).contains(r)?!1:!((n=t.current)!=null&&n.contains(r))}function yH(e){var t;return(t=e==null?void 0:e.ownerDocument)!=null?t:document}function bH(e){const{isOpen:t,ref:n}=e,[r,i]=S.useState(t),[o,a]=S.useState(!1);return S.useEffect(()=>{o||(i(t),a(!0))},[t,o,r]),Dh(()=>n.current,"animationend",()=>{i(t)}),{present:!(t?!1:!r),onComplete(){var l;const u=ive(n.current),d=new u.CustomEvent("animationend",{bubbles:!0});(l=n.current)==null||l.dispatchEvent(d)}}}function $8(e){const{wasSelected:t,enabled:n,isSelected:r,mode:i="unmount"}=e;return!!(!n||r||i==="keepMounted"&&t)}var[J1e,eye,tye,nye]=a8(),[rye,d2]=Pn({strict:!1,name:"MenuContext"});function iye(e,...t){const n=S.useId(),r=e||n;return S.useMemo(()=>t.map(i=>`${i}-${r}`),[r,t])}function xH(e){var t;return(t=e==null?void 0:e.ownerDocument)!=null?t:document}function pO(e){return xH(e).activeElement===e}function oye(e={}){const{id:t,closeOnSelect:n=!0,closeOnBlur:r=!0,initialFocusRef:i,autoSelect:o=!0,isLazy:a,isOpen:s,defaultIsOpen:l,onClose:u,onOpen:d,placement:h="bottom-start",lazyBehavior:m="unmount",direction:y,computePositionOnMount:b=!1,...w}=e,E=S.useRef(null),_=S.useRef(null),k=tye(),T=S.useCallback(()=>{requestAnimationFrame(()=>{var we;(we=E.current)==null||we.focus({preventScroll:!1})})},[]),L=S.useCallback(()=>{const we=setTimeout(()=>{var xe;if(i)(xe=i.current)==null||xe.focus();else{const Le=k.firstEnabled();Le&&z(Le.index)}});G.current.add(we)},[k,i]),O=S.useCallback(()=>{const we=setTimeout(()=>{const xe=k.lastEnabled();xe&&z(xe.index)});G.current.add(we)},[k]),D=S.useCallback(()=>{d==null||d(),o?L():T()},[o,L,T,d]),{isOpen:I,onOpen:N,onClose:W,onToggle:B}=N8({isOpen:s,defaultIsOpen:l,onClose:u,onOpen:D});Q1e({enabled:I&&r,ref:E,handler:we=>{var xe;(xe=_.current)!=null&&xe.contains(we.target)||W()}});const K=j8({...w,enabled:I||b,placement:h,direction:y}),[ne,z]=S.useState(-1);rc(()=>{I||z(-1)},[I]),lH(E,{focusRef:_,visible:I,shouldFocus:!0});const $=bH({isOpen:I,ref:E}),[V,X]=iye(t,"menu-button","menu-list"),Q=S.useCallback(()=>{N(),T()},[N,T]),G=S.useRef(new Set([]));fye(()=>{G.current.forEach(we=>clearTimeout(we)),G.current.clear()});const Y=S.useCallback(()=>{N(),L()},[L,N]),ee=S.useCallback(()=>{N(),O()},[N,O]),fe=S.useCallback(()=>{var we,xe;const Le=xH(E.current),Se=(we=E.current)==null?void 0:we.contains(Le.activeElement);if(!(I&&!Se))return;const Xe=(xe=k.item(ne))==null?void 0:xe.node;Xe==null||Xe.focus()},[I,ne,k]),Ce=S.useRef(null);return{openAndFocusMenu:Q,openAndFocusFirstItem:Y,openAndFocusLastItem:ee,onTransitionEnd:fe,unstable__animationState:$,descendants:k,popper:K,buttonId:V,menuId:X,forceUpdate:K.forceUpdate,orientation:"vertical",isOpen:I,onToggle:B,onOpen:N,onClose:W,menuRef:E,buttonRef:_,focusedIndex:ne,closeOnSelect:n,closeOnBlur:r,autoSelect:o,setFocusedIndex:z,isLazy:a,lazyBehavior:m,initialFocusRef:i,rafId:Ce}}function aye(e={},t=null){const n=d2(),{onToggle:r,popper:i,openAndFocusFirstItem:o,openAndFocusLastItem:a}=n,s=S.useCallback(l=>{const u=l.key,h={Enter:o,ArrowDown:o,ArrowUp:a}[u];h&&(l.preventDefault(),l.stopPropagation(),h(l))},[o,a]);return{...e,ref:Rn(n.buttonRef,t,i.referenceRef),id:n.buttonId,"data-active":Bt(n.isOpen),"aria-expanded":n.isOpen,"aria-haspopup":"menu","aria-controls":n.menuId,onClick:ht(e.onClick,r),onKeyDown:ht(e.onKeyDown,s)}}function Q_(e){var t;return cye(e)&&!!((t=e==null?void 0:e.getAttribute("role"))!=null&&t.startsWith("menuitem"))}function sye(e={},t=null){const n=d2();if(!n)throw new Error("useMenuContext: context is undefined. Seems you forgot to wrap component within ");const{focusedIndex:r,setFocusedIndex:i,menuRef:o,isOpen:a,onClose:s,menuId:l,isLazy:u,lazyBehavior:d,unstable__animationState:h}=n,m=eye(),y=kve({preventDefault:_=>_.key!==" "&&Q_(_.target)}),b=S.useCallback(_=>{const k=_.key,L={Tab:D=>D.preventDefault(),Escape:s,ArrowDown:()=>{const D=m.nextEnabled(r);D&&i(D.index)},ArrowUp:()=>{const D=m.prevEnabled(r);D&&i(D.index)}}[k];if(L){_.preventDefault(),L(_);return}const O=y(D=>{const I=Eve(m.values(),D,N=>{var W,B;return(B=(W=N==null?void 0:N.node)==null?void 0:W.textContent)!=null?B:""},m.item(r));if(I){const N=m.indexOf(I.node);i(N)}});Q_(_.target)&&O(_)},[m,r,y,s,i]),w=S.useRef(!1);a&&(w.current=!0);const E=$8({wasSelected:w.current,enabled:u,mode:d,isSelected:h.present});return{...e,ref:Rn(o,t),children:E?e.children:null,tabIndex:-1,role:"menu",id:l,style:{...e.style,transformOrigin:"var(--popper-transform-origin)"},"aria-orientation":"vertical",onKeyDown:ht(e.onKeyDown,b)}}function lye(e={}){const{popper:t,isOpen:n}=d2();return t.getPopperProps({...e,style:{visibility:n?"visible":"hidden",...e.style}})}function uye(e={},t=null){const{onMouseEnter:n,onMouseMove:r,onMouseLeave:i,onClick:o,onFocus:a,isDisabled:s,isFocusable:l,closeOnSelect:u,type:d,...h}=e,m=d2(),{setFocusedIndex:y,focusedIndex:b,closeOnSelect:w,onClose:E,menuRef:_,isOpen:k,menuId:T,rafId:L}=m,O=S.useRef(null),D=`${T}-menuitem-${S.useId()}`,{index:I,register:N}=nye({disabled:s&&!l}),W=S.useCallback(Q=>{n==null||n(Q),!s&&y(I)},[y,I,s,n]),B=S.useCallback(Q=>{r==null||r(Q),O.current&&!pO(O.current)&&W(Q)},[W,r]),K=S.useCallback(Q=>{i==null||i(Q),!s&&y(-1)},[y,s,i]),ne=S.useCallback(Q=>{o==null||o(Q),Q_(Q.currentTarget)&&(u??w)&&E()},[E,o,w,u]),z=S.useCallback(Q=>{a==null||a(Q),y(I)},[y,a,I]),$=I===b,V=s&&!l;rc(()=>{k&&($&&!V&&O.current?(L.current&&cancelAnimationFrame(L.current),L.current=requestAnimationFrame(()=>{var Q;(Q=O.current)==null||Q.focus(),L.current=null})):_.current&&!pO(_.current)&&_.current.focus())},[$,V,_,k]);const X=sH({onClick:ne,onFocus:z,onMouseEnter:W,onMouseMove:B,onMouseLeave:K,ref:Rn(N,O,t),isDisabled:s,isFocusable:l});return{...h,...X,type:d??X.type,id:D,role:"menuitem",tabIndex:$?0:-1}}function cye(e){var t;if(!dye(e))return!1;const n=(t=e.ownerDocument.defaultView)!=null?t:window;return e instanceof n.HTMLElement}function dye(e){return e!=null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function fye(e,t=[]){return S.useEffect(()=>()=>e(),t)}var[hye,Fw]=Pn({name:"MenuStylesContext",errorMessage:`useMenuStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),SH=e=>{const{children:t}=e,n=Yi("Menu",e),r=fr(e),{direction:i}=Zy(),{descendants:o,...a}=oye({...r,direction:i}),s=S.useMemo(()=>a,[a]),{isOpen:l,onClose:u,forceUpdate:d}=s;return g.jsx(J1e,{value:o,children:g.jsx(rye,{value:s,children:g.jsx(hye,{value:n,children:ts(t,{isOpen:l,onClose:u,forceUpdate:d})})})})};SH.displayName="Menu";var wH=Ze((e,t)=>{const n=Fw();return g.jsx(Ne.span,{ref:t,...e,__css:n.command,className:"chakra-menu__command"})});wH.displayName="MenuCommand";var pye=Ze((e,t)=>{const{type:n,...r}=e,i=Fw(),o=r.as||n?n??void 0:"button",a=S.useMemo(()=>({textDecoration:"none",color:"inherit",userSelect:"none",display:"flex",width:"100%",alignItems:"center",textAlign:"start",flex:"0 0 auto",outline:0,...i.item}),[i.item]);return g.jsx(Ne.button,{ref:t,type:o,...r,__css:a})}),CH=e=>{const{className:t,children:n,...r}=e,i=S.Children.only(n),o=S.isValidElement(i)?S.cloneElement(i,{focusable:"false","aria-hidden":!0,className:xt("chakra-menu__icon",i.props.className)}):null,a=xt("chakra-menu__icon-wrapper",t);return g.jsx(Ne.span,{className:a,...r,__css:{flexShrink:0},children:o})};CH.displayName="MenuIcon";var _H=Ze((e,t)=>{const{icon:n,iconSpacing:r="0.75rem",command:i,commandSpacing:o="0.75rem",children:a,...s}=e,l=uye(s,t),d=n||i?g.jsx("span",{style:{pointerEvents:"none",flex:1},children:a}):a;return g.jsxs(pye,{...l,className:xt("chakra-menu__menuitem",l.className),children:[n&&g.jsx(CH,{fontSize:"0.8em",marginEnd:r,children:n}),d,i&&g.jsx(wH,{marginStart:o,children:i})]})});_H.displayName="MenuItem";var gye={enter:{visibility:"visible",opacity:1,scale:1,transition:{duration:.2,ease:[.4,0,.2,1]}},exit:{transitionEnd:{visibility:"hidden"},opacity:0,scale:.8,transition:{duration:.1,easings:"easeOut"}}},mye=Ne(su.div),kH=Ze(function(t,n){var r,i;const{rootProps:o,motionProps:a,...s}=t,{isOpen:l,onTransitionEnd:u,unstable__animationState:d}=d2(),h=sye(s,n),m=lye(o),y=Fw();return g.jsx(Ne.div,{...m,__css:{zIndex:(i=t.zIndex)!=null?i:(r=y.list)==null?void 0:r.zIndex},children:g.jsx(mye,{variants:gye,initial:!1,animate:l?"enter":"exit",__css:{outline:0,...y.list},...a,className:xt("chakra-menu__menu-list",h.className),...h,onUpdate:u,onAnimationComplete:Sw(d.onComplete,h.onAnimationComplete)})})});kH.displayName="MenuList";var vye=Ze((e,t)=>{const n=Fw();return g.jsx(Ne.button,{ref:t,...e,__css:{display:"inline-flex",appearance:"none",alignItems:"center",outline:0,...n.button}})}),EH=Ze((e,t)=>{const{children:n,as:r,...i}=e,o=aye(i,t),a=r||vye;return g.jsx(a,{...o,className:xt("chakra-menu__menu-button",e.className),children:g.jsx(Ne.span,{__css:{pointerEvents:"none",flex:"1 1 auto",minW:0},children:e.children})})});EH.displayName="MenuButton";var yye={slideInBottom:{...B_,custom:{offsetY:16,reverse:!0}},slideInRight:{...B_,custom:{offsetX:16,reverse:!0}},scale:{...az,custom:{initialScale:.95,reverse:!0}},none:{}},bye=Ne(su.section),xye=e=>yye[e||"none"],PH=S.forwardRef((e,t)=>{const{preset:n,motionProps:r=xye(n),...i}=e;return g.jsx(bye,{ref:t,...r,...i})});PH.displayName="ModalTransition";var Sye=Object.defineProperty,wye=(e,t,n)=>t in e?Sye(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Cye=(e,t,n)=>(wye(e,typeof t!="symbol"?t+"":t,n),n),_ye=class{constructor(){Cye(this,"modals"),this.modals=new Map}add(e){return this.modals.set(e,this.modals.size+1),this.modals.size}remove(e){this.modals.delete(e)}isTopModal(e){return e?this.modals.get(e)===this.modals.size:!1}},J_=new _ye;function TH(e,t){const[n,r]=S.useState(0);return S.useEffect(()=>{const i=e.current;if(i){if(t){const o=J_.add(i);r(o)}return()=>{J_.remove(i),r(0)}}},[t,e]),n}var kye=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},wg=new WeakMap,Gb=new WeakMap,qb={},gC=0,MH=function(e){return e&&(e.host||MH(e.parentNode))},Eye=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=MH(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return Boolean(n)})},Pye=function(e,t,n,r){var i=Eye(t,Array.isArray(e)?e:[e]);qb[n]||(qb[n]=new WeakMap);var o=qb[n],a=[],s=new Set,l=new Set(i),u=function(h){!h||s.has(h)||(s.add(h),u(h.parentNode))};i.forEach(u);var d=function(h){!h||l.has(h)||Array.prototype.forEach.call(h.children,function(m){if(s.has(m))d(m);else{var y=m.getAttribute(r),b=y!==null&&y!=="false",w=(wg.get(m)||0)+1,E=(o.get(m)||0)+1;wg.set(m,w),o.set(m,E),a.push(m),w===1&&b&&Gb.set(m,!0),E===1&&m.setAttribute(n,"true"),b||m.setAttribute(r,"true")}})};return d(t),s.clear(),gC++,function(){a.forEach(function(h){var m=wg.get(h)-1,y=o.get(h)-1;wg.set(h,m),o.set(h,y),m||(Gb.has(h)||h.removeAttribute(r),Gb.delete(h)),y||h.removeAttribute(n)}),gC--,gC||(wg=new WeakMap,wg=new WeakMap,Gb=new WeakMap,qb={})}},LH=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),i=t||kye(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll("[aria-live]"))),Pye(r,i,n,"aria-hidden")):function(){return null}};function Tye(e){const{isOpen:t,onClose:n,id:r,closeOnOverlayClick:i=!0,closeOnEsc:o=!0,useInert:a=!0,onOverlayClick:s,onEsc:l}=e,u=S.useRef(null),d=S.useRef(null),[h,m,y]=Lye(r,"chakra-modal","chakra-modal--header","chakra-modal--body");Mye(u,t&&a),TH(u,t);const b=S.useRef(null),w=S.useCallback(N=>{b.current=N.target},[]),E=S.useCallback(N=>{N.key==="Escape"&&(N.stopPropagation(),o&&(n==null||n()),l==null||l())},[o,n,l]),[_,k]=S.useState(!1),[T,L]=S.useState(!1),O=S.useCallback((N={},W=null)=>({role:"dialog",...N,ref:Rn(W,u),id:h,tabIndex:-1,"aria-modal":!0,"aria-labelledby":_?m:void 0,"aria-describedby":T?y:void 0,onClick:ht(N.onClick,B=>B.stopPropagation())}),[y,T,h,m,_]),D=S.useCallback(N=>{N.stopPropagation(),b.current===N.target&&J_.isTopModal(u.current)&&(i&&(n==null||n()),s==null||s())},[n,i,s]),I=S.useCallback((N={},W=null)=>({...N,ref:Rn(W,d),onClick:ht(N.onClick,D),onKeyDown:ht(N.onKeyDown,E),onMouseDown:ht(N.onMouseDown,w)}),[E,w,D]);return{isOpen:t,onClose:n,headerId:m,bodyId:y,setBodyMounted:L,setHeaderMounted:k,dialogRef:u,overlayRef:d,getDialogProps:O,getDialogContainerProps:I}}function Mye(e,t){const n=e.current;S.useEffect(()=>{if(!(!e.current||!t))return LH(e.current)},[t,e,n])}function Lye(e,...t){const n=S.useId(),r=e||n;return S.useMemo(()=>t.map(i=>`${i}-${r}`),[r,t])}var[Aye,g0]=Pn({name:"ModalStylesContext",errorMessage:`useModalStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),[Oye,Yh]=Pn({strict:!0,name:"ModalContext",errorMessage:"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in ``"}),Yd=e=>{const t={scrollBehavior:"outside",autoFocus:!0,trapFocus:!0,returnFocusOnClose:!0,blockScrollOnMount:!0,allowPinchZoom:!1,motionPreset:"scale",lockFocusAcrossFrames:!0,...e},{portalProps:n,children:r,autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:l,blockScrollOnMount:u,allowPinchZoom:d,preserveScrollBarGap:h,motionPreset:m,lockFocusAcrossFrames:y,onCloseComplete:b}=t,w=Yi("Modal",t),_={...Tye(t),autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:l,blockScrollOnMount:u,allowPinchZoom:d,preserveScrollBarGap:h,motionPreset:m,lockFocusAcrossFrames:y};return g.jsx(Oye,{value:_,children:g.jsx(Aye,{value:w,children:g.jsx(rp,{onExitComplete:b,children:_.isOpen&&g.jsx(c0,{...n,children:r})})})})};Yd.displayName="Modal";var eS="right-scroll-bar-position",tS="width-before-scroll-bar",Rye="with-scroll-bars-hidden",Iye="--removed-body-scroll-bar-size",AH=xz(),mC=function(){},Bw=S.forwardRef(function(e,t){var n=S.useRef(null),r=S.useState({onScrollCapture:mC,onWheelCapture:mC,onTouchMoveCapture:mC}),i=r[0],o=r[1],a=e.forwardProps,s=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,h=e.shards,m=e.sideCar,y=e.noIsolation,b=e.inert,w=e.allowPinchZoom,E=e.as,_=E===void 0?"div":E,k=YB(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as"]),T=m,L=vz([n,t]),O=Nl(Nl({},k),i);return S.createElement(S.Fragment,null,d&&S.createElement(T,{sideCar:AH,removeScrollBar:u,shards:h,noIsolation:y,inert:b,setCallbacks:o,allowPinchZoom:!!w,lockRef:n}),a?S.cloneElement(S.Children.only(s),Nl(Nl({},O),{ref:L})):S.createElement(_,Nl({},O,{className:l,ref:L}),s))});Bw.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Bw.classNames={fullWidth:tS,zeroRight:eS};var gO,Dye=function(){if(gO)return gO;if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function jye(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=Dye();return t&&e.setAttribute("nonce",t),e}function Nye(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function $ye(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var Fye=function(){var e=0,t=null;return{add:function(n){e==0&&(t=jye())&&(Nye(t,n),$ye(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},Bye=function(){var e=Fye();return function(t,n){S.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},OH=function(){var e=Bye(),t=function(n){var r=n.styles,i=n.dynamic;return e(r,i),null};return t},zye={left:0,top:0,right:0,gap:0},vC=function(e){return parseInt(e||"",10)||0},Hye=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],i=t[e==="padding"?"paddingRight":"marginRight"];return[vC(n),vC(r),vC(i)]},Wye=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return zye;var t=Hye(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Uye=OH(),Vye=function(e,t,n,r){var i=e.left,o=e.top,a=e.right,s=e.gap;return n===void 0&&(n="margin"),` - .`.concat(Rye,` { + `),()=>{document.head.removeChild(u)}},[t]),S.createElement(lge,{isPresent:t,childRef:r,sizeRef:i},S.cloneElement(e,{ref:r}))}const sC=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:i,presenceAffectsLayout:o,mode:a})=>{const s=R9(cge),l=S.useId(),u=S.useMemo(()=>({id:l,initial:t,isPresent:n,custom:i,onExitComplete:d=>{s.set(d,!0);for(const p of s.values())if(!p)return;r&&r()},register:d=>(s.set(d,!1),()=>s.delete(d))}),o?void 0:[n]);return S.useMemo(()=>{s.forEach((d,p)=>s.set(p,!1))},[n]),S.useEffect(()=>{!n&&!s.size&&r&&r()},[n]),a==="popLayout"&&(e=S.createElement(uge,{isPresent:n},e)),S.createElement(n2.Provider,{value:u},e)};function cge(){return new Map}function dge(e){return S.useEffect(()=>()=>e(),[])}const jg=e=>e.key||"";function fge(e,t){e.forEach(n=>{const r=jg(n);t.set(r,n)})}function hge(e){const t=[];return S.Children.forEach(e,n=>{S.isValidElement(n)&&t.push(n)}),t}const rp=({children:e,custom:t,initial:n=!0,onExitComplete:r,exitBeforeEnter:i,presenceAffectsLayout:o=!0,mode:a="sync"})=>{i&&(a="wait");let[s]=sge();const l=S.useContext(I9).forceRender;l&&(s=l);const u=KB(),d=hge(e);let p=d;const m=new Set,y=S.useRef(p),b=S.useRef(new Map).current,w=S.useRef(!0);if(YS(()=>{w.current=!1,fge(d,b),y.current=p}),dge(()=>{w.current=!0,b.clear(),m.clear()}),w.current)return S.createElement(S.Fragment,null,p.map(T=>S.createElement(sC,{key:jg(T),isPresent:!0,initial:n?void 0:!1,presenceAffectsLayout:o,mode:a},T)));p=[...p];const E=y.current.map(jg),_=d.map(jg),k=E.length;for(let T=0;T{if(_.indexOf(T)!==-1)return;const L=b.get(T);if(!L)return;const O=E.indexOf(T),D=()=>{b.delete(T),m.delete(T);const I=y.current.findIndex(N=>N.key===T);if(y.current.splice(I,1),!m.size){if(y.current=d,u.current===!1)return;s(),r&&r()}};p.splice(O,0,S.createElement(sC,{key:jg(L),isPresent:!1,onExitComplete:D,custom:t,presenceAffectsLayout:o,mode:a},L))}),p=p.map(T=>{const L=T.key;return m.has(L)?T:S.createElement(sC,{key:jg(T),isPresent:!0,presenceAffectsLayout:o,mode:a},T)}),S.createElement(S.Fragment,null,m.size?p:p.map(T=>S.cloneElement(T)))};var Nl=function(){return Nl=Object.assign||function(t){for(var n,r=1,i=arguments.length;r0&&o[o.length-1])&&(u[0]===6||u[0]===2)){n=0;continue}if(u[0]===3&&(!o||u[1]>o[0]&&u[1]0)&&!(i=r.next()).done;)o.push(i.value)}catch(s){a={error:s}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(a)throw a.error}}return o}function $_(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,o;r{const{position:t}=e,n=["top","bottom"].includes(t)?"y":"x";let r=["top-right","bottom-right"].includes(t)?1:-1;return t==="bottom"&&(r=1),{opacity:0,[n]:r*24}},animate:{opacity:1,y:0,x:0,scale:1,transition:{duration:.4,ease:[.4,0,.2,1]}},exit:{opacity:0,scale:.85,transition:{duration:.2,ease:[.4,0,1,1]}}},XB=S.memo(e=>{const{id:t,message:n,onCloseComplete:r,onRequestRemove:i,requestClose:o=!1,position:a="bottom",duration:s=5e3,containerStyle:l,motionVariants:u=pge,toastSpacing:d="0.5rem"}=e,[p,m]=S.useState(s),y=ape();rc(()=>{y||r==null||r()},[y]),rc(()=>{m(s)},[s]);const b=()=>m(null),w=()=>m(s),E=()=>{y&&i()};S.useEffect(()=>{y&&o&&i()},[y,o,i]),ede(E,p);const _=S.useMemo(()=>({pointerEvents:"auto",maxWidth:560,minWidth:300,margin:d,...l}),[l,d]),k=S.useMemo(()=>Qce(a),[a]);return g.jsx(su.li,{layout:!0,className:"chakra-toast",variants:u,initial:"initial",animate:"animate",exit:"exit",onHoverStart:b,onHoverEnd:w,custom:{position:a},style:k,children:g.jsx(Ne.div,{role:"status","aria-atomic":"true",className:"chakra-toast__inner",__css:_,children:ts(n,{id:t,onClose:E})})})});XB.displayName="ToastComponent";function gge(e,t){var n;const r=e??"bottom",o={"top-start":{ltr:"top-left",rtl:"top-right"},"top-end":{ltr:"top-right",rtl:"top-left"},"bottom-start":{ltr:"bottom-left",rtl:"bottom-right"},"bottom-end":{ltr:"bottom-right",rtl:"bottom-left"}}[r];return(n=o==null?void 0:o[t])!=null?n:r}var IA={path:g.jsxs("g",{stroke:"currentColor",strokeWidth:"1.5",children:[g.jsx("path",{strokeLinecap:"round",fill:"none",d:"M9,9a3,3,0,1,1,4,2.829,1.5,1.5,0,0,0-1,1.415V14.25"}),g.jsx("path",{fill:"currentColor",strokeLinecap:"round",d:"M12,17.25a.375.375,0,1,0,.375.375A.375.375,0,0,0,12,17.25h0"}),g.jsx("circle",{fill:"none",strokeMiterlimit:"10",cx:"12",cy:"12",r:"11.25"})]}),viewBox:"0 0 24 24"},ja=Ze((e,t)=>{const{as:n,viewBox:r,color:i="currentColor",focusable:o=!1,children:a,className:s,__css:l,...u}=e,d=xt("chakra-icon",s),p=au("Icon",e),m={w:"1em",h:"1em",display:"inline-block",lineHeight:"1em",flexShrink:0,color:i,...l,...p},y={ref:t,focusable:o,className:d,__css:m},b=r??IA.viewBox;if(n&&typeof n!="string")return g.jsx(Ne.svg,{as:n,...y,...u});const w=a??IA.path;return g.jsx(Ne.svg,{verticalAlign:"middle",viewBox:b,...y,...u,children:w})});ja.displayName="Icon";function fc(e){const{viewBox:t="0 0 24 24",d:n,displayName:r,defaultProps:i={}}=e,o=S.Children.toArray(e.path),a=Ze((s,l)=>g.jsx(ja,{ref:l,viewBox:t,...i,...s,children:o.length?o:g.jsx("path",{fill:"currentColor",d:n})}));return a.displayName=r,a}function mge(e){return g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.014,12.014,0,0,0,12,0Zm6.927,8.2-6.845,9.289a1.011,1.011,0,0,1-1.43.188L5.764,13.769a1,1,0,1,1,1.25-1.562l4.076,3.261,6.227-8.451A1,1,0,1,1,18.927,8.2Z"})})}function vge(e){return g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M12,0A12,12,0,1,0,24,12,12.013,12.013,0,0,0,12,0Zm.25,5a1.5,1.5,0,1,1-1.5,1.5A1.5,1.5,0,0,1,12.25,5ZM14.5,18.5h-4a1,1,0,0,1,0-2h.75a.25.25,0,0,0,.25-.25v-4.5a.25.25,0,0,0-.25-.25H10.5a1,1,0,0,1,0-2h1a2,2,0,0,1,2,2v4.75a.25.25,0,0,0,.25.25h.75a1,1,0,1,1,0,2Z"})})}function DA(e){return g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})}var yge=nf({"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}),p0=Ze((e,t)=>{const n=au("Spinner",e),{label:r="Loading...",thickness:i="2px",speed:o="0.45s",emptyColor:a="transparent",className:s,...l}=fr(e),u=xt("chakra-spinner",s),d={display:"inline-block",borderColor:"currentColor",borderStyle:"solid",borderRadius:"99999px",borderWidth:i,borderBottomColor:a,borderLeftColor:a,animation:`${yge} ${o} linear infinite`,...n};return g.jsx(Ne.div,{ref:t,__css:d,className:u,...l,children:r&&g.jsx(Ne.span,{srOnly:!0,children:r})})});p0.displayName="Spinner";var[bge,xge]=Pn({name:"AlertContext",hookName:"useAlertContext",providerName:""}),[Sge,i8]=Pn({name:"AlertStylesContext",hookName:"useAlertStyles",providerName:""}),ZB={info:{icon:vge,colorScheme:"blue"},warning:{icon:DA,colorScheme:"orange"},success:{icon:mge,colorScheme:"green"},error:{icon:DA,colorScheme:"red"},loading:{icon:p0,colorScheme:"blue"}};function wge(e){return ZB[e].colorScheme}function Cge(e){return ZB[e].icon}var QB=Ze(function(t,n){const i={display:"inline",...i8().description};return g.jsx(Ne.div,{ref:n,...t,className:xt("chakra-alert__desc",t.className),__css:i})});QB.displayName="AlertDescription";function JB(e){const{status:t}=xge(),n=Cge(t),r=i8(),i=t==="loading"?r.spinner:r.icon;return g.jsx(Ne.span,{display:"inherit",...e,className:xt("chakra-alert__icon",e.className),__css:i,children:e.children||g.jsx(n,{h:"100%",w:"100%"})})}JB.displayName="AlertIcon";var ez=Ze(function(t,n){const r=i8();return g.jsx(Ne.div,{ref:n,...t,className:xt("chakra-alert__title",t.className),__css:r.title})});ez.displayName="AlertTitle";var tz=Ze(function(t,n){var r;const{status:i="info",addRole:o=!0,...a}=fr(t),s=(r=t.colorScheme)!=null?r:wge(i),l=Yi("Alert",{...t,colorScheme:s}),u={width:"100%",display:"flex",alignItems:"center",position:"relative",overflow:"hidden",...l.container};return g.jsx(bge,{value:{status:i},children:g.jsx(Sge,{value:l,children:g.jsx(Ne.div,{role:o?"alert":void 0,ref:n,...a,className:xt("chakra-alert",t.className),__css:u})})})});tz.displayName="Alert";function _ge(e){return g.jsx(ja,{focusable:"false","aria-hidden":!0,...e,children:g.jsx("path",{fill:"currentColor",d:"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z"})})}var o8=Ze(function(t,n){const r=au("CloseButton",t),{children:i,isDisabled:o,__css:a,...s}=fr(t),l={outline:0,display:"flex",alignItems:"center",justifyContent:"center",flexShrink:0};return g.jsx(Ne.button,{type:"button","aria-label":"Close",ref:n,disabled:o,__css:{...l,...r,...a},...s,children:i||g.jsx(_ge,{width:"1em",height:"1em"})})});o8.displayName="CloseButton";var kge={top:[],"top-left":[],"top-right":[],"bottom-left":[],bottom:[],"bottom-right":[]},$l=Ege(kge);function Ege(e){let t=e;const n=new Set,r=i=>{t=i(t),n.forEach(o=>o())};return{getState:()=>t,subscribe:i=>(n.add(i),()=>{r(()=>e),n.delete(i)}),removeToast:(i,o)=>{r(a=>({...a,[o]:a[o].filter(s=>s.id!=i)}))},notify:(i,o)=>{const a=Pge(i,o),{position:s,id:l}=a;return r(u=>{var d,p;const y=s.includes("top")?[a,...(d=u[s])!=null?d:[]]:[...(p=u[s])!=null?p:[],a];return{...u,[s]:y}}),l},update:(i,o)=>{i&&r(a=>{const s={...a},{position:l,index:u}=ML(s,i);return l&&u!==-1&&(s[l][u]={...s[l][u],...o,message:nz(o)}),s})},closeAll:({positions:i}={})=>{r(o=>(i??["bottom","bottom-right","bottom-left","top","top-left","top-right"]).reduce((l,u)=>(l[u]=o[u].map(d=>({...d,requestClose:!0})),l),{...o}))},close:i=>{r(o=>{const a=RF(o,i);return a?{...o,[a]:o[a].map(s=>s.id==i?{...s,requestClose:!0}:s)}:o})},isActive:i=>Boolean(ML($l.getState(),i).position)}}var jA=0;function Pge(e,t={}){var n,r;jA+=1;const i=(n=t.id)!=null?n:jA,o=(r=t.position)!=null?r:"bottom";return{id:i,message:e,position:o,duration:t.duration,onCloseComplete:t.onCloseComplete,onRequestRemove:()=>$l.removeToast(String(i),o),status:t.status,requestClose:!1,containerStyle:t.containerStyle}}var Tge=e=>{const{status:t,variant:n="solid",id:r,title:i,isClosable:o,onClose:a,description:s,icon:l}=e,u=r?{root:`toast-${r}`,title:`toast-${r}-title`,description:`toast-${r}-description`}:void 0;return g.jsxs(tz,{addRole:!1,status:t,variant:n,id:u==null?void 0:u.root,alignItems:"start",borderRadius:"md",boxShadow:"lg",paddingEnd:8,textAlign:"start",width:"auto",children:[g.jsx(JB,{children:l}),g.jsxs(Ne.div,{flex:"1",maxWidth:"100%",children:[i&&g.jsx(ez,{id:u==null?void 0:u.title,children:i}),s&&g.jsx(QB,{id:u==null?void 0:u.description,display:"block",children:s})]}),o&&g.jsx(o8,{size:"sm",onClick:a,position:"absolute",insetEnd:1,top:1})]})};function nz(e={}){const{render:t,toastComponent:n=Tge}=e;return i=>typeof t=="function"?t({...i,...e}):g.jsx(n,{...i,...e})}function Mge(e,t){const n=i=>{var o;return{...t,...i,position:gge((o=i==null?void 0:i.position)!=null?o:t==null?void 0:t.position,e)}},r=i=>{const o=n(i),a=nz(o);return $l.notify(a,o)};return r.update=(i,o)=>{$l.update(i,n(o))},r.promise=(i,o)=>{const a=r({...o.loading,status:"loading",duration:null});i.then(s=>r.update(a,{status:"success",duration:5e3,...ts(o.success,s)})).catch(s=>r.update(a,{status:"error",duration:5e3,...ts(o.error,s)}))},r.closeAll=$l.closeAll,r.close=$l.close,r.isActive=$l.isActive,r}var[Lge,Age]=Pn({name:"ToastOptionsContext",strict:!1}),Oge=e=>{const t=S.useSyncExternalStore($l.subscribe,$l.getState,$l.getState),{motionVariants:n,component:r=XB,portalProps:i}=e,a=Object.keys(t).map(s=>{const l=t[s];return g.jsx("ul",{role:"region","aria-live":"polite",id:`chakra-toast-manager-${s}`,style:Jce(s),children:g.jsx(rp,{initial:!1,children:l.map(u=>g.jsx(r,{motionVariants:n,...u},u.id))})},s)});return g.jsx(c0,{...i,children:a})};function a2(e){const{theme:t}=eF(),n=Age();return S.useMemo(()=>Mge(t.direction,{...n,...e}),[e,t.direction,n])}var Rge=e=>function({children:n,theme:r=e,toastOptions:i,...o}){return g.jsxs(Xce,{theme:r,...o,children:[g.jsx(Lge,{value:i==null?void 0:i.defaultOptions,children:n}),g.jsx(Oge,{...i})]})},Ige=Rge(dce),Dge=Object.defineProperty,jge=(e,t,n)=>t in e?Dge(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Nr=(e,t,n)=>(jge(e,typeof t!="symbol"?t+"":t,n),n);function NA(e){return e.sort((t,n)=>{const r=t.compareDocumentPosition(n);if(r&Node.DOCUMENT_POSITION_FOLLOWING||r&Node.DOCUMENT_POSITION_CONTAINED_BY)return-1;if(r&Node.DOCUMENT_POSITION_PRECEDING||r&Node.DOCUMENT_POSITION_CONTAINS)return 1;if(r&Node.DOCUMENT_POSITION_DISCONNECTED||r&Node.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC)throw Error("Cannot sort the given nodes.");return 0})}var Nge=e=>typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE;function $A(e,t,n){let r=e+1;return n&&r>=t&&(r=0),r}function FA(e,t,n){let r=e-1;return n&&r<0&&(r=t),r}var F_=typeof window<"u"?S.useLayoutEffect:S.useEffect,o3=e=>e,$ge=class{constructor(){Nr(this,"descendants",new Map),Nr(this,"register",e=>{if(e!=null)return Nge(e)?this.registerNode(e):t=>{this.registerNode(t,e)}}),Nr(this,"unregister",e=>{this.descendants.delete(e);const t=NA(Array.from(this.descendants.keys()));this.assignIndex(t)}),Nr(this,"destroy",()=>{this.descendants.clear()}),Nr(this,"assignIndex",e=>{this.descendants.forEach(t=>{const n=e.indexOf(t.node);t.index=n,t.node.dataset.index=t.index.toString()})}),Nr(this,"count",()=>this.descendants.size),Nr(this,"enabledCount",()=>this.enabledValues().length),Nr(this,"values",()=>Array.from(this.descendants.values()).sort((t,n)=>t.index-n.index)),Nr(this,"enabledValues",()=>this.values().filter(e=>!e.disabled)),Nr(this,"item",e=>{if(this.count()!==0)return this.values()[e]}),Nr(this,"enabledItem",e=>{if(this.enabledCount()!==0)return this.enabledValues()[e]}),Nr(this,"first",()=>this.item(0)),Nr(this,"firstEnabled",()=>this.enabledItem(0)),Nr(this,"last",()=>this.item(this.descendants.size-1)),Nr(this,"lastEnabled",()=>{const e=this.enabledValues().length-1;return this.enabledItem(e)}),Nr(this,"indexOf",e=>{var t,n;return e&&(n=(t=this.descendants.get(e))==null?void 0:t.index)!=null?n:-1}),Nr(this,"enabledIndexOf",e=>e==null?-1:this.enabledValues().findIndex(t=>t.node.isSameNode(e))),Nr(this,"next",(e,t=!0)=>{const n=$A(e,this.count(),t);return this.item(n)}),Nr(this,"nextEnabled",(e,t=!0)=>{const n=this.item(e);if(!n)return;const r=this.enabledIndexOf(n.node),i=$A(r,this.enabledCount(),t);return this.enabledItem(i)}),Nr(this,"prev",(e,t=!0)=>{const n=FA(e,this.count()-1,t);return this.item(n)}),Nr(this,"prevEnabled",(e,t=!0)=>{const n=this.item(e);if(!n)return;const r=this.enabledIndexOf(n.node),i=FA(r,this.enabledCount()-1,t);return this.enabledItem(i)}),Nr(this,"registerNode",(e,t)=>{if(!e||this.descendants.has(e))return;const n=Array.from(this.descendants.keys()).concat(e),r=NA(n);t!=null&&t.disabled&&(t.disabled=!!t.disabled);const i={node:e,index:-1,...t};this.descendants.set(e,i),this.assignIndex(r)})}};function Fge(e,t){if(e!=null){if(typeof e=="function"){e(t);return}try{e.current=t}catch{throw new Error(`Cannot assign value '${t}' to ref '${e}'`)}}}function Rn(...e){return t=>{e.forEach(n=>{Fge(n,t)})}}function Bge(...e){return S.useMemo(()=>Rn(...e),e)}function zge(){const e=S.useRef(new $ge);return F_(()=>()=>e.current.destroy()),e.current}var[Hge,rz]=Pn({name:"DescendantsProvider",errorMessage:"useDescendantsContext must be used within DescendantsProvider"});function Wge(e){const t=rz(),[n,r]=S.useState(-1),i=S.useRef(null);F_(()=>()=>{i.current&&t.unregister(i.current)},[]),F_(()=>{if(!i.current)return;const a=Number(i.current.dataset.index);n!=a&&!Number.isNaN(a)&&r(a)});const o=o3(e?t.register(e):t.register);return{descendants:t,index:n,enabledIndex:t.enabledIndexOf(i.current),register:Rn(o,i)}}function a8(){return[o3(Hge),()=>o3(rz()),()=>zge(),i=>Wge(i)]}var[Uge,Dw]=Pn({name:"AccordionStylesContext",hookName:"useAccordionStyles",providerName:""}),[Vge,s8]=Pn({name:"AccordionItemContext",hookName:"useAccordionItemContext",providerName:""}),[Gge,gNe,qge,Kge]=a8(),tm=Ze(function(t,n){const{getButtonProps:r}=s8(),i=r(t,n),a={display:"flex",alignItems:"center",width:"100%",outline:0,...Dw().button};return g.jsx(Ne.button,{...i,className:xt("chakra-accordion__button",t.className),__css:a})});tm.displayName="AccordionButton";function l8(e){const{value:t,defaultValue:n,onChange:r,shouldUpdate:i=(m,y)=>m!==y}=e,o=Qr(r),a=Qr(i),[s,l]=S.useState(n),u=t!==void 0,d=u?t:s,p=Qr(m=>{const b=typeof m=="function"?m(d):m;a(d,b)&&(u||l(b),o(b))},[u,o,d,a]);return[d,p]}function Yge(e){const{onChange:t,defaultIndex:n,index:r,allowMultiple:i,allowToggle:o,...a}=e;Qge(e),Jge(e);const s=qge(),[l,u]=S.useState(-1);S.useEffect(()=>()=>{u(-1)},[]);const[d,p]=l8({value:r,defaultValue(){return i?n??[]:n??-1},onChange:t});return{index:d,setIndex:p,htmlProps:a,getAccordionItemProps:y=>{let b=!1;return y!==null&&(b=Array.isArray(d)?d.includes(y):d===y),{isOpen:b,onChange:E=>{if(y!==null)if(i&&Array.isArray(d)){const _=E?d.concat(y):d.filter(k=>k!==y);p(_)}else E?p(y):o&&p(-1)}}},focusedIndex:l,setFocusedIndex:u,descendants:s}}var[Xge,u8]=Pn({name:"AccordionContext",hookName:"useAccordionContext",providerName:"Accordion"});function Zge(e){const{isDisabled:t,isFocusable:n,id:r,...i}=e,{getAccordionItemProps:o,setFocusedIndex:a}=u8(),s=S.useRef(null),l=S.useId(),u=r??l,d=`accordion-button-${u}`,p=`accordion-panel-${u}`;eme(e);const{register:m,index:y,descendants:b}=Kge({disabled:t&&!n}),{isOpen:w,onChange:E}=o(y===-1?null:y);tme({isOpen:w,isDisabled:t});const _=()=>{E==null||E(!0)},k=()=>{E==null||E(!1)},T=S.useCallback(()=>{E==null||E(!w),a(y)},[y,a,w,E]),L=S.useCallback(N=>{const B={ArrowDown:()=>{const K=b.nextEnabled(y);K==null||K.node.focus()},ArrowUp:()=>{const K=b.prevEnabled(y);K==null||K.node.focus()},Home:()=>{const K=b.firstEnabled();K==null||K.node.focus()},End:()=>{const K=b.lastEnabled();K==null||K.node.focus()}}[N.key];B&&(N.preventDefault(),B(N))},[b,y]),O=S.useCallback(()=>{a(y)},[a,y]),D=S.useCallback(function(W={},B=null){return{...W,type:"button",ref:Rn(m,s,B),id:d,disabled:!!t,"aria-expanded":!!w,"aria-controls":p,onClick:ht(W.onClick,T),onFocus:ht(W.onFocus,O),onKeyDown:ht(W.onKeyDown,L)}},[d,t,w,T,O,L,p,m]),I=S.useCallback(function(W={},B=null){return{...W,ref:B,role:"region",id:p,"aria-labelledby":d,hidden:!w}},[d,w,p]);return{isOpen:w,isDisabled:t,isFocusable:n,onOpen:_,onClose:k,getButtonProps:D,getPanelProps:I,htmlProps:i}}function Qge(e){const t=e.index||e.defaultIndex,n=t!=null&&!Array.isArray(t)&&e.allowMultiple;Jy({condition:!!n,message:`If 'allowMultiple' is passed, then 'index' or 'defaultIndex' must be an array. You passed: ${typeof t},`})}function Jge(e){Jy({condition:!!(e.allowMultiple&&e.allowToggle),message:"If 'allowMultiple' is passed, 'allowToggle' will be ignored. Either remove 'allowToggle' or 'allowMultiple' depending on whether you want multiple accordions visible or not"})}function eme(e){Jy({condition:!!(e.isFocusable&&!e.isDisabled),message:`Using only 'isFocusable', this prop is reserved for situations where you pass 'isDisabled' but you still want the element to receive focus (A11y). Either remove it or pass 'isDisabled' as well. + `})}function tme(e){Jy({condition:e.isOpen&&!!e.isDisabled,message:"Cannot open a disabled accordion item"})}function nm(e){const{isOpen:t,isDisabled:n}=s8(),{reduceMotion:r}=u8(),i=xt("chakra-accordion__icon",e.className),o=Dw(),a={opacity:n?.4:1,transform:t?"rotate(-180deg)":void 0,transition:r?void 0:"transform 0.2s",transformOrigin:"center",...o.icon};return g.jsx(ja,{viewBox:"0 0 24 24","aria-hidden":!0,className:i,__css:a,...e,children:g.jsx("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})})}nm.displayName="AccordionIcon";var rm=Ze(function(t,n){const{children:r,className:i}=t,{htmlProps:o,...a}=Zge(t),l={...Dw().container,overflowAnchor:"none"},u=S.useMemo(()=>a,[a]);return g.jsx(Vge,{value:u,children:g.jsx(Ne.div,{ref:n,...o,className:xt("chakra-accordion__item",i),__css:l,children:typeof r=="function"?r({isExpanded:!!a.isOpen,isDisabled:!!a.isDisabled}):r})})});rm.displayName="AccordionItem";var im={ease:[.25,.1,.25,1],easeIn:[.4,0,1,1],easeOut:[0,0,.2,1],easeInOut:[.4,0,.2,1]},Ih={enter:{duration:.2,ease:im.easeOut},exit:{duration:.1,ease:im.easeIn}},Ku={enter:(e,t)=>({...e,delay:typeof t=="number"?t:t==null?void 0:t.enter}),exit:(e,t)=>({...e,delay:typeof t=="number"?t:t==null?void 0:t.exit})},nme=e=>e!=null&&parseInt(e.toString(),10)>0,BA={exit:{height:{duration:.2,ease:im.ease},opacity:{duration:.3,ease:im.ease}},enter:{height:{duration:.3,ease:im.ease},opacity:{duration:.4,ease:im.ease}}},rme={exit:({animateOpacity:e,startingHeight:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{...e&&{opacity:nme(t)?1:0},height:t,transitionEnd:r==null?void 0:r.exit,transition:(o=n==null?void 0:n.exit)!=null?o:Ku.exit(BA.exit,i)}},enter:({animateOpacity:e,endingHeight:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{...e&&{opacity:1},height:t,transitionEnd:r==null?void 0:r.enter,transition:(o=n==null?void 0:n.enter)!=null?o:Ku.enter(BA.enter,i)}}},iz=S.forwardRef((e,t)=>{const{in:n,unmountOnExit:r,animateOpacity:i=!0,startingHeight:o=0,endingHeight:a="auto",style:s,className:l,transition:u,transitionEnd:d,...p}=e,[m,y]=S.useState(!1);S.useEffect(()=>{const k=setTimeout(()=>{y(!0)});return()=>clearTimeout(k)},[]),Jy({condition:Boolean(o>0&&r),message:"startingHeight and unmountOnExit are mutually exclusive. You can't use them together"});const b=parseFloat(o.toString())>0,w={startingHeight:o,endingHeight:a,animateOpacity:i,transition:m?u:{enter:{duration:0}},transitionEnd:{enter:d==null?void 0:d.enter,exit:r?d==null?void 0:d.exit:{...d==null?void 0:d.exit,display:b?"block":"none"}}},E=r?n:!0,_=n||r?"enter":"exit";return g.jsx(rp,{initial:!1,custom:w,children:E&&g.jsx(su.div,{ref:t,...p,className:xt("chakra-collapse",l),style:{overflow:"hidden",display:"block",...s},custom:w,variants:rme,initial:r?"exit":!1,animate:_,exit:"exit"})})});iz.displayName="Collapse";var ime={enter:({transition:e,transitionEnd:t,delay:n}={})=>{var r;return{opacity:1,transition:(r=e==null?void 0:e.enter)!=null?r:Ku.enter(Ih.enter,n),transitionEnd:t==null?void 0:t.enter}},exit:({transition:e,transitionEnd:t,delay:n}={})=>{var r;return{opacity:0,transition:(r=e==null?void 0:e.exit)!=null?r:Ku.exit(Ih.exit,n),transitionEnd:t==null?void 0:t.exit}}},oz={initial:"exit",animate:"enter",exit:"exit",variants:ime},ome=S.forwardRef(function(t,n){const{unmountOnExit:r,in:i,className:o,transition:a,transitionEnd:s,delay:l,...u}=t,d=i||r?"enter":"exit",p=r?i&&r:!0,m={transition:a,transitionEnd:s,delay:l};return g.jsx(rp,{custom:m,children:p&&g.jsx(su.div,{ref:n,className:xt("chakra-fade",o),custom:m,...oz,animate:d,...u})})});ome.displayName="Fade";var ame={exit:({reverse:e,initialScale:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{opacity:0,...e?{scale:t,transitionEnd:r==null?void 0:r.exit}:{transitionEnd:{scale:t,...r==null?void 0:r.exit}},transition:(o=n==null?void 0:n.exit)!=null?o:Ku.exit(Ih.exit,i)}},enter:({transitionEnd:e,transition:t,delay:n})=>{var r;return{opacity:1,scale:1,transition:(r=t==null?void 0:t.enter)!=null?r:Ku.enter(Ih.enter,n),transitionEnd:e==null?void 0:e.enter}}},az={initial:"exit",animate:"enter",exit:"exit",variants:ame},sme=S.forwardRef(function(t,n){const{unmountOnExit:r,in:i,reverse:o=!0,initialScale:a=.95,className:s,transition:l,transitionEnd:u,delay:d,...p}=t,m=r?i&&r:!0,y=i||r?"enter":"exit",b={initialScale:a,reverse:o,transition:l,transitionEnd:u,delay:d};return g.jsx(rp,{custom:b,children:m&&g.jsx(su.div,{ref:n,className:xt("chakra-offset-slide",s),...az,animate:y,custom:b,...p})})});sme.displayName="ScaleFade";var lme={initial:({offsetX:e,offsetY:t,transition:n,transitionEnd:r,delay:i})=>{var o;return{opacity:0,x:e,y:t,transition:(o=n==null?void 0:n.exit)!=null?o:Ku.exit(Ih.exit,i),transitionEnd:r==null?void 0:r.exit}},enter:({transition:e,transitionEnd:t,delay:n})=>{var r;return{opacity:1,x:0,y:0,transition:(r=e==null?void 0:e.enter)!=null?r:Ku.enter(Ih.enter,n),transitionEnd:t==null?void 0:t.enter}},exit:({offsetY:e,offsetX:t,transition:n,transitionEnd:r,reverse:i,delay:o})=>{var a;const s={x:t,y:e};return{opacity:0,transition:(a=n==null?void 0:n.exit)!=null?a:Ku.exit(Ih.exit,o),...i?{...s,transitionEnd:r==null?void 0:r.exit}:{transitionEnd:{...s,...r==null?void 0:r.exit}}}}},B_={initial:"initial",animate:"enter",exit:"exit",variants:lme},ume=S.forwardRef(function(t,n){const{unmountOnExit:r,in:i,reverse:o=!0,className:a,offsetX:s=0,offsetY:l=8,transition:u,transitionEnd:d,delay:p,...m}=t,y=r?i&&r:!0,b=i||r?"enter":"exit",w={offsetX:s,offsetY:l,reverse:o,transition:u,transitionEnd:d,delay:p};return g.jsx(rp,{custom:w,children:y&&g.jsx(su.div,{ref:n,className:xt("chakra-offset-slide",a),custom:w,...B_,animate:b,...m})})});ume.displayName="SlideFade";var om=Ze(function(t,n){const{className:r,motionProps:i,...o}=t,{reduceMotion:a}=u8(),{getPanelProps:s,isOpen:l}=s8(),u=s(o,n),d=xt("chakra-accordion__panel",r),p=Dw();a||delete u.hidden;const m=g.jsx(Ne.div,{...u,__css:p.panel,className:d});return a?m:g.jsx(iz,{in:l,...i,children:m})});om.displayName="AccordionPanel";var c8=Ze(function({children:t,reduceMotion:n,...r},i){const o=Yi("Accordion",r),a=fr(r),{htmlProps:s,descendants:l,...u}=Yge(a),d=S.useMemo(()=>({...u,reduceMotion:!!n}),[u,n]);return g.jsx(Gge,{value:l,children:g.jsx(Xge,{value:d,children:g.jsx(Uge,{value:o,children:g.jsx(Ne.div,{ref:i,...s,className:xt("chakra-accordion",r.className),__css:o.root,children:t})})})})});c8.displayName="Accordion";var z_=Ze(function(t,n){const{htmlWidth:r,htmlHeight:i,alt:o,...a}=t;return g.jsx("img",{width:r,height:i,ref:n,alt:o,...a})});z_.displayName="NativeImage";function cme(e){const{loading:t,src:n,srcSet:r,onLoad:i,onError:o,crossOrigin:a,sizes:s,ignoreFallback:l}=e,[u,d]=S.useState("pending");S.useEffect(()=>{d(n?"loading":"pending")},[n]);const p=S.useRef(),m=S.useCallback(()=>{if(!n)return;y();const b=new Image;b.src=n,a&&(b.crossOrigin=a),r&&(b.srcset=r),s&&(b.sizes=s),t&&(b.loading=t),b.onload=w=>{y(),d("loaded"),i==null||i(w)},b.onerror=w=>{y(),d("failed"),o==null||o(w)},p.current=b},[n,a,r,s,i,o,t]),y=()=>{p.current&&(p.current.onload=null,p.current.onerror=null,p.current=null)};return Vl(()=>{if(!l)return u==="loading"&&m(),()=>{y()}},[u,m,l]),l?"loaded":u}var dme=(e,t)=>e!=="loaded"&&t==="beforeLoadOrError"||e==="failed"&&t==="onError";function fme(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}var jw=Ze(function(t,n){const{fallbackSrc:r,fallback:i,src:o,srcSet:a,align:s,fit:l,loading:u,ignoreFallback:d,crossOrigin:p,fallbackStrategy:m="beforeLoadOrError",referrerPolicy:y,...b}=t,w=r!==void 0||i!==void 0,E=u!=null||d||!w,_=cme({...t,ignoreFallback:E}),k=dme(_,m),T={ref:n,objectFit:l,objectPosition:s,...E?b:fme(b,["onError","onLoad"])};return k?i||g.jsx(Ne.img,{as:z_,className:"chakra-image__placeholder",src:r,...T}):g.jsx(Ne.img,{as:z_,src:o,srcSet:a,crossOrigin:p,loading:u,referrerPolicy:y,className:"chakra-image",...T})});jw.displayName="Image";function d8(e){return S.Children.toArray(e).filter(t=>S.isValidElement(t))}var[hme,pme]=Pn({strict:!1,name:"ButtonGroupContext"}),gme={horizontal:{"> *:first-of-type:not(:last-of-type)":{borderEndRadius:0},"> *:not(:first-of-type):not(:last-of-type)":{borderRadius:0},"> *:not(:first-of-type):last-of-type":{borderStartRadius:0}},vertical:{"> *:first-of-type:not(:last-of-type)":{borderBottomRadius:0},"> *:not(:first-of-type):not(:last-of-type)":{borderRadius:0},"> *:not(:first-of-type):last-of-type":{borderTopRadius:0}}},mme={horizontal:e=>({"& > *:not(style) ~ *:not(style)":{marginStart:e}}),vertical:e=>({"& > *:not(style) ~ *:not(style)":{marginTop:e}})},Gi=Ze(function(t,n){const{size:r,colorScheme:i,variant:o,className:a,spacing:s="0.5rem",isAttached:l,isDisabled:u,orientation:d="horizontal",...p}=t,m=xt("chakra-button__group",a),y=S.useMemo(()=>({size:r,colorScheme:i,variant:o,isDisabled:u}),[r,i,o,u]);let b={display:"inline-flex",...l?gme[d]:mme[d](s)};const w=d==="vertical";return g.jsx(hme,{value:y,children:g.jsx(Ne.div,{ref:n,role:"group",__css:b,className:m,"data-attached":l?"":void 0,"data-orientation":d,flexDir:w?"column":void 0,...p})})});Gi.displayName="ButtonGroup";function vme(e){const[t,n]=S.useState(!e);return{ref:S.useCallback(o=>{o&&n(o.tagName==="BUTTON")},[]),type:t?"button":void 0}}function H_(e){const{children:t,className:n,...r}=e,i=S.isValidElement(t)?S.cloneElement(t,{"aria-hidden":!0,focusable:!1}):t,o=xt("chakra-button__icon",n);return g.jsx(Ne.span,{display:"inline-flex",alignSelf:"center",flexShrink:0,...r,className:o,children:i})}H_.displayName="ButtonIcon";function a3(e){const{label:t,placement:n,spacing:r="0.5rem",children:i=g.jsx(p0,{color:"currentColor",width:"1em",height:"1em"}),className:o,__css:a,...s}=e,l=xt("chakra-button__spinner",o),u=n==="start"?"marginEnd":"marginStart",d=S.useMemo(()=>({display:"flex",alignItems:"center",position:t?"relative":"absolute",[u]:t?r:0,fontSize:"1em",lineHeight:"normal",...a}),[a,t,u,r]);return g.jsx(Ne.div,{className:l,...s,__css:d,children:i})}a3.displayName="ButtonSpinner";var ss=Ze((e,t)=>{const n=pme(),r=au("Button",{...n,...e}),{isDisabled:i=n==null?void 0:n.isDisabled,isLoading:o,isActive:a,children:s,leftIcon:l,rightIcon:u,loadingText:d,iconSpacing:p="0.5rem",type:m,spinner:y,spinnerPlacement:b="start",className:w,as:E,..._}=fr(e),k=S.useMemo(()=>{const D={...r==null?void 0:r._focus,zIndex:1};return{display:"inline-flex",appearance:"none",alignItems:"center",justifyContent:"center",userSelect:"none",position:"relative",whiteSpace:"nowrap",verticalAlign:"middle",outline:"none",...r,...!!n&&{_focus:D}}},[r,n]),{ref:T,type:L}=vme(E),O={rightIcon:u,leftIcon:l,iconSpacing:p,children:s};return g.jsxs(Ne.button,{ref:Bge(t,T),as:E,type:m??L,"data-active":Bt(a),"data-loading":Bt(o),__css:k,className:xt("chakra-button",w),..._,disabled:i||o,children:[o&&b==="start"&&g.jsx(a3,{className:"chakra-button__spinner--start",label:d,placement:"start",spacing:p,children:y}),o?d||g.jsx(Ne.span,{opacity:0,children:g.jsx(zA,{...O})}):g.jsx(zA,{...O}),o&&b==="end"&&g.jsx(a3,{className:"chakra-button__spinner--end",label:d,placement:"end",spacing:p,children:y})]})});ss.displayName="Button";function zA(e){const{leftIcon:t,rightIcon:n,children:r,iconSpacing:i}=e;return g.jsxs(g.Fragment,{children:[t&&g.jsx(H_,{marginEnd:i,children:t}),r,n&&g.jsx(H_,{marginStart:i,children:n})]})}var ls=Ze((e,t)=>{const{icon:n,children:r,isRound:i,"aria-label":o,...a}=e,s=n||r,l=S.isValidElement(s)?S.cloneElement(s,{"aria-hidden":!0,focusable:!1}):null;return g.jsx(ss,{padding:"0",borderRadius:i?"full":void 0,ref:t,"aria-label":o,...a,children:l})});ls.displayName="IconButton";var[mNe,yme]=Pn({name:"CheckboxGroupContext",strict:!1});function bme(e){return g.jsx(Ne.svg,{width:"1.2em",viewBox:"0 0 12 10",style:{fill:"none",strokeWidth:2,stroke:"currentColor",strokeDasharray:16},...e,children:g.jsx("polyline",{points:"1.5 6 4.5 9 10.5 1"})})}function xme(e){return g.jsx(Ne.svg,{width:"1.2em",viewBox:"0 0 24 24",style:{stroke:"currentColor",strokeWidth:4},...e,children:g.jsx("line",{x1:"21",x2:"3",y1:"12",y2:"12"})})}function Sme(e){const{isIndeterminate:t,isChecked:n,...r}=e,i=t?xme:bme;return n||t?g.jsx(Ne.div,{style:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%"},children:g.jsx(i,{...r})}):null}var[wme,sz]=Pn({name:"FormControlStylesContext",errorMessage:`useFormControlStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),[Cme,ip]=Pn({strict:!1,name:"FormControlContext"});function _me(e){const{id:t,isRequired:n,isInvalid:r,isDisabled:i,isReadOnly:o,...a}=e,s=S.useId(),l=t||`field-${s}`,u=`${l}-label`,d=`${l}-feedback`,p=`${l}-helptext`,[m,y]=S.useState(!1),[b,w]=S.useState(!1),[E,_]=S.useState(!1),k=S.useCallback((I={},N=null)=>({id:p,...I,ref:Rn(N,W=>{W&&w(!0)})}),[p]),T=S.useCallback((I={},N=null)=>{var W,B;return{...I,ref:N,"data-focus":Bt(E),"data-disabled":Bt(i),"data-invalid":Bt(r),"data-readonly":Bt(o),id:(W=I.id)!=null?W:u,htmlFor:(B=I.htmlFor)!=null?B:l}},[l,i,E,r,o,u]),L=S.useCallback((I={},N=null)=>({id:d,...I,ref:Rn(N,W=>{W&&y(!0)}),"aria-live":"polite"}),[d]),O=S.useCallback((I={},N=null)=>({...I,...a,ref:N,role:"group"}),[a]),D=S.useCallback((I={},N=null)=>({...I,ref:N,role:"presentation","aria-hidden":!0,children:I.children||"*"}),[]);return{isRequired:!!n,isInvalid:!!r,isReadOnly:!!o,isDisabled:!!i,isFocused:!!E,onFocus:()=>_(!0),onBlur:()=>_(!1),hasFeedbackText:m,setHasFeedbackText:y,hasHelpText:b,setHasHelpText:w,id:l,labelId:u,feedbackId:d,helpTextId:p,htmlProps:a,getHelpTextProps:k,getErrorMessageProps:L,getRootProps:O,getLabelProps:T,getRequiredIndicatorProps:D}}var sn=Ze(function(t,n){const r=Yi("Form",t),i=fr(t),{getRootProps:o,htmlProps:a,...s}=_me(i),l=xt("chakra-form-control",t.className);return g.jsx(Cme,{value:s,children:g.jsx(wme,{value:r,children:g.jsx(Ne.div,{...o({},n),className:l,__css:r.container})})})});sn.displayName="FormControl";var sr=Ze(function(t,n){const r=ip(),i=sz(),o=xt("chakra-form__helper-text",t.className);return g.jsx(Ne.div,{...r==null?void 0:r.getHelpTextProps(t,n),__css:i.helperText,className:o})});sr.displayName="FormHelperText";var[kme,Eme]=Pn({name:"FormErrorStylesContext",errorMessage:`useFormErrorStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),lr=Ze((e,t)=>{const n=Yi("FormError",e),r=fr(e),i=ip();return i!=null&&i.isInvalid?g.jsx(kme,{value:n,children:g.jsx(Ne.div,{...i==null?void 0:i.getErrorMessageProps(r,t),className:xt("chakra-form__error-message",e.className),__css:{display:"flex",alignItems:"center",...n.text}})}):null});lr.displayName="FormErrorMessage";var Pme=Ze((e,t)=>{const n=Eme(),r=ip();if(!(r!=null&&r.isInvalid))return null;const i=xt("chakra-form__error-icon",e.className);return g.jsx(ja,{ref:t,"aria-hidden":!0,...e,__css:n.icon,className:i,children:g.jsx("path",{fill:"currentColor",d:"M11.983,0a12.206,12.206,0,0,0-8.51,3.653A11.8,11.8,0,0,0,0,12.207,11.779,11.779,0,0,0,11.8,24h.214A12.111,12.111,0,0,0,24,11.791h0A11.766,11.766,0,0,0,11.983,0ZM10.5,16.542a1.476,1.476,0,0,1,1.449-1.53h.027a1.527,1.527,0,0,1,1.523,1.47,1.475,1.475,0,0,1-1.449,1.53h-.027A1.529,1.529,0,0,1,10.5,16.542ZM11,12.5v-6a1,1,0,0,1,2,0v6a1,1,0,1,1-2,0Z"})})});Pme.displayName="FormErrorIcon";var Sn=Ze(function(t,n){var r;const i=au("FormLabel",t),o=fr(t),{className:a,children:s,requiredIndicator:l=g.jsx(lz,{}),optionalIndicator:u=null,...d}=o,p=ip(),m=(r=p==null?void 0:p.getLabelProps(d,n))!=null?r:{ref:n,...d};return g.jsxs(Ne.label,{...m,className:xt("chakra-form__label",o.className),__css:{display:"block",textAlign:"start",...i},children:[s,p!=null&&p.isRequired?l:u]})});Sn.displayName="FormLabel";var lz=Ze(function(t,n){const r=ip(),i=sz();if(!(r!=null&&r.isRequired))return null;const o=xt("chakra-form__required-indicator",t.className);return g.jsx(Ne.span,{...r==null?void 0:r.getRequiredIndicatorProps(t,n),__css:i.requiredIndicator,className:o})});lz.displayName="RequiredIndicator";function f8(e){const{isDisabled:t,isInvalid:n,isReadOnly:r,isRequired:i,...o}=h8(e);return{...o,disabled:t,readOnly:r,required:i,"aria-invalid":Uu(n),"aria-required":Uu(i),"aria-readonly":Uu(r)}}function h8(e){var t,n,r;const i=ip(),{id:o,disabled:a,readOnly:s,required:l,isRequired:u,isInvalid:d,isReadOnly:p,isDisabled:m,onFocus:y,onBlur:b,...w}=e,E=e["aria-describedby"]?[e["aria-describedby"]]:[];return i!=null&&i.hasFeedbackText&&(i!=null&&i.isInvalid)&&E.push(i.feedbackId),i!=null&&i.hasHelpText&&E.push(i.helpTextId),{...w,"aria-describedby":E.join(" ")||void 0,id:o??(i==null?void 0:i.id),isDisabled:(t=a??m)!=null?t:i==null?void 0:i.isDisabled,isReadOnly:(n=s??p)!=null?n:i==null?void 0:i.isReadOnly,isRequired:(r=l??u)!=null?r:i==null?void 0:i.isRequired,isInvalid:d??(i==null?void 0:i.isInvalid),onFocus:ht(i==null?void 0:i.onFocus,y),onBlur:ht(i==null?void 0:i.onBlur,b)}}var Tme={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"},HA=!1,s2=null,qh=!1,W_=!1,U_=new Set;function p8(e,t){U_.forEach(n=>n(e,t))}var Mme=typeof window<"u"&&window.navigator!=null?/^Mac/.test(window.navigator.platform):!1;function Lme(e){return!(e.metaKey||!Mme&&e.altKey||e.ctrlKey||e.key==="Control"||e.key==="Shift"||e.key==="Meta")}function WA(e){qh=!0,Lme(e)&&(s2="keyboard",p8("keyboard",e))}function xg(e){if(s2="pointer",e.type==="mousedown"||e.type==="pointerdown"){qh=!0;const t=e.composedPath?e.composedPath()[0]:e.target;let n=!1;try{n=t.matches(":focus-visible")}catch{}if(n)return;p8("pointer",e)}}function Ame(e){return e.mozInputSource===0&&e.isTrusted?!0:e.detail===0&&!e.pointerType}function Ome(e){Ame(e)&&(qh=!0,s2="virtual")}function Rme(e){e.target===window||e.target===document||(!qh&&!W_&&(s2="virtual",p8("virtual",e)),qh=!1,W_=!1)}function Ime(){qh=!1,W_=!0}function UA(){return s2!=="pointer"}function Dme(){if(typeof window>"u"||HA)return;const{focus:e}=HTMLElement.prototype;HTMLElement.prototype.focus=function(...n){qh=!0,e.apply(this,n)},document.addEventListener("keydown",WA,!0),document.addEventListener("keyup",WA,!0),document.addEventListener("click",Ome,!0),window.addEventListener("focus",Rme,!0),window.addEventListener("blur",Ime,!1),typeof PointerEvent<"u"?(document.addEventListener("pointerdown",xg,!0),document.addEventListener("pointermove",xg,!0),document.addEventListener("pointerup",xg,!0)):(document.addEventListener("mousedown",xg,!0),document.addEventListener("mousemove",xg,!0),document.addEventListener("mouseup",xg,!0)),HA=!0}function uz(e){Dme(),e(UA());const t=()=>e(UA());return U_.add(t),()=>{U_.delete(t)}}function jme(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function cz(e={}){const t=h8(e),{isDisabled:n,isReadOnly:r,isRequired:i,isInvalid:o,id:a,onBlur:s,onFocus:l,"aria-describedby":u}=t,{defaultChecked:d,isChecked:p,isFocusable:m,onChange:y,isIndeterminate:b,name:w,value:E,tabIndex:_=void 0,"aria-label":k,"aria-labelledby":T,"aria-invalid":L,...O}=e,D=jme(O,["isDisabled","isReadOnly","isRequired","isInvalid","id","onBlur","onFocus","aria-describedby"]),I=Qr(y),N=Qr(s),W=Qr(l),[B,K]=S.useState(!1),[ne,z]=S.useState(!1),[$,V]=S.useState(!1),[X,Q]=S.useState(!1);S.useEffect(()=>uz(K),[]);const G=S.useRef(null),[Y,ee]=S.useState(!0),[fe,_e]=S.useState(!!d),we=p!==void 0,xe=we?p:fe,Le=S.useCallback(Fe=>{if(r||n){Fe.preventDefault();return}we||_e(xe?Fe.target.checked:b?!0:Fe.target.checked),I==null||I(Fe)},[r,n,xe,we,b,I]);Vl(()=>{G.current&&(G.current.indeterminate=Boolean(b))},[b]),rc(()=>{n&&z(!1)},[n,z]),Vl(()=>{const Fe=G.current;Fe!=null&&Fe.form&&(Fe.form.onreset=()=>{_e(!!d)})},[]);const Se=n&&!m,Je=S.useCallback(Fe=>{Fe.key===" "&&Q(!0)},[Q]),Xe=S.useCallback(Fe=>{Fe.key===" "&&Q(!1)},[Q]);Vl(()=>{if(!G.current)return;G.current.checked!==xe&&_e(G.current.checked)},[G.current]);const tt=S.useCallback((Fe={},at=null)=>{const jt=mt=>{ne&&mt.preventDefault(),Q(!0)};return{...Fe,ref:at,"data-active":Bt(X),"data-hover":Bt($),"data-checked":Bt(xe),"data-focus":Bt(ne),"data-focus-visible":Bt(ne&&B),"data-indeterminate":Bt(b),"data-disabled":Bt(n),"data-invalid":Bt(o),"data-readonly":Bt(r),"aria-hidden":!0,onMouseDown:ht(Fe.onMouseDown,jt),onMouseUp:ht(Fe.onMouseUp,()=>Q(!1)),onMouseEnter:ht(Fe.onMouseEnter,()=>V(!0)),onMouseLeave:ht(Fe.onMouseLeave,()=>V(!1))}},[X,xe,n,ne,B,$,b,o,r]),yt=S.useCallback((Fe={},at=null)=>({...D,...Fe,ref:Rn(at,jt=>{jt&&ee(jt.tagName==="LABEL")}),onClick:ht(Fe.onClick,()=>{var jt;Y||((jt=G.current)==null||jt.click(),requestAnimationFrame(()=>{var mt;(mt=G.current)==null||mt.focus()}))}),"data-disabled":Bt(n),"data-checked":Bt(xe),"data-invalid":Bt(o)}),[D,n,xe,o,Y]),Be=S.useCallback((Fe={},at=null)=>({...Fe,ref:Rn(G,at),type:"checkbox",name:w,value:E,id:a,tabIndex:_,onChange:ht(Fe.onChange,Le),onBlur:ht(Fe.onBlur,N,()=>z(!1)),onFocus:ht(Fe.onFocus,W,()=>z(!0)),onKeyDown:ht(Fe.onKeyDown,Je),onKeyUp:ht(Fe.onKeyUp,Xe),required:i,checked:xe,disabled:Se,readOnly:r,"aria-label":k,"aria-labelledby":T,"aria-invalid":L?Boolean(L):o,"aria-describedby":u,"aria-disabled":n,style:Tme}),[w,E,a,Le,N,W,Je,Xe,i,xe,Se,r,k,T,L,o,u,n,_]),Ae=S.useCallback((Fe={},at=null)=>({...Fe,ref:at,onMouseDown:ht(Fe.onMouseDown,VA),onTouchStart:ht(Fe.onTouchStart,VA),"data-disabled":Bt(n),"data-checked":Bt(xe),"data-invalid":Bt(o)}),[xe,n,o]);return{state:{isInvalid:o,isFocused:ne,isChecked:xe,isActive:X,isHovered:$,isIndeterminate:b,isDisabled:n,isReadOnly:r,isRequired:i},getRootProps:yt,getCheckboxProps:tt,getInputProps:Be,getLabelProps:Ae,htmlProps:D}}function VA(e){e.preventDefault(),e.stopPropagation()}var Nme={display:"inline-flex",alignItems:"center",justifyContent:"center",verticalAlign:"top",userSelect:"none",flexShrink:0},$me={cursor:"pointer",display:"inline-flex",alignItems:"center",verticalAlign:"top",position:"relative"},Fme=nf({from:{opacity:0,strokeDashoffset:16,transform:"scale(0.95)"},to:{opacity:1,strokeDashoffset:0,transform:"scale(1)"}}),Bme=nf({from:{opacity:0},to:{opacity:1}}),zme=nf({from:{transform:"scaleX(0.65)"},to:{transform:"scaleX(1)"}}),dz=Ze(function(t,n){const r=yme(),i={...r,...t},o=Yi("Checkbox",i),a=fr(t),{spacing:s="0.5rem",className:l,children:u,iconColor:d,iconSize:p,icon:m=g.jsx(Sme,{}),isChecked:y,isDisabled:b=r==null?void 0:r.isDisabled,onChange:w,inputProps:E,..._}=a;let k=y;r!=null&&r.value&&a.value&&(k=r.value.includes(a.value));let T=w;r!=null&&r.onChange&&a.value&&(T=Sw(r.onChange,w));const{state:L,getInputProps:O,getCheckboxProps:D,getLabelProps:I,getRootProps:N}=cz({..._,isDisabled:b,isChecked:k,onChange:T}),W=S.useMemo(()=>({animation:L.isIndeterminate?`${Bme} 20ms linear, ${zme} 200ms linear`:`${Fme} 200ms linear`,fontSize:p,color:d,...o.icon}),[d,p,,L.isIndeterminate,o.icon]),B=S.cloneElement(m,{__css:W,isIndeterminate:L.isIndeterminate,isChecked:L.isChecked});return g.jsxs(Ne.label,{__css:{...$me,...o.container},className:xt("chakra-checkbox",l),...N(),children:[g.jsx("input",{className:"chakra-checkbox__input",...O(E,n)}),g.jsx(Ne.span,{__css:{...Nme,...o.control},className:"chakra-checkbox__control",...D(),children:B}),u&&g.jsx(Ne.span,{className:"chakra-checkbox__label",...I(),__css:{marginStart:s,...o.label},children:u})]})});dz.displayName="Checkbox";function Hme(e){const t=parseFloat(e);return typeof t!="number"||Number.isNaN(t)?0:t}function g8(e,t){let n=Hme(e);const r=10**(t??10);return n=Math.round(n*r)/r,t?n.toFixed(t):n.toString()}function V_(e){if(!Number.isFinite(e))return 0;let t=1,n=0;for(;Math.round(e*t)/t!==e;)t*=10,n+=1;return n}function GA(e,t,n){return(e-t)*100/(n-t)}function Wme(e,t,n){return(n-t)*e+t}function qA(e,t,n){const r=Math.round((e-t)/n)*n+t,i=V_(n);return g8(r,i)}function Qx(e,t,n){return e==null?e:(n{var B;return r==null?"":(B=lC(r,o,n))!=null?B:""}),m=typeof i<"u",y=m?i:d,b=fz(dd(y),o),w=n??b,E=S.useCallback(B=>{B!==y&&(m||p(B.toString()),u==null||u(B.toString(),dd(B)))},[u,m,y]),_=S.useCallback(B=>{let K=B;return l&&(K=Qx(K,a,s)),g8(K,w)},[w,l,s,a]),k=S.useCallback((B=o)=>{let K;y===""?K=dd(B):K=dd(y)+B,K=_(K),E(K)},[_,o,E,y]),T=S.useCallback((B=o)=>{let K;y===""?K=dd(-B):K=dd(y)-B,K=_(K),E(K)},[_,o,E,y]),L=S.useCallback(()=>{var B;let K;r==null?K="":K=(B=lC(r,o,n))!=null?B:a,E(K)},[r,n,o,E,a]),O=S.useCallback(B=>{var K;const ne=(K=lC(B,o,w))!=null?K:a;E(ne)},[w,o,E,a]),D=dd(y);return{isOutOfRange:D>s||D{const o=typeof e=="function"?e():e??document;if(!(!n||!o))return o.addEventListener(t,i,r),()=>{o.removeEventListener(t,i,r)}},[t,e,r,i,n]),()=>{const o=typeof e=="function"?e():e??document;o==null||o.removeEventListener(t,i,r)}}function Vme(e){return"current"in e}var hz=()=>typeof window<"u";function Gme(){var e;const t=navigator.userAgentData;return(e=t==null?void 0:t.platform)!=null?e:navigator.platform}var qme=e=>hz()&&e.test(navigator.vendor),Kme=e=>hz()&&e.test(Gme()),Yme=()=>Kme(/mac|iphone|ipad|ipod/i),Xme=()=>Yme()&&qme(/apple/i);function Zme(e){const{ref:t,elements:n,enabled:r}=e,i=()=>{var o,a;return(a=(o=t.current)==null?void 0:o.ownerDocument)!=null?a:document};Dh(i,"pointerdown",o=>{if(!Xme()||!r)return;const a=o.target,l=(n??[t]).some(u=>{const d=Vme(u)?u.current:u;return(d==null?void 0:d.contains(a))||d===a});i().activeElement!==a&&l&&(o.preventDefault(),a.focus())})}function m8(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,o;for(o=0;o=0)&&(n[i]=e[i]);return n}var An={},Qme={get exports(){return An},set exports(e){An=e}},Jme="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",e0e=Jme,t0e=e0e;function pz(){}function gz(){}gz.resetWarningCache=pz;var n0e=function(){function e(r,i,o,a,s,l){if(l!==t0e){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:gz,resetWarningCache:pz};return n.PropTypes=n,n};Qme.exports=n0e();var G_="data-focus-lock",mz="data-focus-lock-disabled",r0e="data-no-focus-lock",i0e="data-autofocus-inside",o0e="data-no-autofocus";function a0e(e,t){return typeof e=="function"?e(t):e&&(e.current=t),e}function s0e(e,t){var n=S.useState(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(r){var i=n.value;i!==r&&(n.value=r,n.callback(r,i))}}}})[0];return n.callback=t,n.facade}function vz(e,t){return s0e(t||null,function(n){return e.forEach(function(r){return a0e(r,n)})})}var uC={width:"1px",height:"0px",padding:0,overflow:"hidden",position:"fixed",top:"1px",left:"1px"};function yz(e){return e}function bz(e,t){t===void 0&&(t=yz);var n=[],r=!1,i={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(o){var a=t(o,r);return n.push(a),function(){n=n.filter(function(s){return s!==a})}},assignSyncMedium:function(o){for(r=!0;n.length;){var a=n;n=[],a.forEach(o)}n={push:function(s){return o(s)},filter:function(){return n}}},assignMedium:function(o){r=!0;var a=[];if(n.length){var s=n;n=[],s.forEach(o),a=n}var l=function(){var d=a;a=[],d.forEach(o)},u=function(){return Promise.resolve().then(l)};u(),n={push:function(d){a.push(d),u()},filter:function(d){return a=a.filter(d),n}}}};return i}function v8(e,t){return t===void 0&&(t=yz),bz(e,t)}function xz(e){e===void 0&&(e={});var t=bz(null);return t.options=Nl({async:!0,ssr:!1},e),t}var Sz=function(e){var t=e.sideCar,n=YB(e,["sideCar"]);if(!t)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw new Error("Sidecar medium not found");return S.createElement(r,Nl({},n))};Sz.isSideCarExport=!0;function l0e(e,t){return e.useMedium(t),Sz}var wz=v8({},function(e){var t=e.target,n=e.currentTarget;return{target:t,currentTarget:n}}),Cz=v8(),u0e=v8(),c0e=xz({async:!0}),d0e=[],y8=S.forwardRef(function(t,n){var r,i=S.useState(),o=i[0],a=i[1],s=S.useRef(),l=S.useRef(!1),u=S.useRef(null),d=t.children,p=t.disabled,m=t.noFocusGuards,y=t.persistentFocus,b=t.crossFrame,w=t.autoFocus;t.allowTextSelection;var E=t.group,_=t.className,k=t.whiteList,T=t.hasPositiveIndices,L=t.shards,O=L===void 0?d0e:L,D=t.as,I=D===void 0?"div":D,N=t.lockProps,W=N===void 0?{}:N,B=t.sideCar,K=t.returnFocus,ne=t.focusOptions,z=t.onActivation,$=t.onDeactivation,V=S.useState({}),X=V[0],Q=S.useCallback(function(){u.current=u.current||document&&document.activeElement,s.current&&z&&z(s.current),l.current=!0},[z]),G=S.useCallback(function(){l.current=!1,$&&$(s.current)},[$]);S.useEffect(function(){p||(u.current=null)},[]);var Y=S.useCallback(function(Je){var Xe=u.current;if(Xe&&Xe.focus){var tt=typeof K=="function"?K(Xe):K;if(tt){var yt=typeof tt=="object"?tt:void 0;u.current=null,Je?Promise.resolve().then(function(){return Xe.focus(yt)}):Xe.focus(yt)}}},[K]),ee=S.useCallback(function(Je){l.current&&wz.useMedium(Je)},[]),fe=Cz.useMedium,_e=S.useCallback(function(Je){s.current!==Je&&(s.current=Je,a(Je))},[]),we=pn((r={},r[mz]=p&&"disabled",r[G_]=E,r),W),xe=m!==!0,Le=xe&&m!=="tail",Se=vz([n,_e]);return S.createElement(S.Fragment,null,xe&&[S.createElement("div",{key:"guard-first","data-focus-guard":!0,tabIndex:p?-1:0,style:uC}),T?S.createElement("div",{key:"guard-nearest","data-focus-guard":!0,tabIndex:p?-1:1,style:uC}):null],!p&&S.createElement(B,{id:X,sideCar:c0e,observed:o,disabled:p,persistentFocus:y,crossFrame:b,autoFocus:w,whiteList:k,shards:O,onActivation:Q,onDeactivation:G,returnFocus:Y,focusOptions:ne}),S.createElement(I,pn({ref:Se},we,{className:_,onBlur:fe,onFocus:ee}),d),Le&&S.createElement("div",{"data-focus-guard":!0,tabIndex:p?-1:0,style:uC}))});y8.propTypes={};y8.defaultProps={children:void 0,disabled:!1,returnFocus:!1,focusOptions:void 0,noFocusGuards:!1,autoFocus:!0,persistentFocus:!1,crossFrame:!0,hasPositiveIndices:void 0,allowTextSelection:void 0,group:void 0,className:void 0,whiteList:void 0,shards:void 0,as:"div",lockProps:{},onActivation:void 0,onDeactivation:void 0};const _z=y8;function s3(e,t){return s3=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,i){return r.__proto__=i,r},s3(e,t)}function b8(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,s3(e,t)}function Ks(e){return Ks=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ks(e)}function f0e(e,t){if(Ks(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||"default");if(Ks(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function kz(e){var t=f0e(e,"string");return Ks(t)==="symbol"?t:String(t)}function fs(e,t,n){return t=kz(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function h0e(e,t){function n(r){return r.displayName||r.name||"Component"}return function(i){var o=[],a;function s(){a=e(o.map(function(u){return u.props})),t(a)}var l=function(u){b8(d,u);function d(){return u.apply(this,arguments)||this}d.peek=function(){return a};var p=d.prototype;return p.componentDidMount=function(){o.push(this),s()},p.componentDidUpdate=function(){s()},p.componentWillUnmount=function(){var y=o.indexOf(this);o.splice(y,1),s()},p.render=function(){return Ke.createElement(i,this.props)},d}(S.PureComponent);return fs(l,"displayName","SideEffect("+n(i)+")"),l}}var lu=function(e){for(var t=Array(e.length),n=0;n=0}).sort(S0e)},w0e=["button:enabled","select:enabled","textarea:enabled","input:enabled","a[href]","area[href]","summary","iframe","object","embed","audio[controls]","video[controls]","[tabindex]","[contenteditable]","[autofocus]"],S8=w0e.join(","),C0e="".concat(S8,", [data-focus-guard]"),Dz=function(e,t){return lu((e.shadowRoot||e).children).reduce(function(n,r){return n.concat(r.matches(t?C0e:S8)?[r]:[],Dz(r))},[])},_0e=function(e,t){var n;return e instanceof HTMLIFrameElement&&(!((n=e.contentDocument)===null||n===void 0)&&n.body)?Nw([e.contentDocument.body],t):[e]},Nw=function(e,t){return e.reduce(function(n,r){var i,o=Dz(r,t),a=(i=[]).concat.apply(i,o.map(function(s){return _0e(s,t)}));return n.concat(a,r.parentNode?lu(r.parentNode.querySelectorAll(S8)).filter(function(s){return s===r}):[])},[])},k0e=function(e){var t=e.querySelectorAll("[".concat(i0e,"]"));return lu(t).map(function(n){return Nw([n])}).reduce(function(n,r){return n.concat(r)},[])},w8=function(e,t){return lu(e).filter(function(n){return Mz(t,n)}).filter(function(n){return y0e(n)})},KA=function(e,t){return t===void 0&&(t=new Map),lu(e).filter(function(n){return Lz(t,n)})},q_=function(e,t,n){return Iz(w8(Nw(e,n),t),!0,n)},YA=function(e,t){return Iz(w8(Nw(e),t),!1)},E0e=function(e,t){return w8(k0e(e),t)},_m=function(e,t){return e.shadowRoot?_m(e.shadowRoot,t):Object.getPrototypeOf(e).contains!==void 0&&Object.getPrototypeOf(e).contains.call(e,t)?!0:lu(e.children).some(function(n){var r;if(n instanceof HTMLIFrameElement){var i=(r=n.contentDocument)===null||r===void 0?void 0:r.body;return i?_m(i,t):!1}return _m(n,t)})},P0e=function(e){for(var t=new Set,n=e.length,r=0;r0&&t.add(i),(o&Node.DOCUMENT_POSITION_CONTAINS)>0&&t.add(r)}return e.filter(function(a,s){return!t.has(s)})},jz=function(e){return e.parentNode?jz(e.parentNode):e},C8=function(e){var t=l3(e);return t.filter(Boolean).reduce(function(n,r){var i=r.getAttribute(G_);return n.push.apply(n,i?P0e(lu(jz(r).querySelectorAll("[".concat(G_,'="').concat(i,'"]:not([').concat(mz,'="disabled"])')))):[r]),n},[])},T0e=function(e){try{return e()}catch{return}},Ty=function(e){if(e===void 0&&(e=document),!(!e||!e.activeElement)){var t=e.activeElement;return t.shadowRoot?Ty(t.shadowRoot):t instanceof HTMLIFrameElement&&T0e(function(){return t.contentWindow.document})?Ty(t.contentWindow.document):t}},M0e=function(e,t){return e===t},L0e=function(e,t){return Boolean(lu(e.querySelectorAll("iframe")).some(function(n){return M0e(n,t)}))},Nz=function(e,t){return t===void 0&&(t=Ty(Ez(e).ownerDocument)),!t||t.dataset&&t.dataset.focusGuard?!1:C8(e).some(function(n){return _m(n,t)||L0e(n,t)})},A0e=function(e){e===void 0&&(e=document);var t=Ty(e);return t?lu(e.querySelectorAll("[".concat(r0e,"]"))).some(function(n){return _m(n,t)}):!1},O0e=function(e,t){return t.filter(Rz).filter(function(n){return n.name===e.name}).filter(function(n){return n.checked})[0]||e},_8=function(e,t){return Rz(e)&&e.name?O0e(e,t):e},R0e=function(e){var t=new Set;return e.forEach(function(n){return t.add(_8(n,e))}),e.filter(function(n){return t.has(n)})},XA=function(e){return e[0]&&e.length>1?_8(e[0],e):e[0]},ZA=function(e,t){return e.length>1?e.indexOf(_8(e[t],e)):t},$z="NEW_FOCUS",I0e=function(e,t,n,r){var i=e.length,o=e[0],a=e[i-1],s=x8(n);if(!(n&&e.indexOf(n)>=0)){var l=n!==void 0?t.indexOf(n):-1,u=r?t.indexOf(r):l,d=r?e.indexOf(r):-1,p=l-u,m=t.indexOf(o),y=t.indexOf(a),b=R0e(t),w=n!==void 0?b.indexOf(n):-1,E=w-(r?b.indexOf(r):l),_=ZA(e,0),k=ZA(e,i-1);if(l===-1||d===-1)return $z;if(!p&&d>=0)return d;if(l<=m&&s&&Math.abs(p)>1)return k;if(l>=y&&s&&Math.abs(p)>1)return _;if(p&&Math.abs(E)>1)return d;if(l<=m)return k;if(l>y)return _;if(p)return Math.abs(p)>1?d:(i+d+p)%i}},D0e=function(e){return function(t){var n,r=(n=Az(t))===null||n===void 0?void 0:n.autofocus;return t.autofocus||r!==void 0&&r!=="false"||e.indexOf(t)>=0}},j0e=function(e,t,n){var r=e.map(function(o){var a=o.node;return a}),i=KA(r.filter(D0e(n)));return i&&i.length?XA(i):XA(KA(t))},K_=function(e,t){return t===void 0&&(t=[]),t.push(e),e.parentNode&&K_(e.parentNode.host||e.parentNode,t),t},cC=function(e,t){for(var n=K_(e),r=K_(t),i=0;i=0)return o}return!1},Fz=function(e,t,n){var r=l3(e),i=l3(t),o=r[0],a=!1;return i.filter(Boolean).forEach(function(s){a=cC(a||s,s)||a,n.filter(Boolean).forEach(function(l){var u=cC(o,l);u&&(!a||_m(u,a)?a=u:a=cC(u,a))})}),a},N0e=function(e,t){return e.reduce(function(n,r){return n.concat(E0e(r,t))},[])},$0e=function(e,t){var n=new Map;return t.forEach(function(r){return n.set(r.node,r)}),e.map(function(r){return n.get(r)}).filter(x0e)},F0e=function(e,t){var n=Ty(l3(e).length>0?document:Ez(e).ownerDocument),r=C8(e).filter(u3),i=Fz(n||e,e,r),o=new Map,a=YA(r,o),s=q_(r,o).filter(function(y){var b=y.node;return u3(b)});if(!(!s[0]&&(s=a,!s[0]))){var l=YA([i],o).map(function(y){var b=y.node;return b}),u=$0e(l,s),d=u.map(function(y){var b=y.node;return b}),p=I0e(d,l,n,t);if(p===$z){var m=j0e(a,d,N0e(r,o));if(m)return{node:m};console.warn("focus-lock: cannot find any node to move focus into");return}return p===void 0?p:u[p]}},B0e=function(e){var t=C8(e).filter(u3),n=Fz(e,e,t),r=new Map,i=q_([n],r,!0),o=q_(t,r).filter(function(a){var s=a.node;return u3(s)}).map(function(a){var s=a.node;return s});return i.map(function(a){var s=a.node,l=a.index;return{node:s,index:l,lockItem:o.indexOf(s)>=0,guard:x8(s)}})},z0e=function(e,t){"focus"in e&&e.focus(t),"contentWindow"in e&&e.contentWindow&&e.contentWindow.focus()},dC=0,fC=!1,Bz=function(e,t,n){n===void 0&&(n={});var r=F0e(e,t);if(!fC&&r){if(dC>2){console.error("FocusLock: focus-fighting detected. Only one focus management system could be active. See https://github.com/theKashey/focus-lock/#focus-fighting"),fC=!0,setTimeout(function(){fC=!1},1);return}dC++,z0e(r.node,n.focusOptions),dC--}};function zz(e){var t=window,n=t.setImmediate;typeof n<"u"?n(e):setTimeout(e,1)}var H0e=function(){return document&&document.activeElement===document.body},W0e=function(){return H0e()||A0e()},km=null,am=null,Em=null,My=!1,U0e=function(){return!0},V0e=function(t){return(km.whiteList||U0e)(t)},G0e=function(t,n){Em={observerNode:t,portaledElement:n}},q0e=function(t){return Em&&Em.portaledElement===t};function QA(e,t,n,r){var i=null,o=e;do{var a=r[o];if(a.guard)a.node.dataset.focusAutoGuard&&(i=a);else if(a.lockItem){if(o!==e)return;i=null}else break}while((o+=n)!==t);i&&(i.node.tabIndex=0)}var K0e=function(t){return t&&"current"in t?t.current:t},Y0e=function(t){return t?Boolean(My):My==="meanwhile"},X0e=function e(t,n,r){return n&&(n.host===t&&(!n.activeElement||r.contains(n.activeElement))||n.parentNode&&e(t,n.parentNode,r))},Z0e=function(t,n){return n.some(function(r){return X0e(t,r,r)})},c3=function(){var t=!1;if(km){var n=km,r=n.observed,i=n.persistentFocus,o=n.autoFocus,a=n.shards,s=n.crossFrame,l=n.focusOptions,u=r||Em&&Em.portaledElement,d=document&&document.activeElement;if(u){var p=[u].concat(a.map(K0e).filter(Boolean));if((!d||V0e(d))&&(i||Y0e(s)||!W0e()||!am&&o)&&(u&&!(Nz(p)||d&&Z0e(d,p)||q0e(d))&&(document&&!am&&d&&!o?(d.blur&&d.blur(),document.body.focus()):(t=Bz(p,am,{focusOptions:l}),Em={})),My=!1,am=document&&document.activeElement),document){var m=document&&document.activeElement,y=B0e(p),b=y.map(function(w){var E=w.node;return E}).indexOf(m);b>-1&&(y.filter(function(w){var E=w.guard,_=w.node;return E&&_.dataset.focusAutoGuard}).forEach(function(w){var E=w.node;return E.removeAttribute("tabIndex")}),QA(b,y.length,1,y),QA(b,-1,-1,y))}}}return t},Hz=function(t){c3()&&t&&(t.stopPropagation(),t.preventDefault())},k8=function(){return zz(c3)},Q0e=function(t){var n=t.target,r=t.currentTarget;r.contains(n)||G0e(r,n)},J0e=function(){return null},Wz=function(){My="just",setTimeout(function(){My="meanwhile"},0)},eve=function(){document.addEventListener("focusin",Hz),document.addEventListener("focusout",k8),window.addEventListener("blur",Wz)},tve=function(){document.removeEventListener("focusin",Hz),document.removeEventListener("focusout",k8),window.removeEventListener("blur",Wz)};function nve(e){return e.filter(function(t){var n=t.disabled;return!n})}function rve(e){var t=e.slice(-1)[0];t&&!km&&eve();var n=km,r=n&&t&&t.id===n.id;km=t,n&&!r&&(n.onDeactivation(),e.filter(function(i){var o=i.id;return o===n.id}).length||n.returnFocus(!t)),t?(am=null,(!r||n.observed!==t.observed)&&t.onActivation(),c3(),zz(c3)):(tve(),am=null)}wz.assignSyncMedium(Q0e);Cz.assignMedium(k8);u0e.assignMedium(function(e){return e({moveFocusInside:Bz,focusInside:Nz})});const ive=h0e(nve,rve)(J0e);var Uz=S.forwardRef(function(t,n){return S.createElement(_z,pn({sideCar:ive,ref:n},t))}),Vz=_z.propTypes||{};Vz.sideCar;m8(Vz,["sideCar"]);Uz.propTypes={};const JA=Uz;function Gz(e){return e!=null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function qz(e){var t;if(!Gz(e))return!1;const n=(t=e.ownerDocument.defaultView)!=null?t:window;return e instanceof n.HTMLElement}function ove(e){var t,n;return(n=(t=Kz(e))==null?void 0:t.defaultView)!=null?n:window}function Kz(e){return Gz(e)?e.ownerDocument:document}function ave(e){return Kz(e).activeElement}var Yz=e=>e.hasAttribute("tabindex"),sve=e=>Yz(e)&&e.tabIndex===-1;function lve(e){return Boolean(e.getAttribute("disabled"))===!0||Boolean(e.getAttribute("aria-disabled"))===!0}function Xz(e){return e.parentElement&&Xz(e.parentElement)?!0:e.hidden}function uve(e){const t=e.getAttribute("contenteditable");return t!=="false"&&t!=null}function Zz(e){if(!qz(e)||Xz(e)||lve(e))return!1;const{localName:t}=e;if(["input","select","textarea","button"].indexOf(t)>=0)return!0;const r={a:()=>e.hasAttribute("href"),audio:()=>e.hasAttribute("controls"),video:()=>e.hasAttribute("controls")};return t in r?r[t]():uve(e)?!0:Yz(e)}function cve(e){return e?qz(e)&&Zz(e)&&!sve(e):!1}var dve=["input:not(:disabled):not([disabled])","select:not(:disabled):not([disabled])","textarea:not(:disabled):not([disabled])","embed","iframe","object","a[href]","area[href]","button:not(:disabled):not([disabled])","[tabindex]","audio[controls]","video[controls]","*[tabindex]:not([aria-disabled])","*[contenteditable]"],fve=dve.join(),hve=e=>e.offsetWidth>0&&e.offsetHeight>0;function Qz(e){const t=Array.from(e.querySelectorAll(fve));return t.unshift(e),t.filter(n=>Zz(n)&&hve(n))}var eO,pve=(eO=JA.default)!=null?eO:JA,Jz=e=>{const{initialFocusRef:t,finalFocusRef:n,contentRef:r,restoreFocus:i,children:o,isDisabled:a,autoFocus:s,persistentFocus:l,lockFocusAcrossFrames:u}=e,d=S.useCallback(()=>{t!=null&&t.current?t.current.focus():r!=null&&r.current&&Qz(r.current).length===0&&requestAnimationFrame(()=>{var b;(b=r.current)==null||b.focus()})},[t,r]),p=S.useCallback(()=>{var y;(y=n==null?void 0:n.current)==null||y.focus()},[n]),m=i&&!n;return g.jsx(pve,{crossFrame:u,persistentFocus:l,autoFocus:s,disabled:a,onActivation:d,onDeactivation:p,returnFocus:m,children:o})};Jz.displayName="FocusLock";var gve=hce?S.useLayoutEffect:S.useEffect;function tO(e,t=[]){const n=S.useRef(e);return gve(()=>{n.current=e}),S.useCallback((...r)=>{var i;return(i=n.current)==null?void 0:i.call(n,...r)},t)}function mve(e,t){const n=S.useId();return S.useMemo(()=>e||[t,n].filter(Boolean).join("-"),[e,t,n])}function vve(e,t){const n=e!==void 0;return[n,n&&typeof e<"u"?e:t]}function Kd(e={}){const{onClose:t,onOpen:n,isOpen:r,id:i}=e,o=tO(n),a=tO(t),[s,l]=S.useState(e.defaultIsOpen||!1),[u,d]=vve(r,s),p=mve(i,"disclosure"),m=S.useCallback(()=>{u||l(!1),a==null||a()},[u,a]),y=S.useCallback(()=>{u||l(!0),o==null||o()},[u,o]),b=S.useCallback(()=>{(d?m:y)()},[d,y,m]);return{isOpen:!!d,onOpen:y,onClose:m,onToggle:b,isControlled:u,getButtonProps:(w={})=>({...w,"aria-expanded":d,"aria-controls":p,onClick:yce(w.onClick,b)}),getDisclosureProps:(w={})=>({...w,hidden:!d,id:p})}}var E8=Ze(function(t,n){const{htmlSize:r,...i}=t,o=Yi("Input",i),a=fr(i),s=f8(a),l=xt("chakra-input",t.className);return g.jsx(Ne.input,{size:r,...s,__css:o.field,ref:n,className:l})});E8.displayName="Input";E8.id="Input";var[yve,eH]=Pn({name:"ListStylesContext",errorMessage:`useListStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),P8=Ze(function(t,n){const r=Yi("List",t),{children:i,styleType:o="none",stylePosition:a,spacing:s,...l}=fr(t),u=d8(i),p=s?{["& > *:not(style) ~ *:not(style)"]:{mt:s}}:{};return g.jsx(yve,{value:r,children:g.jsx(Ne.ul,{ref:n,listStyleType:o,listStylePosition:a,role:"list",__css:{...r.container,...p},...l,children:u})})});P8.displayName="List";var bve=Ze((e,t)=>{const{as:n,...r}=e;return g.jsx(P8,{ref:t,as:"ol",styleType:"decimal",marginStart:"1em",...r})});bve.displayName="OrderedList";var tH=Ze(function(t,n){const{as:r,...i}=t;return g.jsx(P8,{ref:n,as:"ul",styleType:"initial",marginStart:"1em",...i})});tH.displayName="UnorderedList";var f1=Ze(function(t,n){const r=eH();return g.jsx(Ne.li,{ref:n,...t,__css:r.item})});f1.displayName="ListItem";var xve=Ze(function(t,n){const r=eH();return g.jsx(ja,{ref:n,role:"presentation",...t,__css:r.icon})});xve.displayName="ListIcon";function nH(e,t){return Array.isArray(e)?e.map(n=>n===null?null:t(n)):ko(e)?Object.keys(e).reduce((n,r)=>(n[r]=t(e[r]),n),{}):e!=null?t(e):null}var rH=Ne("div",{baseStyle:{flex:1,justifySelf:"stretch",alignSelf:"stretch"}});rH.displayName="Spacer";var Dt=Ze(function(t,n){const r=au("Text",t),{className:i,align:o,decoration:a,casing:s,...l}=fr(t),u=Ice({textAlign:t.align,textDecoration:t.decoration,textTransform:t.casing});return g.jsx(Ne.p,{ref:n,className:xt("chakra-text",t.className),...u,...l,__css:r})});Dt.displayName="Text";var iH=e=>g.jsx(Ne.div,{className:"chakra-stack__item",...e,__css:{display:"inline-block",flex:"0 0 auto",minWidth:0,...e.__css}});iH.displayName="StackItem";var Y_="& > *:not(style) ~ *:not(style)";function Sve(e){const{spacing:t,direction:n}=e,r={column:{marginTop:t,marginEnd:0,marginBottom:0,marginStart:0},row:{marginTop:0,marginEnd:0,marginBottom:0,marginStart:t},"column-reverse":{marginTop:0,marginEnd:0,marginBottom:t,marginStart:0},"row-reverse":{marginTop:0,marginEnd:t,marginBottom:0,marginStart:0}};return{flexDirection:n,[Y_]:nH(n,i=>r[i])}}function wve(e){const{spacing:t,direction:n}=e,r={column:{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},"column-reverse":{my:t,mx:0,borderLeftWidth:0,borderBottomWidth:"1px"},row:{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0},"row-reverse":{mx:t,my:0,borderLeftWidth:"1px",borderBottomWidth:0}};return{"&":nH(n,i=>r[i])}}var T8=Ze((e,t)=>{const{isInline:n,direction:r,align:i,justify:o,spacing:a="0.5rem",wrap:s,children:l,divider:u,className:d,shouldWrapChildren:p,...m}=e,y=n?"row":r??"column",b=S.useMemo(()=>Sve({direction:y,spacing:a}),[y,a]),w=S.useMemo(()=>wve({spacing:a,direction:y}),[a,y]),E=!!u,_=!p&&!E,k=S.useMemo(()=>{const L=d8(l);return _?L:L.map((O,D)=>{const I=typeof O.key<"u"?O.key:D,N=D+1===L.length,B=p?g.jsx(iH,{children:O},I):O;if(!E)return B;const K=S.cloneElement(u,{__css:w}),ne=N?null:K;return g.jsxs(S.Fragment,{children:[B,ne]},I)})},[u,w,E,_,p,l]),T=xt("chakra-stack",d);return g.jsx(Ne.div,{ref:t,display:"flex",alignItems:i,justifyContent:o,flexDirection:b.flexDirection,flexWrap:s,className:T,__css:E?{}:{[Y_]:b[Y_]},...m,children:k})});T8.displayName="Stack";var hn=Ze((e,t)=>g.jsx(T8,{align:"center",...e,direction:"column",ref:t}));hn.displayName="VStack";var l2=Ze((e,t)=>g.jsx(T8,{align:"center",...e,direction:"row",ref:t}));l2.displayName="HStack";var jh=Ze(function(t,n){const r=au("Heading",t),{className:i,...o}=fr(t);return g.jsx(Ne.h2,{ref:n,className:xt("chakra-heading",t.className),...o,__css:r})});jh.displayName="Heading";var ao=Ne("div");ao.displayName="Box";var oH=Ze(function(t,n){const{size:r,centerContent:i=!0,...o}=t,a=i?{display:"flex",alignItems:"center",justifyContent:"center"}:{};return g.jsx(ao,{ref:n,boxSize:r,__css:{...a,flexShrink:0,flexGrow:0},...o})});oH.displayName="Square";var Cve=Ze(function(t,n){const{size:r,...i}=t;return g.jsx(oH,{size:r,ref:n,borderRadius:"9999px",...i})});Cve.displayName="Circle";var Nh=Ze(function(t,n){const r=au("Link",t),{className:i,isExternal:o,...a}=fr(t);return g.jsx(Ne.a,{target:o?"_blank":void 0,rel:o?"noopener":void 0,ref:n,className:xt("chakra-link",i),...a,__css:r})});Nh.displayName="Link";var aH=Ne("div",{baseStyle:{display:"flex",alignItems:"center",justifyContent:"center"}});aH.displayName="Center";var _ve={horizontal:{insetStart:"50%",transform:"translateX(-50%)"},vertical:{top:"50%",transform:"translateY(-50%)"},both:{insetStart:"50%",top:"50%",transform:"translate(-50%, -50%)"}};Ze(function(t,n){const{axis:r="both",...i}=t;return g.jsx(Ne.div,{ref:n,__css:_ve[r],...i,position:"absolute"})});var Ee=Ze(function(t,n){const{direction:r,align:i,justify:o,wrap:a,basis:s,grow:l,shrink:u,...d}=t,p={display:"flex",flexDirection:r,alignItems:i,justifyContent:o,flexWrap:a,flexBasis:s,flexGrow:l,flexShrink:u};return g.jsx(Ne.div,{ref:n,__css:p,...d})});Ee.displayName="Flex";function kve(e){const{key:t}=e;return t.length===1||t.length>1&&/[^a-zA-Z0-9]/.test(t)}function Eve(e={}){const{timeout:t=300,preventDefault:n=()=>!0}=e,[r,i]=S.useState([]),o=S.useRef(),a=()=>{o.current&&(clearTimeout(o.current),o.current=null)},s=()=>{a(),o.current=setTimeout(()=>{i([]),o.current=null},t)};S.useEffect(()=>a,[]);function l(u){return d=>{if(d.key==="Backspace"){const p=[...r];p.pop(),i(p);return}if(kve(d)){const p=r.concat(d.key);n(d)&&(d.preventDefault(),d.stopPropagation()),i(p),u(p.join("")),s()}}}return l}function Pve(e,t,n,r){if(t==null)return r;if(!r)return e.find(a=>n(a).toLowerCase().startsWith(t.toLowerCase()));const i=e.filter(o=>n(o).toLowerCase().startsWith(t.toLowerCase()));if(i.length>0){let o;return i.includes(r)?(o=i.indexOf(r)+1,o===i.length&&(o=0),i[o]):(o=e.indexOf(i[0]),e[o])}return r}function Tve(){const e=S.useRef(new Map),t=e.current,n=S.useCallback((i,o,a,s)=>{e.current.set(a,{type:o,el:i,options:s}),i.addEventListener(o,a,s)},[]),r=S.useCallback((i,o,a,s)=>{i.removeEventListener(o,a,s),e.current.delete(a)},[]);return S.useEffect(()=>()=>{t.forEach((i,o)=>{r(i.el,i.type,o,i.options)})},[r,t]),{add:n,remove:r}}function hC(e){const t=e.target,{tagName:n,isContentEditable:r}=t;return n!=="INPUT"&&n!=="TEXTAREA"&&r!==!0}function sH(e={}){const{ref:t,isDisabled:n,isFocusable:r,clickOnEnter:i=!0,clickOnSpace:o=!0,onMouseDown:a,onMouseUp:s,onClick:l,onKeyDown:u,onKeyUp:d,tabIndex:p,onMouseOver:m,onMouseLeave:y,...b}=e,[w,E]=S.useState(!0),[_,k]=S.useState(!1),T=Tve(),L=Q=>{Q&&Q.tagName!=="BUTTON"&&E(!1)},O=w?p:p||0,D=n&&!r,I=S.useCallback(Q=>{if(n){Q.stopPropagation(),Q.preventDefault();return}Q.currentTarget.focus(),l==null||l(Q)},[n,l]),N=S.useCallback(Q=>{_&&hC(Q)&&(Q.preventDefault(),Q.stopPropagation(),k(!1),T.remove(document,"keyup",N,!1))},[_,T]),W=S.useCallback(Q=>{if(u==null||u(Q),n||Q.defaultPrevented||Q.metaKey||!hC(Q.nativeEvent)||w)return;const G=i&&Q.key==="Enter";o&&Q.key===" "&&(Q.preventDefault(),k(!0)),G&&(Q.preventDefault(),Q.currentTarget.click()),T.add(document,"keyup",N,!1)},[n,w,u,i,o,T,N]),B=S.useCallback(Q=>{if(d==null||d(Q),n||Q.defaultPrevented||Q.metaKey||!hC(Q.nativeEvent)||w)return;o&&Q.key===" "&&(Q.preventDefault(),k(!1),Q.currentTarget.click())},[o,w,n,d]),K=S.useCallback(Q=>{Q.button===0&&(k(!1),T.remove(document,"mouseup",K,!1))},[T]),ne=S.useCallback(Q=>{if(Q.button!==0)return;if(n){Q.stopPropagation(),Q.preventDefault();return}w||k(!0),Q.currentTarget.focus({preventScroll:!0}),T.add(document,"mouseup",K,!1),a==null||a(Q)},[n,w,a,T,K]),z=S.useCallback(Q=>{Q.button===0&&(w||k(!1),s==null||s(Q))},[s,w]),$=S.useCallback(Q=>{if(n){Q.preventDefault();return}m==null||m(Q)},[n,m]),V=S.useCallback(Q=>{_&&(Q.preventDefault(),k(!1)),y==null||y(Q)},[_,y]),X=Rn(t,L);return w?{...b,ref:X,type:"button","aria-disabled":D?void 0:n,disabled:D,onClick:I,onMouseDown:a,onMouseUp:s,onKeyUp:d,onKeyDown:u,onMouseOver:m,onMouseLeave:y}:{...b,ref:X,role:"button","data-active":Bt(_),"aria-disabled":n?"true":void 0,tabIndex:D?void 0:O,onClick:I,onMouseDown:ne,onMouseUp:z,onKeyUp:B,onKeyDown:W,onMouseOver:$,onMouseLeave:V}}function Mve(e){const t=e.current;if(!t)return!1;const n=ave(t);return!n||t.contains(n)?!1:!!cve(n)}function lH(e,t){const{shouldFocus:n,visible:r,focusRef:i}=t,o=n&&!r;rc(()=>{if(!o||Mve(e))return;const a=(i==null?void 0:i.current)||e.current;a&&requestAnimationFrame(()=>{a.focus()})},[o,e,i])}var Lve={preventScroll:!0,shouldFocus:!1};function Ave(e,t=Lve){const{focusRef:n,preventScroll:r,shouldFocus:i,visible:o}=t,a=Ove(e)?e.current:e,s=i&&o,l=S.useRef(s),u=S.useRef(o);Vl(()=>{!u.current&&o&&(l.current=s),u.current=o},[o,s]);const d=S.useCallback(()=>{if(!(!o||!a||!l.current)&&(l.current=!1,!a.contains(document.activeElement)))if(n!=null&&n.current)requestAnimationFrame(()=>{var p;(p=n.current)==null||p.focus({preventScroll:r})});else{const p=Qz(a);p.length>0&&requestAnimationFrame(()=>{p[0].focus({preventScroll:r})})}},[o,r,a,n]);rc(()=>{d()},[d]),Dh(a,"transitionend",d)}function Ove(e){return"current"in e}var Sg=(e,t)=>({var:e,varRef:t?`var(${e}, ${t})`:`var(${e})`}),ii={arrowShadowColor:Sg("--popper-arrow-shadow-color"),arrowSize:Sg("--popper-arrow-size","8px"),arrowSizeHalf:Sg("--popper-arrow-size-half"),arrowBg:Sg("--popper-arrow-bg"),transformOrigin:Sg("--popper-transform-origin"),arrowOffset:Sg("--popper-arrow-offset")};function Rve(e){if(e.includes("top"))return"1px 1px 1px 0 var(--popper-arrow-shadow-color)";if(e.includes("bottom"))return"-1px -1px 1px 0 var(--popper-arrow-shadow-color)";if(e.includes("right"))return"-1px 1px 1px 0 var(--popper-arrow-shadow-color)";if(e.includes("left"))return"1px -1px 1px 0 var(--popper-arrow-shadow-color)"}var Ive={top:"bottom center","top-start":"bottom left","top-end":"bottom right",bottom:"top center","bottom-start":"top left","bottom-end":"top right",left:"right center","left-start":"right top","left-end":"right bottom",right:"left center","right-start":"left top","right-end":"left bottom"},Dve=e=>Ive[e],nO={scroll:!0,resize:!0};function jve(e){let t;return typeof e=="object"?t={enabled:!0,options:{...nO,...e}}:t={enabled:e,options:nO},t}var Nve={name:"matchWidth",enabled:!0,phase:"beforeWrite",requires:["computeStyles"],fn:({state:e})=>{e.styles.popper.width=`${e.rects.reference.width}px`},effect:({state:e})=>()=>{const t=e.elements.reference;e.elements.popper.style.width=`${t.offsetWidth}px`}},$ve={name:"transformOrigin",enabled:!0,phase:"write",fn:({state:e})=>{rO(e)},effect:({state:e})=>()=>{rO(e)}},rO=e=>{e.elements.popper.style.setProperty(ii.transformOrigin.var,Dve(e.placement))},Fve={name:"positionArrow",enabled:!0,phase:"afterWrite",fn:({state:e})=>{Bve(e)}},Bve=e=>{var t;if(!e.placement)return;const n=zve(e.placement);if((t=e.elements)!=null&&t.arrow&&n){Object.assign(e.elements.arrow.style,{[n.property]:n.value,width:ii.arrowSize.varRef,height:ii.arrowSize.varRef,zIndex:-1});const r={[ii.arrowSizeHalf.var]:`calc(${ii.arrowSize.varRef} / 2)`,[ii.arrowOffset.var]:`calc(${ii.arrowSizeHalf.varRef} * -1)`};for(const i in r)e.elements.arrow.style.setProperty(i,r[i])}},zve=e=>{if(e.startsWith("top"))return{property:"bottom",value:ii.arrowOffset.varRef};if(e.startsWith("bottom"))return{property:"top",value:ii.arrowOffset.varRef};if(e.startsWith("left"))return{property:"right",value:ii.arrowOffset.varRef};if(e.startsWith("right"))return{property:"left",value:ii.arrowOffset.varRef}},Hve={name:"innerArrow",enabled:!0,phase:"main",requires:["arrow"],fn:({state:e})=>{iO(e)},effect:({state:e})=>()=>{iO(e)}},iO=e=>{if(!e.elements.arrow)return;const t=e.elements.arrow.querySelector("[data-popper-arrow-inner]");if(!t)return;const n=Rve(e.placement);n&&t.style.setProperty("--popper-arrow-default-shadow",n),Object.assign(t.style,{transform:"rotate(45deg)",background:ii.arrowBg.varRef,top:0,left:0,width:"100%",height:"100%",position:"absolute",zIndex:"inherit",boxShadow:"var(--popper-arrow-shadow, var(--popper-arrow-default-shadow))"})},Wve={"start-start":{ltr:"left-start",rtl:"right-start"},"start-end":{ltr:"left-end",rtl:"right-end"},"end-start":{ltr:"right-start",rtl:"left-start"},"end-end":{ltr:"right-end",rtl:"left-end"},start:{ltr:"left",rtl:"right"},end:{ltr:"right",rtl:"left"}},Uve={"auto-start":"auto-end","auto-end":"auto-start","top-start":"top-end","top-end":"top-start","bottom-start":"bottom-end","bottom-end":"bottom-start"};function Vve(e,t="ltr"){var n,r;const i=((n=Wve[e])==null?void 0:n[t])||e;return t==="ltr"?i:(r=Uve[e])!=null?r:i}var Zo="top",us="bottom",cs="right",Qo="left",M8="auto",u2=[Zo,us,cs,Qo],qm="start",Ly="end",Gve="clippingParents",uH="viewport",Uv="popper",qve="reference",oO=u2.reduce(function(e,t){return e.concat([t+"-"+qm,t+"-"+Ly])},[]),cH=[].concat(u2,[M8]).reduce(function(e,t){return e.concat([t,t+"-"+qm,t+"-"+Ly])},[]),Kve="beforeRead",Yve="read",Xve="afterRead",Zve="beforeMain",Qve="main",Jve="afterMain",e1e="beforeWrite",t1e="write",n1e="afterWrite",r1e=[Kve,Yve,Xve,Zve,Qve,Jve,e1e,t1e,n1e];function nu(e){return e?(e.nodeName||"").toLowerCase():null}function hs(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Kh(e){var t=hs(e).Element;return e instanceof t||e instanceof Element}function is(e){var t=hs(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function L8(e){if(typeof ShadowRoot>"u")return!1;var t=hs(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function i1e(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},i=t.attributes[n]||{},o=t.elements[n];!is(o)||!nu(o)||(Object.assign(o.style,r),Object.keys(i).forEach(function(a){var s=i[a];s===!1?o.removeAttribute(a):o.setAttribute(a,s===!0?"":s)}))})}function o1e(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var i=t.elements[r],o=t.attributes[r]||{},a=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),s=a.reduce(function(l,u){return l[u]="",l},{});!is(i)||!nu(i)||(Object.assign(i.style,s),Object.keys(o).forEach(function(l){i.removeAttribute(l)}))})}}const a1e={name:"applyStyles",enabled:!0,phase:"write",fn:i1e,effect:o1e,requires:["computeStyles"]};function Zl(e){return e.split("-")[0]}var $h=Math.max,d3=Math.min,Km=Math.round;function X_(){var e=navigator.userAgentData;return e!=null&&e.brands?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function dH(){return!/^((?!chrome|android).)*safari/i.test(X_())}function Ym(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),i=1,o=1;t&&is(e)&&(i=e.offsetWidth>0&&Km(r.width)/e.offsetWidth||1,o=e.offsetHeight>0&&Km(r.height)/e.offsetHeight||1);var a=Kh(e)?hs(e):window,s=a.visualViewport,l=!dH()&&n,u=(r.left+(l&&s?s.offsetLeft:0))/i,d=(r.top+(l&&s?s.offsetTop:0))/o,p=r.width/i,m=r.height/o;return{width:p,height:m,top:d,right:u+p,bottom:d+m,left:u,x:u,y:d}}function A8(e){var t=Ym(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function fH(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&L8(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function ic(e){return hs(e).getComputedStyle(e)}function s1e(e){return["table","td","th"].indexOf(nu(e))>=0}function lf(e){return((Kh(e)?e.ownerDocument:e.document)||window.document).documentElement}function $w(e){return nu(e)==="html"?e:e.assignedSlot||e.parentNode||(L8(e)?e.host:null)||lf(e)}function aO(e){return!is(e)||ic(e).position==="fixed"?null:e.offsetParent}function l1e(e){var t=/firefox/i.test(X_()),n=/Trident/i.test(X_());if(n&&is(e)){var r=ic(e);if(r.position==="fixed")return null}var i=$w(e);for(L8(i)&&(i=i.host);is(i)&&["html","body"].indexOf(nu(i))<0;){var o=ic(i);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||t&&o.willChange==="filter"||t&&o.filter&&o.filter!=="none")return i;i=i.parentNode}return null}function c2(e){for(var t=hs(e),n=aO(e);n&&s1e(n)&&ic(n).position==="static";)n=aO(n);return n&&(nu(n)==="html"||nu(n)==="body"&&ic(n).position==="static")?t:n||l1e(e)||t}function O8(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function W1(e,t,n){return $h(e,d3(t,n))}function u1e(e,t,n){var r=W1(e,t,n);return r>n?n:r}function hH(){return{top:0,right:0,bottom:0,left:0}}function pH(e){return Object.assign({},hH(),e)}function gH(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var c1e=function(t,n){return t=typeof t=="function"?t(Object.assign({},n.rects,{placement:n.placement})):t,pH(typeof t!="number"?t:gH(t,u2))};function d1e(e){var t,n=e.state,r=e.name,i=e.options,o=n.elements.arrow,a=n.modifiersData.popperOffsets,s=Zl(n.placement),l=O8(s),u=[Qo,cs].indexOf(s)>=0,d=u?"height":"width";if(!(!o||!a)){var p=c1e(i.padding,n),m=A8(o),y=l==="y"?Zo:Qo,b=l==="y"?us:cs,w=n.rects.reference[d]+n.rects.reference[l]-a[l]-n.rects.popper[d],E=a[l]-n.rects.reference[l],_=c2(o),k=_?l==="y"?_.clientHeight||0:_.clientWidth||0:0,T=w/2-E/2,L=p[y],O=k-m[d]-p[b],D=k/2-m[d]/2+T,I=W1(L,D,O),N=l;n.modifiersData[r]=(t={},t[N]=I,t.centerOffset=I-D,t)}}function f1e(e){var t=e.state,n=e.options,r=n.element,i=r===void 0?"[data-popper-arrow]":r;i!=null&&(typeof i=="string"&&(i=t.elements.popper.querySelector(i),!i)||fH(t.elements.popper,i)&&(t.elements.arrow=i))}const h1e={name:"arrow",enabled:!0,phase:"main",fn:d1e,effect:f1e,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Xm(e){return e.split("-")[1]}var p1e={top:"auto",right:"auto",bottom:"auto",left:"auto"};function g1e(e){var t=e.x,n=e.y,r=window,i=r.devicePixelRatio||1;return{x:Km(t*i)/i||0,y:Km(n*i)/i||0}}function sO(e){var t,n=e.popper,r=e.popperRect,i=e.placement,o=e.variation,a=e.offsets,s=e.position,l=e.gpuAcceleration,u=e.adaptive,d=e.roundOffsets,p=e.isFixed,m=a.x,y=m===void 0?0:m,b=a.y,w=b===void 0?0:b,E=typeof d=="function"?d({x:y,y:w}):{x:y,y:w};y=E.x,w=E.y;var _=a.hasOwnProperty("x"),k=a.hasOwnProperty("y"),T=Qo,L=Zo,O=window;if(u){var D=c2(n),I="clientHeight",N="clientWidth";if(D===hs(n)&&(D=lf(n),ic(D).position!=="static"&&s==="absolute"&&(I="scrollHeight",N="scrollWidth")),D=D,i===Zo||(i===Qo||i===cs)&&o===Ly){L=us;var W=p&&D===O&&O.visualViewport?O.visualViewport.height:D[I];w-=W-r.height,w*=l?1:-1}if(i===Qo||(i===Zo||i===us)&&o===Ly){T=cs;var B=p&&D===O&&O.visualViewport?O.visualViewport.width:D[N];y-=B-r.width,y*=l?1:-1}}var K=Object.assign({position:s},u&&p1e),ne=d===!0?g1e({x:y,y:w}):{x:y,y:w};if(y=ne.x,w=ne.y,l){var z;return Object.assign({},K,(z={},z[L]=k?"0":"",z[T]=_?"0":"",z.transform=(O.devicePixelRatio||1)<=1?"translate("+y+"px, "+w+"px)":"translate3d("+y+"px, "+w+"px, 0)",z))}return Object.assign({},K,(t={},t[L]=k?w+"px":"",t[T]=_?y+"px":"",t.transform="",t))}function m1e(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=r===void 0?!0:r,o=n.adaptive,a=o===void 0?!0:o,s=n.roundOffsets,l=s===void 0?!0:s,u={placement:Zl(t.placement),variation:Xm(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,sO(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,sO(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const v1e={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:m1e,data:{}};var Vb={passive:!0};function y1e(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,o=i===void 0?!0:i,a=r.resize,s=a===void 0?!0:a,l=hs(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&u.forEach(function(d){d.addEventListener("scroll",n.update,Vb)}),s&&l.addEventListener("resize",n.update,Vb),function(){o&&u.forEach(function(d){d.removeEventListener("scroll",n.update,Vb)}),s&&l.removeEventListener("resize",n.update,Vb)}}const b1e={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:y1e,data:{}};var x1e={left:"right",right:"left",bottom:"top",top:"bottom"};function Jx(e){return e.replace(/left|right|bottom|top/g,function(t){return x1e[t]})}var S1e={start:"end",end:"start"};function lO(e){return e.replace(/start|end/g,function(t){return S1e[t]})}function R8(e){var t=hs(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function I8(e){return Ym(lf(e)).left+R8(e).scrollLeft}function w1e(e,t){var n=hs(e),r=lf(e),i=n.visualViewport,o=r.clientWidth,a=r.clientHeight,s=0,l=0;if(i){o=i.width,a=i.height;var u=dH();(u||!u&&t==="fixed")&&(s=i.offsetLeft,l=i.offsetTop)}return{width:o,height:a,x:s+I8(e),y:l}}function C1e(e){var t,n=lf(e),r=R8(e),i=(t=e.ownerDocument)==null?void 0:t.body,o=$h(n.scrollWidth,n.clientWidth,i?i.scrollWidth:0,i?i.clientWidth:0),a=$h(n.scrollHeight,n.clientHeight,i?i.scrollHeight:0,i?i.clientHeight:0),s=-r.scrollLeft+I8(e),l=-r.scrollTop;return ic(i||n).direction==="rtl"&&(s+=$h(n.clientWidth,i?i.clientWidth:0)-o),{width:o,height:a,x:s,y:l}}function D8(e){var t=ic(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function mH(e){return["html","body","#document"].indexOf(nu(e))>=0?e.ownerDocument.body:is(e)&&D8(e)?e:mH($w(e))}function U1(e,t){var n;t===void 0&&(t=[]);var r=mH(e),i=r===((n=e.ownerDocument)==null?void 0:n.body),o=hs(r),a=i?[o].concat(o.visualViewport||[],D8(r)?r:[]):r,s=t.concat(a);return i?s:s.concat(U1($w(a)))}function Z_(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function _1e(e,t){var n=Ym(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function uO(e,t,n){return t===uH?Z_(w1e(e,n)):Kh(t)?_1e(t,n):Z_(C1e(lf(e)))}function k1e(e){var t=U1($w(e)),n=["absolute","fixed"].indexOf(ic(e).position)>=0,r=n&&is(e)?c2(e):e;return Kh(r)?t.filter(function(i){return Kh(i)&&fH(i,r)&&nu(i)!=="body"}):[]}function E1e(e,t,n,r){var i=t==="clippingParents"?k1e(e):[].concat(t),o=[].concat(i,[n]),a=o[0],s=o.reduce(function(l,u){var d=uO(e,u,r);return l.top=$h(d.top,l.top),l.right=d3(d.right,l.right),l.bottom=d3(d.bottom,l.bottom),l.left=$h(d.left,l.left),l},uO(e,a,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function vH(e){var t=e.reference,n=e.element,r=e.placement,i=r?Zl(r):null,o=r?Xm(r):null,a=t.x+t.width/2-n.width/2,s=t.y+t.height/2-n.height/2,l;switch(i){case Zo:l={x:a,y:t.y-n.height};break;case us:l={x:a,y:t.y+t.height};break;case cs:l={x:t.x+t.width,y:s};break;case Qo:l={x:t.x-n.width,y:s};break;default:l={x:t.x,y:t.y}}var u=i?O8(i):null;if(u!=null){var d=u==="y"?"height":"width";switch(o){case qm:l[u]=l[u]-(t[d]/2-n[d]/2);break;case Ly:l[u]=l[u]+(t[d]/2-n[d]/2);break}}return l}function Ay(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=r===void 0?e.placement:r,o=n.strategy,a=o===void 0?e.strategy:o,s=n.boundary,l=s===void 0?Gve:s,u=n.rootBoundary,d=u===void 0?uH:u,p=n.elementContext,m=p===void 0?Uv:p,y=n.altBoundary,b=y===void 0?!1:y,w=n.padding,E=w===void 0?0:w,_=pH(typeof E!="number"?E:gH(E,u2)),k=m===Uv?qve:Uv,T=e.rects.popper,L=e.elements[b?k:m],O=E1e(Kh(L)?L:L.contextElement||lf(e.elements.popper),l,d,a),D=Ym(e.elements.reference),I=vH({reference:D,element:T,strategy:"absolute",placement:i}),N=Z_(Object.assign({},T,I)),W=m===Uv?N:D,B={top:O.top-W.top+_.top,bottom:W.bottom-O.bottom+_.bottom,left:O.left-W.left+_.left,right:W.right-O.right+_.right},K=e.modifiersData.offset;if(m===Uv&&K){var ne=K[i];Object.keys(B).forEach(function(z){var $=[cs,us].indexOf(z)>=0?1:-1,V=[Zo,us].indexOf(z)>=0?"y":"x";B[z]+=ne[V]*$})}return B}function P1e(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=n.boundary,o=n.rootBoundary,a=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,u=l===void 0?cH:l,d=Xm(r),p=d?s?oO:oO.filter(function(b){return Xm(b)===d}):u2,m=p.filter(function(b){return u.indexOf(b)>=0});m.length===0&&(m=p);var y=m.reduce(function(b,w){return b[w]=Ay(e,{placement:w,boundary:i,rootBoundary:o,padding:a})[Zl(w)],b},{});return Object.keys(y).sort(function(b,w){return y[b]-y[w]})}function T1e(e){if(Zl(e)===M8)return[];var t=Jx(e);return[lO(e),t,lO(t)]}function M1e(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var i=n.mainAxis,o=i===void 0?!0:i,a=n.altAxis,s=a===void 0?!0:a,l=n.fallbackPlacements,u=n.padding,d=n.boundary,p=n.rootBoundary,m=n.altBoundary,y=n.flipVariations,b=y===void 0?!0:y,w=n.allowedAutoPlacements,E=t.options.placement,_=Zl(E),k=_===E,T=l||(k||!b?[Jx(E)]:T1e(E)),L=[E].concat(T).reduce(function(xe,Le){return xe.concat(Zl(Le)===M8?P1e(t,{placement:Le,boundary:d,rootBoundary:p,padding:u,flipVariations:b,allowedAutoPlacements:w}):Le)},[]),O=t.rects.reference,D=t.rects.popper,I=new Map,N=!0,W=L[0],B=0;B=0,V=$?"width":"height",X=Ay(t,{placement:K,boundary:d,rootBoundary:p,altBoundary:m,padding:u}),Q=$?z?cs:Qo:z?us:Zo;O[V]>D[V]&&(Q=Jx(Q));var G=Jx(Q),Y=[];if(o&&Y.push(X[ne]<=0),s&&Y.push(X[Q]<=0,X[G]<=0),Y.every(function(xe){return xe})){W=K,N=!1;break}I.set(K,Y)}if(N)for(var ee=b?3:1,fe=function(Le){var Se=L.find(function(Je){var Xe=I.get(Je);if(Xe)return Xe.slice(0,Le).every(function(tt){return tt})});if(Se)return W=Se,"break"},_e=ee;_e>0;_e--){var we=fe(_e);if(we==="break")break}t.placement!==W&&(t.modifiersData[r]._skip=!0,t.placement=W,t.reset=!0)}}const L1e={name:"flip",enabled:!0,phase:"main",fn:M1e,requiresIfExists:["offset"],data:{_skip:!1}};function cO(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function dO(e){return[Zo,cs,us,Qo].some(function(t){return e[t]>=0})}function A1e(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,o=t.modifiersData.preventOverflow,a=Ay(t,{elementContext:"reference"}),s=Ay(t,{altBoundary:!0}),l=cO(a,r),u=cO(s,i,o),d=dO(l),p=dO(u);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:u,isReferenceHidden:d,hasPopperEscaped:p},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":d,"data-popper-escaped":p})}const O1e={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:A1e};function R1e(e,t,n){var r=Zl(e),i=[Qo,Zo].indexOf(r)>=0?-1:1,o=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,a=o[0],s=o[1];return a=a||0,s=(s||0)*i,[Qo,cs].indexOf(r)>=0?{x:s,y:a}:{x:a,y:s}}function I1e(e){var t=e.state,n=e.options,r=e.name,i=n.offset,o=i===void 0?[0,0]:i,a=cH.reduce(function(d,p){return d[p]=R1e(p,t.rects,o),d},{}),s=a[t.placement],l=s.x,u=s.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=a}const D1e={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:I1e};function j1e(e){var t=e.state,n=e.name;t.modifiersData[n]=vH({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}const N1e={name:"popperOffsets",enabled:!0,phase:"read",fn:j1e,data:{}};function $1e(e){return e==="x"?"y":"x"}function F1e(e){var t=e.state,n=e.options,r=e.name,i=n.mainAxis,o=i===void 0?!0:i,a=n.altAxis,s=a===void 0?!1:a,l=n.boundary,u=n.rootBoundary,d=n.altBoundary,p=n.padding,m=n.tether,y=m===void 0?!0:m,b=n.tetherOffset,w=b===void 0?0:b,E=Ay(t,{boundary:l,rootBoundary:u,padding:p,altBoundary:d}),_=Zl(t.placement),k=Xm(t.placement),T=!k,L=O8(_),O=$1e(L),D=t.modifiersData.popperOffsets,I=t.rects.reference,N=t.rects.popper,W=typeof w=="function"?w(Object.assign({},t.rects,{placement:t.placement})):w,B=typeof W=="number"?{mainAxis:W,altAxis:W}:Object.assign({mainAxis:0,altAxis:0},W),K=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,ne={x:0,y:0};if(D){if(o){var z,$=L==="y"?Zo:Qo,V=L==="y"?us:cs,X=L==="y"?"height":"width",Q=D[L],G=Q+E[$],Y=Q-E[V],ee=y?-N[X]/2:0,fe=k===qm?I[X]:N[X],_e=k===qm?-N[X]:-I[X],we=t.elements.arrow,xe=y&&we?A8(we):{width:0,height:0},Le=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:hH(),Se=Le[$],Je=Le[V],Xe=W1(0,I[X],xe[X]),tt=T?I[X]/2-ee-Xe-Se-B.mainAxis:fe-Xe-Se-B.mainAxis,yt=T?-I[X]/2+ee+Xe+Je+B.mainAxis:_e+Xe+Je+B.mainAxis,Be=t.elements.arrow&&c2(t.elements.arrow),Ae=Be?L==="y"?Be.clientTop||0:Be.clientLeft||0:0,bt=(z=K==null?void 0:K[L])!=null?z:0,Fe=Q+tt-bt-Ae,at=Q+yt-bt,jt=W1(y?d3(G,Fe):G,Q,y?$h(Y,at):Y);D[L]=jt,ne[L]=jt-Q}if(s){var mt,Zt=L==="x"?Zo:Qo,on=L==="x"?us:cs,se=D[O],Ie=O==="y"?"height":"width",He=se+E[Zt],Ue=se-E[on],ye=[Zo,Qo].indexOf(_)!==-1,je=(mt=K==null?void 0:K[O])!=null?mt:0,vt=ye?He:se-I[Ie]-N[Ie]-je+B.altAxis,Mt=ye?se+I[Ie]+N[Ie]-je-B.altAxis:Ue,Me=y&&ye?u1e(vt,se,Mt):W1(y?vt:He,se,y?Mt:Ue);D[O]=Me,ne[O]=Me-se}t.modifiersData[r]=ne}}const B1e={name:"preventOverflow",enabled:!0,phase:"main",fn:F1e,requiresIfExists:["offset"]};function z1e(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function H1e(e){return e===hs(e)||!is(e)?R8(e):z1e(e)}function W1e(e){var t=e.getBoundingClientRect(),n=Km(t.width)/e.offsetWidth||1,r=Km(t.height)/e.offsetHeight||1;return n!==1||r!==1}function U1e(e,t,n){n===void 0&&(n=!1);var r=is(t),i=is(t)&&W1e(t),o=lf(t),a=Ym(e,i,n),s={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!n)&&((nu(t)!=="body"||D8(o))&&(s=H1e(t)),is(t)?(l=Ym(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):o&&(l.x=I8(o))),{x:a.left+s.scrollLeft-l.x,y:a.top+s.scrollTop-l.y,width:a.width,height:a.height}}function V1e(e){var t=new Map,n=new Set,r=[];e.forEach(function(o){t.set(o.name,o)});function i(o){n.add(o.name);var a=[].concat(o.requires||[],o.requiresIfExists||[]);a.forEach(function(s){if(!n.has(s)){var l=t.get(s);l&&i(l)}}),r.push(o)}return e.forEach(function(o){n.has(o.name)||i(o)}),r}function G1e(e){var t=V1e(e);return r1e.reduce(function(n,r){return n.concat(t.filter(function(i){return i.phase===r}))},[])}function q1e(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function K1e(e){var t=e.reduce(function(n,r){var i=n[r.name];return n[r.name]=i?Object.assign({},i,r,{options:Object.assign({},i.options,r.options),data:Object.assign({},i.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var fO={placement:"bottom",modifiers:[],strategy:"absolute"};function hO(){for(var e=arguments.length,t=new Array(e),n=0;n{}),T=S.useCallback(()=>{var B;!t||!b.current||!w.current||((B=k.current)==null||B.call(k),E.current=Z1e(b.current,w.current,{placement:_,modifiers:[Hve,Fve,$ve,{...Nve,enabled:!!m},{name:"eventListeners",...jve(a)},{name:"arrow",options:{padding:o}},{name:"offset",options:{offset:s??[0,l]}},{name:"flip",enabled:!!u,options:{padding:8}},{name:"preventOverflow",enabled:!!p,options:{boundary:d}},...n??[]],strategy:i}),E.current.forceUpdate(),k.current=E.current.destroy)},[_,t,n,m,a,o,s,l,u,p,d,i]);S.useEffect(()=>()=>{var B;!b.current&&!w.current&&((B=E.current)==null||B.destroy(),E.current=null)},[]);const L=S.useCallback(B=>{b.current=B,T()},[T]),O=S.useCallback((B={},K=null)=>({...B,ref:Rn(L,K)}),[L]),D=S.useCallback(B=>{w.current=B,T()},[T]),I=S.useCallback((B={},K=null)=>({...B,ref:Rn(D,K),style:{...B.style,position:i,minWidth:m?void 0:"max-content",inset:"0 auto auto 0"}}),[i,D,m]),N=S.useCallback((B={},K=null)=>{const{size:ne,shadowColor:z,bg:$,style:V,...X}=B;return{...X,ref:K,"data-popper-arrow":"",style:Q1e(B)}},[]),W=S.useCallback((B={},K=null)=>({...B,ref:K,"data-popper-arrow-inner":""}),[]);return{update(){var B;(B=E.current)==null||B.update()},forceUpdate(){var B;(B=E.current)==null||B.forceUpdate()},transformOrigin:ii.transformOrigin.varRef,referenceRef:L,popperRef:D,getPopperProps:I,getArrowProps:N,getArrowInnerProps:W,getReferenceProps:O}}function Q1e(e){const{size:t,shadowColor:n,bg:r,style:i}=e,o={...i,position:"absolute"};return t&&(o["--popper-arrow-size"]=t),n&&(o["--popper-arrow-shadow-color"]=n),r&&(o["--popper-arrow-bg"]=r),o}function N8(e={}){const{onClose:t,onOpen:n,isOpen:r,id:i}=e,o=Qr(n),a=Qr(t),[s,l]=S.useState(e.defaultIsOpen||!1),u=r!==void 0?r:s,d=r!==void 0,p=S.useId(),m=i??`disclosure-${p}`,y=S.useCallback(()=>{d||l(!1),a==null||a()},[d,a]),b=S.useCallback(()=>{d||l(!0),o==null||o()},[d,o]),w=S.useCallback(()=>{u?y():b()},[u,b,y]);function E(k={}){return{...k,"aria-expanded":u,"aria-controls":m,onClick(T){var L;(L=k.onClick)==null||L.call(k,T),w()}}}function _(k={}){return{...k,hidden:!u,id:m}}return{isOpen:u,onOpen:b,onClose:y,onToggle:w,isControlled:d,getButtonProps:E,getDisclosureProps:_}}function J1e(e){const{ref:t,handler:n,enabled:r=!0}=e,i=Qr(n),a=S.useRef({isPointerDown:!1,ignoreEmulatedMouseEvents:!1}).current;S.useEffect(()=>{if(!r)return;const s=p=>{pC(p,t)&&(a.isPointerDown=!0)},l=p=>{if(a.ignoreEmulatedMouseEvents){a.ignoreEmulatedMouseEvents=!1;return}a.isPointerDown&&n&&pC(p,t)&&(a.isPointerDown=!1,i(p))},u=p=>{a.ignoreEmulatedMouseEvents=!0,n&&a.isPointerDown&&pC(p,t)&&(a.isPointerDown=!1,i(p))},d=yH(t.current);return d.addEventListener("mousedown",s,!0),d.addEventListener("mouseup",l,!0),d.addEventListener("touchstart",s,!0),d.addEventListener("touchend",u,!0),()=>{d.removeEventListener("mousedown",s,!0),d.removeEventListener("mouseup",l,!0),d.removeEventListener("touchstart",s,!0),d.removeEventListener("touchend",u,!0)}},[n,t,i,a,r])}function pC(e,t){var n;const r=e.target;return e.button>0||r&&!yH(r).contains(r)?!1:!((n=t.current)!=null&&n.contains(r))}function yH(e){var t;return(t=e==null?void 0:e.ownerDocument)!=null?t:document}function bH(e){const{isOpen:t,ref:n}=e,[r,i]=S.useState(t),[o,a]=S.useState(!1);return S.useEffect(()=>{o||(i(t),a(!0))},[t,o,r]),Dh(()=>n.current,"animationend",()=>{i(t)}),{present:!(t?!1:!r),onComplete(){var l;const u=ove(n.current),d=new u.CustomEvent("animationend",{bubbles:!0});(l=n.current)==null||l.dispatchEvent(d)}}}function $8(e){const{wasSelected:t,enabled:n,isSelected:r,mode:i="unmount"}=e;return!!(!n||r||i==="keepMounted"&&t)}var[eye,tye,nye,rye]=a8(),[iye,d2]=Pn({strict:!1,name:"MenuContext"});function oye(e,...t){const n=S.useId(),r=e||n;return S.useMemo(()=>t.map(i=>`${i}-${r}`),[r,t])}function xH(e){var t;return(t=e==null?void 0:e.ownerDocument)!=null?t:document}function pO(e){return xH(e).activeElement===e}function aye(e={}){const{id:t,closeOnSelect:n=!0,closeOnBlur:r=!0,initialFocusRef:i,autoSelect:o=!0,isLazy:a,isOpen:s,defaultIsOpen:l,onClose:u,onOpen:d,placement:p="bottom-start",lazyBehavior:m="unmount",direction:y,computePositionOnMount:b=!1,...w}=e,E=S.useRef(null),_=S.useRef(null),k=nye(),T=S.useCallback(()=>{requestAnimationFrame(()=>{var we;(we=E.current)==null||we.focus({preventScroll:!1})})},[]),L=S.useCallback(()=>{const we=setTimeout(()=>{var xe;if(i)(xe=i.current)==null||xe.focus();else{const Le=k.firstEnabled();Le&&z(Le.index)}});G.current.add(we)},[k,i]),O=S.useCallback(()=>{const we=setTimeout(()=>{const xe=k.lastEnabled();xe&&z(xe.index)});G.current.add(we)},[k]),D=S.useCallback(()=>{d==null||d(),o?L():T()},[o,L,T,d]),{isOpen:I,onOpen:N,onClose:W,onToggle:B}=N8({isOpen:s,defaultIsOpen:l,onClose:u,onOpen:D});J1e({enabled:I&&r,ref:E,handler:we=>{var xe;(xe=_.current)!=null&&xe.contains(we.target)||W()}});const K=j8({...w,enabled:I||b,placement:p,direction:y}),[ne,z]=S.useState(-1);rc(()=>{I||z(-1)},[I]),lH(E,{focusRef:_,visible:I,shouldFocus:!0});const $=bH({isOpen:I,ref:E}),[V,X]=oye(t,"menu-button","menu-list"),Q=S.useCallback(()=>{N(),T()},[N,T]),G=S.useRef(new Set([]));hye(()=>{G.current.forEach(we=>clearTimeout(we)),G.current.clear()});const Y=S.useCallback(()=>{N(),L()},[L,N]),ee=S.useCallback(()=>{N(),O()},[N,O]),fe=S.useCallback(()=>{var we,xe;const Le=xH(E.current),Se=(we=E.current)==null?void 0:we.contains(Le.activeElement);if(!(I&&!Se))return;const Xe=(xe=k.item(ne))==null?void 0:xe.node;Xe==null||Xe.focus()},[I,ne,k]),_e=S.useRef(null);return{openAndFocusMenu:Q,openAndFocusFirstItem:Y,openAndFocusLastItem:ee,onTransitionEnd:fe,unstable__animationState:$,descendants:k,popper:K,buttonId:V,menuId:X,forceUpdate:K.forceUpdate,orientation:"vertical",isOpen:I,onToggle:B,onOpen:N,onClose:W,menuRef:E,buttonRef:_,focusedIndex:ne,closeOnSelect:n,closeOnBlur:r,autoSelect:o,setFocusedIndex:z,isLazy:a,lazyBehavior:m,initialFocusRef:i,rafId:_e}}function sye(e={},t=null){const n=d2(),{onToggle:r,popper:i,openAndFocusFirstItem:o,openAndFocusLastItem:a}=n,s=S.useCallback(l=>{const u=l.key,p={Enter:o,ArrowDown:o,ArrowUp:a}[u];p&&(l.preventDefault(),l.stopPropagation(),p(l))},[o,a]);return{...e,ref:Rn(n.buttonRef,t,i.referenceRef),id:n.buttonId,"data-active":Bt(n.isOpen),"aria-expanded":n.isOpen,"aria-haspopup":"menu","aria-controls":n.menuId,onClick:ht(e.onClick,r),onKeyDown:ht(e.onKeyDown,s)}}function Q_(e){var t;return dye(e)&&!!((t=e==null?void 0:e.getAttribute("role"))!=null&&t.startsWith("menuitem"))}function lye(e={},t=null){const n=d2();if(!n)throw new Error("useMenuContext: context is undefined. Seems you forgot to wrap component within ");const{focusedIndex:r,setFocusedIndex:i,menuRef:o,isOpen:a,onClose:s,menuId:l,isLazy:u,lazyBehavior:d,unstable__animationState:p}=n,m=tye(),y=Eve({preventDefault:_=>_.key!==" "&&Q_(_.target)}),b=S.useCallback(_=>{const k=_.key,L={Tab:D=>D.preventDefault(),Escape:s,ArrowDown:()=>{const D=m.nextEnabled(r);D&&i(D.index)},ArrowUp:()=>{const D=m.prevEnabled(r);D&&i(D.index)}}[k];if(L){_.preventDefault(),L(_);return}const O=y(D=>{const I=Pve(m.values(),D,N=>{var W,B;return(B=(W=N==null?void 0:N.node)==null?void 0:W.textContent)!=null?B:""},m.item(r));if(I){const N=m.indexOf(I.node);i(N)}});Q_(_.target)&&O(_)},[m,r,y,s,i]),w=S.useRef(!1);a&&(w.current=!0);const E=$8({wasSelected:w.current,enabled:u,mode:d,isSelected:p.present});return{...e,ref:Rn(o,t),children:E?e.children:null,tabIndex:-1,role:"menu",id:l,style:{...e.style,transformOrigin:"var(--popper-transform-origin)"},"aria-orientation":"vertical",onKeyDown:ht(e.onKeyDown,b)}}function uye(e={}){const{popper:t,isOpen:n}=d2();return t.getPopperProps({...e,style:{visibility:n?"visible":"hidden",...e.style}})}function cye(e={},t=null){const{onMouseEnter:n,onMouseMove:r,onMouseLeave:i,onClick:o,onFocus:a,isDisabled:s,isFocusable:l,closeOnSelect:u,type:d,...p}=e,m=d2(),{setFocusedIndex:y,focusedIndex:b,closeOnSelect:w,onClose:E,menuRef:_,isOpen:k,menuId:T,rafId:L}=m,O=S.useRef(null),D=`${T}-menuitem-${S.useId()}`,{index:I,register:N}=rye({disabled:s&&!l}),W=S.useCallback(Q=>{n==null||n(Q),!s&&y(I)},[y,I,s,n]),B=S.useCallback(Q=>{r==null||r(Q),O.current&&!pO(O.current)&&W(Q)},[W,r]),K=S.useCallback(Q=>{i==null||i(Q),!s&&y(-1)},[y,s,i]),ne=S.useCallback(Q=>{o==null||o(Q),Q_(Q.currentTarget)&&(u??w)&&E()},[E,o,w,u]),z=S.useCallback(Q=>{a==null||a(Q),y(I)},[y,a,I]),$=I===b,V=s&&!l;rc(()=>{k&&($&&!V&&O.current?(L.current&&cancelAnimationFrame(L.current),L.current=requestAnimationFrame(()=>{var Q;(Q=O.current)==null||Q.focus(),L.current=null})):_.current&&!pO(_.current)&&_.current.focus())},[$,V,_,k]);const X=sH({onClick:ne,onFocus:z,onMouseEnter:W,onMouseMove:B,onMouseLeave:K,ref:Rn(N,O,t),isDisabled:s,isFocusable:l});return{...p,...X,type:d??X.type,id:D,role:"menuitem",tabIndex:$?0:-1}}function dye(e){var t;if(!fye(e))return!1;const n=(t=e.ownerDocument.defaultView)!=null?t:window;return e instanceof n.HTMLElement}function fye(e){return e!=null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function hye(e,t=[]){return S.useEffect(()=>()=>e(),t)}var[pye,Fw]=Pn({name:"MenuStylesContext",errorMessage:`useMenuStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),SH=e=>{const{children:t}=e,n=Yi("Menu",e),r=fr(e),{direction:i}=Zy(),{descendants:o,...a}=aye({...r,direction:i}),s=S.useMemo(()=>a,[a]),{isOpen:l,onClose:u,forceUpdate:d}=s;return g.jsx(eye,{value:o,children:g.jsx(iye,{value:s,children:g.jsx(pye,{value:n,children:ts(t,{isOpen:l,onClose:u,forceUpdate:d})})})})};SH.displayName="Menu";var wH=Ze((e,t)=>{const n=Fw();return g.jsx(Ne.span,{ref:t,...e,__css:n.command,className:"chakra-menu__command"})});wH.displayName="MenuCommand";var gye=Ze((e,t)=>{const{type:n,...r}=e,i=Fw(),o=r.as||n?n??void 0:"button",a=S.useMemo(()=>({textDecoration:"none",color:"inherit",userSelect:"none",display:"flex",width:"100%",alignItems:"center",textAlign:"start",flex:"0 0 auto",outline:0,...i.item}),[i.item]);return g.jsx(Ne.button,{ref:t,type:o,...r,__css:a})}),CH=e=>{const{className:t,children:n,...r}=e,i=S.Children.only(n),o=S.isValidElement(i)?S.cloneElement(i,{focusable:"false","aria-hidden":!0,className:xt("chakra-menu__icon",i.props.className)}):null,a=xt("chakra-menu__icon-wrapper",t);return g.jsx(Ne.span,{className:a,...r,__css:{flexShrink:0},children:o})};CH.displayName="MenuIcon";var _H=Ze((e,t)=>{const{icon:n,iconSpacing:r="0.75rem",command:i,commandSpacing:o="0.75rem",children:a,...s}=e,l=cye(s,t),d=n||i?g.jsx("span",{style:{pointerEvents:"none",flex:1},children:a}):a;return g.jsxs(gye,{...l,className:xt("chakra-menu__menuitem",l.className),children:[n&&g.jsx(CH,{fontSize:"0.8em",marginEnd:r,children:n}),d,i&&g.jsx(wH,{marginStart:o,children:i})]})});_H.displayName="MenuItem";var mye={enter:{visibility:"visible",opacity:1,scale:1,transition:{duration:.2,ease:[.4,0,.2,1]}},exit:{transitionEnd:{visibility:"hidden"},opacity:0,scale:.8,transition:{duration:.1,easings:"easeOut"}}},vye=Ne(su.div),kH=Ze(function(t,n){var r,i;const{rootProps:o,motionProps:a,...s}=t,{isOpen:l,onTransitionEnd:u,unstable__animationState:d}=d2(),p=lye(s,n),m=uye(o),y=Fw();return g.jsx(Ne.div,{...m,__css:{zIndex:(i=t.zIndex)!=null?i:(r=y.list)==null?void 0:r.zIndex},children:g.jsx(vye,{variants:mye,initial:!1,animate:l?"enter":"exit",__css:{outline:0,...y.list},...a,className:xt("chakra-menu__menu-list",p.className),...p,onUpdate:u,onAnimationComplete:Sw(d.onComplete,p.onAnimationComplete)})})});kH.displayName="MenuList";var yye=Ze((e,t)=>{const n=Fw();return g.jsx(Ne.button,{ref:t,...e,__css:{display:"inline-flex",appearance:"none",alignItems:"center",outline:0,...n.button}})}),EH=Ze((e,t)=>{const{children:n,as:r,...i}=e,o=sye(i,t),a=r||yye;return g.jsx(a,{...o,className:xt("chakra-menu__menu-button",e.className),children:g.jsx(Ne.span,{__css:{pointerEvents:"none",flex:"1 1 auto",minW:0},children:e.children})})});EH.displayName="MenuButton";var bye={slideInBottom:{...B_,custom:{offsetY:16,reverse:!0}},slideInRight:{...B_,custom:{offsetX:16,reverse:!0}},scale:{...az,custom:{initialScale:.95,reverse:!0}},none:{}},xye=Ne(su.section),Sye=e=>bye[e||"none"],PH=S.forwardRef((e,t)=>{const{preset:n,motionProps:r=Sye(n),...i}=e;return g.jsx(xye,{ref:t,...r,...i})});PH.displayName="ModalTransition";var wye=Object.defineProperty,Cye=(e,t,n)=>t in e?wye(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,_ye=(e,t,n)=>(Cye(e,typeof t!="symbol"?t+"":t,n),n),kye=class{constructor(){_ye(this,"modals"),this.modals=new Map}add(e){return this.modals.set(e,this.modals.size+1),this.modals.size}remove(e){this.modals.delete(e)}isTopModal(e){return e?this.modals.get(e)===this.modals.size:!1}},J_=new kye;function TH(e,t){const[n,r]=S.useState(0);return S.useEffect(()=>{const i=e.current;if(i){if(t){const o=J_.add(i);r(o)}return()=>{J_.remove(i),r(0)}}},[t,e]),n}var Eye=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},wg=new WeakMap,Gb=new WeakMap,qb={},gC=0,MH=function(e){return e&&(e.host||MH(e.parentNode))},Pye=function(e,t){return t.map(function(n){if(e.contains(n))return n;var r=MH(n);return r&&e.contains(r)?r:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return Boolean(n)})},Tye=function(e,t,n,r){var i=Pye(t,Array.isArray(e)?e:[e]);qb[n]||(qb[n]=new WeakMap);var o=qb[n],a=[],s=new Set,l=new Set(i),u=function(p){!p||s.has(p)||(s.add(p),u(p.parentNode))};i.forEach(u);var d=function(p){!p||l.has(p)||Array.prototype.forEach.call(p.children,function(m){if(s.has(m))d(m);else{var y=m.getAttribute(r),b=y!==null&&y!=="false",w=(wg.get(m)||0)+1,E=(o.get(m)||0)+1;wg.set(m,w),o.set(m,E),a.push(m),w===1&&b&&Gb.set(m,!0),E===1&&m.setAttribute(n,"true"),b||m.setAttribute(r,"true")}})};return d(t),s.clear(),gC++,function(){a.forEach(function(p){var m=wg.get(p)-1,y=o.get(p)-1;wg.set(p,m),o.set(p,y),m||(Gb.has(p)||p.removeAttribute(r),Gb.delete(p)),y||p.removeAttribute(n)}),gC--,gC||(wg=new WeakMap,wg=new WeakMap,Gb=new WeakMap,qb={})}},LH=function(e,t,n){n===void 0&&(n="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),i=t||Eye(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll("[aria-live]"))),Tye(r,i,n,"aria-hidden")):function(){return null}};function Mye(e){const{isOpen:t,onClose:n,id:r,closeOnOverlayClick:i=!0,closeOnEsc:o=!0,useInert:a=!0,onOverlayClick:s,onEsc:l}=e,u=S.useRef(null),d=S.useRef(null),[p,m,y]=Aye(r,"chakra-modal","chakra-modal--header","chakra-modal--body");Lye(u,t&&a),TH(u,t);const b=S.useRef(null),w=S.useCallback(N=>{b.current=N.target},[]),E=S.useCallback(N=>{N.key==="Escape"&&(N.stopPropagation(),o&&(n==null||n()),l==null||l())},[o,n,l]),[_,k]=S.useState(!1),[T,L]=S.useState(!1),O=S.useCallback((N={},W=null)=>({role:"dialog",...N,ref:Rn(W,u),id:p,tabIndex:-1,"aria-modal":!0,"aria-labelledby":_?m:void 0,"aria-describedby":T?y:void 0,onClick:ht(N.onClick,B=>B.stopPropagation())}),[y,T,p,m,_]),D=S.useCallback(N=>{N.stopPropagation(),b.current===N.target&&J_.isTopModal(u.current)&&(i&&(n==null||n()),s==null||s())},[n,i,s]),I=S.useCallback((N={},W=null)=>({...N,ref:Rn(W,d),onClick:ht(N.onClick,D),onKeyDown:ht(N.onKeyDown,E),onMouseDown:ht(N.onMouseDown,w)}),[E,w,D]);return{isOpen:t,onClose:n,headerId:m,bodyId:y,setBodyMounted:L,setHeaderMounted:k,dialogRef:u,overlayRef:d,getDialogProps:O,getDialogContainerProps:I}}function Lye(e,t){const n=e.current;S.useEffect(()=>{if(!(!e.current||!t))return LH(e.current)},[t,e,n])}function Aye(e,...t){const n=S.useId(),r=e||n;return S.useMemo(()=>t.map(i=>`${i}-${r}`),[r,t])}var[Oye,g0]=Pn({name:"ModalStylesContext",errorMessage:`useModalStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),[Rye,Yh]=Pn({strict:!0,name:"ModalContext",errorMessage:"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in ``"}),Yd=e=>{const t={scrollBehavior:"outside",autoFocus:!0,trapFocus:!0,returnFocusOnClose:!0,blockScrollOnMount:!0,allowPinchZoom:!1,motionPreset:"scale",lockFocusAcrossFrames:!0,...e},{portalProps:n,children:r,autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:l,blockScrollOnMount:u,allowPinchZoom:d,preserveScrollBarGap:p,motionPreset:m,lockFocusAcrossFrames:y,onCloseComplete:b}=t,w=Yi("Modal",t),_={...Mye(t),autoFocus:i,trapFocus:o,initialFocusRef:a,finalFocusRef:s,returnFocusOnClose:l,blockScrollOnMount:u,allowPinchZoom:d,preserveScrollBarGap:p,motionPreset:m,lockFocusAcrossFrames:y};return g.jsx(Rye,{value:_,children:g.jsx(Oye,{value:w,children:g.jsx(rp,{onExitComplete:b,children:_.isOpen&&g.jsx(c0,{...n,children:r})})})})};Yd.displayName="Modal";var eS="right-scroll-bar-position",tS="width-before-scroll-bar",Iye="with-scroll-bars-hidden",Dye="--removed-body-scroll-bar-size",AH=xz(),mC=function(){},Bw=S.forwardRef(function(e,t){var n=S.useRef(null),r=S.useState({onScrollCapture:mC,onWheelCapture:mC,onTouchMoveCapture:mC}),i=r[0],o=r[1],a=e.forwardProps,s=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,p=e.shards,m=e.sideCar,y=e.noIsolation,b=e.inert,w=e.allowPinchZoom,E=e.as,_=E===void 0?"div":E,k=YB(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noIsolation","inert","allowPinchZoom","as"]),T=m,L=vz([n,t]),O=Nl(Nl({},k),i);return S.createElement(S.Fragment,null,d&&S.createElement(T,{sideCar:AH,removeScrollBar:u,shards:p,noIsolation:y,inert:b,setCallbacks:o,allowPinchZoom:!!w,lockRef:n}),a?S.cloneElement(S.Children.only(s),Nl(Nl({},O),{ref:L})):S.createElement(_,Nl({},O,{className:l,ref:L}),s))});Bw.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Bw.classNames={fullWidth:tS,zeroRight:eS};var gO,jye=function(){if(gO)return gO;if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function Nye(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var t=jye();return t&&e.setAttribute("nonce",t),e}function $ye(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function Fye(e){var t=document.head||document.getElementsByTagName("head")[0];t.appendChild(e)}var Bye=function(){var e=0,t=null;return{add:function(n){e==0&&(t=Nye())&&($ye(t,n),Fye(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},zye=function(){var e=Bye();return function(t,n){S.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},OH=function(){var e=zye(),t=function(n){var r=n.styles,i=n.dynamic;return e(r,i),null};return t},Hye={left:0,top:0,right:0,gap:0},vC=function(e){return parseInt(e||"",10)||0},Wye=function(e){var t=window.getComputedStyle(document.body),n=t[e==="padding"?"paddingLeft":"marginLeft"],r=t[e==="padding"?"paddingTop":"marginTop"],i=t[e==="padding"?"paddingRight":"marginRight"];return[vC(n),vC(r),vC(i)]},Uye=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return Hye;var t=Wye(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Vye=OH(),Gye=function(e,t,n,r){var i=e.left,o=e.top,a=e.right,s=e.gap;return n===void 0&&(n="margin"),` + .`.concat(Iye,` { overflow: hidden `).concat(r,`; padding-right: `).concat(s,"px ").concat(r,`; } @@ -402,12 +402,12 @@ Error generating stack: `+o.message+` } body { - `).concat(Iye,": ").concat(s,`px; + `).concat(Dye,": ").concat(s,`px; } -`)},Gye=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?"margin":r,o=S.useMemo(function(){return Wye(i)},[i]);return S.createElement(Uye,{styles:Vye(o,!t,i,n?"":"!important")})},ek=!1;if(typeof window<"u")try{var Kb=Object.defineProperty({},"passive",{get:function(){return ek=!0,!0}});window.addEventListener("test",Kb,Kb),window.removeEventListener("test",Kb,Kb)}catch{ek=!1}var Cg=ek?{passive:!1}:!1,qye=function(e){return e.tagName==="TEXTAREA"},RH=function(e,t){var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!qye(e)&&n[t]==="visible")},Kye=function(e){return RH(e,"overflowY")},Yye=function(e){return RH(e,"overflowX")},mO=function(e,t){var n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var r=IH(e,n);if(r){var i=DH(e,n),o=i[1],a=i[2];if(o>a)return!0}n=n.parentNode}while(n&&n!==document.body);return!1},Xye=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},Zye=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},IH=function(e,t){return e==="v"?Kye(t):Yye(t)},DH=function(e,t){return e==="v"?Xye(t):Zye(t)},Qye=function(e,t){return e==="h"&&t==="rtl"?-1:1},Jye=function(e,t,n,r,i){var o=Qye(e,window.getComputedStyle(t).direction),a=o*r,s=n.target,l=t.contains(s),u=!1,d=a>0,h=0,m=0;do{var y=DH(e,s),b=y[0],w=y[1],E=y[2],_=w-E-o*b;(b||_)&&IH(e,s)&&(h+=_,m+=b),s=s.parentNode}while(!l&&s!==document.body||l&&(t.contains(s)||t===s));return(d&&(i&&h===0||!i&&a>h)||!d&&(i&&m===0||!i&&-a>m))&&(u=!0),u},Yb=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},vO=function(e){return[e.deltaX,e.deltaY]},yO=function(e){return e&&"current"in e?e.current:e},e2e=function(e,t){return e[0]===t[0]&&e[1]===t[1]},t2e=function(e){return` +`)},qye=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?"margin":r,o=S.useMemo(function(){return Uye(i)},[i]);return S.createElement(Vye,{styles:Gye(o,!t,i,n?"":"!important")})},ek=!1;if(typeof window<"u")try{var Kb=Object.defineProperty({},"passive",{get:function(){return ek=!0,!0}});window.addEventListener("test",Kb,Kb),window.removeEventListener("test",Kb,Kb)}catch{ek=!1}var Cg=ek?{passive:!1}:!1,Kye=function(e){return e.tagName==="TEXTAREA"},RH=function(e,t){var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!Kye(e)&&n[t]==="visible")},Yye=function(e){return RH(e,"overflowY")},Xye=function(e){return RH(e,"overflowX")},mO=function(e,t){var n=t;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var r=IH(e,n);if(r){var i=DH(e,n),o=i[1],a=i[2];if(o>a)return!0}n=n.parentNode}while(n&&n!==document.body);return!1},Zye=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},Qye=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},IH=function(e,t){return e==="v"?Yye(t):Xye(t)},DH=function(e,t){return e==="v"?Zye(t):Qye(t)},Jye=function(e,t){return e==="h"&&t==="rtl"?-1:1},e2e=function(e,t,n,r,i){var o=Jye(e,window.getComputedStyle(t).direction),a=o*r,s=n.target,l=t.contains(s),u=!1,d=a>0,p=0,m=0;do{var y=DH(e,s),b=y[0],w=y[1],E=y[2],_=w-E-o*b;(b||_)&&IH(e,s)&&(p+=_,m+=b),s=s.parentNode}while(!l&&s!==document.body||l&&(t.contains(s)||t===s));return(d&&(i&&p===0||!i&&a>p)||!d&&(i&&m===0||!i&&-a>m))&&(u=!0),u},Yb=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},vO=function(e){return[e.deltaX,e.deltaY]},yO=function(e){return e&&"current"in e?e.current:e},t2e=function(e,t){return e[0]===t[0]&&e[1]===t[1]},n2e=function(e){return` .block-interactivity-`.concat(e,` {pointer-events: none;} .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},n2e=0,_g=[];function r2e(e){var t=S.useRef([]),n=S.useRef([0,0]),r=S.useRef(),i=S.useState(n2e++)[0],o=S.useState(function(){return OH()})[0],a=S.useRef(e);S.useEffect(function(){a.current=e},[e]),S.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var w=$_([e.lockRef.current],(e.shards||[]).map(yO),!0).filter(Boolean);return w.forEach(function(E){return E.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),w.forEach(function(E){return E.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var s=S.useCallback(function(w,E){if("touches"in w&&w.touches.length===2)return!a.current.allowPinchZoom;var _=Yb(w),k=n.current,T="deltaX"in w?w.deltaX:k[0]-_[0],L="deltaY"in w?w.deltaY:k[1]-_[1],O,D=w.target,I=Math.abs(T)>Math.abs(L)?"h":"v";if("touches"in w&&I==="h"&&D.type==="range")return!1;var N=mO(I,D);if(!N)return!0;if(N?O=I:(O=I==="v"?"h":"v",N=mO(I,D)),!N)return!1;if(!r.current&&"changedTouches"in w&&(T||L)&&(r.current=O),!O)return!0;var W=r.current||O;return Jye(W,E,w,W==="h"?T:L,!0)},[]),l=S.useCallback(function(w){var E=w;if(!(!_g.length||_g[_g.length-1]!==o)){var _="deltaY"in E?vO(E):Yb(E),k=t.current.filter(function(O){return O.name===E.type&&O.target===E.target&&e2e(O.delta,_)})[0];if(k&&k.should){E.cancelable&&E.preventDefault();return}if(!k){var T=(a.current.shards||[]).map(yO).filter(Boolean).filter(function(O){return O.contains(E.target)}),L=T.length>0?s(E,T[0]):!a.current.noIsolation;L&&E.cancelable&&E.preventDefault()}}},[]),u=S.useCallback(function(w,E,_,k){var T={name:w,delta:E,target:_,should:k};t.current.push(T),setTimeout(function(){t.current=t.current.filter(function(L){return L!==T})},1)},[]),d=S.useCallback(function(w){n.current=Yb(w),r.current=void 0},[]),h=S.useCallback(function(w){u(w.type,vO(w),w.target,s(w,e.lockRef.current))},[]),m=S.useCallback(function(w){u(w.type,Yb(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return _g.push(o),e.setCallbacks({onScrollCapture:h,onWheelCapture:h,onTouchMoveCapture:m}),document.addEventListener("wheel",l,Cg),document.addEventListener("touchmove",l,Cg),document.addEventListener("touchstart",d,Cg),function(){_g=_g.filter(function(w){return w!==o}),document.removeEventListener("wheel",l,Cg),document.removeEventListener("touchmove",l,Cg),document.removeEventListener("touchstart",d,Cg)}},[]);var y=e.removeScrollBar,b=e.inert;return S.createElement(S.Fragment,null,b?S.createElement(o,{styles:t2e(i)}):null,y?S.createElement(Gye,{gapMode:"margin"}):null)}const i2e=s0e(AH,r2e);var jH=S.forwardRef(function(e,t){return S.createElement(Bw,Nl({},e,{ref:t,sideCar:i2e}))});jH.classNames=Bw.classNames;const NH=jH;function o2e(e){const{autoFocus:t,trapFocus:n,dialogRef:r,initialFocusRef:i,blockScrollOnMount:o,allowPinchZoom:a,finalFocusRef:s,returnFocusOnClose:l,preserveScrollBarGap:u,lockFocusAcrossFrames:d,isOpen:h}=Yh(),[m,y]=RB();S.useEffect(()=>{!m&&y&&setTimeout(y)},[m,y]);const b=TH(r,h);return g.jsx(Jz,{autoFocus:t,isDisabled:!n,initialFocusRef:i,finalFocusRef:s,restoreFocus:l,contentRef:r,lockFocusAcrossFrames:d,children:g.jsx(NH,{removeScrollBar:!u,allowPinchZoom:a,enabled:b===1&&o,forwardProps:!0,children:e.children})})}var Xd=Ze((e,t)=>{const{className:n,children:r,containerProps:i,motionProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:l}=Yh(),u=s(a,t),d=l(i),h=xt("chakra-modal__content",n),m=g0(),y={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...m.dialog},b={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...m.dialogContainer},{motionPreset:w}=Yh();return g.jsx(o2e,{children:g.jsx(Ne.div,{...d,className:"chakra-modal__content-container",tabIndex:-1,__css:b,children:g.jsx(PH,{preset:w,motionProps:o,className:h,...u,__css:y,children:r})})})});Xd.displayName="ModalContent";function $H(e){const{leastDestructiveRef:t,...n}=e;return g.jsx(Yd,{...n,initialFocusRef:t})}var FH=Ze((e,t)=>g.jsx(Xd,{ref:t,role:"alertdialog",...e})),zw=Ze((e,t)=>{const{className:n,...r}=e,i=xt("chakra-modal__footer",n),a={display:"flex",alignItems:"center",justifyContent:"flex-end",...g0().footer};return g.jsx(Ne.footer,{ref:t,...r,__css:a,className:i})});zw.displayName="ModalFooter";var op=Ze((e,t)=>{const{className:n,...r}=e,{headerId:i,setHeaderMounted:o}=Yh();S.useEffect(()=>(o(!0),()=>o(!1)),[o]);const a=xt("chakra-modal__header",n),l={flex:0,...g0().header};return g.jsx(Ne.header,{ref:t,className:a,id:i,...r,__css:l})});op.displayName="ModalHeader";var a2e=Ne(su.div),oc=Ze((e,t)=>{const{className:n,transition:r,motionProps:i,...o}=e,a=xt("chakra-modal__overlay",n),l={pos:"fixed",left:"0",top:"0",w:"100vw",h:"100vh",...g0().overlay},{motionPreset:u}=Yh(),h=i||(u==="none"?{}:oz);return g.jsx(a2e,{...h,__css:l,ref:t,className:a,...o})});oc.displayName="ModalOverlay";var Zm=Ze((e,t)=>{const{className:n,...r}=e,{bodyId:i,setBodyMounted:o}=Yh();S.useEffect(()=>(o(!0),()=>o(!1)),[o]);const a=xt("chakra-modal__body",n),s=g0();return g.jsx(Ne.div,{ref:t,className:a,id:i,...r,__css:s.body})});Zm.displayName="ModalBody";var m0=Ze((e,t)=>{const{onClick:n,className:r,...i}=e,{onClose:o}=Yh(),a=xt("chakra-modal__close-btn",r),s=g0();return g.jsx(o8,{ref:t,__css:s.closeButton,className:a,onClick:ht(n,l=>{l.stopPropagation(),o()}),...i})});m0.displayName="ModalCloseButton";var s2e=e=>g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M21,5H3C2.621,5,2.275,5.214,2.105,5.553C1.937,5.892,1.973,6.297,2.2,6.6l9,12 c0.188,0.252,0.485,0.4,0.8,0.4s0.611-0.148,0.8-0.4l9-12c0.228-0.303,0.264-0.708,0.095-1.047C21.725,5.214,21.379,5,21,5z"})}),l2e=e=>g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M12.8,5.4c-0.377-0.504-1.223-0.504-1.6,0l-9,12c-0.228,0.303-0.264,0.708-0.095,1.047 C2.275,18.786,2.621,19,3,19h18c0.379,0,0.725-0.214,0.895-0.553c0.169-0.339,0.133-0.744-0.095-1.047L12.8,5.4z"})});function bO(e,t,n,r){S.useEffect(()=>{var i;if(!e.current||!r)return;const o=(i=e.current.ownerDocument.defaultView)!=null?i:window,a=Array.isArray(t)?t:[t],s=new o.MutationObserver(l=>{for(const u of l)u.type==="attributes"&&u.attributeName&&a.includes(u.attributeName)&&n(u)});return s.observe(e.current,{attributes:!0,attributeFilter:a}),()=>s.disconnect()})}function u2e(e,t){const n=Qr(e);S.useEffect(()=>{let r=null;const i=()=>n();return t!==null&&(r=window.setInterval(i,t)),()=>{r&&window.clearInterval(r)}},[t,n])}var c2e=50,xO=300;function d2e(e,t){const[n,r]=S.useState(!1),[i,o]=S.useState(null),[a,s]=S.useState(!0),l=S.useRef(null),u=()=>clearTimeout(l.current);u2e(()=>{i==="increment"&&e(),i==="decrement"&&t()},n?c2e:null);const d=S.useCallback(()=>{a&&e(),l.current=setTimeout(()=>{s(!1),r(!0),o("increment")},xO)},[e,a]),h=S.useCallback(()=>{a&&t(),l.current=setTimeout(()=>{s(!1),r(!0),o("decrement")},xO)},[t,a]),m=S.useCallback(()=>{s(!0),r(!1),u()},[]);return S.useEffect(()=>()=>u(),[]),{up:d,down:h,stop:m,isSpinning:n}}var f2e=/^[Ee0-9+\-.]$/;function h2e(e){return f2e.test(e)}function p2e(e,t){if(e.key==null)return!0;const n=e.ctrlKey||e.altKey||e.metaKey;return!(e.key.length===1)||n?!0:t(e.key)}function g2e(e={}){const{focusInputOnChange:t=!0,clampValueOnBlur:n=!0,keepWithinRange:r=!0,min:i=Number.MIN_SAFE_INTEGER,max:o=Number.MAX_SAFE_INTEGER,step:a=1,isReadOnly:s,isDisabled:l,isRequired:u,isInvalid:d,pattern:h="[0-9]*(.[0-9]+)?",inputMode:m="decimal",allowMouseWheel:y,id:b,onChange:w,precision:E,name:_,"aria-describedby":k,"aria-label":T,"aria-labelledby":L,onFocus:O,onBlur:D,onInvalid:I,getAriaValueText:N,isValidCharacter:W,format:B,parse:K,...ne}=e,z=Qr(O),$=Qr(D),V=Qr(I),X=Qr(W??h2e),Q=Qr(N),G=Wme(e),{update:Y,increment:ee,decrement:fe}=G,[Ce,we]=S.useState(!1),xe=!(s||l),Le=S.useRef(null),Se=S.useRef(null),Qe=S.useRef(null),Xe=S.useRef(null),tt=S.useCallback(Me=>Me.split("").filter(X).join(""),[X]),yt=S.useCallback(Me=>{var Ct;return(Ct=K==null?void 0:K(Me))!=null?Ct:Me},[K]),Be=S.useCallback(Me=>{var Ct;return((Ct=B==null?void 0:B(Me))!=null?Ct:Me).toString()},[B]);rc(()=>{(G.valueAsNumber>o||G.valueAsNumber{if(!Le.current)return;if(Le.current.value!=G.value){const Ct=yt(Le.current.value);G.setValue(tt(Ct))}},[yt,tt]);const Ae=S.useCallback((Me=a)=>{xe&&ee(Me)},[ee,xe,a]),bt=S.useCallback((Me=a)=>{xe&&fe(Me)},[fe,xe,a]),Fe=d2e(Ae,bt);bO(Qe,"disabled",Fe.stop,Fe.isSpinning),bO(Xe,"disabled",Fe.stop,Fe.isSpinning);const at=S.useCallback(Me=>{if(Me.nativeEvent.isComposing)return;const zt=yt(Me.currentTarget.value);Y(tt(zt)),Se.current={start:Me.currentTarget.selectionStart,end:Me.currentTarget.selectionEnd}},[Y,tt,yt]),jt=S.useCallback(Me=>{var Ct,zt,$n;z==null||z(Me),Se.current&&(Me.target.selectionStart=(zt=Se.current.start)!=null?zt:(Ct=Me.currentTarget.value)==null?void 0:Ct.length,Me.currentTarget.selectionEnd=($n=Se.current.end)!=null?$n:Me.currentTarget.selectionStart)},[z]),mt=S.useCallback(Me=>{if(Me.nativeEvent.isComposing)return;p2e(Me,X)||Me.preventDefault();const Ct=Zt(Me)*a,zt=Me.key,qe={ArrowUp:()=>Ae(Ct),ArrowDown:()=>bt(Ct),Home:()=>Y(i),End:()=>Y(o)}[zt];qe&&(Me.preventDefault(),qe(Me))},[X,a,Ae,bt,Y,i,o]),Zt=Me=>{let Ct=1;return(Me.metaKey||Me.ctrlKey)&&(Ct=.1),Me.shiftKey&&(Ct=10),Ct},on=S.useMemo(()=>{const Me=Q==null?void 0:Q(G.value);if(Me!=null)return Me;const Ct=G.value.toString();return Ct||void 0},[G.value,Q]),se=S.useCallback(()=>{let Me=G.value;if(G.value==="")return;/^[eE]/.test(G.value.toString())?G.setValue(""):(G.valueAsNumbero&&(Me=o),G.cast(Me))},[G,o,i]),Ie=S.useCallback(()=>{we(!1),n&&se()},[n,we,se]),He=S.useCallback(()=>{t&&requestAnimationFrame(()=>{var Me;(Me=Le.current)==null||Me.focus()})},[t]),Ue=S.useCallback(Me=>{Me.preventDefault(),Fe.up(),He()},[He,Fe]),ye=S.useCallback(Me=>{Me.preventDefault(),Fe.down(),He()},[He,Fe]);Dh(()=>Le.current,"wheel",Me=>{var Ct,zt;const qe=((zt=(Ct=Le.current)==null?void 0:Ct.ownerDocument)!=null?zt:document).activeElement===Le.current;if(!y||!qe)return;Me.preventDefault();const pt=Zt(Me)*a,zr=Math.sign(Me.deltaY);zr===-1?Ae(pt):zr===1&&bt(pt)},{passive:!1});const je=S.useCallback((Me={},Ct=null)=>{const zt=l||r&&G.isAtMax;return{...Me,ref:Rn(Ct,Qe),role:"button",tabIndex:-1,onPointerDown:ht(Me.onPointerDown,$n=>{$n.button!==0||zt||Ue($n)}),onPointerLeave:ht(Me.onPointerLeave,Fe.stop),onPointerUp:ht(Me.onPointerUp,Fe.stop),disabled:zt,"aria-disabled":Uu(zt)}},[G.isAtMax,r,Ue,Fe.stop,l]),vt=S.useCallback((Me={},Ct=null)=>{const zt=l||r&&G.isAtMin;return{...Me,ref:Rn(Ct,Xe),role:"button",tabIndex:-1,onPointerDown:ht(Me.onPointerDown,$n=>{$n.button!==0||zt||ye($n)}),onPointerLeave:ht(Me.onPointerLeave,Fe.stop),onPointerUp:ht(Me.onPointerUp,Fe.stop),disabled:zt,"aria-disabled":Uu(zt)}},[G.isAtMin,r,ye,Fe.stop,l]),Mt=S.useCallback((Me={},Ct=null)=>{var zt,$n,qe,pt;return{name:_,inputMode:m,type:"text",pattern:h,"aria-labelledby":L,"aria-label":T,"aria-describedby":k,id:b,disabled:l,...Me,readOnly:(zt=Me.readOnly)!=null?zt:s,"aria-readonly":($n=Me.readOnly)!=null?$n:s,"aria-required":(qe=Me.required)!=null?qe:u,required:(pt=Me.required)!=null?pt:u,ref:Rn(Le,Ct),value:Be(G.value),role:"spinbutton","aria-valuemin":i,"aria-valuemax":o,"aria-valuenow":Number.isNaN(G.valueAsNumber)?void 0:G.valueAsNumber,"aria-invalid":Uu(d??G.isOutOfRange),"aria-valuetext":on,autoComplete:"off",autoCorrect:"off",onChange:ht(Me.onChange,at),onKeyDown:ht(Me.onKeyDown,mt),onFocus:ht(Me.onFocus,jt,()=>we(!0)),onBlur:ht(Me.onBlur,$,Ie)}},[_,m,h,L,T,Be,k,b,l,u,s,d,G.value,G.valueAsNumber,G.isOutOfRange,i,o,on,at,mt,jt,$,Ie]);return{value:Be(G.value),valueAsNumber:G.valueAsNumber,isFocused:Ce,isDisabled:l,isReadOnly:s,getIncrementButtonProps:je,getDecrementButtonProps:vt,getInputProps:Mt,htmlProps:ne}}var[m2e,Hw]=Pn({name:"NumberInputStylesContext",errorMessage:`useNumberInputStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),[v2e,F8]=Pn({name:"NumberInputContext",errorMessage:"useNumberInputContext: `context` is undefined. Seems you forgot to wrap number-input's components within "}),B8=Ze(function(t,n){const r=Yi("NumberInput",t),i=fr(t),o=h8(i),{htmlProps:a,...s}=g2e(o),l=S.useMemo(()=>s,[s]);return g.jsx(v2e,{value:l,children:g.jsx(m2e,{value:r,children:g.jsx(Ne.div,{...a,ref:n,className:xt("chakra-numberinput",t.className),__css:{position:"relative",zIndex:0,...r.root}})})})});B8.displayName="NumberInput";var BH=Ze(function(t,n){const r=Hw();return g.jsx(Ne.div,{"aria-hidden":!0,ref:n,...t,__css:{display:"flex",flexDirection:"column",position:"absolute",top:"0",insetEnd:"0px",margin:"1px",height:"calc(100% - 2px)",zIndex:1,...r.stepperGroup}})});BH.displayName="NumberInputStepper";var z8=Ze(function(t,n){const{getInputProps:r}=F8(),i=r(t,n),o=Hw();return g.jsx(Ne.input,{...i,className:xt("chakra-numberinput__field",t.className),__css:{width:"100%",...o.field}})});z8.displayName="NumberInputField";var zH=Ne("div",{baseStyle:{display:"flex",justifyContent:"center",alignItems:"center",flex:1,transitionProperty:"common",transitionDuration:"normal",userSelect:"none",cursor:"pointer",lineHeight:"normal"}}),H8=Ze(function(t,n){var r;const i=Hw(),{getDecrementButtonProps:o}=F8(),a=o(t,n);return g.jsx(zH,{...a,__css:i.stepper,children:(r=t.children)!=null?r:g.jsx(s2e,{})})});H8.displayName="NumberDecrementStepper";var W8=Ze(function(t,n){var r;const{getIncrementButtonProps:i}=F8(),o=i(t,n),a=Hw();return g.jsx(zH,{...o,__css:a.stepper,children:(r=t.children)!=null?r:g.jsx(l2e,{})})});W8.displayName="NumberIncrementStepper";var[y2e,Ww]=Pn({name:"PopoverContext",errorMessage:"usePopoverContext: `context` is undefined. Seems you forgot to wrap all popover components within ``"}),[b2e,HH]=Pn({name:"PopoverStylesContext",errorMessage:`usePopoverStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `});function U8(e){const t=S.Children.only(e.children),{getTriggerProps:n}=Ww();return S.cloneElement(t,n(t.props,t.ref))}U8.displayName="PopoverTrigger";var kg={click:"click",hover:"hover"};function x2e(e={}){const{closeOnBlur:t=!0,closeOnEsc:n=!0,initialFocusRef:r,id:i,returnFocusOnClose:o=!0,autoFocus:a=!0,arrowSize:s,arrowShadowColor:l,trigger:u=kg.click,openDelay:d=200,closeDelay:h=200,isLazy:m,lazyBehavior:y="unmount",computePositionOnMount:b,...w}=e,{isOpen:E,onClose:_,onOpen:k,onToggle:T}=N8(e),L=S.useRef(null),O=S.useRef(null),D=S.useRef(null),I=S.useRef(!1),N=S.useRef(!1);E&&(N.current=!0);const[W,B]=S.useState(!1),[K,ne]=S.useState(!1),z=S.useId(),$=i??z,[V,X,Q,G]=["popover-trigger","popover-content","popover-header","popover-body"].map(at=>`${at}-${$}`),{referenceRef:Y,getArrowProps:ee,getPopperProps:fe,getArrowInnerProps:Ce,forceUpdate:we}=j8({...w,enabled:E||!!b}),xe=bH({isOpen:E,ref:D});Xme({enabled:E,ref:O}),lH(D,{focusRef:O,visible:E,shouldFocus:o&&u===kg.click}),Lve(D,{focusRef:r,visible:E,shouldFocus:a&&u===kg.click});const Le=$8({wasSelected:N.current,enabled:m,mode:y,isSelected:xe.present}),Se=S.useCallback((at={},jt=null)=>{const mt={...at,style:{...at.style,transformOrigin:ii.transformOrigin.varRef,[ii.arrowSize.var]:s?`${s}px`:void 0,[ii.arrowShadowColor.var]:l},ref:Rn(D,jt),children:Le?at.children:null,id:X,tabIndex:-1,role:"dialog",onKeyDown:ht(at.onKeyDown,Zt=>{n&&Zt.key==="Escape"&&_()}),onBlur:ht(at.onBlur,Zt=>{const on=SO(Zt),se=yC(D.current,on),Ie=yC(O.current,on);E&&t&&(!se&&!Ie)&&_()}),"aria-labelledby":W?Q:void 0,"aria-describedby":K?G:void 0};return u===kg.hover&&(mt.role="tooltip",mt.onMouseEnter=ht(at.onMouseEnter,()=>{I.current=!0}),mt.onMouseLeave=ht(at.onMouseLeave,Zt=>{Zt.nativeEvent.relatedTarget!==null&&(I.current=!1,setTimeout(()=>_(),h))})),mt},[Le,X,W,Q,K,G,u,n,_,E,t,h,l,s]),Qe=S.useCallback((at={},jt=null)=>fe({...at,style:{visibility:E?"visible":"hidden",...at.style}},jt),[E,fe]),Xe=S.useCallback((at,jt=null)=>({...at,ref:Rn(jt,L,Y)}),[L,Y]),tt=S.useRef(),yt=S.useRef(),Be=S.useCallback(at=>{L.current==null&&Y(at)},[Y]),Ae=S.useCallback((at={},jt=null)=>{const mt={...at,ref:Rn(O,jt,Be),id:V,"aria-haspopup":"dialog","aria-expanded":E,"aria-controls":X};return u===kg.click&&(mt.onClick=ht(at.onClick,T)),u===kg.hover&&(mt.onFocus=ht(at.onFocus,()=>{tt.current===void 0&&k()}),mt.onBlur=ht(at.onBlur,Zt=>{const on=SO(Zt),se=!yC(D.current,on);E&&t&&se&&_()}),mt.onKeyDown=ht(at.onKeyDown,Zt=>{Zt.key==="Escape"&&_()}),mt.onMouseEnter=ht(at.onMouseEnter,()=>{I.current=!0,tt.current=window.setTimeout(()=>k(),d)}),mt.onMouseLeave=ht(at.onMouseLeave,()=>{I.current=!1,tt.current&&(clearTimeout(tt.current),tt.current=void 0),yt.current=window.setTimeout(()=>{I.current===!1&&_()},h)})),mt},[V,E,X,u,Be,T,k,t,_,d,h]);S.useEffect(()=>()=>{tt.current&&clearTimeout(tt.current),yt.current&&clearTimeout(yt.current)},[]);const bt=S.useCallback((at={},jt=null)=>({...at,id:Q,ref:Rn(jt,mt=>{B(!!mt)})}),[Q]),Fe=S.useCallback((at={},jt=null)=>({...at,id:G,ref:Rn(jt,mt=>{ne(!!mt)})}),[G]);return{forceUpdate:we,isOpen:E,onAnimationComplete:xe.onComplete,onClose:_,getAnchorProps:Xe,getArrowProps:ee,getArrowInnerProps:Ce,getPopoverPositionerProps:Qe,getPopoverProps:Se,getTriggerProps:Ae,getHeaderProps:bt,getBodyProps:Fe}}function yC(e,t){return e===t||(e==null?void 0:e.contains(t))}function SO(e){var t;const n=e.currentTarget.ownerDocument.activeElement;return(t=e.relatedTarget)!=null?t:n}function V8(e){const t=Yi("Popover",e),{children:n,...r}=fr(e),i=Zy(),o=x2e({...r,direction:i.direction});return g.jsx(y2e,{value:o,children:g.jsx(b2e,{value:t,children:ts(n,{isOpen:o.isOpen,onClose:o.onClose,forceUpdate:o.forceUpdate})})})}V8.displayName="Popover";function G8(e){var t;const{bg:n,bgColor:r,backgroundColor:i,shadow:o,boxShadow:a}=e,{getArrowProps:s,getArrowInnerProps:l}=Ww(),u=HH(),d=(t=n??r)!=null?t:i,h=o??a;return g.jsx(Ne.div,{...s(),className:"chakra-popover__arrow-positioner",children:g.jsx(Ne.div,{className:xt("chakra-popover__arrow",e.className),...l(e),__css:{"--popper-arrow-bg":d?`colors.${d}, ${d}`:void 0,"--popper-arrow-shadow":h?`shadows.${h}, ${h}`:void 0,...u.arrow}})})}G8.displayName="PopoverArrow";function S2e(e){if(e)return{enter:{...e.enter,visibility:"visible"},exit:{...e.exit,transitionEnd:{visibility:"hidden"}}}}var w2e={exit:{opacity:0,scale:.95,transition:{duration:.1,ease:[.4,0,1,1]}},enter:{scale:1,opacity:1,transition:{duration:.15,ease:[0,0,.2,1]}}},C2e=Ne(su.section),WH=Ze(function(t,n){const{variants:r=w2e,...i}=t,{isOpen:o}=Ww();return g.jsx(C2e,{ref:n,variants:S2e(r),initial:!1,animate:o?"enter":"exit",...i})});WH.displayName="PopoverTransition";var q8=Ze(function(t,n){const{rootProps:r,motionProps:i,...o}=t,{getPopoverProps:a,getPopoverPositionerProps:s,onAnimationComplete:l}=Ww(),u=HH(),d={position:"relative",display:"flex",flexDirection:"column",...u.content};return g.jsx(Ne.div,{...s(r),__css:u.popper,className:"chakra-popover__popper",children:g.jsx(WH,{...i,...a(o,n),onAnimationComplete:Sw(l,o.onAnimationComplete),className:xt("chakra-popover__content",t.className),__css:d})})});q8.displayName="PopoverContent";function _2e(e,t,n){return(e-t)*100/(n-t)}nf({"0%":{strokeDasharray:"1, 400",strokeDashoffset:"0"},"50%":{strokeDasharray:"400, 400",strokeDashoffset:"-100"},"100%":{strokeDasharray:"400, 400",strokeDashoffset:"-260"}});nf({"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}});var k2e=nf({"0%":{left:"-40%"},"100%":{left:"100%"}}),E2e=nf({from:{backgroundPosition:"1rem 0"},to:{backgroundPosition:"0 0"}});function P2e(e){const{value:t=0,min:n,max:r,valueText:i,getValueText:o,isIndeterminate:a,role:s="progressbar"}=e,l=_2e(t,n,r);return{bind:{"data-indeterminate":a?"":void 0,"aria-valuemax":r,"aria-valuemin":n,"aria-valuenow":a?void 0:t,"aria-valuetext":(()=>{if(t!=null)return typeof o=="function"?o(t,l):i})(),role:s},percent:l,value:t}}var[T2e,M2e]=Pn({name:"ProgressStylesContext",errorMessage:`useProgressStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),L2e=Ze((e,t)=>{const{min:n,max:r,value:i,isIndeterminate:o,role:a,...s}=e,l=P2e({value:i,min:n,max:r,isIndeterminate:o,role:a}),d={height:"100%",...M2e().filledTrack};return g.jsx(Ne.div,{ref:t,style:{width:`${l.percent}%`,...s.style},...l.bind,...s,__css:d})}),UH=Ze((e,t)=>{var n;const{value:r,min:i=0,max:o=100,hasStripe:a,isAnimated:s,children:l,borderRadius:u,isIndeterminate:d,"aria-label":h,"aria-labelledby":m,"aria-valuetext":y,title:b,role:w,...E}=fr(e),_=Yi("Progress",e),k=u??((n=_.track)==null?void 0:n.borderRadius),T={animation:`${E2e} 1s linear infinite`},D={...!d&&a&&s&&T,...d&&{position:"absolute",willChange:"left",minWidth:"50%",animation:`${k2e} 1s ease infinite normal none running`}},I={overflow:"hidden",position:"relative",..._.track};return g.jsx(Ne.div,{ref:t,borderRadius:k,__css:I,...E,children:g.jsxs(T2e,{value:_,children:[g.jsx(L2e,{"aria-label":h,"aria-labelledby":m,"aria-valuetext":y,min:i,max:o,value:r,isIndeterminate:d,css:D,borderRadius:k,title:b,role:w}),l]})})});UH.displayName="Progress";function A2e(e){return e&&ko(e)&&ko(e.target)}function O2e(e={}){const{onChange:t,value:n,defaultValue:r,name:i,isDisabled:o,isFocusable:a,isNative:s,...l}=e,[u,d]=S.useState(r||""),h=typeof n<"u",m=h?n:u,y=S.useRef(null),b=S.useCallback(()=>{const O=y.current;if(!O)return;let D="input:not(:disabled):checked";const I=O.querySelector(D);if(I){I.focus();return}D="input:not(:disabled)";const N=O.querySelector(D);N==null||N.focus()},[]),E=`radio-${S.useId()}`,_=i||E,k=S.useCallback(O=>{const D=A2e(O)?O.target.value:O;h||d(D),t==null||t(String(D))},[t,h]),T=S.useCallback((O={},D=null)=>({...O,ref:Rn(D,y),role:"radiogroup"}),[]),L=S.useCallback((O={},D=null)=>({...O,ref:D,name:_,[s?"checked":"isChecked"]:m!=null?O.value===m:void 0,onChange(N){k(N)},"data-radiogroup":!0}),[s,_,k,m]);return{getRootProps:T,getRadioProps:L,name:_,ref:y,focus:b,setValue:d,value:m,onChange:k,isDisabled:o,isFocusable:a,htmlProps:l}}var[R2e,VH]=Pn({name:"RadioGroupContext",strict:!1}),Oy=Ze((e,t)=>{const{colorScheme:n,size:r,variant:i,children:o,className:a,isDisabled:s,isFocusable:l,...u}=e,{value:d,onChange:h,getRootProps:m,name:y,htmlProps:b}=O2e(u),w=S.useMemo(()=>({name:y,size:r,onChange:h,colorScheme:n,value:d,variant:i,isDisabled:s,isFocusable:l}),[y,r,h,n,d,i,s,l]);return g.jsx(R2e,{value:w,children:g.jsx(Ne.div,{...m(b,t),className:xt("chakra-radio-group",a),children:o})})});Oy.displayName="RadioGroup";var I2e={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};function D2e(e={}){const{defaultChecked:t,isChecked:n,isFocusable:r,isDisabled:i,isReadOnly:o,isRequired:a,onChange:s,isInvalid:l,name:u,value:d,id:h,"data-radiogroup":m,"aria-describedby":y,...b}=e,w=`radio-${S.useId()}`,E=ip(),k=!!VH()||!!m;let L=!!E&&!k?E.id:w;L=h??L;const O=i??(E==null?void 0:E.isDisabled),D=o??(E==null?void 0:E.isReadOnly),I=a??(E==null?void 0:E.isRequired),N=l??(E==null?void 0:E.isInvalid),[W,B]=S.useState(!1),[K,ne]=S.useState(!1),[z,$]=S.useState(!1),[V,X]=S.useState(!1),[Q,G]=S.useState(Boolean(t)),Y=typeof n<"u",ee=Y?n:Q;S.useEffect(()=>uz(B),[]);const fe=S.useCallback(Be=>{if(D||O){Be.preventDefault();return}Y||G(Be.target.checked),s==null||s(Be)},[Y,O,D,s]),Ce=S.useCallback(Be=>{Be.key===" "&&X(!0)},[X]),we=S.useCallback(Be=>{Be.key===" "&&X(!1)},[X]),xe=S.useCallback((Be={},Ae=null)=>({...Be,ref:Ae,"data-active":Bt(V),"data-hover":Bt(z),"data-disabled":Bt(O),"data-invalid":Bt(N),"data-checked":Bt(ee),"data-focus":Bt(K),"data-focus-visible":Bt(K&&W),"data-readonly":Bt(D),"aria-hidden":!0,onMouseDown:ht(Be.onMouseDown,()=>X(!0)),onMouseUp:ht(Be.onMouseUp,()=>X(!1)),onMouseEnter:ht(Be.onMouseEnter,()=>$(!0)),onMouseLeave:ht(Be.onMouseLeave,()=>$(!1))}),[V,z,O,N,ee,K,D,W]),{onFocus:Le,onBlur:Se}=E??{},Qe=S.useCallback((Be={},Ae=null)=>{const bt=O&&!r;return{...Be,id:L,ref:Ae,type:"radio",name:u,value:d,onChange:ht(Be.onChange,fe),onBlur:ht(Se,Be.onBlur,()=>ne(!1)),onFocus:ht(Le,Be.onFocus,()=>ne(!0)),onKeyDown:ht(Be.onKeyDown,Ce),onKeyUp:ht(Be.onKeyUp,we),checked:ee,disabled:bt,readOnly:D,required:I,"aria-invalid":Uu(N),"aria-disabled":Uu(bt),"aria-required":Uu(I),"data-readonly":Bt(D),"aria-describedby":y,style:I2e}},[O,r,L,u,d,fe,Se,Le,Ce,we,ee,D,I,N,y]);return{state:{isInvalid:N,isFocused:K,isChecked:ee,isActive:V,isHovered:z,isDisabled:O,isReadOnly:D,isRequired:I},getCheckboxProps:xe,getInputProps:Qe,getLabelProps:(Be={},Ae=null)=>({...Be,ref:Ae,onMouseDown:ht(Be.onMouseDown,wO),onTouchStart:ht(Be.onTouchStart,wO),"data-disabled":Bt(O),"data-checked":Bt(ee),"data-invalid":Bt(N)}),getRootProps:(Be,Ae=null)=>({...Be,ref:Ae,"data-disabled":Bt(O),"data-checked":Bt(ee),"data-invalid":Bt(N)}),htmlProps:b}}function wO(e){e.preventDefault(),e.stopPropagation()}function j2e(e,t){const n={},r={};for(const[i,o]of Object.entries(e))t.includes(i)?n[i]=o:r[i]=o;return[n,r]}var Vo=Ze((e,t)=>{var n;const r=VH(),{onChange:i,value:o}=e,a=Yi("Radio",{...r,...e}),s=fr(e),{spacing:l="0.5rem",children:u,isDisabled:d=r==null?void 0:r.isDisabled,isFocusable:h=r==null?void 0:r.isFocusable,inputProps:m,...y}=s;let b=e.isChecked;(r==null?void 0:r.value)!=null&&o!=null&&(b=r.value===o);let w=i;r!=null&&r.onChange&&o!=null&&(w=Sw(r.onChange,i));const E=(n=e==null?void 0:e.name)!=null?n:r==null?void 0:r.name,{getInputProps:_,getCheckboxProps:k,getLabelProps:T,getRootProps:L,htmlProps:O}=D2e({...y,isChecked:b,isFocusable:h,isDisabled:d,onChange:w,name:E}),[D,I]=j2e(O,lF),N=k(I),W=_(m,t),B=T(),K=Object.assign({},D,L()),ne={display:"inline-flex",alignItems:"center",verticalAlign:"top",cursor:"pointer",position:"relative",...a.container},z={display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0,...a.control},$={userSelect:"none",marginStart:l,...a.label};return g.jsxs(Ne.label,{className:"chakra-radio",...K,__css:ne,children:[g.jsx("input",{className:"chakra-radio__input",...W}),g.jsx(Ne.span,{className:"chakra-radio__control",...N,__css:z}),u&&g.jsx(Ne.span,{className:"chakra-radio__label",...B,__css:$,children:u})]})});Vo.displayName="Radio";var GH=Ze(function(t,n){const{children:r,placeholder:i,className:o,...a}=t;return g.jsxs(Ne.select,{...a,ref:n,className:xt("chakra-select",o),children:[i&&g.jsx("option",{value:"",children:i}),r]})});GH.displayName="SelectField";function N2e(e,t){const n={},r={};for(const[i,o]of Object.entries(e))t.includes(i)?n[i]=o:r[i]=o;return[n,r]}var qH=Ze((e,t)=>{var n;const r=Yi("Select",e),{rootProps:i,placeholder:o,icon:a,color:s,height:l,h:u,minH:d,minHeight:h,iconColor:m,iconSize:y,...b}=fr(e),[w,E]=N2e(b,lF),_=f8(E),k={width:"100%",height:"fit-content",position:"relative",color:s},T={paddingEnd:"2rem",...r.field,_focus:{zIndex:"unset",...(n=r.field)==null?void 0:n._focus}};return g.jsxs(Ne.div,{className:"chakra-select__wrapper",__css:k,...w,...i,children:[g.jsx(GH,{ref:t,height:u??l,minH:d??h,placeholder:o,..._,__css:T,children:e.children}),g.jsx(KH,{"data-disabled":Bt(_.disabled),...(m||s)&&{color:m||s},__css:r.icon,...y&&{fontSize:y},children:a})]})});qH.displayName="Select";var $2e=e=>g.jsx("svg",{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})}),F2e=Ne("div",{baseStyle:{position:"absolute",display:"inline-flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",top:"50%",transform:"translateY(-50%)"}}),KH=e=>{const{children:t=g.jsx($2e,{}),...n}=e,r=S.cloneElement(t,{role:"presentation",className:"chakra-select__icon",focusable:!1,"aria-hidden":!0,style:{width:"1em",height:"1em",color:"currentColor"}});return g.jsx(F2e,{...n,className:"chakra-select__icon-wrapper",children:S.isValidElement(t)?r:null})};KH.displayName="SelectIcon";var Eg=e=>e?"":void 0,bC=e=>e?!0:void 0,f2=(...e)=>e.filter(Boolean).join(" ");function xC(...e){return function(n){e.some(r=>(r==null||r(n),n==null?void 0:n.defaultPrevented))}}function Xb(e){const{orientation:t,vertical:n,horizontal:r}=e;return t==="vertical"?n:r}var nS={width:0,height:0},Zb=e=>e||nS;function B2e(e){const{orientation:t,thumbPercents:n,thumbRects:r,isReversed:i}=e,o=w=>{var E;const _=(E=r[w])!=null?E:nS;return{position:"absolute",userSelect:"none",WebkitUserSelect:"none",MozUserSelect:"none",msUserSelect:"none",touchAction:"none",...Xb({orientation:t,vertical:{bottom:`calc(${n[w]}% - ${_.height/2}px)`},horizontal:{left:`calc(${n[w]}% - ${_.width/2}px)`}})}},a=t==="vertical"?r.reduce((w,E)=>Zb(w).height>Zb(E).height?w:E,nS):r.reduce((w,E)=>Zb(w).width>Zb(E).width?w:E,nS),s={position:"relative",touchAction:"none",WebkitTapHighlightColor:"rgba(0,0,0,0)",userSelect:"none",outline:0,...Xb({orientation:t,vertical:a?{paddingLeft:a.width/2,paddingRight:a.width/2}:{},horizontal:a?{paddingTop:a.height/2,paddingBottom:a.height/2}:{}})},l={position:"absolute",...Xb({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",height:"100%"},horizontal:{top:"50%",transform:"translateY(-50%)",width:"100%"}})},u=n.length===1,d=[0,i?100-n[0]:n[0]],h=u?d:n;let m=h[0];!u&&i&&(m=100-m);const y=Math.abs(h[h.length-1]-h[0]),b={...l,...Xb({orientation:t,vertical:i?{height:`${y}%`,top:`${m}%`}:{height:`${y}%`,bottom:`${m}%`},horizontal:i?{width:`${y}%`,right:`${m}%`}:{width:`${y}%`,left:`${m}%`}})};return{trackStyle:l,innerTrackStyle:b,rootStyle:s,getThumbStyle:o}}function z2e(e){const{isReversed:t,direction:n,orientation:r}=e;return n==="ltr"||r==="vertical"?t:!t}function H2e(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function W2e(e){const t=V2e(e);return typeof t.PointerEvent<"u"&&e instanceof t.PointerEvent?e.pointerType==="mouse":e instanceof t.MouseEvent}function YH(e){return!!e.touches}function U2e(e){return YH(e)&&e.touches.length>1}function V2e(e){var t;return(t=e.view)!=null?t:window}function G2e(e,t="page"){const n=e.touches[0]||e.changedTouches[0];return{x:n[`${t}X`],y:n[`${t}Y`]}}function q2e(e,t="page"){return{x:e[`${t}X`],y:e[`${t}Y`]}}function XH(e,t="page"){return YH(e)?G2e(e,t):q2e(e,t)}function K2e(e){return t=>{const n=W2e(t);(!n||n&&t.button===0)&&e(t)}}function Y2e(e,t=!1){function n(i){e(i,{point:XH(i)})}return t?K2e(n):n}function rS(e,t,n,r){return H2e(e,t,Y2e(n,t==="pointerdown"),r)}var X2e=Object.defineProperty,Z2e=(e,t,n)=>t in e?X2e(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,$s=(e,t,n)=>(Z2e(e,typeof t!="symbol"?t+"":t,n),n),Q2e=class{constructor(e,t,n){$s(this,"history",[]),$s(this,"startEvent",null),$s(this,"lastEvent",null),$s(this,"lastEventInfo",null),$s(this,"handlers",{}),$s(this,"removeListeners",()=>{}),$s(this,"threshold",3),$s(this,"win"),$s(this,"updatePoint",()=>{if(!(this.lastEvent&&this.lastEventInfo))return;const s=SC(this.lastEventInfo,this.history),l=this.startEvent!==null,u=nbe(s.offset,{x:0,y:0})>=this.threshold;if(!l&&!u)return;const{timestamp:d}=kL();this.history.push({...s.point,timestamp:d});const{onStart:h,onMove:m}=this.handlers;l||(h==null||h(this.lastEvent,s),this.startEvent=this.lastEvent),m==null||m(this.lastEvent,s)}),$s(this,"onPointerMove",(s,l)=>{this.lastEvent=s,this.lastEventInfo=l,Sce.update(this.updatePoint,!0)}),$s(this,"onPointerUp",(s,l)=>{const u=SC(l,this.history),{onEnd:d,onSessionEnd:h}=this.handlers;h==null||h(s,u),this.end(),!(!d||!this.startEvent)&&(d==null||d(s,u))});var r;if(this.win=(r=e.view)!=null?r:window,U2e(e))return;this.handlers=t,n&&(this.threshold=n),e.stopPropagation(),e.preventDefault();const i={point:XH(e)},{timestamp:o}=kL();this.history=[{...i.point,timestamp:o}];const{onSessionStart:a}=t;a==null||a(e,SC(i,this.history)),this.removeListeners=tbe(rS(this.win,"pointermove",this.onPointerMove),rS(this.win,"pointerup",this.onPointerUp),rS(this.win,"pointercancel",this.onPointerUp))}updateHandlers(e){this.handlers=e}end(){var e;(e=this.removeListeners)==null||e.call(this),wce.update(this.updatePoint)}};function CO(e,t){return{x:e.x-t.x,y:e.y-t.y}}function SC(e,t){return{point:e.point,delta:CO(e.point,t[t.length-1]),offset:CO(e.point,t[0]),velocity:ebe(t,.1)}}var J2e=e=>e*1e3;function ebe(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=e[e.length-1];for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>J2e(t)));)n--;if(!r)return{x:0,y:0};const o=(i.timestamp-r.timestamp)/1e3;if(o===0)return{x:0,y:0};const a={x:(i.x-r.x)/o,y:(i.y-r.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function tbe(...e){return t=>e.reduce((n,r)=>r(n),t)}function wC(e,t){return Math.abs(e-t)}function _O(e){return"x"in e&&"y"in e}function nbe(e,t){if(typeof e=="number"&&typeof t=="number")return wC(e,t);if(_O(e)&&_O(t)){const n=wC(e.x,t.x),r=wC(e.y,t.y);return Math.sqrt(n**2+r**2)}return 0}function ZH(e){const t=S.useRef(null);return t.current=e,t}function rbe(e,t){const{onPan:n,onPanStart:r,onPanEnd:i,onPanSessionStart:o,onPanSessionEnd:a,threshold:s}=t,l=Boolean(n||r||i||o||a),u=S.useRef(null),d=ZH({onSessionStart:o,onSessionEnd:a,onStart:r,onMove:n,onEnd(h,m){u.current=null,i==null||i(h,m)}});S.useEffect(()=>{var h;(h=u.current)==null||h.updateHandlers(d.current)}),S.useEffect(()=>{const h=e.current;if(!h||!l)return;function m(y){u.current=new Q2e(y,d.current,s)}return rS(h,"pointerdown",m)},[e,l,d,s]),S.useEffect(()=>()=>{var h;(h=u.current)==null||h.end(),u.current=null},[])}function ibe(e,t){var n;if(!e){t(void 0);return}t({width:e.offsetWidth,height:e.offsetHeight});const r=(n=e.ownerDocument.defaultView)!=null?n:window,i=new r.ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const[a]=o;let s,l;if("borderBoxSize"in a){const u=a.borderBoxSize,d=Array.isArray(u)?u[0]:u;s=d.inlineSize,l=d.blockSize}else s=e.offsetWidth,l=e.offsetHeight;t({width:s,height:l})});return i.observe(e,{box:"border-box"}),()=>i.unobserve(e)}var obe=Boolean(globalThis==null?void 0:globalThis.document)?S.useLayoutEffect:S.useEffect;function abe(e,t){var n,r;if(!e||!e.parentElement)return;const i=(r=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?r:window,o=new i.MutationObserver(()=>{t()});return o.observe(e.parentElement,{childList:!0}),()=>{o.disconnect()}}function sbe({getNodes:e,observeMutation:t=!0}){const[n,r]=S.useState([]),[i,o]=S.useState(0);return obe(()=>{const a=e(),s=a.map((l,u)=>ibe(l,d=>{r(h=>[...h.slice(0,u),d,...h.slice(u+1)])}));if(t){const l=a[0];s.push(abe(l,()=>{o(u=>u+1)}))}return()=>{s.forEach(l=>{l==null||l()})}},[i]),n}function lbe(e){return typeof e=="object"&&e!==null&&"current"in e}function ube(e){const[t]=sbe({observeMutation:!1,getNodes(){return[lbe(e)?e.current:e]}});return t}function cbe(e){var t;const{min:n=0,max:r=100,onChange:i,value:o,defaultValue:a,isReversed:s,direction:l="ltr",orientation:u="horizontal",id:d,isDisabled:h,isReadOnly:m,onChangeStart:y,onChangeEnd:b,step:w=1,getAriaValueText:E,"aria-valuetext":_,"aria-label":k,"aria-labelledby":T,name:L,focusThumbOnChange:O=!0,...D}=e,I=Qr(y),N=Qr(b),W=Qr(E),B=z2e({isReversed:s,direction:l,orientation:u}),[K,ne]=l8({value:o,defaultValue:a??fbe(n,r),onChange:i}),[z,$]=S.useState(!1),[V,X]=S.useState(!1),Q=!(h||m),G=(r-n)/10,Y=w||(r-n)/100,ee=Qx(K,n,r),fe=r-ee+n,we=GA(B?fe:ee,n,r),xe=u==="vertical",Le=ZH({min:n,max:r,step:w,isDisabled:h,value:ee,isInteractive:Q,isReversed:B,isVertical:xe,eventSource:null,focusThumbOnChange:O,orientation:u}),Se=S.useRef(null),Qe=S.useRef(null),Xe=S.useRef(null),tt=S.useId(),yt=d??tt,[Be,Ae]=[`slider-thumb-${yt}`,`slider-track-${yt}`],bt=S.useCallback(qe=>{var pt,zr;if(!Se.current)return;const rr=Le.current;rr.eventSource="pointer";const Bn=Se.current.getBoundingClientRect(),{clientX:li,clientY:vs}=(zr=(pt=qe.touches)==null?void 0:pt[0])!=null?zr:qe,tl=xe?Bn.bottom-vs:li-Bn.left,gf=xe?Bn.height:Bn.width;let ys=tl/gf;B&&(ys=1-ys);let Xi=Hme(ys,rr.min,rr.max);return rr.step&&(Xi=parseFloat(qA(Xi,rr.min,rr.step))),Xi=Qx(Xi,rr.min,rr.max),Xi},[xe,B,Le]),Fe=S.useCallback(qe=>{const pt=Le.current;pt.isInteractive&&(qe=parseFloat(qA(qe,pt.min,Y)),qe=Qx(qe,pt.min,pt.max),ne(qe))},[Y,ne,Le]),at=S.useMemo(()=>({stepUp(qe=Y){const pt=B?ee-qe:ee+qe;Fe(pt)},stepDown(qe=Y){const pt=B?ee+qe:ee-qe;Fe(pt)},reset(){Fe(a||0)},stepTo(qe){Fe(qe)}}),[Fe,B,ee,Y,a]),jt=S.useCallback(qe=>{const pt=Le.current,rr={ArrowRight:()=>at.stepUp(),ArrowUp:()=>at.stepUp(),ArrowLeft:()=>at.stepDown(),ArrowDown:()=>at.stepDown(),PageUp:()=>at.stepUp(G),PageDown:()=>at.stepDown(G),Home:()=>Fe(pt.min),End:()=>Fe(pt.max)}[qe.key];rr&&(qe.preventDefault(),qe.stopPropagation(),rr(qe),pt.eventSource="keyboard")},[at,Fe,G,Le]),mt=(t=W==null?void 0:W(ee))!=null?t:_,Zt=ube(Qe),{getThumbStyle:on,rootStyle:se,trackStyle:Ie,innerTrackStyle:He}=S.useMemo(()=>{const qe=Le.current,pt=Zt??{width:0,height:0};return B2e({isReversed:B,orientation:qe.orientation,thumbRects:[pt],thumbPercents:[we]})},[B,Zt,we,Le]),Ue=S.useCallback(()=>{Le.current.focusThumbOnChange&&setTimeout(()=>{var pt;return(pt=Qe.current)==null?void 0:pt.focus()})},[Le]);rc(()=>{const qe=Le.current;Ue(),qe.eventSource==="keyboard"&&(N==null||N(qe.value))},[ee,N]);function ye(qe){const pt=bt(qe);pt!=null&&pt!==Le.current.value&&ne(pt)}rbe(Xe,{onPanSessionStart(qe){const pt=Le.current;pt.isInteractive&&($(!0),Ue(),ye(qe),I==null||I(pt.value))},onPanSessionEnd(){const qe=Le.current;qe.isInteractive&&($(!1),N==null||N(qe.value))},onPan(qe){Le.current.isInteractive&&ye(qe)}});const je=S.useCallback((qe={},pt=null)=>({...qe,...D,ref:Rn(pt,Xe),tabIndex:-1,"aria-disabled":bC(h),"data-focused":Eg(V),style:{...qe.style,...se}}),[D,h,V,se]),vt=S.useCallback((qe={},pt=null)=>({...qe,ref:Rn(pt,Se),id:Ae,"data-disabled":Eg(h),style:{...qe.style,...Ie}}),[h,Ae,Ie]),Mt=S.useCallback((qe={},pt=null)=>({...qe,ref:pt,style:{...qe.style,...He}}),[He]),Me=S.useCallback((qe={},pt=null)=>({...qe,ref:Rn(pt,Qe),role:"slider",tabIndex:Q?0:void 0,id:Be,"data-active":Eg(z),"aria-valuetext":mt,"aria-valuemin":n,"aria-valuemax":r,"aria-valuenow":ee,"aria-orientation":u,"aria-disabled":bC(h),"aria-readonly":bC(m),"aria-label":k,"aria-labelledby":k?void 0:T,style:{...qe.style,...on(0)},onKeyDown:xC(qe.onKeyDown,jt),onFocus:xC(qe.onFocus,()=>X(!0)),onBlur:xC(qe.onBlur,()=>X(!1))}),[Q,Be,z,mt,n,r,ee,u,h,m,k,T,on,jt]),Ct=S.useCallback((qe,pt=null)=>{const zr=!(qe.valuer),rr=ee>=qe.value,Bn=GA(qe.value,n,r),li={position:"absolute",pointerEvents:"none",...dbe({orientation:u,vertical:{bottom:B?`${100-Bn}%`:`${Bn}%`},horizontal:{left:B?`${100-Bn}%`:`${Bn}%`}})};return{...qe,ref:pt,role:"presentation","aria-hidden":!0,"data-disabled":Eg(h),"data-invalid":Eg(!zr),"data-highlighted":Eg(rr),style:{...qe.style,...li}}},[h,B,r,n,u,ee]),zt=S.useCallback((qe={},pt=null)=>({...qe,ref:pt,type:"hidden",value:ee,name:L}),[L,ee]);return{state:{value:ee,isFocused:V,isDragging:z},actions:at,getRootProps:je,getTrackProps:vt,getInnerTrackProps:Mt,getThumbProps:Me,getMarkerProps:Ct,getInputProps:zt}}function dbe(e){const{orientation:t,vertical:n,horizontal:r}=e;return t==="vertical"?n:r}function fbe(e,t){return t"}),[pbe,Vw]=Pn({name:"SliderStylesContext",hookName:"useSliderStyles",providerName:""}),QH=Ze((e,t)=>{const n={orientation:"horizontal",...e},r=Yi("Slider",n),i=fr(n),{direction:o}=Zy();i.direction=o;const{getInputProps:a,getRootProps:s,...l}=cbe(i),u=s(),d=a({},t);return g.jsx(hbe,{value:l,children:g.jsx(pbe,{value:r,children:g.jsxs(Ne.div,{...u,className:f2("chakra-slider",n.className),__css:r.container,children:[n.children,g.jsx("input",{...d})]})})})});QH.displayName="Slider";var JH=Ze((e,t)=>{const{getThumbProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__thumb",e.className),__css:r.thumb})});JH.displayName="SliderThumb";var eW=Ze((e,t)=>{const{getTrackProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__track",e.className),__css:r.track})});eW.displayName="SliderTrack";var tW=Ze((e,t)=>{const{getInnerTrackProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__filled-track",e.className),__css:r.filledTrack})});tW.displayName="SliderFilledTrack";var tk=Ze((e,t)=>{const{getMarkerProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__marker",e.className),__css:r.mark})});tk.displayName="SliderMark";var K8=Ze(function(t,n){const r=Yi("Switch",t),{spacing:i="0.5rem",children:o,...a}=fr(t),{state:s,getInputProps:l,getCheckboxProps:u,getRootProps:d,getLabelProps:h}=cz(a),m=S.useMemo(()=>({display:"inline-block",position:"relative",verticalAlign:"middle",lineHeight:0,...r.container}),[r.container]),y=S.useMemo(()=>({display:"inline-flex",flexShrink:0,justifyContent:"flex-start",boxSizing:"content-box",cursor:"pointer",...r.track}),[r.track]),b=S.useMemo(()=>({userSelect:"none",marginStart:i,...r.label}),[i,r.label]);return g.jsxs(Ne.label,{...d(),className:xt("chakra-switch",t.className),__css:m,children:[g.jsx("input",{className:"chakra-switch__input",...l({},n)}),g.jsx(Ne.span,{...u(),className:"chakra-switch__track",__css:y,children:g.jsx(Ne.span,{__css:r.thumb,className:"chakra-switch__thumb","data-checked":Bt(s.isChecked),"data-hover":Bt(s.isHovered)})}),o&&g.jsx(Ne.span,{className:"chakra-switch__label",...h(),__css:b,children:o})]})});K8.displayName="Switch";var[gbe,mNe,mbe,vbe]=a8();function ybe(e){var t;const{defaultIndex:n,onChange:r,index:i,isManual:o,isLazy:a,lazyBehavior:s="unmount",orientation:l="horizontal",direction:u="ltr",...d}=e,[h,m]=S.useState(n??0),[y,b]=l8({defaultValue:n??0,value:i,onChange:r});S.useEffect(()=>{i!=null&&m(i)},[i]);const w=mbe(),E=S.useId();return{id:`tabs-${(t=e.id)!=null?t:E}`,selectedIndex:y,focusedIndex:h,setSelectedIndex:b,setFocusedIndex:m,isManual:o,isLazy:a,lazyBehavior:s,orientation:l,descendants:w,direction:u,htmlProps:d}}var[bbe,Y8]=Pn({name:"TabsContext",errorMessage:"useTabsContext: `context` is undefined. Seems you forgot to wrap all tabs components within "});function xbe(e){const{isDisabled:t,isFocusable:n,...r}=e,{setSelectedIndex:i,isManual:o,id:a,setFocusedIndex:s,selectedIndex:l}=Y8(),{index:u,register:d}=vbe({disabled:t&&!n}),h=u===l,m=()=>{i(u)},y=()=>{s(u),!o&&!(t&&n)&&i(u)},b=sH({...r,ref:Rn(d,e.ref),isDisabled:t,isFocusable:n,onClick:ht(e.onClick,m)}),w="button";return{...b,id:nW(a,u),role:"tab",tabIndex:h?0:-1,type:w,"aria-selected":h,"aria-controls":rW(a,u),onFocus:t?void 0:ht(e.onFocus,y)}}var[Sbe,wbe]=Pn({});function Cbe(e){const t=Y8(),{id:n,selectedIndex:r}=t,o=d8(e.children).map((a,s)=>S.createElement(Sbe,{key:s,value:{isSelected:s===r,id:rW(n,s),tabId:nW(n,s),selectedIndex:r}},a));return{...e,children:o}}function _be(e){const{children:t,...n}=e,{isLazy:r,lazyBehavior:i}=Y8(),{isSelected:o,id:a,tabId:s}=wbe(),l=S.useRef(!1);o&&(l.current=!0);const u=$8({wasSelected:l.current,isSelected:o,enabled:r,mode:i});return{tabIndex:0,...n,children:u?t:null,role:"tabpanel","aria-labelledby":s,hidden:!o,id:a}}function nW(e,t){return`${e}--tab-${t}`}function rW(e,t){return`${e}--tabpanel-${t}`}var[kbe,X8]=Pn({name:"TabsStylesContext",errorMessage:`useTabsStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),iW=Ze(function(t,n){const r=Yi("Tabs",t),{children:i,className:o,...a}=fr(t),{htmlProps:s,descendants:l,...u}=ybe(a),d=S.useMemo(()=>u,[u]),{isFitted:h,...m}=s;return g.jsx(gbe,{value:l,children:g.jsx(bbe,{value:d,children:g.jsx(kbe,{value:r,children:g.jsx(Ne.div,{className:xt("chakra-tabs",o),ref:n,...m,__css:r.root,children:i})})})})});iW.displayName="Tabs";var oW=Ze(function(t,n){const r=_be({...t,ref:n}),i=X8();return g.jsx(Ne.div,{outline:"0",...r,className:xt("chakra-tabs__tab-panel",t.className),__css:i.tabpanel})});oW.displayName="TabPanel";var aW=Ze(function(t,n){const r=Cbe(t),i=X8();return g.jsx(Ne.div,{...r,width:"100%",ref:n,className:xt("chakra-tabs__tab-panels",t.className),__css:i.tabpanels})});aW.displayName="TabPanels";var sW=Ze(function(t,n){const r=X8(),i=xbe({...t,ref:n}),o={outline:"0",display:"flex",alignItems:"center",justifyContent:"center",...r.tab};return g.jsx(Ne.button,{...i,className:xt("chakra-tabs__tab",t.className),__css:o})});sW.displayName="Tab";function Ebe(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}var Pbe=["h","minH","height","minHeight"],Z8=Ze((e,t)=>{const n=au("Textarea",e),{className:r,rows:i,...o}=fr(e),a=f8(o),s=i?Ebe(n,Pbe):n;return g.jsx(Ne.textarea,{ref:t,rows:i,...a,className:xt("chakra-textarea",r),__css:s})});Z8.displayName="Textarea";var Tbe={exit:{scale:.85,opacity:0,transition:{opacity:{duration:.15,easings:"easeInOut"},scale:{duration:.2,easings:"easeInOut"}}},enter:{scale:1,opacity:1,transition:{opacity:{easings:"easeOut",duration:.2},scale:{duration:.2,ease:[.175,.885,.4,1.1]}}}},f3=e=>{var t;return((t=e.current)==null?void 0:t.ownerDocument)||document},nk=e=>{var t,n;return((n=(t=e.current)==null?void 0:t.ownerDocument)==null?void 0:n.defaultView)||window};function Mbe(e={}){const{openDelay:t=0,closeDelay:n=0,closeOnClick:r=!0,closeOnMouseDown:i,closeOnScroll:o,closeOnPointerDown:a=i,closeOnEsc:s=!0,onOpen:l,onClose:u,placement:d,id:h,isOpen:m,defaultIsOpen:y,arrowSize:b=10,arrowShadowColor:w,arrowPadding:E,modifiers:_,isDisabled:k,gutter:T,offset:L,direction:O,...D}=e,{isOpen:I,onOpen:N,onClose:W}=N8({isOpen:m,defaultIsOpen:y,onOpen:l,onClose:u}),{referenceRef:B,getPopperProps:K,getArrowInnerProps:ne,getArrowProps:z}=j8({enabled:I,placement:d,arrowPadding:E,modifiers:_,gutter:T,offset:L,direction:O}),$=S.useId(),X=`tooltip-${h??$}`,Q=S.useRef(null),G=S.useRef(),Y=S.useCallback(()=>{G.current&&(clearTimeout(G.current),G.current=void 0)},[]),ee=S.useRef(),fe=S.useCallback(()=>{ee.current&&(clearTimeout(ee.current),ee.current=void 0)},[]),Ce=S.useCallback(()=>{fe(),W()},[W,fe]),we=Lbe(Q,Ce),xe=S.useCallback(()=>{if(!k&&!G.current){we();const Ae=nk(Q);G.current=Ae.setTimeout(N,t)}},[we,k,N,t]),Le=S.useCallback(()=>{Y();const Ae=nk(Q);ee.current=Ae.setTimeout(Ce,n)},[n,Ce,Y]),Se=S.useCallback(()=>{I&&r&&Le()},[r,Le,I]),Qe=S.useCallback(()=>{I&&a&&Le()},[a,Le,I]),Xe=S.useCallback(Ae=>{I&&Ae.key==="Escape"&&Le()},[I,Le]);Dh(()=>f3(Q),"keydown",s?Xe:void 0),Dh(()=>f3(Q),"scroll",()=>{I&&o&&Ce()}),S.useEffect(()=>{k&&(Y(),I&&W())},[k,I,W,Y]),S.useEffect(()=>()=>{Y(),fe()},[Y,fe]),Dh(()=>Q.current,"pointerleave",Le);const tt=S.useCallback((Ae={},bt=null)=>({...Ae,ref:Rn(Q,bt,B),onPointerEnter:ht(Ae.onPointerEnter,at=>{at.pointerType!=="touch"&&xe()}),onClick:ht(Ae.onClick,Se),onPointerDown:ht(Ae.onPointerDown,Qe),onFocus:ht(Ae.onFocus,xe),onBlur:ht(Ae.onBlur,Le),"aria-describedby":I?X:void 0}),[xe,Le,Qe,I,X,Se,B]),yt=S.useCallback((Ae={},bt=null)=>K({...Ae,style:{...Ae.style,[ii.arrowSize.var]:b?`${b}px`:void 0,[ii.arrowShadowColor.var]:w}},bt),[K,b,w]),Be=S.useCallback((Ae={},bt=null)=>{const Fe={...Ae.style,position:"relative",transformOrigin:ii.transformOrigin.varRef};return{ref:bt,...D,...Ae,id:X,role:"tooltip",style:Fe}},[D,X]);return{isOpen:I,show:xe,hide:Le,getTriggerProps:tt,getTooltipProps:Be,getTooltipPositionerProps:yt,getArrowProps:z,getArrowInnerProps:ne}}var CC="chakra-ui:close-tooltip";function Lbe(e,t){return S.useEffect(()=>{const n=f3(e);return n.addEventListener(CC,t),()=>n.removeEventListener(CC,t)},[t,e]),()=>{const n=f3(e),r=nk(e);n.dispatchEvent(new r.CustomEvent(CC))}}function Abe(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function Obe(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}var Rbe=Ne(su.div),si=Ze((e,t)=>{var n,r;const i=au("Tooltip",e),o=fr(e),a=Zy(),{children:s,label:l,shouldWrapChildren:u,"aria-label":d,hasArrow:h,bg:m,portalProps:y,background:b,backgroundColor:w,bgColor:E,motionProps:_,...k}=o,T=(r=(n=b??w)!=null?n:m)!=null?r:E;if(T){i.bg=T;const K=Kre(a,"colors",T);i[ii.arrowBg.var]=K}const L=Mbe({...k,direction:a.direction}),O=typeof s=="string"||u;let D;if(O)D=g.jsx(Ne.span,{display:"inline-block",tabIndex:0,...L.getTriggerProps(),children:s});else{const K=S.Children.only(s);D=S.cloneElement(K,L.getTriggerProps(K.props,K.ref))}const I=!!d,N=L.getTooltipProps({},t),W=I?Abe(N,["role","id"]):N,B=Obe(N,["role","id"]);return l?g.jsxs(g.Fragment,{children:[D,g.jsx(rp,{children:L.isOpen&&g.jsx(c0,{...y,children:g.jsx(Ne.div,{...L.getTooltipPositionerProps(),__css:{zIndex:i.zIndex,pointerEvents:"none"},children:g.jsxs(Rbe,{variants:Tbe,initial:"exit",animate:"enter",exit:"exit",..._,...W,__css:i,children:[l,I&&g.jsx(Ne.span,{srOnly:!0,...B,children:d}),h&&g.jsx(Ne.div,{"data-popper-arrow":!0,className:"chakra-tooltip__arrow-wrapper",children:g.jsx(Ne.div,{"data-popper-arrow-inner":!0,className:"chakra-tooltip__arrow",__css:{bg:i.bg}})})]})})})})]}):g.jsx(g.Fragment,{children:s})});si.displayName="Tooltip";var rk={},kO=Xs;rk.createRoot=kO.createRoot,rk.hydrateRoot=kO.hydrateRoot;var ik={},Ibe={get exports(){return ik},set exports(e){ik=e}},lW={};/** +`)},r2e=0,_g=[];function i2e(e){var t=S.useRef([]),n=S.useRef([0,0]),r=S.useRef(),i=S.useState(r2e++)[0],o=S.useState(function(){return OH()})[0],a=S.useRef(e);S.useEffect(function(){a.current=e},[e]),S.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(i));var w=$_([e.lockRef.current],(e.shards||[]).map(yO),!0).filter(Boolean);return w.forEach(function(E){return E.classList.add("allow-interactivity-".concat(i))}),function(){document.body.classList.remove("block-interactivity-".concat(i)),w.forEach(function(E){return E.classList.remove("allow-interactivity-".concat(i))})}}},[e.inert,e.lockRef.current,e.shards]);var s=S.useCallback(function(w,E){if("touches"in w&&w.touches.length===2)return!a.current.allowPinchZoom;var _=Yb(w),k=n.current,T="deltaX"in w?w.deltaX:k[0]-_[0],L="deltaY"in w?w.deltaY:k[1]-_[1],O,D=w.target,I=Math.abs(T)>Math.abs(L)?"h":"v";if("touches"in w&&I==="h"&&D.type==="range")return!1;var N=mO(I,D);if(!N)return!0;if(N?O=I:(O=I==="v"?"h":"v",N=mO(I,D)),!N)return!1;if(!r.current&&"changedTouches"in w&&(T||L)&&(r.current=O),!O)return!0;var W=r.current||O;return e2e(W,E,w,W==="h"?T:L,!0)},[]),l=S.useCallback(function(w){var E=w;if(!(!_g.length||_g[_g.length-1]!==o)){var _="deltaY"in E?vO(E):Yb(E),k=t.current.filter(function(O){return O.name===E.type&&O.target===E.target&&t2e(O.delta,_)})[0];if(k&&k.should){E.cancelable&&E.preventDefault();return}if(!k){var T=(a.current.shards||[]).map(yO).filter(Boolean).filter(function(O){return O.contains(E.target)}),L=T.length>0?s(E,T[0]):!a.current.noIsolation;L&&E.cancelable&&E.preventDefault()}}},[]),u=S.useCallback(function(w,E,_,k){var T={name:w,delta:E,target:_,should:k};t.current.push(T),setTimeout(function(){t.current=t.current.filter(function(L){return L!==T})},1)},[]),d=S.useCallback(function(w){n.current=Yb(w),r.current=void 0},[]),p=S.useCallback(function(w){u(w.type,vO(w),w.target,s(w,e.lockRef.current))},[]),m=S.useCallback(function(w){u(w.type,Yb(w),w.target,s(w,e.lockRef.current))},[]);S.useEffect(function(){return _g.push(o),e.setCallbacks({onScrollCapture:p,onWheelCapture:p,onTouchMoveCapture:m}),document.addEventListener("wheel",l,Cg),document.addEventListener("touchmove",l,Cg),document.addEventListener("touchstart",d,Cg),function(){_g=_g.filter(function(w){return w!==o}),document.removeEventListener("wheel",l,Cg),document.removeEventListener("touchmove",l,Cg),document.removeEventListener("touchstart",d,Cg)}},[]);var y=e.removeScrollBar,b=e.inert;return S.createElement(S.Fragment,null,b?S.createElement(o,{styles:n2e(i)}):null,y?S.createElement(qye,{gapMode:"margin"}):null)}const o2e=l0e(AH,i2e);var jH=S.forwardRef(function(e,t){return S.createElement(Bw,Nl({},e,{ref:t,sideCar:o2e}))});jH.classNames=Bw.classNames;const NH=jH;function a2e(e){const{autoFocus:t,trapFocus:n,dialogRef:r,initialFocusRef:i,blockScrollOnMount:o,allowPinchZoom:a,finalFocusRef:s,returnFocusOnClose:l,preserveScrollBarGap:u,lockFocusAcrossFrames:d,isOpen:p}=Yh(),[m,y]=RB();S.useEffect(()=>{!m&&y&&setTimeout(y)},[m,y]);const b=TH(r,p);return g.jsx(Jz,{autoFocus:t,isDisabled:!n,initialFocusRef:i,finalFocusRef:s,restoreFocus:l,contentRef:r,lockFocusAcrossFrames:d,children:g.jsx(NH,{removeScrollBar:!u,allowPinchZoom:a,enabled:b===1&&o,forwardProps:!0,children:e.children})})}var Xd=Ze((e,t)=>{const{className:n,children:r,containerProps:i,motionProps:o,...a}=e,{getDialogProps:s,getDialogContainerProps:l}=Yh(),u=s(a,t),d=l(i),p=xt("chakra-modal__content",n),m=g0(),y={display:"flex",flexDirection:"column",position:"relative",width:"100%",outline:0,...m.dialog},b={display:"flex",width:"100vw",height:"$100vh",position:"fixed",left:0,top:0,...m.dialogContainer},{motionPreset:w}=Yh();return g.jsx(a2e,{children:g.jsx(Ne.div,{...d,className:"chakra-modal__content-container",tabIndex:-1,__css:b,children:g.jsx(PH,{preset:w,motionProps:o,className:p,...u,__css:y,children:r})})})});Xd.displayName="ModalContent";function $H(e){const{leastDestructiveRef:t,...n}=e;return g.jsx(Yd,{...n,initialFocusRef:t})}var FH=Ze((e,t)=>g.jsx(Xd,{ref:t,role:"alertdialog",...e})),zw=Ze((e,t)=>{const{className:n,...r}=e,i=xt("chakra-modal__footer",n),a={display:"flex",alignItems:"center",justifyContent:"flex-end",...g0().footer};return g.jsx(Ne.footer,{ref:t,...r,__css:a,className:i})});zw.displayName="ModalFooter";var op=Ze((e,t)=>{const{className:n,...r}=e,{headerId:i,setHeaderMounted:o}=Yh();S.useEffect(()=>(o(!0),()=>o(!1)),[o]);const a=xt("chakra-modal__header",n),l={flex:0,...g0().header};return g.jsx(Ne.header,{ref:t,className:a,id:i,...r,__css:l})});op.displayName="ModalHeader";var s2e=Ne(su.div),oc=Ze((e,t)=>{const{className:n,transition:r,motionProps:i,...o}=e,a=xt("chakra-modal__overlay",n),l={pos:"fixed",left:"0",top:"0",w:"100vw",h:"100vh",...g0().overlay},{motionPreset:u}=Yh(),p=i||(u==="none"?{}:oz);return g.jsx(s2e,{...p,__css:l,ref:t,className:a,...o})});oc.displayName="ModalOverlay";var Zm=Ze((e,t)=>{const{className:n,...r}=e,{bodyId:i,setBodyMounted:o}=Yh();S.useEffect(()=>(o(!0),()=>o(!1)),[o]);const a=xt("chakra-modal__body",n),s=g0();return g.jsx(Ne.div,{ref:t,className:a,id:i,...r,__css:s.body})});Zm.displayName="ModalBody";var m0=Ze((e,t)=>{const{onClick:n,className:r,...i}=e,{onClose:o}=Yh(),a=xt("chakra-modal__close-btn",r),s=g0();return g.jsx(o8,{ref:t,__css:s.closeButton,className:a,onClick:ht(n,l=>{l.stopPropagation(),o()}),...i})});m0.displayName="ModalCloseButton";var l2e=e=>g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M21,5H3C2.621,5,2.275,5.214,2.105,5.553C1.937,5.892,1.973,6.297,2.2,6.6l9,12 c0.188,0.252,0.485,0.4,0.8,0.4s0.611-0.148,0.8-0.4l9-12c0.228-0.303,0.264-0.708,0.095-1.047C21.725,5.214,21.379,5,21,5z"})}),u2e=e=>g.jsx(ja,{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M12.8,5.4c-0.377-0.504-1.223-0.504-1.6,0l-9,12c-0.228,0.303-0.264,0.708-0.095,1.047 C2.275,18.786,2.621,19,3,19h18c0.379,0,0.725-0.214,0.895-0.553c0.169-0.339,0.133-0.744-0.095-1.047L12.8,5.4z"})});function bO(e,t,n,r){S.useEffect(()=>{var i;if(!e.current||!r)return;const o=(i=e.current.ownerDocument.defaultView)!=null?i:window,a=Array.isArray(t)?t:[t],s=new o.MutationObserver(l=>{for(const u of l)u.type==="attributes"&&u.attributeName&&a.includes(u.attributeName)&&n(u)});return s.observe(e.current,{attributes:!0,attributeFilter:a}),()=>s.disconnect()})}function c2e(e,t){const n=Qr(e);S.useEffect(()=>{let r=null;const i=()=>n();return t!==null&&(r=window.setInterval(i,t)),()=>{r&&window.clearInterval(r)}},[t,n])}var d2e=50,xO=300;function f2e(e,t){const[n,r]=S.useState(!1),[i,o]=S.useState(null),[a,s]=S.useState(!0),l=S.useRef(null),u=()=>clearTimeout(l.current);c2e(()=>{i==="increment"&&e(),i==="decrement"&&t()},n?d2e:null);const d=S.useCallback(()=>{a&&e(),l.current=setTimeout(()=>{s(!1),r(!0),o("increment")},xO)},[e,a]),p=S.useCallback(()=>{a&&t(),l.current=setTimeout(()=>{s(!1),r(!0),o("decrement")},xO)},[t,a]),m=S.useCallback(()=>{s(!0),r(!1),u()},[]);return S.useEffect(()=>()=>u(),[]),{up:d,down:p,stop:m,isSpinning:n}}var h2e=/^[Ee0-9+\-.]$/;function p2e(e){return h2e.test(e)}function g2e(e,t){if(e.key==null)return!0;const n=e.ctrlKey||e.altKey||e.metaKey;return!(e.key.length===1)||n?!0:t(e.key)}function m2e(e={}){const{focusInputOnChange:t=!0,clampValueOnBlur:n=!0,keepWithinRange:r=!0,min:i=Number.MIN_SAFE_INTEGER,max:o=Number.MAX_SAFE_INTEGER,step:a=1,isReadOnly:s,isDisabled:l,isRequired:u,isInvalid:d,pattern:p="[0-9]*(.[0-9]+)?",inputMode:m="decimal",allowMouseWheel:y,id:b,onChange:w,precision:E,name:_,"aria-describedby":k,"aria-label":T,"aria-labelledby":L,onFocus:O,onBlur:D,onInvalid:I,getAriaValueText:N,isValidCharacter:W,format:B,parse:K,...ne}=e,z=Qr(O),$=Qr(D),V=Qr(I),X=Qr(W??p2e),Q=Qr(N),G=Ume(e),{update:Y,increment:ee,decrement:fe}=G,[_e,we]=S.useState(!1),xe=!(s||l),Le=S.useRef(null),Se=S.useRef(null),Je=S.useRef(null),Xe=S.useRef(null),tt=S.useCallback(Me=>Me.split("").filter(X).join(""),[X]),yt=S.useCallback(Me=>{var Ct;return(Ct=K==null?void 0:K(Me))!=null?Ct:Me},[K]),Be=S.useCallback(Me=>{var Ct;return((Ct=B==null?void 0:B(Me))!=null?Ct:Me).toString()},[B]);rc(()=>{(G.valueAsNumber>o||G.valueAsNumber{if(!Le.current)return;if(Le.current.value!=G.value){const Ct=yt(Le.current.value);G.setValue(tt(Ct))}},[yt,tt]);const Ae=S.useCallback((Me=a)=>{xe&&ee(Me)},[ee,xe,a]),bt=S.useCallback((Me=a)=>{xe&&fe(Me)},[fe,xe,a]),Fe=f2e(Ae,bt);bO(Je,"disabled",Fe.stop,Fe.isSpinning),bO(Xe,"disabled",Fe.stop,Fe.isSpinning);const at=S.useCallback(Me=>{if(Me.nativeEvent.isComposing)return;const zt=yt(Me.currentTarget.value);Y(tt(zt)),Se.current={start:Me.currentTarget.selectionStart,end:Me.currentTarget.selectionEnd}},[Y,tt,yt]),jt=S.useCallback(Me=>{var Ct,zt,$n;z==null||z(Me),Se.current&&(Me.target.selectionStart=(zt=Se.current.start)!=null?zt:(Ct=Me.currentTarget.value)==null?void 0:Ct.length,Me.currentTarget.selectionEnd=($n=Se.current.end)!=null?$n:Me.currentTarget.selectionStart)},[z]),mt=S.useCallback(Me=>{if(Me.nativeEvent.isComposing)return;g2e(Me,X)||Me.preventDefault();const Ct=Zt(Me)*a,zt=Me.key,qe={ArrowUp:()=>Ae(Ct),ArrowDown:()=>bt(Ct),Home:()=>Y(i),End:()=>Y(o)}[zt];qe&&(Me.preventDefault(),qe(Me))},[X,a,Ae,bt,Y,i,o]),Zt=Me=>{let Ct=1;return(Me.metaKey||Me.ctrlKey)&&(Ct=.1),Me.shiftKey&&(Ct=10),Ct},on=S.useMemo(()=>{const Me=Q==null?void 0:Q(G.value);if(Me!=null)return Me;const Ct=G.value.toString();return Ct||void 0},[G.value,Q]),se=S.useCallback(()=>{let Me=G.value;if(G.value==="")return;/^[eE]/.test(G.value.toString())?G.setValue(""):(G.valueAsNumbero&&(Me=o),G.cast(Me))},[G,o,i]),Ie=S.useCallback(()=>{we(!1),n&&se()},[n,we,se]),He=S.useCallback(()=>{t&&requestAnimationFrame(()=>{var Me;(Me=Le.current)==null||Me.focus()})},[t]),Ue=S.useCallback(Me=>{Me.preventDefault(),Fe.up(),He()},[He,Fe]),ye=S.useCallback(Me=>{Me.preventDefault(),Fe.down(),He()},[He,Fe]);Dh(()=>Le.current,"wheel",Me=>{var Ct,zt;const qe=((zt=(Ct=Le.current)==null?void 0:Ct.ownerDocument)!=null?zt:document).activeElement===Le.current;if(!y||!qe)return;Me.preventDefault();const pt=Zt(Me)*a,zr=Math.sign(Me.deltaY);zr===-1?Ae(pt):zr===1&&bt(pt)},{passive:!1});const je=S.useCallback((Me={},Ct=null)=>{const zt=l||r&&G.isAtMax;return{...Me,ref:Rn(Ct,Je),role:"button",tabIndex:-1,onPointerDown:ht(Me.onPointerDown,$n=>{$n.button!==0||zt||Ue($n)}),onPointerLeave:ht(Me.onPointerLeave,Fe.stop),onPointerUp:ht(Me.onPointerUp,Fe.stop),disabled:zt,"aria-disabled":Uu(zt)}},[G.isAtMax,r,Ue,Fe.stop,l]),vt=S.useCallback((Me={},Ct=null)=>{const zt=l||r&&G.isAtMin;return{...Me,ref:Rn(Ct,Xe),role:"button",tabIndex:-1,onPointerDown:ht(Me.onPointerDown,$n=>{$n.button!==0||zt||ye($n)}),onPointerLeave:ht(Me.onPointerLeave,Fe.stop),onPointerUp:ht(Me.onPointerUp,Fe.stop),disabled:zt,"aria-disabled":Uu(zt)}},[G.isAtMin,r,ye,Fe.stop,l]),Mt=S.useCallback((Me={},Ct=null)=>{var zt,$n,qe,pt;return{name:_,inputMode:m,type:"text",pattern:p,"aria-labelledby":L,"aria-label":T,"aria-describedby":k,id:b,disabled:l,...Me,readOnly:(zt=Me.readOnly)!=null?zt:s,"aria-readonly":($n=Me.readOnly)!=null?$n:s,"aria-required":(qe=Me.required)!=null?qe:u,required:(pt=Me.required)!=null?pt:u,ref:Rn(Le,Ct),value:Be(G.value),role:"spinbutton","aria-valuemin":i,"aria-valuemax":o,"aria-valuenow":Number.isNaN(G.valueAsNumber)?void 0:G.valueAsNumber,"aria-invalid":Uu(d??G.isOutOfRange),"aria-valuetext":on,autoComplete:"off",autoCorrect:"off",onChange:ht(Me.onChange,at),onKeyDown:ht(Me.onKeyDown,mt),onFocus:ht(Me.onFocus,jt,()=>we(!0)),onBlur:ht(Me.onBlur,$,Ie)}},[_,m,p,L,T,Be,k,b,l,u,s,d,G.value,G.valueAsNumber,G.isOutOfRange,i,o,on,at,mt,jt,$,Ie]);return{value:Be(G.value),valueAsNumber:G.valueAsNumber,isFocused:_e,isDisabled:l,isReadOnly:s,getIncrementButtonProps:je,getDecrementButtonProps:vt,getInputProps:Mt,htmlProps:ne}}var[v2e,Hw]=Pn({name:"NumberInputStylesContext",errorMessage:`useNumberInputStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),[y2e,F8]=Pn({name:"NumberInputContext",errorMessage:"useNumberInputContext: `context` is undefined. Seems you forgot to wrap number-input's components within "}),B8=Ze(function(t,n){const r=Yi("NumberInput",t),i=fr(t),o=h8(i),{htmlProps:a,...s}=m2e(o),l=S.useMemo(()=>s,[s]);return g.jsx(y2e,{value:l,children:g.jsx(v2e,{value:r,children:g.jsx(Ne.div,{...a,ref:n,className:xt("chakra-numberinput",t.className),__css:{position:"relative",zIndex:0,...r.root}})})})});B8.displayName="NumberInput";var BH=Ze(function(t,n){const r=Hw();return g.jsx(Ne.div,{"aria-hidden":!0,ref:n,...t,__css:{display:"flex",flexDirection:"column",position:"absolute",top:"0",insetEnd:"0px",margin:"1px",height:"calc(100% - 2px)",zIndex:1,...r.stepperGroup}})});BH.displayName="NumberInputStepper";var z8=Ze(function(t,n){const{getInputProps:r}=F8(),i=r(t,n),o=Hw();return g.jsx(Ne.input,{...i,className:xt("chakra-numberinput__field",t.className),__css:{width:"100%",...o.field}})});z8.displayName="NumberInputField";var zH=Ne("div",{baseStyle:{display:"flex",justifyContent:"center",alignItems:"center",flex:1,transitionProperty:"common",transitionDuration:"normal",userSelect:"none",cursor:"pointer",lineHeight:"normal"}}),H8=Ze(function(t,n){var r;const i=Hw(),{getDecrementButtonProps:o}=F8(),a=o(t,n);return g.jsx(zH,{...a,__css:i.stepper,children:(r=t.children)!=null?r:g.jsx(l2e,{})})});H8.displayName="NumberDecrementStepper";var W8=Ze(function(t,n){var r;const{getIncrementButtonProps:i}=F8(),o=i(t,n),a=Hw();return g.jsx(zH,{...o,__css:a.stepper,children:(r=t.children)!=null?r:g.jsx(u2e,{})})});W8.displayName="NumberIncrementStepper";var[b2e,Ww]=Pn({name:"PopoverContext",errorMessage:"usePopoverContext: `context` is undefined. Seems you forgot to wrap all popover components within ``"}),[x2e,HH]=Pn({name:"PopoverStylesContext",errorMessage:`usePopoverStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `});function U8(e){const t=S.Children.only(e.children),{getTriggerProps:n}=Ww();return S.cloneElement(t,n(t.props,t.ref))}U8.displayName="PopoverTrigger";var kg={click:"click",hover:"hover"};function S2e(e={}){const{closeOnBlur:t=!0,closeOnEsc:n=!0,initialFocusRef:r,id:i,returnFocusOnClose:o=!0,autoFocus:a=!0,arrowSize:s,arrowShadowColor:l,trigger:u=kg.click,openDelay:d=200,closeDelay:p=200,isLazy:m,lazyBehavior:y="unmount",computePositionOnMount:b,...w}=e,{isOpen:E,onClose:_,onOpen:k,onToggle:T}=N8(e),L=S.useRef(null),O=S.useRef(null),D=S.useRef(null),I=S.useRef(!1),N=S.useRef(!1);E&&(N.current=!0);const[W,B]=S.useState(!1),[K,ne]=S.useState(!1),z=S.useId(),$=i??z,[V,X,Q,G]=["popover-trigger","popover-content","popover-header","popover-body"].map(at=>`${at}-${$}`),{referenceRef:Y,getArrowProps:ee,getPopperProps:fe,getArrowInnerProps:_e,forceUpdate:we}=j8({...w,enabled:E||!!b}),xe=bH({isOpen:E,ref:D});Zme({enabled:E,ref:O}),lH(D,{focusRef:O,visible:E,shouldFocus:o&&u===kg.click}),Ave(D,{focusRef:r,visible:E,shouldFocus:a&&u===kg.click});const Le=$8({wasSelected:N.current,enabled:m,mode:y,isSelected:xe.present}),Se=S.useCallback((at={},jt=null)=>{const mt={...at,style:{...at.style,transformOrigin:ii.transformOrigin.varRef,[ii.arrowSize.var]:s?`${s}px`:void 0,[ii.arrowShadowColor.var]:l},ref:Rn(D,jt),children:Le?at.children:null,id:X,tabIndex:-1,role:"dialog",onKeyDown:ht(at.onKeyDown,Zt=>{n&&Zt.key==="Escape"&&_()}),onBlur:ht(at.onBlur,Zt=>{const on=SO(Zt),se=yC(D.current,on),Ie=yC(O.current,on);E&&t&&(!se&&!Ie)&&_()}),"aria-labelledby":W?Q:void 0,"aria-describedby":K?G:void 0};return u===kg.hover&&(mt.role="tooltip",mt.onMouseEnter=ht(at.onMouseEnter,()=>{I.current=!0}),mt.onMouseLeave=ht(at.onMouseLeave,Zt=>{Zt.nativeEvent.relatedTarget!==null&&(I.current=!1,setTimeout(()=>_(),p))})),mt},[Le,X,W,Q,K,G,u,n,_,E,t,p,l,s]),Je=S.useCallback((at={},jt=null)=>fe({...at,style:{visibility:E?"visible":"hidden",...at.style}},jt),[E,fe]),Xe=S.useCallback((at,jt=null)=>({...at,ref:Rn(jt,L,Y)}),[L,Y]),tt=S.useRef(),yt=S.useRef(),Be=S.useCallback(at=>{L.current==null&&Y(at)},[Y]),Ae=S.useCallback((at={},jt=null)=>{const mt={...at,ref:Rn(O,jt,Be),id:V,"aria-haspopup":"dialog","aria-expanded":E,"aria-controls":X};return u===kg.click&&(mt.onClick=ht(at.onClick,T)),u===kg.hover&&(mt.onFocus=ht(at.onFocus,()=>{tt.current===void 0&&k()}),mt.onBlur=ht(at.onBlur,Zt=>{const on=SO(Zt),se=!yC(D.current,on);E&&t&&se&&_()}),mt.onKeyDown=ht(at.onKeyDown,Zt=>{Zt.key==="Escape"&&_()}),mt.onMouseEnter=ht(at.onMouseEnter,()=>{I.current=!0,tt.current=window.setTimeout(()=>k(),d)}),mt.onMouseLeave=ht(at.onMouseLeave,()=>{I.current=!1,tt.current&&(clearTimeout(tt.current),tt.current=void 0),yt.current=window.setTimeout(()=>{I.current===!1&&_()},p)})),mt},[V,E,X,u,Be,T,k,t,_,d,p]);S.useEffect(()=>()=>{tt.current&&clearTimeout(tt.current),yt.current&&clearTimeout(yt.current)},[]);const bt=S.useCallback((at={},jt=null)=>({...at,id:Q,ref:Rn(jt,mt=>{B(!!mt)})}),[Q]),Fe=S.useCallback((at={},jt=null)=>({...at,id:G,ref:Rn(jt,mt=>{ne(!!mt)})}),[G]);return{forceUpdate:we,isOpen:E,onAnimationComplete:xe.onComplete,onClose:_,getAnchorProps:Xe,getArrowProps:ee,getArrowInnerProps:_e,getPopoverPositionerProps:Je,getPopoverProps:Se,getTriggerProps:Ae,getHeaderProps:bt,getBodyProps:Fe}}function yC(e,t){return e===t||(e==null?void 0:e.contains(t))}function SO(e){var t;const n=e.currentTarget.ownerDocument.activeElement;return(t=e.relatedTarget)!=null?t:n}function V8(e){const t=Yi("Popover",e),{children:n,...r}=fr(e),i=Zy(),o=S2e({...r,direction:i.direction});return g.jsx(b2e,{value:o,children:g.jsx(x2e,{value:t,children:ts(n,{isOpen:o.isOpen,onClose:o.onClose,forceUpdate:o.forceUpdate})})})}V8.displayName="Popover";function G8(e){var t;const{bg:n,bgColor:r,backgroundColor:i,shadow:o,boxShadow:a}=e,{getArrowProps:s,getArrowInnerProps:l}=Ww(),u=HH(),d=(t=n??r)!=null?t:i,p=o??a;return g.jsx(Ne.div,{...s(),className:"chakra-popover__arrow-positioner",children:g.jsx(Ne.div,{className:xt("chakra-popover__arrow",e.className),...l(e),__css:{"--popper-arrow-bg":d?`colors.${d}, ${d}`:void 0,"--popper-arrow-shadow":p?`shadows.${p}, ${p}`:void 0,...u.arrow}})})}G8.displayName="PopoverArrow";function w2e(e){if(e)return{enter:{...e.enter,visibility:"visible"},exit:{...e.exit,transitionEnd:{visibility:"hidden"}}}}var C2e={exit:{opacity:0,scale:.95,transition:{duration:.1,ease:[.4,0,1,1]}},enter:{scale:1,opacity:1,transition:{duration:.15,ease:[0,0,.2,1]}}},_2e=Ne(su.section),WH=Ze(function(t,n){const{variants:r=C2e,...i}=t,{isOpen:o}=Ww();return g.jsx(_2e,{ref:n,variants:w2e(r),initial:!1,animate:o?"enter":"exit",...i})});WH.displayName="PopoverTransition";var q8=Ze(function(t,n){const{rootProps:r,motionProps:i,...o}=t,{getPopoverProps:a,getPopoverPositionerProps:s,onAnimationComplete:l}=Ww(),u=HH(),d={position:"relative",display:"flex",flexDirection:"column",...u.content};return g.jsx(Ne.div,{...s(r),__css:u.popper,className:"chakra-popover__popper",children:g.jsx(WH,{...i,...a(o,n),onAnimationComplete:Sw(l,o.onAnimationComplete),className:xt("chakra-popover__content",t.className),__css:d})})});q8.displayName="PopoverContent";function k2e(e,t,n){return(e-t)*100/(n-t)}nf({"0%":{strokeDasharray:"1, 400",strokeDashoffset:"0"},"50%":{strokeDasharray:"400, 400",strokeDashoffset:"-100"},"100%":{strokeDasharray:"400, 400",strokeDashoffset:"-260"}});nf({"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}});var E2e=nf({"0%":{left:"-40%"},"100%":{left:"100%"}}),P2e=nf({from:{backgroundPosition:"1rem 0"},to:{backgroundPosition:"0 0"}});function T2e(e){const{value:t=0,min:n,max:r,valueText:i,getValueText:o,isIndeterminate:a,role:s="progressbar"}=e,l=k2e(t,n,r);return{bind:{"data-indeterminate":a?"":void 0,"aria-valuemax":r,"aria-valuemin":n,"aria-valuenow":a?void 0:t,"aria-valuetext":(()=>{if(t!=null)return typeof o=="function"?o(t,l):i})(),role:s},percent:l,value:t}}var[M2e,L2e]=Pn({name:"ProgressStylesContext",errorMessage:`useProgressStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),A2e=Ze((e,t)=>{const{min:n,max:r,value:i,isIndeterminate:o,role:a,...s}=e,l=T2e({value:i,min:n,max:r,isIndeterminate:o,role:a}),d={height:"100%",...L2e().filledTrack};return g.jsx(Ne.div,{ref:t,style:{width:`${l.percent}%`,...s.style},...l.bind,...s,__css:d})}),UH=Ze((e,t)=>{var n;const{value:r,min:i=0,max:o=100,hasStripe:a,isAnimated:s,children:l,borderRadius:u,isIndeterminate:d,"aria-label":p,"aria-labelledby":m,"aria-valuetext":y,title:b,role:w,...E}=fr(e),_=Yi("Progress",e),k=u??((n=_.track)==null?void 0:n.borderRadius),T={animation:`${P2e} 1s linear infinite`},D={...!d&&a&&s&&T,...d&&{position:"absolute",willChange:"left",minWidth:"50%",animation:`${E2e} 1s ease infinite normal none running`}},I={overflow:"hidden",position:"relative",..._.track};return g.jsx(Ne.div,{ref:t,borderRadius:k,__css:I,...E,children:g.jsxs(M2e,{value:_,children:[g.jsx(A2e,{"aria-label":p,"aria-labelledby":m,"aria-valuetext":y,min:i,max:o,value:r,isIndeterminate:d,css:D,borderRadius:k,title:b,role:w}),l]})})});UH.displayName="Progress";function O2e(e){return e&&ko(e)&&ko(e.target)}function R2e(e={}){const{onChange:t,value:n,defaultValue:r,name:i,isDisabled:o,isFocusable:a,isNative:s,...l}=e,[u,d]=S.useState(r||""),p=typeof n<"u",m=p?n:u,y=S.useRef(null),b=S.useCallback(()=>{const O=y.current;if(!O)return;let D="input:not(:disabled):checked";const I=O.querySelector(D);if(I){I.focus();return}D="input:not(:disabled)";const N=O.querySelector(D);N==null||N.focus()},[]),E=`radio-${S.useId()}`,_=i||E,k=S.useCallback(O=>{const D=O2e(O)?O.target.value:O;p||d(D),t==null||t(String(D))},[t,p]),T=S.useCallback((O={},D=null)=>({...O,ref:Rn(D,y),role:"radiogroup"}),[]),L=S.useCallback((O={},D=null)=>({...O,ref:D,name:_,[s?"checked":"isChecked"]:m!=null?O.value===m:void 0,onChange(N){k(N)},"data-radiogroup":!0}),[s,_,k,m]);return{getRootProps:T,getRadioProps:L,name:_,ref:y,focus:b,setValue:d,value:m,onChange:k,isDisabled:o,isFocusable:a,htmlProps:l}}var[I2e,VH]=Pn({name:"RadioGroupContext",strict:!1}),Oy=Ze((e,t)=>{const{colorScheme:n,size:r,variant:i,children:o,className:a,isDisabled:s,isFocusable:l,...u}=e,{value:d,onChange:p,getRootProps:m,name:y,htmlProps:b}=R2e(u),w=S.useMemo(()=>({name:y,size:r,onChange:p,colorScheme:n,value:d,variant:i,isDisabled:s,isFocusable:l}),[y,r,p,n,d,i,s,l]);return g.jsx(I2e,{value:w,children:g.jsx(Ne.div,{...m(b,t),className:xt("chakra-radio-group",a),children:o})})});Oy.displayName="RadioGroup";var D2e={border:"0",clip:"rect(0, 0, 0, 0)",height:"1px",width:"1px",margin:"-1px",padding:"0",overflow:"hidden",whiteSpace:"nowrap",position:"absolute"};function j2e(e={}){const{defaultChecked:t,isChecked:n,isFocusable:r,isDisabled:i,isReadOnly:o,isRequired:a,onChange:s,isInvalid:l,name:u,value:d,id:p,"data-radiogroup":m,"aria-describedby":y,...b}=e,w=`radio-${S.useId()}`,E=ip(),k=!!VH()||!!m;let L=!!E&&!k?E.id:w;L=p??L;const O=i??(E==null?void 0:E.isDisabled),D=o??(E==null?void 0:E.isReadOnly),I=a??(E==null?void 0:E.isRequired),N=l??(E==null?void 0:E.isInvalid),[W,B]=S.useState(!1),[K,ne]=S.useState(!1),[z,$]=S.useState(!1),[V,X]=S.useState(!1),[Q,G]=S.useState(Boolean(t)),Y=typeof n<"u",ee=Y?n:Q;S.useEffect(()=>uz(B),[]);const fe=S.useCallback(Be=>{if(D||O){Be.preventDefault();return}Y||G(Be.target.checked),s==null||s(Be)},[Y,O,D,s]),_e=S.useCallback(Be=>{Be.key===" "&&X(!0)},[X]),we=S.useCallback(Be=>{Be.key===" "&&X(!1)},[X]),xe=S.useCallback((Be={},Ae=null)=>({...Be,ref:Ae,"data-active":Bt(V),"data-hover":Bt(z),"data-disabled":Bt(O),"data-invalid":Bt(N),"data-checked":Bt(ee),"data-focus":Bt(K),"data-focus-visible":Bt(K&&W),"data-readonly":Bt(D),"aria-hidden":!0,onMouseDown:ht(Be.onMouseDown,()=>X(!0)),onMouseUp:ht(Be.onMouseUp,()=>X(!1)),onMouseEnter:ht(Be.onMouseEnter,()=>$(!0)),onMouseLeave:ht(Be.onMouseLeave,()=>$(!1))}),[V,z,O,N,ee,K,D,W]),{onFocus:Le,onBlur:Se}=E??{},Je=S.useCallback((Be={},Ae=null)=>{const bt=O&&!r;return{...Be,id:L,ref:Ae,type:"radio",name:u,value:d,onChange:ht(Be.onChange,fe),onBlur:ht(Se,Be.onBlur,()=>ne(!1)),onFocus:ht(Le,Be.onFocus,()=>ne(!0)),onKeyDown:ht(Be.onKeyDown,_e),onKeyUp:ht(Be.onKeyUp,we),checked:ee,disabled:bt,readOnly:D,required:I,"aria-invalid":Uu(N),"aria-disabled":Uu(bt),"aria-required":Uu(I),"data-readonly":Bt(D),"aria-describedby":y,style:D2e}},[O,r,L,u,d,fe,Se,Le,_e,we,ee,D,I,N,y]);return{state:{isInvalid:N,isFocused:K,isChecked:ee,isActive:V,isHovered:z,isDisabled:O,isReadOnly:D,isRequired:I},getCheckboxProps:xe,getInputProps:Je,getLabelProps:(Be={},Ae=null)=>({...Be,ref:Ae,onMouseDown:ht(Be.onMouseDown,wO),onTouchStart:ht(Be.onTouchStart,wO),"data-disabled":Bt(O),"data-checked":Bt(ee),"data-invalid":Bt(N)}),getRootProps:(Be,Ae=null)=>({...Be,ref:Ae,"data-disabled":Bt(O),"data-checked":Bt(ee),"data-invalid":Bt(N)}),htmlProps:b}}function wO(e){e.preventDefault(),e.stopPropagation()}function N2e(e,t){const n={},r={};for(const[i,o]of Object.entries(e))t.includes(i)?n[i]=o:r[i]=o;return[n,r]}var Vo=Ze((e,t)=>{var n;const r=VH(),{onChange:i,value:o}=e,a=Yi("Radio",{...r,...e}),s=fr(e),{spacing:l="0.5rem",children:u,isDisabled:d=r==null?void 0:r.isDisabled,isFocusable:p=r==null?void 0:r.isFocusable,inputProps:m,...y}=s;let b=e.isChecked;(r==null?void 0:r.value)!=null&&o!=null&&(b=r.value===o);let w=i;r!=null&&r.onChange&&o!=null&&(w=Sw(r.onChange,i));const E=(n=e==null?void 0:e.name)!=null?n:r==null?void 0:r.name,{getInputProps:_,getCheckboxProps:k,getLabelProps:T,getRootProps:L,htmlProps:O}=j2e({...y,isChecked:b,isFocusable:p,isDisabled:d,onChange:w,name:E}),[D,I]=N2e(O,lF),N=k(I),W=_(m,t),B=T(),K=Object.assign({},D,L()),ne={display:"inline-flex",alignItems:"center",verticalAlign:"top",cursor:"pointer",position:"relative",...a.container},z={display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0,...a.control},$={userSelect:"none",marginStart:l,...a.label};return g.jsxs(Ne.label,{className:"chakra-radio",...K,__css:ne,children:[g.jsx("input",{className:"chakra-radio__input",...W}),g.jsx(Ne.span,{className:"chakra-radio__control",...N,__css:z}),u&&g.jsx(Ne.span,{className:"chakra-radio__label",...B,__css:$,children:u})]})});Vo.displayName="Radio";var GH=Ze(function(t,n){const{children:r,placeholder:i,className:o,...a}=t;return g.jsxs(Ne.select,{...a,ref:n,className:xt("chakra-select",o),children:[i&&g.jsx("option",{value:"",children:i}),r]})});GH.displayName="SelectField";function $2e(e,t){const n={},r={};for(const[i,o]of Object.entries(e))t.includes(i)?n[i]=o:r[i]=o;return[n,r]}var qH=Ze((e,t)=>{var n;const r=Yi("Select",e),{rootProps:i,placeholder:o,icon:a,color:s,height:l,h:u,minH:d,minHeight:p,iconColor:m,iconSize:y,...b}=fr(e),[w,E]=$2e(b,lF),_=f8(E),k={width:"100%",height:"fit-content",position:"relative",color:s},T={paddingEnd:"2rem",...r.field,_focus:{zIndex:"unset",...(n=r.field)==null?void 0:n._focus}};return g.jsxs(Ne.div,{className:"chakra-select__wrapper",__css:k,...w,...i,children:[g.jsx(GH,{ref:t,height:u??l,minH:d??p,placeholder:o,..._,__css:T,children:e.children}),g.jsx(KH,{"data-disabled":Bt(_.disabled),...(m||s)&&{color:m||s},__css:r.icon,...y&&{fontSize:y},children:a})]})});qH.displayName="Select";var F2e=e=>g.jsx("svg",{viewBox:"0 0 24 24",...e,children:g.jsx("path",{fill:"currentColor",d:"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z"})}),B2e=Ne("div",{baseStyle:{position:"absolute",display:"inline-flex",alignItems:"center",justifyContent:"center",pointerEvents:"none",top:"50%",transform:"translateY(-50%)"}}),KH=e=>{const{children:t=g.jsx(F2e,{}),...n}=e,r=S.cloneElement(t,{role:"presentation",className:"chakra-select__icon",focusable:!1,"aria-hidden":!0,style:{width:"1em",height:"1em",color:"currentColor"}});return g.jsx(B2e,{...n,className:"chakra-select__icon-wrapper",children:S.isValidElement(t)?r:null})};KH.displayName="SelectIcon";var Eg=e=>e?"":void 0,bC=e=>e?!0:void 0,f2=(...e)=>e.filter(Boolean).join(" ");function xC(...e){return function(n){e.some(r=>(r==null||r(n),n==null?void 0:n.defaultPrevented))}}function Xb(e){const{orientation:t,vertical:n,horizontal:r}=e;return t==="vertical"?n:r}var nS={width:0,height:0},Zb=e=>e||nS;function z2e(e){const{orientation:t,thumbPercents:n,thumbRects:r,isReversed:i}=e,o=w=>{var E;const _=(E=r[w])!=null?E:nS;return{position:"absolute",userSelect:"none",WebkitUserSelect:"none",MozUserSelect:"none",msUserSelect:"none",touchAction:"none",...Xb({orientation:t,vertical:{bottom:`calc(${n[w]}% - ${_.height/2}px)`},horizontal:{left:`calc(${n[w]}% - ${_.width/2}px)`}})}},a=t==="vertical"?r.reduce((w,E)=>Zb(w).height>Zb(E).height?w:E,nS):r.reduce((w,E)=>Zb(w).width>Zb(E).width?w:E,nS),s={position:"relative",touchAction:"none",WebkitTapHighlightColor:"rgba(0,0,0,0)",userSelect:"none",outline:0,...Xb({orientation:t,vertical:a?{paddingLeft:a.width/2,paddingRight:a.width/2}:{},horizontal:a?{paddingTop:a.height/2,paddingBottom:a.height/2}:{}})},l={position:"absolute",...Xb({orientation:t,vertical:{left:"50%",transform:"translateX(-50%)",height:"100%"},horizontal:{top:"50%",transform:"translateY(-50%)",width:"100%"}})},u=n.length===1,d=[0,i?100-n[0]:n[0]],p=u?d:n;let m=p[0];!u&&i&&(m=100-m);const y=Math.abs(p[p.length-1]-p[0]),b={...l,...Xb({orientation:t,vertical:i?{height:`${y}%`,top:`${m}%`}:{height:`${y}%`,bottom:`${m}%`},horizontal:i?{width:`${y}%`,right:`${m}%`}:{width:`${y}%`,left:`${m}%`}})};return{trackStyle:l,innerTrackStyle:b,rootStyle:s,getThumbStyle:o}}function H2e(e){const{isReversed:t,direction:n,orientation:r}=e;return n==="ltr"||r==="vertical"?t:!t}function W2e(e,t,n,r){return e.addEventListener(t,n,r),()=>{e.removeEventListener(t,n,r)}}function U2e(e){const t=G2e(e);return typeof t.PointerEvent<"u"&&e instanceof t.PointerEvent?e.pointerType==="mouse":e instanceof t.MouseEvent}function YH(e){return!!e.touches}function V2e(e){return YH(e)&&e.touches.length>1}function G2e(e){var t;return(t=e.view)!=null?t:window}function q2e(e,t="page"){const n=e.touches[0]||e.changedTouches[0];return{x:n[`${t}X`],y:n[`${t}Y`]}}function K2e(e,t="page"){return{x:e[`${t}X`],y:e[`${t}Y`]}}function XH(e,t="page"){return YH(e)?q2e(e,t):K2e(e,t)}function Y2e(e){return t=>{const n=U2e(t);(!n||n&&t.button===0)&&e(t)}}function X2e(e,t=!1){function n(i){e(i,{point:XH(i)})}return t?Y2e(n):n}function rS(e,t,n,r){return W2e(e,t,X2e(n,t==="pointerdown"),r)}var Z2e=Object.defineProperty,Q2e=(e,t,n)=>t in e?Z2e(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,$s=(e,t,n)=>(Q2e(e,typeof t!="symbol"?t+"":t,n),n),J2e=class{constructor(e,t,n){$s(this,"history",[]),$s(this,"startEvent",null),$s(this,"lastEvent",null),$s(this,"lastEventInfo",null),$s(this,"handlers",{}),$s(this,"removeListeners",()=>{}),$s(this,"threshold",3),$s(this,"win"),$s(this,"updatePoint",()=>{if(!(this.lastEvent&&this.lastEventInfo))return;const s=SC(this.lastEventInfo,this.history),l=this.startEvent!==null,u=rbe(s.offset,{x:0,y:0})>=this.threshold;if(!l&&!u)return;const{timestamp:d}=kL();this.history.push({...s.point,timestamp:d});const{onStart:p,onMove:m}=this.handlers;l||(p==null||p(this.lastEvent,s),this.startEvent=this.lastEvent),m==null||m(this.lastEvent,s)}),$s(this,"onPointerMove",(s,l)=>{this.lastEvent=s,this.lastEventInfo=l,wce.update(this.updatePoint,!0)}),$s(this,"onPointerUp",(s,l)=>{const u=SC(l,this.history),{onEnd:d,onSessionEnd:p}=this.handlers;p==null||p(s,u),this.end(),!(!d||!this.startEvent)&&(d==null||d(s,u))});var r;if(this.win=(r=e.view)!=null?r:window,V2e(e))return;this.handlers=t,n&&(this.threshold=n),e.stopPropagation(),e.preventDefault();const i={point:XH(e)},{timestamp:o}=kL();this.history=[{...i.point,timestamp:o}];const{onSessionStart:a}=t;a==null||a(e,SC(i,this.history)),this.removeListeners=nbe(rS(this.win,"pointermove",this.onPointerMove),rS(this.win,"pointerup",this.onPointerUp),rS(this.win,"pointercancel",this.onPointerUp))}updateHandlers(e){this.handlers=e}end(){var e;(e=this.removeListeners)==null||e.call(this),Cce.update(this.updatePoint)}};function CO(e,t){return{x:e.x-t.x,y:e.y-t.y}}function SC(e,t){return{point:e.point,delta:CO(e.point,t[t.length-1]),offset:CO(e.point,t[0]),velocity:tbe(t,.1)}}var ebe=e=>e*1e3;function tbe(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=e[e.length-1];for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>ebe(t)));)n--;if(!r)return{x:0,y:0};const o=(i.timestamp-r.timestamp)/1e3;if(o===0)return{x:0,y:0};const a={x:(i.x-r.x)/o,y:(i.y-r.y)/o};return a.x===1/0&&(a.x=0),a.y===1/0&&(a.y=0),a}function nbe(...e){return t=>e.reduce((n,r)=>r(n),t)}function wC(e,t){return Math.abs(e-t)}function _O(e){return"x"in e&&"y"in e}function rbe(e,t){if(typeof e=="number"&&typeof t=="number")return wC(e,t);if(_O(e)&&_O(t)){const n=wC(e.x,t.x),r=wC(e.y,t.y);return Math.sqrt(n**2+r**2)}return 0}function ZH(e){const t=S.useRef(null);return t.current=e,t}function ibe(e,t){const{onPan:n,onPanStart:r,onPanEnd:i,onPanSessionStart:o,onPanSessionEnd:a,threshold:s}=t,l=Boolean(n||r||i||o||a),u=S.useRef(null),d=ZH({onSessionStart:o,onSessionEnd:a,onStart:r,onMove:n,onEnd(p,m){u.current=null,i==null||i(p,m)}});S.useEffect(()=>{var p;(p=u.current)==null||p.updateHandlers(d.current)}),S.useEffect(()=>{const p=e.current;if(!p||!l)return;function m(y){u.current=new J2e(y,d.current,s)}return rS(p,"pointerdown",m)},[e,l,d,s]),S.useEffect(()=>()=>{var p;(p=u.current)==null||p.end(),u.current=null},[])}function obe(e,t){var n;if(!e){t(void 0);return}t({width:e.offsetWidth,height:e.offsetHeight});const r=(n=e.ownerDocument.defaultView)!=null?n:window,i=new r.ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const[a]=o;let s,l;if("borderBoxSize"in a){const u=a.borderBoxSize,d=Array.isArray(u)?u[0]:u;s=d.inlineSize,l=d.blockSize}else s=e.offsetWidth,l=e.offsetHeight;t({width:s,height:l})});return i.observe(e,{box:"border-box"}),()=>i.unobserve(e)}var abe=Boolean(globalThis==null?void 0:globalThis.document)?S.useLayoutEffect:S.useEffect;function sbe(e,t){var n,r;if(!e||!e.parentElement)return;const i=(r=(n=e.ownerDocument)==null?void 0:n.defaultView)!=null?r:window,o=new i.MutationObserver(()=>{t()});return o.observe(e.parentElement,{childList:!0}),()=>{o.disconnect()}}function lbe({getNodes:e,observeMutation:t=!0}){const[n,r]=S.useState([]),[i,o]=S.useState(0);return abe(()=>{const a=e(),s=a.map((l,u)=>obe(l,d=>{r(p=>[...p.slice(0,u),d,...p.slice(u+1)])}));if(t){const l=a[0];s.push(sbe(l,()=>{o(u=>u+1)}))}return()=>{s.forEach(l=>{l==null||l()})}},[i]),n}function ube(e){return typeof e=="object"&&e!==null&&"current"in e}function cbe(e){const[t]=lbe({observeMutation:!1,getNodes(){return[ube(e)?e.current:e]}});return t}function dbe(e){var t;const{min:n=0,max:r=100,onChange:i,value:o,defaultValue:a,isReversed:s,direction:l="ltr",orientation:u="horizontal",id:d,isDisabled:p,isReadOnly:m,onChangeStart:y,onChangeEnd:b,step:w=1,getAriaValueText:E,"aria-valuetext":_,"aria-label":k,"aria-labelledby":T,name:L,focusThumbOnChange:O=!0,...D}=e,I=Qr(y),N=Qr(b),W=Qr(E),B=H2e({isReversed:s,direction:l,orientation:u}),[K,ne]=l8({value:o,defaultValue:a??hbe(n,r),onChange:i}),[z,$]=S.useState(!1),[V,X]=S.useState(!1),Q=!(p||m),G=(r-n)/10,Y=w||(r-n)/100,ee=Qx(K,n,r),fe=r-ee+n,we=GA(B?fe:ee,n,r),xe=u==="vertical",Le=ZH({min:n,max:r,step:w,isDisabled:p,value:ee,isInteractive:Q,isReversed:B,isVertical:xe,eventSource:null,focusThumbOnChange:O,orientation:u}),Se=S.useRef(null),Je=S.useRef(null),Xe=S.useRef(null),tt=S.useId(),yt=d??tt,[Be,Ae]=[`slider-thumb-${yt}`,`slider-track-${yt}`],bt=S.useCallback(qe=>{var pt,zr;if(!Se.current)return;const rr=Le.current;rr.eventSource="pointer";const Bn=Se.current.getBoundingClientRect(),{clientX:li,clientY:vs}=(zr=(pt=qe.touches)==null?void 0:pt[0])!=null?zr:qe,tl=xe?Bn.bottom-vs:li-Bn.left,gf=xe?Bn.height:Bn.width;let ys=tl/gf;B&&(ys=1-ys);let Xi=Wme(ys,rr.min,rr.max);return rr.step&&(Xi=parseFloat(qA(Xi,rr.min,rr.step))),Xi=Qx(Xi,rr.min,rr.max),Xi},[xe,B,Le]),Fe=S.useCallback(qe=>{const pt=Le.current;pt.isInteractive&&(qe=parseFloat(qA(qe,pt.min,Y)),qe=Qx(qe,pt.min,pt.max),ne(qe))},[Y,ne,Le]),at=S.useMemo(()=>({stepUp(qe=Y){const pt=B?ee-qe:ee+qe;Fe(pt)},stepDown(qe=Y){const pt=B?ee+qe:ee-qe;Fe(pt)},reset(){Fe(a||0)},stepTo(qe){Fe(qe)}}),[Fe,B,ee,Y,a]),jt=S.useCallback(qe=>{const pt=Le.current,rr={ArrowRight:()=>at.stepUp(),ArrowUp:()=>at.stepUp(),ArrowLeft:()=>at.stepDown(),ArrowDown:()=>at.stepDown(),PageUp:()=>at.stepUp(G),PageDown:()=>at.stepDown(G),Home:()=>Fe(pt.min),End:()=>Fe(pt.max)}[qe.key];rr&&(qe.preventDefault(),qe.stopPropagation(),rr(qe),pt.eventSource="keyboard")},[at,Fe,G,Le]),mt=(t=W==null?void 0:W(ee))!=null?t:_,Zt=cbe(Je),{getThumbStyle:on,rootStyle:se,trackStyle:Ie,innerTrackStyle:He}=S.useMemo(()=>{const qe=Le.current,pt=Zt??{width:0,height:0};return z2e({isReversed:B,orientation:qe.orientation,thumbRects:[pt],thumbPercents:[we]})},[B,Zt,we,Le]),Ue=S.useCallback(()=>{Le.current.focusThumbOnChange&&setTimeout(()=>{var pt;return(pt=Je.current)==null?void 0:pt.focus()})},[Le]);rc(()=>{const qe=Le.current;Ue(),qe.eventSource==="keyboard"&&(N==null||N(qe.value))},[ee,N]);function ye(qe){const pt=bt(qe);pt!=null&&pt!==Le.current.value&&ne(pt)}ibe(Xe,{onPanSessionStart(qe){const pt=Le.current;pt.isInteractive&&($(!0),Ue(),ye(qe),I==null||I(pt.value))},onPanSessionEnd(){const qe=Le.current;qe.isInteractive&&($(!1),N==null||N(qe.value))},onPan(qe){Le.current.isInteractive&&ye(qe)}});const je=S.useCallback((qe={},pt=null)=>({...qe,...D,ref:Rn(pt,Xe),tabIndex:-1,"aria-disabled":bC(p),"data-focused":Eg(V),style:{...qe.style,...se}}),[D,p,V,se]),vt=S.useCallback((qe={},pt=null)=>({...qe,ref:Rn(pt,Se),id:Ae,"data-disabled":Eg(p),style:{...qe.style,...Ie}}),[p,Ae,Ie]),Mt=S.useCallback((qe={},pt=null)=>({...qe,ref:pt,style:{...qe.style,...He}}),[He]),Me=S.useCallback((qe={},pt=null)=>({...qe,ref:Rn(pt,Je),role:"slider",tabIndex:Q?0:void 0,id:Be,"data-active":Eg(z),"aria-valuetext":mt,"aria-valuemin":n,"aria-valuemax":r,"aria-valuenow":ee,"aria-orientation":u,"aria-disabled":bC(p),"aria-readonly":bC(m),"aria-label":k,"aria-labelledby":k?void 0:T,style:{...qe.style,...on(0)},onKeyDown:xC(qe.onKeyDown,jt),onFocus:xC(qe.onFocus,()=>X(!0)),onBlur:xC(qe.onBlur,()=>X(!1))}),[Q,Be,z,mt,n,r,ee,u,p,m,k,T,on,jt]),Ct=S.useCallback((qe,pt=null)=>{const zr=!(qe.valuer),rr=ee>=qe.value,Bn=GA(qe.value,n,r),li={position:"absolute",pointerEvents:"none",...fbe({orientation:u,vertical:{bottom:B?`${100-Bn}%`:`${Bn}%`},horizontal:{left:B?`${100-Bn}%`:`${Bn}%`}})};return{...qe,ref:pt,role:"presentation","aria-hidden":!0,"data-disabled":Eg(p),"data-invalid":Eg(!zr),"data-highlighted":Eg(rr),style:{...qe.style,...li}}},[p,B,r,n,u,ee]),zt=S.useCallback((qe={},pt=null)=>({...qe,ref:pt,type:"hidden",value:ee,name:L}),[L,ee]);return{state:{value:ee,isFocused:V,isDragging:z},actions:at,getRootProps:je,getTrackProps:vt,getInnerTrackProps:Mt,getThumbProps:Me,getMarkerProps:Ct,getInputProps:zt}}function fbe(e){const{orientation:t,vertical:n,horizontal:r}=e;return t==="vertical"?n:r}function hbe(e,t){return t"}),[gbe,Vw]=Pn({name:"SliderStylesContext",hookName:"useSliderStyles",providerName:""}),QH=Ze((e,t)=>{const n={orientation:"horizontal",...e},r=Yi("Slider",n),i=fr(n),{direction:o}=Zy();i.direction=o;const{getInputProps:a,getRootProps:s,...l}=dbe(i),u=s(),d=a({},t);return g.jsx(pbe,{value:l,children:g.jsx(gbe,{value:r,children:g.jsxs(Ne.div,{...u,className:f2("chakra-slider",n.className),__css:r.container,children:[n.children,g.jsx("input",{...d})]})})})});QH.displayName="Slider";var JH=Ze((e,t)=>{const{getThumbProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__thumb",e.className),__css:r.thumb})});JH.displayName="SliderThumb";var eW=Ze((e,t)=>{const{getTrackProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__track",e.className),__css:r.track})});eW.displayName="SliderTrack";var tW=Ze((e,t)=>{const{getInnerTrackProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__filled-track",e.className),__css:r.filledTrack})});tW.displayName="SliderFilledTrack";var tk=Ze((e,t)=>{const{getMarkerProps:n}=Uw(),r=Vw(),i=n(e,t);return g.jsx(Ne.div,{...i,className:f2("chakra-slider__marker",e.className),__css:r.mark})});tk.displayName="SliderMark";var K8=Ze(function(t,n){const r=Yi("Switch",t),{spacing:i="0.5rem",children:o,...a}=fr(t),{state:s,getInputProps:l,getCheckboxProps:u,getRootProps:d,getLabelProps:p}=cz(a),m=S.useMemo(()=>({display:"inline-block",position:"relative",verticalAlign:"middle",lineHeight:0,...r.container}),[r.container]),y=S.useMemo(()=>({display:"inline-flex",flexShrink:0,justifyContent:"flex-start",boxSizing:"content-box",cursor:"pointer",...r.track}),[r.track]),b=S.useMemo(()=>({userSelect:"none",marginStart:i,...r.label}),[i,r.label]);return g.jsxs(Ne.label,{...d(),className:xt("chakra-switch",t.className),__css:m,children:[g.jsx("input",{className:"chakra-switch__input",...l({},n)}),g.jsx(Ne.span,{...u(),className:"chakra-switch__track",__css:y,children:g.jsx(Ne.span,{__css:r.thumb,className:"chakra-switch__thumb","data-checked":Bt(s.isChecked),"data-hover":Bt(s.isHovered)})}),o&&g.jsx(Ne.span,{className:"chakra-switch__label",...p(),__css:b,children:o})]})});K8.displayName="Switch";var[mbe,vNe,vbe,ybe]=a8();function bbe(e){var t;const{defaultIndex:n,onChange:r,index:i,isManual:o,isLazy:a,lazyBehavior:s="unmount",orientation:l="horizontal",direction:u="ltr",...d}=e,[p,m]=S.useState(n??0),[y,b]=l8({defaultValue:n??0,value:i,onChange:r});S.useEffect(()=>{i!=null&&m(i)},[i]);const w=vbe(),E=S.useId();return{id:`tabs-${(t=e.id)!=null?t:E}`,selectedIndex:y,focusedIndex:p,setSelectedIndex:b,setFocusedIndex:m,isManual:o,isLazy:a,lazyBehavior:s,orientation:l,descendants:w,direction:u,htmlProps:d}}var[xbe,Y8]=Pn({name:"TabsContext",errorMessage:"useTabsContext: `context` is undefined. Seems you forgot to wrap all tabs components within "});function Sbe(e){const{isDisabled:t,isFocusable:n,...r}=e,{setSelectedIndex:i,isManual:o,id:a,setFocusedIndex:s,selectedIndex:l}=Y8(),{index:u,register:d}=ybe({disabled:t&&!n}),p=u===l,m=()=>{i(u)},y=()=>{s(u),!o&&!(t&&n)&&i(u)},b=sH({...r,ref:Rn(d,e.ref),isDisabled:t,isFocusable:n,onClick:ht(e.onClick,m)}),w="button";return{...b,id:nW(a,u),role:"tab",tabIndex:p?0:-1,type:w,"aria-selected":p,"aria-controls":rW(a,u),onFocus:t?void 0:ht(e.onFocus,y)}}var[wbe,Cbe]=Pn({});function _be(e){const t=Y8(),{id:n,selectedIndex:r}=t,o=d8(e.children).map((a,s)=>S.createElement(wbe,{key:s,value:{isSelected:s===r,id:rW(n,s),tabId:nW(n,s),selectedIndex:r}},a));return{...e,children:o}}function kbe(e){const{children:t,...n}=e,{isLazy:r,lazyBehavior:i}=Y8(),{isSelected:o,id:a,tabId:s}=Cbe(),l=S.useRef(!1);o&&(l.current=!0);const u=$8({wasSelected:l.current,isSelected:o,enabled:r,mode:i});return{tabIndex:0,...n,children:u?t:null,role:"tabpanel","aria-labelledby":s,hidden:!o,id:a}}function nW(e,t){return`${e}--tab-${t}`}function rW(e,t){return`${e}--tabpanel-${t}`}var[Ebe,X8]=Pn({name:"TabsStylesContext",errorMessage:`useTabsStyles returned is 'undefined'. Seems you forgot to wrap the components in "" `}),iW=Ze(function(t,n){const r=Yi("Tabs",t),{children:i,className:o,...a}=fr(t),{htmlProps:s,descendants:l,...u}=bbe(a),d=S.useMemo(()=>u,[u]),{isFitted:p,...m}=s;return g.jsx(mbe,{value:l,children:g.jsx(xbe,{value:d,children:g.jsx(Ebe,{value:r,children:g.jsx(Ne.div,{className:xt("chakra-tabs",o),ref:n,...m,__css:r.root,children:i})})})})});iW.displayName="Tabs";var oW=Ze(function(t,n){const r=kbe({...t,ref:n}),i=X8();return g.jsx(Ne.div,{outline:"0",...r,className:xt("chakra-tabs__tab-panel",t.className),__css:i.tabpanel})});oW.displayName="TabPanel";var aW=Ze(function(t,n){const r=_be(t),i=X8();return g.jsx(Ne.div,{...r,width:"100%",ref:n,className:xt("chakra-tabs__tab-panels",t.className),__css:i.tabpanels})});aW.displayName="TabPanels";var sW=Ze(function(t,n){const r=X8(),i=Sbe({...t,ref:n}),o={outline:"0",display:"flex",alignItems:"center",justifyContent:"center",...r.tab};return g.jsx(Ne.button,{...i,className:xt("chakra-tabs__tab",t.className),__css:o})});sW.displayName="Tab";function Pbe(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}var Tbe=["h","minH","height","minHeight"],Z8=Ze((e,t)=>{const n=au("Textarea",e),{className:r,rows:i,...o}=fr(e),a=f8(o),s=i?Pbe(n,Tbe):n;return g.jsx(Ne.textarea,{ref:t,rows:i,...a,className:xt("chakra-textarea",r),__css:s})});Z8.displayName="Textarea";var Mbe={exit:{scale:.85,opacity:0,transition:{opacity:{duration:.15,easings:"easeInOut"},scale:{duration:.2,easings:"easeInOut"}}},enter:{scale:1,opacity:1,transition:{opacity:{easings:"easeOut",duration:.2},scale:{duration:.2,ease:[.175,.885,.4,1.1]}}}},f3=e=>{var t;return((t=e.current)==null?void 0:t.ownerDocument)||document},nk=e=>{var t,n;return((n=(t=e.current)==null?void 0:t.ownerDocument)==null?void 0:n.defaultView)||window};function Lbe(e={}){const{openDelay:t=0,closeDelay:n=0,closeOnClick:r=!0,closeOnMouseDown:i,closeOnScroll:o,closeOnPointerDown:a=i,closeOnEsc:s=!0,onOpen:l,onClose:u,placement:d,id:p,isOpen:m,defaultIsOpen:y,arrowSize:b=10,arrowShadowColor:w,arrowPadding:E,modifiers:_,isDisabled:k,gutter:T,offset:L,direction:O,...D}=e,{isOpen:I,onOpen:N,onClose:W}=N8({isOpen:m,defaultIsOpen:y,onOpen:l,onClose:u}),{referenceRef:B,getPopperProps:K,getArrowInnerProps:ne,getArrowProps:z}=j8({enabled:I,placement:d,arrowPadding:E,modifiers:_,gutter:T,offset:L,direction:O}),$=S.useId(),X=`tooltip-${p??$}`,Q=S.useRef(null),G=S.useRef(),Y=S.useCallback(()=>{G.current&&(clearTimeout(G.current),G.current=void 0)},[]),ee=S.useRef(),fe=S.useCallback(()=>{ee.current&&(clearTimeout(ee.current),ee.current=void 0)},[]),_e=S.useCallback(()=>{fe(),W()},[W,fe]),we=Abe(Q,_e),xe=S.useCallback(()=>{if(!k&&!G.current){we();const Ae=nk(Q);G.current=Ae.setTimeout(N,t)}},[we,k,N,t]),Le=S.useCallback(()=>{Y();const Ae=nk(Q);ee.current=Ae.setTimeout(_e,n)},[n,_e,Y]),Se=S.useCallback(()=>{I&&r&&Le()},[r,Le,I]),Je=S.useCallback(()=>{I&&a&&Le()},[a,Le,I]),Xe=S.useCallback(Ae=>{I&&Ae.key==="Escape"&&Le()},[I,Le]);Dh(()=>f3(Q),"keydown",s?Xe:void 0),Dh(()=>f3(Q),"scroll",()=>{I&&o&&_e()}),S.useEffect(()=>{k&&(Y(),I&&W())},[k,I,W,Y]),S.useEffect(()=>()=>{Y(),fe()},[Y,fe]),Dh(()=>Q.current,"pointerleave",Le);const tt=S.useCallback((Ae={},bt=null)=>({...Ae,ref:Rn(Q,bt,B),onPointerEnter:ht(Ae.onPointerEnter,at=>{at.pointerType!=="touch"&&xe()}),onClick:ht(Ae.onClick,Se),onPointerDown:ht(Ae.onPointerDown,Je),onFocus:ht(Ae.onFocus,xe),onBlur:ht(Ae.onBlur,Le),"aria-describedby":I?X:void 0}),[xe,Le,Je,I,X,Se,B]),yt=S.useCallback((Ae={},bt=null)=>K({...Ae,style:{...Ae.style,[ii.arrowSize.var]:b?`${b}px`:void 0,[ii.arrowShadowColor.var]:w}},bt),[K,b,w]),Be=S.useCallback((Ae={},bt=null)=>{const Fe={...Ae.style,position:"relative",transformOrigin:ii.transformOrigin.varRef};return{ref:bt,...D,...Ae,id:X,role:"tooltip",style:Fe}},[D,X]);return{isOpen:I,show:xe,hide:Le,getTriggerProps:tt,getTooltipProps:Be,getTooltipPositionerProps:yt,getArrowProps:z,getArrowInnerProps:ne}}var CC="chakra-ui:close-tooltip";function Abe(e,t){return S.useEffect(()=>{const n=f3(e);return n.addEventListener(CC,t),()=>n.removeEventListener(CC,t)},[t,e]),()=>{const n=f3(e),r=nk(e);n.dispatchEvent(new r.CustomEvent(CC))}}function Obe(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function Rbe(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}var Ibe=Ne(su.div),si=Ze((e,t)=>{var n,r;const i=au("Tooltip",e),o=fr(e),a=Zy(),{children:s,label:l,shouldWrapChildren:u,"aria-label":d,hasArrow:p,bg:m,portalProps:y,background:b,backgroundColor:w,bgColor:E,motionProps:_,...k}=o,T=(r=(n=b??w)!=null?n:m)!=null?r:E;if(T){i.bg=T;const K=Yre(a,"colors",T);i[ii.arrowBg.var]=K}const L=Lbe({...k,direction:a.direction}),O=typeof s=="string"||u;let D;if(O)D=g.jsx(Ne.span,{display:"inline-block",tabIndex:0,...L.getTriggerProps(),children:s});else{const K=S.Children.only(s);D=S.cloneElement(K,L.getTriggerProps(K.props,K.ref))}const I=!!d,N=L.getTooltipProps({},t),W=I?Obe(N,["role","id"]):N,B=Rbe(N,["role","id"]);return l?g.jsxs(g.Fragment,{children:[D,g.jsx(rp,{children:L.isOpen&&g.jsx(c0,{...y,children:g.jsx(Ne.div,{...L.getTooltipPositionerProps(),__css:{zIndex:i.zIndex,pointerEvents:"none"},children:g.jsxs(Ibe,{variants:Mbe,initial:"exit",animate:"enter",exit:"exit",..._,...W,__css:i,children:[l,I&&g.jsx(Ne.span,{srOnly:!0,...B,children:d}),p&&g.jsx(Ne.div,{"data-popper-arrow":!0,className:"chakra-tooltip__arrow-wrapper",children:g.jsx(Ne.div,{"data-popper-arrow-inner":!0,className:"chakra-tooltip__arrow",__css:{bg:i.bg}})})]})})})})]}):g.jsx(g.Fragment,{children:s})});si.displayName="Tooltip";var rk={},kO=Xs;rk.createRoot=kO.createRoot,rk.hydrateRoot=kO.hydrateRoot;var ik={},Dbe={get exports(){return ik},set exports(e){ik=e}},lW={};/** * @license React * use-sync-external-store-shim.production.min.js * @@ -415,7 +415,7 @@ Error generating stack: `+o.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Qm=S;function Dbe(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var jbe=typeof Object.is=="function"?Object.is:Dbe,Nbe=Qm.useState,$be=Qm.useEffect,Fbe=Qm.useLayoutEffect,Bbe=Qm.useDebugValue;function zbe(e,t){var n=t(),r=Nbe({inst:{value:n,getSnapshot:t}}),i=r[0].inst,o=r[1];return Fbe(function(){i.value=n,i.getSnapshot=t,_C(i)&&o({inst:i})},[e,n,t]),$be(function(){return _C(i)&&o({inst:i}),e(function(){_C(i)&&o({inst:i})})},[e]),Bbe(n),n}function _C(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!jbe(e,n)}catch{return!0}}function Hbe(e,t){return t()}var Wbe=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?Hbe:zbe;lW.useSyncExternalStore=Qm.useSyncExternalStore!==void 0?Qm.useSyncExternalStore:Wbe;(function(e){e.exports=lW})(Ibe);var ok={},Ube={get exports(){return ok},set exports(e){ok=e}},uW={};/** + */var Qm=S;function jbe(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Nbe=typeof Object.is=="function"?Object.is:jbe,$be=Qm.useState,Fbe=Qm.useEffect,Bbe=Qm.useLayoutEffect,zbe=Qm.useDebugValue;function Hbe(e,t){var n=t(),r=$be({inst:{value:n,getSnapshot:t}}),i=r[0].inst,o=r[1];return Bbe(function(){i.value=n,i.getSnapshot=t,_C(i)&&o({inst:i})},[e,n,t]),Fbe(function(){return _C(i)&&o({inst:i}),e(function(){_C(i)&&o({inst:i})})},[e]),zbe(n),n}function _C(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Nbe(e,n)}catch{return!0}}function Wbe(e,t){return t()}var Ube=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?Wbe:Hbe;lW.useSyncExternalStore=Qm.useSyncExternalStore!==void 0?Qm.useSyncExternalStore:Ube;(function(e){e.exports=lW})(Dbe);var ok={},Vbe={get exports(){return ok},set exports(e){ok=e}},uW={};/** * @license React * use-sync-external-store-shim/with-selector.production.min.js * @@ -423,7 +423,7 @@ Error generating stack: `+o.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Gw=S,Vbe=ik;function Gbe(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var qbe=typeof Object.is=="function"?Object.is:Gbe,Kbe=Vbe.useSyncExternalStore,Ybe=Gw.useRef,Xbe=Gw.useEffect,Zbe=Gw.useMemo,Qbe=Gw.useDebugValue;uW.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var o=Ybe(null);if(o.current===null){var a={hasValue:!1,value:null};o.current=a}else a=o.current;o=Zbe(function(){function l(y){if(!u){if(u=!0,d=y,y=r(y),i!==void 0&&a.hasValue){var b=a.value;if(i(b,y))return h=b}return h=y}if(b=h,qbe(d,y))return b;var w=r(y);return i!==void 0&&i(b,w)?b:(d=y,h=w)}var u=!1,d,h,m=n===void 0?null:n;return[function(){return l(t())},m===null?void 0:function(){return l(m())}]},[t,n,r,i]);var s=Kbe(e,o[0],o[1]);return Xbe(function(){a.hasValue=!0,a.value=s},[s]),Qbe(s),s};(function(e){e.exports=uW})(Ube);function Jbe(e){e()}let cW=Jbe;const exe=e=>cW=e,txe=()=>cW,Zd=S.createContext(null);function dW(){return S.useContext(Zd)}const nxe=()=>{throw new Error("uSES not initialized!")};let fW=nxe;const rxe=e=>{fW=e},ixe=(e,t)=>e===t;function oxe(e=Zd){const t=e===Zd?dW:()=>S.useContext(e);return function(r,i=ixe){const{store:o,subscription:a,getServerState:s}=t(),l=fW(a.addNestedSub,o.getState,s||o.getState,r,i);return S.useDebugValue(l),l}}const axe=oxe();var EO={},sxe={get exports(){return EO},set exports(e){EO=e}},Nn={};/** + */var Gw=S,Gbe=ik;function qbe(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var Kbe=typeof Object.is=="function"?Object.is:qbe,Ybe=Gbe.useSyncExternalStore,Xbe=Gw.useRef,Zbe=Gw.useEffect,Qbe=Gw.useMemo,Jbe=Gw.useDebugValue;uW.useSyncExternalStoreWithSelector=function(e,t,n,r,i){var o=Xbe(null);if(o.current===null){var a={hasValue:!1,value:null};o.current=a}else a=o.current;o=Qbe(function(){function l(y){if(!u){if(u=!0,d=y,y=r(y),i!==void 0&&a.hasValue){var b=a.value;if(i(b,y))return p=b}return p=y}if(b=p,Kbe(d,y))return b;var w=r(y);return i!==void 0&&i(b,w)?b:(d=y,p=w)}var u=!1,d,p,m=n===void 0?null:n;return[function(){return l(t())},m===null?void 0:function(){return l(m())}]},[t,n,r,i]);var s=Ybe(e,o[0],o[1]);return Zbe(function(){a.hasValue=!0,a.value=s},[s]),Jbe(s),s};(function(e){e.exports=uW})(Vbe);function exe(e){e()}let cW=exe;const txe=e=>cW=e,nxe=()=>cW,Zd=S.createContext(null);function dW(){return S.useContext(Zd)}const rxe=()=>{throw new Error("uSES not initialized!")};let fW=rxe;const ixe=e=>{fW=e},oxe=(e,t)=>e===t;function axe(e=Zd){const t=e===Zd?dW:()=>S.useContext(e);return function(r,i=oxe){const{store:o,subscription:a,getServerState:s}=t(),l=fW(a.addNestedSub,o.getState,s||o.getState,r,i);return S.useDebugValue(l),l}}const sxe=axe();var EO={},lxe={get exports(){return EO},set exports(e){EO=e}},Nn={};/** * @license React * react-is.production.min.js * @@ -431,7 +431,7 @@ Error generating stack: `+o.message+` * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var Q8=Symbol.for("react.element"),J8=Symbol.for("react.portal"),qw=Symbol.for("react.fragment"),Kw=Symbol.for("react.strict_mode"),Yw=Symbol.for("react.profiler"),Xw=Symbol.for("react.provider"),Zw=Symbol.for("react.context"),lxe=Symbol.for("react.server_context"),Qw=Symbol.for("react.forward_ref"),Jw=Symbol.for("react.suspense"),e4=Symbol.for("react.suspense_list"),t4=Symbol.for("react.memo"),n4=Symbol.for("react.lazy"),uxe=Symbol.for("react.offscreen"),hW;hW=Symbol.for("react.module.reference");function ps(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case Q8:switch(e=e.type,e){case qw:case Yw:case Kw:case Jw:case e4:return e;default:switch(e=e&&e.$$typeof,e){case lxe:case Zw:case Qw:case n4:case t4:case Xw:return e;default:return t}}case J8:return t}}}Nn.ContextConsumer=Zw;Nn.ContextProvider=Xw;Nn.Element=Q8;Nn.ForwardRef=Qw;Nn.Fragment=qw;Nn.Lazy=n4;Nn.Memo=t4;Nn.Portal=J8;Nn.Profiler=Yw;Nn.StrictMode=Kw;Nn.Suspense=Jw;Nn.SuspenseList=e4;Nn.isAsyncMode=function(){return!1};Nn.isConcurrentMode=function(){return!1};Nn.isContextConsumer=function(e){return ps(e)===Zw};Nn.isContextProvider=function(e){return ps(e)===Xw};Nn.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===Q8};Nn.isForwardRef=function(e){return ps(e)===Qw};Nn.isFragment=function(e){return ps(e)===qw};Nn.isLazy=function(e){return ps(e)===n4};Nn.isMemo=function(e){return ps(e)===t4};Nn.isPortal=function(e){return ps(e)===J8};Nn.isProfiler=function(e){return ps(e)===Yw};Nn.isStrictMode=function(e){return ps(e)===Kw};Nn.isSuspense=function(e){return ps(e)===Jw};Nn.isSuspenseList=function(e){return ps(e)===e4};Nn.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===qw||e===Yw||e===Kw||e===Jw||e===e4||e===uxe||typeof e=="object"&&e!==null&&(e.$$typeof===n4||e.$$typeof===t4||e.$$typeof===Xw||e.$$typeof===Zw||e.$$typeof===Qw||e.$$typeof===hW||e.getModuleId!==void 0)};Nn.typeOf=ps;(function(e){e.exports=Nn})(sxe);function cxe(){const e=txe();let t=null,n=null;return{clear(){t=null,n=null},notify(){e(()=>{let r=t;for(;r;)r.callback(),r=r.next})},get(){let r=[],i=t;for(;i;)r.push(i),i=i.next;return r},subscribe(r){let i=!0,o=n={callback:r,next:null,prev:n};return o.prev?o.prev.next=o:t=o,function(){!i||t===null||(i=!1,o.next?o.next.prev=o.prev:n=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}const PO={notify(){},get:()=>[]};function dxe(e,t){let n,r=PO;function i(h){return l(),r.subscribe(h)}function o(){r.notify()}function a(){d.onStateChange&&d.onStateChange()}function s(){return Boolean(n)}function l(){n||(n=t?t.addNestedSub(a):e.subscribe(a),r=cxe())}function u(){n&&(n(),n=void 0,r.clear(),r=PO)}const d={addNestedSub:i,notifyNestedSubs:o,handleChangeWrapper:a,isSubscribed:s,trySubscribe:l,tryUnsubscribe:u,getListeners:()=>r};return d}const fxe=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",hxe=fxe?S.useLayoutEffect:S.useEffect;function pxe({store:e,context:t,children:n,serverState:r}){const i=S.useMemo(()=>{const s=dxe(e);return{store:e,subscription:s,getServerState:r?()=>r:void 0}},[e,r]),o=S.useMemo(()=>e.getState(),[e]);hxe(()=>{const{subscription:s}=i;return s.onStateChange=s.notifyNestedSubs,s.trySubscribe(),o!==e.getState()&&s.notifyNestedSubs(),()=>{s.tryUnsubscribe(),s.onStateChange=void 0}},[i,o]);const a=t||Zd;return Ke.createElement(a.Provider,{value:i},n)}function pW(e=Zd){const t=e===Zd?dW:()=>S.useContext(e);return function(){const{store:r}=t();return r}}const gxe=pW();function mxe(e=Zd){const t=e===Zd?gxe:pW(e);return function(){return t().dispatch}}const vxe=mxe();rxe(ok.useSyncExternalStoreWithSelector);exe(Xs.unstable_batchedUpdates);function iS(e){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?iS=function(n){return typeof n}:iS=function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},iS(e)}function yxe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function TO(e,t){for(var n=0;n1?t-1:0),r=1;r3?t.i-4:t.i:Array.isArray(e)?1:eE(e)?2:tE(e)?3:0}function Pm(e,t){return v0(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function wxe(e,t){return v0(e)===2?e.get(t):e[t]}function mW(e,t,n){var r=v0(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function vW(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function eE(e){return Txe&&e instanceof Map}function tE(e){return Mxe&&e instanceof Set}function fh(e){return e.o||e.t}function nE(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=bW(e);delete t[vr];for(var n=Tm(t),r=0;r1&&(e.set=e.add=e.clear=e.delete=Cxe),Object.freeze(e),t&&Xh(e,function(n,r){return rE(r,!0)},!0)),e}function Cxe(){Vs(2)}function iE(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function Ql(e){var t=dk[e];return t||Vs(18,e),t}function _xe(e,t){dk[e]||(dk[e]=t)}function lk(){return Ry}function kC(e,t){t&&(Ql("Patches"),e.u=[],e.s=[],e.v=t)}function h3(e){uk(e),e.p.forEach(kxe),e.p=null}function uk(e){e===Ry&&(Ry=e.l)}function MO(e){return Ry={p:[],l:Ry,h:e,m:!0,_:0}}function kxe(e){var t=e[vr];t.i===0||t.i===1?t.j():t.O=!0}function EC(e,t){t._=t.p.length;var n=t.p[0],r=e!==void 0&&e!==n;return t.h.g||Ql("ES5").S(t,e,r),r?(n[vr].P&&(h3(t),Vs(4)),ac(e)&&(e=p3(t,e),t.l||g3(t,e)),t.u&&Ql("Patches").M(n[vr].t,e,t.u,t.s)):e=p3(t,n,[]),h3(t),t.u&&t.v(t.u,t.s),e!==yW?e:void 0}function p3(e,t,n){if(iE(t))return t;var r=t[vr];if(!r)return Xh(t,function(s,l){return LO(e,r,t,s,l,n)},!0),t;if(r.A!==e)return t;if(!r.P)return g3(e,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var i=r.i===4||r.i===5?r.o=nE(r.k):r.o,o=i,a=!1;r.i===3&&(o=new Set(i),i.clear(),a=!0),Xh(o,function(s,l){return LO(e,r,i,s,l,n,a)}),g3(e,i,!1),n&&e.u&&Ql("Patches").N(r,n,e.u,e.s)}return r.o}function LO(e,t,n,r,i,o,a){if(Qd(i)){var s=p3(e,i,o&&t&&t.i!==3&&!Pm(t.R,r)?o.concat(r):void 0);if(mW(n,r,s),!Qd(s))return;e.m=!1}else a&&n.add(i);if(ac(i)&&!iE(i)){if(!e.h.D&&e._<1)return;p3(e,i),t&&t.A.l||g3(e,i)}}function g3(e,t,n){n===void 0&&(n=!1),!e.l&&e.h.D&&e.m&&rE(t,n)}function PC(e,t){var n=e[vr];return(n?fh(n):e)[t]}function AO(e,t){if(t in e)for(var n=Object.getPrototypeOf(e);n;){var r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function xd(e){e.P||(e.P=!0,e.l&&xd(e.l))}function TC(e){e.o||(e.o=nE(e.t))}function ck(e,t,n){var r=eE(t)?Ql("MapSet").F(t,n):tE(t)?Ql("MapSet").T(t,n):e.g?function(i,o){var a=Array.isArray(i),s={i:a?1:0,A:o?o.A:lk(),P:!1,I:!1,R:{},l:o,t:i,k:null,o:null,j:null,C:!1},l=s,u=Iy;a&&(l=[s],u=h1);var d=Proxy.revocable(l,u),h=d.revoke,m=d.proxy;return s.k=m,s.j=h,m}(t,n):Ql("ES5").J(t,n);return(n?n.A:lk()).p.push(r),r}function Exe(e){return Qd(e)||Vs(22,e),function t(n){if(!ac(n))return n;var r,i=n[vr],o=v0(n);if(i){if(!i.P&&(i.i<4||!Ql("ES5").K(i)))return i.t;i.I=!0,r=OO(n,o),i.I=!1}else r=OO(n,o);return Xh(r,function(a,s){i&&wxe(i.t,a)===s||mW(r,a,t(s))}),o===3?new Set(r):r}(e)}function OO(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return nE(e)}function Pxe(){function e(o,a){var s=i[o];return s?s.enumerable=a:i[o]=s={configurable:!0,enumerable:a,get:function(){var l=this[vr];return Iy.get(l,o)},set:function(l){var u=this[vr];Iy.set(u,o,l)}},s}function t(o){for(var a=o.length-1;a>=0;a--){var s=o[a][vr];if(!s.P)switch(s.i){case 5:r(s)&&xd(s);break;case 4:n(s)&&xd(s)}}}function n(o){for(var a=o.t,s=o.k,l=Tm(s),u=l.length-1;u>=0;u--){var d=l[u];if(d!==vr){var h=a[d];if(h===void 0&&!Pm(a,d))return!0;var m=s[d],y=m&&m[vr];if(y?y.t!==h:!vW(m,h))return!0}}var b=!!a[vr];return l.length!==Tm(a).length+(b?0:1)}function r(o){var a=o.k;if(a.length!==o.t.length)return!0;var s=Object.getOwnPropertyDescriptor(a,a.length-1);if(s&&!s.get)return!0;for(var l=0;l1?_-1:0),T=1;T<_;T++)k[T-1]=arguments[T];return l.produce(w,function(L){var O;return(O=o).call.apply(O,[E,L].concat(k))})}}var u;if(typeof o!="function"&&Vs(6),a!==void 0&&typeof a!="function"&&Vs(7),ac(i)){var d=MO(r),h=ck(r,i,void 0),m=!0;try{u=o(h),m=!1}finally{m?h3(d):uk(d)}return typeof Promise<"u"&&u instanceof Promise?u.then(function(w){return kC(d,a),EC(w,d)},function(w){throw h3(d),w}):(kC(d,a),EC(u,d))}if(!i||typeof i!="object"){if((u=o(i))===void 0&&(u=i),u===yW&&(u=void 0),r.D&&rE(u,!0),a){var y=[],b=[];Ql("Patches").M(i,u,y,b),a(y,b)}return u}Vs(21,i)},this.produceWithPatches=function(i,o){if(typeof i=="function")return function(u){for(var d=arguments.length,h=Array(d>1?d-1:0),m=1;m=0;i--){var o=r[i];if(o.path.length===0&&o.op==="replace"){n=o.value;break}}i>-1&&(r=r.slice(i+1));var a=Ql("Patches").$;return Qd(n)?a(n,r):this.produce(n,function(s){return a(s,r)})},e}(),Oa=new Axe,xW=Oa.produce;Oa.produceWithPatches.bind(Oa);Oa.setAutoFreeze.bind(Oa);Oa.setUseProxies.bind(Oa);Oa.applyPatches.bind(Oa);Oa.createDraft.bind(Oa);Oa.finishDraft.bind(Oa);function jO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function NO(e){for(var t=1;t"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(ro(1));return n(aE)(e,t)}if(typeof e!="function")throw new Error(ro(2));var i=e,o=t,a=[],s=a,l=!1;function u(){s===a&&(s=a.slice())}function d(){if(l)throw new Error(ro(3));return o}function h(w){if(typeof w!="function")throw new Error(ro(4));if(l)throw new Error(ro(5));var E=!0;return u(),s.push(w),function(){if(E){if(l)throw new Error(ro(6));E=!1,u();var k=s.indexOf(w);s.splice(k,1),a=null}}}function m(w){if(!Oxe(w))throw new Error(ro(7));if(typeof w.type>"u")throw new Error(ro(8));if(l)throw new Error(ro(9));try{l=!0,o=i(o,w)}finally{l=!1}for(var E=a=s,_=0;_"u")throw new Error(ro(12));if(typeof n(void 0,{type:m3.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(ro(13))})}function SW(e){for(var t=Object.keys(e),n={},r=0;r"u")throw u&&u.type,new Error(ro(14));h[y]=E,d=d||E!==w}return d=d||o.length!==Object.keys(l).length,d?h:l}}function v3(){for(var e=arguments.length,t=new Array(e),n=0;n-1){var u=n[l];return l>0&&(n.splice(l,1),n.unshift(u)),u.value}return y3}function i(s,l){r(s)===y3&&(n.unshift({key:s,value:l}),n.length>e&&n.pop())}function o(){return n}function a(){n=[]}return{get:r,put:i,getEntries:o,clear:a}}var Nxe=function(t,n){return t===n};function $xe(e){return function(n,r){if(n===null||r===null||n.length!==r.length)return!1;for(var i=n.length,o=0;o1?t-1:0),r=1;r0&&o[o.length-1])&&(u[0]===6||u[0]===2)){n=0;continue}if(u[0]===3&&(!o||u[1]>o[0]&&u[1]{Object.keys(D).forEach(function(I){T(I)&&d[I]!==D[I]&&m.indexOf(I)===-1&&m.push(I)}),Object.keys(d).forEach(function(I){D[I]===void 0&&T(I)&&m.indexOf(I)===-1&&d[I]!==void 0&&m.push(I)}),y===null&&(y=setInterval(_,i)),d=D},o)}function _(){if(m.length===0){y&&clearInterval(y),y=null;return}var D=m.shift(),I=r.reduce(function(N,W){return W.in(N,D,d)},d[D]);if(I!==void 0)try{h[D]=l(I)}catch(N){console.error("redux-persist/createPersistoid: error serializing state",N)}else delete h[D];m.length===0&&k()}function k(){Object.keys(h).forEach(function(D){d[D]===void 0&&delete h[D]}),b=s.setItem(a,l(h)).catch(L)}function T(D){return!(n&&n.indexOf(D)===-1&&D!=="_persist"||t&&t.indexOf(D)!==-1)}function L(D){u&&u(D)}var O=function(){for(;m.length!==0;)_();return b||Promise.resolve()};return{update:E,flush:O}}function ySe(e){return JSON.stringify(e)}function bSe(e){var t=e.transforms||[],n="".concat(e.keyPrefix!==void 0?e.keyPrefix:lE).concat(e.key),r=e.storage;e.debug;var i;return e.deserialize===!1?i=function(a){return a}:typeof e.deserialize=="function"?i=e.deserialize:i=xSe,r.getItem(n).then(function(o){if(o)try{var a={},s=i(o);return Object.keys(s).forEach(function(l){a[l]=t.reduceRight(function(u,d){return d.out(u,l,s)},i(s[l]))}),a}catch(l){throw l}else return})}function xSe(e){return JSON.parse(e)}function SSe(e){var t=e.storage,n="".concat(e.keyPrefix!==void 0?e.keyPrefix:lE).concat(e.key);return t.removeItem(n,wSe)}function wSe(e){}function VO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ou(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function kSe(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,o;for(o=0;o=0)&&(n[i]=e[i]);return n}var ESe=5e3;function PSe(e,t){var n=e.version!==void 0?e.version:hSe;e.debug;var r=e.stateReconciler===void 0?mSe:e.stateReconciler,i=e.getStoredState||bSe,o=e.timeout!==void 0?e.timeout:ESe,a=null,s=!1,l=!0,u=function(h){return h._persist.rehydrated&&a&&!l&&a.update(h),h};return function(d,h){var m=d||{},y=m._persist,b=_Se(m,["_persist"]),w=b;if(h.type===PW){var E=!1,_=function(N,W){E||(h.rehydrate(e.key,N,W),E=!0)};if(o&&setTimeout(function(){!E&&_(void 0,new Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))},o),l=!1,a||(a=vSe(e)),y)return Ou({},t(w,h),{_persist:y});if(typeof h.rehydrate!="function"||typeof h.register!="function")throw new Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return h.register(e.key),i(e).then(function(I){var N=e.migrate||function(W,B){return Promise.resolve(W)};N(I,n).then(function(W){_(W)},function(W){_(void 0,W)})},function(I){_(void 0,I)}),Ou({},t(w,h),{_persist:{version:n,rehydrated:!1}})}else{if(h.type===TW)return s=!0,h.result(SSe(e)),Ou({},t(w,h),{_persist:y});if(h.type===kW)return h.result(a&&a.flush()),Ou({},t(w,h),{_persist:y});if(h.type===EW)l=!0;else if(h.type===uE){if(s)return Ou({},w,{_persist:Ou({},y,{rehydrated:!0})});if(h.key===e.key){var k=t(w,h),T=h.payload,L=r!==!1&&T!==void 0?r(T,d,k,e):k,O=Ou({},L,{_persist:Ou({},y,{rehydrated:!0})});return u(O)}}}if(!y)return t(d,h);var D=t(w,h);return D===w?d:u(Ou({},D,{_persist:y}))}}function GO(e){return LSe(e)||MSe(e)||TSe()}function TSe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function MSe(e){if(Symbol.iterator in Object(e)||Object.prototype.toString.call(e)==="[object Arguments]")return Array.from(e)}function LSe(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t0&&arguments[0]!==void 0?arguments[0]:LW,n=arguments.length>1?arguments[1]:void 0;switch(n.type){case MW:return hk({},t,{registry:[].concat(GO(t.registry),[n.key])});case uE:var r=t.registry.indexOf(n.key),i=GO(t.registry);return i.splice(r,1),hk({},t,{registry:i,bootstrapped:i.length===0});default:return t}};function RSe(e,t,n){var r=n||!1,i=aE(OSe,LW,t&&t.enhancer?t.enhancer:void 0),o=function(u){i.dispatch({type:MW,key:u})},a=function(u,d,h){var m={type:uE,payload:d,err:h,key:u};e.dispatch(m),i.dispatch(m),r&&s.getState().bootstrapped&&(r(),r=!1)},s=hk({},i,{purge:function(){var u=[];return e.dispatch({type:TW,result:function(h){u.push(h)}}),Promise.all(u)},flush:function(){var u=[];return e.dispatch({type:kW,result:function(h){u.push(h)}}),Promise.all(u)},pause:function(){e.dispatch({type:EW})},persist:function(){e.dispatch({type:PW,register:o,rehydrate:a})}});return t&&t.manualPersist||s.persist(),s}var cE={},dE={};dE.__esModule=!0;dE.default=jSe;function lS(e){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?lS=function(n){return typeof n}:lS=function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},lS(e)}function OC(){}var ISe={getItem:OC,setItem:OC,removeItem:OC};function DSe(e){if((typeof self>"u"?"undefined":lS(self))!=="object"||!(e in self))return!1;try{var t=self[e],n="redux-persist ".concat(e," test");t.setItem(n,"test"),t.getItem(n),t.removeItem(n)}catch{return!1}return!0}function jSe(e){var t="".concat(e,"Storage");return DSe(t)?self[t]:ISe}cE.__esModule=!0;cE.default=FSe;var NSe=$Se(dE);function $Se(e){return e&&e.__esModule?e:{default:e}}function FSe(e){var t=(0,NSe.default)(e);return{getItem:function(r){return new Promise(function(i,o){i(t.getItem(r))})},setItem:function(r,i){return new Promise(function(o,a){o(t.setItem(r,i))})},removeItem:function(r){return new Promise(function(i,o){i(t.removeItem(r))})}}}var AW=void 0,BSe=zSe(cE);function zSe(e){return e&&e.__esModule?e:{default:e}}var HSe=(0,BSe.default)("local");AW=HSe;var OW={},RW={},Zh={};Object.defineProperty(Zh,"__esModule",{value:!0});Zh.PLACEHOLDER_UNDEFINED=Zh.PACKAGE_NAME=void 0;Zh.PACKAGE_NAME="redux-deep-persist";Zh.PLACEHOLDER_UNDEFINED="@@placeholder/undefined";var fE={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigType=void 0,function(t){t[t.WHITELIST=0]="WHITELIST",t[t.BLACKLIST=1]="BLACKLIST"}(e.ConfigType||(e.ConfigType={}))})(fE);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.getRootKeysGroup=e.throwError=e.configValidator=e.transformsValidator=e.singleTransformValidator=e.findDuplicatesAndSubsets=e.unique=e.preserveUndefined=e.mergeDeep=e.dissocPath=e.assocPath=e.path=e.difference=e.cloneDeep=e._cloneDeep=e.getCircularPath=e.isEmpty=e.isDate=e.isString=e.isIntegerString=e.isPlainObject=e.isArray=e.isLength=e.isObjectLike=void 0;const t=Zh,n=fE,r=function(z){return typeof z=="object"&&z!==null};e.isObjectLike=r;const i=function(z){return typeof z=="number"&&z>-1&&z%1==0&&z<=Number.MAX_SAFE_INTEGER};e.isLength=i,e.isArray=Array.isArray||function(z){return(0,e.isLength)(z&&z.length)&&Object.prototype.toString.call(z)==="[object Array]"};const o=function(z){return!!z&&typeof z=="object"&&!(0,e.isArray)(z)};e.isPlainObject=o;const a=function(z){return String(~~z)===z&&Number(z)>=0};e.isIntegerString=a;const s=function(z){return Object.prototype.toString.call(z)==="[object String]"};e.isString=s;const l=function(z){return Object.prototype.toString.call(z)==="[object Date]"};e.isDate=l;const u=function(z){return Object.keys(z).length===0};e.isEmpty=u;const d=Object.prototype.hasOwnProperty,h=function(z,$,V){V||(V=new Set([z])),$||($="");for(const X in z){const Q=$?`${$}.${X}`:X,G=z[X];if((0,e.isObjectLike)(G))return V.has(G)?`${$}.${X}:`:(V.add(G),(0,e.getCircularPath)(G,Q,V))}return null};e.getCircularPath=h;const m=function(z){if(!(0,e.isObjectLike)(z))return z;if((0,e.isDate)(z))return new Date(+z);const $=(0,e.isArray)(z)?[]:{};for(const V in z){const X=z[V];$[V]=(0,e._cloneDeep)(X)}return $};e._cloneDeep=m;const y=function(z){const $=(0,e.getCircularPath)(z);if($)throw new Error(`${t.PACKAGE_NAME}: circular dependency detected under the path '${$}' of object you're trying to persist: ${z}`);return(0,e._cloneDeep)(z)};e.cloneDeep=y;const b=function(z,$){if(z===$)return{};if(!(0,e.isObjectLike)(z)||!(0,e.isObjectLike)($))return $;const V=(0,e.cloneDeep)(z),X=(0,e.cloneDeep)($),Q=Object.keys(V).reduce((Y,ee)=>(d.call(X,ee)||(Y[ee]=void 0),Y),{});if((0,e.isDate)(V)||(0,e.isDate)(X))return V.valueOf()===X.valueOf()?{}:X;const G=Object.keys(X).reduce((Y,ee)=>{if(!d.call(V,ee))return Y[ee]=X[ee],Y;const fe=(0,e.difference)(V[ee],X[ee]);return(0,e.isObjectLike)(fe)&&(0,e.isEmpty)(fe)&&!(0,e.isDate)(fe)?(0,e.isArray)(V)&&!(0,e.isArray)(X)||!(0,e.isArray)(V)&&(0,e.isArray)(X)?X:Y:(Y[ee]=fe,Y)},Q);return delete G._persist,G};e.difference=b;const w=function(z,$){return $.reduce((V,X)=>{if(V){const Q=parseInt(X,10),G=(0,e.isIntegerString)(X)&&Q<0?V.length+Q:X;return(0,e.isString)(V)?V.charAt(G):V[G]}},z)};e.path=w;const E=function(z,$){return[...z].reverse().reduce((Q,G,Y)=>{const ee=(0,e.isIntegerString)(G)?[]:{};return ee[G]=Y===0?$:Q,ee},{})};e.assocPath=E;const _=function(z,$){const V=(0,e.cloneDeep)(z);return $.reduce((X,Q,G)=>(G===$.length-1&&X&&(0,e.isObjectLike)(X)&&delete X[Q],X&&X[Q]),V),V};e.dissocPath=_;const k=function(z,$,...V){if(!V||!V.length)return $;const X=V.shift(),{preservePlaceholder:Q,preserveUndefined:G}=z;if((0,e.isObjectLike)($)&&(0,e.isObjectLike)(X))for(const Y in X)if((0,e.isObjectLike)(X[Y])&&(0,e.isObjectLike)($[Y]))$[Y]||($[Y]={}),k(z,$[Y],X[Y]);else if((0,e.isArray)($)){let ee=X[Y];const fe=Q?t.PLACEHOLDER_UNDEFINED:void 0;G||(ee=typeof ee<"u"?ee:$[parseInt(Y,10)]),ee=ee!==t.PLACEHOLDER_UNDEFINED?ee:fe,$[parseInt(Y,10)]=ee}else{const ee=X[Y]!==t.PLACEHOLDER_UNDEFINED?X[Y]:void 0;$[Y]=ee}return k(z,$,...V)},T=function(z,$,V){return k({preservePlaceholder:V==null?void 0:V.preservePlaceholder,preserveUndefined:V==null?void 0:V.preserveUndefined},(0,e.cloneDeep)(z),(0,e.cloneDeep)($))};e.mergeDeep=T;const L=function(z,$=[],V,X,Q){if(!(0,e.isObjectLike)(z))return z;for(const G in z){const Y=z[G],ee=(0,e.isArray)(z),fe=X?X+"."+G:G;Y===null&&(V===n.ConfigType.WHITELIST&&$.indexOf(fe)===-1||V===n.ConfigType.BLACKLIST&&$.indexOf(fe)!==-1)&&ee&&(z[parseInt(G,10)]=void 0),Y===void 0&&Q&&V===n.ConfigType.BLACKLIST&&$.indexOf(fe)===-1&&ee&&(z[parseInt(G,10)]=t.PLACEHOLDER_UNDEFINED),L(Y,$,V,fe,Q)}},O=function(z,$,V,X){const Q=(0,e.cloneDeep)(z);return L(Q,$,V,"",X),Q};e.preserveUndefined=O;const D=function(z,$,V){return V.indexOf(z)===$};e.unique=D;const I=function(z){return z.reduce(($,V)=>{const X=z.filter(Ce=>Ce===V),Q=z.filter(Ce=>(V+".").indexOf(Ce+".")===0),{duplicates:G,subsets:Y}=$,ee=X.length>1&&G.indexOf(V)===-1,fe=Q.length>1;return{duplicates:[...G,...ee?X:[]],subsets:[...Y,...fe?Q:[]].filter(e.unique).sort()}},{duplicates:[],subsets:[]})};e.findDuplicatesAndSubsets=I;const N=function(z,$,V){const X=V===n.ConfigType.WHITELIST?"whitelist":"blacklist",Q=`${t.PACKAGE_NAME}: incorrect ${X} configuration.`,G=`Check your create${V===n.ConfigType.WHITELIST?"White":"Black"}list arguments. + */var Q8=Symbol.for("react.element"),J8=Symbol.for("react.portal"),qw=Symbol.for("react.fragment"),Kw=Symbol.for("react.strict_mode"),Yw=Symbol.for("react.profiler"),Xw=Symbol.for("react.provider"),Zw=Symbol.for("react.context"),uxe=Symbol.for("react.server_context"),Qw=Symbol.for("react.forward_ref"),Jw=Symbol.for("react.suspense"),e4=Symbol.for("react.suspense_list"),t4=Symbol.for("react.memo"),n4=Symbol.for("react.lazy"),cxe=Symbol.for("react.offscreen"),hW;hW=Symbol.for("react.module.reference");function ps(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case Q8:switch(e=e.type,e){case qw:case Yw:case Kw:case Jw:case e4:return e;default:switch(e=e&&e.$$typeof,e){case uxe:case Zw:case Qw:case n4:case t4:case Xw:return e;default:return t}}case J8:return t}}}Nn.ContextConsumer=Zw;Nn.ContextProvider=Xw;Nn.Element=Q8;Nn.ForwardRef=Qw;Nn.Fragment=qw;Nn.Lazy=n4;Nn.Memo=t4;Nn.Portal=J8;Nn.Profiler=Yw;Nn.StrictMode=Kw;Nn.Suspense=Jw;Nn.SuspenseList=e4;Nn.isAsyncMode=function(){return!1};Nn.isConcurrentMode=function(){return!1};Nn.isContextConsumer=function(e){return ps(e)===Zw};Nn.isContextProvider=function(e){return ps(e)===Xw};Nn.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===Q8};Nn.isForwardRef=function(e){return ps(e)===Qw};Nn.isFragment=function(e){return ps(e)===qw};Nn.isLazy=function(e){return ps(e)===n4};Nn.isMemo=function(e){return ps(e)===t4};Nn.isPortal=function(e){return ps(e)===J8};Nn.isProfiler=function(e){return ps(e)===Yw};Nn.isStrictMode=function(e){return ps(e)===Kw};Nn.isSuspense=function(e){return ps(e)===Jw};Nn.isSuspenseList=function(e){return ps(e)===e4};Nn.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===qw||e===Yw||e===Kw||e===Jw||e===e4||e===cxe||typeof e=="object"&&e!==null&&(e.$$typeof===n4||e.$$typeof===t4||e.$$typeof===Xw||e.$$typeof===Zw||e.$$typeof===Qw||e.$$typeof===hW||e.getModuleId!==void 0)};Nn.typeOf=ps;(function(e){e.exports=Nn})(lxe);function dxe(){const e=nxe();let t=null,n=null;return{clear(){t=null,n=null},notify(){e(()=>{let r=t;for(;r;)r.callback(),r=r.next})},get(){let r=[],i=t;for(;i;)r.push(i),i=i.next;return r},subscribe(r){let i=!0,o=n={callback:r,next:null,prev:n};return o.prev?o.prev.next=o:t=o,function(){!i||t===null||(i=!1,o.next?o.next.prev=o.prev:n=o.prev,o.prev?o.prev.next=o.next:t=o.next)}}}}const PO={notify(){},get:()=>[]};function fxe(e,t){let n,r=PO;function i(p){return l(),r.subscribe(p)}function o(){r.notify()}function a(){d.onStateChange&&d.onStateChange()}function s(){return Boolean(n)}function l(){n||(n=t?t.addNestedSub(a):e.subscribe(a),r=dxe())}function u(){n&&(n(),n=void 0,r.clear(),r=PO)}const d={addNestedSub:i,notifyNestedSubs:o,handleChangeWrapper:a,isSubscribed:s,trySubscribe:l,tryUnsubscribe:u,getListeners:()=>r};return d}const hxe=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",pxe=hxe?S.useLayoutEffect:S.useEffect;function gxe({store:e,context:t,children:n,serverState:r}){const i=S.useMemo(()=>{const s=fxe(e);return{store:e,subscription:s,getServerState:r?()=>r:void 0}},[e,r]),o=S.useMemo(()=>e.getState(),[e]);pxe(()=>{const{subscription:s}=i;return s.onStateChange=s.notifyNestedSubs,s.trySubscribe(),o!==e.getState()&&s.notifyNestedSubs(),()=>{s.tryUnsubscribe(),s.onStateChange=void 0}},[i,o]);const a=t||Zd;return Ke.createElement(a.Provider,{value:i},n)}function pW(e=Zd){const t=e===Zd?dW:()=>S.useContext(e);return function(){const{store:r}=t();return r}}const mxe=pW();function vxe(e=Zd){const t=e===Zd?mxe:pW(e);return function(){return t().dispatch}}const yxe=vxe();ixe(ok.useSyncExternalStoreWithSelector);txe(Xs.unstable_batchedUpdates);function iS(e){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?iS=function(n){return typeof n}:iS=function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},iS(e)}function bxe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function TO(e,t){for(var n=0;n1?t-1:0),r=1;r3?t.i-4:t.i:Array.isArray(e)?1:eE(e)?2:tE(e)?3:0}function Pm(e,t){return v0(e)===2?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function Cxe(e,t){return v0(e)===2?e.get(t):e[t]}function mW(e,t,n){var r=v0(e);r===2?e.set(t,n):r===3?e.add(n):e[t]=n}function vW(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t}function eE(e){return Mxe&&e instanceof Map}function tE(e){return Lxe&&e instanceof Set}function fh(e){return e.o||e.t}function nE(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=bW(e);delete t[vr];for(var n=Tm(t),r=0;r1&&(e.set=e.add=e.clear=e.delete=_xe),Object.freeze(e),t&&Xh(e,function(n,r){return rE(r,!0)},!0)),e}function _xe(){Vs(2)}function iE(e){return e==null||typeof e!="object"||Object.isFrozen(e)}function Ql(e){var t=dk[e];return t||Vs(18,e),t}function kxe(e,t){dk[e]||(dk[e]=t)}function lk(){return Ry}function kC(e,t){t&&(Ql("Patches"),e.u=[],e.s=[],e.v=t)}function h3(e){uk(e),e.p.forEach(Exe),e.p=null}function uk(e){e===Ry&&(Ry=e.l)}function MO(e){return Ry={p:[],l:Ry,h:e,m:!0,_:0}}function Exe(e){var t=e[vr];t.i===0||t.i===1?t.j():t.O=!0}function EC(e,t){t._=t.p.length;var n=t.p[0],r=e!==void 0&&e!==n;return t.h.g||Ql("ES5").S(t,e,r),r?(n[vr].P&&(h3(t),Vs(4)),ac(e)&&(e=p3(t,e),t.l||g3(t,e)),t.u&&Ql("Patches").M(n[vr].t,e,t.u,t.s)):e=p3(t,n,[]),h3(t),t.u&&t.v(t.u,t.s),e!==yW?e:void 0}function p3(e,t,n){if(iE(t))return t;var r=t[vr];if(!r)return Xh(t,function(s,l){return LO(e,r,t,s,l,n)},!0),t;if(r.A!==e)return t;if(!r.P)return g3(e,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var i=r.i===4||r.i===5?r.o=nE(r.k):r.o,o=i,a=!1;r.i===3&&(o=new Set(i),i.clear(),a=!0),Xh(o,function(s,l){return LO(e,r,i,s,l,n,a)}),g3(e,i,!1),n&&e.u&&Ql("Patches").N(r,n,e.u,e.s)}return r.o}function LO(e,t,n,r,i,o,a){if(Qd(i)){var s=p3(e,i,o&&t&&t.i!==3&&!Pm(t.R,r)?o.concat(r):void 0);if(mW(n,r,s),!Qd(s))return;e.m=!1}else a&&n.add(i);if(ac(i)&&!iE(i)){if(!e.h.D&&e._<1)return;p3(e,i),t&&t.A.l||g3(e,i)}}function g3(e,t,n){n===void 0&&(n=!1),!e.l&&e.h.D&&e.m&&rE(t,n)}function PC(e,t){var n=e[vr];return(n?fh(n):e)[t]}function AO(e,t){if(t in e)for(var n=Object.getPrototypeOf(e);n;){var r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function xd(e){e.P||(e.P=!0,e.l&&xd(e.l))}function TC(e){e.o||(e.o=nE(e.t))}function ck(e,t,n){var r=eE(t)?Ql("MapSet").F(t,n):tE(t)?Ql("MapSet").T(t,n):e.g?function(i,o){var a=Array.isArray(i),s={i:a?1:0,A:o?o.A:lk(),P:!1,I:!1,R:{},l:o,t:i,k:null,o:null,j:null,C:!1},l=s,u=Iy;a&&(l=[s],u=h1);var d=Proxy.revocable(l,u),p=d.revoke,m=d.proxy;return s.k=m,s.j=p,m}(t,n):Ql("ES5").J(t,n);return(n?n.A:lk()).p.push(r),r}function Pxe(e){return Qd(e)||Vs(22,e),function t(n){if(!ac(n))return n;var r,i=n[vr],o=v0(n);if(i){if(!i.P&&(i.i<4||!Ql("ES5").K(i)))return i.t;i.I=!0,r=OO(n,o),i.I=!1}else r=OO(n,o);return Xh(r,function(a,s){i&&Cxe(i.t,a)===s||mW(r,a,t(s))}),o===3?new Set(r):r}(e)}function OO(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return nE(e)}function Txe(){function e(o,a){var s=i[o];return s?s.enumerable=a:i[o]=s={configurable:!0,enumerable:a,get:function(){var l=this[vr];return Iy.get(l,o)},set:function(l){var u=this[vr];Iy.set(u,o,l)}},s}function t(o){for(var a=o.length-1;a>=0;a--){var s=o[a][vr];if(!s.P)switch(s.i){case 5:r(s)&&xd(s);break;case 4:n(s)&&xd(s)}}}function n(o){for(var a=o.t,s=o.k,l=Tm(s),u=l.length-1;u>=0;u--){var d=l[u];if(d!==vr){var p=a[d];if(p===void 0&&!Pm(a,d))return!0;var m=s[d],y=m&&m[vr];if(y?y.t!==p:!vW(m,p))return!0}}var b=!!a[vr];return l.length!==Tm(a).length+(b?0:1)}function r(o){var a=o.k;if(a.length!==o.t.length)return!0;var s=Object.getOwnPropertyDescriptor(a,a.length-1);if(s&&!s.get)return!0;for(var l=0;l1?_-1:0),T=1;T<_;T++)k[T-1]=arguments[T];return l.produce(w,function(L){var O;return(O=o).call.apply(O,[E,L].concat(k))})}}var u;if(typeof o!="function"&&Vs(6),a!==void 0&&typeof a!="function"&&Vs(7),ac(i)){var d=MO(r),p=ck(r,i,void 0),m=!0;try{u=o(p),m=!1}finally{m?h3(d):uk(d)}return typeof Promise<"u"&&u instanceof Promise?u.then(function(w){return kC(d,a),EC(w,d)},function(w){throw h3(d),w}):(kC(d,a),EC(u,d))}if(!i||typeof i!="object"){if((u=o(i))===void 0&&(u=i),u===yW&&(u=void 0),r.D&&rE(u,!0),a){var y=[],b=[];Ql("Patches").M(i,u,y,b),a(y,b)}return u}Vs(21,i)},this.produceWithPatches=function(i,o){if(typeof i=="function")return function(u){for(var d=arguments.length,p=Array(d>1?d-1:0),m=1;m=0;i--){var o=r[i];if(o.path.length===0&&o.op==="replace"){n=o.value;break}}i>-1&&(r=r.slice(i+1));var a=Ql("Patches").$;return Qd(n)?a(n,r):this.produce(n,function(s){return a(s,r)})},e}(),Oa=new Oxe,xW=Oa.produce;Oa.produceWithPatches.bind(Oa);Oa.setAutoFreeze.bind(Oa);Oa.setUseProxies.bind(Oa);Oa.applyPatches.bind(Oa);Oa.createDraft.bind(Oa);Oa.finishDraft.bind(Oa);function jO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function NO(e){for(var t=1;t"u"&&(n=t,t=void 0),typeof n<"u"){if(typeof n!="function")throw new Error(ro(1));return n(aE)(e,t)}if(typeof e!="function")throw new Error(ro(2));var i=e,o=t,a=[],s=a,l=!1;function u(){s===a&&(s=a.slice())}function d(){if(l)throw new Error(ro(3));return o}function p(w){if(typeof w!="function")throw new Error(ro(4));if(l)throw new Error(ro(5));var E=!0;return u(),s.push(w),function(){if(E){if(l)throw new Error(ro(6));E=!1,u();var k=s.indexOf(w);s.splice(k,1),a=null}}}function m(w){if(!Rxe(w))throw new Error(ro(7));if(typeof w.type>"u")throw new Error(ro(8));if(l)throw new Error(ro(9));try{l=!0,o=i(o,w)}finally{l=!1}for(var E=a=s,_=0;_"u")throw new Error(ro(12));if(typeof n(void 0,{type:m3.PROBE_UNKNOWN_ACTION()})>"u")throw new Error(ro(13))})}function SW(e){for(var t=Object.keys(e),n={},r=0;r"u")throw u&&u.type,new Error(ro(14));p[y]=E,d=d||E!==w}return d=d||o.length!==Object.keys(l).length,d?p:l}}function v3(){for(var e=arguments.length,t=new Array(e),n=0;n-1){var u=n[l];return l>0&&(n.splice(l,1),n.unshift(u)),u.value}return y3}function i(s,l){r(s)===y3&&(n.unshift({key:s,value:l}),n.length>e&&n.pop())}function o(){return n}function a(){n=[]}return{get:r,put:i,getEntries:o,clear:a}}var $xe=function(t,n){return t===n};function Fxe(e){return function(n,r){if(n===null||r===null||n.length!==r.length)return!1;for(var i=n.length,o=0;o1?t-1:0),r=1;r0&&o[o.length-1])&&(u[0]===6||u[0]===2)){n=0;continue}if(u[0]===3&&(!o||u[1]>o[0]&&u[1]{Object.keys(D).forEach(function(I){T(I)&&d[I]!==D[I]&&m.indexOf(I)===-1&&m.push(I)}),Object.keys(d).forEach(function(I){D[I]===void 0&&T(I)&&m.indexOf(I)===-1&&d[I]!==void 0&&m.push(I)}),y===null&&(y=setInterval(_,i)),d=D},o)}function _(){if(m.length===0){y&&clearInterval(y),y=null;return}var D=m.shift(),I=r.reduce(function(N,W){return W.in(N,D,d)},d[D]);if(I!==void 0)try{p[D]=l(I)}catch(N){console.error("redux-persist/createPersistoid: error serializing state",N)}else delete p[D];m.length===0&&k()}function k(){Object.keys(p).forEach(function(D){d[D]===void 0&&delete p[D]}),b=s.setItem(a,l(p)).catch(L)}function T(D){return!(n&&n.indexOf(D)===-1&&D!=="_persist"||t&&t.indexOf(D)!==-1)}function L(D){u&&u(D)}var O=function(){for(;m.length!==0;)_();return b||Promise.resolve()};return{update:E,flush:O}}function bSe(e){return JSON.stringify(e)}function xSe(e){var t=e.transforms||[],n="".concat(e.keyPrefix!==void 0?e.keyPrefix:lE).concat(e.key),r=e.storage;e.debug;var i;return e.deserialize===!1?i=function(a){return a}:typeof e.deserialize=="function"?i=e.deserialize:i=SSe,r.getItem(n).then(function(o){if(o)try{var a={},s=i(o);return Object.keys(s).forEach(function(l){a[l]=t.reduceRight(function(u,d){return d.out(u,l,s)},i(s[l]))}),a}catch(l){throw l}else return})}function SSe(e){return JSON.parse(e)}function wSe(e){var t=e.storage,n="".concat(e.keyPrefix!==void 0?e.keyPrefix:lE).concat(e.key);return t.removeItem(n,CSe)}function CSe(e){}function VO(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ou(e){for(var t=1;t=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function ESe(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,o;for(o=0;o=0)&&(n[i]=e[i]);return n}var PSe=5e3;function TSe(e,t){var n=e.version!==void 0?e.version:pSe;e.debug;var r=e.stateReconciler===void 0?vSe:e.stateReconciler,i=e.getStoredState||xSe,o=e.timeout!==void 0?e.timeout:PSe,a=null,s=!1,l=!0,u=function(p){return p._persist.rehydrated&&a&&!l&&a.update(p),p};return function(d,p){var m=d||{},y=m._persist,b=kSe(m,["_persist"]),w=b;if(p.type===PW){var E=!1,_=function(N,W){E||(p.rehydrate(e.key,N,W),E=!0)};if(o&&setTimeout(function(){!E&&_(void 0,new Error('redux-persist: persist timed out for persist key "'.concat(e.key,'"')))},o),l=!1,a||(a=ySe(e)),y)return Ou({},t(w,p),{_persist:y});if(typeof p.rehydrate!="function"||typeof p.register!="function")throw new Error("redux-persist: either rehydrate or register is not a function on the PERSIST action. This can happen if the action is being replayed. This is an unexplored use case, please open an issue and we will figure out a resolution.");return p.register(e.key),i(e).then(function(I){var N=e.migrate||function(W,B){return Promise.resolve(W)};N(I,n).then(function(W){_(W)},function(W){_(void 0,W)})},function(I){_(void 0,I)}),Ou({},t(w,p),{_persist:{version:n,rehydrated:!1}})}else{if(p.type===TW)return s=!0,p.result(wSe(e)),Ou({},t(w,p),{_persist:y});if(p.type===kW)return p.result(a&&a.flush()),Ou({},t(w,p),{_persist:y});if(p.type===EW)l=!0;else if(p.type===uE){if(s)return Ou({},w,{_persist:Ou({},y,{rehydrated:!0})});if(p.key===e.key){var k=t(w,p),T=p.payload,L=r!==!1&&T!==void 0?r(T,d,k,e):k,O=Ou({},L,{_persist:Ou({},y,{rehydrated:!0})});return u(O)}}}if(!y)return t(d,p);var D=t(w,p);return D===w?d:u(Ou({},D,{_persist:y}))}}function GO(e){return ASe(e)||LSe(e)||MSe()}function MSe(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function LSe(e){if(Symbol.iterator in Object(e)||Object.prototype.toString.call(e)==="[object Arguments]")return Array.from(e)}function ASe(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t0&&arguments[0]!==void 0?arguments[0]:LW,n=arguments.length>1?arguments[1]:void 0;switch(n.type){case MW:return hk({},t,{registry:[].concat(GO(t.registry),[n.key])});case uE:var r=t.registry.indexOf(n.key),i=GO(t.registry);return i.splice(r,1),hk({},t,{registry:i,bootstrapped:i.length===0});default:return t}};function ISe(e,t,n){var r=n||!1,i=aE(RSe,LW,t&&t.enhancer?t.enhancer:void 0),o=function(u){i.dispatch({type:MW,key:u})},a=function(u,d,p){var m={type:uE,payload:d,err:p,key:u};e.dispatch(m),i.dispatch(m),r&&s.getState().bootstrapped&&(r(),r=!1)},s=hk({},i,{purge:function(){var u=[];return e.dispatch({type:TW,result:function(p){u.push(p)}}),Promise.all(u)},flush:function(){var u=[];return e.dispatch({type:kW,result:function(p){u.push(p)}}),Promise.all(u)},pause:function(){e.dispatch({type:EW})},persist:function(){e.dispatch({type:PW,register:o,rehydrate:a})}});return t&&t.manualPersist||s.persist(),s}var cE={},dE={};dE.__esModule=!0;dE.default=NSe;function lS(e){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?lS=function(n){return typeof n}:lS=function(n){return n&&typeof Symbol=="function"&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},lS(e)}function OC(){}var DSe={getItem:OC,setItem:OC,removeItem:OC};function jSe(e){if((typeof self>"u"?"undefined":lS(self))!=="object"||!(e in self))return!1;try{var t=self[e],n="redux-persist ".concat(e," test");t.setItem(n,"test"),t.getItem(n),t.removeItem(n)}catch{return!1}return!0}function NSe(e){var t="".concat(e,"Storage");return jSe(t)?self[t]:DSe}cE.__esModule=!0;cE.default=BSe;var $Se=FSe(dE);function FSe(e){return e&&e.__esModule?e:{default:e}}function BSe(e){var t=(0,$Se.default)(e);return{getItem:function(r){return new Promise(function(i,o){i(t.getItem(r))})},setItem:function(r,i){return new Promise(function(o,a){o(t.setItem(r,i))})},removeItem:function(r){return new Promise(function(i,o){i(t.removeItem(r))})}}}var AW=void 0,zSe=HSe(cE);function HSe(e){return e&&e.__esModule?e:{default:e}}var WSe=(0,zSe.default)("local");AW=WSe;var OW={},RW={},Zh={};Object.defineProperty(Zh,"__esModule",{value:!0});Zh.PLACEHOLDER_UNDEFINED=Zh.PACKAGE_NAME=void 0;Zh.PACKAGE_NAME="redux-deep-persist";Zh.PLACEHOLDER_UNDEFINED="@@placeholder/undefined";var fE={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConfigType=void 0,function(t){t[t.WHITELIST=0]="WHITELIST",t[t.BLACKLIST=1]="BLACKLIST"}(e.ConfigType||(e.ConfigType={}))})(fE);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.getRootKeysGroup=e.throwError=e.configValidator=e.transformsValidator=e.singleTransformValidator=e.findDuplicatesAndSubsets=e.unique=e.preserveUndefined=e.mergeDeep=e.dissocPath=e.assocPath=e.path=e.difference=e.cloneDeep=e._cloneDeep=e.getCircularPath=e.isEmpty=e.isDate=e.isString=e.isIntegerString=e.isPlainObject=e.isArray=e.isLength=e.isObjectLike=void 0;const t=Zh,n=fE,r=function(z){return typeof z=="object"&&z!==null};e.isObjectLike=r;const i=function(z){return typeof z=="number"&&z>-1&&z%1==0&&z<=Number.MAX_SAFE_INTEGER};e.isLength=i,e.isArray=Array.isArray||function(z){return(0,e.isLength)(z&&z.length)&&Object.prototype.toString.call(z)==="[object Array]"};const o=function(z){return!!z&&typeof z=="object"&&!(0,e.isArray)(z)};e.isPlainObject=o;const a=function(z){return String(~~z)===z&&Number(z)>=0};e.isIntegerString=a;const s=function(z){return Object.prototype.toString.call(z)==="[object String]"};e.isString=s;const l=function(z){return Object.prototype.toString.call(z)==="[object Date]"};e.isDate=l;const u=function(z){return Object.keys(z).length===0};e.isEmpty=u;const d=Object.prototype.hasOwnProperty,p=function(z,$,V){V||(V=new Set([z])),$||($="");for(const X in z){const Q=$?`${$}.${X}`:X,G=z[X];if((0,e.isObjectLike)(G))return V.has(G)?`${$}.${X}:`:(V.add(G),(0,e.getCircularPath)(G,Q,V))}return null};e.getCircularPath=p;const m=function(z){if(!(0,e.isObjectLike)(z))return z;if((0,e.isDate)(z))return new Date(+z);const $=(0,e.isArray)(z)?[]:{};for(const V in z){const X=z[V];$[V]=(0,e._cloneDeep)(X)}return $};e._cloneDeep=m;const y=function(z){const $=(0,e.getCircularPath)(z);if($)throw new Error(`${t.PACKAGE_NAME}: circular dependency detected under the path '${$}' of object you're trying to persist: ${z}`);return(0,e._cloneDeep)(z)};e.cloneDeep=y;const b=function(z,$){if(z===$)return{};if(!(0,e.isObjectLike)(z)||!(0,e.isObjectLike)($))return $;const V=(0,e.cloneDeep)(z),X=(0,e.cloneDeep)($),Q=Object.keys(V).reduce((Y,ee)=>(d.call(X,ee)||(Y[ee]=void 0),Y),{});if((0,e.isDate)(V)||(0,e.isDate)(X))return V.valueOf()===X.valueOf()?{}:X;const G=Object.keys(X).reduce((Y,ee)=>{if(!d.call(V,ee))return Y[ee]=X[ee],Y;const fe=(0,e.difference)(V[ee],X[ee]);return(0,e.isObjectLike)(fe)&&(0,e.isEmpty)(fe)&&!(0,e.isDate)(fe)?(0,e.isArray)(V)&&!(0,e.isArray)(X)||!(0,e.isArray)(V)&&(0,e.isArray)(X)?X:Y:(Y[ee]=fe,Y)},Q);return delete G._persist,G};e.difference=b;const w=function(z,$){return $.reduce((V,X)=>{if(V){const Q=parseInt(X,10),G=(0,e.isIntegerString)(X)&&Q<0?V.length+Q:X;return(0,e.isString)(V)?V.charAt(G):V[G]}},z)};e.path=w;const E=function(z,$){return[...z].reverse().reduce((Q,G,Y)=>{const ee=(0,e.isIntegerString)(G)?[]:{};return ee[G]=Y===0?$:Q,ee},{})};e.assocPath=E;const _=function(z,$){const V=(0,e.cloneDeep)(z);return $.reduce((X,Q,G)=>(G===$.length-1&&X&&(0,e.isObjectLike)(X)&&delete X[Q],X&&X[Q]),V),V};e.dissocPath=_;const k=function(z,$,...V){if(!V||!V.length)return $;const X=V.shift(),{preservePlaceholder:Q,preserveUndefined:G}=z;if((0,e.isObjectLike)($)&&(0,e.isObjectLike)(X))for(const Y in X)if((0,e.isObjectLike)(X[Y])&&(0,e.isObjectLike)($[Y]))$[Y]||($[Y]={}),k(z,$[Y],X[Y]);else if((0,e.isArray)($)){let ee=X[Y];const fe=Q?t.PLACEHOLDER_UNDEFINED:void 0;G||(ee=typeof ee<"u"?ee:$[parseInt(Y,10)]),ee=ee!==t.PLACEHOLDER_UNDEFINED?ee:fe,$[parseInt(Y,10)]=ee}else{const ee=X[Y]!==t.PLACEHOLDER_UNDEFINED?X[Y]:void 0;$[Y]=ee}return k(z,$,...V)},T=function(z,$,V){return k({preservePlaceholder:V==null?void 0:V.preservePlaceholder,preserveUndefined:V==null?void 0:V.preserveUndefined},(0,e.cloneDeep)(z),(0,e.cloneDeep)($))};e.mergeDeep=T;const L=function(z,$=[],V,X,Q){if(!(0,e.isObjectLike)(z))return z;for(const G in z){const Y=z[G],ee=(0,e.isArray)(z),fe=X?X+"."+G:G;Y===null&&(V===n.ConfigType.WHITELIST&&$.indexOf(fe)===-1||V===n.ConfigType.BLACKLIST&&$.indexOf(fe)!==-1)&&ee&&(z[parseInt(G,10)]=void 0),Y===void 0&&Q&&V===n.ConfigType.BLACKLIST&&$.indexOf(fe)===-1&&ee&&(z[parseInt(G,10)]=t.PLACEHOLDER_UNDEFINED),L(Y,$,V,fe,Q)}},O=function(z,$,V,X){const Q=(0,e.cloneDeep)(z);return L(Q,$,V,"",X),Q};e.preserveUndefined=O;const D=function(z,$,V){return V.indexOf(z)===$};e.unique=D;const I=function(z){return z.reduce(($,V)=>{const X=z.filter(_e=>_e===V),Q=z.filter(_e=>(V+".").indexOf(_e+".")===0),{duplicates:G,subsets:Y}=$,ee=X.length>1&&G.indexOf(V)===-1,fe=Q.length>1;return{duplicates:[...G,...ee?X:[]],subsets:[...Y,...fe?Q:[]].filter(e.unique).sort()}},{duplicates:[],subsets:[]})};e.findDuplicatesAndSubsets=I;const N=function(z,$,V){const X=V===n.ConfigType.WHITELIST?"whitelist":"blacklist",Q=`${t.PACKAGE_NAME}: incorrect ${X} configuration.`,G=`Check your create${V===n.ConfigType.WHITELIST?"White":"Black"}list arguments. `;if(!(0,e.isString)($)||$.length<1)throw new Error(`${Q} Name (key) of reducer is required. ${G}`);if(!z||!z.length)return;const{duplicates:Y,subsets:ee}=(0,e.findDuplicatesAndSubsets)(z);if(Y.length>1)throw new Error(`${Q} Duplicated paths. @@ -447,23 +447,23 @@ ${JSON.stringify(ee)} ${JSON.stringify(z)}`);if($.length)throw new Error(`${t.PACKAGE_NAME}: subsets of some parent keys found in your ${V}. You must decide if you want to persist an entire path or its specific subset. - ${JSON.stringify($)}`)};e.throwError=K;const ne=function(z){return(0,e.isArray)(z)?z.filter(e.unique).reduce(($,V)=>{const X=V.split("."),Q=X[0],G=X.slice(1).join(".")||void 0,Y=$.filter(fe=>Object.keys(fe)[0]===Q)[0],ee=Y?Object.values(Y)[0]:void 0;return Y||$.push({[Q]:G?[G]:void 0}),Y&&!ee&&G&&(Y[Q]=[G]),Y&&ee&&G&&ee.push(G),$},[]):[]};e.getRootKeysGroup=ne})(RW);(function(e){var t=So&&So.__rest||function(h,m){var y={};for(var b in h)Object.prototype.hasOwnProperty.call(h,b)&&m.indexOf(b)<0&&(y[b]=h[b]);if(h!=null&&typeof Object.getOwnPropertySymbols=="function")for(var w=0,b=Object.getOwnPropertySymbols(h);w!E(k)&&h?h(_,k,T):_,out:(_,k,T)=>!E(k)&&m?m(_,k,T):_,deepPersistKey:b&&b[0]}},a=(h,m,y,{debug:b,whitelist:w,blacklist:E,transforms:_})=>{if(w||E)throw new Error("State reconciler autoMergeDeep uses custom transforms instead of old whitelist or blacklist config properties. Please use createWhitelist or createBlacklist transforms.");(0,n.transformsValidator)(_);const k=(0,n.cloneDeep)(y);let T=h;if(T&&(0,n.isObjectLike)(T)){const L=(0,n.difference)(m,y);(0,n.isEmpty)(L)||(T=(0,n.mergeDeep)(h,L,{preserveUndefined:!0}),b&&console.log(`${r.PACKAGE_NAME}/autoMergeDeep: sub state of your state was modified by reducer during rehydration. Values from reducer will be kept: ${JSON.stringify(L)}`)),Object.keys(T).forEach(O=>{if(O!=="_persist"){if((0,n.isObjectLike)(k[O])){k[O]=(0,n.mergeDeep)(k[O],T[O]);return}k[O]=T[O]}})}return b&&T&&(0,n.isObjectLike)(T)&&console.log(`${r.PACKAGE_NAME}/autoMergeDeep: rehydrated keys ${JSON.stringify(T)}`),k};e.autoMergeDeep=a;const s=(h,m)=>((0,n.singleTransformValidator)(m,h,i.ConfigType.WHITELIST),o(y=>{if(!m||!m.length)return y;let b=null,w;return m.forEach(E=>{const _=E.split(".");w=(0,n.path)(y,_),typeof w>"u"&&(0,n.isIntegerString)(_[_.length-1])&&(w=r.PLACEHOLDER_UNDEFINED);const k=(0,n.assocPath)(_,w),T=(0,n.isArray)(k)?[]:{};b=(0,n.mergeDeep)(b||T,k,{preservePlaceholder:!0})}),b||y},y=>(0,n.preserveUndefined)(y,m,i.ConfigType.WHITELIST),{whitelist:[h]}));e.createWhitelist=s;const l=(h,m)=>((0,n.singleTransformValidator)(m,h,i.ConfigType.BLACKLIST),o(y=>{if(!m||!m.length)return;const b=(0,n.preserveUndefined)(y,m,i.ConfigType.BLACKLIST,!0);return m.map(E=>E.split(".")).reduce((E,_)=>(0,n.dissocPath)(E,_),b)},y=>(0,n.preserveUndefined)(y,m,i.ConfigType.BLACKLIST),{whitelist:[h]}));e.createBlacklist=l;const u=function(h,m){return m.map(y=>{const b=Object.keys(y)[0],w=y[b];return h===i.ConfigType.WHITELIST?(0,e.createWhitelist)(b,w):(0,e.createBlacklist)(b,w)})};e.getTransforms=u;const d=h=>{var{key:m,whitelist:y,blacklist:b,storage:w,transforms:E,rootReducer:_}=h,k=t(h,["key","whitelist","blacklist","storage","transforms","rootReducer"]);(0,n.configValidator)({whitelist:y,blacklist:b});const T=(0,n.getRootKeysGroup)(y),L=(0,n.getRootKeysGroup)(b),O=Object.keys(_(void 0,{type:""})),D=T.map(ne=>Object.keys(ne)[0]),I=L.map(ne=>Object.keys(ne)[0]),N=O.filter(ne=>D.indexOf(ne)===-1&&I.indexOf(ne)===-1),W=(0,e.getTransforms)(i.ConfigType.WHITELIST,T),B=(0,e.getTransforms)(i.ConfigType.BLACKLIST,L),K=(0,n.isArray)(y)?N.map(ne=>(0,e.createBlacklist)(ne)):[];return Object.assign(Object.assign({},k),{key:m,storage:w,transforms:[...W,...B,...K,...E||[]],stateReconciler:e.autoMergeDeep})};e.getPersistConfig=d})(OW);const Cd=(e,t)=>Math.floor(e/t)*t,Hl=(e,t)=>Math.round(e/t)*t;var Pe={},WSe={get exports(){return Pe},set exports(e){Pe=e}};/** + ${JSON.stringify($)}`)};e.throwError=K;const ne=function(z){return(0,e.isArray)(z)?z.filter(e.unique).reduce(($,V)=>{const X=V.split("."),Q=X[0],G=X.slice(1).join(".")||void 0,Y=$.filter(fe=>Object.keys(fe)[0]===Q)[0],ee=Y?Object.values(Y)[0]:void 0;return Y||$.push({[Q]:G?[G]:void 0}),Y&&!ee&&G&&(Y[Q]=[G]),Y&&ee&&G&&ee.push(G),$},[]):[]};e.getRootKeysGroup=ne})(RW);(function(e){var t=So&&So.__rest||function(p,m){var y={};for(var b in p)Object.prototype.hasOwnProperty.call(p,b)&&m.indexOf(b)<0&&(y[b]=p[b]);if(p!=null&&typeof Object.getOwnPropertySymbols=="function")for(var w=0,b=Object.getOwnPropertySymbols(p);w!E(k)&&p?p(_,k,T):_,out:(_,k,T)=>!E(k)&&m?m(_,k,T):_,deepPersistKey:b&&b[0]}},a=(p,m,y,{debug:b,whitelist:w,blacklist:E,transforms:_})=>{if(w||E)throw new Error("State reconciler autoMergeDeep uses custom transforms instead of old whitelist or blacklist config properties. Please use createWhitelist or createBlacklist transforms.");(0,n.transformsValidator)(_);const k=(0,n.cloneDeep)(y);let T=p;if(T&&(0,n.isObjectLike)(T)){const L=(0,n.difference)(m,y);(0,n.isEmpty)(L)||(T=(0,n.mergeDeep)(p,L,{preserveUndefined:!0}),b&&console.log(`${r.PACKAGE_NAME}/autoMergeDeep: sub state of your state was modified by reducer during rehydration. Values from reducer will be kept: ${JSON.stringify(L)}`)),Object.keys(T).forEach(O=>{if(O!=="_persist"){if((0,n.isObjectLike)(k[O])){k[O]=(0,n.mergeDeep)(k[O],T[O]);return}k[O]=T[O]}})}return b&&T&&(0,n.isObjectLike)(T)&&console.log(`${r.PACKAGE_NAME}/autoMergeDeep: rehydrated keys ${JSON.stringify(T)}`),k};e.autoMergeDeep=a;const s=(p,m)=>((0,n.singleTransformValidator)(m,p,i.ConfigType.WHITELIST),o(y=>{if(!m||!m.length)return y;let b=null,w;return m.forEach(E=>{const _=E.split(".");w=(0,n.path)(y,_),typeof w>"u"&&(0,n.isIntegerString)(_[_.length-1])&&(w=r.PLACEHOLDER_UNDEFINED);const k=(0,n.assocPath)(_,w),T=(0,n.isArray)(k)?[]:{};b=(0,n.mergeDeep)(b||T,k,{preservePlaceholder:!0})}),b||y},y=>(0,n.preserveUndefined)(y,m,i.ConfigType.WHITELIST),{whitelist:[p]}));e.createWhitelist=s;const l=(p,m)=>((0,n.singleTransformValidator)(m,p,i.ConfigType.BLACKLIST),o(y=>{if(!m||!m.length)return;const b=(0,n.preserveUndefined)(y,m,i.ConfigType.BLACKLIST,!0);return m.map(E=>E.split(".")).reduce((E,_)=>(0,n.dissocPath)(E,_),b)},y=>(0,n.preserveUndefined)(y,m,i.ConfigType.BLACKLIST),{whitelist:[p]}));e.createBlacklist=l;const u=function(p,m){return m.map(y=>{const b=Object.keys(y)[0],w=y[b];return p===i.ConfigType.WHITELIST?(0,e.createWhitelist)(b,w):(0,e.createBlacklist)(b,w)})};e.getTransforms=u;const d=p=>{var{key:m,whitelist:y,blacklist:b,storage:w,transforms:E,rootReducer:_}=p,k=t(p,["key","whitelist","blacklist","storage","transforms","rootReducer"]);(0,n.configValidator)({whitelist:y,blacklist:b});const T=(0,n.getRootKeysGroup)(y),L=(0,n.getRootKeysGroup)(b),O=Object.keys(_(void 0,{type:""})),D=T.map(ne=>Object.keys(ne)[0]),I=L.map(ne=>Object.keys(ne)[0]),N=O.filter(ne=>D.indexOf(ne)===-1&&I.indexOf(ne)===-1),W=(0,e.getTransforms)(i.ConfigType.WHITELIST,T),B=(0,e.getTransforms)(i.ConfigType.BLACKLIST,L),K=(0,n.isArray)(y)?N.map(ne=>(0,e.createBlacklist)(ne)):[];return Object.assign(Object.assign({},k),{key:m,storage:w,transforms:[...W,...B,...K,...E||[]],stateReconciler:e.autoMergeDeep})};e.getPersistConfig=d})(OW);const Cd=(e,t)=>Math.floor(e/t)*t,Hl=(e,t)=>Math.round(e/t)*t;var Ce={},USe={get exports(){return Ce},set exports(e){Ce=e}};/** * @license * Lodash * Copyright OpenJS Foundation and other contributors * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */(function(e,t){(function(){var n,r="4.17.21",i=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",s="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",u=500,d="__lodash_placeholder__",h=1,m=2,y=4,b=1,w=2,E=1,_=2,k=4,T=8,L=16,O=32,D=64,I=128,N=256,W=512,B=30,K="...",ne=800,z=16,$=1,V=2,X=3,Q=1/0,G=9007199254740991,Y=17976931348623157e292,ee=0/0,fe=4294967295,Ce=fe-1,we=fe>>>1,xe=[["ary",I],["bind",E],["bindKey",_],["curry",T],["curryRight",L],["flip",W],["partial",O],["partialRight",D],["rearg",N]],Le="[object Arguments]",Se="[object Array]",Qe="[object AsyncFunction]",Xe="[object Boolean]",tt="[object Date]",yt="[object DOMException]",Be="[object Error]",Ae="[object Function]",bt="[object GeneratorFunction]",Fe="[object Map]",at="[object Number]",jt="[object Null]",mt="[object Object]",Zt="[object Promise]",on="[object Proxy]",se="[object RegExp]",Ie="[object Set]",He="[object String]",Ue="[object Symbol]",ye="[object Undefined]",je="[object WeakMap]",vt="[object WeakSet]",Mt="[object ArrayBuffer]",Me="[object DataView]",Ct="[object Float32Array]",zt="[object Float64Array]",$n="[object Int8Array]",qe="[object Int16Array]",pt="[object Int32Array]",zr="[object Uint8Array]",rr="[object Uint8ClampedArray]",Bn="[object Uint16Array]",li="[object Uint32Array]",vs=/\b__p \+= '';/g,tl=/\b(__p \+=) '' \+/g,gf=/(__e\(.*?\)|\b__t\)) \+\n'';/g,ys=/&(?:amp|lt|gt|quot|#39);/g,Xi=/[&<>"']/g,_0=RegExp(ys.source),Na=RegExp(Xi.source),wp=/<%-([\s\S]+?)%>/g,k0=/<%([\s\S]+?)%>/g,bc=/<%=([\s\S]+?)%>/g,Cp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,_p=/^\w*$/,na=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,mf=/[\\^$.*+?()[\]{}|]/g,E0=RegExp(mf.source),xc=/^\s+/,vf=/\s/,P0=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,nl=/\{\n\/\* \[wrapped with (.+)\] \*/,Sc=/,? & /,T0=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,M0=/[()=,{}\[\]\/\s]/,L0=/\\(\\)?/g,A0=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,bs=/\w*$/,O0=/^[-+]0x[0-9a-f]+$/i,R0=/^0b[01]+$/i,I0=/^\[object .+?Constructor\]$/,D0=/^0o[0-7]+$/i,j0=/^(?:0|[1-9]\d*)$/,N0=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,rl=/($^)/,$0=/['\n\r\u2028\u2029\\]/g,xs="\\ud800-\\udfff",fu="\\u0300-\\u036f",hu="\\ufe20-\\ufe2f",il="\\u20d0-\\u20ff",pu=fu+hu+il,kp="\\u2700-\\u27bf",wc="a-z\\xdf-\\xf6\\xf8-\\xff",ol="\\xac\\xb1\\xd7\\xf7",ra="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Mn="\\u2000-\\u206f",wn=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ia="A-Z\\xc0-\\xd6\\xd8-\\xde",Hr="\\ufe0e\\ufe0f",ui=ol+ra+Mn+wn,oa="['’]",al="["+xs+"]",ci="["+ui+"]",Ss="["+pu+"]",yf="\\d+",gu="["+kp+"]",ws="["+wc+"]",bf="[^"+xs+ui+yf+kp+wc+ia+"]",Ri="\\ud83c[\\udffb-\\udfff]",Ep="(?:"+Ss+"|"+Ri+")",Pp="[^"+xs+"]",xf="(?:\\ud83c[\\udde6-\\uddff]){2}",sl="[\\ud800-\\udbff][\\udc00-\\udfff]",Mo="["+ia+"]",ll="\\u200d",mu="(?:"+ws+"|"+bf+")",F0="(?:"+Mo+"|"+bf+")",Cc="(?:"+oa+"(?:d|ll|m|re|s|t|ve))?",_c="(?:"+oa+"(?:D|LL|M|RE|S|T|VE))?",Sf=Ep+"?",kc="["+Hr+"]?",$a="(?:"+ll+"(?:"+[Pp,xf,sl].join("|")+")"+kc+Sf+")*",wf="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",vu="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Gt=kc+Sf+$a,Tp="(?:"+[gu,xf,sl].join("|")+")"+Gt,Ec="(?:"+[Pp+Ss+"?",Ss,xf,sl,al].join("|")+")",Pc=RegExp(oa,"g"),Mp=RegExp(Ss,"g"),aa=RegExp(Ri+"(?="+Ri+")|"+Ec+Gt,"g"),Xn=RegExp([Mo+"?"+ws+"+"+Cc+"(?="+[ci,Mo,"$"].join("|")+")",F0+"+"+_c+"(?="+[ci,Mo+mu,"$"].join("|")+")",Mo+"?"+mu+"+"+Cc,Mo+"+"+_c,vu,wf,yf,Tp].join("|"),"g"),Cf=RegExp("["+ll+xs+pu+Hr+"]"),Lp=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,_f=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ap=-1,cn={};cn[Ct]=cn[zt]=cn[$n]=cn[qe]=cn[pt]=cn[zr]=cn[rr]=cn[Bn]=cn[li]=!0,cn[Le]=cn[Se]=cn[Mt]=cn[Xe]=cn[Me]=cn[tt]=cn[Be]=cn[Ae]=cn[Fe]=cn[at]=cn[mt]=cn[se]=cn[Ie]=cn[He]=cn[je]=!1;var qt={};qt[Le]=qt[Se]=qt[Mt]=qt[Me]=qt[Xe]=qt[tt]=qt[Ct]=qt[zt]=qt[$n]=qt[qe]=qt[pt]=qt[Fe]=qt[at]=qt[mt]=qt[se]=qt[Ie]=qt[He]=qt[Ue]=qt[zr]=qt[rr]=qt[Bn]=qt[li]=!0,qt[Be]=qt[Ae]=qt[je]=!1;var Op={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},B0={"&":"&","<":"<",">":">",'"':""","'":"'"},q={"&":"&","<":"<",">":">",""":'"',"'":"'"},re={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},pe=parseFloat,ot=parseInt,Ht=typeof So=="object"&&So&&So.Object===Object&&So,mn=typeof self=="object"&&self&&self.Object===Object&&self,St=Ht||mn||Function("return this")(),Ot=t&&!t.nodeType&&t,Kt=Ot&&!0&&e&&!e.nodeType&&e,Jr=Kt&&Kt.exports===Ot,Ar=Jr&&Ht.process,vn=function(){try{var ie=Kt&&Kt.require&&Kt.require("util").types;return ie||Ar&&Ar.binding&&Ar.binding("util")}catch{}}(),di=vn&&vn.isArrayBuffer,Lo=vn&&vn.isDate,uo=vn&&vn.isMap,Fa=vn&&vn.isRegExp,ul=vn&&vn.isSet,z0=vn&&vn.isTypedArray;function Ii(ie,be,me){switch(me.length){case 0:return ie.call(be);case 1:return ie.call(be,me[0]);case 2:return ie.call(be,me[0],me[1]);case 3:return ie.call(be,me[0],me[1],me[2])}return ie.apply(be,me)}function H0(ie,be,me,rt){for(var Lt=-1,en=ie==null?0:ie.length;++Lt-1}function Rp(ie,be,me){for(var rt=-1,Lt=ie==null?0:ie.length;++rt-1;);return me}function Cs(ie,be){for(var me=ie.length;me--&&Lc(be,ie[me],0)>-1;);return me}function U0(ie,be){for(var me=ie.length,rt=0;me--;)ie[me]===be&&++rt;return rt}var A2=Tf(Op),_s=Tf(B0);function dl(ie){return"\\"+re[ie]}function Dp(ie,be){return ie==null?n:ie[be]}function bu(ie){return Cf.test(ie)}function jp(ie){return Lp.test(ie)}function O2(ie){for(var be,me=[];!(be=ie.next()).done;)me.push(be.value);return me}function Np(ie){var be=-1,me=Array(ie.size);return ie.forEach(function(rt,Lt){me[++be]=[Lt,rt]}),me}function $p(ie,be){return function(me){return ie(be(me))}}function ua(ie,be){for(var me=-1,rt=ie.length,Lt=0,en=[];++me-1}function Z2(c,v){var C=this.__data__,A=Ur(C,c);return A<0?(++this.size,C.push([c,v])):C[A][1]=v,this}ca.prototype.clear=Y2,ca.prototype.delete=X2,ca.prototype.get=ov,ca.prototype.has=av,ca.prototype.set=Z2;function da(c){var v=-1,C=c==null?0:c.length;for(this.clear();++v=v?c:v)),c}function wi(c,v,C,A,j,H){var Z,te=v&h,ce=v&m,_e=v&y;if(C&&(Z=j?C(c,A,j,H):C(c)),Z!==n)return Z;if(!Cr(c))return c;var Ee=$t(c);if(Ee){if(Z=kK(c),!te)return Bi(c,Z)}else{var Re=ki(c),nt=Re==Ae||Re==bt;if(id(c))return wl(c,te);if(Re==mt||Re==Le||nt&&!j){if(Z=ce||nt?{}:AP(c),!te)return ce?_v(c,Kc(Z,c)):No(c,st(Z,c))}else{if(!qt[Re])return j?c:{};Z=EK(c,Re,te)}}H||(H=new Rr);var gt=H.get(c);if(gt)return gt;H.set(c,Z),aT(c)?c.forEach(function(kt){Z.add(wi(kt,v,C,kt,c,H))}):iT(c)&&c.forEach(function(kt,Xt){Z.set(Xt,wi(kt,v,C,Xt,c,H))});var _t=_e?ce?ge:ma:ce?Fo:Ei,Vt=Ee?n:_t(c);return Zn(Vt||c,function(kt,Xt){Vt&&(Xt=kt,kt=c[Xt]),pl(Z,Xt,wi(kt,v,C,Xt,c,H))}),Z}function Gp(c){var v=Ei(c);return function(C){return qp(C,c,v)}}function qp(c,v,C){var A=C.length;if(c==null)return!A;for(c=dn(c);A--;){var j=C[A],H=v[j],Z=c[j];if(Z===n&&!(j in c)||!H(Z))return!1}return!0}function cv(c,v,C){if(typeof c!="function")throw new Di(a);return Mv(function(){c.apply(n,C)},v)}function Yc(c,v,C,A){var j=-1,H=Zi,Z=!0,te=c.length,ce=[],_e=v.length;if(!te)return ce;C&&(v=Hn(v,Wr(C))),A?(H=Rp,Z=!1):v.length>=i&&(H=Oc,Z=!1,v=new Wa(v));e:for(;++jj?0:j+C),A=A===n||A>j?j:Ft(A),A<0&&(A+=j),A=C>A?0:lT(A);C0&&C(te)?v>1?Vr(te,v-1,C,A,j):Ba(j,te):A||(j[j.length]=te)}return j}var Yp=Cl(),Io=Cl(!0);function ga(c,v){return c&&Yp(c,v,Ei)}function Do(c,v){return c&&Io(c,v,Ei)}function Xp(c,v){return Oo(v,function(C){return Tu(c[C])})}function gl(c,v){v=Sl(v,c);for(var C=0,A=v.length;c!=null&&Cv}function Qp(c,v){return c!=null&&an.call(c,v)}function Jp(c,v){return c!=null&&v in dn(c)}function eg(c,v,C){return c>=hi(v,C)&&c=120&&Ee.length>=120)?new Wa(Z&&Ee):n}Ee=c[0];var Re=-1,nt=te[0];e:for(;++Re-1;)te!==c&&jf.call(te,ce,1),jf.call(c,ce,1);return c}function Vf(c,v){for(var C=c?v.length:0,A=C-1;C--;){var j=v[C];if(C==A||j!==H){var H=j;Pu(j)?jf.call(c,j,1):cg(c,j)}}return c}function Gf(c,v){return c+Su(J0()*(v-c+1))}function bl(c,v,C,A){for(var j=-1,H=Or(Ff((v-c)/(C||1)),0),Z=me(H);H--;)Z[A?H:++j]=c,c+=C;return Z}function td(c,v){var C="";if(!c||v<1||v>G)return C;do v%2&&(C+=c),v=Su(v/2),v&&(c+=c);while(v);return C}function Tt(c,v){return U4(IP(c,v,Bo),c+"")}function og(c){return qc(vg(c))}function qf(c,v){var C=vg(c);return ob(C,Cu(v,0,C.length))}function ku(c,v,C,A){if(!Cr(c))return c;v=Sl(v,c);for(var j=-1,H=v.length,Z=H-1,te=c;te!=null&&++jj?0:j+v),C=C>j?j:C,C<0&&(C+=j),j=v>C?0:C-v>>>0,v>>>=0;for(var H=me(j);++A>>1,Z=c[H];Z!==null&&!va(Z)&&(C?Z<=v:Z=i){var _e=v?null:U(c);if(_e)return Of(_e);Z=!1,j=Oc,ce=new Wa}else ce=v?[]:te;e:for(;++A=A?c:qr(c,v,C)}var xv=N2||function(c){return St.clearTimeout(c)};function wl(c,v){if(v)return c.slice();var C=c.length,A=Nc?Nc(C):new c.constructor(C);return c.copy(A),A}function Sv(c){var v=new c.constructor(c.byteLength);return new ji(v).set(new ji(c)),v}function Eu(c,v){var C=v?Sv(c.buffer):c.buffer;return new c.constructor(C,c.byteOffset,c.byteLength)}function tb(c){var v=new c.constructor(c.source,bs.exec(c));return v.lastIndex=c.lastIndex,v}function Qn(c){return zf?dn(zf.call(c)):{}}function nb(c,v){var C=v?Sv(c.buffer):c.buffer;return new c.constructor(C,c.byteOffset,c.length)}function wv(c,v){if(c!==v){var C=c!==n,A=c===null,j=c===c,H=va(c),Z=v!==n,te=v===null,ce=v===v,_e=va(v);if(!te&&!_e&&!H&&c>v||H&&Z&&ce&&!te&&!_e||A&&Z&&ce||!C&&ce||!j)return 1;if(!A&&!H&&!_e&&c=te)return ce;var _e=C[A];return ce*(_e=="desc"?-1:1)}}return c.index-v.index}function rb(c,v,C,A){for(var j=-1,H=c.length,Z=C.length,te=-1,ce=v.length,_e=Or(H-Z,0),Ee=me(ce+_e),Re=!A;++te1?C[j-1]:n,Z=j>2?C[2]:n;for(H=c.length>3&&typeof H=="function"?(j--,H):n,Z&&mo(C[0],C[1],Z)&&(H=j<3?n:H,j=1),v=dn(v);++A-1?j[H?v[Z]:Z]:n}}function Ev(c){return gr(function(v){var C=v.length,A=C,j=fo.prototype.thru;for(c&&v.reverse();A--;){var H=v[A];if(typeof H!="function")throw new Di(a);if(j&&!Z&&ve(H)=="wrapper")var Z=new fo([],!0)}for(A=Z?A:C;++A1&&tn.reverse(),Ee&&cete))return!1;var _e=H.get(c),Ee=H.get(v);if(_e&&Ee)return _e==v&&Ee==c;var Re=-1,nt=!0,gt=C&w?new Wa:n;for(H.set(c,v),H.set(v,c);++Re1?"& ":"")+v[A],v=v.join(C>2?", ":" "),c.replace(P0,`{ + */(function(e,t){(function(){var n,r="4.17.21",i=200,o="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",a="Expected a function",s="Invalid `variable` option passed into `_.template`",l="__lodash_hash_undefined__",u=500,d="__lodash_placeholder__",p=1,m=2,y=4,b=1,w=2,E=1,_=2,k=4,T=8,L=16,O=32,D=64,I=128,N=256,W=512,B=30,K="...",ne=800,z=16,$=1,V=2,X=3,Q=1/0,G=9007199254740991,Y=17976931348623157e292,ee=0/0,fe=4294967295,_e=fe-1,we=fe>>>1,xe=[["ary",I],["bind",E],["bindKey",_],["curry",T],["curryRight",L],["flip",W],["partial",O],["partialRight",D],["rearg",N]],Le="[object Arguments]",Se="[object Array]",Je="[object AsyncFunction]",Xe="[object Boolean]",tt="[object Date]",yt="[object DOMException]",Be="[object Error]",Ae="[object Function]",bt="[object GeneratorFunction]",Fe="[object Map]",at="[object Number]",jt="[object Null]",mt="[object Object]",Zt="[object Promise]",on="[object Proxy]",se="[object RegExp]",Ie="[object Set]",He="[object String]",Ue="[object Symbol]",ye="[object Undefined]",je="[object WeakMap]",vt="[object WeakSet]",Mt="[object ArrayBuffer]",Me="[object DataView]",Ct="[object Float32Array]",zt="[object Float64Array]",$n="[object Int8Array]",qe="[object Int16Array]",pt="[object Int32Array]",zr="[object Uint8Array]",rr="[object Uint8ClampedArray]",Bn="[object Uint16Array]",li="[object Uint32Array]",vs=/\b__p \+= '';/g,tl=/\b(__p \+=) '' \+/g,gf=/(__e\(.*?\)|\b__t\)) \+\n'';/g,ys=/&(?:amp|lt|gt|quot|#39);/g,Xi=/[&<>"']/g,_0=RegExp(ys.source),Na=RegExp(Xi.source),wp=/<%-([\s\S]+?)%>/g,k0=/<%([\s\S]+?)%>/g,bc=/<%=([\s\S]+?)%>/g,Cp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,_p=/^\w*$/,na=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,mf=/[\\^$.*+?()[\]{}|]/g,E0=RegExp(mf.source),xc=/^\s+/,vf=/\s/,P0=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,nl=/\{\n\/\* \[wrapped with (.+)\] \*/,Sc=/,? & /,T0=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,M0=/[()=,{}\[\]\/\s]/,L0=/\\(\\)?/g,A0=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,bs=/\w*$/,O0=/^[-+]0x[0-9a-f]+$/i,R0=/^0b[01]+$/i,I0=/^\[object .+?Constructor\]$/,D0=/^0o[0-7]+$/i,j0=/^(?:0|[1-9]\d*)$/,N0=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,rl=/($^)/,$0=/['\n\r\u2028\u2029\\]/g,xs="\\ud800-\\udfff",fu="\\u0300-\\u036f",hu="\\ufe20-\\ufe2f",il="\\u20d0-\\u20ff",pu=fu+hu+il,kp="\\u2700-\\u27bf",wc="a-z\\xdf-\\xf6\\xf8-\\xff",ol="\\xac\\xb1\\xd7\\xf7",ra="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Mn="\\u2000-\\u206f",wn=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",ia="A-Z\\xc0-\\xd6\\xd8-\\xde",Hr="\\ufe0e\\ufe0f",ui=ol+ra+Mn+wn,oa="['’]",al="["+xs+"]",ci="["+ui+"]",Ss="["+pu+"]",yf="\\d+",gu="["+kp+"]",ws="["+wc+"]",bf="[^"+xs+ui+yf+kp+wc+ia+"]",Ri="\\ud83c[\\udffb-\\udfff]",Ep="(?:"+Ss+"|"+Ri+")",Pp="[^"+xs+"]",xf="(?:\\ud83c[\\udde6-\\uddff]){2}",sl="[\\ud800-\\udbff][\\udc00-\\udfff]",Mo="["+ia+"]",ll="\\u200d",mu="(?:"+ws+"|"+bf+")",F0="(?:"+Mo+"|"+bf+")",Cc="(?:"+oa+"(?:d|ll|m|re|s|t|ve))?",_c="(?:"+oa+"(?:D|LL|M|RE|S|T|VE))?",Sf=Ep+"?",kc="["+Hr+"]?",$a="(?:"+ll+"(?:"+[Pp,xf,sl].join("|")+")"+kc+Sf+")*",wf="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",vu="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Gt=kc+Sf+$a,Tp="(?:"+[gu,xf,sl].join("|")+")"+Gt,Ec="(?:"+[Pp+Ss+"?",Ss,xf,sl,al].join("|")+")",Pc=RegExp(oa,"g"),Mp=RegExp(Ss,"g"),aa=RegExp(Ri+"(?="+Ri+")|"+Ec+Gt,"g"),Xn=RegExp([Mo+"?"+ws+"+"+Cc+"(?="+[ci,Mo,"$"].join("|")+")",F0+"+"+_c+"(?="+[ci,Mo+mu,"$"].join("|")+")",Mo+"?"+mu+"+"+Cc,Mo+"+"+_c,vu,wf,yf,Tp].join("|"),"g"),Cf=RegExp("["+ll+xs+pu+Hr+"]"),Lp=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,_f=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Ap=-1,cn={};cn[Ct]=cn[zt]=cn[$n]=cn[qe]=cn[pt]=cn[zr]=cn[rr]=cn[Bn]=cn[li]=!0,cn[Le]=cn[Se]=cn[Mt]=cn[Xe]=cn[Me]=cn[tt]=cn[Be]=cn[Ae]=cn[Fe]=cn[at]=cn[mt]=cn[se]=cn[Ie]=cn[He]=cn[je]=!1;var qt={};qt[Le]=qt[Se]=qt[Mt]=qt[Me]=qt[Xe]=qt[tt]=qt[Ct]=qt[zt]=qt[$n]=qt[qe]=qt[pt]=qt[Fe]=qt[at]=qt[mt]=qt[se]=qt[Ie]=qt[He]=qt[Ue]=qt[zr]=qt[rr]=qt[Bn]=qt[li]=!0,qt[Be]=qt[Ae]=qt[je]=!1;var Op={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},B0={"&":"&","<":"<",">":">",'"':""","'":"'"},q={"&":"&","<":"<",">":">",""":'"',"'":"'"},re={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},pe=parseFloat,ot=parseInt,Ht=typeof So=="object"&&So&&So.Object===Object&&So,mn=typeof self=="object"&&self&&self.Object===Object&&self,St=Ht||mn||Function("return this")(),Ot=t&&!t.nodeType&&t,Kt=Ot&&!0&&e&&!e.nodeType&&e,Jr=Kt&&Kt.exports===Ot,Ar=Jr&&Ht.process,vn=function(){try{var ie=Kt&&Kt.require&&Kt.require("util").types;return ie||Ar&&Ar.binding&&Ar.binding("util")}catch{}}(),di=vn&&vn.isArrayBuffer,Lo=vn&&vn.isDate,uo=vn&&vn.isMap,Fa=vn&&vn.isRegExp,ul=vn&&vn.isSet,z0=vn&&vn.isTypedArray;function Ii(ie,be,me){switch(me.length){case 0:return ie.call(be);case 1:return ie.call(be,me[0]);case 2:return ie.call(be,me[0],me[1]);case 3:return ie.call(be,me[0],me[1],me[2])}return ie.apply(be,me)}function H0(ie,be,me,rt){for(var Lt=-1,en=ie==null?0:ie.length;++Lt-1}function Rp(ie,be,me){for(var rt=-1,Lt=ie==null?0:ie.length;++rt-1;);return me}function Cs(ie,be){for(var me=ie.length;me--&&Lc(be,ie[me],0)>-1;);return me}function U0(ie,be){for(var me=ie.length,rt=0;me--;)ie[me]===be&&++rt;return rt}var A2=Tf(Op),_s=Tf(B0);function dl(ie){return"\\"+re[ie]}function Dp(ie,be){return ie==null?n:ie[be]}function bu(ie){return Cf.test(ie)}function jp(ie){return Lp.test(ie)}function O2(ie){for(var be,me=[];!(be=ie.next()).done;)me.push(be.value);return me}function Np(ie){var be=-1,me=Array(ie.size);return ie.forEach(function(rt,Lt){me[++be]=[Lt,rt]}),me}function $p(ie,be){return function(me){return ie(be(me))}}function ua(ie,be){for(var me=-1,rt=ie.length,Lt=0,en=[];++me-1}function Z2(c,v){var C=this.__data__,A=Ur(C,c);return A<0?(++this.size,C.push([c,v])):C[A][1]=v,this}ca.prototype.clear=Y2,ca.prototype.delete=X2,ca.prototype.get=ov,ca.prototype.has=av,ca.prototype.set=Z2;function da(c){var v=-1,C=c==null?0:c.length;for(this.clear();++v=v?c:v)),c}function wi(c,v,C,A,j,H){var Z,te=v&p,ce=v&m,ke=v&y;if(C&&(Z=j?C(c,A,j,H):C(c)),Z!==n)return Z;if(!Cr(c))return c;var Pe=$t(c);if(Pe){if(Z=EK(c),!te)return Bi(c,Z)}else{var Re=ki(c),nt=Re==Ae||Re==bt;if(id(c))return wl(c,te);if(Re==mt||Re==Le||nt&&!j){if(Z=ce||nt?{}:AP(c),!te)return ce?_v(c,Kc(Z,c)):No(c,st(Z,c))}else{if(!qt[Re])return j?c:{};Z=PK(c,Re,te)}}H||(H=new Rr);var gt=H.get(c);if(gt)return gt;H.set(c,Z),aT(c)?c.forEach(function(kt){Z.add(wi(kt,v,C,kt,c,H))}):iT(c)&&c.forEach(function(kt,Xt){Z.set(Xt,wi(kt,v,C,Xt,c,H))});var _t=ke?ce?ge:ma:ce?Fo:Ei,Vt=Pe?n:_t(c);return Zn(Vt||c,function(kt,Xt){Vt&&(Xt=kt,kt=c[Xt]),pl(Z,Xt,wi(kt,v,C,Xt,c,H))}),Z}function Gp(c){var v=Ei(c);return function(C){return qp(C,c,v)}}function qp(c,v,C){var A=C.length;if(c==null)return!A;for(c=dn(c);A--;){var j=C[A],H=v[j],Z=c[j];if(Z===n&&!(j in c)||!H(Z))return!1}return!0}function cv(c,v,C){if(typeof c!="function")throw new Di(a);return Mv(function(){c.apply(n,C)},v)}function Yc(c,v,C,A){var j=-1,H=Zi,Z=!0,te=c.length,ce=[],ke=v.length;if(!te)return ce;C&&(v=Hn(v,Wr(C))),A?(H=Rp,Z=!1):v.length>=i&&(H=Oc,Z=!1,v=new Wa(v));e:for(;++jj?0:j+C),A=A===n||A>j?j:Ft(A),A<0&&(A+=j),A=C>A?0:lT(A);C0&&C(te)?v>1?Vr(te,v-1,C,A,j):Ba(j,te):A||(j[j.length]=te)}return j}var Yp=Cl(),Io=Cl(!0);function ga(c,v){return c&&Yp(c,v,Ei)}function Do(c,v){return c&&Io(c,v,Ei)}function Xp(c,v){return Oo(v,function(C){return Tu(c[C])})}function gl(c,v){v=Sl(v,c);for(var C=0,A=v.length;c!=null&&Cv}function Qp(c,v){return c!=null&&an.call(c,v)}function Jp(c,v){return c!=null&&v in dn(c)}function eg(c,v,C){return c>=hi(v,C)&&c=120&&Pe.length>=120)?new Wa(Z&&Pe):n}Pe=c[0];var Re=-1,nt=te[0];e:for(;++Re-1;)te!==c&&jf.call(te,ce,1),jf.call(c,ce,1);return c}function Vf(c,v){for(var C=c?v.length:0,A=C-1;C--;){var j=v[C];if(C==A||j!==H){var H=j;Pu(j)?jf.call(c,j,1):cg(c,j)}}return c}function Gf(c,v){return c+Su(J0()*(v-c+1))}function bl(c,v,C,A){for(var j=-1,H=Or(Ff((v-c)/(C||1)),0),Z=me(H);H--;)Z[A?H:++j]=c,c+=C;return Z}function td(c,v){var C="";if(!c||v<1||v>G)return C;do v%2&&(C+=c),v=Su(v/2),v&&(c+=c);while(v);return C}function Tt(c,v){return U4(IP(c,v,Bo),c+"")}function og(c){return qc(vg(c))}function qf(c,v){var C=vg(c);return ob(C,Cu(v,0,C.length))}function ku(c,v,C,A){if(!Cr(c))return c;v=Sl(v,c);for(var j=-1,H=v.length,Z=H-1,te=c;te!=null&&++jj?0:j+v),C=C>j?j:C,C<0&&(C+=j),j=v>C?0:C-v>>>0,v>>>=0;for(var H=me(j);++A>>1,Z=c[H];Z!==null&&!va(Z)&&(C?Z<=v:Z=i){var ke=v?null:U(c);if(ke)return Of(ke);Z=!1,j=Oc,ce=new Wa}else ce=v?[]:te;e:for(;++A=A?c:qr(c,v,C)}var xv=N2||function(c){return St.clearTimeout(c)};function wl(c,v){if(v)return c.slice();var C=c.length,A=Nc?Nc(C):new c.constructor(C);return c.copy(A),A}function Sv(c){var v=new c.constructor(c.byteLength);return new ji(v).set(new ji(c)),v}function Eu(c,v){var C=v?Sv(c.buffer):c.buffer;return new c.constructor(C,c.byteOffset,c.byteLength)}function tb(c){var v=new c.constructor(c.source,bs.exec(c));return v.lastIndex=c.lastIndex,v}function Qn(c){return zf?dn(zf.call(c)):{}}function nb(c,v){var C=v?Sv(c.buffer):c.buffer;return new c.constructor(C,c.byteOffset,c.length)}function wv(c,v){if(c!==v){var C=c!==n,A=c===null,j=c===c,H=va(c),Z=v!==n,te=v===null,ce=v===v,ke=va(v);if(!te&&!ke&&!H&&c>v||H&&Z&&ce&&!te&&!ke||A&&Z&&ce||!C&&ce||!j)return 1;if(!A&&!H&&!ke&&c=te)return ce;var ke=C[A];return ce*(ke=="desc"?-1:1)}}return c.index-v.index}function rb(c,v,C,A){for(var j=-1,H=c.length,Z=C.length,te=-1,ce=v.length,ke=Or(H-Z,0),Pe=me(ce+ke),Re=!A;++te1?C[j-1]:n,Z=j>2?C[2]:n;for(H=c.length>3&&typeof H=="function"?(j--,H):n,Z&&mo(C[0],C[1],Z)&&(H=j<3?n:H,j=1),v=dn(v);++A-1?j[H?v[Z]:Z]:n}}function Ev(c){return gr(function(v){var C=v.length,A=C,j=fo.prototype.thru;for(c&&v.reverse();A--;){var H=v[A];if(typeof H!="function")throw new Di(a);if(j&&!Z&&ve(H)=="wrapper")var Z=new fo([],!0)}for(A=Z?A:C;++A1&&tn.reverse(),Pe&&cete))return!1;var ke=H.get(c),Pe=H.get(v);if(ke&&Pe)return ke==v&&Pe==c;var Re=-1,nt=!0,gt=C&w?new Wa:n;for(H.set(c,v),H.set(v,c);++Re1?"& ":"")+v[A],v=v.join(C>2?", ":" "),c.replace(P0,`{ /* [wrapped with `+v+`] */ -`)}function TK(c){return $t(c)||th(c)||!!(Z0&&c&&c[Z0])}function Pu(c,v){var C=typeof c;return v=v??G,!!v&&(C=="number"||C!="symbol"&&j0.test(c))&&c>-1&&c%1==0&&c0){if(++v>=ne)return arguments[0]}else v=0;return c.apply(n,arguments)}}function ob(c,v){var C=-1,A=c.length,j=A-1;for(v=v===n?A:v;++C1?c[v-1]:n;return C=typeof C=="function"?(c.pop(),C):n,GP(c,C)});function qP(c){var v=F(c);return v.__chain__=!0,v}function FY(c,v){return v(c),c}function ab(c,v){return v(c)}var BY=gr(function(c){var v=c.length,C=v?c[0]:0,A=this.__wrapped__,j=function(H){return Vp(H,c)};return v>1||this.__actions__.length||!(A instanceof Yt)||!Pu(C)?this.thru(j):(A=A.slice(C,+C+(v?1:0)),A.__actions__.push({func:ab,args:[j],thisArg:n}),new fo(A,this.__chain__).thru(function(H){return v&&!H.length&&H.push(n),H}))});function zY(){return qP(this)}function HY(){return new fo(this.value(),this.__chain__)}function WY(){this.__values__===n&&(this.__values__=sT(this.value()));var c=this.__index__>=this.__values__.length,v=c?n:this.__values__[this.__index__++];return{done:c,value:v}}function UY(){return this}function VY(c){for(var v,C=this;C instanceof Hf;){var A=BP(C);A.__index__=0,A.__values__=n,v?j.__wrapped__=A:v=A;var j=A;C=C.__wrapped__}return j.__wrapped__=c,v}function GY(){var c=this.__wrapped__;if(c instanceof Yt){var v=c;return this.__actions__.length&&(v=new Yt(this)),v=v.reverse(),v.__actions__.push({func:ab,args:[V4],thisArg:n}),new fo(v,this.__chain__)}return this.thru(V4)}function qY(){return xl(this.__wrapped__,this.__actions__)}var KY=fg(function(c,v,C){an.call(c,C)?++c[C]:fa(c,C,1)});function YY(c,v,C){var A=$t(c)?zn:dv;return C&&mo(c,v,C)&&(v=n),A(c,Oe(v,3))}function XY(c,v){var C=$t(c)?Oo:pa;return C(c,Oe(v,3))}var ZY=kv(zP),QY=kv(HP);function JY(c,v){return Vr(sb(c,v),1)}function eX(c,v){return Vr(sb(c,v),Q)}function tX(c,v,C){return C=C===n?1:Ft(C),Vr(sb(c,v),C)}function KP(c,v){var C=$t(c)?Zn:Ps;return C(c,Oe(v,3))}function YP(c,v){var C=$t(c)?Ao:Kp;return C(c,Oe(v,3))}var nX=fg(function(c,v,C){an.call(c,C)?c[C].push(v):fa(c,C,[v])});function rX(c,v,C,A){c=$o(c)?c:vg(c),C=C&&!A?Ft(C):0;var j=c.length;return C<0&&(C=Or(j+C,0)),fb(c)?C<=j&&c.indexOf(v,C)>-1:!!j&&Lc(c,v,C)>-1}var iX=Tt(function(c,v,C){var A=-1,j=typeof v=="function",H=$o(c)?me(c.length):[];return Ps(c,function(Z){H[++A]=j?Ii(v,Z,C):Ts(Z,v,C)}),H}),oX=fg(function(c,v,C){fa(c,C,v)});function sb(c,v){var C=$t(c)?Hn:Dr;return C(c,Oe(v,3))}function aX(c,v,C,A){return c==null?[]:($t(v)||(v=v==null?[]:[v]),C=A?n:C,$t(C)||(C=C==null?[]:[C]),$i(c,v,C))}var sX=fg(function(c,v,C){c[C?0:1].push(v)},function(){return[[],[]]});function lX(c,v,C){var A=$t(c)?kf:Ip,j=arguments.length<3;return A(c,Oe(v,4),C,j,Ps)}function uX(c,v,C){var A=$t(c)?P2:Ip,j=arguments.length<3;return A(c,Oe(v,4),C,j,Kp)}function cX(c,v){var C=$t(c)?Oo:pa;return C(c,cb(Oe(v,3)))}function dX(c){var v=$t(c)?qc:og;return v(c)}function fX(c,v,C){(C?mo(c,v,C):v===n)?v=1:v=Ft(v);var A=$t(c)?Si:qf;return A(c,v)}function hX(c){var v=$t(c)?j4:_i;return v(c)}function pX(c){if(c==null)return 0;if($o(c))return fb(c)?za(c):c.length;var v=ki(c);return v==Fe||v==Ie?c.size:Gr(c).length}function gX(c,v,C){var A=$t(c)?Tc:jo;return C&&mo(c,v,C)&&(v=n),A(c,Oe(v,3))}var mX=Tt(function(c,v){if(c==null)return[];var C=v.length;return C>1&&mo(c,v[0],v[1])?v=[]:C>2&&mo(v[0],v[1],v[2])&&(v=[v[0]]),$i(c,Vr(v,1),[])}),lb=$2||function(){return St.Date.now()};function vX(c,v){if(typeof v!="function")throw new Di(a);return c=Ft(c),function(){if(--c<1)return v.apply(this,arguments)}}function XP(c,v,C){return v=C?n:v,v=c&&v==null?c.length:v,he(c,I,n,n,n,n,v)}function ZP(c,v){var C;if(typeof v!="function")throw new Di(a);return c=Ft(c),function(){return--c>0&&(C=v.apply(this,arguments)),c<=1&&(v=n),C}}var q4=Tt(function(c,v,C){var A=E;if(C.length){var j=ua(C,et(q4));A|=O}return he(c,A,v,C,j)}),QP=Tt(function(c,v,C){var A=E|_;if(C.length){var j=ua(C,et(QP));A|=O}return he(v,A,c,C,j)});function JP(c,v,C){v=C?n:v;var A=he(c,T,n,n,n,n,n,v);return A.placeholder=JP.placeholder,A}function eT(c,v,C){v=C?n:v;var A=he(c,L,n,n,n,n,n,v);return A.placeholder=eT.placeholder,A}function tT(c,v,C){var A,j,H,Z,te,ce,_e=0,Ee=!1,Re=!1,nt=!0;if(typeof c!="function")throw new Di(a);v=Ga(v)||0,Cr(C)&&(Ee=!!C.leading,Re="maxWait"in C,H=Re?Or(Ga(C.maxWait)||0,v):H,nt="trailing"in C?!!C.trailing:nt);function gt(Yr){var Rs=A,Lu=j;return A=j=n,_e=Yr,Z=c.apply(Lu,Rs),Z}function _t(Yr){return _e=Yr,te=Mv(Xt,v),Ee?gt(Yr):Z}function Vt(Yr){var Rs=Yr-ce,Lu=Yr-_e,xT=v-Rs;return Re?hi(xT,H-Lu):xT}function kt(Yr){var Rs=Yr-ce,Lu=Yr-_e;return ce===n||Rs>=v||Rs<0||Re&&Lu>=H}function Xt(){var Yr=lb();if(kt(Yr))return tn(Yr);te=Mv(Xt,Vt(Yr))}function tn(Yr){return te=n,nt&&A?gt(Yr):(A=j=n,Z)}function ya(){te!==n&&xv(te),_e=0,A=ce=j=te=n}function vo(){return te===n?Z:tn(lb())}function ba(){var Yr=lb(),Rs=kt(Yr);if(A=arguments,j=this,ce=Yr,Rs){if(te===n)return _t(ce);if(Re)return xv(te),te=Mv(Xt,v),gt(ce)}return te===n&&(te=Mv(Xt,v)),Z}return ba.cancel=ya,ba.flush=vo,ba}var yX=Tt(function(c,v){return cv(c,1,v)}),bX=Tt(function(c,v,C){return cv(c,Ga(v)||0,C)});function xX(c){return he(c,W)}function ub(c,v){if(typeof c!="function"||v!=null&&typeof v!="function")throw new Di(a);var C=function(){var A=arguments,j=v?v.apply(this,A):A[0],H=C.cache;if(H.has(j))return H.get(j);var Z=c.apply(this,A);return C.cache=H.set(j,Z)||H,Z};return C.cache=new(ub.Cache||da),C}ub.Cache=da;function cb(c){if(typeof c!="function")throw new Di(a);return function(){var v=arguments;switch(v.length){case 0:return!c.call(this);case 1:return!c.call(this,v[0]);case 2:return!c.call(this,v[0],v[1]);case 3:return!c.call(this,v[0],v[1],v[2])}return!c.apply(this,v)}}function SX(c){return ZP(2,c)}var wX=F4(function(c,v){v=v.length==1&&$t(v[0])?Hn(v[0],Wr(Oe())):Hn(Vr(v,1),Wr(Oe()));var C=v.length;return Tt(function(A){for(var j=-1,H=hi(A.length,C);++j=v}),th=ng(function(){return arguments}())?ng:function(c){return jr(c)&&an.call(c,"callee")&&!X0.call(c,"callee")},$t=me.isArray,NX=di?Wr(di):hv;function $o(c){return c!=null&&db(c.length)&&!Tu(c)}function Kr(c){return jr(c)&&$o(c)}function $X(c){return c===!0||c===!1||jr(c)&&Ci(c)==Xe}var id=F2||o5,FX=Lo?Wr(Lo):pv;function BX(c){return jr(c)&&c.nodeType===1&&!Lv(c)}function zX(c){if(c==null)return!0;if($o(c)&&($t(c)||typeof c=="string"||typeof c.splice=="function"||id(c)||mg(c)||th(c)))return!c.length;var v=ki(c);if(v==Fe||v==Ie)return!c.size;if(Tv(c))return!Gr(c).length;for(var C in c)if(an.call(c,C))return!1;return!0}function HX(c,v){return Zc(c,v)}function WX(c,v,C){C=typeof C=="function"?C:n;var A=C?C(c,v):n;return A===n?Zc(c,v,n,C):!!A}function Y4(c){if(!jr(c))return!1;var v=Ci(c);return v==Be||v==yt||typeof c.message=="string"&&typeof c.name=="string"&&!Lv(c)}function UX(c){return typeof c=="number"&&zp(c)}function Tu(c){if(!Cr(c))return!1;var v=Ci(c);return v==Ae||v==bt||v==Qe||v==on}function rT(c){return typeof c=="number"&&c==Ft(c)}function db(c){return typeof c=="number"&&c>-1&&c%1==0&&c<=G}function Cr(c){var v=typeof c;return c!=null&&(v=="object"||v=="function")}function jr(c){return c!=null&&typeof c=="object"}var iT=uo?Wr(uo):$4;function VX(c,v){return c===v||Qc(c,v,At(v))}function GX(c,v,C){return C=typeof C=="function"?C:n,Qc(c,v,At(v),C)}function qX(c){return oT(c)&&c!=+c}function KX(c){if(AK(c))throw new Lt(o);return rg(c)}function YX(c){return c===null}function XX(c){return c==null}function oT(c){return typeof c=="number"||jr(c)&&Ci(c)==at}function Lv(c){if(!jr(c)||Ci(c)!=mt)return!1;var v=$c(c);if(v===null)return!0;var C=an.call(v,"constructor")&&v.constructor;return typeof C=="function"&&C instanceof C&&xr.call(C)==xi}var X4=Fa?Wr(Fa):Sr;function ZX(c){return rT(c)&&c>=-G&&c<=G}var aT=ul?Wr(ul):Wt;function fb(c){return typeof c=="string"||!$t(c)&&jr(c)&&Ci(c)==He}function va(c){return typeof c=="symbol"||jr(c)&&Ci(c)==Ue}var mg=z0?Wr(z0):ei;function QX(c){return c===n}function JX(c){return jr(c)&&ki(c)==je}function eZ(c){return jr(c)&&Ci(c)==vt}var tZ=P(ml),nZ=P(function(c,v){return c<=v});function sT(c){if(!c)return[];if($o(c))return fb(c)?Qi(c):Bi(c);if(Fc&&c[Fc])return O2(c[Fc]());var v=ki(c),C=v==Fe?Np:v==Ie?Of:vg;return C(c)}function Mu(c){if(!c)return c===0?c:0;if(c=Ga(c),c===Q||c===-Q){var v=c<0?-1:1;return v*Y}return c===c?c:0}function Ft(c){var v=Mu(c),C=v%1;return v===v?C?v-C:v:0}function lT(c){return c?Cu(Ft(c),0,fe):0}function Ga(c){if(typeof c=="number")return c;if(va(c))return ee;if(Cr(c)){var v=typeof c.valueOf=="function"?c.valueOf():c;c=Cr(v)?v+"":v}if(typeof c!="string")return c===0?c:+c;c=co(c);var C=R0.test(c);return C||D0.test(c)?ot(c.slice(2),C?2:8):O0.test(c)?ee:+c}function uT(c){return Ua(c,Fo(c))}function rZ(c){return c?Cu(Ft(c),-G,G):c===0?c:0}function _n(c){return c==null?"":po(c)}var iZ=go(function(c,v){if(Tv(v)||$o(v)){Ua(v,Ei(v),c);return}for(var C in v)an.call(v,C)&&pl(c,C,v[C])}),cT=go(function(c,v){Ua(v,Fo(v),c)}),hb=go(function(c,v,C,A){Ua(v,Fo(v),c,A)}),oZ=go(function(c,v,C,A){Ua(v,Ei(v),c,A)}),aZ=gr(Vp);function sZ(c,v){var C=wu(c);return v==null?C:st(C,v)}var lZ=Tt(function(c,v){c=dn(c);var C=-1,A=v.length,j=A>2?v[2]:n;for(j&&mo(v[0],v[1],j)&&(A=1);++C1),H}),Ua(c,ge(c),C),A&&(C=wi(C,h|m|y,Rt));for(var j=v.length;j--;)cg(C,v[j]);return C});function EZ(c,v){return fT(c,cb(Oe(v)))}var PZ=gr(function(c,v){return c==null?{}:vv(c,v)});function fT(c,v){if(c==null)return{};var C=Hn(ge(c),function(A){return[A]});return v=Oe(v),ig(c,C,function(A,j){return v(A,j[0])})}function TZ(c,v,C){v=Sl(v,c);var A=-1,j=v.length;for(j||(j=1,c=n);++Av){var A=c;c=v,v=A}if(C||c%1||v%1){var j=J0();return hi(c+j*(v-c+pe("1e-"+((j+"").length-1))),v)}return Gf(c,v)}var FZ=_l(function(c,v,C){return v=v.toLowerCase(),c+(C?gT(v):v)});function gT(c){return J4(_n(c).toLowerCase())}function mT(c){return c=_n(c),c&&c.replace(N0,A2).replace(Mp,"")}function BZ(c,v,C){c=_n(c),v=po(v);var A=c.length;C=C===n?A:Cu(Ft(C),0,A);var j=C;return C-=v.length,C>=0&&c.slice(C,j)==v}function zZ(c){return c=_n(c),c&&Na.test(c)?c.replace(Xi,_s):c}function HZ(c){return c=_n(c),c&&E0.test(c)?c.replace(mf,"\\$&"):c}var WZ=_l(function(c,v,C){return c+(C?"-":"")+v.toLowerCase()}),UZ=_l(function(c,v,C){return c+(C?" ":"")+v.toLowerCase()}),VZ=pg("toLowerCase");function GZ(c,v,C){c=_n(c),v=Ft(v);var A=v?za(c):0;if(!v||A>=v)return c;var j=(v-A)/2;return f(Su(j),C)+c+f(Ff(j),C)}function qZ(c,v,C){c=_n(c),v=Ft(v);var A=v?za(c):0;return v&&A>>0,C?(c=_n(c),c&&(typeof v=="string"||v!=null&&!X4(v))&&(v=po(v),!v&&bu(c))?Ls(Qi(c),0,C):c.split(v,C)):[]}var eQ=_l(function(c,v,C){return c+(C?" ":"")+J4(v)});function tQ(c,v,C){return c=_n(c),C=C==null?0:Cu(Ft(C),0,c.length),v=po(v),c.slice(C,C+v.length)==v}function nQ(c,v,C){var A=F.templateSettings;C&&mo(c,v,C)&&(v=n),c=_n(c),v=hb({},v,A,We);var j=hb({},v.imports,A.imports,We),H=Ei(j),Z=Af(j,H),te,ce,_e=0,Ee=v.interpolate||rl,Re="__p += '",nt=If((v.escape||rl).source+"|"+Ee.source+"|"+(Ee===bc?A0:rl).source+"|"+(v.evaluate||rl).source+"|$","g"),gt="//# sourceURL="+(an.call(v,"sourceURL")?(v.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Ap+"]")+` -`;c.replace(nt,function(kt,Xt,tn,ya,vo,ba){return tn||(tn=ya),Re+=c.slice(_e,ba).replace($0,dl),Xt&&(te=!0,Re+=`' + +`)}function MK(c){return $t(c)||th(c)||!!(Z0&&c&&c[Z0])}function Pu(c,v){var C=typeof c;return v=v??G,!!v&&(C=="number"||C!="symbol"&&j0.test(c))&&c>-1&&c%1==0&&c0){if(++v>=ne)return arguments[0]}else v=0;return c.apply(n,arguments)}}function ob(c,v){var C=-1,A=c.length,j=A-1;for(v=v===n?A:v;++C1?c[v-1]:n;return C=typeof C=="function"?(c.pop(),C):n,GP(c,C)});function qP(c){var v=F(c);return v.__chain__=!0,v}function BY(c,v){return v(c),c}function ab(c,v){return v(c)}var zY=gr(function(c){var v=c.length,C=v?c[0]:0,A=this.__wrapped__,j=function(H){return Vp(H,c)};return v>1||this.__actions__.length||!(A instanceof Yt)||!Pu(C)?this.thru(j):(A=A.slice(C,+C+(v?1:0)),A.__actions__.push({func:ab,args:[j],thisArg:n}),new fo(A,this.__chain__).thru(function(H){return v&&!H.length&&H.push(n),H}))});function HY(){return qP(this)}function WY(){return new fo(this.value(),this.__chain__)}function UY(){this.__values__===n&&(this.__values__=sT(this.value()));var c=this.__index__>=this.__values__.length,v=c?n:this.__values__[this.__index__++];return{done:c,value:v}}function VY(){return this}function GY(c){for(var v,C=this;C instanceof Hf;){var A=BP(C);A.__index__=0,A.__values__=n,v?j.__wrapped__=A:v=A;var j=A;C=C.__wrapped__}return j.__wrapped__=c,v}function qY(){var c=this.__wrapped__;if(c instanceof Yt){var v=c;return this.__actions__.length&&(v=new Yt(this)),v=v.reverse(),v.__actions__.push({func:ab,args:[V4],thisArg:n}),new fo(v,this.__chain__)}return this.thru(V4)}function KY(){return xl(this.__wrapped__,this.__actions__)}var YY=fg(function(c,v,C){an.call(c,C)?++c[C]:fa(c,C,1)});function XY(c,v,C){var A=$t(c)?zn:dv;return C&&mo(c,v,C)&&(v=n),A(c,Oe(v,3))}function ZY(c,v){var C=$t(c)?Oo:pa;return C(c,Oe(v,3))}var QY=kv(zP),JY=kv(HP);function eX(c,v){return Vr(sb(c,v),1)}function tX(c,v){return Vr(sb(c,v),Q)}function nX(c,v,C){return C=C===n?1:Ft(C),Vr(sb(c,v),C)}function KP(c,v){var C=$t(c)?Zn:Ps;return C(c,Oe(v,3))}function YP(c,v){var C=$t(c)?Ao:Kp;return C(c,Oe(v,3))}var rX=fg(function(c,v,C){an.call(c,C)?c[C].push(v):fa(c,C,[v])});function iX(c,v,C,A){c=$o(c)?c:vg(c),C=C&&!A?Ft(C):0;var j=c.length;return C<0&&(C=Or(j+C,0)),fb(c)?C<=j&&c.indexOf(v,C)>-1:!!j&&Lc(c,v,C)>-1}var oX=Tt(function(c,v,C){var A=-1,j=typeof v=="function",H=$o(c)?me(c.length):[];return Ps(c,function(Z){H[++A]=j?Ii(v,Z,C):Ts(Z,v,C)}),H}),aX=fg(function(c,v,C){fa(c,C,v)});function sb(c,v){var C=$t(c)?Hn:Dr;return C(c,Oe(v,3))}function sX(c,v,C,A){return c==null?[]:($t(v)||(v=v==null?[]:[v]),C=A?n:C,$t(C)||(C=C==null?[]:[C]),$i(c,v,C))}var lX=fg(function(c,v,C){c[C?0:1].push(v)},function(){return[[],[]]});function uX(c,v,C){var A=$t(c)?kf:Ip,j=arguments.length<3;return A(c,Oe(v,4),C,j,Ps)}function cX(c,v,C){var A=$t(c)?P2:Ip,j=arguments.length<3;return A(c,Oe(v,4),C,j,Kp)}function dX(c,v){var C=$t(c)?Oo:pa;return C(c,cb(Oe(v,3)))}function fX(c){var v=$t(c)?qc:og;return v(c)}function hX(c,v,C){(C?mo(c,v,C):v===n)?v=1:v=Ft(v);var A=$t(c)?Si:qf;return A(c,v)}function pX(c){var v=$t(c)?j4:_i;return v(c)}function gX(c){if(c==null)return 0;if($o(c))return fb(c)?za(c):c.length;var v=ki(c);return v==Fe||v==Ie?c.size:Gr(c).length}function mX(c,v,C){var A=$t(c)?Tc:jo;return C&&mo(c,v,C)&&(v=n),A(c,Oe(v,3))}var vX=Tt(function(c,v){if(c==null)return[];var C=v.length;return C>1&&mo(c,v[0],v[1])?v=[]:C>2&&mo(v[0],v[1],v[2])&&(v=[v[0]]),$i(c,Vr(v,1),[])}),lb=$2||function(){return St.Date.now()};function yX(c,v){if(typeof v!="function")throw new Di(a);return c=Ft(c),function(){if(--c<1)return v.apply(this,arguments)}}function XP(c,v,C){return v=C?n:v,v=c&&v==null?c.length:v,he(c,I,n,n,n,n,v)}function ZP(c,v){var C;if(typeof v!="function")throw new Di(a);return c=Ft(c),function(){return--c>0&&(C=v.apply(this,arguments)),c<=1&&(v=n),C}}var q4=Tt(function(c,v,C){var A=E;if(C.length){var j=ua(C,et(q4));A|=O}return he(c,A,v,C,j)}),QP=Tt(function(c,v,C){var A=E|_;if(C.length){var j=ua(C,et(QP));A|=O}return he(v,A,c,C,j)});function JP(c,v,C){v=C?n:v;var A=he(c,T,n,n,n,n,n,v);return A.placeholder=JP.placeholder,A}function eT(c,v,C){v=C?n:v;var A=he(c,L,n,n,n,n,n,v);return A.placeholder=eT.placeholder,A}function tT(c,v,C){var A,j,H,Z,te,ce,ke=0,Pe=!1,Re=!1,nt=!0;if(typeof c!="function")throw new Di(a);v=Ga(v)||0,Cr(C)&&(Pe=!!C.leading,Re="maxWait"in C,H=Re?Or(Ga(C.maxWait)||0,v):H,nt="trailing"in C?!!C.trailing:nt);function gt(Yr){var Rs=A,Lu=j;return A=j=n,ke=Yr,Z=c.apply(Lu,Rs),Z}function _t(Yr){return ke=Yr,te=Mv(Xt,v),Pe?gt(Yr):Z}function Vt(Yr){var Rs=Yr-ce,Lu=Yr-ke,xT=v-Rs;return Re?hi(xT,H-Lu):xT}function kt(Yr){var Rs=Yr-ce,Lu=Yr-ke;return ce===n||Rs>=v||Rs<0||Re&&Lu>=H}function Xt(){var Yr=lb();if(kt(Yr))return tn(Yr);te=Mv(Xt,Vt(Yr))}function tn(Yr){return te=n,nt&&A?gt(Yr):(A=j=n,Z)}function ya(){te!==n&&xv(te),ke=0,A=ce=j=te=n}function vo(){return te===n?Z:tn(lb())}function ba(){var Yr=lb(),Rs=kt(Yr);if(A=arguments,j=this,ce=Yr,Rs){if(te===n)return _t(ce);if(Re)return xv(te),te=Mv(Xt,v),gt(ce)}return te===n&&(te=Mv(Xt,v)),Z}return ba.cancel=ya,ba.flush=vo,ba}var bX=Tt(function(c,v){return cv(c,1,v)}),xX=Tt(function(c,v,C){return cv(c,Ga(v)||0,C)});function SX(c){return he(c,W)}function ub(c,v){if(typeof c!="function"||v!=null&&typeof v!="function")throw new Di(a);var C=function(){var A=arguments,j=v?v.apply(this,A):A[0],H=C.cache;if(H.has(j))return H.get(j);var Z=c.apply(this,A);return C.cache=H.set(j,Z)||H,Z};return C.cache=new(ub.Cache||da),C}ub.Cache=da;function cb(c){if(typeof c!="function")throw new Di(a);return function(){var v=arguments;switch(v.length){case 0:return!c.call(this);case 1:return!c.call(this,v[0]);case 2:return!c.call(this,v[0],v[1]);case 3:return!c.call(this,v[0],v[1],v[2])}return!c.apply(this,v)}}function wX(c){return ZP(2,c)}var CX=F4(function(c,v){v=v.length==1&&$t(v[0])?Hn(v[0],Wr(Oe())):Hn(Vr(v,1),Wr(Oe()));var C=v.length;return Tt(function(A){for(var j=-1,H=hi(A.length,C);++j=v}),th=ng(function(){return arguments}())?ng:function(c){return jr(c)&&an.call(c,"callee")&&!X0.call(c,"callee")},$t=me.isArray,$X=di?Wr(di):hv;function $o(c){return c!=null&&db(c.length)&&!Tu(c)}function Kr(c){return jr(c)&&$o(c)}function FX(c){return c===!0||c===!1||jr(c)&&Ci(c)==Xe}var id=F2||o5,BX=Lo?Wr(Lo):pv;function zX(c){return jr(c)&&c.nodeType===1&&!Lv(c)}function HX(c){if(c==null)return!0;if($o(c)&&($t(c)||typeof c=="string"||typeof c.splice=="function"||id(c)||mg(c)||th(c)))return!c.length;var v=ki(c);if(v==Fe||v==Ie)return!c.size;if(Tv(c))return!Gr(c).length;for(var C in c)if(an.call(c,C))return!1;return!0}function WX(c,v){return Zc(c,v)}function UX(c,v,C){C=typeof C=="function"?C:n;var A=C?C(c,v):n;return A===n?Zc(c,v,n,C):!!A}function Y4(c){if(!jr(c))return!1;var v=Ci(c);return v==Be||v==yt||typeof c.message=="string"&&typeof c.name=="string"&&!Lv(c)}function VX(c){return typeof c=="number"&&zp(c)}function Tu(c){if(!Cr(c))return!1;var v=Ci(c);return v==Ae||v==bt||v==Je||v==on}function rT(c){return typeof c=="number"&&c==Ft(c)}function db(c){return typeof c=="number"&&c>-1&&c%1==0&&c<=G}function Cr(c){var v=typeof c;return c!=null&&(v=="object"||v=="function")}function jr(c){return c!=null&&typeof c=="object"}var iT=uo?Wr(uo):$4;function GX(c,v){return c===v||Qc(c,v,At(v))}function qX(c,v,C){return C=typeof C=="function"?C:n,Qc(c,v,At(v),C)}function KX(c){return oT(c)&&c!=+c}function YX(c){if(OK(c))throw new Lt(o);return rg(c)}function XX(c){return c===null}function ZX(c){return c==null}function oT(c){return typeof c=="number"||jr(c)&&Ci(c)==at}function Lv(c){if(!jr(c)||Ci(c)!=mt)return!1;var v=$c(c);if(v===null)return!0;var C=an.call(v,"constructor")&&v.constructor;return typeof C=="function"&&C instanceof C&&xr.call(C)==xi}var X4=Fa?Wr(Fa):Sr;function QX(c){return rT(c)&&c>=-G&&c<=G}var aT=ul?Wr(ul):Wt;function fb(c){return typeof c=="string"||!$t(c)&&jr(c)&&Ci(c)==He}function va(c){return typeof c=="symbol"||jr(c)&&Ci(c)==Ue}var mg=z0?Wr(z0):ei;function JX(c){return c===n}function eZ(c){return jr(c)&&ki(c)==je}function tZ(c){return jr(c)&&Ci(c)==vt}var nZ=P(ml),rZ=P(function(c,v){return c<=v});function sT(c){if(!c)return[];if($o(c))return fb(c)?Qi(c):Bi(c);if(Fc&&c[Fc])return O2(c[Fc]());var v=ki(c),C=v==Fe?Np:v==Ie?Of:vg;return C(c)}function Mu(c){if(!c)return c===0?c:0;if(c=Ga(c),c===Q||c===-Q){var v=c<0?-1:1;return v*Y}return c===c?c:0}function Ft(c){var v=Mu(c),C=v%1;return v===v?C?v-C:v:0}function lT(c){return c?Cu(Ft(c),0,fe):0}function Ga(c){if(typeof c=="number")return c;if(va(c))return ee;if(Cr(c)){var v=typeof c.valueOf=="function"?c.valueOf():c;c=Cr(v)?v+"":v}if(typeof c!="string")return c===0?c:+c;c=co(c);var C=R0.test(c);return C||D0.test(c)?ot(c.slice(2),C?2:8):O0.test(c)?ee:+c}function uT(c){return Ua(c,Fo(c))}function iZ(c){return c?Cu(Ft(c),-G,G):c===0?c:0}function _n(c){return c==null?"":po(c)}var oZ=go(function(c,v){if(Tv(v)||$o(v)){Ua(v,Ei(v),c);return}for(var C in v)an.call(v,C)&&pl(c,C,v[C])}),cT=go(function(c,v){Ua(v,Fo(v),c)}),hb=go(function(c,v,C,A){Ua(v,Fo(v),c,A)}),aZ=go(function(c,v,C,A){Ua(v,Ei(v),c,A)}),sZ=gr(Vp);function lZ(c,v){var C=wu(c);return v==null?C:st(C,v)}var uZ=Tt(function(c,v){c=dn(c);var C=-1,A=v.length,j=A>2?v[2]:n;for(j&&mo(v[0],v[1],j)&&(A=1);++C1),H}),Ua(c,ge(c),C),A&&(C=wi(C,p|m|y,Rt));for(var j=v.length;j--;)cg(C,v[j]);return C});function PZ(c,v){return fT(c,cb(Oe(v)))}var TZ=gr(function(c,v){return c==null?{}:vv(c,v)});function fT(c,v){if(c==null)return{};var C=Hn(ge(c),function(A){return[A]});return v=Oe(v),ig(c,C,function(A,j){return v(A,j[0])})}function MZ(c,v,C){v=Sl(v,c);var A=-1,j=v.length;for(j||(j=1,c=n);++Av){var A=c;c=v,v=A}if(C||c%1||v%1){var j=J0();return hi(c+j*(v-c+pe("1e-"+((j+"").length-1))),v)}return Gf(c,v)}var BZ=_l(function(c,v,C){return v=v.toLowerCase(),c+(C?gT(v):v)});function gT(c){return J4(_n(c).toLowerCase())}function mT(c){return c=_n(c),c&&c.replace(N0,A2).replace(Mp,"")}function zZ(c,v,C){c=_n(c),v=po(v);var A=c.length;C=C===n?A:Cu(Ft(C),0,A);var j=C;return C-=v.length,C>=0&&c.slice(C,j)==v}function HZ(c){return c=_n(c),c&&Na.test(c)?c.replace(Xi,_s):c}function WZ(c){return c=_n(c),c&&E0.test(c)?c.replace(mf,"\\$&"):c}var UZ=_l(function(c,v,C){return c+(C?"-":"")+v.toLowerCase()}),VZ=_l(function(c,v,C){return c+(C?" ":"")+v.toLowerCase()}),GZ=pg("toLowerCase");function qZ(c,v,C){c=_n(c),v=Ft(v);var A=v?za(c):0;if(!v||A>=v)return c;var j=(v-A)/2;return f(Su(j),C)+c+f(Ff(j),C)}function KZ(c,v,C){c=_n(c),v=Ft(v);var A=v?za(c):0;return v&&A>>0,C?(c=_n(c),c&&(typeof v=="string"||v!=null&&!X4(v))&&(v=po(v),!v&&bu(c))?Ls(Qi(c),0,C):c.split(v,C)):[]}var tQ=_l(function(c,v,C){return c+(C?" ":"")+J4(v)});function nQ(c,v,C){return c=_n(c),C=C==null?0:Cu(Ft(C),0,c.length),v=po(v),c.slice(C,C+v.length)==v}function rQ(c,v,C){var A=F.templateSettings;C&&mo(c,v,C)&&(v=n),c=_n(c),v=hb({},v,A,We);var j=hb({},v.imports,A.imports,We),H=Ei(j),Z=Af(j,H),te,ce,ke=0,Pe=v.interpolate||rl,Re="__p += '",nt=If((v.escape||rl).source+"|"+Pe.source+"|"+(Pe===bc?A0:rl).source+"|"+(v.evaluate||rl).source+"|$","g"),gt="//# sourceURL="+(an.call(v,"sourceURL")?(v.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Ap+"]")+` +`;c.replace(nt,function(kt,Xt,tn,ya,vo,ba){return tn||(tn=ya),Re+=c.slice(ke,ba).replace($0,dl),Xt&&(te=!0,Re+=`' + __e(`+Xt+`) + '`),vo&&(ce=!0,Re+=`'; `+vo+`; __p += '`),tn&&(Re+=`' + ((__t = (`+tn+`)) == null ? '' : __t) + -'`),_e=ba+kt.length,kt}),Re+=`'; +'`),ke=ba+kt.length,kt}),Re+=`'; `;var _t=an.call(v,"variable")&&v.variable;if(!_t)Re=`with (obj) { `+Re+` } @@ -473,9 +473,9 @@ __p += '`),tn&&(Re+=`' + function print() { __p += __j.call(arguments, '') } `:`; `)+Re+`return __p -}`;var Vt=yT(function(){return en(H,gt+"return "+Re).apply(n,Z)});if(Vt.source=Re,Y4(Vt))throw Vt;return Vt}function rQ(c){return _n(c).toLowerCase()}function iQ(c){return _n(c).toUpperCase()}function oQ(c,v,C){if(c=_n(c),c&&(C||v===n))return co(c);if(!c||!(v=po(v)))return c;var A=Qi(c),j=Qi(v),H=la(A,j),Z=Cs(A,j)+1;return Ls(A,H,Z).join("")}function aQ(c,v,C){if(c=_n(c),c&&(C||v===n))return c.slice(0,G0(c)+1);if(!c||!(v=po(v)))return c;var A=Qi(c),j=Cs(A,Qi(v))+1;return Ls(A,0,j).join("")}function sQ(c,v,C){if(c=_n(c),c&&(C||v===n))return c.replace(xc,"");if(!c||!(v=po(v)))return c;var A=Qi(c),j=la(A,Qi(v));return Ls(A,j).join("")}function lQ(c,v){var C=B,A=K;if(Cr(v)){var j="separator"in v?v.separator:j;C="length"in v?Ft(v.length):C,A="omission"in v?po(v.omission):A}c=_n(c);var H=c.length;if(bu(c)){var Z=Qi(c);H=Z.length}if(C>=H)return c;var te=C-za(A);if(te<1)return A;var ce=Z?Ls(Z,0,te).join(""):c.slice(0,te);if(j===n)return ce+A;if(Z&&(te+=ce.length-te),X4(j)){if(c.slice(te).search(j)){var _e,Ee=ce;for(j.global||(j=If(j.source,_n(bs.exec(j))+"g")),j.lastIndex=0;_e=j.exec(Ee);)var Re=_e.index;ce=ce.slice(0,Re===n?te:Re)}}else if(c.indexOf(po(j),te)!=te){var nt=ce.lastIndexOf(j);nt>-1&&(ce=ce.slice(0,nt))}return ce+A}function uQ(c){return c=_n(c),c&&_0.test(c)?c.replace(ys,D2):c}var cQ=_l(function(c,v,C){return c+(C?" ":"")+v.toUpperCase()}),J4=pg("toUpperCase");function vT(c,v,C){return c=_n(c),v=C?n:v,v===n?jp(c)?Rf(c):W0(c):c.match(v)||[]}var yT=Tt(function(c,v){try{return Ii(c,n,v)}catch(C){return Y4(C)?C:new Lt(C)}}),dQ=gr(function(c,v){return Zn(v,function(C){C=kl(C),fa(c,C,q4(c[C],c))}),c});function fQ(c){var v=c==null?0:c.length,C=Oe();return c=v?Hn(c,function(A){if(typeof A[1]!="function")throw new Di(a);return[C(A[0]),A[1]]}):[],Tt(function(A){for(var j=-1;++jG)return[];var C=fe,A=hi(c,fe);v=Oe(v),c-=fe;for(var j=Lf(A,v);++C0||v<0)?new Yt(C):(c<0?C=C.takeRight(-c):c&&(C=C.drop(c)),v!==n&&(v=Ft(v),C=v<0?C.dropRight(-v):C.take(v-c)),C)},Yt.prototype.takeRightWhile=function(c){return this.reverse().takeWhile(c).reverse()},Yt.prototype.toArray=function(){return this.take(fe)},ga(Yt.prototype,function(c,v){var C=/^(?:filter|find|map|reject)|While$/.test(v),A=/^(?:head|last)$/.test(v),j=F[A?"take"+(v=="last"?"Right":""):v],H=A||/^find/.test(v);j&&(F.prototype[v]=function(){var Z=this.__wrapped__,te=A?[1]:arguments,ce=Z instanceof Yt,_e=te[0],Ee=ce||$t(Z),Re=function(Xt){var tn=j.apply(F,Ba([Xt],te));return A&&nt?tn[0]:tn};Ee&&C&&typeof _e=="function"&&_e.length!=1&&(ce=Ee=!1);var nt=this.__chain__,gt=!!this.__actions__.length,_t=H&&!nt,Vt=ce&&!gt;if(!H&&Ee){Z=Vt?Z:new Yt(this);var kt=c.apply(Z,te);return kt.__actions__.push({func:ab,args:[Re],thisArg:n}),new fo(kt,nt)}return _t&&Vt?c.apply(this,te):(kt=this.thru(Re),_t?A?kt.value()[0]:kt.value():kt)})}),Zn(["pop","push","shift","sort","splice","unshift"],function(c){var v=Ic[c],C=/^(?:push|sort|unshift)$/.test(c)?"tap":"thru",A=/^(?:pop|shift)$/.test(c);F.prototype[c]=function(){var j=arguments;if(A&&!this.__chain__){var H=this.value();return v.apply($t(H)?H:[],j)}return this[C](function(Z){return v.apply($t(Z)?Z:[],j)})}}),ga(Yt.prototype,function(c,v){var C=F[v];if(C){var A=C.name+"";an.call(ks,A)||(ks[A]=[]),ks[A].push({name:v,func:C})}}),ks[Qf(n,_).name]=[{name:"wrapper",func:n}],Yt.prototype.clone=Ji,Yt.prototype.reverse=Ni,Yt.prototype.value=U2,F.prototype.at=BY,F.prototype.chain=zY,F.prototype.commit=HY,F.prototype.next=WY,F.prototype.plant=VY,F.prototype.reverse=GY,F.prototype.toJSON=F.prototype.valueOf=F.prototype.value=qY,F.prototype.first=F.prototype.head,Fc&&(F.prototype[Fc]=UY),F},Ha=Ro();Kt?((Kt.exports=Ha)._=Ha,Ot._=Ha):St._=Ha}).call(So)})(WSe,Pe);const Pg=(e,t,n,r,i,o,a)=>{const s=e/2-(n+i/2)*a,l=t/2-(r+o/2)*a;return{x:s,y:l}},Tg=(e,t,n,r,i=.95)=>{const o=e*i/n,a=t*i/r;return Math.min(1,Math.min(o,a))},USe=.999,VSe=.1,GSe=20,Vv=.95,KO=30,pk=10,YO=e=>({x:Math.floor(e.x),y:Math.floor(e.y)}),ih=e=>{const{width:t,height:n}=e,r={width:t,height:n},i=512*512,o=t/n;let a=t*n,s=448;for(;a1?(r.width=s,r.height=Hl(s/o,64)):o<1&&(r.height=s,r.width=Hl(s*o,64)),a=r.width*r.height;return r},qSe=e=>({width:Hl(e.width,64),height:Hl(e.height,64)}),IW=[{key:"Base",value:"base"},{key:"Mask",value:"mask"}],KSe=[{key:"Auto",value:"auto"},{key:"Manual",value:"manual"},{key:"None",value:"none"}],hE=e=>e.kind==="line"&&e.layer==="mask",YSe=e=>e.kind==="line"&&e.layer==="base",x3=e=>e.kind==="image"&&e.layer==="base",XSe=e=>e.kind==="fillRect"&&e.layer==="base",ZSe=e=>e.kind==="eraseRect"&&e.layer==="base",QSe=e=>e.kind==="line",p1={objects:[],stagingArea:{images:[],selectedImageIndex:-1}},JSe={boundingBoxCoordinates:{x:0,y:0},boundingBoxDimensions:{width:512,height:512},boundingBoxPreviewFill:{r:0,g:0,b:0,a:.5},boundingBoxScaleMethod:"auto",brushColor:{r:90,g:90,b:255,a:1},brushSize:50,canvasContainerDimensions:{width:0,height:0},colorPickerColor:{r:90,g:90,b:255,a:1},cursorPosition:null,doesCanvasNeedScaling:!1,futureLayerStates:[],isCanvasInitialized:!1,isDrawing:!1,isMaskEnabled:!0,isMouseOverBoundingBox:!1,isMoveBoundingBoxKeyHeld:!1,isMoveStageKeyHeld:!1,isMovingBoundingBox:!1,isMovingStage:!1,isTransformingBoundingBox:!1,layer:"base",layerState:p1,maskColor:{r:255,g:90,b:90,a:1},maxHistory:128,minimumStageScale:1,pastLayerStates:[],scaledBoundingBoxDimensions:{width:512,height:512},shouldAutoSave:!1,shouldCropToBoundingBoxOnSave:!1,shouldDarkenOutsideBoundingBox:!1,shouldLockBoundingBox:!1,shouldPreserveMaskedArea:!1,shouldRestrictStrokesToBox:!0,shouldShowBoundingBox:!0,shouldShowBrush:!0,shouldShowBrushPreview:!1,shouldShowCanvasDebugInfo:!1,shouldShowCheckboardTransparency:!1,shouldShowGrid:!0,shouldShowIntermediates:!0,shouldShowStagingImage:!0,shouldShowStagingOutline:!0,shouldSnapToGrid:!0,stageCoordinates:{x:0,y:0},stageDimensions:{width:0,height:0},stageScale:1,tool:"brush"},DW=ap({name:"canvas",initialState:JSe,reducers:{setTool:(e,t)=>{const n=t.payload;e.tool=t.payload,n!=="move"&&(e.isTransformingBoundingBox=!1,e.isMouseOverBoundingBox=!1,e.isMovingBoundingBox=!1,e.isMovingStage=!1)},setLayer:(e,t)=>{e.layer=t.payload},toggleTool:e=>{const t=e.tool;t!=="move"&&(e.tool=t==="brush"?"eraser":"brush")},setMaskColor:(e,t)=>{e.maskColor=t.payload},setBrushColor:(e,t)=>{e.brushColor=t.payload},setBrushSize:(e,t)=>{e.brushSize=t.payload},clearMask:e=>{e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.layerState.objects=e.layerState.objects.filter(t=>!hE(t)),e.futureLayerStates=[],e.shouldPreserveMaskedArea=!1},toggleShouldInvertMask:e=>{e.shouldPreserveMaskedArea=!e.shouldPreserveMaskedArea},toggleShouldShowMask:e=>{e.isMaskEnabled=!e.isMaskEnabled},setShouldPreserveMaskedArea:(e,t)=>{e.shouldPreserveMaskedArea=t.payload},setIsMaskEnabled:(e,t)=>{e.isMaskEnabled=t.payload,e.layer=t.payload?"mask":"base"},setShouldShowCheckboardTransparency:(e,t)=>{e.shouldShowCheckboardTransparency=t.payload},setShouldShowBrushPreview:(e,t)=>{e.shouldShowBrushPreview=t.payload},setShouldShowBrush:(e,t)=>{e.shouldShowBrush=t.payload},setCursorPosition:(e,t)=>{e.cursorPosition=t.payload},setInitialCanvasImage:(e,t)=>{const n=t.payload,{stageDimensions:r}=e,i={width:Cd(Pe.clamp(n.width,64,512),64),height:Cd(Pe.clamp(n.height,64,512),64)},o={x:Hl(n.width/2-i.width/2,64),y:Hl(n.height/2-i.height/2,64)};if(e.boundingBoxScaleMethod==="auto"){const l=ih(i);e.scaledBoundingBoxDimensions=l}e.boundingBoxDimensions=i,e.boundingBoxCoordinates=o,e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.layerState={...p1,objects:[{kind:"image",layer:"base",x:0,y:0,width:n.width,height:n.height,image:n}]},e.futureLayerStates=[],e.isCanvasInitialized=!1;const a=Tg(r.width,r.height,n.width,n.height,Vv),s=Pg(r.width,r.height,0,0,n.width,n.height,a);e.stageScale=a,e.stageCoordinates=s,e.doesCanvasNeedScaling=!0},setBoundingBoxDimensions:(e,t)=>{const n=qSe(t.payload);if(e.boundingBoxDimensions=n,e.boundingBoxScaleMethod==="auto"){const r=ih(n);e.scaledBoundingBoxDimensions=r}},setBoundingBoxCoordinates:(e,t)=>{e.boundingBoxCoordinates=YO(t.payload)},setStageCoordinates:(e,t)=>{e.stageCoordinates=t.payload},setBoundingBoxPreviewFill:(e,t)=>{e.boundingBoxPreviewFill=t.payload},setDoesCanvasNeedScaling:(e,t)=>{e.doesCanvasNeedScaling=t.payload},setStageScale:(e,t)=>{e.stageScale=t.payload},setShouldDarkenOutsideBoundingBox:(e,t)=>{e.shouldDarkenOutsideBoundingBox=t.payload},setIsDrawing:(e,t)=>{e.isDrawing=t.payload},clearCanvasHistory:e=>{e.pastLayerStates=[],e.futureLayerStates=[]},setShouldLockBoundingBox:(e,t)=>{e.shouldLockBoundingBox=t.payload},toggleShouldLockBoundingBox:e=>{e.shouldLockBoundingBox=!e.shouldLockBoundingBox},setShouldShowBoundingBox:(e,t)=>{e.shouldShowBoundingBox=t.payload},setIsTransformingBoundingBox:(e,t)=>{e.isTransformingBoundingBox=t.payload},setIsMovingBoundingBox:(e,t)=>{e.isMovingBoundingBox=t.payload},setIsMouseOverBoundingBox:(e,t)=>{e.isMouseOverBoundingBox=t.payload},setIsMoveBoundingBoxKeyHeld:(e,t)=>{e.isMoveBoundingBoxKeyHeld=t.payload},setIsMoveStageKeyHeld:(e,t)=>{e.isMoveStageKeyHeld=t.payload},addImageToStagingArea:(e,t)=>{const{boundingBox:n,image:r}=t.payload;!n||!r||(e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.stagingArea.images.push({kind:"image",layer:"base",...n,image:r}),e.layerState.stagingArea.selectedImageIndex=e.layerState.stagingArea.images.length-1,e.futureLayerStates=[])},discardStagedImages:e=>{e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.stagingArea={...p1.stagingArea},e.futureLayerStates=[],e.shouldShowStagingOutline=!0,e.shouldShowStagingOutline=!0},addFillRect:e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n,brushColor:r}=e;e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.objects.push({kind:"fillRect",layer:"base",...t,...n,color:r}),e.futureLayerStates=[]},addEraseRect:e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n}=e;e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.objects.push({kind:"eraseRect",layer:"base",...t,...n}),e.futureLayerStates=[]},addLine:(e,t)=>{const{tool:n,layer:r,brushColor:i,brushSize:o,shouldRestrictStrokesToBox:a}=e;if(n==="move"||n==="colorPicker")return;const s=o/2,l=r==="base"&&n==="brush"?{color:i}:{};e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift();const u={kind:"line",layer:r,tool:n,strokeWidth:s,points:t.payload,...l};a&&(u.clip={...e.boundingBoxCoordinates,...e.boundingBoxDimensions}),e.layerState.objects.push(u),e.futureLayerStates=[]},addPointToCurrentLine:(e,t)=>{const n=e.layerState.objects.findLast(QSe);n&&n.points.push(...t.payload)},undo:e=>{const t=e.pastLayerStates.pop();t&&(e.futureLayerStates.unshift(Pe.cloneDeep(e.layerState)),e.futureLayerStates.length>e.maxHistory&&e.futureLayerStates.pop(),e.layerState=t)},redo:e=>{const t=e.futureLayerStates.shift();t&&(e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState=t)},setShouldShowGrid:(e,t)=>{e.shouldShowGrid=t.payload},setIsMovingStage:(e,t)=>{e.isMovingStage=t.payload},setShouldSnapToGrid:(e,t)=>{e.shouldSnapToGrid=t.payload},setShouldAutoSave:(e,t)=>{e.shouldAutoSave=t.payload},setShouldShowIntermediates:(e,t)=>{e.shouldShowIntermediates=t.payload},resetCanvas:e=>{e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.layerState=p1,e.futureLayerStates=[]},setCanvasContainerDimensions:(e,t)=>{e.canvasContainerDimensions=t.payload},resizeAndScaleCanvas:e=>{const{width:t,height:n}=e.canvasContainerDimensions,r=e.layerState.objects.find(x3),i={width:Math.floor(t),height:Math.floor(n)};if(!r){const d=Tg(i.width,i.height,512,512,Vv),h=Pg(i.width,i.height,0,0,512,512,d),m={width:512,height:512};if(e.stageScale=d,e.stageCoordinates=h,e.stageDimensions=i,e.boundingBoxCoordinates={x:0,y:0},e.boundingBoxDimensions=m,e.boundingBoxScaleMethod==="auto"){const y=ih(m);e.scaledBoundingBoxDimensions=y}return}const{width:o,height:a}=r,l=Tg(t,n,o,a,.95),u=Pg(i.width,i.height,0,0,o,a,l);e.minimumStageScale=l,e.stageScale=l,e.stageCoordinates=YO(u),e.stageDimensions=i,e.isCanvasInitialized=!0},resizeCanvas:e=>{const{width:t,height:n}=e.canvasContainerDimensions,r={width:Math.floor(t),height:Math.floor(n)};if(e.stageDimensions=r,!e.layerState.objects.find(x3)){const i=Tg(r.width,r.height,512,512,Vv),o=Pg(r.width,r.height,0,0,512,512,i),a={width:512,height:512};if(e.stageScale=i,e.stageCoordinates=o,e.boundingBoxCoordinates={x:0,y:0},e.boundingBoxDimensions=a,e.boundingBoxScaleMethod==="auto"){const s=ih(a);e.scaledBoundingBoxDimensions=s}}},resetCanvasView:(e,t)=>{const{contentRect:n,shouldScaleTo1:r}=t.payload,{stageDimensions:{width:i,height:o}}=e,{x:a,y:s,width:l,height:u}=n;if(l!==0&&u!==0){const d=r?1:Tg(i,o,l,u,Vv),h=Pg(i,o,a,s,l,u,d);e.stageScale=d,e.stageCoordinates=h}else{const d=Tg(i,o,512,512,Vv),h=Pg(i,o,0,0,512,512,d),m={width:512,height:512};if(e.stageScale=d,e.stageCoordinates=h,e.boundingBoxCoordinates={x:0,y:0},e.boundingBoxDimensions=m,e.boundingBoxScaleMethod==="auto"){const y=ih(m);e.scaledBoundingBoxDimensions=y}}},nextStagingAreaImage:e=>{const t=e.layerState.stagingArea.selectedImageIndex,n=e.layerState.stagingArea.images.length;e.layerState.stagingArea.selectedImageIndex=Math.min(t+1,n-1)},prevStagingAreaImage:e=>{const t=e.layerState.stagingArea.selectedImageIndex;e.layerState.stagingArea.selectedImageIndex=Math.max(t-1,0)},commitStagingAreaImage:e=>{const{images:t,selectedImageIndex:n}=e.layerState.stagingArea;e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.objects.push({...t[n]}),e.layerState.stagingArea={...p1.stagingArea},e.futureLayerStates=[],e.shouldShowStagingOutline=!0,e.shouldShowStagingImage=!0},fitBoundingBoxToStage:e=>{const{boundingBoxDimensions:t,boundingBoxCoordinates:n,stageDimensions:r,stageScale:i}=e,o=r.width/i,a=r.height/i;if(n.x<0||n.x+t.width>o||n.y<0||n.y+t.height>a){const s={width:Cd(Pe.clamp(o,64,512),64),height:Cd(Pe.clamp(a,64,512),64)},l={x:Hl(o/2-s.width/2,64),y:Hl(a/2-s.height/2,64)};if(e.boundingBoxDimensions=s,e.boundingBoxCoordinates=l,e.boundingBoxScaleMethod==="auto"){const u=ih(s);e.scaledBoundingBoxDimensions=u}}},setBoundingBoxScaleMethod:(e,t)=>{if(e.boundingBoxScaleMethod=t.payload,t.payload==="auto"){const n=ih(e.boundingBoxDimensions);e.scaledBoundingBoxDimensions=n}},setScaledBoundingBoxDimensions:(e,t)=>{e.scaledBoundingBoxDimensions=t.payload},setShouldShowStagingImage:(e,t)=>{e.shouldShowStagingImage=t.payload},setShouldShowStagingOutline:(e,t)=>{e.shouldShowStagingOutline=t.payload},setShouldShowCanvasDebugInfo:(e,t)=>{e.shouldShowCanvasDebugInfo=t.payload},setShouldRestrictStrokesToBox:(e,t)=>{e.shouldRestrictStrokesToBox=t.payload},setShouldCropToBoundingBoxOnSave:(e,t)=>{e.shouldCropToBoundingBoxOnSave=t.payload},setColorPickerColor:(e,t)=>{e.colorPickerColor=t.payload},commitColorPickerColor:e=>{e.brushColor={...e.colorPickerColor,a:e.brushColor.a},e.tool="brush"},setMergedCanvas:(e,t)=>{e.pastLayerStates.push(Pe.cloneDeep(e.layerState)),e.futureLayerStates=[],e.layerState.objects=[t.payload]},resetCanvasInteractionState:e=>{e.cursorPosition=null,e.isDrawing=!1,e.isMouseOverBoundingBox=!1,e.isMoveBoundingBoxKeyHeld=!1,e.isMoveStageKeyHeld=!1,e.isMovingBoundingBox=!1,e.isMovingStage=!1,e.isTransformingBoundingBox=!1},mouseLeftCanvas:e=>{e.cursorPosition=null,e.isDrawing=!1,e.isMouseOverBoundingBox=!1,e.isMovingBoundingBox=!1,e.isTransformingBoundingBox=!1}}}),{addEraseRect:jW,addFillRect:NW,addImageToStagingArea:e3e,addLine:t3e,addPointToCurrentLine:$W,clearCanvasHistory:FW,clearMask:pE,commitColorPickerColor:n3e,commitStagingAreaImage:r3e,discardStagedImages:i3e,fitBoundingBoxToStage:vNe,mouseLeftCanvas:o3e,nextStagingAreaImage:a3e,prevStagingAreaImage:s3e,redo:l3e,resetCanvas:gE,resetCanvasInteractionState:u3e,resetCanvasView:BW,resizeAndScaleCanvas:r4,resizeCanvas:c3e,setBoundingBoxCoordinates:RC,setBoundingBoxDimensions:g1,setBoundingBoxPreviewFill:yNe,setBoundingBoxScaleMethod:d3e,setBrushColor:Mm,setBrushSize:Lm,setCanvasContainerDimensions:f3e,setColorPickerColor:h3e,setCursorPosition:p3e,setDoesCanvasNeedScaling:Li,setInitialCanvasImage:i4,setIsDrawing:zW,setIsMaskEnabled:h2,setIsMouseOverBoundingBox:Qb,setIsMoveBoundingBoxKeyHeld:bNe,setIsMoveStageKeyHeld:xNe,setIsMovingBoundingBox:IC,setIsMovingStage:S3,setIsTransformingBoundingBox:DC,setLayer:w3,setMaskColor:HW,setMergedCanvas:g3e,setShouldAutoSave:WW,setShouldCropToBoundingBoxOnSave:UW,setShouldDarkenOutsideBoundingBox:VW,setShouldLockBoundingBox:SNe,setShouldPreserveMaskedArea:GW,setShouldShowBoundingBox:m3e,setShouldShowBrush:wNe,setShouldShowBrushPreview:CNe,setShouldShowCanvasDebugInfo:qW,setShouldShowCheckboardTransparency:_Ne,setShouldShowGrid:KW,setShouldShowIntermediates:YW,setShouldShowStagingImage:v3e,setShouldShowStagingOutline:XO,setShouldSnapToGrid:C3,setStageCoordinates:XW,setStageScale:y3e,setTool:Jl,toggleShouldLockBoundingBox:kNe,toggleTool:ENe,undo:b3e,setScaledBoundingBoxDimensions:Jb,setShouldRestrictStrokesToBox:ZW}=DW.actions,x3e=DW.reducer,S3e={currentImageUuid:"",shouldPinGallery:!0,shouldShowGallery:!0,galleryScrollPosition:0,galleryImageMinimumWidth:64,galleryImageObjectFit:"cover",shouldHoldGalleryOpen:!1,shouldAutoSwitchToNewImages:!0,currentCategory:"result",categories:{user:{images:[],latest_mtime:void 0,earliest_mtime:void 0,areMoreImagesAvailable:!0},result:{images:[],latest_mtime:void 0,earliest_mtime:void 0,areMoreImagesAvailable:!0}},galleryWidth:300,shouldUseSingleGalleryColumn:!1},QW=ap({name:"gallery",initialState:S3e,reducers:{setCurrentImage:(e,t)=>{e.currentImage=t.payload,e.currentImageUuid=t.payload.uuid},removeImage:(e,t)=>{const{uuid:n,category:r}=t.payload,i=e.categories[r].images,o=i.filter(a=>a.uuid!==n);if(n===e.currentImageUuid){const a=i.findIndex(l=>l.uuid===n),s=Pe.clamp(a,0,o.length-1);e.currentImage=o.length?o[s]:void 0,e.currentImageUuid=o.length?o[s].uuid:""}e.categories[r].images=o},addImage:(e,t)=>{const{image:n,category:r}=t.payload,{uuid:i,url:o,mtime:a}=n,s=e.categories[r];s.images.find(l=>l.url===o&&l.mtime===a)||(s.images.unshift(n),e.shouldAutoSwitchToNewImages&&(e.currentImageUuid=i,e.currentImage=n,e.currentCategory=r),e.intermediateImage=void 0,s.latest_mtime=a)},setIntermediateImage:(e,t)=>{e.intermediateImage=t.payload},clearIntermediateImage:e=>{e.intermediateImage=void 0},selectNextImage:e=>{const{currentImage:t}=e;if(!t)return;const n=e.categories[t.category].images;if(t){const r=n.findIndex(i=>i.uuid===t.uuid);if(r{const{currentImage:t}=e;if(!t)return;const n=e.categories[t.category].images;if(t){const r=n.findIndex(i=>i.uuid===t.uuid);if(r>0){const i=n[r-1];e.currentImage=i,e.currentImageUuid=i.uuid}}},addGalleryImages:(e,t)=>{const{images:n,areMoreImagesAvailable:r,category:i}=t.payload,o=e.categories[i].images;if(n.length>0){const a=n.filter(s=>!o.find(l=>l.url===s.url&&l.mtime===s.mtime));if(e.categories[i].images=o.concat(a).sort((s,l)=>l.mtime-s.mtime),!e.currentImage){const s=n[0];e.currentImage=s,e.currentImageUuid=s.uuid}e.categories[i].latest_mtime=n[0].mtime,e.categories[i].earliest_mtime=n[n.length-1].mtime}r!==void 0&&(e.categories[i].areMoreImagesAvailable=r)},setShouldPinGallery:(e,t)=>{e.shouldPinGallery=t.payload},setShouldShowGallery:(e,t)=>{e.shouldShowGallery=t.payload},setGalleryScrollPosition:(e,t)=>{e.galleryScrollPosition=t.payload},setGalleryImageMinimumWidth:(e,t)=>{e.galleryImageMinimumWidth=t.payload},setGalleryImageObjectFit:(e,t)=>{e.galleryImageObjectFit=t.payload},setShouldHoldGalleryOpen:(e,t)=>{e.shouldHoldGalleryOpen=t.payload},setShouldAutoSwitchToNewImages:(e,t)=>{e.shouldAutoSwitchToNewImages=t.payload},setCurrentCategory:(e,t)=>{e.currentCategory=t.payload},setGalleryWidth:(e,t)=>{e.galleryWidth=t.payload},setShouldUseSingleGalleryColumn:(e,t)=>{e.shouldUseSingleGalleryColumn=t.payload}}}),{addImage:sm,clearIntermediateImage:jC,removeImage:JW,setCurrentImage:ZO,addGalleryImages:w3e,setIntermediateImage:C3e,selectNextImage:mE,selectPrevImage:vE,setShouldPinGallery:_3e,setShouldShowGallery:Am,setGalleryScrollPosition:k3e,setGalleryImageMinimumWidth:Gv,setGalleryImageObjectFit:E3e,setShouldHoldGalleryOpen:eU,setShouldAutoSwitchToNewImages:P3e,setCurrentCategory:ex,setGalleryWidth:T3e,setShouldUseSingleGalleryColumn:M3e}=QW.actions,L3e=QW.reducer,A3e={isLightboxOpen:!1},O3e=A3e,tU=ap({name:"lightbox",initialState:O3e,reducers:{setIsLightboxOpen:(e,t)=>{e.isLightboxOpen=t.payload}}}),{setIsLightboxOpen:Om}=tU.actions,R3e=tU.reducer,Rm=e=>typeof e=="string"?e:e.length===1?e[0].prompt:e.map(t=>`${t.prompt}:${t.weight}`).join(" ");function nU(e){let t=typeof e=="string"?e:Rm(e),n="";const r=new RegExp(/\[([^\][]*)]/,"gi"),i=[...t.matchAll(r)].map(o=>o[1]);return i.length&&(n=i.join(" "),i.forEach(o=>{t=t.replace(`[${o}]`,"").replaceAll("[]","").trim()})),[t,n]}const I3e=e=>{const r=e.split(",").map(i=>i.split(":")).map(i=>({seed:Number(i[0]),weight:Number(i[1])}));return yE(r)?r:!1},yE=e=>Boolean(typeof e=="string"?I3e(e):e.length&&!e.some(t=>{const{seed:n,weight:r}=t,i=!isNaN(parseInt(n.toString(),10)),o=!isNaN(parseInt(r.toString(),10))&&r>=0&&r<=1;return!(i&&o)})),_3=e=>e.reduce((t,n,r,i)=>{const{seed:o,weight:a}=n;return t+=`${o}:${a}`,r!==i.length-1&&(t+=","),t},""),D3e=e=>e.split(",").map(r=>r.split(":")).map(r=>[parseInt(r[0],10),parseFloat(r[1])]),rU={cfgScale:7.5,height:512,img2imgStrength:.75,infillMethod:"patchmatch",iterations:1,maskPath:"",perlin:0,prompt:"",negativePrompt:"",sampler:"k_lms",seamBlur:16,seamless:!1,seamSize:96,seamSteps:30,seamStrength:.7,seed:0,seedWeights:"",shouldFitToWidthHeight:!0,shouldGenerateVariations:!1,shouldRandomizeSeed:!0,steps:50,threshold:0,tileSize:32,variationAmount:.1,width:512,shouldUseSymmetry:!1,horizontalSymmetryTimePercentage:0,verticalSymmetryTimePercentage:0},j3e=rU,iU=ap({name:"generation",initialState:j3e,reducers:{setPrompt:(e,t)=>{const n=t.payload;typeof n=="string"?e.prompt=n:e.prompt=Rm(n)},setNegativePrompt:(e,t)=>{const n=t.payload;typeof n=="string"?e.negativePrompt=n:e.negativePrompt=Rm(n)},setIterations:(e,t)=>{e.iterations=t.payload},setSteps:(e,t)=>{e.steps=t.payload},setCfgScale:(e,t)=>{e.cfgScale=t.payload},setThreshold:(e,t)=>{e.threshold=t.payload},setPerlin:(e,t)=>{e.perlin=t.payload},setHeight:(e,t)=>{e.height=t.payload},setWidth:(e,t)=>{e.width=t.payload},setSampler:(e,t)=>{e.sampler=t.payload},setSeed:(e,t)=>{e.seed=t.payload,e.shouldRandomizeSeed=!1},setImg2imgStrength:(e,t)=>{e.img2imgStrength=t.payload},setMaskPath:(e,t)=>{e.maskPath=t.payload},setSeamless:(e,t)=>{e.seamless=t.payload},setShouldFitToWidthHeight:(e,t)=>{e.shouldFitToWidthHeight=t.payload},resetSeed:e=>{e.seed=-1},setParameter:(e,t)=>{const{key:n,value:r}=t.payload,i={...e,[n]:r};return n==="seed"&&(i.shouldRandomizeSeed=!1),i},setShouldGenerateVariations:(e,t)=>{e.shouldGenerateVariations=t.payload},setVariationAmount:(e,t)=>{e.variationAmount=t.payload},setSeedWeights:(e,t)=>{e.seedWeights=t.payload,e.shouldGenerateVariations=!0,e.variationAmount=0},setAllTextToImageParameters:(e,t)=>{const{sampler:n,prompt:r,seed:i,variations:o,steps:a,cfg_scale:s,threshold:l,perlin:u,seamless:d,hires_fix:h,width:m,height:y}=t.payload.image;o&&o.length>0?(e.seedWeights=_3(o),e.shouldGenerateVariations=!0,e.variationAmount=0):e.shouldGenerateVariations=!1,i&&(e.seed=i,e.shouldRandomizeSeed=!1),r&&(e.prompt=Rm(r)),n&&(e.sampler=n),a&&(e.steps=a),s&&(e.cfgScale=s),typeof l>"u"?e.threshold=0:e.threshold=l,typeof u>"u"?e.perlin=0:e.perlin=u,typeof d=="boolean"&&(e.seamless=d),m&&(e.width=m),y&&(e.height=y)},setAllImageToImageParameters:(e,t)=>{const{type:n,strength:r,fit:i,init_image_path:o,mask_image_path:a}=t.payload.image;n==="img2img"&&(o&&(e.initialImage=o),a&&(e.maskPath=a),r&&(e.img2imgStrength=r),typeof i=="boolean"&&(e.shouldFitToWidthHeight=i))},setAllParameters:(e,t)=>{const{type:n,sampler:r,prompt:i,seed:o,variations:a,steps:s,cfg_scale:l,threshold:u,perlin:d,seamless:h,hires_fix:m,width:y,height:b,strength:w,fit:E,init_image_path:_,mask_image_path:k}=t.payload.image;if(n==="img2img"&&(_&&(e.initialImage=_),k&&(e.maskPath=k),w&&(e.img2imgStrength=w),typeof E=="boolean"&&(e.shouldFitToWidthHeight=E)),a&&a.length>0?(e.seedWeights=_3(a),e.shouldGenerateVariations=!0,e.variationAmount=0):e.shouldGenerateVariations=!1,o&&(e.seed=o,e.shouldRandomizeSeed=!1),i){const[T,L]=nU(i);T&&(e.prompt=T),L?e.negativePrompt=L:e.negativePrompt=""}r&&(e.sampler=r),s&&(e.steps=s),l&&(e.cfgScale=l),typeof u>"u"?e.threshold=0:e.threshold=u,typeof d>"u"?e.perlin=0:e.perlin=d,typeof h=="boolean"&&(e.seamless=h),y&&(e.width=y),b&&(e.height=b)},resetParametersState:e=>({...e,...rU}),setShouldRandomizeSeed:(e,t)=>{e.shouldRandomizeSeed=t.payload},setInitialImage:(e,t)=>{e.initialImage=t.payload},clearInitialImage:e=>{e.initialImage=void 0},setSeamSize:(e,t)=>{e.seamSize=t.payload},setSeamBlur:(e,t)=>{e.seamBlur=t.payload},setSeamStrength:(e,t)=>{e.seamStrength=t.payload},setSeamSteps:(e,t)=>{e.seamSteps=t.payload},setTileSize:(e,t)=>{e.tileSize=t.payload},setInfillMethod:(e,t)=>{e.infillMethod=t.payload},setShouldUseSymmetry:(e,t)=>{e.shouldUseSymmetry=t.payload},setHorizontalSymmetryTimePercentage:(e,t)=>{e.horizontalSymmetryTimePercentage=t.payload},setVerticalSymmetryTimePercentage:(e,t)=>{e.verticalSymmetryTimePercentage=t.payload}}}),{clearInitialImage:oU,resetParametersState:PNe,resetSeed:TNe,setAllImageToImageParameters:N3e,setAllParameters:aU,setAllTextToImageParameters:MNe,setCfgScale:gk,setHeight:uS,setImg2imgStrength:mk,setInfillMethod:sU,setInitialImage:y0,setIterations:QO,setMaskPath:lU,setParameter:LNe,setPerlin:vk,setPrompt:uU,setNegativePrompt:cU,setSampler:dU,setSeamBlur:JO,setSeamless:fU,setSeamSize:eR,setSeamSteps:tR,setSeamStrength:nR,setSeed:p2,setSeedWeights:hU,setShouldFitToWidthHeight:pU,setShouldGenerateVariations:$3e,setShouldRandomizeSeed:F3e,setSteps:yk,setThreshold:bk,setTileSize:rR,setVariationAmount:iR,setWidth:cS,setShouldUseSymmetry:B3e,setHorizontalSymmetryTimePercentage:oR,setVerticalSymmetryTimePercentage:aR}=iU.actions,z3e=iU.reducer,gU={codeformerFidelity:.75,facetoolStrength:.75,facetoolType:"gfpgan",hiresFix:!1,hiresStrength:.75,shouldLoopback:!1,shouldRunESRGAN:!1,shouldRunFacetool:!1,upscalingLevel:4,upscalingDenoising:.75,upscalingStrength:.75},H3e=gU,mU=ap({name:"postprocessing",initialState:H3e,reducers:{setFacetoolStrength:(e,t)=>{e.facetoolStrength=t.payload},setCodeformerFidelity:(e,t)=>{e.codeformerFidelity=t.payload},setUpscalingLevel:(e,t)=>{e.upscalingLevel=t.payload},setUpscalingDenoising:(e,t)=>{e.upscalingDenoising=t.payload},setUpscalingStrength:(e,t)=>{e.upscalingStrength=t.payload},setHiresFix:(e,t)=>{e.hiresFix=t.payload},setHiresStrength:(e,t)=>{e.hiresStrength=t.payload},resetPostprocessingState:e=>({...e,...gU}),setShouldRunFacetool:(e,t)=>{e.shouldRunFacetool=t.payload},setFacetoolType:(e,t)=>{e.facetoolType=t.payload},setShouldRunESRGAN:(e,t)=>{e.shouldRunESRGAN=t.payload},setShouldLoopback:(e,t)=>{e.shouldLoopback=t.payload}}}),{resetPostprocessingState:ANe,setCodeformerFidelity:xk,setFacetoolStrength:k3,setFacetoolType:dS,setHiresFix:vU,setHiresStrength:sR,setShouldLoopback:W3e,setShouldRunESRGAN:U3e,setShouldRunFacetool:V3e,setUpscalingLevel:yU,setUpscalingDenoising:Sk,setUpscalingStrength:wk}=mU.actions,G3e=mU.reducer;function gs(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function lR(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n1&&arguments[1]!==void 0?arguments[1]:{};gs(this,e),this.init(t,n)}return ms(e,[{key:"init",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=r.prefix||"i18next:",this.logger=n||Y3e,this.options=r,this.debug=r.debug}},{key:"setDebug",value:function(n){this.debug=n}},{key:"log",value:function(){for(var n=arguments.length,r=new Array(n),i=0;i1?r-1:0),o=1;o-1?s.replace(/###/g,"."):s}function i(){return!e||typeof e=="string"}for(var o=typeof t!="string"?[].concat(t):t.split(".");o.length>1;){if(i())return{};var a=r(o.shift());!e[a]&&n&&(e[a]=new n),Object.prototype.hasOwnProperty.call(e,a)?e=e[a]:e={}}return i()?{}:{obj:e,k:r(o.shift())}}function hR(e,t,n){var r=bE(e,t,Object),i=r.obj,o=r.k;i[o]=n}function Q3e(e,t,n,r){var i=bE(e,t,Object),o=i.obj,a=i.k;o[a]=o[a]||[],r&&(o[a]=o[a].concat(n)),r||o[a].push(n)}function E3(e,t){var n=bE(e,t),r=n.obj,i=n.k;if(r)return r[i]}function pR(e,t,n){var r=E3(e,n);return r!==void 0?r:E3(t,n)}function wU(e,t,n){for(var r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?typeof e[r]=="string"||e[r]instanceof String||typeof t[r]=="string"||t[r]instanceof String?n&&(e[r]=t[r]):wU(e[r],t[r],n):e[r]=t[r]);return e}function Mg(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var J3e={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function ewe(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,function(t){return J3e[t]}):e}var a4=typeof window<"u"&&window.navigator&&typeof window.navigator.userAgentData>"u"&&window.navigator.userAgent&&window.navigator.userAgent.indexOf("MSIE")>-1,twe=[" ",",","?","!",";"];function nwe(e,t,n){t=t||"",n=n||"";var r=twe.filter(function(s){return t.indexOf(s)<0&&n.indexOf(s)<0});if(r.length===0)return!0;var i=new RegExp("(".concat(r.map(function(s){return s==="?"?"\\?":s}).join("|"),")")),o=!i.test(e);if(!o){var a=e.indexOf(n);a>0&&!i.test(e.substring(0,a))&&(o=!0)}return o}function gR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function tx(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function CU(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(e){if(e[t])return e[t];for(var r=t.split(n),i=e,o=0;oo+a;)a++,s=r.slice(o,o+a).join(n),l=i[s];if(l===void 0)return;if(l===null)return null;if(t.endsWith(s)){if(typeof l=="string")return l;if(s&&typeof l[s]=="string")return l[s]}var u=r.slice(o+a).join(n);return u?CU(l,u,n):void 0}i=i[r[o]]}return i}}var owe=function(e){o4(n,e);var t=rwe(n);function n(r){var i,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};return gs(this,n),i=t.call(this),a4&&Jd.call(Fd(i)),i.data=r||{},i.options=o,i.options.keySeparator===void 0&&(i.options.keySeparator="."),i.options.ignoreJSONStructure===void 0&&(i.options.ignoreJSONStructure=!0),i}return ms(n,[{key:"addNamespaces",value:function(i){this.options.ns.indexOf(i)<0&&this.options.ns.push(i)}},{key:"removeNamespaces",value:function(i){var o=this.options.ns.indexOf(i);o>-1&&this.options.ns.splice(o,1)}},{key:"getResource",value:function(i,o,a){var s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},l=s.keySeparator!==void 0?s.keySeparator:this.options.keySeparator,u=s.ignoreJSONStructure!==void 0?s.ignoreJSONStructure:this.options.ignoreJSONStructure,d=[i,o];a&&typeof a!="string"&&(d=d.concat(a)),a&&typeof a=="string"&&(d=d.concat(l?a.split(l):a)),i.indexOf(".")>-1&&(d=i.split("."));var h=E3(this.data,d);return h||!u||typeof a!="string"?h:CU(this.data&&this.data[i]&&this.data[i][o],a,l)}},{key:"addResource",value:function(i,o,a,s){var l=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1},u=this.options.keySeparator;u===void 0&&(u=".");var d=[i,o];a&&(d=d.concat(u?a.split(u):a)),i.indexOf(".")>-1&&(d=i.split("."),s=o,o=d[1]),this.addNamespaces(o),hR(this.data,d,s),l.silent||this.emit("added",i,o,a,s)}},{key:"addResources",value:function(i,o,a){var s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(var l in a)(typeof a[l]=="string"||Object.prototype.toString.apply(a[l])==="[object Array]")&&this.addResource(i,o,l,a[l],{silent:!0});s.silent||this.emit("added",i,o,a)}},{key:"addResourceBundle",value:function(i,o,a,s,l){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},d=[i,o];i.indexOf(".")>-1&&(d=i.split("."),s=a,a=o,o=d[1]),this.addNamespaces(o);var h=E3(this.data,d)||{};s?wU(h,a,l):h=tx(tx({},h),a),hR(this.data,d,h),u.silent||this.emit("added",i,o,a)}},{key:"removeResourceBundle",value:function(i,o){this.hasResourceBundle(i,o)&&delete this.data[i][o],this.removeNamespaces(o),this.emit("removed",i,o)}},{key:"hasResourceBundle",value:function(i,o){return this.getResource(i,o)!==void 0}},{key:"getResourceBundle",value:function(i,o){return o||(o=this.options.defaultNS),this.options.compatibilityAPI==="v1"?tx(tx({},{}),this.getResource(i,o)):this.getResource(i,o)}},{key:"getDataByLanguage",value:function(i){return this.data[i]}},{key:"hasLanguageSomeTranslations",value:function(i){var o=this.getDataByLanguage(i),a=o&&Object.keys(o)||[];return!!a.find(function(s){return o[s]&&Object.keys(o[s]).length>0})}},{key:"toJSON",value:function(){return this.data}}]),n}(Jd),_U={processors:{},addPostProcessor:function(t){this.processors[t.name]=t},handle:function(t,n,r,i,o){var a=this;return t.forEach(function(s){a.processors[s]&&(n=a.processors[s].process(n,r,i,o))}),n}};function mR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function yo(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var vR={},yR=function(e){o4(n,e);var t=awe(n);function n(r){var i,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return gs(this,n),i=t.call(this),a4&&Jd.call(Fd(i)),Z3e(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],r,Fd(i)),i.options=o,i.options.keySeparator===void 0&&(i.options.keySeparator="."),i.logger=Wl.create("translator"),i}return ms(n,[{key:"changeLanguage",value:function(i){i&&(this.language=i)}},{key:"exists",value:function(i){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(i==null)return!1;var a=this.resolve(i,o);return a&&a.res!==void 0}},{key:"extractFromKey",value:function(i,o){var a=o.nsSeparator!==void 0?o.nsSeparator:this.options.nsSeparator;a===void 0&&(a=":");var s=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,l=o.ns||this.options.defaultNS||[],u=a&&i.indexOf(a)>-1,d=!this.options.userDefinedKeySeparator&&!o.keySeparator&&!this.options.userDefinedNsSeparator&&!o.nsSeparator&&!nwe(i,a,s);if(u&&!d){var h=i.match(this.interpolator.nestingRegexp);if(h&&h.length>0)return{key:i,namespaces:l};var m=i.split(a);(a!==s||a===s&&this.options.ns.indexOf(m[0])>-1)&&(l=m.shift()),i=m.join(s)}return typeof l=="string"&&(l=[l]),{key:i,namespaces:l}}},{key:"translate",value:function(i,o,a){var s=this;if(Ks(o)!=="object"&&this.options.overloadTranslationOptionHandler&&(o=this.options.overloadTranslationOptionHandler(arguments)),o||(o={}),i==null)return"";Array.isArray(i)||(i=[String(i)]);var l=o.returnDetails!==void 0?o.returnDetails:this.options.returnDetails,u=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,d=this.extractFromKey(i[i.length-1],o),h=d.key,m=d.namespaces,y=m[m.length-1],b=o.lng||this.language,w=o.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(b&&b.toLowerCase()==="cimode"){if(w){var E=o.nsSeparator||this.options.nsSeparator;return l?{res:"".concat(y).concat(E).concat(h),usedKey:h,exactUsedKey:h,usedLng:b,usedNS:y}:"".concat(y).concat(E).concat(h)}return l?{res:h,usedKey:h,exactUsedKey:h,usedLng:b,usedNS:y}:h}var _=this.resolve(i,o),k=_&&_.res,T=_&&_.usedKey||h,L=_&&_.exactUsedKey||h,O=Object.prototype.toString.apply(k),D=["[object Number]","[object Function]","[object RegExp]"],I=o.joinArrays!==void 0?o.joinArrays:this.options.joinArrays,N=!this.i18nFormat||this.i18nFormat.handleAsObject,W=typeof k!="string"&&typeof k!="boolean"&&typeof k!="number";if(N&&k&&W&&D.indexOf(O)<0&&!(typeof I=="string"&&O==="[object Array]")){if(!o.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");var B=this.options.returnedObjectHandler?this.options.returnedObjectHandler(T,k,yo(yo({},o),{},{ns:m})):"key '".concat(h," (").concat(this.language,")' returned an object instead of string.");return l?(_.res=B,_):B}if(u){var K=O==="[object Array]",ne=K?[]:{},z=K?L:T;for(var $ in k)if(Object.prototype.hasOwnProperty.call(k,$)){var V="".concat(z).concat(u).concat($);ne[$]=this.translate(V,yo(yo({},o),{joinArrays:!1,ns:m})),ne[$]===V&&(ne[$]=k[$])}k=ne}}else if(N&&typeof I=="string"&&O==="[object Array]")k=k.join(I),k&&(k=this.extendTranslation(k,i,o,a));else{var X=!1,Q=!1,G=o.count!==void 0&&typeof o.count!="string",Y=n.hasDefaultValue(o),ee=G?this.pluralResolver.getSuffix(b,o.count,o):"",fe=o["defaultValue".concat(ee)]||o.defaultValue;!this.isValidLookup(k)&&Y&&(X=!0,k=fe),this.isValidLookup(k)||(Q=!0,k=h);var Ce=o.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey,we=Ce&&Q?void 0:k,xe=Y&&fe!==k&&this.options.updateMissing;if(Q||X||xe){if(this.logger.log(xe?"updateKey":"missingKey",b,y,h,xe?fe:k),u){var Le=this.resolve(h,yo(yo({},o),{},{keySeparator:!1}));Le&&Le.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}var Se=[],Qe=this.languageUtils.getFallbackCodes(this.options.fallbackLng,o.lng||this.language);if(this.options.saveMissingTo==="fallback"&&Qe&&Qe[0])for(var Xe=0;Xe1&&arguments[1]!==void 0?arguments[1]:{},s,l,u,d,h;return typeof i=="string"&&(i=[i]),i.forEach(function(m){if(!o.isValidLookup(s)){var y=o.extractFromKey(m,a),b=y.key;l=b;var w=y.namespaces;o.options.fallbackNS&&(w=w.concat(o.options.fallbackNS));var E=a.count!==void 0&&typeof a.count!="string",_=E&&!a.ordinal&&a.count===0&&o.pluralResolver.shouldUseIntlApi(),k=a.context!==void 0&&(typeof a.context=="string"||typeof a.context=="number")&&a.context!=="",T=a.lngs?a.lngs:o.languageUtils.toResolveHierarchy(a.lng||o.language,a.fallbackLng);w.forEach(function(L){o.isValidLookup(s)||(h=L,!vR["".concat(T[0],"-").concat(L)]&&o.utils&&o.utils.hasLoadedNamespace&&!o.utils.hasLoadedNamespace(h)&&(vR["".concat(T[0],"-").concat(L)]=!0,o.logger.warn('key "'.concat(l,'" for languages "').concat(T.join(", "),`" won't get resolved as namespace "`).concat(h,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),T.forEach(function(O){if(!o.isValidLookup(s)){d=O;var D=[b];if(o.i18nFormat&&o.i18nFormat.addLookupKeys)o.i18nFormat.addLookupKeys(D,b,O,L,a);else{var I;E&&(I=o.pluralResolver.getSuffix(O,a.count,a));var N="".concat(o.options.pluralSeparator,"zero");if(E&&(D.push(b+I),_&&D.push(b+N)),k){var W="".concat(b).concat(o.options.contextSeparator).concat(a.context);D.push(W),E&&(D.push(W+I),_&&D.push(W+N))}}for(var B;B=D.pop();)o.isValidLookup(s)||(u=B,s=o.getResource(O,L,B,a))}}))})}}),{res:s,usedKey:l,exactUsedKey:u,usedLng:d,usedNS:h}}},{key:"isValidLookup",value:function(i){return i!==void 0&&!(!this.options.returnNull&&i===null)&&!(!this.options.returnEmptyString&&i==="")}},{key:"getResource",value:function(i,o,a){var s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(i,o,a,s):this.resourceStore.getResource(i,o,a,s)}}],[{key:"hasDefaultValue",value:function(i){var o="defaultValue";for(var a in i)if(Object.prototype.hasOwnProperty.call(i,a)&&o===a.substring(0,o.length)&&i[a]!==void 0)return!0;return!1}}]),n}(Jd);function NC(e){return e.charAt(0).toUpperCase()+e.slice(1)}var bR=function(){function e(t){gs(this,e),this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Wl.create("languageUtils")}return ms(e,[{key:"getScriptPartFromCode",value:function(n){if(!n||n.indexOf("-")<0)return null;var r=n.split("-");return r.length===2||(r.pop(),r[r.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(r.join("-"))}},{key:"getLanguagePartFromCode",value:function(n){if(!n||n.indexOf("-")<0)return n;var r=n.split("-");return this.formatLanguageCode(r[0])}},{key:"formatLanguageCode",value:function(n){if(typeof n=="string"&&n.indexOf("-")>-1){var r=["hans","hant","latn","cyrl","cans","mong","arab"],i=n.split("-");return this.options.lowerCaseLng?i=i.map(function(o){return o.toLowerCase()}):i.length===2?(i[0]=i[0].toLowerCase(),i[1]=i[1].toUpperCase(),r.indexOf(i[1].toLowerCase())>-1&&(i[1]=NC(i[1].toLowerCase()))):i.length===3&&(i[0]=i[0].toLowerCase(),i[1].length===2&&(i[1]=i[1].toUpperCase()),i[0]!=="sgn"&&i[2].length===2&&(i[2]=i[2].toUpperCase()),r.indexOf(i[1].toLowerCase())>-1&&(i[1]=NC(i[1].toLowerCase())),r.indexOf(i[2].toLowerCase())>-1&&(i[2]=NC(i[2].toLowerCase()))),i.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?n.toLowerCase():n}},{key:"isSupportedCode",value:function(n){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(n=this.getLanguagePartFromCode(n)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(n)>-1}},{key:"getBestMatchFromCodes",value:function(n){var r=this;if(!n)return null;var i;return n.forEach(function(o){if(!i){var a=r.formatLanguageCode(o);(!r.options.supportedLngs||r.isSupportedCode(a))&&(i=a)}}),!i&&this.options.supportedLngs&&n.forEach(function(o){if(!i){var a=r.getLanguagePartFromCode(o);if(r.isSupportedCode(a))return i=a;i=r.options.supportedLngs.find(function(s){if(s.indexOf(a)===0)return s})}}),i||(i=this.getFallbackCodes(this.options.fallbackLng)[0]),i}},{key:"getFallbackCodes",value:function(n,r){if(!n)return[];if(typeof n=="function"&&(n=n(r)),typeof n=="string"&&(n=[n]),Object.prototype.toString.apply(n)==="[object Array]")return n;if(!r)return n.default||[];var i=n[r];return i||(i=n[this.getScriptPartFromCode(r)]),i||(i=n[this.formatLanguageCode(r)]),i||(i=n[this.getLanguagePartFromCode(r)]),i||(i=n.default),i||[]}},{key:"toResolveHierarchy",value:function(n,r){var i=this,o=this.getFallbackCodes(r||this.options.fallbackLng||[],n),a=[],s=function(u){u&&(i.isSupportedCode(u)?a.push(u):i.logger.warn("rejecting language code not found in supportedLngs: ".concat(u)))};return typeof n=="string"&&n.indexOf("-")>-1?(this.options.load!=="languageOnly"&&s(this.formatLanguageCode(n)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&s(this.getScriptPartFromCode(n)),this.options.load!=="currentOnly"&&s(this.getLanguagePartFromCode(n))):typeof n=="string"&&s(this.formatLanguageCode(n)),o.forEach(function(l){a.indexOf(l)<0&&s(i.formatLanguageCode(l))}),a}}]),e}(),lwe=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],uwe={1:function(t){return Number(t>1)},2:function(t){return Number(t!=1)},3:function(t){return 0},4:function(t){return Number(t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2)},5:function(t){return Number(t==0?0:t==1?1:t==2?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5)},6:function(t){return Number(t==1?0:t>=2&&t<=4?1:2)},7:function(t){return Number(t==1?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2)},8:function(t){return Number(t==1?0:t==2?1:t!=8&&t!=11?2:3)},9:function(t){return Number(t>=2)},10:function(t){return Number(t==1?0:t==2?1:t<7?2:t<11?3:4)},11:function(t){return Number(t==1||t==11?0:t==2||t==12?1:t>2&&t<20?2:3)},12:function(t){return Number(t%10!=1||t%100==11)},13:function(t){return Number(t!==0)},14:function(t){return Number(t==1?0:t==2?1:t==3?2:3)},15:function(t){return Number(t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2)},16:function(t){return Number(t%10==1&&t%100!=11?0:t!==0?1:2)},17:function(t){return Number(t==1||t%10==1&&t%100!=11?0:1)},18:function(t){return Number(t==0?0:t==1?1:2)},19:function(t){return Number(t==1?0:t==0||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3)},20:function(t){return Number(t==1?0:t==0||t%100>0&&t%100<20?1:2)},21:function(t){return Number(t%100==1?1:t%100==2?2:t%100==3||t%100==4?3:0)},22:function(t){return Number(t==1?0:t==2?1:(t<0||t>10)&&t%10==0?2:3)}},cwe=["v1","v2","v3"],xR={zero:0,one:1,two:2,few:3,many:4,other:5};function dwe(){var e={};return lwe.forEach(function(t){t.lngs.forEach(function(n){e[n]={numbers:t.nr,plurals:uwe[t.fc]}})}),e}var fwe=function(){function e(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};gs(this,e),this.languageUtils=t,this.options=n,this.logger=Wl.create("pluralResolver"),(!this.options.compatibilityJSON||this.options.compatibilityJSON==="v4")&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=dwe()}return ms(e,[{key:"addRule",value:function(n,r){this.rules[n]=r}},{key:"getRule",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(n,{type:r.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[n]||this.rules[this.languageUtils.getLanguagePartFromCode(n)]}},{key:"needsPlural",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=this.getRule(n,r);return this.shouldUseIntlApi()?i&&i.resolvedOptions().pluralCategories.length>1:i&&i.numbers.length>1}},{key:"getPluralFormsOfKey",value:function(n,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(n,i).map(function(o){return"".concat(r).concat(o)})}},{key:"getSuffixes",value:function(n){var r=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=this.getRule(n,i);return o?this.shouldUseIntlApi()?o.resolvedOptions().pluralCategories.sort(function(a,s){return xR[a]-xR[s]}).map(function(a){return"".concat(r.options.prepend).concat(a)}):o.numbers.map(function(a){return r.getSuffix(n,a,i)}):[]}},{key:"getSuffix",value:function(n,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=this.getRule(n,i);return o?this.shouldUseIntlApi()?"".concat(this.options.prepend).concat(o.select(r)):this.getSuffixRetroCompatible(o,r):(this.logger.warn("no plural rule found for: ".concat(n)),"")}},{key:"getSuffixRetroCompatible",value:function(n,r){var i=this,o=n.noAbs?n.plurals(r):n.plurals(Math.abs(r)),a=n.numbers[o];this.options.simplifyPluralSuffix&&n.numbers.length===2&&n.numbers[0]===1&&(a===2?a="plural":a===1&&(a=""));var s=function(){return i.options.prepend&&a.toString()?i.options.prepend+a.toString():a.toString()};return this.options.compatibilityJSON==="v1"?a===1?"":typeof a=="number"?"_plural_".concat(a.toString()):s():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&n.numbers.length===2&&n.numbers[0]===1?s():this.options.prepend&&o.toString()?this.options.prepend+o.toString():o.toString()}},{key:"shouldUseIntlApi",value:function(){return!cwe.includes(this.options.compatibilityJSON)}}]),e}();function SR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Fs(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{};gs(this,e),this.logger=Wl.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||function(n){return n},this.init(t)}return ms(e,[{key:"init",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};n.interpolation||(n.interpolation={escapeValue:!0});var r=n.interpolation;this.escape=r.escape!==void 0?r.escape:ewe,this.escapeValue=r.escapeValue!==void 0?r.escapeValue:!0,this.useRawValueToEscape=r.useRawValueToEscape!==void 0?r.useRawValueToEscape:!1,this.prefix=r.prefix?Mg(r.prefix):r.prefixEscaped||"{{",this.suffix=r.suffix?Mg(r.suffix):r.suffixEscaped||"}}",this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||",",this.unescapePrefix=r.unescapeSuffix?"":r.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":r.unescapeSuffix||"",this.nestingPrefix=r.nestingPrefix?Mg(r.nestingPrefix):r.nestingPrefixEscaped||Mg("$t("),this.nestingSuffix=r.nestingSuffix?Mg(r.nestingSuffix):r.nestingSuffixEscaped||Mg(")"),this.nestingOptionsSeparator=r.nestingOptionsSeparator?r.nestingOptionsSeparator:r.nestingOptionsSeparator||",",this.maxReplaces=r.maxReplaces?r.maxReplaces:1e3,this.alwaysFormat=r.alwaysFormat!==void 0?r.alwaysFormat:!1,this.resetRegExp()}},{key:"reset",value:function(){this.options&&this.init(this.options)}},{key:"resetRegExp",value:function(){var n="".concat(this.prefix,"(.+?)").concat(this.suffix);this.regexp=new RegExp(n,"g");var r="".concat(this.prefix).concat(this.unescapePrefix,"(.+?)").concat(this.unescapeSuffix).concat(this.suffix);this.regexpUnescape=new RegExp(r,"g");var i="".concat(this.nestingPrefix,"(.+?)").concat(this.nestingSuffix);this.nestingRegexp=new RegExp(i,"g")}},{key:"interpolate",value:function(n,r,i,o){var a=this,s,l,u,d=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function h(E){return E.replace(/\$/g,"$$$$")}var m=function(_){if(_.indexOf(a.formatSeparator)<0){var k=pR(r,d,_);return a.alwaysFormat?a.format(k,void 0,i,Fs(Fs(Fs({},o),r),{},{interpolationkey:_})):k}var T=_.split(a.formatSeparator),L=T.shift().trim(),O=T.join(a.formatSeparator).trim();return a.format(pR(r,d,L),O,i,Fs(Fs(Fs({},o),r),{},{interpolationkey:L}))};this.resetRegExp();var y=o&&o.missingInterpolationHandler||this.options.missingInterpolationHandler,b=o&&o.interpolation&&o.interpolation.skipOnVariables!==void 0?o.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables,w=[{regex:this.regexpUnescape,safeValue:function(_){return h(_)}},{regex:this.regexp,safeValue:function(_){return a.escapeValue?h(a.escape(_)):h(_)}}];return w.forEach(function(E){for(u=0;s=E.regex.exec(n);){var _=s[1].trim();if(l=m(_),l===void 0)if(typeof y=="function"){var k=y(n,s,o);l=typeof k=="string"?k:""}else if(o&&Object.prototype.hasOwnProperty.call(o,_))l="";else if(b){l=s[0];continue}else a.logger.warn("missed to pass in variable ".concat(_," for interpolating ").concat(n)),l="";else typeof l!="string"&&!a.useRawValueToEscape&&(l=fR(l));var T=E.safeValue(l);if(n=n.replace(s[0],T),b?(E.regex.lastIndex+=l.length,E.regex.lastIndex-=s[0].length):E.regex.lastIndex=0,u++,u>=a.maxReplaces)break}}),n}},{key:"nest",value:function(n,r){var i=this,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a,s,l;function u(y,b){var w=this.nestingOptionsSeparator;if(y.indexOf(w)<0)return y;var E=y.split(new RegExp("".concat(w,"[ ]*{"))),_="{".concat(E[1]);y=E[0],_=this.interpolate(_,l);var k=_.match(/'/g),T=_.match(/"/g);(k&&k.length%2===0&&!T||T.length%2!==0)&&(_=_.replace(/'/g,'"'));try{l=JSON.parse(_),b&&(l=Fs(Fs({},b),l))}catch(L){return this.logger.warn("failed parsing options string in nesting for key ".concat(y),L),"".concat(y).concat(w).concat(_)}return delete l.defaultValue,y}for(;a=this.nestingRegexp.exec(n);){var d=[];l=Fs({},o),l=l.replace&&typeof l.replace!="string"?l.replace:l,l.applyPostProcessor=!1,delete l.defaultValue;var h=!1;if(a[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(a[1])){var m=a[1].split(this.formatSeparator).map(function(y){return y.trim()});a[1]=m.shift(),d=m,h=!0}if(s=r(u.call(this,a[1].trim(),l),l),s&&a[0]===n&&typeof s!="string")return s;typeof s!="string"&&(s=fR(s)),s||(this.logger.warn("missed to resolve ".concat(a[1]," for nesting ").concat(n)),s=""),h&&(s=d.reduce(function(y,b){return i.format(y,b,o.lng,Fs(Fs({},o),{},{interpolationkey:a[1].trim()}))},s.trim())),n=n.replace(a[0],s),this.regexp.lastIndex=0}return n}}]),e}();function wR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ru(e){for(var t=1;t-1){var r=e.split("(");t=r[0].toLowerCase().trim();var i=r[1].substring(0,r[1].length-1);if(t==="currency"&&i.indexOf(":")<0)n.currency||(n.currency=i.trim());else if(t==="relativetime"&&i.indexOf(":")<0)n.range||(n.range=i.trim());else{var o=i.split(";");o.forEach(function(a){if(a){var s=a.split(":"),l=K3e(s),u=l[0],d=l.slice(1),h=d.join(":").trim().replace(/^'+|'+$/g,"");n[u.trim()]||(n[u.trim()]=h),h==="false"&&(n[u.trim()]=!1),h==="true"&&(n[u.trim()]=!0),isNaN(h)||(n[u.trim()]=parseInt(h,10))}})}}return{formatName:t,formatOptions:n}}function Lg(e){var t={};return function(r,i,o){var a=i+JSON.stringify(o),s=t[a];return s||(s=e(i,o),t[a]=s),s(r)}}var gwe=function(){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};gs(this,e),this.logger=Wl.create("formatter"),this.options=t,this.formats={number:Lg(function(n,r){var i=new Intl.NumberFormat(n,Ru({},r));return function(o){return i.format(o)}}),currency:Lg(function(n,r){var i=new Intl.NumberFormat(n,Ru(Ru({},r),{},{style:"currency"}));return function(o){return i.format(o)}}),datetime:Lg(function(n,r){var i=new Intl.DateTimeFormat(n,Ru({},r));return function(o){return i.format(o)}}),relativetime:Lg(function(n,r){var i=new Intl.RelativeTimeFormat(n,Ru({},r));return function(o){return i.format(o,r.range||"day")}}),list:Lg(function(n,r){var i=new Intl.ListFormat(n,Ru({},r));return function(o){return i.format(o)}})},this.init(t)}return ms(e,[{key:"init",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}},i=r.interpolation;this.formatSeparator=i.formatSeparator?i.formatSeparator:i.formatSeparator||","}},{key:"add",value:function(n,r){this.formats[n.toLowerCase().trim()]=r}},{key:"addCached",value:function(n,r){this.formats[n.toLowerCase().trim()]=Lg(r)}},{key:"format",value:function(n,r,i){var o=this,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=r.split(this.formatSeparator),l=s.reduce(function(u,d){var h=pwe(d),m=h.formatName,y=h.formatOptions;if(o.formats[m]){var b=u;try{var w=a&&a.formatParams&&a.formatParams[a.interpolationkey]||{},E=w.locale||w.lng||a.locale||a.lng||i;b=o.formats[m](u,E,Ru(Ru(Ru({},y),a),w))}catch(_){o.logger.warn(_)}return b}else o.logger.warn("there was no format function for ".concat(m));return u},n);return l}}]),e}();function CR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function _R(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function ywe(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}var bwe=function(e){o4(n,e);var t=mwe(n);function n(r,i,o){var a,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return gs(this,n),a=t.call(this),a4&&Jd.call(Fd(a)),a.backend=r,a.store=i,a.services=o,a.languageUtils=o.languageUtils,a.options=s,a.logger=Wl.create("backendConnector"),a.waitingReads=[],a.maxParallelReads=s.maxParallelReads||10,a.readingCalls=0,a.maxRetries=s.maxRetries>=0?s.maxRetries:5,a.retryTimeout=s.retryTimeout>=1?s.retryTimeout:350,a.state={},a.queue=[],a.backend&&a.backend.init&&a.backend.init(o,s.backend,s),a}return ms(n,[{key:"queueLoad",value:function(i,o,a,s){var l=this,u={},d={},h={},m={};return i.forEach(function(y){var b=!0;o.forEach(function(w){var E="".concat(y,"|").concat(w);!a.reload&&l.store.hasResourceBundle(y,w)?l.state[E]=2:l.state[E]<0||(l.state[E]===1?d[E]===void 0&&(d[E]=!0):(l.state[E]=1,b=!1,d[E]===void 0&&(d[E]=!0),u[E]===void 0&&(u[E]=!0),m[w]===void 0&&(m[w]=!0)))}),b||(h[y]=!0)}),(Object.keys(u).length||Object.keys(d).length)&&this.queue.push({pending:d,pendingCount:Object.keys(d).length,loaded:{},errors:[],callback:s}),{toLoad:Object.keys(u),pending:Object.keys(d),toLoadLanguages:Object.keys(h),toLoadNamespaces:Object.keys(m)}}},{key:"loaded",value:function(i,o,a){var s=i.split("|"),l=s[0],u=s[1];o&&this.emit("failedLoading",l,u,o),a&&this.store.addResourceBundle(l,u,a),this.state[i]=o?-1:2;var d={};this.queue.forEach(function(h){Q3e(h.loaded,[l],u),ywe(h,i),o&&h.errors.push(o),h.pendingCount===0&&!h.done&&(Object.keys(h.loaded).forEach(function(m){d[m]||(d[m]={});var y=h.loaded[m];y.length&&y.forEach(function(b){d[m][b]===void 0&&(d[m][b]=!0)})}),h.done=!0,h.errors.length?h.callback(h.errors):h.callback())}),this.emit("loaded",d),this.queue=this.queue.filter(function(h){return!h.done})}},{key:"read",value:function(i,o,a){var s=this,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,u=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,d=arguments.length>5?arguments[5]:void 0;if(!i.length)return d(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:i,ns:o,fcName:a,tried:l,wait:u,callback:d});return}this.readingCalls++;var h=function(w,E){if(s.readingCalls--,s.waitingReads.length>0){var _=s.waitingReads.shift();s.read(_.lng,_.ns,_.fcName,_.tried,_.wait,_.callback)}if(w&&E&&l2&&arguments[2]!==void 0?arguments[2]:{},l=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),l&&l();typeof i=="string"&&(i=this.languageUtils.toResolveHierarchy(i)),typeof o=="string"&&(o=[o]);var u=this.queueLoad(i,o,s,l);if(!u.toLoad.length)return u.pending.length||l(),null;u.toLoad.forEach(function(d){a.loadOne(d)})}},{key:"load",value:function(i,o,a){this.prepareLoading(i,o,{},a)}},{key:"reload",value:function(i,o,a){this.prepareLoading(i,o,{reload:!0},a)}},{key:"loadOne",value:function(i){var o=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",s=i.split("|"),l=s[0],u=s[1];this.read(l,u,"read",void 0,void 0,function(d,h){d&&o.logger.warn("".concat(a,"loading namespace ").concat(u," for language ").concat(l," failed"),d),!d&&h&&o.logger.log("".concat(a,"loaded namespace ").concat(u," for language ").concat(l),h),o.loaded(i,d,h)})}},{key:"saveMissing",value:function(i,o,a,s,l){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},d=arguments.length>6&&arguments[6]!==void 0?arguments[6]:function(){};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(o)){this.logger.warn('did not save key "'.concat(a,'" as the namespace "').concat(o,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(a==null||a==="")){if(this.backend&&this.backend.create){var h=_R(_R({},u),{},{isUpdate:l}),m=this.backend.create.bind(this.backend);if(m.length<6)try{var y;m.length===5?y=m(i,o,a,s,h):y=m(i,o,a,s),y&&typeof y.then=="function"?y.then(function(b){return d(null,b)}).catch(d):d(null,y)}catch(b){d(b)}else m(i,o,a,s,d,h)}!i||!i[0]||this.store.addResource(i[0],o,a,s)}}}]),n}(Jd);function kR(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!0,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){var n={};if(Ks(t[1])==="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),Ks(t[2])==="object"||Ks(t[3])==="object"){var r=t[3]||t[2];Object.keys(r).forEach(function(i){n[i]=r[i]})}return n},interpolation:{escapeValue:!0,format:function(t,n,r,i){return t},prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function ER(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function PR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Tl(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function nx(){}function wwe(e){var t=Object.getOwnPropertyNames(Object.getPrototypeOf(e));t.forEach(function(n){typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}var P3=function(e){o4(n,e);var t=xwe(n);function n(){var r,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;if(gs(this,n),r=t.call(this),a4&&Jd.call(Fd(r)),r.options=ER(i),r.services={},r.logger=Wl,r.modules={external:[]},wwe(Fd(r)),o&&!r.isInitialized&&!i.isClone){if(!r.options.initImmediate)return r.init(i,o),g2(r,Fd(r));setTimeout(function(){r.init(i,o)},0)}return r}return ms(n,[{key:"init",value:function(){var i=this,o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=arguments.length>1?arguments[1]:void 0;typeof o=="function"&&(a=o,o={}),!o.defaultNS&&o.defaultNS!==!1&&o.ns&&(typeof o.ns=="string"?o.defaultNS=o.ns:o.ns.indexOf("translation")<0&&(o.defaultNS=o.ns[0]));var s=kR();this.options=Tl(Tl(Tl({},s),this.options),ER(o)),this.options.compatibilityAPI!=="v1"&&(this.options.interpolation=Tl(Tl({},s.interpolation),this.options.interpolation)),o.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=o.keySeparator),o.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=o.nsSeparator);function l(_){return _?typeof _=="function"?new _:_:null}if(!this.options.isClone){this.modules.logger?Wl.init(l(this.modules.logger),this.options):Wl.init(null,this.options);var u;this.modules.formatter?u=this.modules.formatter:typeof Intl<"u"&&(u=gwe);var d=new bR(this.options);this.store=new owe(this.options.resources,this.options);var h=this.services;h.logger=Wl,h.resourceStore=this.store,h.languageUtils=d,h.pluralResolver=new fwe(d,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),u&&(!this.options.interpolation.format||this.options.interpolation.format===s.interpolation.format)&&(h.formatter=l(u),h.formatter.init(h,this.options),this.options.interpolation.format=h.formatter.format.bind(h.formatter)),h.interpolator=new hwe(this.options),h.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},h.backendConnector=new bwe(l(this.modules.backend),h.resourceStore,h,this.options),h.backendConnector.on("*",function(_){for(var k=arguments.length,T=new Array(k>1?k-1:0),L=1;L1?k-1:0),L=1;L0&&m[0]!=="dev"&&(this.options.lng=m[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined");var y=["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"];y.forEach(function(_){i[_]=function(){var k;return(k=i.store)[_].apply(k,arguments)}});var b=["addResource","addResources","addResourceBundle","removeResourceBundle"];b.forEach(function(_){i[_]=function(){var k;return(k=i.store)[_].apply(k,arguments),i}});var w=qv(),E=function(){var k=function(L,O){i.isInitialized&&!i.initializedStoreOnce&&i.logger.warn("init: i18next is already initialized. You should call init just once!"),i.isInitialized=!0,i.options.isClone||i.logger.log("initialized",i.options),i.emit("initialized",i.options),w.resolve(O),a(L,O)};if(i.languages&&i.options.compatibilityAPI!=="v1"&&!i.isInitialized)return k(null,i.t.bind(i));i.changeLanguage(i.options.lng,k)};return this.options.resources||!this.options.initImmediate?E():setTimeout(E,0),w}},{key:"loadResources",value:function(i){var o=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:nx,s=a,l=typeof i=="string"?i:this.language;if(typeof i=="function"&&(s=i),!this.options.resources||this.options.partialBundledLanguages){if(l&&l.toLowerCase()==="cimode")return s();var u=[],d=function(y){if(y){var b=o.services.languageUtils.toResolveHierarchy(y);b.forEach(function(w){u.indexOf(w)<0&&u.push(w)})}};if(l)d(l);else{var h=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);h.forEach(function(m){return d(m)})}this.options.preload&&this.options.preload.forEach(function(m){return d(m)}),this.services.backendConnector.load(u,this.options.ns,function(m){!m&&!o.resolvedLanguage&&o.language&&o.setResolvedLanguage(o.language),s(m)})}else s(null)}},{key:"reloadResources",value:function(i,o,a){var s=qv();return i||(i=this.languages),o||(o=this.options.ns),a||(a=nx),this.services.backendConnector.reload(i,o,function(l){s.resolve(),a(l)}),s}},{key:"use",value:function(i){if(!i)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!i.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return i.type==="backend"&&(this.modules.backend=i),(i.type==="logger"||i.log&&i.warn&&i.error)&&(this.modules.logger=i),i.type==="languageDetector"&&(this.modules.languageDetector=i),i.type==="i18nFormat"&&(this.modules.i18nFormat=i),i.type==="postProcessor"&&_U.addPostProcessor(i),i.type==="formatter"&&(this.modules.formatter=i),i.type==="3rdParty"&&this.modules.external.push(i),this}},{key:"setResolvedLanguage",value:function(i){if(!(!i||!this.languages)&&!(["cimode","dev"].indexOf(i)>-1))for(var o=0;o-1)&&this.store.hasLanguageSomeTranslations(a)){this.resolvedLanguage=a;break}}}},{key:"changeLanguage",value:function(i,o){var a=this;this.isLanguageChangingTo=i;var s=qv();this.emit("languageChanging",i);var l=function(m){a.language=m,a.languages=a.services.languageUtils.toResolveHierarchy(m),a.resolvedLanguage=void 0,a.setResolvedLanguage(m)},u=function(m,y){y?(l(y),a.translator.changeLanguage(y),a.isLanguageChangingTo=void 0,a.emit("languageChanged",y),a.logger.log("languageChanged",y)):a.isLanguageChangingTo=void 0,s.resolve(function(){return a.t.apply(a,arguments)}),o&&o(m,function(){return a.t.apply(a,arguments)})},d=function(m){!i&&!m&&a.services.languageDetector&&(m=[]);var y=typeof m=="string"?m:a.services.languageUtils.getBestMatchFromCodes(m);y&&(a.language||l(y),a.translator.language||a.translator.changeLanguage(y),a.services.languageDetector&&a.services.languageDetector.cacheUserLanguage&&a.services.languageDetector.cacheUserLanguage(y)),a.loadResources(y,function(b){u(b,y)})};return!i&&this.services.languageDetector&&!this.services.languageDetector.async?d(this.services.languageDetector.detect()):!i&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(d):this.services.languageDetector.detect(d):d(i),s}},{key:"getFixedT",value:function(i,o,a){var s=this,l=function u(d,h){var m;if(Ks(h)!=="object"){for(var y=arguments.length,b=new Array(y>2?y-2:0),w=2;w1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;var s=this.resolvedLanguage||this.languages[0],l=this.options?this.options.fallbackLng:!1,u=this.languages[this.languages.length-1];if(s.toLowerCase()==="cimode")return!0;var d=function(y,b){var w=o.services.backendConnector.state["".concat(y,"|").concat(b)];return w===-1||w===2};if(a.precheck){var h=a.precheck(this,d);if(h!==void 0)return h}return!!(this.hasResourceBundle(s,i)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||d(s,i)&&(!l||d(u,i)))}},{key:"loadNamespaces",value:function(i,o){var a=this,s=qv();return this.options.ns?(typeof i=="string"&&(i=[i]),i.forEach(function(l){a.options.ns.indexOf(l)<0&&a.options.ns.push(l)}),this.loadResources(function(l){s.resolve(),o&&o(l)}),s):(o&&o(),Promise.resolve())}},{key:"loadLanguages",value:function(i,o){var a=qv();typeof i=="string"&&(i=[i]);var s=this.options.preload||[],l=i.filter(function(u){return s.indexOf(u)<0});return l.length?(this.options.preload=s.concat(l),this.loadResources(function(u){a.resolve(),o&&o(u)}),a):(o&&o(),Promise.resolve())}},{key:"dir",value:function(i){if(i||(i=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!i)return"rtl";var o=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],a=this.services&&this.services.languageUtils||new bR(kR());return o.indexOf(a.getLanguagePartFromCode(i))>-1||i.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}},{key:"cloneInstance",value:function(){var i=this,o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:nx,s=Tl(Tl(Tl({},this.options),o),{isClone:!0}),l=new n(s);(o.debug!==void 0||o.prefix!==void 0)&&(l.logger=l.logger.clone(o));var u=["store","services","language"];return u.forEach(function(d){l[d]=i[d]}),l.services=Tl({},this.services),l.services.utils={hasLoadedNamespace:l.hasLoadedNamespace.bind(l)},l.translator=new yR(l.services,l.options),l.translator.on("*",function(d){for(var h=arguments.length,m=new Array(h>1?h-1:0),y=1;y0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return new P3(e,t)});var Et=P3.createInstance();Et.createInstance=P3.createInstance;Et.createInstance;Et.dir;Et.init;Et.loadResources;Et.reloadResources;Et.use;Et.changeLanguage;Et.getFixedT;Et.t;Et.exists;Et.setDefaultNamespace;Et.hasLoadedNamespace;Et.loadNamespaces;Et.loadLanguages;var kU=[],Cwe=kU.forEach,_we=kU.slice;function kwe(e){return Cwe.call(_we.call(arguments,1),function(t){if(t)for(var n in t)e[n]===void 0&&(e[n]=t[n])}),e}var TR=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Ewe=function(t,n,r){var i=r||{};i.path=i.path||"/";var o=encodeURIComponent(n),a="".concat(t,"=").concat(o);if(i.maxAge>0){var s=i.maxAge-0;if(Number.isNaN(s))throw new Error("maxAge should be a Number");a+="; Max-Age=".concat(Math.floor(s))}if(i.domain){if(!TR.test(i.domain))throw new TypeError("option domain is invalid");a+="; Domain=".concat(i.domain)}if(i.path){if(!TR.test(i.path))throw new TypeError("option path is invalid");a+="; Path=".concat(i.path)}if(i.expires){if(typeof i.expires.toUTCString!="function")throw new TypeError("option expires is invalid");a+="; Expires=".concat(i.expires.toUTCString())}if(i.httpOnly&&(a+="; HttpOnly"),i.secure&&(a+="; Secure"),i.sameSite){var l=typeof i.sameSite=="string"?i.sameSite.toLowerCase():i.sameSite;switch(l){case!0:a+="; SameSite=Strict";break;case"lax":a+="; SameSite=Lax";break;case"strict":a+="; SameSite=Strict";break;case"none":a+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return a},MR={create:function(t,n,r,i){var o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};r&&(o.expires=new Date,o.expires.setTime(o.expires.getTime()+r*60*1e3)),i&&(o.domain=i),document.cookie=Ewe(t,encodeURIComponent(n),o)},read:function(t){for(var n="".concat(t,"="),r=document.cookie.split(";"),i=0;i-1&&(r=window.location.hash.substring(window.location.hash.indexOf("?")));for(var i=r.substring(1),o=i.split("&"),a=0;a0){var l=o[a].substring(0,s);l===t.lookupQuerystring&&(n=o[a].substring(s+1))}}}return n}},Kv=null,LR=function(){if(Kv!==null)return Kv;try{Kv=window!=="undefined"&&window.localStorage!==null;var t="i18next.translate.boo";window.localStorage.setItem(t,"foo"),window.localStorage.removeItem(t)}catch{Kv=!1}return Kv},Mwe={name:"localStorage",lookup:function(t){var n;if(t.lookupLocalStorage&&LR()){var r=window.localStorage.getItem(t.lookupLocalStorage);r&&(n=r)}return n},cacheUserLanguage:function(t,n){n.lookupLocalStorage&&LR()&&window.localStorage.setItem(n.lookupLocalStorage,t)}},Yv=null,AR=function(){if(Yv!==null)return Yv;try{Yv=window!=="undefined"&&window.sessionStorage!==null;var t="i18next.translate.boo";window.sessionStorage.setItem(t,"foo"),window.sessionStorage.removeItem(t)}catch{Yv=!1}return Yv},Lwe={name:"sessionStorage",lookup:function(t){var n;if(t.lookupSessionStorage&&AR()){var r=window.sessionStorage.getItem(t.lookupSessionStorage);r&&(n=r)}return n},cacheUserLanguage:function(t,n){n.lookupSessionStorage&&AR()&&window.sessionStorage.setItem(n.lookupSessionStorage,t)}},Awe={name:"navigator",lookup:function(t){var n=[];if(typeof navigator<"u"){if(navigator.languages)for(var r=0;r0?n:void 0}},Owe={name:"htmlTag",lookup:function(t){var n,r=t.htmlTag||(typeof document<"u"?document.documentElement:null);return r&&typeof r.getAttribute=="function"&&(n=r.getAttribute("lang")),n}},Rwe={name:"path",lookup:function(t){var n;if(typeof window<"u"){var r=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(r instanceof Array)if(typeof t.lookupFromPathIndex=="number"){if(typeof r[t.lookupFromPathIndex]!="string")return;n=r[t.lookupFromPathIndex].replace("/","")}else n=r[0].replace("/","")}return n}},Iwe={name:"subdomain",lookup:function(t){var n=typeof t.lookupFromSubdomainIndex=="number"?t.lookupFromSubdomainIndex+1:1,r=typeof window<"u"&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(r)return r[n]}};function Dwe(){return{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"]}}var EU=function(){function e(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};gs(this,e),this.type="languageDetector",this.detectors={},this.init(t,n)}return ms(e,[{key:"init",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=n,this.options=kwe(r,this.options||{},Dwe()),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=i,this.addDetector(Pwe),this.addDetector(Twe),this.addDetector(Mwe),this.addDetector(Lwe),this.addDetector(Awe),this.addDetector(Owe),this.addDetector(Rwe),this.addDetector(Iwe)}},{key:"addDetector",value:function(n){this.detectors[n.name]=n}},{key:"detect",value:function(n){var r=this;n||(n=this.options.order);var i=[];return n.forEach(function(o){if(r.detectors[o]){var a=r.detectors[o].lookup(r.options);a&&typeof a=="string"&&(a=[a]),a&&(i=i.concat(a))}}),this.services.languageUtils.getBestMatchFromCodes?i:i.length>0?i[0]:null}},{key:"cacheUserLanguage",value:function(n,r){var i=this;r||(r=this.options.caches),r&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(n)>-1||r.forEach(function(o){i.detectors[o]&&i.detectors[o].cacheUserLanguage(n,i.options)}))}}]),e}();EU.type="languageDetector";function Ck(e){return Ck=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ck(e)}var PU=[],jwe=PU.forEach,Nwe=PU.slice;function _k(e){return jwe.call(Nwe.call(arguments,1),function(t){if(t)for(var n in t)e[n]===void 0&&(e[n]=t[n])}),e}function TU(){return typeof XMLHttpRequest=="function"||(typeof XMLHttpRequest>"u"?"undefined":Ck(XMLHttpRequest))==="object"}function $we(e){return!!e&&typeof e.then=="function"}function Fwe(e){return $we(e)?e:Promise.resolve(e)}function Bwe(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Dy={},zwe={get exports(){return Dy},set exports(e){Dy=e}},V1={},Hwe={get exports(){return V1},set exports(e){V1=e}},OR;function Wwe(){return OR||(OR=1,function(e,t){var n=typeof self<"u"?self:So,r=function(){function o(){this.fetch=!1,this.DOMException=n.DOMException}return o.prototype=n,new o}();(function(o){(function(a){var s={searchParams:"URLSearchParams"in o,iterable:"Symbol"in o&&"iterator"in Symbol,blob:"FileReader"in o&&"Blob"in o&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in o,arrayBuffer:"ArrayBuffer"in o};function l($){return $&&DataView.prototype.isPrototypeOf($)}if(s.arrayBuffer)var u=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function($){return $&&u.indexOf(Object.prototype.toString.call($))>-1};function h($){if(typeof $!="string"&&($=String($)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test($))throw new TypeError("Invalid character in header field name");return $.toLowerCase()}function m($){return typeof $!="string"&&($=String($)),$}function y($){var V={next:function(){var X=$.shift();return{done:X===void 0,value:X}}};return s.iterable&&(V[Symbol.iterator]=function(){return V}),V}function b($){this.map={},$ instanceof b?$.forEach(function(V,X){this.append(X,V)},this):Array.isArray($)?$.forEach(function(V){this.append(V[0],V[1])},this):$&&Object.getOwnPropertyNames($).forEach(function(V){this.append(V,$[V])},this)}b.prototype.append=function($,V){$=h($),V=m(V);var X=this.map[$];this.map[$]=X?X+", "+V:V},b.prototype.delete=function($){delete this.map[h($)]},b.prototype.get=function($){return $=h($),this.has($)?this.map[$]:null},b.prototype.has=function($){return this.map.hasOwnProperty(h($))},b.prototype.set=function($,V){this.map[h($)]=m(V)},b.prototype.forEach=function($,V){for(var X in this.map)this.map.hasOwnProperty(X)&&$.call(V,this.map[X],X,this)},b.prototype.keys=function(){var $=[];return this.forEach(function(V,X){$.push(X)}),y($)},b.prototype.values=function(){var $=[];return this.forEach(function(V){$.push(V)}),y($)},b.prototype.entries=function(){var $=[];return this.forEach(function(V,X){$.push([X,V])}),y($)},s.iterable&&(b.prototype[Symbol.iterator]=b.prototype.entries);function w($){if($.bodyUsed)return Promise.reject(new TypeError("Already read"));$.bodyUsed=!0}function E($){return new Promise(function(V,X){$.onload=function(){V($.result)},$.onerror=function(){X($.error)}})}function _($){var V=new FileReader,X=E(V);return V.readAsArrayBuffer($),X}function k($){var V=new FileReader,X=E(V);return V.readAsText($),X}function T($){for(var V=new Uint8Array($),X=new Array(V.length),Q=0;Q-1?V:$}function N($,V){V=V||{};var X=V.body;if($ instanceof N){if($.bodyUsed)throw new TypeError("Already read");this.url=$.url,this.credentials=$.credentials,V.headers||(this.headers=new b($.headers)),this.method=$.method,this.mode=$.mode,this.signal=$.signal,!X&&$._bodyInit!=null&&(X=$._bodyInit,$.bodyUsed=!0)}else this.url=String($);if(this.credentials=V.credentials||this.credentials||"same-origin",(V.headers||!this.headers)&&(this.headers=new b(V.headers)),this.method=I(V.method||this.method||"GET"),this.mode=V.mode||this.mode||null,this.signal=V.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&X)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(X)}N.prototype.clone=function(){return new N(this,{body:this._bodyInit})};function W($){var V=new FormData;return $.trim().split("&").forEach(function(X){if(X){var Q=X.split("="),G=Q.shift().replace(/\+/g," "),Y=Q.join("=").replace(/\+/g," ");V.append(decodeURIComponent(G),decodeURIComponent(Y))}}),V}function B($){var V=new b,X=$.replace(/\r?\n[\t ]+/g," ");return X.split(/\r?\n/).forEach(function(Q){var G=Q.split(":"),Y=G.shift().trim();if(Y){var ee=G.join(":").trim();V.append(Y,ee)}}),V}O.call(N.prototype);function K($,V){V||(V={}),this.type="default",this.status=V.status===void 0?200:V.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in V?V.statusText:"OK",this.headers=new b(V.headers),this.url=V.url||"",this._initBody($)}O.call(K.prototype),K.prototype.clone=function(){return new K(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new b(this.headers),url:this.url})},K.error=function(){var $=new K(null,{status:0,statusText:""});return $.type="error",$};var ne=[301,302,303,307,308];K.redirect=function($,V){if(ne.indexOf(V)===-1)throw new RangeError("Invalid status code");return new K(null,{status:V,headers:{location:$}})},a.DOMException=o.DOMException;try{new a.DOMException}catch{a.DOMException=function(V,X){this.message=V,this.name=X;var Q=Error(V);this.stack=Q.stack},a.DOMException.prototype=Object.create(Error.prototype),a.DOMException.prototype.constructor=a.DOMException}function z($,V){return new Promise(function(X,Q){var G=new N($,V);if(G.signal&&G.signal.aborted)return Q(new a.DOMException("Aborted","AbortError"));var Y=new XMLHttpRequest;function ee(){Y.abort()}Y.onload=function(){var fe={status:Y.status,statusText:Y.statusText,headers:B(Y.getAllResponseHeaders()||"")};fe.url="responseURL"in Y?Y.responseURL:fe.headers.get("X-Request-URL");var Ce="response"in Y?Y.response:Y.responseText;X(new K(Ce,fe))},Y.onerror=function(){Q(new TypeError("Network request failed"))},Y.ontimeout=function(){Q(new TypeError("Network request failed"))},Y.onabort=function(){Q(new a.DOMException("Aborted","AbortError"))},Y.open(G.method,G.url,!0),G.credentials==="include"?Y.withCredentials=!0:G.credentials==="omit"&&(Y.withCredentials=!1),"responseType"in Y&&s.blob&&(Y.responseType="blob"),G.headers.forEach(function(fe,Ce){Y.setRequestHeader(Ce,fe)}),G.signal&&(G.signal.addEventListener("abort",ee),Y.onreadystatechange=function(){Y.readyState===4&&G.signal.removeEventListener("abort",ee)}),Y.send(typeof G._bodyInit>"u"?null:G._bodyInit)})}return z.polyfill=!0,o.fetch||(o.fetch=z,o.Headers=b,o.Request=N,o.Response=K),a.Headers=b,a.Request=N,a.Response=K,a.fetch=z,Object.defineProperty(a,"__esModule",{value:!0}),a})({})})(r),r.fetch.ponyfill=!0,delete r.fetch.polyfill;var i=r;t=i.fetch,t.default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t}(Hwe,V1)),V1}(function(e,t){var n;if(typeof fetch=="function"&&(typeof So<"u"&&So.fetch?n=So.fetch:typeof window<"u"&&window.fetch?n=window.fetch:n=fetch),typeof Bwe<"u"&&(typeof window>"u"||typeof window.document>"u")){var r=n||Wwe();r.default&&(r=r.default),t.default=r,e.exports=t.default}})(zwe,Dy);const MU=Dy,RR=Cj({__proto__:null,default:MU},[Dy]);function T3(e){return T3=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},T3(e)}var Yu;typeof fetch=="function"&&(typeof global<"u"&&global.fetch?Yu=global.fetch:typeof window<"u"&&window.fetch?Yu=window.fetch:Yu=fetch);var jy;TU()&&(typeof global<"u"&&global.XMLHttpRequest?jy=global.XMLHttpRequest:typeof window<"u"&&window.XMLHttpRequest&&(jy=window.XMLHttpRequest));var M3;typeof ActiveXObject=="function"&&(typeof global<"u"&&global.ActiveXObject?M3=global.ActiveXObject:typeof window<"u"&&window.ActiveXObject&&(M3=window.ActiveXObject));!Yu&&RR&&!jy&&!M3&&(Yu=MU||RR);typeof Yu!="function"&&(Yu=void 0);var kk=function(t,n){if(n&&T3(n)==="object"){var r="";for(var i in n)r+="&"+encodeURIComponent(i)+"="+encodeURIComponent(n[i]);if(!r)return t;t=t+(t.indexOf("?")!==-1?"&":"?")+r.slice(1)}return t},IR=function(t,n,r){Yu(t,n).then(function(i){if(!i.ok)return r(i.statusText||"Error",{status:i.status});i.text().then(function(o){r(null,{status:i.status,data:o})}).catch(r)}).catch(r)},DR=!1,Uwe=function(t,n,r,i){t.queryStringParams&&(n=kk(n,t.queryStringParams));var o=_k({},typeof t.customHeaders=="function"?t.customHeaders():t.customHeaders);r&&(o["Content-Type"]="application/json");var a=typeof t.requestOptions=="function"?t.requestOptions(r):t.requestOptions,s=_k({method:r?"POST":"GET",body:r?t.stringify(r):void 0,headers:o},DR?{}:a);try{IR(n,s,i)}catch(l){if(!a||Object.keys(a).length===0||!l.message||l.message.indexOf("not implemented")<0)return i(l);try{Object.keys(a).forEach(function(u){delete s[u]}),IR(n,s,i),DR=!0}catch(u){i(u)}}},Vwe=function(t,n,r,i){r&&T3(r)==="object"&&(r=kk("",r).slice(1)),t.queryStringParams&&(n=kk(n,t.queryStringParams));try{var o;jy?o=new jy:o=new M3("MSXML2.XMLHTTP.3.0"),o.open(r?"POST":"GET",n,1),t.crossDomain||o.setRequestHeader("X-Requested-With","XMLHttpRequest"),o.withCredentials=!!t.withCredentials,r&&o.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),o.overrideMimeType&&o.overrideMimeType("application/json");var a=t.customHeaders;if(a=typeof a=="function"?a():a,a)for(var s in a)o.setRequestHeader(s,a[s]);o.onreadystatechange=function(){o.readyState>3&&i(o.status>=400?o.statusText:null,{status:o.status,data:o.responseText})},o.send(r)}catch(l){console&&console.log(l)}},Gwe=function(t,n,r,i){if(typeof r=="function"&&(i=r,r=void 0),i=i||function(){},Yu&&n.indexOf("file:")!==0)return Uwe(t,n,r,i);if(TU()||typeof ActiveXObject=="function")return Vwe(t,n,r,i);i(new Error("No fetch and no xhr implementation found!"))};function Ny(e){return Ny=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ny(e)}function qwe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function jR(e,t){for(var n=0;n1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};qwe(this,e),this.services=t,this.options=n,this.allOptions=r,this.type="backend",this.init(t,n,r)}return Kwe(e,[{key:"init",value:function(n){var r=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=n,this.options=_k(i,this.options||{},Zwe()),this.allOptions=o,this.services&&this.options.reloadInterval&&setInterval(function(){return r.reload()},this.options.reloadInterval)}},{key:"readMulti",value:function(n,r,i){this._readAny(n,n,r,r,i)}},{key:"read",value:function(n,r,i){this._readAny([n],n,[r],r,i)}},{key:"_readAny",value:function(n,r,i,o,a){var s=this,l=this.options.loadPath;typeof this.options.loadPath=="function"&&(l=this.options.loadPath(n,i)),l=Fwe(l),l.then(function(u){if(!u)return a(null,{});var d=s.services.interpolator.interpolate(u,{lng:n.join("+"),ns:i.join("+")});s.loadUrl(d,a,r,o)})}},{key:"loadUrl",value:function(n,r,i,o){var a=this;this.options.request(this.options,n,void 0,function(s,l){if(l&&(l.status>=500&&l.status<600||!l.status))return r("failed loading "+n+"; status code: "+l.status,!0);if(l&&l.status>=400&&l.status<500)return r("failed loading "+n+"; status code: "+l.status,!1);if(!l&&s&&s.message&&s.message.indexOf("Failed to fetch")>-1)return r("failed loading "+n+": "+s.message,!0);if(s)return r(s,!1);var u,d;try{typeof l.data=="string"?u=a.options.parse(l.data,i,o):u=l.data}catch{d="failed parsing "+n+" to json"}if(d)return r(d,!1);r(null,u)})}},{key:"create",value:function(n,r,i,o,a){var s=this;if(this.options.addPath){typeof n=="string"&&(n=[n]);var l=this.options.parsePayload(r,i,o),u=0,d=[],h=[];n.forEach(function(m){var y=s.options.addPath;typeof s.options.addPath=="function"&&(y=s.options.addPath(m,r));var b=s.services.interpolator.interpolate(y,{lng:m,ns:r});s.options.request(s.options,b,l,function(w,E){u+=1,d.push(w),h.push(E),u===n.length&&typeof a=="function"&&a(d,h)})})}}},{key:"reload",value:function(){var n=this,r=this.services,i=r.backendConnector,o=r.languageUtils,a=r.logger,s=i.language;if(!(s&&s.toLowerCase()==="cimode")){var l=[],u=function(h){var m=o.toResolveHierarchy(h);m.forEach(function(y){l.indexOf(y)<0&&l.push(y)})};u(s),this.allOptions.preload&&this.allOptions.preload.forEach(function(d){return u(d)}),l.forEach(function(d){n.allOptions.ns.forEach(function(h){i.read(d,h,"read",null,null,function(m,y){m&&a.warn("loading namespace ".concat(h," for language ").concat(d," failed"),m),!m&&y&&a.log("loaded namespace ".concat(h," for language ").concat(d),y),i.loaded("".concat(d,"|").concat(h),m,y)})})})}}}]),e}();AU.type="backend";function Qwe(){if(console&&console.warn){for(var e,t=arguments.length,n=new Array(t),r=0;r2&&arguments[2]!==void 0?arguments[2]:{},r=t.languages[0],i=t.options?t.options.fallbackLng:!1,o=t.languages[t.languages.length-1];if(r.toLowerCase()==="cimode")return!0;var a=function(l,u){var d=t.services.backendConnector.state["".concat(l,"|").concat(u)];return d===-1||d===2};return n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!a(t.isLanguageChangingTo,e)?!1:!!(t.hasResourceBundle(r,e)||!t.services.backendConnector.backend||t.options.resources&&!t.options.partialBundledLanguages||a(r,e)&&(!i||a(o,e)))}function e4e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!t.languages||!t.languages.length)return Ek("i18n.languages were undefined or empty",t.languages),!0;var r=t.options.ignoreJSONStructure!==void 0;return r?t.hasLoadedNamespace(e,{precheck:function(o,a){if(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&o.services.backendConnector.backend&&o.isLanguageChangingTo&&!a(o.isLanguageChangingTo,e))return!1}}):Jwe(e,t,n)}var t4e=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,n4e={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},r4e=function(t){return n4e[t]},i4e=function(t){return t.replace(t4e,r4e)};function FR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function BR(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{};Pk=BR(BR({},Pk),e)}function a4e(){return Pk}var OU;function s4e(e){OU=e}function l4e(){return OU}var u4e={type:"3rdParty",init:function(t){o4e(t.options.react),s4e(t)}},c4e=S.createContext(),d4e=function(){function e(){gs(this,e),this.usedNamespaces={}}return ms(e,[{key:"addUsedNamespaces",value:function(n){var r=this;n.forEach(function(i){r.usedNamespaces[i]||(r.usedNamespaces[i]=!0)})}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}]),e}();function f4e(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,i,o,a,s=[],l=!0,u=!1;try{if(o=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(d){u=!0,i=d}finally{try{if(!l&&n.return!=null&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw i}}return s}}function h4e(e,t){return bU(e)||f4e(e,t)||xU(e,t)||SU()}function zR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function $C(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{},n=t.i18n,r=S.useContext(c4e)||{},i=r.i18n,o=r.defaultNS,a=n||i||l4e();if(a&&!a.reportNamespaces&&(a.reportNamespaces=new d4e),!a){Ek("You will need to pass in an i18next instance by using initReactI18next");var s=function(W){return Array.isArray(W)?W[W.length-1]:W},l=[s,{},!1];return l.t=s,l.i18n={},l.ready=!1,l}a.options.react&&a.options.react.wait!==void 0&&Ek("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var u=$C($C($C({},a4e()),a.options.react),t),d=u.useSuspense,h=u.keyPrefix,m=e||o||a.options&&a.options.defaultNS;m=typeof m=="string"?[m]:m||["translation"],a.reportNamespaces.addUsedNamespaces&&a.reportNamespaces.addUsedNamespaces(m);var y=(a.isInitialized||a.initializedStoreOnce)&&m.every(function(N){return e4e(N,a,u)});function b(){return a.getFixedT(null,u.nsMode==="fallback"?m:m[0],h)}var w=S.useState(b),E=h4e(w,2),_=E[0],k=E[1],T=m.join(),L=p4e(T),O=S.useRef(!0);S.useEffect(function(){var N=u.bindI18n,W=u.bindI18nStore;O.current=!0,!y&&!d&&$R(a,m,function(){O.current&&k(b)}),y&&L&&L!==T&&O.current&&k(b);function B(){O.current&&k(b)}return N&&a&&a.on(N,B),W&&a&&a.store.on(W,B),function(){O.current=!1,N&&a&&N.split(" ").forEach(function(K){return a.off(K,B)}),W&&a&&W.split(" ").forEach(function(K){return a.store.off(K,B)})}},[a,T]);var D=S.useRef(!0);S.useEffect(function(){O.current&&!D.current&&k(b),D.current=!1},[a,h]);var I=[_,a,y];if(I.t=_,I.i18n=a,I.ready=y,y||!y&&!d)return I;throw new Promise(function(N){$R(a,m,function(){N()})})}Et.use(AU).use(EU).use(u4e).init({fallbackLng:"en",debug:!1,backend:{loadPath:"/locales/{{lng}}.json"},interpolation:{escapeValue:!1},returnNull:!1});const g4e={isConnected:!1,isProcessing:!1,log:[],shouldShowLogViewer:!1,shouldDisplayInProgressType:"latents",shouldDisplayGuides:!0,isGFPGANAvailable:!0,isESRGANAvailable:!0,socketId:"",shouldConfirmOnDelete:!0,openAccordions:[0],currentStep:0,totalSteps:0,currentIteration:0,totalIterations:0,currentStatus:Et.isInitialized?Et.t("common.statusDisconnected"):"Disconnected",currentStatusHasSteps:!1,model:"",model_id:"",model_hash:"",app_id:"",app_version:"",model_list:{},infill_methods:[],hasError:!1,wasErrorSeen:!0,isCancelable:!0,saveIntermediatesInterval:5,enableImageDebugging:!1,toastQueue:[],searchFolder:null,foundModels:null,openModel:null,cancelOptions:{cancelType:"immediate",cancelAfter:null}},RU=ap({name:"system",initialState:g4e,reducers:{setShouldDisplayInProgressType:(e,t)=>{e.shouldDisplayInProgressType=t.payload},setIsProcessing:(e,t)=>{e.isProcessing=t.payload},setCurrentStatus:(e,t)=>{e.currentStatus=t.payload},setSystemStatus:(e,t)=>({...e,...t.payload}),errorOccurred:e=>{e.hasError=!0,e.isProcessing=!1,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.currentStatus=Et.t("common.statusError"),e.wasErrorSeen=!1},errorSeen:e=>{e.hasError=!1,e.wasErrorSeen=!0,e.currentStatus=e.isConnected?Et.t("common.statusConnected"):Et.t("common.statusDisconnected")},addLogEntry:(e,t)=>{const{timestamp:n,message:r,level:i}=t.payload,a={timestamp:n,message:r,level:i||"info"};e.log.push(a)},setShouldShowLogViewer:(e,t)=>{e.shouldShowLogViewer=t.payload},setIsConnected:(e,t)=>{e.isConnected=t.payload,e.isProcessing=!1,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.hasError=!1},setSocketId:(e,t)=>{e.socketId=t.payload},setShouldConfirmOnDelete:(e,t)=>{e.shouldConfirmOnDelete=t.payload},setOpenAccordions:(e,t)=>{e.openAccordions=t.payload},setSystemConfig:(e,t)=>({...e,...t.payload}),setShouldDisplayGuides:(e,t)=>{e.shouldDisplayGuides=t.payload},processingCanceled:e=>{e.isProcessing=!1,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.currentStatus=Et.t("common.statusProcessingCanceled")},generationRequested:e=>{e.isProcessing=!0,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.currentStatus=Et.t("common.statusPreparing")},setModelList:(e,t)=>{e.model_list=t.payload},setIsCancelable:(e,t)=>{e.isCancelable=t.payload},modelChangeRequested:e=>{e.currentStatus=Et.t("common.statusLoadingModel"),e.isCancelable=!1,e.isProcessing=!0,e.currentStatusHasSteps=!1},modelConvertRequested:e=>{e.currentStatus=Et.t("common.statusConvertingModel"),e.isCancelable=!1,e.isProcessing=!0,e.currentStatusHasSteps=!1},modelMergingRequested:e=>{e.currentStatus=Et.t("common.statusMergingModels"),e.isCancelable=!1,e.isProcessing=!0,e.currentStatusHasSteps=!1},setSaveIntermediatesInterval:(e,t)=>{e.saveIntermediatesInterval=t.payload},setEnableImageDebugging:(e,t)=>{e.enableImageDebugging=t.payload},addToast:(e,t)=>{e.toastQueue.push(t.payload)},clearToastQueue:e=>{e.toastQueue=[]},setProcessingIndeterminateTask:(e,t)=>{e.isProcessing=!0,e.currentStatus=t.payload,e.currentStatusHasSteps=!1},setSearchFolder:(e,t)=>{e.searchFolder=t.payload},setFoundModels:(e,t)=>{e.foundModels=t.payload},setOpenModel:(e,t)=>{e.openModel=t.payload},setCancelType:(e,t)=>{e.cancelOptions.cancelType=t.payload},setCancelAfter:(e,t)=>{e.cancelOptions.cancelAfter=t.payload}}}),{setShouldDisplayInProgressType:m4e,setIsProcessing:wa,addLogEntry:Pi,setShouldShowLogViewer:FC,setIsConnected:HR,setSocketId:ONe,setShouldConfirmOnDelete:IU,setOpenAccordions:v4e,setSystemStatus:y4e,setCurrentStatus:hh,setSystemConfig:b4e,setShouldDisplayGuides:x4e,processingCanceled:S4e,errorOccurred:WR,errorSeen:DU,setModelList:Ag,setIsCancelable:_d,modelChangeRequested:w4e,modelConvertRequested:C4e,modelMergingRequested:_4e,setSaveIntermediatesInterval:k4e,setEnableImageDebugging:E4e,generationRequested:P4e,addToast:$u,clearToastQueue:T4e,setProcessingIndeterminateTask:M4e,setSearchFolder:jU,setFoundModels:NU,setOpenModel:UR,setCancelType:VR,setCancelAfter:BC}=RU.actions,L4e=RU.reducer,xE=["txt2img","img2img","unifiedCanvas","nodes","postprocess","training"],A4e={activeTab:0,currentTheme:"dark",parametersPanelScrollPosition:0,shouldHoldParametersPanelOpen:!1,shouldPinParametersPanel:!0,shouldShowParametersPanel:!0,shouldShowDualDisplay:!0,shouldShowImageDetails:!1,shouldUseCanvasBetaLayout:!1,shouldShowExistingModelsInSearch:!1,shouldUseSliders:!1,addNewModelUIOption:null},O4e=A4e,$U=ap({name:"ui",initialState:O4e,reducers:{setActiveTab:(e,t)=>{typeof t.payload=="number"?e.activeTab=t.payload:e.activeTab=xE.indexOf(t.payload)},setCurrentTheme:(e,t)=>{e.currentTheme=t.payload},setParametersPanelScrollPosition:(e,t)=>{e.parametersPanelScrollPosition=t.payload},setShouldPinParametersPanel:(e,t)=>{e.shouldPinParametersPanel=t.payload},setShouldShowParametersPanel:(e,t)=>{e.shouldShowParametersPanel=t.payload},setShouldHoldParametersPanelOpen:(e,t)=>{e.shouldHoldParametersPanelOpen=t.payload},setShouldShowDualDisplay:(e,t)=>{e.shouldShowDualDisplay=t.payload},setShouldShowImageDetails:(e,t)=>{e.shouldShowImageDetails=t.payload},setShouldUseCanvasBetaLayout:(e,t)=>{e.shouldUseCanvasBetaLayout=t.payload},setShouldShowExistingModelsInSearch:(e,t)=>{e.shouldShowExistingModelsInSearch=t.payload},setShouldUseSliders:(e,t)=>{e.shouldUseSliders=t.payload},setAddNewModelUIOption:(e,t)=>{e.addNewModelUIOption=t.payload}}}),{setActiveTab:Wo,setCurrentTheme:R4e,setParametersPanelScrollPosition:I4e,setShouldHoldParametersPanelOpen:D4e,setShouldPinParametersPanel:j4e,setShouldShowParametersPanel:Fh,setShouldShowDualDisplay:N4e,setShouldShowImageDetails:FU,setShouldUseCanvasBetaLayout:$4e,setShouldShowExistingModelsInSearch:F4e,setShouldUseSliders:B4e,setAddNewModelUIOption:Bh}=$U.actions,z4e=$U.reducer,iu=Object.create(null);iu.open="0";iu.close="1";iu.ping="2";iu.pong="3";iu.message="4";iu.upgrade="5";iu.noop="6";const fS=Object.create(null);Object.keys(iu).forEach(e=>{fS[iu[e]]=e});const H4e={type:"error",data:"parser error"},W4e=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",U4e=typeof ArrayBuffer=="function",V4e=e=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,BU=({type:e,data:t},n,r)=>W4e&&t instanceof Blob?n?r(t):GR(t,r):U4e&&(t instanceof ArrayBuffer||V4e(t))?n?r(t):GR(new Blob([t]),r):r(iu[e]+(t||"")),GR=(e,t)=>{const n=new FileReader;return n.onload=function(){const r=n.result.split(",")[1];t("b"+(r||""))},n.readAsDataURL(e)},qR="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",m1=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let e=0;e{let t=e.length*.75,n=e.length,r,i=0,o,a,s,l;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);const u=new ArrayBuffer(t),d=new Uint8Array(u);for(r=0;r>4,d[i++]=(a&15)<<4|s>>2,d[i++]=(s&3)<<6|l&63;return u},q4e=typeof ArrayBuffer=="function",zU=(e,t)=>{if(typeof e!="string")return{type:"message",data:HU(e,t)};const n=e.charAt(0);return n==="b"?{type:"message",data:K4e(e.substring(1),t)}:fS[n]?e.length>1?{type:fS[n],data:e.substring(1)}:{type:fS[n]}:H4e},K4e=(e,t)=>{if(q4e){const n=G4e(e);return HU(n,t)}else return{base64:!0,data:e}},HU=(e,t)=>{switch(t){case"blob":return e instanceof ArrayBuffer?new Blob([e]):e;case"arraybuffer":default:return e}},WU=String.fromCharCode(30),Y4e=(e,t)=>{const n=e.length,r=new Array(n);let i=0;e.forEach((o,a)=>{BU(o,!1,s=>{r[a]=s,++i===n&&t(r.join(WU))})})},X4e=(e,t)=>{const n=e.split(WU),r=[];for(let i=0;itypeof self<"u"?self:typeof window<"u"?window:Function("return this")())();function VU(e,...t){return t.reduce((n,r)=>(e.hasOwnProperty(r)&&(n[r]=e[r]),n),{})}const Q4e=Za.setTimeout,J4e=Za.clearTimeout;function s4(e,t){t.useNativeTimers?(e.setTimeoutFn=Q4e.bind(Za),e.clearTimeoutFn=J4e.bind(Za)):(e.setTimeoutFn=Za.setTimeout.bind(Za),e.clearTimeoutFn=Za.clearTimeout.bind(Za))}const e5e=1.33;function t5e(e){return typeof e=="string"?n5e(e):Math.ceil((e.byteLength||e.size)*e5e)}function n5e(e){let t=0,n=0;for(let r=0,i=e.length;r=57344?n+=3:(r++,n+=4);return n}class r5e extends Error{constructor(t,n,r){super(t),this.description=n,this.context=r,this.type="TransportError"}}class GU extends ai{constructor(t){super(),this.writable=!1,s4(this,t),this.opts=t,this.query=t.query,this.socket=t.socket}onError(t,n,r){return super.emitReserved("error",new r5e(t,n,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(t){this.readyState==="open"&&this.write(t)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(t){const n=zU(t,this.socket.binaryType);this.onPacket(n)}onPacket(t){super.emitReserved("packet",t)}onClose(t){this.readyState="closed",super.emitReserved("close",t)}pause(t){}}const qU="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),Tk=64,i5e={};let KR=0,rx=0,YR;function XR(e){let t="";do t=qU[e%Tk]+t,e=Math.floor(e/Tk);while(e>0);return t}function KU(){const e=XR(+new Date);return e!==YR?(KR=0,YR=e):e+"."+XR(KR++)}for(;rx{this.readyState="paused",t()};if(this.polling||!this.writable){let r=0;this.polling&&(r++,this.once("pollComplete",function(){--r||n()})),this.writable||(r++,this.once("drain",function(){--r||n()}))}else n()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(t){const n=r=>{if(this.readyState==="opening"&&r.type==="open"&&this.onOpen(),r.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(r)};X4e(t,this.socket.binaryType).forEach(n),this.readyState!=="closed"&&(this.polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this.poll())}doClose(){const t=()=>{this.write([{type:"close"}])};this.readyState==="open"?t():this.once("open",t)}write(t){this.writable=!1,Y4e(t,n=>{this.doWrite(n,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){let t=this.query||{};const n=this.opts.secure?"https":"http";let r="";this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=KU()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.opts.port&&(n==="https"&&Number(this.opts.port)!==443||n==="http"&&Number(this.opts.port)!==80)&&(r=":"+this.opts.port);const i=YU(t),o=this.opts.hostname.indexOf(":")!==-1;return n+"://"+(o?"["+this.opts.hostname+"]":this.opts.hostname)+r+this.opts.path+(i.length?"?"+i:"")}request(t={}){return Object.assign(t,{xd:this.xd,xs:this.xs},this.opts),new eu(this.uri(),t)}doWrite(t,n){const r=this.request({method:"POST",data:t});r.on("success",n),r.on("error",(i,o)=>{this.onError("xhr post error",i,o)})}doPoll(){const t=this.request();t.on("data",this.onData.bind(this)),t.on("error",(n,r)=>{this.onError("xhr poll error",n,r)}),this.pollXhr=t}}class eu extends ai{constructor(t,n){super(),s4(this,n),this.opts=n,this.method=n.method||"GET",this.uri=t,this.async=n.async!==!1,this.data=n.data!==void 0?n.data:null,this.create()}create(){const t=VU(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this.opts.xd,t.xscheme=!!this.opts.xs;const n=this.xhr=new ZU(t);try{n.open(this.method,this.uri,this.async);try{if(this.opts.extraHeaders){n.setDisableHeaderCheck&&n.setDisableHeaderCheck(!0);for(let r in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(r)&&n.setRequestHeader(r,this.opts.extraHeaders[r])}}catch{}if(this.method==="POST")try{n.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{n.setRequestHeader("Accept","*/*")}catch{}"withCredentials"in n&&(n.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(n.timeout=this.opts.requestTimeout),n.onreadystatechange=()=>{n.readyState===4&&(n.status===200||n.status===1223?this.onLoad():this.setTimeoutFn(()=>{this.onError(typeof n.status=="number"?n.status:0)},0))},n.send(this.data)}catch(r){this.setTimeoutFn(()=>{this.onError(r)},0);return}typeof document<"u"&&(this.index=eu.requestsCount++,eu.requests[this.index]=this)}onError(t){this.emitReserved("error",t,this.xhr),this.cleanup(!0)}cleanup(t){if(!(typeof this.xhr>"u"||this.xhr===null)){if(this.xhr.onreadystatechange=s5e,t)try{this.xhr.abort()}catch{}typeof document<"u"&&delete eu.requests[this.index],this.xhr=null}}onLoad(){const t=this.xhr.responseText;t!==null&&(this.emitReserved("data",t),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}eu.requestsCount=0;eu.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",ZR);else if(typeof addEventListener=="function"){const e="onpagehide"in Za?"pagehide":"unload";addEventListener(e,ZR,!1)}}function ZR(){for(let e in eu.requests)eu.requests.hasOwnProperty(e)&&eu.requests[e].abort()}const QU=(()=>typeof Promise=="function"&&typeof Promise.resolve=="function"?t=>Promise.resolve().then(t):(t,n)=>n(t,0))(),ix=Za.WebSocket||Za.MozWebSocket,QR=!0,c5e="arraybuffer",JR=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class d5e extends GU{constructor(t){super(t),this.supportsBinary=!t.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const t=this.uri(),n=this.opts.protocols,r=JR?{}:VU(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=QR&&!JR?n?new ix(t,n):new ix(t):new ix(t,n,r)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType||c5e,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=t=>this.onClose({description:"websocket connection closed",context:t}),this.ws.onmessage=t=>this.onData(t.data),this.ws.onerror=t=>this.onError("websocket error",t)}write(t){this.writable=!1;for(let n=0;n{const a={};try{QR&&this.ws.send(o)}catch{}i&&QU(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.close(),this.ws=null)}uri(){let t=this.query||{};const n=this.opts.secure?"wss":"ws";let r="";this.opts.port&&(n==="wss"&&Number(this.opts.port)!==443||n==="ws"&&Number(this.opts.port)!==80)&&(r=":"+this.opts.port),this.opts.timestampRequests&&(t[this.opts.timestampParam]=KU()),this.supportsBinary||(t.b64=1);const i=YU(t),o=this.opts.hostname.indexOf(":")!==-1;return n+"://"+(o?"["+this.opts.hostname+"]":this.opts.hostname)+r+this.opts.path+(i.length?"?"+i:"")}check(){return!!ix}}const f5e={websocket:d5e,polling:u5e},h5e=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,p5e=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Mk(e){const t=e,n=e.indexOf("["),r=e.indexOf("]");n!=-1&&r!=-1&&(e=e.substring(0,n)+e.substring(n,r).replace(/:/g,";")+e.substring(r,e.length));let i=h5e.exec(e||""),o={},a=14;for(;a--;)o[p5e[a]]=i[a]||"";return n!=-1&&r!=-1&&(o.source=t,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=g5e(o,o.path),o.queryKey=m5e(o,o.query),o}function g5e(e,t){const n=/\/{2,9}/g,r=t.replace(n,"/").split("/");return(t.slice(0,1)=="/"||t.length===0)&&r.splice(0,1),t.slice(-1)=="/"&&r.splice(r.length-1,1),r}function m5e(e,t){const n={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(r,i,o){i&&(n[i]=o)}),n}let JU=class Ng extends ai{constructor(t,n={}){super(),this.writeBuffer=[],t&&typeof t=="object"&&(n=t,t=null),t?(t=Mk(t),n.hostname=t.host,n.secure=t.protocol==="https"||t.protocol==="wss",n.port=t.port,t.query&&(n.query=t.query)):n.host&&(n.hostname=Mk(n.host).host),s4(this,n),this.secure=n.secure!=null?n.secure:typeof location<"u"&&location.protocol==="https:",n.hostname&&!n.port&&(n.port=this.secure?"443":"80"),this.hostname=n.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=n.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=n.transports||["polling","websocket"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!0},n),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=o5e(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,typeof addEventListener=="function"&&(this.opts.closeOnBeforeunload&&(this.beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(t){const n=Object.assign({},this.opts.query);n.EIO=UU,n.transport=t,this.id&&(n.sid=this.id);const r=Object.assign({},this.opts.transportOptions[t],this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port});return new f5e[t](r)}open(){let t;if(this.opts.rememberUpgrade&&Ng.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)t="websocket";else if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}else t=this.transports[0];this.readyState="opening";try{t=this.createTransport(t)}catch{this.transports.shift(),this.open();return}t.open(),this.setTransport(t)}setTransport(t){this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",n=>this.onClose("transport close",n))}probe(t){let n=this.createTransport(t),r=!1;Ng.priorWebsocketSuccess=!1;const i=()=>{r||(n.send([{type:"ping",data:"probe"}]),n.once("packet",h=>{if(!r)if(h.type==="pong"&&h.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",n),!n)return;Ng.priorWebsocketSuccess=n.name==="websocket",this.transport.pause(()=>{r||this.readyState!=="closed"&&(d(),this.setTransport(n),n.send([{type:"upgrade"}]),this.emitReserved("upgrade",n),n=null,this.upgrading=!1,this.flush())})}else{const m=new Error("probe error");m.transport=n.name,this.emitReserved("upgradeError",m)}}))};function o(){r||(r=!0,d(),n.close(),n=null)}const a=h=>{const m=new Error("probe error: "+h);m.transport=n.name,o(),this.emitReserved("upgradeError",m)};function s(){a("transport closed")}function l(){a("socket closed")}function u(h){n&&h.name!==n.name&&o()}const d=()=>{n.removeListener("open",i),n.removeListener("error",a),n.removeListener("close",s),this.off("close",l),this.off("upgrading",u)};n.once("open",i),n.once("error",a),n.once("close",s),this.once("close",l),this.once("upgrading",u),n.open()}onOpen(){if(this.readyState="open",Ng.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush(),this.readyState==="open"&&this.opts.upgrade){let t=0;const n=this.upgrades.length;for(;t{this.onClose("ping timeout")},this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const t=this.getWritablePackets();this.transport.send(t),this.prevBufferLen=t.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let n=1;for(let r=0;r0&&n>this.maxPayload)return this.writeBuffer.slice(0,r);n+=2}return this.writeBuffer}write(t,n,r){return this.sendPacket("message",t,n,r),this}send(t,n,r){return this.sendPacket("message",t,n,r),this}sendPacket(t,n,r,i){if(typeof n=="function"&&(i=n,n=void 0),typeof r=="function"&&(i=r,r=null),this.readyState==="closing"||this.readyState==="closed")return;r=r||{},r.compress=r.compress!==!1;const o={type:t,data:n,options:r};this.emitReserved("packetCreate",o),this.writeBuffer.push(o),i&&this.once("flush",i),this.flush()}close(){const t=()=>{this.onClose("forced close"),this.transport.close()},n=()=>{this.off("upgrade",n),this.off("upgradeError",n),t()},r=()=>{this.once("upgrade",n),this.once("upgradeError",n)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?r():t()}):this.upgrading?r():t()),this}onError(t){Ng.priorWebsocketSuccess=!1,this.emitReserved("error",t),this.onClose("transport error",t)}onClose(t,n){(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")&&(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),typeof removeEventListener=="function"&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",t,n),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(t){const n=[];let r=0;const i=t.length;for(;rtypeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,eV=Object.prototype.toString,x5e=typeof Blob=="function"||typeof Blob<"u"&&eV.call(Blob)==="[object BlobConstructor]",S5e=typeof File=="function"||typeof File<"u"&&eV.call(File)==="[object FileConstructor]";function SE(e){return y5e&&(e instanceof ArrayBuffer||b5e(e))||x5e&&e instanceof Blob||S5e&&e instanceof File}function hS(e,t){if(!e||typeof e!="object")return!1;if(Array.isArray(e)){for(let n=0,r=e.length;n=0&&e.num0;case nn.ACK:case nn.BINARY_ACK:return Array.isArray(n)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class E5e{constructor(t){this.packet=t,this.buffers=[],this.reconPack=t}takeBinaryData(t){if(this.buffers.push(t),this.buffers.length===this.reconPack.attachments){const n=C5e(this.reconPack,this.buffers);return this.finishedReconstruction(),n}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const P5e=Object.freeze(Object.defineProperty({__proto__:null,Decoder:wE,Encoder:k5e,get PacketType(){return nn},protocol:_5e},Symbol.toStringTag,{value:"Module"}));function Hs(e,t,n){return e.on(t,n),function(){e.off(t,n)}}const T5e=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class tV extends ai{constructor(t,n,r){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this.ids=0,this.acks={},this.flags={},this.io=t,this.nsp=n,r&&r.auth&&(this.auth=r.auth),this._opts=Object.assign({},r),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const t=this.io;this.subs=[Hs(t,"open",this.onopen.bind(this)),Hs(t,"packet",this.onpacket.bind(this)),Hs(t,"error",this.onerror.bind(this)),Hs(t,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...t){return t.unshift("message"),this.emit.apply(this,t),this}emit(t,...n){if(T5e.hasOwnProperty(t))throw new Error('"'+t.toString()+'" is a reserved event name');if(n.unshift(t),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(n),this;const r={type:nn.EVENT,data:n};if(r.options={},r.options.compress=this.flags.compress!==!1,typeof n[n.length-1]=="function"){const a=this.ids++,s=n.pop();this._registerAckCallback(a,s),r.id=a}const i=this.io.engine&&this.io.engine.transport&&this.io.engine.transport.writable;return this.flags.volatile&&(!i||!this.connected)||(this.connected?(this.notifyOutgoingListeners(r),this.packet(r)):this.sendBuffer.push(r)),this.flags={},this}_registerAckCallback(t,n){var r;const i=(r=this.flags.timeout)!==null&&r!==void 0?r:this._opts.ackTimeout;if(i===void 0){this.acks[t]=n;return}const o=this.io.setTimeoutFn(()=>{delete this.acks[t];for(let a=0;a{this.io.clearTimeoutFn(o),n.apply(this,[null,...a])}}emitWithAck(t,...n){const r=this.flags.timeout!==void 0||this._opts.ackTimeout!==void 0;return new Promise((i,o)=>{n.push((a,s)=>r?a?o(a):i(s):i(a)),this.emit(t,...n)})}_addToQueue(t){let n;typeof t[t.length-1]=="function"&&(n=t.pop());const r={id:this.ids++,tryCount:0,pending:!1,args:t,flags:Object.assign({fromQueue:!0},this.flags)};t.push((i,...o)=>r!==this._queue[0]?void 0:(i!==null?r.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(i)):(this._queue.shift(),n&&n(null,...o)),r.pending=!1,this._drainQueue())),this._queue.push(r),this._drainQueue()}_drainQueue(){if(this._queue.length===0)return;const t=this._queue[0];if(t.pending)return;t.pending=!0,t.tryCount++;const n=this.ids;this.ids=t.id,this.flags=t.flags,this.emit.apply(this,t.args),this.ids=n}packet(t){t.nsp=this.nsp,this.io._packet(t)}onopen(){typeof this.auth=="function"?this.auth(t=>{this._sendConnectPacket(t)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(t){this.packet({type:nn.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},t):t})}onerror(t){this.connected||this.emitReserved("connect_error",t)}onclose(t,n){this.connected=!1,delete this.id,this.emitReserved("disconnect",t,n)}onpacket(t){if(t.nsp===this.nsp)switch(t.type){case nn.CONNECT:t.data&&t.data.sid?this.onconnect(t.data.sid,t.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case nn.EVENT:case nn.BINARY_EVENT:this.onevent(t);break;case nn.ACK:case nn.BINARY_ACK:this.onack(t);break;case nn.DISCONNECT:this.ondisconnect();break;case nn.CONNECT_ERROR:this.destroy();const r=new Error(t.data.message);r.data=t.data.data,this.emitReserved("connect_error",r);break}}onevent(t){const n=t.data||[];t.id!=null&&n.push(this.ack(t.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(t){if(this._anyListeners&&this._anyListeners.length){const n=this._anyListeners.slice();for(const r of n)r.apply(this,t)}super.emit.apply(this,t),this._pid&&t.length&&typeof t[t.length-1]=="string"&&(this._lastOffset=t[t.length-1])}ack(t){const n=this;let r=!1;return function(...i){r||(r=!0,n.packet({type:nn.ACK,id:t,data:i}))}}onack(t){const n=this.acks[t.id];typeof n=="function"&&(n.apply(this,t.data),delete this.acks[t.id])}onconnect(t,n){this.id=t,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(t=>this.emitEvent(t)),this.receiveBuffer=[],this.sendBuffer.forEach(t=>{this.notifyOutgoingListeners(t),this.packet(t)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(t=>t()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:nn.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(t){return this.flags.compress=t,this}get volatile(){return this.flags.volatile=!0,this}timeout(t){return this.flags.timeout=t,this}onAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(t),this}prependAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(t),this}offAny(t){if(!this._anyListeners)return this;if(t){const n=this._anyListeners;for(let r=0;r0&&e.jitter<=1?e.jitter:0,this.attempts=0}b0.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),n=Math.floor(t*this.jitter*e);e=Math.floor(t*10)&1?e+n:e-n}return Math.min(e,this.max)|0};b0.prototype.reset=function(){this.attempts=0};b0.prototype.setMin=function(e){this.ms=e};b0.prototype.setMax=function(e){this.max=e};b0.prototype.setJitter=function(e){this.jitter=e};class Ok extends ai{constructor(t,n){var r;super(),this.nsps={},this.subs=[],t&&typeof t=="object"&&(n=t,t=void 0),n=n||{},n.path=n.path||"/socket.io",this.opts=n,s4(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((r=n.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new b0({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState="closed",this.uri=t;const i=n.parser||P5e;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(t){return arguments.length?(this._reconnection=!!t,this):this._reconnection}reconnectionAttempts(t){return t===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=t,this)}reconnectionDelay(t){var n;return t===void 0?this._reconnectionDelay:(this._reconnectionDelay=t,(n=this.backoff)===null||n===void 0||n.setMin(t),this)}randomizationFactor(t){var n;return t===void 0?this._randomizationFactor:(this._randomizationFactor=t,(n=this.backoff)===null||n===void 0||n.setJitter(t),this)}reconnectionDelayMax(t){var n;return t===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=t,(n=this.backoff)===null||n===void 0||n.setMax(t),this)}timeout(t){return arguments.length?(this._timeout=t,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(t){if(~this._readyState.indexOf("open"))return this;this.engine=new JU(this.uri,this.opts);const n=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const i=Hs(n,"open",function(){r.onopen(),t&&t()}),o=Hs(n,"error",a=>{r.cleanup(),r._readyState="closed",this.emitReserved("error",a),t?t(a):r.maybeReconnectOnOpen()});if(this._timeout!==!1){const a=this._timeout;a===0&&i();const s=this.setTimeoutFn(()=>{i(),n.close(),n.emit("error",new Error("timeout"))},a);this.opts.autoUnref&&s.unref(),this.subs.push(function(){clearTimeout(s)})}return this.subs.push(i),this.subs.push(o),this}connect(t){return this.open(t)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const t=this.engine;this.subs.push(Hs(t,"ping",this.onping.bind(this)),Hs(t,"data",this.ondata.bind(this)),Hs(t,"error",this.onerror.bind(this)),Hs(t,"close",this.onclose.bind(this)),Hs(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(t){try{this.decoder.add(t)}catch(n){this.onclose("parse error",n)}}ondecoded(t){QU(()=>{this.emitReserved("packet",t)},this.setTimeoutFn)}onerror(t){this.emitReserved("error",t)}socket(t,n){let r=this.nsps[t];return r||(r=new tV(this,t,n),this.nsps[t]=r),this._autoConnect&&r.connect(),r}_destroy(t){const n=Object.keys(this.nsps);for(const r of n)if(this.nsps[r].active)return;this._close()}_packet(t){const n=this.encoder.encode(t);for(let r=0;rt()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(t,n){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",t,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const t=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const n=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn(()=>{t.skipReconnect||(this.emitReserved("reconnect_attempt",t.backoff.attempts),!t.skipReconnect&&t.open(i=>{i?(t._reconnecting=!1,t.reconnect(),this.emitReserved("reconnect_error",i)):t.onreconnect()}))},n);this.opts.autoUnref&&r.unref(),this.subs.push(function(){clearTimeout(r)})}}onreconnect(){const t=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",t)}}const Xv={};function pS(e,t){typeof e=="object"&&(t=e,e=void 0),t=t||{};const n=v5e(e,t.path||"/socket.io"),r=n.source,i=n.id,o=n.path,a=Xv[i]&&o in Xv[i].nsps,s=t.forceNew||t["force new connection"]||t.multiplex===!1||a;let l;return s?l=new Ok(r,t):(Xv[i]||(Xv[i]=new Ok(r,t)),l=Xv[i]),n.query&&!t.query&&(t.query=n.queryKey),l.socket(n.path,t)}Object.assign(pS,{Manager:Ok,Socket:tV,io:pS,connect:pS});const M5e=["ddim","plms","k_lms","k_dpm_2","k_dpm_2_a","k_dpmpp_2","k_dpmpp_2_a","k_euler","k_euler_a","k_heun"],L5e=["ddim","plms","k_lms","dpmpp_2","k_dpm_2","k_dpm_2_a","k_dpmpp_2","k_euler","k_euler_a","k_heun"],A5e=[64,128,192,256,320,384,448,512,576,640,704,768,832,896,960,1024,1088,1152,1216,1280,1344,1408,1472,1536,1600,1664,1728,1792,1856,1920,1984,2048],O5e=[64,128,192,256,320,384,448,512,576,640,704,768,832,896,960,1024,1088,1152,1216,1280,1344,1408,1472,1536,1600,1664,1728,1792,1856,1920,1984,2048],R5e=[{key:"2x",value:2},{key:"4x",value:4}],CE=0,_E=4294967295,I5e=["gfpgan","codeformer"],D5e=[{key:"None",value:"none"},{key:"Fast",value:"latents"},{key:"Accurate",value:"full-res"}];var j5e=Math.PI/180;function N5e(){return typeof window<"u"&&({}.toString.call(window)==="[object Window]"||{}.toString.call(window)==="[object global]")}const Im=typeof global<"u"?global:typeof window<"u"?window:typeof WorkerGlobalScope<"u"?self:{},ft={_global:Im,version:"8.4.2",isBrowser:N5e(),isUnminified:/param/.test(function(e){}.toString()),dblClickWindow:400,getAngle(e){return ft.angleDeg?e*j5e:e},enableTrace:!1,pointerEventsEnabled:!0,autoDrawEnabled:!0,hitOnDragEnabled:!1,capturePointerEventsEnabled:!1,_mouseListenClick:!1,_touchListenClick:!1,_pointerListenClick:!1,_mouseInDblClickWindow:!1,_touchInDblClickWindow:!1,_pointerInDblClickWindow:!1,_mouseDblClickPointerId:null,_touchDblClickPointerId:null,_pointerDblClickPointerId:null,pixelRatio:typeof window<"u"&&window.devicePixelRatio||1,dragDistance:3,angleDeg:!0,showWarnings:!0,dragButtons:[0,1],isDragging(){return ft.DD.isDragging},isDragReady(){return!!ft.DD.node},releaseCanvasOnDestroy:!0,document:Im.document,_injectGlobal(e){Im.Konva=e}},Mr=e=>{ft[e.prototype.getClassName()]=e};ft._injectGlobal(ft);class Ca{constructor(t=[1,0,0,1,0,0]){this.dirty=!1,this.m=t&&t.slice()||[1,0,0,1,0,0]}reset(){this.m[0]=1,this.m[1]=0,this.m[2]=0,this.m[3]=1,this.m[4]=0,this.m[5]=0}copy(){return new Ca(this.m)}copyInto(t){t.m[0]=this.m[0],t.m[1]=this.m[1],t.m[2]=this.m[2],t.m[3]=this.m[3],t.m[4]=this.m[4],t.m[5]=this.m[5]}point(t){var n=this.m;return{x:n[0]*t.x+n[2]*t.y+n[4],y:n[1]*t.x+n[3]*t.y+n[5]}}translate(t,n){return this.m[4]+=this.m[0]*t+this.m[2]*n,this.m[5]+=this.m[1]*t+this.m[3]*n,this}scale(t,n){return this.m[0]*=t,this.m[1]*=t,this.m[2]*=n,this.m[3]*=n,this}rotate(t){var n=Math.cos(t),r=Math.sin(t),i=this.m[0]*n+this.m[2]*r,o=this.m[1]*n+this.m[3]*r,a=this.m[0]*-r+this.m[2]*n,s=this.m[1]*-r+this.m[3]*n;return this.m[0]=i,this.m[1]=o,this.m[2]=a,this.m[3]=s,this}getTranslation(){return{x:this.m[4],y:this.m[5]}}skew(t,n){var r=this.m[0]+this.m[2]*n,i=this.m[1]+this.m[3]*n,o=this.m[2]+this.m[0]*t,a=this.m[3]+this.m[1]*t;return this.m[0]=r,this.m[1]=i,this.m[2]=o,this.m[3]=a,this}multiply(t){var n=this.m[0]*t.m[0]+this.m[2]*t.m[1],r=this.m[1]*t.m[0]+this.m[3]*t.m[1],i=this.m[0]*t.m[2]+this.m[2]*t.m[3],o=this.m[1]*t.m[2]+this.m[3]*t.m[3],a=this.m[0]*t.m[4]+this.m[2]*t.m[5]+this.m[4],s=this.m[1]*t.m[4]+this.m[3]*t.m[5]+this.m[5];return this.m[0]=n,this.m[1]=r,this.m[2]=i,this.m[3]=o,this.m[4]=a,this.m[5]=s,this}invert(){var t=1/(this.m[0]*this.m[3]-this.m[1]*this.m[2]),n=this.m[3]*t,r=-this.m[1]*t,i=-this.m[2]*t,o=this.m[0]*t,a=t*(this.m[2]*this.m[5]-this.m[3]*this.m[4]),s=t*(this.m[1]*this.m[4]-this.m[0]*this.m[5]);return this.m[0]=n,this.m[1]=r,this.m[2]=i,this.m[3]=o,this.m[4]=a,this.m[5]=s,this}getMatrix(){return this.m}decompose(){var t=this.m[0],n=this.m[1],r=this.m[2],i=this.m[3],o=this.m[4],a=this.m[5],s=t*i-n*r;let l={x:o,y:a,rotation:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(t!=0||n!=0){var u=Math.sqrt(t*t+n*n);l.rotation=n>0?Math.acos(t/u):-Math.acos(t/u),l.scaleX=u,l.scaleY=s/u,l.skewX=(t*r+n*i)/s,l.skewY=0}else if(r!=0||i!=0){var d=Math.sqrt(r*r+i*i);l.rotation=Math.PI/2-(i>0?Math.acos(-r/d):-Math.acos(r/d)),l.scaleX=s/d,l.scaleY=d,l.skewX=0,l.skewY=(t*r+n*i)/s}return l.rotation=de._getRotation(l.rotation),l}}var $5e="[object Array]",F5e="[object Number]",B5e="[object String]",z5e="[object Boolean]",H5e=Math.PI/180,W5e=180/Math.PI,zC="#",U5e="",V5e="0",G5e="Konva warning: ",eI="Konva error: ",q5e="rgb(",HC={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,132,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,255,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[119,128,144],slategrey:[119,128,144],snow:[255,255,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,5]},K5e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/,ox=[];const Y5e=typeof requestAnimationFrame<"u"&&requestAnimationFrame||function(e){setTimeout(e,60)},de={_isElement(e){return!!(e&&e.nodeType==1)},_isFunction(e){return!!(e&&e.constructor&&e.call&&e.apply)},_isPlainObject(e){return!!e&&e.constructor===Object},_isArray(e){return Object.prototype.toString.call(e)===$5e},_isNumber(e){return Object.prototype.toString.call(e)===F5e&&!isNaN(e)&&isFinite(e)},_isString(e){return Object.prototype.toString.call(e)===B5e},_isBoolean(e){return Object.prototype.toString.call(e)===z5e},isObject(e){return e instanceof Object},isValidSelector(e){if(typeof e!="string")return!1;var t=e[0];return t==="#"||t==="."||t===t.toUpperCase()},_sign(e){return e===0||e>0?1:-1},requestAnimFrame(e){ox.push(e),ox.length===1&&Y5e(function(){const t=ox;ox=[],t.forEach(function(n){n()})})},createCanvasElement(){var e=document.createElement("canvas");try{e.style=e.style||{}}catch{}return e},createImageElement(){return document.createElement("img")},_isInDocument(e){for(;e=e.parentNode;)if(e==document)return!0;return!1},_urlToImage(e,t){var n=de.createImageElement();n.onload=function(){t(n)},n.src=e},_rgbToHex(e,t,n){return((1<<24)+(e<<16)+(t<<8)+n).toString(16).slice(1)},_hexToRgb(e){e=e.replace(zC,U5e);var t=parseInt(e,16);return{r:t>>16&255,g:t>>8&255,b:t&255}},getRandomColor(){for(var e=(Math.random()*16777215<<0).toString(16);e.length<6;)e=V5e+e;return zC+e},getRGB(e){var t;return e in HC?(t=HC[e],{r:t[0],g:t[1],b:t[2]}):e[0]===zC?this._hexToRgb(e.substring(1)):e.substr(0,4)===q5e?(t=K5e.exec(e.replace(/ /g,"")),{r:parseInt(t[1],10),g:parseInt(t[2],10),b:parseInt(t[3],10)}):{r:0,g:0,b:0}},colorToRGBA(e){return e=e||"black",de._namedColorToRBA(e)||de._hex3ColorToRGBA(e)||de._hex4ColorToRGBA(e)||de._hex6ColorToRGBA(e)||de._hex8ColorToRGBA(e)||de._rgbColorToRGBA(e)||de._rgbaColorToRGBA(e)||de._hslColorToRGBA(e)},_namedColorToRBA(e){var t=HC[e.toLowerCase()];return t?{r:t[0],g:t[1],b:t[2],a:1}:null},_rgbColorToRGBA(e){if(e.indexOf("rgb(")===0){e=e.match(/rgb\(([^)]+)\)/)[1];var t=e.split(/ *, */).map(Number);return{r:t[0],g:t[1],b:t[2],a:1}}},_rgbaColorToRGBA(e){if(e.indexOf("rgba(")===0){e=e.match(/rgba\(([^)]+)\)/)[1];var t=e.split(/ *, */).map((n,r)=>n.slice(-1)==="%"?r===3?parseInt(n)/100:parseInt(n)/100*255:Number(n));return{r:t[0],g:t[1],b:t[2],a:t[3]}}},_hex8ColorToRGBA(e){if(e[0]==="#"&&e.length===9)return{r:parseInt(e.slice(1,3),16),g:parseInt(e.slice(3,5),16),b:parseInt(e.slice(5,7),16),a:parseInt(e.slice(7,9),16)/255}},_hex6ColorToRGBA(e){if(e[0]==="#"&&e.length===7)return{r:parseInt(e.slice(1,3),16),g:parseInt(e.slice(3,5),16),b:parseInt(e.slice(5,7),16),a:1}},_hex4ColorToRGBA(e){if(e[0]==="#"&&e.length===5)return{r:parseInt(e[1]+e[1],16),g:parseInt(e[2]+e[2],16),b:parseInt(e[3]+e[3],16),a:parseInt(e[4]+e[4],16)/255}},_hex3ColorToRGBA(e){if(e[0]==="#"&&e.length===4)return{r:parseInt(e[1]+e[1],16),g:parseInt(e[2]+e[2],16),b:parseInt(e[3]+e[3],16),a:1}},_hslColorToRGBA(e){if(/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.test(e)){const[t,...n]=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e),r=Number(n[0])/360,i=Number(n[1])/100,o=Number(n[2])/100;let a,s,l;if(i===0)return l=o*255,{r:Math.round(l),g:Math.round(l),b:Math.round(l),a:1};o<.5?a=o*(1+i):a=o+i-o*i;const u=2*o-a,d=[0,0,0];for(let h=0;h<3;h++)s=r+1/3*-(h-1),s<0&&s++,s>1&&s--,6*s<1?l=u+(a-u)*6*s:2*s<1?l=a:3*s<2?l=u+(a-u)*(2/3-s)*6:l=u,d[h]=l*255;return{r:Math.round(d[0]),g:Math.round(d[1]),b:Math.round(d[2]),a:1}}},haveIntersection(e,t){return!(t.x>e.x+e.width||t.x+t.widthe.y+e.height||t.y+t.height1?(a=n,s=r,l=(n-i)*(n-i)+(r-o)*(r-o)):(a=e+d*(n-e),s=t+d*(r-t),l=(a-i)*(a-i)+(s-o)*(s-o))}return[a,s,l]},_getProjectionToLine(e,t,n){var r=de.cloneObject(e),i=Number.MAX_VALUE;return t.forEach(function(o,a){if(!(!n&&a===t.length-1)){var s=t[(a+1)%t.length],l=de._getProjectionToSegment(o.x,o.y,s.x,s.y,e.x,e.y),u=l[0],d=l[1],h=l[2];ht.length){var a=t;t=e,e=a}for(r=0;r{t.width=0,t.height=0})},drawRoundedRectPath(e,t,n,r){let i=0,o=0,a=0,s=0;typeof r=="number"?i=o=a=s=Math.min(r,t/2,n/2):(i=Math.min(r[0]||0,t/2,n/2),o=Math.min(r[1]||0,t/2,n/2),s=Math.min(r[2]||0,t/2,n/2),a=Math.min(r[3]||0,t/2,n/2)),e.moveTo(i,0),e.lineTo(t-o,0),e.arc(t-o,o,o,Math.PI*3/2,0,!1),e.lineTo(t,n-s),e.arc(t-s,n-s,s,0,Math.PI/2,!1),e.lineTo(a,n),e.arc(a,n-a,a,Math.PI/2,Math.PI,!1),e.lineTo(0,i),e.arc(i,i,i,Math.PI,Math.PI*3/2,!1)}};function uf(e){return de._isString(e)?'"'+e+'"':Object.prototype.toString.call(e)==="[object Number]"||de._isBoolean(e)?e:Object.prototype.toString.call(e)}function nV(e){return e>255?255:e<0?0:Math.round(e)}function Ve(){if(ft.isUnminified)return function(e,t){return de._isNumber(e)||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a number.'),e}}function kE(e){if(ft.isUnminified)return function(t,n){let r=de._isNumber(t),i=de._isArray(t)&&t.length==e;return!r&&!i&&de.warn(uf(t)+' is a not valid value for "'+n+'" attribute. The value should be a number or Array('+e+")"),t}}function EE(){if(ft.isUnminified)return function(e,t){var n=de._isNumber(e),r=e==="auto";return n||r||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a number or "auto".'),e}}function x0(){if(ft.isUnminified)return function(e,t){return de._isString(e)||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a string.'),e}}function rV(){if(ft.isUnminified)return function(e,t){const n=de._isString(e),r=Object.prototype.toString.call(e)==="[object CanvasGradient]"||e&&e.addColorStop;return n||r||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a string or a native gradient.'),e}}function X5e(){if(ft.isUnminified)return function(e,t){const n=Int8Array?Object.getPrototypeOf(Int8Array):null;return n&&e instanceof n||(de._isArray(e)?e.forEach(function(r){de._isNumber(r)||de.warn('"'+t+'" attribute has non numeric element '+r+". Make sure that all elements are numbers.")}):de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a array of numbers.')),e}}function el(){if(ft.isUnminified)return function(e,t){var n=e===!0||e===!1;return n||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a boolean.'),e}}function Z5e(e){if(ft.isUnminified)return function(t,n){return t==null||de.isObject(t)||de.warn(uf(t)+' is a not valid value for "'+n+'" attribute. The value should be an object with properties '+e),t}}var Zv="get",Qv="set";const J={addGetterSetter(e,t,n,r,i){J.addGetter(e,t,n),J.addSetter(e,t,r,i),J.addOverloadedGetterSetter(e,t)},addGetter(e,t,n){var r=Zv+de._capitalize(t);e.prototype[r]=e.prototype[r]||function(){var i=this.attrs[t];return i===void 0?n:i}},addSetter(e,t,n,r){var i=Qv+de._capitalize(t);e.prototype[i]||J.overWriteSetter(e,t,n,r)},overWriteSetter(e,t,n,r){var i=Qv+de._capitalize(t);e.prototype[i]=function(o){return n&&o!==void 0&&o!==null&&(o=n.call(this,o,t)),this._setAttr(t,o),r&&r.call(this),this}},addComponentsGetterSetter(e,t,n,r,i){var o=n.length,a=de._capitalize,s=Zv+a(t),l=Qv+a(t),u,d;e.prototype[s]=function(){var m={};for(u=0;u{this._setAttr(t+a(w),void 0)}),this._fireChangeEvent(t,y,m),i&&i.call(this),this},J.addOverloadedGetterSetter(e,t)},addOverloadedGetterSetter(e,t){var n=de._capitalize(t),r=Qv+n,i=Zv+n;e.prototype[t]=function(){return arguments.length?(this[r](arguments[0]),this):this[i]()}},addDeprecatedGetterSetter(e,t,n,r){de.error("Adding deprecated "+t);var i=Zv+de._capitalize(t),o=t+" property is deprecated and will be removed soon. Look at Konva change log for more information.";e.prototype[i]=function(){de.error(o);var a=this.attrs[t];return a===void 0?n:a},J.addSetter(e,t,r,function(){de.error(o)}),J.addOverloadedGetterSetter(e,t)},backCompat(e,t){de.each(t,function(n,r){var i=e.prototype[r],o=Zv+de._capitalize(n),a=Qv+de._capitalize(n);function s(){i.apply(this,arguments),de.error('"'+n+'" method is deprecated and will be removed soon. Use ""'+r+'" instead.')}e.prototype[n]=s,e.prototype[o]=s,e.prototype[a]=s})},afterSetFilter(){this._filterUpToDate=!1}};function Q5e(e){var t=[],n=e.length,r=de,i,o;for(i=0;itypeof d=="number"?Math.floor(d):d)),o+=J5e+u.join(tI)+eCe)):(o+=s.property,t||(o+=oCe+s.val)),o+=rCe;return o}clearTrace(){this.traceArr=[]}_trace(t){var n=this.traceArr,r;n.push(t),r=n.length,r>=sCe&&n.shift()}reset(){var t=this.getCanvas().getPixelRatio();this.setTransform(1*t,0,0,1*t,0,0)}getCanvas(){return this.canvas}clear(t){var n=this.getCanvas();t?this.clearRect(t.x||0,t.y||0,t.width||0,t.height||0):this.clearRect(0,0,n.getWidth()/n.pixelRatio,n.getHeight()/n.pixelRatio)}_applyLineCap(t){var n=t.getLineCap();n&&this.setAttr("lineCap",n)}_applyOpacity(t){var n=t.getAbsoluteOpacity();n!==1&&this.setAttr("globalAlpha",n)}_applyLineJoin(t){var n=t.attrs.lineJoin;n&&this.setAttr("lineJoin",n)}setAttr(t,n){this._context[t]=n}arc(t,n,r,i,o,a){this._context.arc(t,n,r,i,o,a)}arcTo(t,n,r,i,o){this._context.arcTo(t,n,r,i,o)}beginPath(){this._context.beginPath()}bezierCurveTo(t,n,r,i,o,a){this._context.bezierCurveTo(t,n,r,i,o,a)}clearRect(t,n,r,i){this._context.clearRect(t,n,r,i)}clip(){this._context.clip()}closePath(){this._context.closePath()}createImageData(t,n){var r=arguments;if(r.length===2)return this._context.createImageData(t,n);if(r.length===1)return this._context.createImageData(t)}createLinearGradient(t,n,r,i){return this._context.createLinearGradient(t,n,r,i)}createPattern(t,n){return this._context.createPattern(t,n)}createRadialGradient(t,n,r,i,o,a){return this._context.createRadialGradient(t,n,r,i,o,a)}drawImage(t,n,r,i,o,a,s,l,u){var d=arguments,h=this._context;d.length===3?h.drawImage(t,n,r):d.length===5?h.drawImage(t,n,r,i,o):d.length===9&&h.drawImage(t,n,r,i,o,a,s,l,u)}ellipse(t,n,r,i,o,a,s,l){this._context.ellipse(t,n,r,i,o,a,s,l)}isPointInPath(t,n,r,i){return r?this._context.isPointInPath(r,t,n,i):this._context.isPointInPath(t,n,i)}fill(t){t?this._context.fill(t):this._context.fill()}fillRect(t,n,r,i){this._context.fillRect(t,n,r,i)}strokeRect(t,n,r,i){this._context.strokeRect(t,n,r,i)}fillText(t,n,r,i){i?this._context.fillText(t,n,r,i):this._context.fillText(t,n,r)}measureText(t){return this._context.measureText(t)}getImageData(t,n,r,i){return this._context.getImageData(t,n,r,i)}lineTo(t,n){this._context.lineTo(t,n)}moveTo(t,n){this._context.moveTo(t,n)}rect(t,n,r,i){this._context.rect(t,n,r,i)}putImageData(t,n,r){this._context.putImageData(t,n,r)}quadraticCurveTo(t,n,r,i){this._context.quadraticCurveTo(t,n,r,i)}restore(){this._context.restore()}rotate(t){this._context.rotate(t)}save(){this._context.save()}scale(t,n){this._context.scale(t,n)}setLineDash(t){this._context.setLineDash?this._context.setLineDash(t):"mozDash"in this._context?this._context.mozDash=t:"webkitLineDash"in this._context&&(this._context.webkitLineDash=t)}getLineDash(){return this._context.getLineDash()}setTransform(t,n,r,i,o,a){this._context.setTransform(t,n,r,i,o,a)}stroke(t){t?this._context.stroke(t):this._context.stroke()}strokeText(t,n,r,i){this._context.strokeText(t,n,r,i)}transform(t,n,r,i,o,a){this._context.transform(t,n,r,i,o,a)}translate(t,n){this._context.translate(t,n)}_enableTrace(){var t=this,n=nI.length,r=this.setAttr,i,o,a=function(s){var l=t[s],u;t[s]=function(){return o=Q5e(Array.prototype.slice.call(arguments,0)),u=l.apply(t,arguments),t._trace({method:s,args:o}),u}};for(i=0;i{t.dragStatus==="dragging"&&(e=!0)}),e},justDragged:!1,get node(){var e;return fn._dragElements.forEach(t=>{e=t.node}),e},_dragElements:new Map,_drag(e){const t=[];fn._dragElements.forEach((n,r)=>{const{node:i}=n,o=i.getStage();o.setPointersPositions(e),n.pointerId===void 0&&(n.pointerId=de._getFirstPointerId(e));const a=o._changedPointerPositions.find(u=>u.id===n.pointerId);if(a){if(n.dragStatus!=="dragging"){var s=i.dragDistance(),l=Math.max(Math.abs(a.x-n.startPointerPos.x),Math.abs(a.y-n.startPointerPos.y));if(l{n.fire("dragmove",{type:"dragmove",target:n,evt:e},!0)})},_endDragBefore(e){const t=[];fn._dragElements.forEach(n=>{const{node:r}=n,i=r.getStage();if(e&&i.setPointersPositions(e),!i._changedPointerPositions.find(s=>s.id===n.pointerId))return;(n.dragStatus==="dragging"||n.dragStatus==="stopped")&&(fn.justDragged=!0,ft._mouseListenClick=!1,ft._touchListenClick=!1,ft._pointerListenClick=!1,n.dragStatus="stopped");const a=n.node.getLayer()||n.node instanceof ft.Stage&&n.node;a&&t.indexOf(a)===-1&&t.push(a)}),t.forEach(n=>{n.draw()})},_endDragAfter(e){fn._dragElements.forEach((t,n)=>{t.dragStatus==="stopped"&&t.node.fire("dragend",{type:"dragend",target:t.node,evt:e},!0),t.dragStatus!=="dragging"&&fn._dragElements.delete(n)})}};ft.isBrowser&&(window.addEventListener("mouseup",fn._endDragBefore,!0),window.addEventListener("touchend",fn._endDragBefore,!0),window.addEventListener("mousemove",fn._drag),window.addEventListener("touchmove",fn._drag),window.addEventListener("mouseup",fn._endDragAfter,!1),window.addEventListener("touchend",fn._endDragAfter,!1));var gS="absoluteOpacity",sx="allEventListeners",Iu="absoluteTransform",rI="absoluteScale",oh="canvas",dCe="Change",fCe="children",hCe="konva",Rk="listening",iI="mouseenter",oI="mouseleave",aI="set",sI="Shape",mS=" ",lI="stage",fd="transform",pCe="Stage",Ik="visible",gCe=["xChange.konva","yChange.konva","scaleXChange.konva","scaleYChange.konva","skewXChange.konva","skewYChange.konva","rotationChange.konva","offsetXChange.konva","offsetYChange.konva","transformsEnabledChange.konva"].join(mS);let mCe=1,Ge=class Dk{constructor(t){this._id=mCe++,this.eventListeners={},this.attrs={},this.index=0,this._allEventListeners=null,this.parent=null,this._cache=new Map,this._attachedDepsListeners=new Map,this._lastPos=null,this._batchingTransformChange=!1,this._needClearTransformCache=!1,this._filterUpToDate=!1,this._isUnderCache=!1,this._dragEventId=null,this._shouldFireChangeEvents=!1,this.setAttrs(t),this._shouldFireChangeEvents=!0}hasChildren(){return!1}_clearCache(t){(t===fd||t===Iu)&&this._cache.get(t)?this._cache.get(t).dirty=!0:t?this._cache.delete(t):this._cache.clear()}_getCache(t,n){var r=this._cache.get(t),i=t===fd||t===Iu,o=r===void 0||i&&r.dirty===!0;return o&&(r=n.call(this),this._cache.set(t,r)),r}_calculate(t,n,r){if(!this._attachedDepsListeners.get(t)){const i=n.map(o=>o+"Change.konva").join(mS);this.on(i,()=>{this._clearCache(t)}),this._attachedDepsListeners.set(t,!0)}return this._getCache(t,r)}_getCanvasCache(){return this._cache.get(oh)}_clearSelfAndDescendantCache(t){this._clearCache(t),t===Iu&&this.fire("absoluteTransformChange")}clearCache(){if(this._cache.has(oh)){const{scene:t,filter:n,hit:r}=this._cache.get(oh);de.releaseCanvas(t,n,r),this._cache.delete(oh)}return this._clearSelfAndDescendantCache(),this._requestDraw(),this}cache(t){var n=t||{},r={};(n.x===void 0||n.y===void 0||n.width===void 0||n.height===void 0)&&(r=this.getClientRect({skipTransform:!0,relativeTo:this.getParent()}));var i=Math.ceil(n.width||r.width),o=Math.ceil(n.height||r.height),a=n.pixelRatio,s=n.x===void 0?Math.floor(r.x):n.x,l=n.y===void 0?Math.floor(r.y):n.y,u=n.offset||0,d=n.drawBorder||!1,h=n.hitCanvasPixelRatio||1;if(!i||!o){de.error("Can not cache the node. Width or height of the node equals 0. Caching is skipped.");return}i+=u*2+1,o+=u*2+1,s-=u,l-=u;var m=new Dm({pixelRatio:a,width:i,height:o}),y=new Dm({pixelRatio:a,width:0,height:0}),b=new PE({pixelRatio:h,width:i,height:o}),w=m.getContext(),E=b.getContext();return b.isCache=!0,m.isCache=!0,this._cache.delete(oh),this._filterUpToDate=!1,n.imageSmoothingEnabled===!1&&(m.getContext()._context.imageSmoothingEnabled=!1,y.getContext()._context.imageSmoothingEnabled=!1),w.save(),E.save(),w.translate(-s,-l),E.translate(-s,-l),this._isUnderCache=!0,this._clearSelfAndDescendantCache(gS),this._clearSelfAndDescendantCache(rI),this.drawScene(m,this),this.drawHit(b,this),this._isUnderCache=!1,w.restore(),E.restore(),d&&(w.save(),w.beginPath(),w.rect(0,0,i,o),w.closePath(),w.setAttr("strokeStyle","red"),w.setAttr("lineWidth",5),w.stroke(),w.restore()),this._cache.set(oh,{scene:m,filter:y,hit:b,x:s,y:l}),this._requestDraw(),this}isCached(){return this._cache.has(oh)}getClientRect(t){throw new Error('abstract "getClientRect" method call')}_transformedRect(t,n){var r=[{x:t.x,y:t.y},{x:t.x+t.width,y:t.y},{x:t.x+t.width,y:t.y+t.height},{x:t.x,y:t.y+t.height}],i,o,a,s,l=this.getAbsoluteTransform(n);return r.forEach(function(u){var d=l.point(u);i===void 0&&(i=a=d.x,o=s=d.y),i=Math.min(i,d.x),o=Math.min(o,d.y),a=Math.max(a,d.x),s=Math.max(s,d.y)}),{x:i,y:o,width:a-i,height:s-o}}_drawCachedSceneCanvas(t){t.save(),t._applyOpacity(this),t._applyGlobalCompositeOperation(this);const n=this._getCanvasCache();t.translate(n.x,n.y);var r=this._getCachedSceneCanvas(),i=r.pixelRatio;t.drawImage(r._canvas,0,0,r.width/i,r.height/i),t.restore()}_drawCachedHitCanvas(t){var n=this._getCanvasCache(),r=n.hit;t.save(),t.translate(n.x,n.y),t.drawImage(r._canvas,0,0,r.width/r.pixelRatio,r.height/r.pixelRatio),t.restore()}_getCachedSceneCanvas(){var t=this.filters(),n=this._getCanvasCache(),r=n.scene,i=n.filter,o=i.getContext(),a,s,l,u;if(t){if(!this._filterUpToDate){var d=r.pixelRatio;i.setSize(r.width/r.pixelRatio,r.height/r.pixelRatio);try{for(a=t.length,o.clear(),o.drawImage(r._canvas,0,0,r.getWidth()/d,r.getHeight()/d),s=o.getImageData(0,0,i.getWidth(),i.getHeight()),l=0;l{var n,r;if(!t)return this;for(n in t)n!==fCe&&(r=aI+de._capitalize(n),de._isFunction(this[r])?this[r](t[n]):this._setAttr(n,t[n]))}),this}isListening(){return this._getCache(Rk,this._isListening)}_isListening(t){if(!this.listening())return!1;const r=this.getParent();return r&&r!==t&&this!==t?r._isListening(t):!0}isVisible(){return this._getCache(Ik,this._isVisible)}_isVisible(t){if(!this.visible())return!1;const r=this.getParent();return r&&r!==t&&this!==t?r._isVisible(t):!0}shouldDrawHit(t,n=!1){if(t)return this._isVisible(t)&&this._isListening(t);var r=this.getLayer(),i=!1;fn._dragElements.forEach(a=>{a.dragStatus==="dragging"&&(a.node.nodeType==="Stage"||a.node.getLayer()===r)&&(i=!0)});var o=!n&&!ft.hitOnDragEnabled&&i;return this.isListening()&&this.isVisible()&&!o}show(){return this.visible(!0),this}hide(){return this.visible(!1),this}getZIndex(){return this.index||0}getAbsoluteZIndex(){var t=this.getDepth(),n=this,r=0,i,o,a,s;function l(u){for(i=[],o=u.length,a=0;a0&&i[0].getDepth()<=t&&l(i)}return n.nodeType!==pCe&&l(n.getStage().getChildren()),r}getDepth(){for(var t=0,n=this.parent;n;)t++,n=n.parent;return t}_batchTransformChanges(t){this._batchingTransformChange=!0,t(),this._batchingTransformChange=!1,this._needClearTransformCache&&(this._clearCache(fd),this._clearSelfAndDescendantCache(Iu)),this._needClearTransformCache=!1}setPosition(t){return this._batchTransformChanges(()=>{this.x(t.x),this.y(t.y)}),this}getPosition(){return{x:this.x(),y:this.y()}}getRelativePointerPosition(){if(!this.getStage())return null;var t=this.getStage().getPointerPosition();if(!t)return null;var n=this.getAbsoluteTransform().copy();return n.invert(),n.point(t)}getAbsolutePosition(t){let n=!1,r=this.parent;for(;r;){if(r.isCached()){n=!0;break}r=r.parent}n&&!t&&(t=!0);var i=this.getAbsoluteTransform(t).getMatrix(),o=new Ca,a=this.offset();return o.m=i.slice(),o.translate(a.x,a.y),o.getTranslation()}setAbsolutePosition(t){var n=this._clearTransform();this.attrs.x=n.x,this.attrs.y=n.y,delete n.x,delete n.y,this._clearCache(fd);var r=this._getAbsoluteTransform().copy();return r.invert(),r.translate(t.x,t.y),t={x:this.attrs.x+r.getTranslation().x,y:this.attrs.y+r.getTranslation().y},this._setTransform(n),this.setPosition({x:t.x,y:t.y}),this._clearCache(fd),this._clearSelfAndDescendantCache(Iu),this}_setTransform(t){var n;for(n in t)this.attrs[n]=t[n]}_clearTransform(){var t={x:this.x(),y:this.y(),rotation:this.rotation(),scaleX:this.scaleX(),scaleY:this.scaleY(),offsetX:this.offsetX(),offsetY:this.offsetY(),skewX:this.skewX(),skewY:this.skewY()};return this.attrs.x=0,this.attrs.y=0,this.attrs.rotation=0,this.attrs.scaleX=1,this.attrs.scaleY=1,this.attrs.offsetX=0,this.attrs.offsetY=0,this.attrs.skewX=0,this.attrs.skewY=0,t}move(t){var n=t.x,r=t.y,i=this.x(),o=this.y();return n!==void 0&&(i+=n),r!==void 0&&(o+=r),this.setPosition({x:i,y:o}),this}_eachAncestorReverse(t,n){var r=[],i=this.getParent(),o,a;if(!(n&&n._id===this._id)){for(r.unshift(this);i&&(!n||i._id!==n._id);)r.unshift(i),i=i.parent;for(o=r.length,a=0;a0?(this.parent.children.splice(t,1),this.parent.children.splice(t-1,0,this),this.parent._setChildrenIndices(),!0):!1}moveToBottom(){if(!this.parent)return de.warn("Node has no parent. moveToBottom function is ignored."),!1;var t=this.index;return t>0?(this.parent.children.splice(t,1),this.parent.children.unshift(this),this.parent._setChildrenIndices(),!0):!1}setZIndex(t){if(!this.parent)return de.warn("Node has no parent. zIndex parameter is ignored."),this;(t<0||t>=this.parent.children.length)&&de.warn("Unexpected value "+t+" for zIndex property. zIndex is just index of a node in children of its parent. Expected value is from 0 to "+(this.parent.children.length-1)+".");var n=this.index;return this.parent.children.splice(n,1),this.parent.children.splice(t,0,this),this.parent._setChildrenIndices(),this}getAbsoluteOpacity(){return this._getCache(gS,this._getAbsoluteOpacity)}_getAbsoluteOpacity(){var t=this.opacity(),n=this.getParent();return n&&!n._isUnderCache&&(t*=n.getAbsoluteOpacity()),t}moveTo(t){return this.getParent()!==t&&(this._remove(),t.add(this)),this}toObject(){var t={},n=this.getAttrs(),r,i,o,a,s;t.attrs={};for(r in n)i=n[r],s=de.isObject(i)&&!de._isPlainObject(i)&&!de._isArray(i),!s&&(o=typeof this[r]=="function"&&this[r],delete n[r],a=o?o.call(this):null,n[r]=i,a!==i&&(t.attrs[r]=i));return t.className=this.getClassName(),de._prepareToStringify(t)}toJSON(){return JSON.stringify(this.toObject())}getParent(){return this.parent}findAncestors(t,n,r){var i=[];n&&this._isMatch(t)&&i.push(this);for(var o=this.parent;o;){if(o===r)return i;o._isMatch(t)&&i.push(o),o=o.parent}return i}isAncestorOf(t){return!1}findAncestor(t,n,r){return this.findAncestors(t,n,r)[0]}_isMatch(t){if(!t)return!1;if(typeof t=="function")return t(this);var n=t.replace(/ /g,"").split(","),r=n.length,i,o;for(i=0;i{try{const i=t==null?void 0:t.callback;i&&delete t.callback,de._urlToImage(this.toDataURL(t),function(o){n(o),i==null||i(o)})}catch(i){r(i)}})}toBlob(t){return new Promise((n,r)=>{try{const i=t==null?void 0:t.callback;i&&delete t.callback,this.toCanvas(t).toBlob(o=>{n(o),i==null||i(o)})}catch(i){r(i)}})}setSize(t){return this.width(t.width),this.height(t.height),this}getSize(){return{width:this.width(),height:this.height()}}getClassName(){return this.className||this.nodeType}getType(){return this.nodeType}getDragDistance(){return this.attrs.dragDistance!==void 0?this.attrs.dragDistance:this.parent?this.parent.getDragDistance():ft.dragDistance}_off(t,n,r){var i=this.eventListeners[t],o,a,s;for(o=0;o=0;if(r&&!this.isDragging()){var i=!1;fn._dragElements.forEach(o=>{this.isAncestorOf(o.node)&&(i=!0)}),i||this._createDragElement(t)}})}_dragChange(){if(this.attrs.draggable)this._listenDrag();else{this._dragCleanup();var t=this.getStage();if(!t)return;const n=fn._dragElements.get(this._id),r=n&&n.dragStatus==="dragging",i=n&&n.dragStatus==="ready";r?this.stopDrag():i&&fn._dragElements.delete(this._id)}}_dragCleanup(){this.off("mousedown.konva"),this.off("touchstart.konva")}isClientRectOnScreen(t={x:0,y:0}){const n=this.getStage();if(!n)return!1;const r={x:-t.x,y:-t.y,width:n.width()+2*t.x,height:n.height()+2*t.y};return de.haveIntersection(r,this.getClientRect())}static create(t,n){return de._isString(t)&&(t=JSON.parse(t)),this._createNode(t,n)}static _createNode(t,n){var r=Dk.prototype.getClassName.call(t),i=t.children,o,a,s;n&&(t.attrs.container=n),ft[r]||(de.warn('Can not find a node with class name "'+r+'". Fallback to "Shape".'),r="Shape");const l=ft[r];if(o=new l(t.attrs),i)for(a=i.length,s=0;s0}removeChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.remove()}),this.children=[],this._requestDraw(),this}destroyChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.destroy()}),this.children=[],this._requestDraw(),this}add(...t){if(t.length===0)return this;if(t.length>1){for(var n=0;n0?n[0]:void 0}_generalFind(t,n){var r=[];return this._descendants(i=>{const o=i._isMatch(t);return o&&r.push(i),!!(o&&n)}),r}_descendants(t){let n=!1;const r=this.getChildren();for(const i of r){if(n=t(i),n)return!0;if(i.hasChildren()&&(n=i._descendants(t),n))return!0}return!1}toObject(){var t=Ge.prototype.toObject.call(this);return t.children=[],this.getChildren().forEach(n=>{t.children.push(n.toObject())}),t}isAncestorOf(t){for(var n=t.getParent();n;){if(n._id===this._id)return!0;n=n.getParent()}return!1}clone(t){var n=Ge.prototype.clone.call(this,t);return this.getChildren().forEach(function(r){n.add(r.clone())}),n}getAllIntersections(t){var n=[];return this.find("Shape").forEach(function(r){r.isVisible()&&r.intersects(t)&&n.push(r)}),n}_clearSelfAndDescendantCache(t){var n;super._clearSelfAndDescendantCache(t),!this.isCached()&&((n=this.children)===null||n===void 0||n.forEach(function(r){r._clearSelfAndDescendantCache(t)}))}_setChildrenIndices(){var t;(t=this.children)===null||t===void 0||t.forEach(function(n,r){n.index=r}),this._requestDraw()}drawScene(t,n){var r=this.getLayer(),i=t||r&&r.getCanvas(),o=i&&i.getContext(),a=this._getCanvasCache(),s=a&&a.scene,l=i&&i.isCache;if(!this.isVisible()&&!l)return this;if(s){o.save();var u=this.getAbsoluteTransform(n).getMatrix();o.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this._drawCachedSceneCanvas(o),o.restore()}else this._drawChildren("drawScene",i,n);return this}drawHit(t,n){if(!this.shouldDrawHit(n))return this;var r=this.getLayer(),i=t||r&&r.hitCanvas,o=i&&i.getContext(),a=this._getCanvasCache(),s=a&&a.hit;if(s){o.save();var l=this.getAbsoluteTransform(n).getMatrix();o.transform(l[0],l[1],l[2],l[3],l[4],l[5]),this._drawCachedHitCanvas(o),o.restore()}else this._drawChildren("drawHit",i,n);return this}_drawChildren(t,n,r){var i,o=n&&n.getContext(),a=this.clipWidth(),s=this.clipHeight(),l=this.clipFunc(),u=a&&s||l;const d=r===this;if(u){o.save();var h=this.getAbsoluteTransform(r),m=h.getMatrix();if(o.transform(m[0],m[1],m[2],m[3],m[4],m[5]),o.beginPath(),l)l.call(this,o,this);else{var y=this.clipX(),b=this.clipY();o.rect(y,b,a,s)}o.clip(),m=h.copy().invert().getMatrix(),o.transform(m[0],m[1],m[2],m[3],m[4],m[5])}var w=!d&&this.globalCompositeOperation()!=="source-over"&&t==="drawScene";w&&(o.save(),o._applyGlobalCompositeOperation(this)),(i=this.children)===null||i===void 0||i.forEach(function(E){E[t](n,r)}),w&&o.restore(),u&&o.restore()}getClientRect(t){var n;t=t||{};var r=t.skipTransform,i=t.relativeTo,o,a,s,l,u={x:1/0,y:1/0,width:0,height:0},d=this;(n=this.children)===null||n===void 0||n.forEach(function(w){if(w.visible()){var E=w.getClientRect({relativeTo:d,skipShadow:t.skipShadow,skipStroke:t.skipStroke});E.width===0&&E.height===0||(o===void 0?(o=E.x,a=E.y,s=E.x+E.width,l=E.y+E.height):(o=Math.min(o,E.x),a=Math.min(a,E.y),s=Math.max(s,E.x+E.width),l=Math.max(l,E.y+E.height)))}});for(var h=this.find("Shape"),m=!1,y=0;ye.indexOf("pointer")>=0?"pointer":e.indexOf("touch")>=0?"touch":"mouse",Og=e=>{const t=x1(e);if(t==="pointer")return ft.pointerEventsEnabled&&UC.pointer;if(t==="touch")return UC.touch;if(t==="mouse")return UC.mouse};function cI(e={}){return(e.clipFunc||e.clipWidth||e.clipHeight)&&de.warn("Stage does not support clipping. Please use clip for Layers or Groups."),e}const CCe="Pointer position is missing and not registered by the stage. Looks like it is outside of the stage container. You can set it manually from event: stage.setPointersPositions(event);",vS=[];let c4=class extends Ma{constructor(t){super(cI(t)),this._pointerPositions=[],this._changedPointerPositions=[],this._buildDOM(),this._bindContentEvents(),vS.push(this),this.on("widthChange.konva heightChange.konva",this._resizeDOM),this.on("visibleChange.konva",this._checkVisibility),this.on("clipWidthChange.konva clipHeightChange.konva clipFuncChange.konva",()=>{cI(this.attrs)}),this._checkVisibility()}_validateAdd(t){const n=t.getType()==="Layer",r=t.getType()==="FastLayer";n||r||de.throw("You may only add layers to the stage.")}_checkVisibility(){if(!this.content)return;const t=this.visible()?"":"none";this.content.style.display=t}setContainer(t){if(typeof t===yCe){if(t.charAt(0)==="."){var n=t.slice(1);t=document.getElementsByClassName(n)[0]}else{var r;t.charAt(0)!=="#"?r=t:r=t.slice(1),t=document.getElementById(r)}if(!t)throw"Can not find container in document with id "+r}return this._setAttr("container",t),this.content&&(this.content.parentElement&&this.content.parentElement.removeChild(this.content),t.appendChild(this.content)),this}shouldDrawHit(){return!0}clear(){var t=this.children,n=t.length,r;for(r=0;r-1&&vS.splice(n,1),de.releaseCanvas(this.bufferCanvas._canvas,this.bufferHitCanvas._canvas),this}getPointerPosition(){const t=this._pointerPositions[0]||this._changedPointerPositions[0];return t?{x:t.x,y:t.y}:(de.warn(CCe),null)}_getPointerById(t){return this._pointerPositions.find(n=>n.id===t)}getPointersPositions(){return this._pointerPositions}getStage(){return this}getContent(){return this.content}_toKonvaCanvas(t){t=t||{},t.x=t.x||0,t.y=t.y||0,t.width=t.width||this.width(),t.height=t.height||this.height();var n=new Dm({width:t.width,height:t.height,pixelRatio:t.pixelRatio||1}),r=n.getContext()._context,i=this.children;return(t.x||t.y)&&r.translate(-1*t.x,-1*t.y),i.forEach(function(o){if(o.isVisible()){var a=o._toKonvaCanvas(t);r.drawImage(a._canvas,t.x,t.y,a.getWidth()/a.getPixelRatio(),a.getHeight()/a.getPixelRatio())}}),n}getIntersection(t){if(!t)return null;var n=this.children,r=n.length,i=r-1,o;for(o=i;o>=0;o--){const a=n[o].getIntersection(t);if(a)return a}return null}_resizeDOM(){var t=this.width(),n=this.height();this.content&&(this.content.style.width=t+uI,this.content.style.height=n+uI),this.bufferCanvas.setSize(t,n),this.bufferHitCanvas.setSize(t,n),this.children.forEach(r=>{r.setSize({width:t,height:n}),r.draw()})}add(t,...n){if(arguments.length>1){for(var r=0;rSCe&&de.warn("The stage has "+i+" layers. Recommended maximum number of layers is 3-5. Adding more layers into the stage may drop the performance. Rethink your tree structure, you can use Konva.Group."),t.setSize({width:this.width(),height:this.height()}),t.draw(),ft.isBrowser&&this.content.appendChild(t.canvas._canvas),this}getParent(){return null}getLayer(){return null}hasPointerCapture(t){return oV(t,this)}setPointerCapture(t){aV(t,this)}releaseCapture(t){G1(t)}getLayers(){return this.children}_bindContentEvents(){ft.isBrowser&&wCe.forEach(([t,n])=>{this.content.addEventListener(t,r=>{this[n](r)},{passive:!1})})}_pointerenter(t){this.setPointersPositions(t);const n=Og(t.type);this._fire(n.pointerenter,{evt:t,target:this,currentTarget:this})}_pointerover(t){this.setPointersPositions(t);const n=Og(t.type);this._fire(n.pointerover,{evt:t,target:this,currentTarget:this})}_getTargetShape(t){let n=this[t+"targetShape"];return n&&!n.getStage()&&(n=null),n}_pointerleave(t){const n=Og(t.type),r=x1(t.type);if(n){this.setPointersPositions(t);var i=this._getTargetShape(r),o=!fn.isDragging||ft.hitOnDragEnabled;i&&o?(i._fireAndBubble(n.pointerout,{evt:t}),i._fireAndBubble(n.pointerleave,{evt:t}),this._fire(n.pointerleave,{evt:t,target:this,currentTarget:this}),this[r+"targetShape"]=null):o&&(this._fire(n.pointerleave,{evt:t,target:this,currentTarget:this}),this._fire(n.pointerout,{evt:t,target:this,currentTarget:this})),this.pointerPos=void 0,this._pointerPositions=[]}}_pointerdown(t){const n=Og(t.type),r=x1(t.type);if(n){this.setPointersPositions(t);var i=!1;this._changedPointerPositions.forEach(o=>{var a=this.getIntersection(o);if(fn.justDragged=!1,ft["_"+r+"ListenClick"]=!0,!(a&&a.isListening()))return;ft.capturePointerEventsEnabled&&a.setPointerCapture(o.id),this[r+"ClickStartShape"]=a,a._fireAndBubble(n.pointerdown,{evt:t,pointerId:o.id}),i=!0;const l=t.type.indexOf("touch")>=0;a.preventDefault()&&t.cancelable&&l&&t.preventDefault()}),i||this._fire(n.pointerdown,{evt:t,target:this,currentTarget:this,pointerId:this._pointerPositions[0].id})}}_pointermove(t){const n=Og(t.type),r=x1(t.type);if(!n)return;fn.isDragging&&fn.node.preventDefault()&&t.cancelable&&t.preventDefault(),this.setPointersPositions(t);var i=!fn.isDragging||ft.hitOnDragEnabled;if(!i)return;var o={};let a=!1;var s=this._getTargetShape(r);this._changedPointerPositions.forEach(l=>{const u=WC(l.id)||this.getIntersection(l),d=l.id,h={evt:t,pointerId:d};var m=s!==u;if(m&&s&&(s._fireAndBubble(n.pointerout,Object.assign({},h),u),s._fireAndBubble(n.pointerleave,Object.assign({},h),u)),u){if(o[u._id])return;o[u._id]=!0}u&&u.isListening()?(a=!0,m&&(u._fireAndBubble(n.pointerover,Object.assign({},h),s),u._fireAndBubble(n.pointerenter,Object.assign({},h),s),this[r+"targetShape"]=u),u._fireAndBubble(n.pointermove,Object.assign({},h))):s&&(this._fire(n.pointerover,{evt:t,target:this,currentTarget:this,pointerId:d}),this[r+"targetShape"]=null)}),a||this._fire(n.pointermove,{evt:t,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id})}_pointerup(t){const n=Og(t.type),r=x1(t.type);if(!n)return;this.setPointersPositions(t);const i=this[r+"ClickStartShape"],o=this[r+"ClickEndShape"];var a={};let s=!1;this._changedPointerPositions.forEach(l=>{const u=WC(l.id)||this.getIntersection(l);if(u){if(u.releaseCapture(l.id),a[u._id])return;a[u._id]=!0}const d=l.id,h={evt:t,pointerId:d};let m=!1;ft["_"+r+"InDblClickWindow"]?(m=!0,clearTimeout(this[r+"DblTimeout"])):fn.justDragged||(ft["_"+r+"InDblClickWindow"]=!0,clearTimeout(this[r+"DblTimeout"])),this[r+"DblTimeout"]=setTimeout(function(){ft["_"+r+"InDblClickWindow"]=!1},ft.dblClickWindow),u&&u.isListening()?(s=!0,this[r+"ClickEndShape"]=u,u._fireAndBubble(n.pointerup,Object.assign({},h)),ft["_"+r+"ListenClick"]&&i&&i===u&&(u._fireAndBubble(n.pointerclick,Object.assign({},h)),m&&o&&o===u&&u._fireAndBubble(n.pointerdblclick,Object.assign({},h)))):(this[r+"ClickEndShape"]=null,ft["_"+r+"ListenClick"]&&this._fire(n.pointerclick,{evt:t,target:this,currentTarget:this,pointerId:d}),m&&this._fire(n.pointerdblclick,{evt:t,target:this,currentTarget:this,pointerId:d}))}),s||this._fire(n.pointerup,{evt:t,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id}),ft["_"+r+"ListenClick"]=!1,t.cancelable&&r!=="touch"&&t.preventDefault()}_contextmenu(t){this.setPointersPositions(t);var n=this.getIntersection(this.getPointerPosition());n&&n.isListening()?n._fireAndBubble(jk,{evt:t}):this._fire(jk,{evt:t,target:this,currentTarget:this})}_wheel(t){this.setPointersPositions(t);var n=this.getIntersection(this.getPointerPosition());n&&n.isListening()?n._fireAndBubble(Nk,{evt:t}):this._fire(Nk,{evt:t,target:this,currentTarget:this})}_pointercancel(t){this.setPointersPositions(t);const n=WC(t.pointerId)||this.getIntersection(this.getPointerPosition());n&&n._fireAndBubble(lm,TE(t)),G1(t.pointerId)}_lostpointercapture(t){G1(t.pointerId)}setPointersPositions(t){var n=this._getContentPosition(),r=null,i=null;t=t||window.event,t.touches!==void 0?(this._pointerPositions=[],this._changedPointerPositions=[],Array.prototype.forEach.call(t.touches,o=>{this._pointerPositions.push({id:o.identifier,x:(o.clientX-n.left)/n.scaleX,y:(o.clientY-n.top)/n.scaleY})}),Array.prototype.forEach.call(t.changedTouches||t.touches,o=>{this._changedPointerPositions.push({id:o.identifier,x:(o.clientX-n.left)/n.scaleX,y:(o.clientY-n.top)/n.scaleY})})):(r=(t.clientX-n.left)/n.scaleX,i=(t.clientY-n.top)/n.scaleY,this.pointerPos={x:r,y:i},this._pointerPositions=[{x:r,y:i,id:de._getFirstPointerId(t)}],this._changedPointerPositions=[{x:r,y:i,id:de._getFirstPointerId(t)}])}_setPointerPosition(t){de.warn('Method _setPointerPosition is deprecated. Use "stage.setPointersPositions(event)" instead.'),this.setPointersPositions(t)}_getContentPosition(){if(!this.content||!this.content.getBoundingClientRect)return{top:0,left:0,scaleX:1,scaleY:1};var t=this.content.getBoundingClientRect();return{top:t.top,left:t.left,scaleX:t.width/this.content.clientWidth||1,scaleY:t.height/this.content.clientHeight||1}}_buildDOM(){if(this.bufferCanvas=new Dm({width:this.width(),height:this.height()}),this.bufferHitCanvas=new PE({pixelRatio:1,width:this.width(),height:this.height()}),!!ft.isBrowser){var t=this.container();if(!t)throw"Stage has no container. A container is required.";t.innerHTML="",this.content=document.createElement("div"),this.content.style.position="relative",this.content.style.userSelect="none",this.content.className="konvajs-content",this.content.setAttribute("role","presentation"),t.appendChild(this.content),this._resizeDOM()}}cache(){return de.warn("Cache function is not allowed for stage. You may use cache only for layers, groups and shapes."),this}clearCache(){return this}batchDraw(){return this.getChildren().forEach(function(t){t.batchDraw()}),this}};c4.prototype.nodeType=vCe;Mr(c4);J.addGetterSetter(c4,"container");var vV="hasShadow",yV="shadowRGBA",bV="patternImage",xV="linearGradient",SV="radialGradient";let fx;function VC(){return fx||(fx=de.createCanvasElement().getContext("2d"),fx)}const q1={};function _Ce(e){e.fill()}function kCe(e){e.stroke()}function ECe(e){e.fill()}function PCe(e){e.stroke()}function TCe(){this._clearCache(vV)}function MCe(){this._clearCache(yV)}function LCe(){this._clearCache(bV)}function ACe(){this._clearCache(xV)}function OCe(){this._clearCache(SV)}class $e extends Ge{constructor(t){super(t);let n;for(;n=de.getRandomColor(),!(n&&!(n in q1)););this.colorKey=n,q1[n]=this}getContext(){return de.warn("shape.getContext() method is deprecated. Please do not use it."),this.getLayer().getContext()}getCanvas(){return de.warn("shape.getCanvas() method is deprecated. Please do not use it."),this.getLayer().getCanvas()}getSceneFunc(){return this.attrs.sceneFunc||this._sceneFunc}getHitFunc(){return this.attrs.hitFunc||this._hitFunc}hasShadow(){return this._getCache(vV,this._hasShadow)}_hasShadow(){return this.shadowEnabled()&&this.shadowOpacity()!==0&&!!(this.shadowColor()||this.shadowBlur()||this.shadowOffsetX()||this.shadowOffsetY())}_getFillPattern(){return this._getCache(bV,this.__getFillPattern)}__getFillPattern(){if(this.fillPatternImage()){var t=VC();const n=t.createPattern(this.fillPatternImage(),this.fillPatternRepeat()||"repeat");if(n&&n.setTransform){const r=new Ca;r.translate(this.fillPatternX(),this.fillPatternY()),r.rotate(ft.getAngle(this.fillPatternRotation())),r.scale(this.fillPatternScaleX(),this.fillPatternScaleY()),r.translate(-1*this.fillPatternOffsetX(),-1*this.fillPatternOffsetY());const i=r.getMatrix(),o=typeof DOMMatrix>"u"?{a:i[0],b:i[1],c:i[2],d:i[3],e:i[4],f:i[5]}:new DOMMatrix(i);n.setTransform(o)}return n}}_getLinearGradient(){return this._getCache(xV,this.__getLinearGradient)}__getLinearGradient(){var t=this.fillLinearGradientColorStops();if(t){for(var n=VC(),r=this.fillLinearGradientStartPoint(),i=this.fillLinearGradientEndPoint(),o=n.createLinearGradient(r.x,r.y,i.x,i.y),a=0;athis.fillEnabled()&&!!(this.fill()||this.fillPatternImage()||this.fillLinearGradientColorStops()||this.fillRadialGradientColorStops()))}hasStroke(){return this._calculate("hasStroke",["strokeEnabled","strokeWidth","stroke","strokeLinearGradientColorStops"],()=>this.strokeEnabled()&&this.strokeWidth()&&!!(this.stroke()||this.strokeLinearGradientColorStops()))}hasHitStroke(){const t=this.hitStrokeWidth();return t==="auto"?this.hasStroke():this.strokeEnabled()&&!!t}intersects(t){var n=this.getStage(),r=n.bufferHitCanvas,i;return r.getContext().clear(),this.drawHit(r,null,!0),i=r.context.getImageData(Math.round(t.x),Math.round(t.y),1,1).data,i[3]>0}destroy(){return Ge.prototype.destroy.call(this),delete q1[this.colorKey],delete this.colorKey,this}_useBufferCanvas(t){var n;if(!this.getStage()||!((n=this.attrs.perfectDrawEnabled)!==null&&n!==void 0?n:!0))return!1;const i=t||this.hasFill(),o=this.hasStroke(),a=this.getAbsoluteOpacity()!==1;if(i&&o&&a)return!0;const s=this.hasShadow(),l=this.shadowForStrokeEnabled();return!!(i&&o&&s&&l)}setStrokeHitEnabled(t){de.warn("strokeHitEnabled property is deprecated. Please use hitStrokeWidth instead."),t?this.hitStrokeWidth("auto"):this.hitStrokeWidth(0)}getStrokeHitEnabled(){return this.hitStrokeWidth()!==0}getSelfRect(){var t=this.size();return{x:this._centroid?-t.width/2:0,y:this._centroid?-t.height/2:0,width:t.width,height:t.height}}getClientRect(t={}){const n=t.skipTransform,r=t.relativeTo,i=this.getSelfRect(),a=!t.skipStroke&&this.hasStroke()&&this.strokeWidth()||0,s=i.width+a,l=i.height+a,u=!t.skipShadow&&this.hasShadow(),d=u?this.shadowOffsetX():0,h=u?this.shadowOffsetY():0,m=s+Math.abs(d),y=l+Math.abs(h),b=u&&this.shadowBlur()||0,w=m+b*2,E=y+b*2,_={width:w,height:E,x:-(a/2+b)+Math.min(d,0)+i.x,y:-(a/2+b)+Math.min(h,0)+i.y};return n?_:this._transformedRect(_,r)}drawScene(t,n){var r=this.getLayer(),i=t||r.getCanvas(),o=i.getContext(),a=this._getCanvasCache(),s=this.getSceneFunc(),l=this.hasShadow(),u,d,h,m=i.isCache,y=n===this;if(!this.isVisible()&&!y)return this;if(a){o.save();var b=this.getAbsoluteTransform(n).getMatrix();return o.transform(b[0],b[1],b[2],b[3],b[4],b[5]),this._drawCachedSceneCanvas(o),o.restore(),this}if(!s)return this;if(o.save(),this._useBufferCanvas()&&!m){u=this.getStage(),d=u.bufferCanvas,h=d.getContext(),h.clear(),h.save(),h._applyLineJoin(this);var w=this.getAbsoluteTransform(n).getMatrix();h.transform(w[0],w[1],w[2],w[3],w[4],w[5]),s.call(this,h,this),h.restore();var E=d.pixelRatio;l&&o._applyShadow(this),o._applyOpacity(this),o._applyGlobalCompositeOperation(this),o.drawImage(d._canvas,0,0,d.width/E,d.height/E)}else{if(o._applyLineJoin(this),!y){var w=this.getAbsoluteTransform(n).getMatrix();o.transform(w[0],w[1],w[2],w[3],w[4],w[5]),o._applyOpacity(this),o._applyGlobalCompositeOperation(this)}l&&o._applyShadow(this),s.call(this,o,this)}return o.restore(),this}drawHit(t,n,r=!1){if(!this.shouldDrawHit(n,r))return this;var i=this.getLayer(),o=t||i.hitCanvas,a=o&&o.getContext(),s=this.hitFunc()||this.sceneFunc(),l=this._getCanvasCache(),u=l&&l.hit;if(this.colorKey||de.warn("Looks like your canvas has a destroyed shape in it. Do not reuse shape after you destroyed it. If you want to reuse shape you should call remove() instead of destroy()"),u){a.save();var d=this.getAbsoluteTransform(n).getMatrix();return a.transform(d[0],d[1],d[2],d[3],d[4],d[5]),this._drawCachedHitCanvas(a),a.restore(),this}if(!s)return this;if(a.save(),a._applyLineJoin(this),!(this===n)){var m=this.getAbsoluteTransform(n).getMatrix();a.transform(m[0],m[1],m[2],m[3],m[4],m[5])}return s.call(this,a,this),a.restore(),this}drawHitFromCache(t=0){var n=this._getCanvasCache(),r=this._getCachedSceneCanvas(),i=n.hit,o=i.getContext(),a=i.getWidth(),s=i.getHeight(),l,u,d,h,m,y;o.clear(),o.drawImage(r._canvas,0,0,a,s);try{for(l=o.getImageData(0,0,a,s),u=l.data,d=u.length,h=de._hexToRgb(this.colorKey),m=0;mt?(u[m]=h.r,u[m+1]=h.g,u[m+2]=h.b,u[m+3]=255):u[m+3]=0;o.putImageData(l,0,0)}catch(b){de.error("Unable to draw hit graph from cached scene canvas. "+b.message)}return this}hasPointerCapture(t){return oV(t,this)}setPointerCapture(t){aV(t,this)}releaseCapture(t){G1(t)}}$e.prototype._fillFunc=_Ce;$e.prototype._strokeFunc=kCe;$e.prototype._fillFuncHit=ECe;$e.prototype._strokeFuncHit=PCe;$e.prototype._centroid=!1;$e.prototype.nodeType="Shape";Mr($e);$e.prototype.eventListeners={};$e.prototype.on.call($e.prototype,"shadowColorChange.konva shadowBlurChange.konva shadowOffsetChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",TCe);$e.prototype.on.call($e.prototype,"shadowColorChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",MCe);$e.prototype.on.call($e.prototype,"fillPriorityChange.konva fillPatternImageChange.konva fillPatternRepeatChange.konva fillPatternScaleXChange.konva fillPatternScaleYChange.konva fillPatternOffsetXChange.konva fillPatternOffsetYChange.konva fillPatternXChange.konva fillPatternYChange.konva fillPatternRotationChange.konva",LCe);$e.prototype.on.call($e.prototype,"fillPriorityChange.konva fillLinearGradientColorStopsChange.konva fillLinearGradientStartPointXChange.konva fillLinearGradientStartPointYChange.konva fillLinearGradientEndPointXChange.konva fillLinearGradientEndPointYChange.konva",ACe);$e.prototype.on.call($e.prototype,"fillPriorityChange.konva fillRadialGradientColorStopsChange.konva fillRadialGradientStartPointXChange.konva fillRadialGradientStartPointYChange.konva fillRadialGradientEndPointXChange.konva fillRadialGradientEndPointYChange.konva fillRadialGradientStartRadiusChange.konva fillRadialGradientEndRadiusChange.konva",OCe);J.addGetterSetter($e,"stroke",void 0,rV());J.addGetterSetter($e,"strokeWidth",2,Ve());J.addGetterSetter($e,"fillAfterStrokeEnabled",!1);J.addGetterSetter($e,"hitStrokeWidth","auto",EE());J.addGetterSetter($e,"strokeHitEnabled",!0,el());J.addGetterSetter($e,"perfectDrawEnabled",!0,el());J.addGetterSetter($e,"shadowForStrokeEnabled",!0,el());J.addGetterSetter($e,"lineJoin");J.addGetterSetter($e,"lineCap");J.addGetterSetter($e,"sceneFunc");J.addGetterSetter($e,"hitFunc");J.addGetterSetter($e,"dash");J.addGetterSetter($e,"dashOffset",0,Ve());J.addGetterSetter($e,"shadowColor",void 0,x0());J.addGetterSetter($e,"shadowBlur",0,Ve());J.addGetterSetter($e,"shadowOpacity",1,Ve());J.addComponentsGetterSetter($e,"shadowOffset",["x","y"]);J.addGetterSetter($e,"shadowOffsetX",0,Ve());J.addGetterSetter($e,"shadowOffsetY",0,Ve());J.addGetterSetter($e,"fillPatternImage");J.addGetterSetter($e,"fill",void 0,rV());J.addGetterSetter($e,"fillPatternX",0,Ve());J.addGetterSetter($e,"fillPatternY",0,Ve());J.addGetterSetter($e,"fillLinearGradientColorStops");J.addGetterSetter($e,"strokeLinearGradientColorStops");J.addGetterSetter($e,"fillRadialGradientStartRadius",0);J.addGetterSetter($e,"fillRadialGradientEndRadius",0);J.addGetterSetter($e,"fillRadialGradientColorStops");J.addGetterSetter($e,"fillPatternRepeat","repeat");J.addGetterSetter($e,"fillEnabled",!0);J.addGetterSetter($e,"strokeEnabled",!0);J.addGetterSetter($e,"shadowEnabled",!0);J.addGetterSetter($e,"dashEnabled",!0);J.addGetterSetter($e,"strokeScaleEnabled",!0);J.addGetterSetter($e,"fillPriority","color");J.addComponentsGetterSetter($e,"fillPatternOffset",["x","y"]);J.addGetterSetter($e,"fillPatternOffsetX",0,Ve());J.addGetterSetter($e,"fillPatternOffsetY",0,Ve());J.addComponentsGetterSetter($e,"fillPatternScale",["x","y"]);J.addGetterSetter($e,"fillPatternScaleX",1,Ve());J.addGetterSetter($e,"fillPatternScaleY",1,Ve());J.addComponentsGetterSetter($e,"fillLinearGradientStartPoint",["x","y"]);J.addComponentsGetterSetter($e,"strokeLinearGradientStartPoint",["x","y"]);J.addGetterSetter($e,"fillLinearGradientStartPointX",0);J.addGetterSetter($e,"strokeLinearGradientStartPointX",0);J.addGetterSetter($e,"fillLinearGradientStartPointY",0);J.addGetterSetter($e,"strokeLinearGradientStartPointY",0);J.addComponentsGetterSetter($e,"fillLinearGradientEndPoint",["x","y"]);J.addComponentsGetterSetter($e,"strokeLinearGradientEndPoint",["x","y"]);J.addGetterSetter($e,"fillLinearGradientEndPointX",0);J.addGetterSetter($e,"strokeLinearGradientEndPointX",0);J.addGetterSetter($e,"fillLinearGradientEndPointY",0);J.addGetterSetter($e,"strokeLinearGradientEndPointY",0);J.addComponentsGetterSetter($e,"fillRadialGradientStartPoint",["x","y"]);J.addGetterSetter($e,"fillRadialGradientStartPointX",0);J.addGetterSetter($e,"fillRadialGradientStartPointY",0);J.addComponentsGetterSetter($e,"fillRadialGradientEndPoint",["x","y"]);J.addGetterSetter($e,"fillRadialGradientEndPointX",0);J.addGetterSetter($e,"fillRadialGradientEndPointY",0);J.addGetterSetter($e,"fillPatternRotation",0);J.backCompat($e,{dashArray:"dash",getDashArray:"getDash",setDashArray:"getDash",drawFunc:"sceneFunc",getDrawFunc:"getSceneFunc",setDrawFunc:"setSceneFunc",drawHitFunc:"hitFunc",getDrawHitFunc:"getHitFunc",setDrawHitFunc:"setHitFunc"});var RCe="#",ICe="beforeDraw",DCe="draw",wV=[{x:0,y:0},{x:-1,y:-1},{x:1,y:-1},{x:1,y:1},{x:-1,y:1}],jCe=wV.length;let sp=class extends Ma{constructor(t){super(t),this.canvas=new Dm,this.hitCanvas=new PE({pixelRatio:1}),this._waitingForDraw=!1,this.on("visibleChange.konva",this._checkVisibility),this._checkVisibility(),this.on("imageSmoothingEnabledChange.konva",this._setSmoothEnabled),this._setSmoothEnabled()}createPNGStream(){return this.canvas._canvas.createPNGStream()}getCanvas(){return this.canvas}getNativeCanvasElement(){return this.canvas._canvas}getHitCanvas(){return this.hitCanvas}getContext(){return this.getCanvas().getContext()}clear(t){return this.getContext().clear(t),this.getHitCanvas().getContext().clear(t),this}setZIndex(t){super.setZIndex(t);var n=this.getStage();return n&&n.content&&(n.content.removeChild(this.getNativeCanvasElement()),t{this.draw(),this._waitingForDraw=!1})),this}getIntersection(t){if(!this.isListening()||!this.isVisible())return null;for(var n=1,r=!1;;){for(let i=0;i0)return{antialiased:!0};return{}}drawScene(t,n){var r=this.getLayer(),i=t||r&&r.getCanvas();return this._fire(ICe,{node:this}),this.clearBeforeDraw()&&i.getContext().clear(),Ma.prototype.drawScene.call(this,i,n),this._fire(DCe,{node:this}),this}drawHit(t,n){var r=this.getLayer(),i=t||r&&r.hitCanvas;return r&&r.clearBeforeDraw()&&r.getHitCanvas().getContext().clear(),Ma.prototype.drawHit.call(this,i,n),this}enableHitGraph(){return this.hitGraphEnabled(!0),this}disableHitGraph(){return this.hitGraphEnabled(!1),this}setHitGraphEnabled(t){de.warn("hitGraphEnabled method is deprecated. Please use layer.listening() instead."),this.listening(t)}getHitGraphEnabled(t){return de.warn("hitGraphEnabled method is deprecated. Please use layer.listening() instead."),this.listening()}toggleHitCanvas(){if(!(!this.parent||!this.parent.content)){var t=this.parent,n=!!this.hitCanvas._canvas.parentNode;n?t.content.removeChild(this.hitCanvas._canvas):t.content.appendChild(this.hitCanvas._canvas)}}destroy(){return de.releaseCanvas(this.getNativeCanvasElement(),this.getHitCanvas()._canvas),super.destroy()}};sp.prototype.nodeType="Layer";Mr(sp);J.addGetterSetter(sp,"imageSmoothingEnabled",!0);J.addGetterSetter(sp,"clearBeforeDraw",!0);J.addGetterSetter(sp,"hitGraphEnabled",!0,el());class ME extends sp{constructor(t){super(t),this.listening(!1),de.warn('Konva.Fast layer is deprecated. Please use "new Konva.Layer({ listening: false })" instead.')}}ME.prototype.nodeType="FastLayer";Mr(ME);let Jm=class extends Ma{_validateAdd(t){var n=t.getType();n!=="Group"&&n!=="Shape"&&de.throw("You may only add groups and shapes to groups.")}};Jm.prototype.nodeType="Group";Mr(Jm);var GC=function(){return Im.performance&&Im.performance.now?function(){return Im.performance.now()}:function(){return new Date().getTime()}}();class Ja{constructor(t,n){this.id=Ja.animIdCounter++,this.frame={time:0,timeDiff:0,lastTime:GC(),frameRate:0},this.func=t,this.setLayers(n)}setLayers(t){var n=[];return t?t.length>0?n=t:n=[t]:n=[],this.layers=n,this}getLayers(){return this.layers}addLayer(t){var n=this.layers,r=n.length,i;for(i=0;ithis.duration?this.yoyo?(this._time=this.duration,this.reverse()):this.finish():t<0?this.yoyo?(this._time=0,this.play()):this.reset():(this._time=t,this.update())}getTime(){return this._time}setPosition(t){this.prevPos=this._pos,this.propFunc(t),this._pos=t}getPosition(t){return t===void 0&&(t=this._time),this.func(t,this.begin,this._change,this.duration)}play(){this.state=dI,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire("onPlay")}reverse(){this.state=fI,this._time=this.duration-this._time,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire("onReverse")}seek(t){this.pause(),this._time=t,this.update(),this.fire("onSeek")}reset(){this.pause(),this._time=0,this.update(),this.fire("onReset")}finish(){this.pause(),this._time=this.duration,this.update(),this.fire("onFinish")}update(){this.setPosition(this.getPosition(this._time)),this.fire("onUpdate")}onEnterFrame(){var t=this.getTimer()-this._startTime;this.state===dI?this.setTime(t):this.state===fI&&this.setTime(this.duration-t)}pause(){this.state=$Ce,this.fire("onPause")}getTimer(){return new Date().getTime()}}class Xr{constructor(t){var n=this,r=t.node,i=r._id,o,a=t.easing||K1.Linear,s=!!t.yoyo,l;typeof t.duration>"u"?o=.3:t.duration===0?o=.001:o=t.duration,this.node=r,this._id=FCe++;var u=r.getLayer()||(r instanceof ft.Stage?r.getLayers():null);u||de.error("Tween constructor have `node` that is not in a layer. Please add node into layer first."),this.anim=new Ja(function(){n.tween.onEnterFrame()},u),this.tween=new BCe(l,function(d){n._tweenFunc(d)},a,0,1,o*1e3,s),this._addListeners(),Xr.attrs[i]||(Xr.attrs[i]={}),Xr.attrs[i][this._id]||(Xr.attrs[i][this._id]={}),Xr.tweens[i]||(Xr.tweens[i]={});for(l in t)NCe[l]===void 0&&this._addAttr(l,t[l]);this.reset(),this.onFinish=t.onFinish,this.onReset=t.onReset,this.onUpdate=t.onUpdate}_addAttr(t,n){var r=this.node,i=r._id,o,a,s,l,u,d,h,m;if(s=Xr.tweens[i][t],s&&delete Xr.attrs[i][s][t],o=r.getAttr(t),de._isArray(n))if(a=[],u=Math.max(n.length,o.length),t==="points"&&n.length!==o.length&&(n.length>o.length?(h=o,o=de._prepareArrayForTween(o,n,r.closed())):(d=n,n=de._prepareArrayForTween(n,o,r.closed()))),t.indexOf("fill")===0)for(l=0;l{this.anim.start()},this.tween.onReverse=()=>{this.anim.start()},this.tween.onPause=()=>{this.anim.stop()},this.tween.onFinish=()=>{var t=this.node,n=Xr.attrs[t._id][this._id];n.points&&n.points.trueEnd&&t.setAttr("points",n.points.trueEnd),this.onFinish&&this.onFinish.call(this)},this.tween.onReset=()=>{var t=this.node,n=Xr.attrs[t._id][this._id];n.points&&n.points.trueStart&&t.points(n.points.trueStart),this.onReset&&this.onReset()},this.tween.onUpdate=()=>{this.onUpdate&&this.onUpdate.call(this)}}play(){return this.tween.play(),this}reverse(){return this.tween.reverse(),this}reset(){return this.tween.reset(),this}seek(t){return this.tween.seek(t*1e3),this}pause(){return this.tween.pause(),this}finish(){return this.tween.finish(),this}destroy(){var t=this.node._id,n=this._id,r=Xr.tweens[t],i;this.pause();for(i in r)delete Xr.tweens[t][i];delete Xr.attrs[t][n]}}Xr.attrs={};Xr.tweens={};Ge.prototype.to=function(e){var t=e.onFinish;e.node=this,e.onFinish=function(){this.destroy(),t&&t()};var n=new Xr(e);n.play()};const K1={BackEaseIn(e,t,n,r){var i=1.70158;return n*(e/=r)*e*((i+1)*e-i)+t},BackEaseOut(e,t,n,r){var i=1.70158;return n*((e=e/r-1)*e*((i+1)*e+i)+1)+t},BackEaseInOut(e,t,n,r){var i=1.70158;return(e/=r/2)<1?n/2*(e*e*(((i*=1.525)+1)*e-i))+t:n/2*((e-=2)*e*(((i*=1.525)+1)*e+i)+2)+t},ElasticEaseIn(e,t,n,r,i,o){var a=0;return e===0?t:(e/=r)===1?t+n:(o||(o=r*.3),!i||i0?t:n),d=a*n,h=s*(s>0?t:n),m=l*(l>0?n:t);return{x:u,y:r?-1*m:h,width:d-u,height:m-h}}}hc.prototype._centroid=!0;hc.prototype.className="Arc";hc.prototype._attrsAffectingSize=["innerRadius","outerRadius"];Mr(hc);J.addGetterSetter(hc,"innerRadius",0,Ve());J.addGetterSetter(hc,"outerRadius",0,Ve());J.addGetterSetter(hc,"angle",0,Ve());J.addGetterSetter(hc,"clockwise",!1,el());function $k(e,t,n,r,i,o,a){var s=Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2)),l=Math.sqrt(Math.pow(i-n,2)+Math.pow(o-r,2)),u=a*s/(s+l),d=a*l/(s+l),h=n-u*(i-e),m=r-u*(o-t),y=n+d*(i-e),b=r+d*(o-t);return[h,m,y,b]}function pI(e,t){var n=e.length,r=[],i,o;for(i=2;i4){for(s=this.getTensionPoints(),l=s.length,u=o?0:4,o||t.quadraticCurveTo(s[0],s[1],s[2],s[3]);ud?u:d,E=u>d?1:u/d,_=u>d?d/u:1;t.translate(s,l),t.rotate(y),t.scale(E,_),t.arc(0,0,w,h,h+m,1-b),t.scale(1/E,1/_),t.rotate(-y),t.translate(-s,-l);break;case"z":r=!0,t.closePath();break}}!r&&!this.hasFill()?t.strokeShape(this):t.fillStrokeShape(this)}getSelfRect(){var t=[];this.dataArray.forEach(function(u){if(u.command==="A"){var d=u.points[4],h=u.points[5],m=u.points[4]+h,y=Math.PI/180;if(Math.abs(d-m)m;b-=y){const w=Fn.getPointOnEllipticalArc(u.points[0],u.points[1],u.points[2],u.points[3],b,0);t.push(w.x,w.y)}else for(let b=d+y;bthis.dataArray[r].pathLength;)t-=this.dataArray[r].pathLength,++r;if(r===i)return n=this.dataArray[r-1].points.slice(-2),{x:n[0],y:n[1]};if(t<.01)return n=this.dataArray[r].points.slice(0,2),{x:n[0],y:n[1]};var o=this.dataArray[r],a=o.points;switch(o.command){case"L":return Fn.getPointOnLine(t,o.start.x,o.start.y,a[0],a[1]);case"C":return Fn.getPointOnCubicBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3],a[4],a[5]);case"Q":return Fn.getPointOnQuadraticBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3]);case"A":var s=a[0],l=a[1],u=a[2],d=a[3],h=a[4],m=a[5],y=a[6];return h+=m*t/o.pathLength,Fn.getPointOnEllipticalArc(s,l,u,d,h,y)}return null}static getLineLength(t,n,r,i){return Math.sqrt((r-t)*(r-t)+(i-n)*(i-n))}static getPointOnLine(t,n,r,i,o,a,s){a===void 0&&(a=n),s===void 0&&(s=r);var l=(o-r)/(i-n+1e-8),u=Math.sqrt(t*t/(1+l*l));i0&&!isNaN(b[0]);){var k=null,T=[],L=l,O=u,D,I,N,W,B,K,ne,z,$,V;switch(y){case"l":l+=b.shift(),u+=b.shift(),k="L",T.push(l,u);break;case"L":l=b.shift(),u=b.shift(),T.push(l,u);break;case"m":var X=b.shift(),Q=b.shift();if(l+=X,u+=Q,k="M",a.length>2&&a[a.length-1].command==="z"){for(var G=a.length-2;G>=0;G--)if(a[G].command==="M"){l=a[G].points[0]+X,u=a[G].points[1]+Q;break}}T.push(l,u),y="l";break;case"M":l=b.shift(),u=b.shift(),k="M",T.push(l,u),y="L";break;case"h":l+=b.shift(),k="L",T.push(l,u);break;case"H":l=b.shift(),k="L",T.push(l,u);break;case"v":u+=b.shift(),k="L",T.push(l,u);break;case"V":u=b.shift(),k="L",T.push(l,u);break;case"C":T.push(b.shift(),b.shift(),b.shift(),b.shift()),l=b.shift(),u=b.shift(),T.push(l,u);break;case"c":T.push(l+b.shift(),u+b.shift(),l+b.shift(),u+b.shift()),l+=b.shift(),u+=b.shift(),k="C",T.push(l,u);break;case"S":I=l,N=u,D=a[a.length-1],D.command==="C"&&(I=l+(l-D.points[2]),N=u+(u-D.points[3])),T.push(I,N,b.shift(),b.shift()),l=b.shift(),u=b.shift(),k="C",T.push(l,u);break;case"s":I=l,N=u,D=a[a.length-1],D.command==="C"&&(I=l+(l-D.points[2]),N=u+(u-D.points[3])),T.push(I,N,l+b.shift(),u+b.shift()),l+=b.shift(),u+=b.shift(),k="C",T.push(l,u);break;case"Q":T.push(b.shift(),b.shift()),l=b.shift(),u=b.shift(),T.push(l,u);break;case"q":T.push(l+b.shift(),u+b.shift()),l+=b.shift(),u+=b.shift(),k="Q",T.push(l,u);break;case"T":I=l,N=u,D=a[a.length-1],D.command==="Q"&&(I=l+(l-D.points[0]),N=u+(u-D.points[1])),l=b.shift(),u=b.shift(),k="Q",T.push(I,N,l,u);break;case"t":I=l,N=u,D=a[a.length-1],D.command==="Q"&&(I=l+(l-D.points[0]),N=u+(u-D.points[1])),l+=b.shift(),u+=b.shift(),k="Q",T.push(I,N,l,u);break;case"A":W=b.shift(),B=b.shift(),K=b.shift(),ne=b.shift(),z=b.shift(),$=l,V=u,l=b.shift(),u=b.shift(),k="A",T=this.convertEndpointToCenterParameterization($,V,l,u,ne,z,W,B,K);break;case"a":W=b.shift(),B=b.shift(),K=b.shift(),ne=b.shift(),z=b.shift(),$=l,V=u,l+=b.shift(),u+=b.shift(),k="A",T=this.convertEndpointToCenterParameterization($,V,l,u,ne,z,W,B,K);break}a.push({command:k||y,points:T,start:{x:L,y:O},pathLength:this.calcLength(L,O,k||y,T)})}(y==="z"||y==="Z")&&a.push({command:"z",points:[],start:void 0,pathLength:0})}return a}static calcLength(t,n,r,i){var o,a,s,l,u=Fn;switch(r){case"L":return u.getLineLength(t,n,i[0],i[1]);case"C":for(o=0,a=u.getPointOnCubicBezier(0,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),l=.01;l<=1;l+=.01)s=u.getPointOnCubicBezier(l,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),o+=u.getLineLength(a.x,a.y,s.x,s.y),a=s;return o;case"Q":for(o=0,a=u.getPointOnQuadraticBezier(0,t,n,i[0],i[1],i[2],i[3]),l=.01;l<=1;l+=.01)s=u.getPointOnQuadraticBezier(l,t,n,i[0],i[1],i[2],i[3]),o+=u.getLineLength(a.x,a.y,s.x,s.y),a=s;return o;case"A":o=0;var d=i[4],h=i[5],m=i[4]+h,y=Math.PI/180;if(Math.abs(d-m)m;l-=y)s=u.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],l,0),o+=u.getLineLength(a.x,a.y,s.x,s.y),a=s;else for(l=d+y;l1&&(s*=Math.sqrt(y),l*=Math.sqrt(y));var b=Math.sqrt((s*s*(l*l)-s*s*(m*m)-l*l*(h*h))/(s*s*(m*m)+l*l*(h*h)));o===a&&(b*=-1),isNaN(b)&&(b=0);var w=b*s*m/l,E=b*-l*h/s,_=(t+r)/2+Math.cos(d)*w-Math.sin(d)*E,k=(n+i)/2+Math.sin(d)*w+Math.cos(d)*E,T=function(B){return Math.sqrt(B[0]*B[0]+B[1]*B[1])},L=function(B,K){return(B[0]*K[0]+B[1]*K[1])/(T(B)*T(K))},O=function(B,K){return(B[0]*K[1]=1&&(W=0),a===0&&W>0&&(W=W-2*Math.PI),a===1&&W<0&&(W=W+2*Math.PI),[_,k,s,l,D,W,d,a]}}Fn.prototype.className="Path";Fn.prototype._attrsAffectingSize=["data"];Mr(Fn);J.addGetterSetter(Fn,"data");class lp extends pc{_sceneFunc(t){super._sceneFunc(t);var n=Math.PI*2,r=this.points(),i=r,o=this.tension()!==0&&r.length>4;o&&(i=this.getTensionPoints());var a=this.pointerLength(),s=r.length,l,u;if(o){const m=[i[i.length-4],i[i.length-3],i[i.length-2],i[i.length-1],r[s-2],r[s-1]],y=Fn.calcLength(i[i.length-4],i[i.length-3],"C",m),b=Fn.getPointOnQuadraticBezier(Math.min(1,1-a/y),m[0],m[1],m[2],m[3],m[4],m[5]);l=r[s-2]-b.x,u=r[s-1]-b.y}else l=r[s-2]-r[s-4],u=r[s-1]-r[s-3];var d=(Math.atan2(u,l)+n)%n,h=this.pointerWidth();this.pointerAtEnding()&&(t.save(),t.beginPath(),t.translate(r[s-2],r[s-1]),t.rotate(d),t.moveTo(0,0),t.lineTo(-a,h/2),t.lineTo(-a,-h/2),t.closePath(),t.restore(),this.__fillStroke(t)),this.pointerAtBeginning()&&(t.save(),t.beginPath(),t.translate(r[0],r[1]),o?(l=(i[0]+i[2])/2-r[0],u=(i[1]+i[3])/2-r[1]):(l=r[2]-r[0],u=r[3]-r[1]),t.rotate((Math.atan2(-u,-l)+n)%n),t.moveTo(0,0),t.lineTo(-a,h/2),t.lineTo(-a,-h/2),t.closePath(),t.restore(),this.__fillStroke(t))}__fillStroke(t){var n=this.dashEnabled();n&&(this.attrs.dashEnabled=!1,t.setLineDash([])),t.fillStrokeShape(this),n&&(this.attrs.dashEnabled=!0)}getSelfRect(){const t=super.getSelfRect(),n=this.pointerWidth()/2;return{x:t.x-n,y:t.y-n,width:t.width+n*2,height:t.height+n*2}}}lp.prototype.className="Arrow";Mr(lp);J.addGetterSetter(lp,"pointerLength",10,Ve());J.addGetterSetter(lp,"pointerWidth",10,Ve());J.addGetterSetter(lp,"pointerAtBeginning",!1);J.addGetterSetter(lp,"pointerAtEnding",!0);let S0=class extends $e{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.attrs.radius||0,0,Math.PI*2,!1),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(t){this.radius()!==t/2&&this.radius(t/2)}setHeight(t){this.radius()!==t/2&&this.radius(t/2)}};S0.prototype._centroid=!0;S0.prototype.className="Circle";S0.prototype._attrsAffectingSize=["radius"];Mr(S0);J.addGetterSetter(S0,"radius",0,Ve());class cf extends $e{_sceneFunc(t){var n=this.radiusX(),r=this.radiusY();t.beginPath(),t.save(),n!==r&&t.scale(1,r/n),t.arc(0,0,n,0,Math.PI*2,!1),t.restore(),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.radiusX()*2}getHeight(){return this.radiusY()*2}setWidth(t){this.radiusX(t/2)}setHeight(t){this.radiusY(t/2)}}cf.prototype.className="Ellipse";cf.prototype._centroid=!0;cf.prototype._attrsAffectingSize=["radiusX","radiusY"];Mr(cf);J.addComponentsGetterSetter(cf,"radius",["x","y"]);J.addGetterSetter(cf,"radiusX",0,Ve());J.addGetterSetter(cf,"radiusY",0,Ve());let uu=class CV extends $e{constructor(t){super(t),this.on("imageChange.konva",()=>{this._setImageLoad()}),this._setImageLoad()}_setImageLoad(){const t=this.image();t&&t.complete||t&&t.readyState===4||t&&t.addEventListener&&t.addEventListener("load",()=>{this._requestDraw()})}_useBufferCanvas(){return super._useBufferCanvas(!0)}_sceneFunc(t){const n=this.getWidth(),r=this.getHeight(),i=this.cornerRadius(),o=this.attrs.image;let a;if(o){const s=this.attrs.cropWidth,l=this.attrs.cropHeight;s&&l?a=[o,this.cropX(),this.cropY(),s,l,0,0,n,r]:a=[o,0,0,n,r]}(this.hasFill()||this.hasStroke()||i)&&(t.beginPath(),i?de.drawRoundedRectPath(t,n,r,i):t.rect(0,0,n,r),t.closePath(),t.fillStrokeShape(this)),o&&(i&&t.clip(),t.drawImage.apply(t,a))}_hitFunc(t){var n=this.width(),r=this.height(),i=this.cornerRadius();t.beginPath(),i?de.drawRoundedRectPath(t,n,r,i):t.rect(0,0,n,r),t.closePath(),t.fillStrokeShape(this)}getWidth(){var t,n;return(t=this.attrs.width)!==null&&t!==void 0?t:(n=this.image())===null||n===void 0?void 0:n.width}getHeight(){var t,n;return(t=this.attrs.height)!==null&&t!==void 0?t:(n=this.image())===null||n===void 0?void 0:n.height}static fromURL(t,n,r=null){var i=de.createImageElement();i.onload=function(){var o=new CV({image:i});n(o)},i.onerror=r,i.crossOrigin="Anonymous",i.src=t}};uu.prototype.className="Image";Mr(uu);J.addGetterSetter(uu,"cornerRadius",0,kE(4));J.addGetterSetter(uu,"image");J.addComponentsGetterSetter(uu,"crop",["x","y","width","height"]);J.addGetterSetter(uu,"cropX",0,Ve());J.addGetterSetter(uu,"cropY",0,Ve());J.addGetterSetter(uu,"cropWidth",0,Ve());J.addGetterSetter(uu,"cropHeight",0,Ve());var _V=["fontFamily","fontSize","fontStyle","padding","lineHeight","text","width","height","pointerDirection","pointerWidth","pointerHeight"],zCe="Change.konva",HCe="none",Fk="up",Bk="right",zk="down",Hk="left",WCe=_V.length;class LE extends Jm{constructor(t){super(t),this.on("add.konva",function(n){this._addListeners(n.child),this._sync()})}getText(){return this.find("Text")[0]}getTag(){return this.find("Tag")[0]}_addListeners(t){var n=this,r,i=function(){n._sync()};for(r=0;r{n=Math.min(n,a.x),r=Math.max(r,a.x),i=Math.min(i,a.y),o=Math.max(o,a.y)}),{x:n,y:i,width:r-n,height:o-i}}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(t){this.radius(t/2)}setHeight(t){this.radius(t/2)}}cp.prototype.className="RegularPolygon";cp.prototype._centroid=!0;cp.prototype._attrsAffectingSize=["radius"];Mr(cp);J.addGetterSetter(cp,"radius",0,Ve());J.addGetterSetter(cp,"sides",0,Ve());var gI=Math.PI*2;class dp extends $e{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.innerRadius(),0,gI,!1),t.moveTo(this.outerRadius(),0),t.arc(0,0,this.outerRadius(),gI,0,!0),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(t){this.outerRadius(t/2)}setHeight(t){this.outerRadius(t/2)}}dp.prototype.className="Ring";dp.prototype._centroid=!0;dp.prototype._attrsAffectingSize=["innerRadius","outerRadius"];Mr(dp);J.addGetterSetter(dp,"innerRadius",0,Ve());J.addGetterSetter(dp,"outerRadius",0,Ve());class cu extends $e{constructor(t){super(t),this._updated=!0,this.anim=new Ja(()=>{var n=this._updated;return this._updated=!1,n}),this.on("animationChange.konva",function(){this.frameIndex(0)}),this.on("frameIndexChange.konva",function(){this._updated=!0}),this.on("frameRateChange.konva",function(){this.anim.isRunning()&&(clearInterval(this.interval),this._setInterval())})}_sceneFunc(t){var n=this.animation(),r=this.frameIndex(),i=r*4,o=this.animations()[n],a=this.frameOffsets(),s=o[i+0],l=o[i+1],u=o[i+2],d=o[i+3],h=this.image();if((this.hasFill()||this.hasStroke())&&(t.beginPath(),t.rect(0,0,u,d),t.closePath(),t.fillStrokeShape(this)),h)if(a){var m=a[n],y=r*2;t.drawImage(h,s,l,u,d,m[y+0],m[y+1],u,d)}else t.drawImage(h,s,l,u,d,0,0,u,d)}_hitFunc(t){var n=this.animation(),r=this.frameIndex(),i=r*4,o=this.animations()[n],a=this.frameOffsets(),s=o[i+2],l=o[i+3];if(t.beginPath(),a){var u=a[n],d=r*2;t.rect(u[d+0],u[d+1],s,l)}else t.rect(0,0,s,l);t.closePath(),t.fillShape(this)}_useBufferCanvas(){return super._useBufferCanvas(!0)}_setInterval(){var t=this;this.interval=setInterval(function(){t._updateIndex()},1e3/this.frameRate())}start(){if(!this.isRunning()){var t=this.getLayer();this.anim.setLayers(t),this._setInterval(),this.anim.start()}}stop(){this.anim.stop(),clearInterval(this.interval)}isRunning(){return this.anim.isRunning()}_updateIndex(){var t=this.frameIndex(),n=this.animation(),r=this.animations(),i=r[n],o=i.length/4;t{t=t.trim();const n=t.indexOf(" ")>=0,r=t.indexOf('"')>=0||t.indexOf("'")>=0;return n&&!r&&(t=`"${t}"`),t}).join(", ")}var px;function KC(){return px||(px=de.createCanvasElement().getContext(GCe),px)}function r6e(e){e.fillText(this._partialText,this._partialTextX,this._partialTextY)}function i6e(e){e.strokeText(this._partialText,this._partialTextX,this._partialTextY)}function o6e(e){return e=e||{},!e.fillLinearGradientColorStops&&!e.fillRadialGradientColorStops&&!e.fillPatternImage&&(e.fill=e.fill||"black"),e}class Tr extends $e{constructor(t){super(o6e(t)),this._partialTextX=0,this._partialTextY=0;for(var n=0;n1&&(_+=a)}}}_hitFunc(t){var n=this.getWidth(),r=this.getHeight();t.beginPath(),t.rect(0,0,n,r),t.closePath(),t.fillStrokeShape(this)}setText(t){var n=de._isString(t)?t:t==null?"":t+"";return this._setAttr(qCe,n),this}getWidth(){var t=this.attrs.width===Rg||this.attrs.width===void 0;return t?this.getTextWidth()+this.padding()*2:this.attrs.width}getHeight(){var t=this.attrs.height===Rg||this.attrs.height===void 0;return t?this.fontSize()*this.textArr.length*this.lineHeight()+this.padding()*2:this.attrs.height}getTextWidth(){return this.textWidth}getTextHeight(){return de.warn("text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height."),this.textHeight}measureSize(t){var n=KC(),r=this.fontSize(),i;return n.save(),n.font=this._getContextFont(),i=n.measureText(t),n.restore(),{width:i.width,height:r}}_getContextFont(){return this.fontStyle()+hx+this.fontVariant()+hx+(this.fontSize()+ZCe)+n6e(this.fontFamily())}_addTextLine(t){this.align()===Jv&&(t=t.trim());var r=this._getTextWidth(t);return this.textArr.push({text:t,width:r,lastInParagraph:!1})}_getTextWidth(t){var n=this.letterSpacing(),r=t.length;return KC().measureText(t).width+(r?n*(r-1):0)}_setTextData(){var t=this.text().split(` -`),n=+this.fontSize(),r=0,i=this.lineHeight()*n,o=this.attrs.width,a=this.attrs.height,s=o!==Rg&&o!==void 0,l=a!==Rg&&a!==void 0,u=this.padding(),d=o-u*2,h=a-u*2,m=0,y=this.wrap(),b=y!==yI,w=y!==e6e&&b,E=this.ellipsis();this.textArr=[],KC().font=this._getContextFont();for(var _=E?this._getTextWidth(qC):0,k=0,T=t.length;kd)for(;L.length>0;){for(var D=0,I=L.length,N="",W=0;D>>1,K=L.slice(0,B+1),ne=this._getTextWidth(K)+_;ne<=d?(D=B+1,N=K,W=ne):I=B}if(N){if(w){var z,$=L[N.length],V=$===hx||$===mI;V&&W<=d?z=N.length:z=Math.max(N.lastIndexOf(hx),N.lastIndexOf(mI))+1,z>0&&(D=z,N=N.slice(0,D),W=this._getTextWidth(N))}N=N.trimRight(),this._addTextLine(N),r=Math.max(r,W),m+=i;var X=this._shouldHandleEllipsis(m);if(X){this._tryToAddEllipsisToLastLine();break}if(L=L.slice(D),L=L.trimLeft(),L.length>0&&(O=this._getTextWidth(L),O<=d)){this._addTextLine(L),m+=i,r=Math.max(r,O);break}}else break}else this._addTextLine(L),m+=i,r=Math.max(r,O),this._shouldHandleEllipsis(m)&&kh)break}this.textHeight=n,this.textWidth=r}_shouldHandleEllipsis(t){var n=+this.fontSize(),r=this.lineHeight()*n,i=this.attrs.height,o=i!==Rg&&i!==void 0,a=this.padding(),s=i-a*2,l=this.wrap(),u=l!==yI;return!u||o&&t+r>s}_tryToAddEllipsisToLastLine(){var t=this.attrs.width,n=t!==Rg&&t!==void 0,r=this.padding(),i=t-r*2,o=this.ellipsis(),a=this.textArr[this.textArr.length-1];if(!(!a||!o)){if(n){var s=this._getTextWidth(a.text+qC)=1){var r=n[0].p0;t.moveTo(r.x,r.y)}for(var i=0;i0&&(s+=t.dataArray[l].pathLength);var u=0;i==="center"&&(u=Math.max(0,s/2-a/2)),i==="right"&&(u=Math.max(0,s-a));for(var d=kV(this.text()),h=this.text().split(" ").length-1,m,y,b,w=-1,E=0,_=function(){E=0;for(var ne=t.dataArray,z=w+1;z0)return w=z,ne[z];ne[z].command==="M"&&(m={x:ne[z].points[0],y:ne[z].points[1]})}return{}},k=function(ne){var z=t._getTextSize(ne).width+r;ne===" "&&i==="justify"&&(z+=(s-a)/h);var $=0,V=0;for(y=void 0;Math.abs(z-$)/z>.01&&V<20;){V++;for(var X=$;b===void 0;)b=_(),b&&X+b.pathLengthz?y=Fn.getPointOnLine(z,m.x,m.y,b.points[0],b.points[1],m.x,m.y):b=void 0;break;case"A":var G=b.points[4],Y=b.points[5],ee=b.points[4]+Y;E===0?E=G+1e-8:z>$?E+=Math.PI/180*Y/Math.abs(Y):E-=Math.PI/360*Y/Math.abs(Y),(Y<0&&E=0&&E>ee)&&(E=ee,Q=!0),y=Fn.getPointOnEllipticalArc(b.points[0],b.points[1],b.points[2],b.points[3],E,b.points[6]);break;case"C":E===0?z>b.pathLength?E=1e-8:E=z/b.pathLength:z>$?E+=(z-$)/b.pathLength/2:E=Math.max(E-($-z)/b.pathLength/2,0),E>1&&(E=1,Q=!0),y=Fn.getPointOnCubicBezier(E,b.start.x,b.start.y,b.points[0],b.points[1],b.points[2],b.points[3],b.points[4],b.points[5]);break;case"Q":E===0?E=z/b.pathLength:z>$?E+=(z-$)/b.pathLength:E-=($-z)/b.pathLength,E>1&&(E=1,Q=!0),y=Fn.getPointOnQuadraticBezier(E,b.start.x,b.start.y,b.points[0],b.points[1],b.points[2],b.points[3]);break}y!==void 0&&($=Fn.getLineLength(m.x,m.y,y.x,y.y)),Q&&(Q=!1,b=void 0)}},T="C",L=t._getTextSize(T).width+r,O=u/L-1,D=0;De+`.${OV}`).join(" "),bI="nodesRect",l6e=["widthChange","heightChange","scaleXChange","scaleYChange","skewXChange","skewYChange","rotationChange","offsetXChange","offsetYChange","transformsEnabledChange","strokeWidthChange"],u6e={"top-left":-45,"top-center":0,"top-right":45,"middle-right":-90,"middle-left":90,"bottom-left":-135,"bottom-center":180,"bottom-right":135};const c6e="ontouchstart"in ft._global;function d6e(e,t){if(e==="rotater")return"crosshair";t+=de.degToRad(u6e[e]||0);var n=(de.radToDeg(t)%360+360)%360;return de._inRange(n,315+22.5,360)||de._inRange(n,0,22.5)?"ns-resize":de._inRange(n,45-22.5,45+22.5)?"nesw-resize":de._inRange(n,90-22.5,90+22.5)?"ew-resize":de._inRange(n,135-22.5,135+22.5)?"nwse-resize":de._inRange(n,180-22.5,180+22.5)?"ns-resize":de._inRange(n,225-22.5,225+22.5)?"nesw-resize":de._inRange(n,270-22.5,270+22.5)?"ew-resize":de._inRange(n,315-22.5,315+22.5)?"nwse-resize":(de.error("Transformer has unknown angle for cursor detection: "+n),"pointer")}var L3=["top-left","top-center","top-right","middle-right","middle-left","bottom-left","bottom-center","bottom-right"],xI=1e8;function f6e(e){return{x:e.x+e.width/2*Math.cos(e.rotation)+e.height/2*Math.sin(-e.rotation),y:e.y+e.height/2*Math.cos(e.rotation)+e.width/2*Math.sin(e.rotation)}}function RV(e,t,n){const r=n.x+(e.x-n.x)*Math.cos(t)-(e.y-n.y)*Math.sin(t),i=n.y+(e.x-n.x)*Math.sin(t)+(e.y-n.y)*Math.cos(t);return Object.assign(Object.assign({},e),{rotation:e.rotation+t,x:r,y:i})}function h6e(e,t){const n=f6e(e);return RV(e,t,n)}function p6e(e,t,n){let r=t;for(let i=0;i{const i=()=>{this.nodes().length===1&&this.useSingleNodeRotation()&&this.rotation(this.nodes()[0].getAbsoluteRotation()),this._resetTransformCache(),!this._transforming&&!this.isDragging()&&this.update()},o=r._attrsAffectingSize.map(a=>a+"Change."+this._getEventNamespace()).join(" ");r.on(o,i),r.on(l6e.map(a=>a+`.${this._getEventNamespace()}`).join(" "),i),r.on(`absoluteTransformChange.${this._getEventNamespace()}`,i),this._proxyDrag(r)}),this._resetTransformCache();var n=!!this.findOne(".top-left");return n&&this.update(),this}_proxyDrag(t){let n;t.on(`dragstart.${this._getEventNamespace()}`,r=>{n=t.getAbsolutePosition(),!this.isDragging()&&t!==this.findOne(".back")&&this.startDrag(r,!1)}),t.on(`dragmove.${this._getEventNamespace()}`,r=>{if(!n)return;const i=t.getAbsolutePosition(),o=i.x-n.x,a=i.y-n.y;this.nodes().forEach(s=>{if(s===t||s.isDragging())return;const l=s.getAbsolutePosition();s.setAbsolutePosition({x:l.x+o,y:l.y+a}),s.startDrag(r)}),n=null})}getNodes(){return this._nodes||[]}getActiveAnchor(){return this._movingAnchorName}detach(){this._nodes&&this._nodes.forEach(t=>{t.off("."+this._getEventNamespace())}),this._nodes=[],this._resetTransformCache()}_resetTransformCache(){this._clearCache(bI),this._clearCache("transform"),this._clearSelfAndDescendantCache("absoluteTransform")}_getNodeRect(){return this._getCache(bI,this.__getNodeRect)}__getNodeShape(t,n=this.rotation(),r){var i=t.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()}),o=t.getAbsoluteScale(r),a=t.getAbsolutePosition(r),s=i.x*o.x-t.offsetX()*o.x,l=i.y*o.y-t.offsetY()*o.y;const u=(ft.getAngle(t.getAbsoluteRotation())+Math.PI*2)%(Math.PI*2),d={x:a.x+s*Math.cos(u)+l*Math.sin(-u),y:a.y+l*Math.cos(u)+s*Math.sin(u),width:i.width*o.x,height:i.height*o.y,rotation:u};return RV(d,-ft.getAngle(n),{x:0,y:0})}__getNodeRect(){var t=this.getNode();if(!t)return{x:-xI,y:-xI,width:0,height:0,rotation:0};const n=[];this.nodes().map(u=>{const d=u.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()});var h=[{x:d.x,y:d.y},{x:d.x+d.width,y:d.y},{x:d.x+d.width,y:d.y+d.height},{x:d.x,y:d.y+d.height}],m=u.getAbsoluteTransform();h.forEach(function(y){var b=m.point(y);n.push(b)})});const r=new Ca;r.rotate(-ft.getAngle(this.rotation()));var i,o,a,s;n.forEach(function(u){var d=r.point(u);i===void 0&&(i=a=d.x,o=s=d.y),i=Math.min(i,d.x),o=Math.min(o,d.y),a=Math.max(a,d.x),s=Math.max(s,d.y)}),r.invert();const l=r.point({x:i,y:o});return{x:l.x,y:l.y,width:a-i,height:s-o,rotation:ft.getAngle(this.rotation())}}getX(){return this._getNodeRect().x}getY(){return this._getNodeRect().y}getWidth(){return this._getNodeRect().width}getHeight(){return this._getNodeRect().height}_createElements(){this._createBack(),L3.forEach(function(t){this._createAnchor(t)}.bind(this)),this._createAnchor("rotater")}_createAnchor(t){var n=new m2({stroke:"rgb(0, 161, 255)",fill:"white",strokeWidth:1,name:t+" _anchor",dragDistance:0,draggable:!0,hitStrokeWidth:c6e?10:"auto"}),r=this;n.on("mousedown touchstart",function(i){r._handleMouseDown(i)}),n.on("dragstart",i=>{n.stopDrag(),i.cancelBubble=!0}),n.on("dragend",i=>{i.cancelBubble=!0}),n.on("mouseenter",()=>{var i=ft.getAngle(this.rotation()),o=d6e(t,i);n.getStage().content&&(n.getStage().content.style.cursor=o),this._cursorChange=!0}),n.on("mouseout",()=>{n.getStage().content&&(n.getStage().content.style.cursor=""),this._cursorChange=!1}),this.add(n)}_createBack(){var t=new $e({name:"back",width:0,height:0,draggable:!0,sceneFunc(n){var r=this.getParent(),i=r.padding();n.beginPath(),n.rect(-i,-i,this.width()+i*2,this.height()+i*2),n.moveTo(this.width()/2,-i),r.rotateEnabled()&&n.lineTo(this.width()/2,-r.rotateAnchorOffset()*de._sign(this.height())-i),n.fillStrokeShape(this)},hitFunc:(n,r)=>{if(this.shouldOverdrawWholeArea()){var i=this.padding();n.beginPath(),n.rect(-i,-i,r.width()+i*2,r.height()+i*2),n.fillStrokeShape(r)}}});this.add(t),this._proxyDrag(t),t.on("dragstart",n=>{n.cancelBubble=!0}),t.on("dragmove",n=>{n.cancelBubble=!0}),t.on("dragend",n=>{n.cancelBubble=!0}),this.on("dragmove",n=>{this.update()})}_handleMouseDown(t){this._movingAnchorName=t.target.name().split(" ")[0];var n=this._getNodeRect(),r=n.width,i=n.height,o=Math.sqrt(Math.pow(r,2)+Math.pow(i,2));this.sin=Math.abs(i/o),this.cos=Math.abs(r/o),typeof window<"u"&&(window.addEventListener("mousemove",this._handleMouseMove),window.addEventListener("touchmove",this._handleMouseMove),window.addEventListener("mouseup",this._handleMouseUp,!0),window.addEventListener("touchend",this._handleMouseUp,!0)),this._transforming=!0;var a=t.target.getAbsolutePosition(),s=t.target.getStage().getPointerPosition();this._anchorDragOffset={x:s.x-a.x,y:s.y-a.y},this._fire("transformstart",{evt:t.evt,target:this.getNode()}),this._nodes.forEach(l=>{l._fire("transformstart",{evt:t.evt,target:l})})}_handleMouseMove(t){var n,r,i,o=this.findOne("."+this._movingAnchorName),a=o.getStage();a.setPointersPositions(t);const s=a.getPointerPosition();let l={x:s.x-this._anchorDragOffset.x,y:s.y-this._anchorDragOffset.y};const u=o.getAbsolutePosition();this.anchorDragBoundFunc()&&(l=this.anchorDragBoundFunc()(u,l,t)),o.setAbsolutePosition(l);const d=o.getAbsolutePosition();if(!(u.x===d.x&&u.y===d.y)){if(this._movingAnchorName==="rotater"){var h=this._getNodeRect();n=o.x()-h.width/2,r=-o.y()+h.height/2;let ne=Math.atan2(-r,n)+Math.PI/2;h.height<0&&(ne-=Math.PI);var m=ft.getAngle(this.rotation());const z=m+ne,$=ft.getAngle(this.rotationSnapTolerance()),X=p6e(this.rotationSnaps(),z,$)-h.rotation,Q=h6e(h,X);this._fitNodesInto(Q,t);return}var y=this.keepRatio()||t.shiftKey,k=this.centeredScaling()||t.altKey;if(this._movingAnchorName==="top-left"){if(y){var b=k?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".bottom-right").x(),y:this.findOne(".bottom-right").y()};i=Math.sqrt(Math.pow(b.x-o.x(),2)+Math.pow(b.y-o.y(),2));var w=this.findOne(".top-left").x()>b.x?-1:1,E=this.findOne(".top-left").y()>b.y?-1:1;n=i*this.cos*w,r=i*this.sin*E,this.findOne(".top-left").x(b.x-n),this.findOne(".top-left").y(b.y-r)}}else if(this._movingAnchorName==="top-center")this.findOne(".top-left").y(o.y());else if(this._movingAnchorName==="top-right"){if(y){var b=k?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".bottom-left").x(),y:this.findOne(".bottom-left").y()};i=Math.sqrt(Math.pow(o.x()-b.x,2)+Math.pow(b.y-o.y(),2));var w=this.findOne(".top-right").x()b.y?-1:1;n=i*this.cos*w,r=i*this.sin*E,this.findOne(".top-right").x(b.x+n),this.findOne(".top-right").y(b.y-r)}var _=o.position();this.findOne(".top-left").y(_.y),this.findOne(".bottom-right").x(_.x)}else if(this._movingAnchorName==="middle-left")this.findOne(".top-left").x(o.x());else if(this._movingAnchorName==="middle-right")this.findOne(".bottom-right").x(o.x());else if(this._movingAnchorName==="bottom-left"){if(y){var b=k?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".top-right").x(),y:this.findOne(".top-right").y()};i=Math.sqrt(Math.pow(b.x-o.x(),2)+Math.pow(o.y()-b.y,2));var w=b.x{r._fire("transformend",{evt:t,target:r})}),this._movingAnchorName=null}}_fitNodesInto(t,n){var r=this._getNodeRect();const i=1;if(de._inRange(t.width,-this.padding()*2-i,i)){this.update();return}if(de._inRange(t.height,-this.padding()*2-i,i)){this.update();return}const o=this.flipEnabled();var a=new Ca;if(a.rotate(ft.getAngle(this.rotation())),this._movingAnchorName&&t.width<0&&this._movingAnchorName.indexOf("left")>=0){const h=a.point({x:-this.padding()*2,y:0});if(t.x+=h.x,t.y+=h.y,t.width+=this.padding()*2,this._movingAnchorName=this._movingAnchorName.replace("left","right"),this._anchorDragOffset.x-=h.x,this._anchorDragOffset.y-=h.y,!o){this.update();return}}else if(this._movingAnchorName&&t.width<0&&this._movingAnchorName.indexOf("right")>=0){const h=a.point({x:this.padding()*2,y:0});if(this._movingAnchorName=this._movingAnchorName.replace("right","left"),this._anchorDragOffset.x-=h.x,this._anchorDragOffset.y-=h.y,t.width+=this.padding()*2,!o){this.update();return}}if(this._movingAnchorName&&t.height<0&&this._movingAnchorName.indexOf("top")>=0){const h=a.point({x:0,y:-this.padding()*2});if(t.x+=h.x,t.y+=h.y,this._movingAnchorName=this._movingAnchorName.replace("top","bottom"),this._anchorDragOffset.x-=h.x,this._anchorDragOffset.y-=h.y,t.height+=this.padding()*2,!o){this.update();return}}else if(this._movingAnchorName&&t.height<0&&this._movingAnchorName.indexOf("bottom")>=0){const h=a.point({x:0,y:this.padding()*2});if(this._movingAnchorName=this._movingAnchorName.replace("bottom","top"),this._anchorDragOffset.x-=h.x,this._anchorDragOffset.y-=h.y,t.height+=this.padding()*2,!o){this.update();return}}if(this.boundBoxFunc()){const h=this.boundBoxFunc()(r,t);h?t=h:de.warn("boundBoxFunc returned falsy. You should return new bound rect from it!")}const s=1e7,l=new Ca;l.translate(r.x,r.y),l.rotate(r.rotation),l.scale(r.width/s,r.height/s);const u=new Ca;u.translate(t.x,t.y),u.rotate(t.rotation),u.scale(t.width/s,t.height/s);const d=u.multiply(l.invert());this._nodes.forEach(h=>{var m;const y=h.getParent().getAbsoluteTransform(),b=h.getTransform().copy();b.translate(h.offsetX(),h.offsetY());const w=new Ca;w.multiply(y.copy().invert()).multiply(d).multiply(y).multiply(b);const E=w.decompose();h.setAttrs(E),this._fire("transform",{evt:n,target:h}),h._fire("transform",{evt:n,target:h}),(m=h.getLayer())===null||m===void 0||m.batchDraw()}),this.rotation(de._getRotation(t.rotation)),this._resetTransformCache(),this.update(),this.getLayer().batchDraw()}forceUpdate(){this._resetTransformCache(),this.update()}_batchChangeChild(t,n){this.findOne(t).setAttrs(n)}update(){var t,n=this._getNodeRect();this.rotation(de._getRotation(n.rotation));var r=n.width,i=n.height,o=this.enabledAnchors(),a=this.resizeEnabled(),s=this.padding(),l=this.anchorSize();this.find("._anchor").forEach(u=>{u.setAttrs({width:l,height:l,offsetX:l/2,offsetY:l/2,stroke:this.anchorStroke(),strokeWidth:this.anchorStrokeWidth(),fill:this.anchorFill(),cornerRadius:this.anchorCornerRadius()})}),this._batchChangeChild(".top-left",{x:0,y:0,offsetX:l/2+s,offsetY:l/2+s,visible:a&&o.indexOf("top-left")>=0}),this._batchChangeChild(".top-center",{x:r/2,y:0,offsetY:l/2+s,visible:a&&o.indexOf("top-center")>=0}),this._batchChangeChild(".top-right",{x:r,y:0,offsetX:l/2-s,offsetY:l/2+s,visible:a&&o.indexOf("top-right")>=0}),this._batchChangeChild(".middle-left",{x:0,y:i/2,offsetX:l/2+s,visible:a&&o.indexOf("middle-left")>=0}),this._batchChangeChild(".middle-right",{x:r,y:i/2,offsetX:l/2-s,visible:a&&o.indexOf("middle-right")>=0}),this._batchChangeChild(".bottom-left",{x:0,y:i,offsetX:l/2+s,offsetY:l/2-s,visible:a&&o.indexOf("bottom-left")>=0}),this._batchChangeChild(".bottom-center",{x:r/2,y:i,offsetY:l/2-s,visible:a&&o.indexOf("bottom-center")>=0}),this._batchChangeChild(".bottom-right",{x:r,y:i,offsetX:l/2-s,offsetY:l/2-s,visible:a&&o.indexOf("bottom-right")>=0}),this._batchChangeChild(".rotater",{x:r/2,y:-this.rotateAnchorOffset()*de._sign(i)-s,visible:this.rotateEnabled()}),this._batchChangeChild(".back",{width:r,height:i,visible:this.borderEnabled(),stroke:this.borderStroke(),strokeWidth:this.borderStrokeWidth(),dash:this.borderDash(),x:0,y:0}),(t=this.getLayer())===null||t===void 0||t.batchDraw()}isTransforming(){return this._transforming}stopTransform(){if(this._transforming){this._removeEvents();var t=this.findOne("."+this._movingAnchorName);t&&t.stopDrag()}}destroy(){return this.getStage()&&this._cursorChange&&this.getStage().content&&(this.getStage().content.style.cursor=""),Jm.prototype.destroy.call(this),this.detach(),this._removeEvents(),this}toObject(){return Ge.prototype.toObject.call(this)}clone(t){var n=Ge.prototype.clone.call(this,t);return n}getClientRect(){return this.nodes().length>0?super.getClientRect():{x:0,y:0,width:0,height:0}}};function g6e(e){return e instanceof Array||de.warn("enabledAnchors value should be an array"),e instanceof Array&&e.forEach(function(t){L3.indexOf(t)===-1&&de.warn("Unknown anchor name: "+t+". Available names are: "+L3.join(", "))}),e||[]}Tn.prototype.className="Transformer";Mr(Tn);J.addGetterSetter(Tn,"enabledAnchors",L3,g6e);J.addGetterSetter(Tn,"flipEnabled",!0,el());J.addGetterSetter(Tn,"resizeEnabled",!0);J.addGetterSetter(Tn,"anchorSize",10,Ve());J.addGetterSetter(Tn,"rotateEnabled",!0);J.addGetterSetter(Tn,"rotationSnaps",[]);J.addGetterSetter(Tn,"rotateAnchorOffset",50,Ve());J.addGetterSetter(Tn,"rotationSnapTolerance",5,Ve());J.addGetterSetter(Tn,"borderEnabled",!0);J.addGetterSetter(Tn,"anchorStroke","rgb(0, 161, 255)");J.addGetterSetter(Tn,"anchorStrokeWidth",1,Ve());J.addGetterSetter(Tn,"anchorFill","white");J.addGetterSetter(Tn,"anchorCornerRadius",0,Ve());J.addGetterSetter(Tn,"borderStroke","rgb(0, 161, 255)");J.addGetterSetter(Tn,"borderStrokeWidth",1,Ve());J.addGetterSetter(Tn,"borderDash");J.addGetterSetter(Tn,"keepRatio",!0);J.addGetterSetter(Tn,"centeredScaling",!1);J.addGetterSetter(Tn,"ignoreStroke",!1);J.addGetterSetter(Tn,"padding",0,Ve());J.addGetterSetter(Tn,"node");J.addGetterSetter(Tn,"nodes");J.addGetterSetter(Tn,"boundBoxFunc");J.addGetterSetter(Tn,"anchorDragBoundFunc");J.addGetterSetter(Tn,"shouldOverdrawWholeArea",!1);J.addGetterSetter(Tn,"useSingleNodeRotation",!0);J.backCompat(Tn,{lineEnabled:"borderEnabled",rotateHandlerOffset:"rotateAnchorOffset",enabledHandlers:"enabledAnchors"});class gc extends $e{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.radius(),0,ft.getAngle(this.angle()),this.clockwise()),t.lineTo(0,0),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(t){this.radius(t/2)}setHeight(t){this.radius(t/2)}}gc.prototype.className="Wedge";gc.prototype._centroid=!0;gc.prototype._attrsAffectingSize=["radius"];Mr(gc);J.addGetterSetter(gc,"radius",0,Ve());J.addGetterSetter(gc,"angle",0,Ve());J.addGetterSetter(gc,"clockwise",!1);J.backCompat(gc,{angleDeg:"angle",getAngleDeg:"getAngle",setAngleDeg:"setAngle"});function SI(){this.r=0,this.g=0,this.b=0,this.a=0,this.next=null}var m6e=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],v6e=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24];function y6e(e,t){var n=e.data,r=e.width,i=e.height,o,a,s,l,u,d,h,m,y,b,w,E,_,k,T,L,O,D,I,N,W,B,K,ne,z=t+t+1,$=r-1,V=i-1,X=t+1,Q=X*(X+1)/2,G=new SI,Y=null,ee=G,fe=null,Ce=null,we=m6e[t],xe=v6e[t];for(s=1;s>xe,K!==0?(K=255/K,n[d]=(m*we>>xe)*K,n[d+1]=(y*we>>xe)*K,n[d+2]=(b*we>>xe)*K):n[d]=n[d+1]=n[d+2]=0,m-=E,y-=_,b-=k,w-=T,E-=fe.r,_-=fe.g,k-=fe.b,T-=fe.a,l=h+((l=o+t+1)<$?l:$)<<2,L+=fe.r=n[l],O+=fe.g=n[l+1],D+=fe.b=n[l+2],I+=fe.a=n[l+3],m+=L,y+=O,b+=D,w+=I,fe=fe.next,E+=N=Ce.r,_+=W=Ce.g,k+=B=Ce.b,T+=K=Ce.a,L-=N,O-=W,D-=B,I-=K,Ce=Ce.next,d+=4;h+=r}for(o=0;o>xe,K>0?(K=255/K,n[l]=(m*we>>xe)*K,n[l+1]=(y*we>>xe)*K,n[l+2]=(b*we>>xe)*K):n[l]=n[l+1]=n[l+2]=0,m-=E,y-=_,b-=k,w-=T,E-=fe.r,_-=fe.g,k-=fe.b,T-=fe.a,l=o+((l=a+X)0&&y6e(t,n)};J.addGetterSetter(Ge,"blurRadius",0,Ve(),J.afterSetFilter);const x6e=function(e){var t=this.brightness()*255,n=e.data,r=n.length,i;for(i=0;i255?255:i,o=o<0?0:o>255?255:o,a=a<0?0:a>255?255:a,n[s]=i,n[s+1]=o,n[s+2]=a};J.addGetterSetter(Ge,"contrast",0,Ve(),J.afterSetFilter);const w6e=function(e){var t=this.embossStrength()*10,n=this.embossWhiteLevel()*255,r=this.embossDirection(),i=this.embossBlend(),o=0,a=0,s=e.data,l=e.width,u=e.height,d=l*4,h=u;switch(r){case"top-left":o=-1,a=-1;break;case"top":o=-1,a=0;break;case"top-right":o=-1,a=1;break;case"right":o=0,a=1;break;case"bottom-right":o=1,a=1;break;case"bottom":o=1,a=0;break;case"bottom-left":o=1,a=-1;break;case"left":o=0,a=-1;break;default:de.error("Unknown emboss direction: "+r)}do{var m=(h-1)*d,y=o;h+y<1&&(y=0),h+y>u&&(y=0);var b=(h-1+y)*l*4,w=l;do{var E=m+(w-1)*4,_=a;w+_<1&&(_=0),w+_>l&&(_=0);var k=b+(w-1+_)*4,T=s[E]-s[k],L=s[E+1]-s[k+1],O=s[E+2]-s[k+2],D=T,I=D>0?D:-D,N=L>0?L:-L,W=O>0?O:-O;if(N>I&&(D=L),W>I&&(D=O),D*=t,i){var B=s[E]+D,K=s[E+1]+D,ne=s[E+2]+D;s[E]=B>255?255:B<0?0:B,s[E+1]=K>255?255:K<0?0:K,s[E+2]=ne>255?255:ne<0?0:ne}else{var z=n-D;z<0?z=0:z>255&&(z=255),s[E]=s[E+1]=s[E+2]=z}}while(--w)}while(--h)};J.addGetterSetter(Ge,"embossStrength",.5,Ve(),J.afterSetFilter);J.addGetterSetter(Ge,"embossWhiteLevel",.5,Ve(),J.afterSetFilter);J.addGetterSetter(Ge,"embossDirection","top-left",null,J.afterSetFilter);J.addGetterSetter(Ge,"embossBlend",!1,null,J.afterSetFilter);function YC(e,t,n,r,i){var o=n-t,a=i-r,s;return o===0?r+a/2:a===0?r:(s=(e-t)/o,s=a*s+r,s)}const C6e=function(e){var t=e.data,n=t.length,r=t[0],i=r,o,a=t[1],s=a,l,u=t[2],d=u,h,m,y=this.enhance();if(y!==0){for(m=0;mi&&(i=o),l=t[m+1],ls&&(s=l),h=t[m+2],hd&&(d=h);i===r&&(i=255,r=0),s===a&&(s=255,a=0),d===u&&(d=255,u=0);var b,w,E,_,k,T,L,O,D;for(y>0?(w=i+y*(255-i),E=r-y*(r-0),k=s+y*(255-s),T=a-y*(a-0),O=d+y*(255-d),D=u-y*(u-0)):(b=(i+r)*.5,w=i+y*(i-b),E=r+y*(r-b),_=(s+a)*.5,k=s+y*(s-_),T=a+y*(a-_),L=(d+u)*.5,O=d+y*(d-L),D=u+y*(u-L)),m=0;m_?E:_;var k=a,T=o,L,O,D=360/T*Math.PI/180,I,N;for(O=0;OT?k:T;var L=a,O=o,D,I,N=n.polarRotation||0,W,B;for(d=0;dt&&(L=T,O=0,D=-1),i=0;i=0&&y=0&&b=0&&y=0&&b=255*4?255:0}return a}function j6e(e,t,n){for(var r=[.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111],i=Math.round(Math.sqrt(r.length)),o=Math.floor(i/2),a=[],s=0;s=0&&y=0&&b=n))for(o=w;o=r||(a=(n*o+i)*4,s+=L[a+0],l+=L[a+1],u+=L[a+2],d+=L[a+3],T+=1);for(s=s/T,l=l/T,u=u/T,d=d/T,i=y;i=n))for(o=w;o=r||(a=(n*o+i)*4,L[a+0]=s,L[a+1]=l,L[a+2]=u,L[a+3]=d)}};J.addGetterSetter(Ge,"pixelSize",8,Ve(),J.afterSetFilter);const B6e=function(e){var t=Math.round(this.levels()*254)+1,n=e.data,r=n.length,i=255/t,o;for(o=0;o255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"green",0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"blue",0,nV,J.afterSetFilter);const H6e=function(e){var t=e.data,n=t.length,r=this.red(),i=this.green(),o=this.blue(),a=this.alpha(),s,l;for(s=0;s255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"green",0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"blue",0,nV,J.afterSetFilter);J.addGetterSetter(Ge,"alpha",1,function(e){return this._filterUpToDate=!1,e>1?1:e<0?0:e});const W6e=function(e){var t=e.data,n=t.length,r,i,o,a;for(r=0;r127&&(u=255-u),d>127&&(d=255-d),h>127&&(h=255-h),t[l]=u,t[l+1]=d,t[l+2]=h}while(--s)}while(--o)},V6e=function(e){var t=this.threshold()*255,n=e.data,r=n.length,i;for(i=0;i{const{width:n,height:r}=t,i=document.createElement("div"),o=new $g.Stage({container:i,width:n,height:r}),a=new $g.Layer,s=new $g.Layer;a.add(new $g.Rect({...t,fill:"white"})),e.forEach(u=>s.add(new $g.Line({points:u.points,stroke:"black",strokeWidth:u.strokeWidth*2,tension:0,lineCap:"round",lineJoin:"round",shadowForStrokeEnabled:!1,globalCompositeOperation:u.tool==="brush"?"source-over":"destination-out"}))),o.add(a),o.add(s);const l=o.toDataURL({...t});return i.remove(),l};let IV=null,DV=null;const q6e=e=>{IV=e},Qs=()=>IV,K6e=e=>{DV=e},jV=()=>DV,Y6e=e=>{const t=window.open("");t&&e.forEach(n=>{const r=new Image;r.src=n.base64,t.document.write(n.caption),t.document.write("
"),t.document.write(r.outerHTML),t.document.write("

")})},NV=(e,t)=>Math.floor(Math.random()*(t-e+1)+e),X6e=e=>{const t=Qs(),{generationMode:n,generationState:r,postprocessingState:i,canvasState:o,systemState:a}=e,{codeformerFidelity:s,facetoolStrength:l,facetoolType:u,hiresFix:d,hiresStrength:h,shouldRunESRGAN:m,shouldRunFacetool:y,upscalingLevel:b,upscalingStrength:w,upscalingDenoising:E}=i,{cfgScale:_,height:k,img2imgStrength:T,infillMethod:L,initialImage:O,iterations:D,perlin:I,prompt:N,negativePrompt:W,sampler:B,seamBlur:K,seamless:ne,seamSize:z,seamSteps:$,seamStrength:V,seed:X,seedWeights:Q,shouldFitToWidthHeight:G,shouldGenerateVariations:Y,shouldRandomizeSeed:ee,steps:fe,threshold:Ce,tileSize:we,variationAmount:xe,width:Le,shouldUseSymmetry:Se,horizontalSymmetryTimePercentage:Qe,verticalSymmetryTimePercentage:Xe}=r,{shouldDisplayInProgressType:tt,saveIntermediatesInterval:yt,enableImageDebugging:Be}=a,Ae={prompt:N,iterations:D,steps:fe,cfg_scale:_,threshold:Ce,perlin:I,height:k,width:Le,sampler_name:B,seed:X,progress_images:tt==="full-res",progress_latents:tt==="latents",save_intermediates:yt,generation_mode:n,init_mask:""};let bt=!1,Fe=!1;if(W!==""&&(Ae.prompt=`${N} [${W}]`),Ae.seed=ee?NV(CE,_E):X,Se&&(Qe>0&&(Ae.h_symmetry_time_pct=Math.max(0,Math.min(1,Qe/fe))),Qe>0&&(Ae.v_symmetry_time_pct=Math.max(0,Math.min(1,Xe/fe)))),n==="txt2img"&&(Ae.hires_fix=d,d&&(Ae.strength=h)),["txt2img","img2img"].includes(n)&&(Ae.seamless=ne,m&&(bt={level:b,denoise_str:E,strength:w}),y&&(Fe={type:u,strength:l},u==="codeformer"&&(Fe.codeformer_fidelity=s))),n==="img2img"&&O&&(Ae.init_img=typeof O=="string"?O:O.url,Ae.strength=T,Ae.fit=G),n==="unifiedCanvas"&&t){const{layerState:{objects:at},boundingBoxCoordinates:jt,boundingBoxDimensions:mt,stageScale:Zt,isMaskEnabled:on,shouldPreserveMaskedArea:se,boundingBoxScaleMethod:Ie,scaledBoundingBoxDimensions:He}=o,Ue={...jt,...mt},ye=G6e(on?at.filter(hE):[],Ue);Ae.init_mask=ye,Ae.fit=!1,Ae.strength=T,Ae.invert_mask=se,Ae.bounding_box=Ue;const je=t.scale();t.scale({x:1/Zt,y:1/Zt});const vt=t.getAbsolutePosition(),Mt=t.toDataURL({x:Ue.x+vt.x,y:Ue.y+vt.y,width:Ue.width,height:Ue.height});Be&&Y6e([{base64:ye,caption:"mask sent as init_mask"},{base64:Mt,caption:"image sent as init_img"}]),t.scale(je),Ae.init_img=Mt,Ae.progress_images=!1,Ie!=="none"&&(Ae.inpaint_width=He.width,Ae.inpaint_height=He.height),Ae.seam_size=z,Ae.seam_blur=K,Ae.seam_strength=V,Ae.seam_steps=$,Ae.tile_size=we,Ae.infill_method=L,Ae.force_outpaint=!1}return Y?(Ae.variation_amount=xe,Q&&(Ae.with_variations=D3e(Q))):Ae.variation_amount=0,Be&&(Ae.enable_image_debugging=Be),{generationParameters:Ae,esrganParameters:bt,facetoolParameters:Fe}};var Z6e=/d{1,4}|D{3,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|W{1,2}|[LlopSZN]|"[^"]*"|'[^']*'/g,Q6e=/\b(?:[A-Z]{1,3}[A-Z][TC])(?:[-+]\d{4})?|((?:Australian )?(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time)\b/g,J6e=/[^-+\dA-Z]/g;function Ti(e,t,n,r){if(arguments.length===1&&typeof e=="string"&&!/\d/.test(e)&&(t=e,e=void 0),e=e||e===0?e:new Date,e instanceof Date||(e=new Date(e)),isNaN(e))throw TypeError("Invalid date");t=String(wI[t]||t||wI.default);var i=t.slice(0,4);(i==="UTC:"||i==="GMT:")&&(t=t.slice(4),n=!0,i==="GMT:"&&(r=!0));var o=function(){return n?"getUTC":"get"},a=function(){return e[o()+"Date"]()},s=function(){return e[o()+"Day"]()},l=function(){return e[o()+"Month"]()},u=function(){return e[o()+"FullYear"]()},d=function(){return e[o()+"Hours"]()},h=function(){return e[o()+"Minutes"]()},m=function(){return e[o()+"Seconds"]()},y=function(){return e[o()+"Milliseconds"]()},b=function(){return n?0:e.getTimezoneOffset()},w=function(){return e_e(e)},E=function(){return t_e(e)},_={d:function(){return a()},dd:function(){return xa(a())},ddd:function(){return zo.dayNames[s()]},DDD:function(){return CI({y:u(),m:l(),d:a(),_:o(),dayName:zo.dayNames[s()],short:!0})},dddd:function(){return zo.dayNames[s()+7]},DDDD:function(){return CI({y:u(),m:l(),d:a(),_:o(),dayName:zo.dayNames[s()+7]})},m:function(){return l()+1},mm:function(){return xa(l()+1)},mmm:function(){return zo.monthNames[l()]},mmmm:function(){return zo.monthNames[l()+12]},yy:function(){return String(u()).slice(2)},yyyy:function(){return xa(u(),4)},h:function(){return d()%12||12},hh:function(){return xa(d()%12||12)},H:function(){return d()},HH:function(){return xa(d())},M:function(){return h()},MM:function(){return xa(h())},s:function(){return m()},ss:function(){return xa(m())},l:function(){return xa(y(),3)},L:function(){return xa(Math.floor(y()/10))},t:function(){return d()<12?zo.timeNames[0]:zo.timeNames[1]},tt:function(){return d()<12?zo.timeNames[2]:zo.timeNames[3]},T:function(){return d()<12?zo.timeNames[4]:zo.timeNames[5]},TT:function(){return d()<12?zo.timeNames[6]:zo.timeNames[7]},Z:function(){return r?"GMT":n?"UTC":n_e(e)},o:function(){return(b()>0?"-":"+")+xa(Math.floor(Math.abs(b())/60)*100+Math.abs(b())%60,4)},p:function(){return(b()>0?"-":"+")+xa(Math.floor(Math.abs(b())/60),2)+":"+xa(Math.floor(Math.abs(b())%60),2)},S:function(){return["th","st","nd","rd"][a()%10>3?0:(a()%100-a()%10!=10)*a()%10]},W:function(){return w()},WW:function(){return xa(w())},N:function(){return E()}};return t.replace(Z6e,function(k){return k in _?_[k]():k.slice(1,k.length-1)})}var wI={default:"ddd mmm dd yyyy HH:MM:ss",shortDate:"m/d/yy",paddedShortDate:"mm/dd/yyyy",mediumDate:"mmm d, yyyy",longDate:"mmmm d, yyyy",fullDate:"dddd, mmmm d, yyyy",shortTime:"h:MM TT",mediumTime:"h:MM:ss TT",longTime:"h:MM:ss TT Z",isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:sso",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'",expiresHeaderFormat:"ddd, dd mmm yyyy HH:MM:ss Z"},zo={dayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"],timeNames:["a","p","am","pm","A","P","AM","PM"]},xa=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2;return String(t).padStart(n,"0")},CI=function(t){var n=t.y,r=t.m,i=t.d,o=t._,a=t.dayName,s=t.short,l=s===void 0?!1:s,u=new Date,d=new Date;d.setDate(d[o+"Date"]()-1);var h=new Date;h.setDate(h[o+"Date"]()+1);var m=function(){return u[o+"Date"]()},y=function(){return u[o+"Month"]()},b=function(){return u[o+"FullYear"]()},w=function(){return d[o+"Date"]()},E=function(){return d[o+"Month"]()},_=function(){return d[o+"FullYear"]()},k=function(){return h[o+"Date"]()},T=function(){return h[o+"Month"]()},L=function(){return h[o+"FullYear"]()};return b()===n&&y()===r&&m()===i?l?"Tdy":"Today":_()===n&&E()===r&&w()===i?l?"Ysd":"Yesterday":L()===n&&T()===r&&k()===i?l?"Tmw":"Tomorrow":a},e_e=function(t){var n=new Date(t.getFullYear(),t.getMonth(),t.getDate());n.setDate(n.getDate()-(n.getDay()+6)%7+3);var r=new Date(n.getFullYear(),0,4);r.setDate(r.getDate()-(r.getDay()+6)%7+3);var i=n.getTimezoneOffset()-r.getTimezoneOffset();n.setHours(n.getHours()-i);var o=(n-r)/(864e5*7);return 1+Math.floor(o)},t_e=function(t){var n=t.getDay();return n===0&&(n=7),n},n_e=function(t){return(String(t).match(Q6e)||[""]).pop().replace(J6e,"").replace(/GMT\+0000/g,"UTC")};const r_e=(e,t)=>{const{dispatch:n,getState:r}=e;return{emitGenerateImage:i=>{n(wa(!0));const o=r(),{generation:a,postprocessing:s,system:l,canvas:u}=o,d={generationMode:i,generationState:a,postprocessingState:s,canvasState:u,systemState:l};n(P4e());const{generationParameters:h,esrganParameters:m,facetoolParameters:y}=X6e(d);t.emit("generateImage",h,m,y),h.init_mask&&(h.init_mask=h.init_mask.substr(0,64).concat("...")),h.init_img&&(h.init_img=h.init_img.substr(0,64).concat("...")),n(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Image generation requested: ${JSON.stringify({...h,...m,...y})}`}))},emitRunESRGAN:i=>{n(wa(!0));const{postprocessing:{upscalingLevel:o,upscalingDenoising:a,upscalingStrength:s}}=r(),l={upscale:[o,a,s]};t.emit("runPostprocessing",i,{type:"esrgan",...l}),n(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`ESRGAN upscale requested: ${JSON.stringify({file:i.url,...l})}`}))},emitRunFacetool:i=>{n(wa(!0));const{postprocessing:{facetoolType:o,facetoolStrength:a,codeformerFidelity:s}}=r(),l={facetool_strength:a};o==="codeformer"&&(l.codeformer_fidelity=s),t.emit("runPostprocessing",i,{type:o,...l}),n(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Face restoration (${o}) requested: ${JSON.stringify({file:i.url,...l})}`}))},emitDeleteImage:i=>{const{url:o,uuid:a,category:s,thumbnail:l}=i;n(JW(i)),t.emit("deleteImage",o,l,a,s)},emitRequestImages:i=>{const o=r().gallery,{earliest_mtime:a}=o.categories[i];t.emit("requestImages",i,a)},emitRequestNewImages:i=>{const o=r().gallery,{latest_mtime:a}=o.categories[i];t.emit("requestLatestImages",i,a)},emitCancelProcessing:()=>{t.emit("cancel")},emitRequestSystemConfig:()=>{t.emit("requestSystemConfig")},emitSearchForModels:i=>{t.emit("searchForModels",i)},emitAddNewModel:i=>{t.emit("addNewModel",i)},emitDeleteModel:i=>{t.emit("deleteModel",i)},emitConvertToDiffusers:i=>{n(C4e()),t.emit("convertToDiffusers",i)},emitMergeDiffusersModels:i=>{n(_4e()),t.emit("mergeDiffusersModels",i)},emitRequestModelChange:i=>{n(w4e()),t.emit("requestModelChange",i)},emitSaveStagingAreaImageToGallery:i=>{t.emit("requestSaveStagingAreaImageToGallery",i)},emitRequestEmptyTempFolder:()=>{t.emit("requestEmptyTempFolder")}}};let mx;const i_e=new Uint8Array(16);function o_e(){if(!mx&&(mx=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!mx))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return mx(i_e)}const Hi=[];for(let e=0;e<256;++e)Hi.push((e+256).toString(16).slice(1));function a_e(e,t=0){return(Hi[e[t+0]]+Hi[e[t+1]]+Hi[e[t+2]]+Hi[e[t+3]]+"-"+Hi[e[t+4]]+Hi[e[t+5]]+"-"+Hi[e[t+6]]+Hi[e[t+7]]+"-"+Hi[e[t+8]]+Hi[e[t+9]]+"-"+Hi[e[t+10]]+Hi[e[t+11]]+Hi[e[t+12]]+Hi[e[t+13]]+Hi[e[t+14]]+Hi[e[t+15]]).toLowerCase()}const s_e=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),_I={randomUUID:s_e};function um(e,t,n){if(_I.randomUUID&&!t&&!e)return _I.randomUUID();e=e||{};const r=e.random||(e.rng||o_e)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,t){n=n||0;for(let i=0;i<16;++i)t[n+i]=r[i];return t}return a_e(r)}const Wk=br("socketio/generateImage"),l_e=br("socketio/runESRGAN"),u_e=br("socketio/runFacetool"),c_e=br("socketio/deleteImage"),Uk=br("socketio/requestImages"),kI=br("socketio/requestNewImages"),d_e=br("socketio/cancelProcessing"),f_e=br("socketio/requestSystemConfig"),EI=br("socketio/searchForModels"),v2=br("socketio/addNewModel"),h_e=br("socketio/deleteModel"),p_e=br("socketio/convertToDiffusers"),g_e=br("socketio/mergeDiffusersModels"),$V=br("socketio/requestModelChange"),m_e=br("socketio/saveStagingAreaImageToGallery"),v_e=br("socketio/requestEmptyTempFolder"),y_e=e=>{const{dispatch:t,getState:n}=e;return{onConnect:()=>{try{t(HR(!0)),t(hh(Et.t("common.statusConnected"))),t(f_e());const r=n().gallery;r.categories.result.latest_mtime?t(kI("result")):t(Uk("result")),r.categories.user.latest_mtime?t(kI("user")):t(Uk("user"))}catch(r){console.error(r)}},onDisconnect:()=>{try{t(HR(!1)),t(hh(Et.t("common.statusDisconnected"))),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:"Disconnected from server",level:"warning"}))}catch(r){console.error(r)}},onGenerationResult:r=>{try{const i=n(),{activeTab:o}=i.ui,{shouldLoopback:a}=i.postprocessing,{boundingBox:s,generationMode:l,...u}=r,d={uuid:um(),...u};if(["txt2img","img2img"].includes(l)&&t(sm({category:"result",image:{...d,category:"result"}})),l==="unifiedCanvas"&&r.boundingBox){const{boundingBox:h}=r;t(e3e({image:{...d,category:"temp"},boundingBox:h})),i.canvas.shouldAutoSave&&t(sm({image:{...d,category:"result"},category:"result"}))}if(a)switch(xE[o]){case"img2img":{t(y0(d));break}}t(jC()),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Image generated: ${r.url}`}))}catch(i){console.error(i)}},onIntermediateResult:r=>{try{t(C3e({uuid:um(),...r,category:"result"})),r.isBase64||t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Intermediate image generated: ${r.url}`}))}catch(i){console.error(i)}},onPostprocessingResult:r=>{try{t(sm({category:"result",image:{uuid:um(),...r,category:"result"}})),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Postprocessed: ${r.url}`}))}catch(i){console.error(i)}},onProgressUpdate:r=>{try{t(wa(!0)),t(y4e(r))}catch(i){console.error(i)}},onError:r=>{const{message:i,additionalData:o}=r;try{t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Server error: ${i}`,level:"error"})),t(WR()),t(jC())}catch(a){console.error(a)}},onGalleryImages:r=>{const{images:i,areMoreImagesAvailable:o,category:a}=r,s=i.map(l=>({uuid:um(),...l}));t(w3e({images:s,areMoreImagesAvailable:o,category:a})),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Loaded ${i.length} images`}))},onProcessingCanceled:()=>{t(S4e());const{intermediateImage:r}=n().gallery;r&&(r.isBase64||(t(sm({category:"result",image:r})),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Intermediate image saved: ${r.url}`}))),t(jC())),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:"Processing canceled",level:"warning"}))},onImageDeleted:r=>{const{url:i}=r;t(JW(r));const{generation:{initialImage:o,maskPath:a}}=n();(o===i||(o==null?void 0:o.url)===i)&&t(oU()),a===i&&t(lU("")),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Image deleted: ${i}`}))},onSystemConfig:r=>{t(b4e(r)),r.infill_methods.includes("patchmatch")||t(sU(r.infill_methods[0]))},onFoundModels:r=>{const{search_folder:i,found_models:o}=r;t(jU(i)),t(NU(o))},onNewModelAdded:r=>{const{new_model_name:i,model_list:o,update:a}=r;t(Ag(o)),t(wa(!1)),t(hh(Et.t("modelManager.modelAdded"))),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model Added: ${i}`,level:"info"})),t($u({title:a?`${Et.t("modelManager.modelUpdated")}: ${i}`:`${Et.t("modelManager.modelAdded")}: ${i}`,status:"success",duration:2500,isClosable:!0}))},onModelDeleted:r=>{const{deleted_model_name:i,model_list:o}=r;t(Ag(o)),t(wa(!1)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`${Et.t("modelmanager:modelAdded")}: ${i}`,level:"info"})),t($u({title:`${Et.t("modelmanager:modelEntryDeleted")}: ${i}`,status:"success",duration:2500,isClosable:!0}))},onModelConverted:r=>{const{converted_model_name:i,model_list:o}=r;t(Ag(o)),t(hh(Et.t("common.statusModelConverted"))),t(wa(!1)),t(_d(!0)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model converted: ${i}`,level:"info"})),t($u({title:`${Et.t("modelmanager:modelConverted")}: ${i}`,status:"success",duration:2500,isClosable:!0}))},onModelsMerged:r=>{const{merged_models:i,merged_model_name:o,model_list:a}=r;t(Ag(a)),t(hh(Et.t("common.statusMergedModels"))),t(wa(!1)),t(_d(!0)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Models merged: ${i}`,level:"info"})),t($u({title:`${Et.t("modelManager.modelsMerged")}: ${o}`,status:"success",duration:2500,isClosable:!0}))},onModelChanged:r=>{const{model_name:i,model_list:o}=r;t(Ag(o)),t(hh(Et.t("common.statusModelChanged"))),t(wa(!1)),t(_d(!0)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model changed: ${i}`,level:"info"}))},onModelChangeFailed:r=>{const{model_name:i,model_list:o}=r;t(Ag(o)),t(wa(!1)),t(_d(!0)),t(WR()),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model change failed: ${i}`,level:"error"}))},onTempFolderEmptied:()=>{t($u({title:Et.t("toast.tempFoldersEmptied"),status:"success",duration:2500,isClosable:!0}))}}},b_e=()=>{const{origin:e}=new URL(window.location.href),t=pS(e,{timeout:6e4,path:`${window.location.pathname}socket.io`});let n=!1;return i=>o=>a=>{const{onConnect:s,onDisconnect:l,onError:u,onPostprocessingResult:d,onGenerationResult:h,onIntermediateResult:m,onProgressUpdate:y,onGalleryImages:b,onProcessingCanceled:w,onImageDeleted:E,onSystemConfig:_,onModelChanged:k,onFoundModels:T,onNewModelAdded:L,onModelDeleted:O,onModelConverted:D,onModelsMerged:I,onModelChangeFailed:N,onTempFolderEmptied:W}=y_e(i),{emitGenerateImage:B,emitRunESRGAN:K,emitRunFacetool:ne,emitDeleteImage:z,emitRequestImages:$,emitRequestNewImages:V,emitCancelProcessing:X,emitRequestSystemConfig:Q,emitSearchForModels:G,emitAddNewModel:Y,emitDeleteModel:ee,emitConvertToDiffusers:fe,emitMergeDiffusersModels:Ce,emitRequestModelChange:we,emitSaveStagingAreaImageToGallery:xe,emitRequestEmptyTempFolder:Le}=r_e(i,t);switch(n||(t.on("connect",()=>s()),t.on("disconnect",()=>l()),t.on("error",Se=>u(Se)),t.on("generationResult",Se=>h(Se)),t.on("postprocessingResult",Se=>d(Se)),t.on("intermediateResult",Se=>m(Se)),t.on("progressUpdate",Se=>y(Se)),t.on("galleryImages",Se=>b(Se)),t.on("processingCanceled",()=>{w()}),t.on("imageDeleted",Se=>{E(Se)}),t.on("systemConfig",Se=>{_(Se)}),t.on("foundModels",Se=>{T(Se)}),t.on("newModelAdded",Se=>{L(Se)}),t.on("modelDeleted",Se=>{O(Se)}),t.on("modelConverted",Se=>{D(Se)}),t.on("modelsMerged",Se=>{I(Se)}),t.on("modelChanged",Se=>{k(Se)}),t.on("modelChangeFailed",Se=>{N(Se)}),t.on("tempFolderEmptied",()=>{W()}),n=!0),a.type){case"socketio/generateImage":{B(a.payload);break}case"socketio/runESRGAN":{K(a.payload);break}case"socketio/runFacetool":{ne(a.payload);break}case"socketio/deleteImage":{z(a.payload);break}case"socketio/requestImages":{$(a.payload);break}case"socketio/requestNewImages":{V(a.payload);break}case"socketio/cancelProcessing":{X();break}case"socketio/requestSystemConfig":{Q();break}case"socketio/searchForModels":{G(a.payload);break}case"socketio/addNewModel":{Y(a.payload);break}case"socketio/deleteModel":{ee(a.payload);break}case"socketio/convertToDiffusers":{fe(a.payload);break}case"socketio/mergeDiffusersModels":{Ce(a.payload);break}case"socketio/requestModelChange":{we(a.payload);break}case"socketio/saveStagingAreaImageToGallery":{xe(a.payload);break}case"socketio/requestEmptyTempFolder":{Le();break}}o(a)}},x_e=["cursorPosition","isCanvasInitialized","doesCanvasNeedScaling"].map(e=>`canvas.${e}`),S_e=["currentIteration","currentStatus","currentStep","isCancelable","isConnected","isESRGANAvailable","isGFPGANAvailable","isProcessing","socketId","totalIterations","totalSteps","openModel","cancelOptions.cancelAfter"].map(e=>`system.${e}`),w_e=["categories","currentCategory","currentImage","currentImageUuid","shouldAutoSwitchToNewImages","shouldHoldGalleryOpen","intermediateImage"].map(e=>`gallery.${e}`),FV=SW({generation:z3e,postprocessing:G3e,gallery:L3e,system:L4e,canvas:x3e,ui:z4e,lightbox:R3e}),C_e=OW.getPersistConfig({key:"root",storage:AW,rootReducer:FV,blacklist:[...x_e,...S_e,...w_e],debounce:300}),__e=PSe(C_e,FV),BV=rSe({reducer:__e,middleware:e=>e({immutableCheck:!1,serializableCheck:!1}).concat(b_e()),devTools:{actionsDenylist:["canvas/setCursorPosition","canvas/setStageCoordinates","canvas/setStageScale","canvas/setIsDrawing","canvas/setBoundingBoxCoordinates","canvas/setBoundingBoxDimensions","canvas/setIsDrawing","canvas/addPointToCurrentLine"]}}),zV=RSe(BV),AE=S.createContext(null),Te=vxe,le=axe;let PI;const OE=()=>({setOpenUploader:e=>{e&&(PI=e)},openUploader:PI}),Br=lt(e=>e.ui,e=>xE[e.activeTab],{memoizeOptions:{equalityCheck:Pe.isEqual}}),k_e=lt(e=>e.ui,e=>e.activeTab,{memoizeOptions:{equalityCheck:Pe.isEqual}}),fp=lt(e=>e.ui,e=>e,{memoizeOptions:{equalityCheck:Pe.isEqual}}),TI=e=>async(t,n)=>{const{imageFile:r}=e,i=n(),o=Br(i),a=new FormData;a.append("file",r,r.name),a.append("data",JSON.stringify({kind:"init"}));const l=await(await fetch(`${window.location.origin}/upload`,{method:"POST",body:a})).json(),u={uuid:um(),category:"user",...l};t(sm({image:u,category:"user"})),o==="unifiedCanvas"?t(i4(u)):o==="img2img"&&t(y0(u))};function E_e(){const{t:e}=De();return g.jsxs("div",{className:"work-in-progress nodes-work-in-progress",children:[g.jsx("h1",{children:e("common.nodes")}),g.jsx("p",{children:e("common.nodesDesc")})]})}const P_e=()=>{const{t:e}=De();return g.jsxs("div",{className:"work-in-progress post-processing-work-in-progress",children:[g.jsx("h1",{children:e("common.postProcessing")}),g.jsx("p",{children:e("common.postProcessDesc1")}),g.jsx("p",{children:e("common.postProcessDesc2")}),g.jsx("p",{children:e("common.postProcessDesc3")})]})};function T_e(){const{t:e}=De();return g.jsxs("div",{className:"work-in-progress nodes-work-in-progress",children:[g.jsx("h1",{children:e("common.training")}),g.jsxs("p",{children:[e("common.trainingDesc1"),g.jsx("br",{}),g.jsx("br",{}),e("common.trainingDesc2")]})]})}function M_e(e){const{i18n:t}=De(),n=localStorage.getItem("i18nextLng");Ke.useEffect(()=>{e()},[e]),Ke.useEffect(()=>{t.on("languageChanged",()=>{e()})},[e,t,n])}const L_e=fc({displayName:"ImageToImageIcon",viewBox:"0 0 3543 3543",path:g.jsx("g",{transform:"matrix(1.10943,0,0,1.10943,-206.981,-213.533)",children:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M688.533,2405.95L542.987,2405.95C349.532,2405.95 192.47,2248.89 192.47,2055.44L192.47,542.987C192.47,349.532 349.532,192.47 542.987,192.47L2527.88,192.47C2721.33,192.47 2878.4,349.532 2878.4,542.987L2878.4,1172.79L3023.94,1172.79C3217.4,1172.79 3374.46,1329.85 3374.46,1523.3C3374.46,1523.3 3374.46,3035.75 3374.46,3035.75C3374.46,3229.21 3217.4,3386.27 3023.94,3386.27L1039.05,3386.27C845.595,3386.27 688.533,3229.21 688.533,3035.75L688.533,2405.95ZM3286.96,2634.37L3286.96,1523.3C3286.96,1378.14 3169.11,1260.29 3023.94,1260.29C3023.94,1260.29 1039.05,1260.29 1039.05,1260.29C893.887,1260.29 776.033,1378.14 776.033,1523.3L776.033,2489.79L1440.94,1736.22L2385.83,2775.59L2880.71,2200.41L3286.96,2634.37ZM2622.05,1405.51C2778.5,1405.51 2905.51,1532.53 2905.51,1688.98C2905.51,1845.42 2778.5,1972.44 2622.05,1972.44C2465.6,1972.44 2338.58,1845.42 2338.58,1688.98C2338.58,1532.53 2465.6,1405.51 2622.05,1405.51ZM2790.9,1172.79L1323.86,1172.79L944.882,755.906L279.97,1509.47L279.97,542.987C279.97,397.824 397.824,279.97 542.987,279.97C542.987,279.97 2527.88,279.97 2527.88,279.97C2673.04,279.97 2790.9,397.824 2790.9,542.987L2790.9,1172.79ZM2125.98,425.197C2282.43,425.197 2409.45,552.213 2409.45,708.661C2409.45,865.11 2282.43,992.126 2125.98,992.126C1969.54,992.126 1842.52,865.11 1842.52,708.661C1842.52,552.213 1969.54,425.197 2125.98,425.197Z"})})}),A_e=fc({displayName:"NodesIcon",viewBox:"0 0 3543 3543",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M3543.31,770.787C3543.31,515.578 3336.11,308.38 3080.9,308.38L462.407,308.38C207.197,308.38 0,515.578 0,770.787L0,2766.03C0,3021.24 207.197,3228.44 462.407,3228.44L3080.9,3228.44C3336.11,3228.44 3543.31,3021.24 3543.31,2766.03C3543.31,2766.03 3543.31,770.787 3543.31,770.787ZM3427.88,770.787L3427.88,2766.03C3427.88,2957.53 3272.4,3113.01 3080.9,3113.01C3080.9,3113.01 462.407,3113.01 462.407,3113.01C270.906,3113.01 115.431,2957.53 115.431,2766.03L115.431,770.787C115.431,579.286 270.906,423.812 462.407,423.812L3080.9,423.812C3272.4,423.812 3427.88,579.286 3427.88,770.787ZM1214.23,1130.69L1321.47,1130.69C1324.01,1130.69 1326.54,1130.53 1329.05,1130.2C1329.05,1130.2 1367.3,1125.33 1397.94,1149.8C1421.63,1168.72 1437.33,1204.3 1437.33,1265.48L1437.33,2078.74L1220.99,2078.74C1146.83,2078.74 1086.61,2138.95 1086.61,2213.12L1086.61,2762.46C1086.61,2836.63 1146.83,2896.84 1220.99,2896.84L1770.34,2896.84C1844.5,2896.84 1904.71,2836.63 1904.71,2762.46L1904.71,2213.12C1904.71,2138.95 1844.5,2078.74 1770.34,2078.74L1554,2078.74L1554,1604.84C1625.84,1658.19 1703.39,1658.1 1703.39,1658.1C1703.54,1658.1 1703.69,1658.11 1703.84,1658.11L2362.2,1658.11L2362.2,1874.44C2362.2,1948.61 2422.42,2008.82 2496.58,2008.82L3045.93,2008.82C3120.09,2008.82 3180.3,1948.61 3180.3,1874.44L3180.3,1325.1C3180.3,1250.93 3120.09,1190.72 3045.93,1190.72L2496.58,1190.72C2422.42,1190.72 2362.2,1250.93 2362.2,1325.1L2362.2,1558.97L2362.2,1541.44L1704.23,1541.44C1702.2,1541.37 1650.96,1539.37 1609.51,1499.26C1577.72,1468.49 1554,1416.47 1554,1331.69L1554,1265.48C1554,1153.86 1513.98,1093.17 1470.76,1058.64C1411.24,1011.1 1338.98,1012.58 1319.15,1014.03L1214.23,1014.03L1214.23,796.992C1214.23,722.828 1154.02,662.617 1079.85,662.617L530.507,662.617C456.343,662.617 396.131,722.828 396.131,796.992L396.131,1346.34C396.131,1420.5 456.343,1480.71 530.507,1480.71L1079.85,1480.71C1154.02,1480.71 1214.23,1420.5 1214.23,1346.34L1214.23,1130.69Z"})}),O_e=fc({displayName:"PostprocessingIcon",viewBox:"0 0 3543 3543",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M709.477,1596.53L992.591,1275.66L2239.09,2646.81L2891.95,1888.03L3427.88,2460.51L3427.88,994.78C3427.88,954.66 3421.05,916.122 3408.5,880.254L3521.9,855.419C3535.8,899.386 3543.31,946.214 3543.31,994.78L3543.31,2990.02C3543.31,3245.23 3336.11,3452.43 3080.9,3452.43C3080.9,3452.43 462.407,3452.43 462.407,3452.43C207.197,3452.43 -0,3245.23 -0,2990.02L-0,994.78C-0,739.571 207.197,532.373 462.407,532.373L505.419,532.373L504.644,532.546L807.104,600.085C820.223,601.729 832.422,607.722 841.77,617.116C850.131,625.517 855.784,636.21 858.055,647.804L462.407,647.804C270.906,647.804 115.431,803.279 115.431,994.78L115.431,2075.73L-0,2101.5L115.431,2127.28L115.431,2269.78L220.47,2150.73L482.345,2209.21C503.267,2211.83 522.722,2221.39 537.63,2236.37C552.538,2251.35 562.049,2270.9 564.657,2291.93L671.84,2776.17L779.022,2291.93C781.631,2270.9 791.141,2251.35 806.05,2236.37C820.958,2221.39 840.413,2211.83 861.334,2209.21L1353.15,2101.5L861.334,1993.8C840.413,1991.18 820.958,1981.62 806.05,1966.64C791.141,1951.66 781.631,1932.11 779.022,1911.08L709.477,1596.53ZM671.84,1573.09L725.556,2006.07C726.863,2016.61 731.63,2026.4 739.101,2033.91C746.573,2041.42 756.323,2046.21 766.808,2047.53L1197.68,2101.5L766.808,2155.48C756.323,2156.8 746.573,2161.59 739.101,2169.09C731.63,2176.6 726.863,2186.4 725.556,2196.94L671.84,2629.92L618.124,2196.94C616.817,2186.4 612.05,2176.6 604.579,2169.09C597.107,2161.59 587.357,2156.8 576.872,2155.48L146.001,2101.5L576.872,2047.53C587.357,2046.21 597.107,2041.42 604.579,2033.91C612.05,2026.4 616.817,2016.61 618.124,2006.07L671.84,1573.09ZM609.035,1710.36L564.657,1911.08C562.049,1932.11 552.538,1951.66 537.63,1966.64C522.722,1981.62 503.267,1991.18 482.345,1993.8L328.665,2028.11L609.035,1710.36ZM2297.12,938.615L2451.12,973.003C2480.59,976.695 2507.99,990.158 2528.99,1011.26C2549.99,1032.37 2563.39,1059.9 2567.07,1089.52L2672.73,1566.9C2634.5,1580.11 2593.44,1587.29 2550.72,1587.29C2344.33,1587.29 2176.77,1419.73 2176.77,1213.34C2176.77,1104.78 2223.13,1006.96 2297.12,938.615ZM2718.05,76.925L2793.72,686.847C2795.56,701.69 2802.27,715.491 2812.8,726.068C2823.32,736.644 2837.06,743.391 2851.83,745.242L3458.78,821.28L2851.83,897.318C2837.06,899.168 2823.32,905.916 2812.8,916.492C2802.27,927.068 2795.56,940.87 2793.72,955.712L2718.05,1565.63L2642.38,955.712C2640.54,940.87 2633.83,927.068 2623.3,916.492C2612.78,905.916 2599.04,899.168 2584.27,897.318L1977.32,821.28L2584.27,745.242C2599.04,743.391 2612.78,736.644 2623.3,726.068C2633.83,715.491 2640.54,701.69 2642.38,686.847L2718.05,76.925ZM2883.68,1043.06C2909.88,1094.13 2924.67,1152.02 2924.67,1213.34C2924.67,1335.4 2866.06,1443.88 2775.49,1512.14L2869.03,1089.52C2871.07,1073.15 2876.07,1057.42 2883.68,1043.06ZM925.928,201.2L959.611,472.704C960.431,479.311 963.42,485.455 968.105,490.163C972.79,494.871 978.904,497.875 985.479,498.698L1255.66,532.546L985.479,566.395C978.904,567.218 972.79,570.222 968.105,574.93C963.42,579.638 960.431,585.781 959.611,592.388L925.928,863.893L892.245,592.388C891.425,585.781 888.436,579.638 883.751,574.93C879.066,570.222 872.952,567.218 866.378,566.395L596.195,532.546L866.378,498.698C872.952,497.875 879.066,494.871 883.751,490.163C888.436,485.455 891.425,479.311 892.245,472.704L925.928,201.2ZM2864.47,532.373L3080.9,532.373C3258.7,532.373 3413.2,632.945 3490.58,780.281L3319.31,742.773C3257.14,683.925 3173.2,647.804 3080.9,647.804L2927.07,647.804C2919.95,642.994 2913.25,637.473 2907.11,631.298C2886.11,610.194 2872.71,582.655 2869.03,553.04L2864.47,532.373ZM1352.36,532.373L2571.64,532.373L2567.07,553.04C2563.39,582.655 2549.99,610.194 2528.99,631.298C2522.85,637.473 2516.16,642.994 2509.03,647.804L993.801,647.804C996.072,636.21 1001.73,625.517 1010.09,617.116C1019.43,607.722 1031.63,601.729 1044.75,600.085L1353.15,532.546L1352.36,532.373Z"})}),R_e=fc({displayName:"TextToImageIcon",viewBox:"0 0 3543 3543",path:g.jsx("g",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",transform:"matrix(1.11667,0,0,1.1066,-231.131,-213.062)",children:g.jsx("path",{d:"M2209.59,1137.35L2209.59,1098.17C2177.13,1108.99 2125.74,1121.91 2055.41,1136.94C2054.77,1137.08 2054.14,1137.21 2053.49,1137.35L1662.79,1137.35C1687.75,1101.98 1720.8,1074.35 1761.93,1054.44C1808.52,1031.9 1875.69,1012.22 1963.45,995.386C2081.86,973.146 2163.91,952.409 2209.59,933.174L2209.59,907.929C2209.59,859.241 2197.57,824.529 2173.53,803.792C2149.48,783.054 2104.1,772.686 2037.38,772.686C1992.3,772.686 1957.14,781.552 1931.89,799.284C1906.64,817.015 1886.21,848.121 1870.58,892.601L1640.67,851.127C1666.51,758.56 1710.99,690.037 1774.11,645.557C1837.22,601.077 1930.99,578.837 2055.41,578.837C2168.42,578.837 2252.57,592.211 2307.87,618.959C2363.17,645.707 2402.09,679.668 2424.63,720.842C2447.17,762.016 2458.44,837.602 2458.44,947.6L2456.7,1137.35L3021.34,1137.35C3214.79,1137.35 3371.86,1294.41 3371.86,1487.87C3371.86,1487.87 3371.86,3000.32 3371.86,3000.32C3371.86,3193.78 3214.79,3350.84 3021.34,3350.84C3021.34,3350.84 1036.45,3350.84 1036.45,3350.84C842.991,3350.84 685.93,3193.78 685.93,3000.32L685.93,1487.87C685.93,1400.21 718.174,1320.03 771.448,1258.54L772.123,1257.76L607.408,1257.76L498.311,1558L215.202,1558L730.028,236.22L1012.24,236.22L1373.06,1137.35L2209.59,1137.35ZM3284.36,2598.93L3284.36,1487.87C3284.36,1342.71 3166.5,1224.85 3021.34,1224.85C3021.34,1224.85 1036.45,1224.85 1036.45,1224.85C891.284,1224.85 773.43,1342.71 773.43,1487.87L773.43,2454.35L1438.34,1700.79L2383.22,2740.16L2878.11,2164.98L3284.36,2598.93ZM2619.44,1370.08C2775.89,1370.08 2902.91,1497.1 2902.91,1653.54C2902.91,1809.99 2775.89,1937.01 2619.44,1937.01C2462.99,1937.01 2335.98,1809.99 2335.98,1653.54C2335.98,1497.1 2462.99,1370.08 2619.44,1370.08ZM772.877,1256.89L772.849,1256.93L773.167,1256.57L772.877,1256.89ZM773.634,1256.04L773.563,1256.12L773.985,1255.64L773.634,1256.04ZM774.394,1255.18L774.276,1255.31L774.746,1254.78L774.394,1255.18ZM775.157,1254.32L774.988,1254.51L775.493,1253.95L775.157,1254.32ZM775.923,1253.47L775.698,1253.72L776.237,1253.12L775.923,1253.47ZM776.691,1252.62L776.403,1252.94L776.979,1252.3L776.691,1252.62ZM777.462,1251.77L777.098,1252.17L777.723,1251.49L777.462,1251.77ZM925.081,1155.44C868.026,1174.57 817.508,1207.99 777.775,1251.43C817.511,1207.99 868.031,1174.57 925.081,1155.44ZM925.646,1155.25L925.108,1155.43L926.103,1155.1L925.646,1155.25ZM935.286,1152.2C932.214,1153.12 929.159,1154.09 926.13,1155.09C929.165,1154.09 932.219,1153.12 935.286,1152.2ZM935.716,1152.07L935.384,1152.17L936.292,1151.89L935.716,1152.07ZM936.843,1151.73L936.451,1151.85L937.327,1151.59L936.843,1151.73ZM937.972,1151.4L937.514,1151.53L938.377,1151.28L937.972,1151.4ZM939.102,1151.07L938.57,1151.22L939.438,1150.97L939.102,1151.07ZM940.233,1150.74L939.613,1150.92L940.505,1150.67L940.233,1150.74ZM946.659,1148.98C944.639,1149.51 942.626,1150.07 940.626,1150.63C942.631,1150.06 944.642,1149.51 946.659,1148.98ZM947.056,1148.87L946.829,1148.93L947.659,1148.71L947.056,1148.87ZM948.198,1148.57L947.919,1148.65L948.705,1148.44L948.198,1148.57ZM949.342,1148.28L949.008,1148.37L949.771,1148.17L949.342,1148.28ZM950.488,1147.99L950.096,1148.09L950.848,1147.9L950.488,1147.99ZM951.635,1147.7L951.182,1147.81L951.932,1147.63L951.635,1147.7ZM952.783,1147.42L952.262,1147.55L953.022,1147.36L952.783,1147.42ZM953.933,1147.14L953.327,1147.28L954.115,1147.09L953.933,1147.14ZM958.213,1146.13C956.927,1146.42 955.644,1146.73 954.354,1147.04C955.637,1146.73 956.923,1146.43 958.213,1146.13ZM958.547,1146.06L958.409,1146.09L959.174,1145.91L958.547,1146.06ZM959.704,1145.79L959.517,1145.84L960.229,1145.68L959.704,1145.79ZM960.863,1145.54L960.626,1145.59L961.311,1145.44L960.863,1145.54ZM962.023,1145.28L961.736,1145.35L962.406,1145.2L962.023,1145.28ZM963.184,1145.03L962.846,1145.11L963.508,1144.97L963.184,1145.03ZM964.347,1144.79L963.956,1144.87L964.615,1144.73L964.347,1144.79ZM965.511,1144.55L965.066,1144.64L965.725,1144.5L965.511,1144.55ZM966.677,1144.31L966.172,1144.41L966.838,1144.28L966.677,1144.31ZM967.844,1144.08L967.269,1144.19L967.953,1144.05L967.844,1144.08ZM970.183,1143.62C969.793,1143.69 969.403,1143.77 969.013,1143.85L969.055,1143.84C969.413,1143.77 969.771,1143.7 970.129,1143.63L970.183,1143.62ZM971.354,1143.4L971.245,1143.42L971.882,1143.3L971.354,1143.4ZM972.526,1143.18L972.37,1143.21L972.987,1143.09L972.526,1143.18ZM973.7,1142.96L973.496,1143L974.103,1142.89L973.7,1142.96ZM974.876,1142.75L974.624,1142.8L975.225,1142.69L974.876,1142.75ZM976.052,1142.55L975.754,1142.6L976.349,1142.49L976.052,1142.55ZM977.23,1142.34L976.885,1142.4L977.476,1142.3L977.23,1142.34ZM978.41,1142.14L978.019,1142.21L978.605,1142.11L978.41,1142.14ZM979.59,1141.95L979.156,1142.02L979.736,1141.92L979.59,1141.95ZM980.772,1141.76L980.299,1141.83L980.868,1141.74L980.772,1141.76ZM981.955,1141.57L981.464,1141.65L982.002,1141.56L981.955,1141.57ZM983.14,1141.39L983.1,1141.39L983.605,1141.32L983.14,1141.39ZM984.326,1141.21L984.239,1141.22L984.778,1141.14L984.326,1141.21ZM985.513,1141.03L985.379,1141.05L985.928,1140.97L985.513,1141.03ZM986.702,1140.86L986.521,1140.89L987.073,1140.81L986.702,1140.86ZM987.891,1140.69L987.665,1140.73L988.218,1140.65L987.891,1140.69ZM989.082,1140.53L988.811,1140.57L989.363,1140.49L989.082,1140.53ZM990.275,1140.37L989.96,1140.41L990.508,1140.34L990.275,1140.37ZM991.468,1140.22L991.113,1140.26L991.654,1140.19L991.468,1140.22ZM992.663,1140.07L992.273,1140.12L992.8,1140.05L992.663,1140.07ZM993.859,1139.92L993.447,1139.97L993.948,1139.91L993.859,1139.92ZM995.056,1139.78L994.671,1139.82L995.097,1139.77L995.056,1139.78ZM996.255,1139.64L996.23,1139.64L996.578,1139.6L996.255,1139.64ZM997.454,1139.5L997.383,1139.51L997.852,1139.46L997.454,1139.5ZM998.655,1139.37L998.537,1139.38L999.041,1139.33L998.655,1139.37ZM999.857,1139.24L999.693,1139.26L1000.21,1139.21L999.857,1139.24ZM1001.06,1139.12L1000.85,1139.14L1001.38,1139.09L1001.06,1139.12ZM1002.26,1139L1002.01,1139.03L1002.54,1138.98L1002.26,1139ZM1003.47,1138.89L1003.18,1138.91L1003.7,1138.87L1003.47,1138.89ZM1004.68,1138.78L1004.34,1138.81L1004.86,1138.76L1004.68,1138.78ZM1005.89,1138.67L1005.52,1138.7L1006.02,1138.66L1005.89,1138.67ZM1007.1,1138.57L1006.71,1138.6L1007.18,1138.56L1007.1,1138.57ZM1008.31,1138.47L1007.96,1138.5L1008.35,1138.46L1008.31,1138.47ZM1009.52,1138.37L1009.5,1138.38L1009.72,1138.36L1009.52,1138.37ZM1010.73,1138.28L1010.67,1138.29L1011.1,1138.26L1010.73,1138.28ZM1011.94,1138.2L1011.84,1138.2L1012.32,1138.17L1011.94,1138.2ZM1013.16,1138.12L1013,1138.13L1013.51,1138.09L1013.16,1138.12ZM1014.37,1138.04L1014.17,1138.05L1014.69,1138.02L1014.37,1138.04ZM1015.59,1137.96L1015.35,1137.98L1015.86,1137.95L1015.59,1137.96ZM1016.81,1137.89L1016.52,1137.91L1017.04,1137.88L1016.81,1137.89ZM1018.03,1137.83L1017.7,1137.85L1018.21,1137.82L1018.03,1137.83ZM1019.25,1137.77L1018.89,1137.79L1019.39,1137.76L1019.25,1137.77ZM1020.47,1137.71L1020.1,1137.73L1020.56,1137.71L1020.47,1137.71ZM1021.69,1137.66L1021.36,1137.67L1021.74,1137.66L1021.69,1137.66ZM1022.92,1137.61L1022.91,1137.61L1023.02,1137.61L1022.92,1137.61ZM1024.14,1137.57L1024.09,1137.57L1024.49,1137.55L1024.14,1137.57ZM1025.37,1137.52L1025.27,1137.53L1025.74,1137.51L1025.37,1137.52ZM1026.6,1137.49L1026.45,1137.49L1026.94,1137.48L1026.6,1137.49ZM1027.82,1137.46L1027.63,1137.46L1028.14,1137.45L1027.82,1137.46ZM1029.05,1137.43L1028.81,1137.43L1029.33,1137.42L1029.05,1137.43ZM1030.28,1137.41L1030,1137.41L1030.52,1137.4L1030.28,1137.41ZM1031.51,1137.39L1031.19,1137.39L1031.7,1137.38L1031.51,1137.39ZM1032.75,1137.37L1032.39,1137.38L1032.89,1137.37L1032.75,1137.37ZM1033.98,1137.36L1033.61,1137.36L1034.07,1137.36L1033.98,1137.36ZM1035.21,1137.35L1034.87,1137.36L1035.26,1137.35L1035.21,1137.35ZM1050.1,1035.06L867.977,544.575L689.455,1035.06L1050.1,1035.06Z"})})}),I_e=fc({displayName:"TrainingIcon",viewBox:"0 0 3544 3544",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M0,768.593L0,2774.71C0,2930.6 78.519,3068.3 198.135,3150.37C273.059,3202.68 364.177,3233.38 462.407,3233.38C462.407,3233.38 3080.9,3233.38 3080.9,3233.38C3179.13,3233.38 3270.25,3202.68 3345.17,3150.37C3464.79,3068.3 3543.31,2930.6 3543.31,2774.71L3543.31,768.593C3543.31,517.323 3339.31,313.324 3088.04,313.324L455.269,313.324C203.999,313.324 0,517.323 0,768.593ZM3427.88,775.73L3427.88,2770.97C3427.88,2962.47 3272.4,3117.95 3080.9,3117.95L462.407,3117.95C270.906,3117.95 115.431,2962.47 115.431,2770.97C115.431,2770.97 115.431,775.73 115.431,775.73C115.431,584.229 270.906,428.755 462.407,428.755C462.407,428.755 3080.9,428.755 3080.9,428.755C3272.4,428.755 3427.88,584.229 3427.88,775.73ZM796.24,1322.76L796.24,1250.45C796.24,1199.03 836.16,1157.27 885.331,1157.27C885.331,1157.27 946.847,1157.27 946.847,1157.27C996.017,1157.27 1035.94,1199.03 1035.94,1250.45L1035.94,1644.81L2507.37,1644.81L2507.37,1250.45C2507.37,1199.03 2547.29,1157.27 2596.46,1157.27C2596.46,1157.27 2657.98,1157.27 2657.98,1157.27C2707.15,1157.27 2747.07,1199.03 2747.07,1250.45L2747.07,1322.76C2756.66,1319.22 2767.02,1317.29 2777.83,1317.29C2777.83,1317.29 2839.34,1317.29 2839.34,1317.29C2888.51,1317.29 2928.43,1357.21 2928.43,1406.38L2928.43,1527.32C2933.51,1526.26 2938.77,1525.71 2944.16,1525.71L2995.3,1525.71C3036.18,1525.71 3069.37,1557.59 3069.37,1596.86C3069.37,1596.86 3069.37,1946.44 3069.37,1946.44C3069.37,1985.72 3036.18,2017.6 2995.3,2017.6C2995.3,2017.6 2944.16,2017.6 2944.16,2017.6C2938.77,2017.6 2933.51,2017.04 2928.43,2015.99L2928.43,2136.92C2928.43,2186.09 2888.51,2226.01 2839.34,2226.01L2777.83,2226.01C2767.02,2226.01 2756.66,2224.08 2747.07,2220.55L2747.07,2292.85C2747.07,2344.28 2707.15,2386.03 2657.98,2386.03C2657.98,2386.03 2596.46,2386.03 2596.46,2386.03C2547.29,2386.03 2507.37,2344.28 2507.37,2292.85L2507.37,1898.5L1035.94,1898.5L1035.94,2292.85C1035.94,2344.28 996.017,2386.03 946.847,2386.03C946.847,2386.03 885.331,2386.03 885.331,2386.03C836.16,2386.03 796.24,2344.28 796.24,2292.85L796.24,2220.55C786.651,2224.08 776.29,2226.01 765.482,2226.01L703.967,2226.01C654.796,2226.01 614.876,2186.09 614.876,2136.92L614.876,2015.99C609.801,2017.04 604.539,2017.6 599.144,2017.6C599.144,2017.6 548.003,2017.6 548.003,2017.6C507.125,2017.6 473.937,1985.72 473.937,1946.44C473.937,1946.44 473.937,1596.86 473.937,1596.86C473.937,1557.59 507.125,1525.71 548.003,1525.71L599.144,1525.71C604.539,1525.71 609.801,1526.26 614.876,1527.32L614.876,1406.38C614.876,1357.21 654.796,1317.29 703.967,1317.29C703.967,1317.29 765.482,1317.29 765.482,1317.29C776.29,1317.29 786.651,1319.22 796.24,1322.76ZM977.604,1250.45C977.604,1232.7 963.822,1218.29 946.847,1218.29L885.331,1218.29C868.355,1218.29 854.573,1232.7 854.573,1250.45L854.573,2292.85C854.573,2310.61 868.355,2325.02 885.331,2325.02L946.847,2325.02C963.822,2325.02 977.604,2310.61 977.604,2292.85L977.604,1250.45ZM2565.7,1250.45C2565.7,1232.7 2579.49,1218.29 2596.46,1218.29L2657.98,1218.29C2674.95,1218.29 2688.73,1232.7 2688.73,1250.45L2688.73,2292.85C2688.73,2310.61 2674.95,2325.02 2657.98,2325.02L2596.46,2325.02C2579.49,2325.02 2565.7,2310.61 2565.7,2292.85L2565.7,1250.45ZM673.209,1406.38L673.209,2136.92C673.209,2153.9 686.991,2167.68 703.967,2167.68L765.482,2167.68C782.458,2167.68 796.24,2153.9 796.24,2136.92L796.24,1406.38C796.24,1389.41 782.458,1375.63 765.482,1375.63L703.967,1375.63C686.991,1375.63 673.209,1389.41 673.209,1406.38ZM2870.1,1406.38L2870.1,2136.92C2870.1,2153.9 2856.32,2167.68 2839.34,2167.68L2777.83,2167.68C2760.85,2167.68 2747.07,2153.9 2747.07,2136.92L2747.07,1406.38C2747.07,1389.41 2760.85,1375.63 2777.83,1375.63L2839.34,1375.63C2856.32,1375.63 2870.1,1389.41 2870.1,1406.38ZM614.876,1577.5C610.535,1574.24 605.074,1572.3 599.144,1572.3L548.003,1572.3C533.89,1572.3 522.433,1583.3 522.433,1596.86L522.433,1946.44C522.433,1960 533.89,1971.01 548.003,1971.01L599.144,1971.01C605.074,1971.01 610.535,1969.07 614.876,1965.81L614.876,1577.5ZM2928.43,1965.81L2928.43,1577.5C2932.77,1574.24 2938.23,1572.3 2944.16,1572.3L2995.3,1572.3C3009.42,1572.3 3020.87,1583.3 3020.87,1596.86L3020.87,1946.44C3020.87,1960 3009.42,1971.01 2995.3,1971.01L2944.16,1971.01C2938.23,1971.01 2932.77,1969.07 2928.43,1965.81ZM2507.37,1703.14L1035.94,1703.14L1035.94,1840.16L2507.37,1840.16L2507.37,1898.38L2507.37,1659.46L2507.37,1703.14Z"})}),D_e=fc({displayName:"UnifiedCanvasIcon",viewBox:"0 0 3544 3544",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M3543.31,770.787C3543.31,515.578 3336.11,308.38 3080.9,308.38L462.407,308.38C207.197,308.38 -0,515.578 -0,770.787L-0,2766.03C-0,3021.24 207.197,3228.44 462.407,3228.44L3080.9,3228.44C3336.11,3228.44 3543.31,3021.24 3543.31,2766.03C3543.31,2766.03 3543.31,770.787 3543.31,770.787ZM922.933,3113.01L462.407,3113.01C437.741,3113.01 413.674,3110.43 390.453,3105.52L390.453,2899.11L922.933,2899.11L922.933,3113.01ZM947.933,2899.11L947.933,3113.01L1480.41,3113.01L1480.41,2899.11L947.933,2899.11ZM1505.41,2899.11L1505.41,3113.01L2037.89,3113.01L2037.89,2899.11L1505.41,2899.11ZM2062.89,2899.11L2062.89,3113.01L2595.37,3113.01L2595.37,2899.11L2062.89,2899.11ZM3152.85,3105.52C3129.63,3110.43 3105.57,3113.01 3080.9,3113.01L2620.37,3113.01L2620.37,2899.11L3152.85,2899.11L3152.85,3105.52ZM365.453,3099.26L365.408,3099.24C354.521,3096.07 343.79,3092.37 333.266,3088.14C315.377,3080.95 298.094,3072.26 281.651,3062.2C263.114,3050.85 245.648,3037.77 229.544,3023.17C213.34,3008.49 198.518,2992.28 185.34,2974.83C174.102,2959.94 164.06,2944.16 155.353,2927.66C150.517,2918.5 146.102,2909.13 142.102,2899.57L141.91,2899.11L365.453,2899.11L365.453,3099.26ZM3401.4,2899.11C3361.33,2995.39 3279.12,3069.8 3177.85,3099.26L3177.85,2899.11L3401.4,2899.11ZM132.624,2874.11C121.465,2840.08 115.431,2803.76 115.431,2766.03L115.431,2341.63L365.453,2341.63L365.453,2874.11L132.624,2874.11ZM922.933,918.103L922.933,669.193L390.453,669.193L390.453,1201.67L731.014,1201.67L731.014,1226.67L390.453,1226.67L390.453,1759.15L731.014,1759.15L731.014,1784.15L390.453,1784.15L390.453,2316.63L731.014,2316.63L731.014,2341.63L390.453,2341.63L390.453,2874.11L922.933,2874.11L922.933,2625.2C931.122,2627.1 939.463,2628.6 947.933,2629.66L947.933,2874.11L1480.41,2874.11L1480.41,2631.62L1505.41,2631.62L1505.41,2874.11L2037.89,2874.11L2037.89,2631.62L2062.89,2631.62L2062.89,2874.11L2595.37,2874.11L2595.37,2629.66C2603.85,2628.6 2612.18,2627.1 2620.37,2625.2L2620.37,2874.11L3152.85,2874.11L3152.85,2341.63L2812.29,2341.63L2812.29,2316.63L3152.85,2316.63L3152.85,1784.15L2812.29,1784.15L2812.29,1759.15L3152.85,1759.15L3152.85,1226.67L2812.29,1226.67L2812.29,1201.67L3152.85,1201.67L3152.85,669.193L2620.37,669.193L2620.37,918.103C2612.18,916.203 2603.84,914.708 2595.37,913.642L2595.37,669.193L2062.89,669.193L2062.89,911.688L2037.89,911.688L2037.89,669.193L1505.41,669.193L1505.41,911.688L1480.41,911.688L1480.41,669.193L947.933,669.193L947.933,913.642C939.462,914.708 931.123,916.203 922.933,918.103ZM3427.88,2341.63L3427.88,2766.03C3427.88,2803.76 3421.84,2840.08 3410.68,2874.11L3177.85,2874.11L3177.85,2341.63L3427.88,2341.63ZM2494.01,2603.04L2524.53,2603.04C2541.26,2603.04 2557.62,2601.44 2573.47,2598.39L2598.02,2593.66L2588.56,2544.56L2564.01,2549.29C2551.23,2551.75 2538.03,2553.04 2524.53,2553.04L2494.01,2553.04L2494.01,2603.04ZM1294.01,2603.04L1394.01,2603.04L1394.01,2553.04L1294.01,2553.04L1294.01,2603.04ZM1894.01,2603.04L1994.01,2603.04L1994.01,2553.04L1894.01,2553.04L1894.01,2603.04ZM2194.01,2603.04L2294.01,2603.04L2294.01,2553.04L2194.01,2553.04L2194.01,2603.04ZM1144.01,2603.04L1244.01,2603.04L1244.01,2553.04L1144.01,2553.04L1144.01,2603.04ZM1444.01,2603.04L1544.01,2603.04L1544.01,2553.04L1444.01,2553.04L1444.01,2603.04ZM1594.01,2603.04L1694.01,2603.04L1694.01,2553.04L1594.01,2553.04L1594.01,2603.04ZM2344.01,2603.04L2444.01,2603.04L2444.01,2553.04L2344.01,2553.04L2344.01,2603.04ZM2044.01,2603.04L2144.01,2603.04L2144.01,2553.04L2044.01,2553.04L2044.01,2603.04ZM994.01,2603.04L1094.01,2603.04L1094.01,2553.04L994.01,2553.04L994.01,2603.04ZM1744.01,2603.04L1844.01,2603.04L1844.01,2553.04L1744.01,2553.04L1744.01,2603.04ZM864.145,2551.46C878.835,2562.5 894.741,2572 911.624,2579.74L934.352,2590.15L955.18,2544.7L932.452,2534.28C918.844,2528.05 906.024,2520.39 894.185,2511.49L874.199,2496.47L844.16,2536.44L864.145,2551.46ZM2674.44,2554.92C2689.46,2544.16 2703.28,2531.82 2715.65,2518.14L2732.42,2499.61L2695.35,2466.06L2678.58,2484.6C2668.59,2495.63 2657.44,2505.59 2645.32,2514.28L2625,2528.84L2654.12,2569.48L2674.44,2554.92ZM865.632,1911.31L1339.59,1374.15L2030.89,2134.59L2392.97,1713.77L2677.68,2017.9L2677.68,2324.93C2677.68,2424.23 2597.06,2504.85 2497.76,2504.85C2497.76,2504.85 1045.55,2504.85 1045.55,2504.85C946.251,2504.85 865.632,2424.23 865.632,2324.93L865.632,1911.31ZM771.251,2417.22C776.455,2435.14 783.552,2452.26 792.313,2468.35L804.27,2490.3L848.18,2466.39L836.223,2444.43C829.171,2431.49 823.457,2417.7 819.268,2403.28L812.297,2379.27L764.28,2393.21L771.251,2417.22ZM2770.36,2422.83C2775.83,2405.47 2779.52,2387.33 2781.2,2368.61L2783.43,2343.71L2733.64,2339.24L2731.4,2364.14C2730.05,2379.21 2727.08,2393.82 2722.67,2407.79L2715.15,2431.63L2762.84,2446.67L2770.36,2422.83ZM761.068,2236.12L761.068,2336.12L811.068,2336.12L811.068,2236.12L761.068,2236.12ZM3177.85,1784.15L3177.85,2316.63L3427.88,2316.63L3427.88,1784.15L3177.85,1784.15ZM115.431,1784.15L115.431,2316.63L365.453,2316.63L365.453,1784.15L115.431,1784.15ZM2782.24,2291.41L2782.24,2191.41L2732.24,2191.41L2732.24,2291.41L2782.24,2291.41ZM761.068,2086.12L761.068,2186.12L811.068,2186.12L811.068,2086.12L761.068,2086.12ZM2782.24,2141.41L2782.24,2041.4L2732.24,2041.4L2732.24,2141.41L2782.24,2141.41ZM761.068,1936.12L761.068,2036.12L811.068,2036.12L811.068,1936.12L761.068,1936.12ZM2782.24,1991.4L2782.24,1891.4L2732.24,1891.4L2732.24,1991.4L2782.24,1991.4ZM761.068,1786.12L761.068,1886.12L811.068,1886.12L811.068,1786.12L761.068,1786.12ZM2782.24,1841.4L2782.24,1741.41L2732.24,1741.41L2732.24,1841.4L2782.24,1841.4ZM3177.85,1226.67L3177.85,1759.15L3427.88,1759.15L3427.88,1226.67L3177.85,1226.67ZM115.431,1226.67L115.431,1759.15L365.453,1759.15L365.453,1226.67L115.431,1226.67ZM761.068,1636.12L761.068,1736.12L811.068,1736.12L811.068,1636.12L761.068,1636.12ZM2782.24,1691.41L2782.24,1591.41L2732.24,1591.41L2732.24,1691.41L2782.24,1691.41ZM761.068,1486.12L761.068,1586.12L811.068,1586.12L811.068,1486.12L761.068,1486.12ZM2203.72,1132.2C2318.18,1132.2 2411.11,1225.13 2411.11,1339.59C2411.11,1454.05 2318.18,1546.98 2203.72,1546.98C2089.26,1546.98 1996.33,1454.05 1996.33,1339.59C1996.33,1225.13 2089.26,1132.2 2203.72,1132.2ZM2782.24,1541.41L2782.24,1441.41L2732.24,1441.41L2732.24,1541.41L2782.24,1541.41ZM761.068,1336.12L761.068,1436.12L811.068,1436.12L811.068,1336.12L761.068,1336.12ZM2782.24,1391.41L2782.24,1291.41L2732.24,1291.41L2732.24,1391.41L2782.24,1391.41ZM761.068,1186.12L761.068,1286.12L811.068,1286.12L811.068,1186.12L761.068,1186.12ZM2732.24,1197.98L2732.24,1241.41L2782.24,1241.41L2782.24,1172.98L2781.03,1172.98C2780.06,1162.82 2778.49,1152.83 2776.36,1143.04L2771.04,1118.62L2722.18,1129.24L2727.5,1153.67C2730.61,1167.95 2732.24,1182.78 2732.24,1197.98ZM3412.74,669.193L3412.89,669.694C3414.66,675.5 3416.28,681.348 3417.73,687.238C3420.46,698.265 3422.65,709.427 3424.28,720.67C3425.85,731.554 3426.91,742.513 3427.45,753.497C3427.74,759.256 3427.87,765.021 3427.88,770.787L3427.88,1201.67L3177.85,1201.67L3177.85,669.193L3412.74,669.193ZM115.431,1201.67L115.431,770.787C115.436,765.021 115.572,759.256 115.855,753.497C116.395,742.513 117.453,731.554 119.031,720.67C120.66,709.427 122.844,698.265 125.574,687.238C127.032,681.348 128.65,675.5 130.414,669.694L130.567,669.193L365.453,669.193L365.453,1201.67L115.431,1201.67ZM804.386,1055C794.186,1070.26 785.572,1086.67 778.777,1103.99L769.647,1127.26L816.194,1145.52L825.324,1122.25C830.797,1108.3 837.738,1095.08 845.955,1082.79L859.848,1062L818.279,1034.21L804.386,1055ZM2730.5,1043.14C2719.39,1028.39 2706.73,1014.86 2692.77,1002.81L2673.84,986.48L2641.17,1024.34L2660.1,1040.67C2671.37,1050.39 2681.59,1061.31 2690.56,1073.22L2705.6,1093.19L2745.54,1063.11L2730.5,1043.14ZM933.266,954.821C915.698,961.006 898.998,969.041 883.402,978.694L862.144,991.851L888.457,1034.37L909.715,1021.21C922.275,1013.44 935.723,1006.96 949.871,1001.98L973.452,993.681L956.848,946.518L933.266,954.821ZM2596.18,950.378C2578.71,945.327 2560.49,942.072 2541.72,940.832L2516.78,939.183L2513.48,989.074L2538.43,990.723C2553.54,991.722 2568.22,994.341 2582.28,998.409L2606.3,1005.36L2620.19,957.325L2596.18,950.378ZM2165.09,940.265L2065.09,940.265L2065.09,990.265L2165.09,990.265L2165.09,940.265ZM1865.08,940.265L1765.08,940.265L1765.08,990.265L1865.08,990.265L1865.08,940.265ZM1115.08,940.265L1015.08,940.265L1015.08,990.265L1115.08,990.265L1115.08,940.265ZM2015.09,940.265L1915.09,940.265L1915.09,990.265L2015.09,990.265L2015.09,940.265ZM2315.09,940.265L2215.09,940.265L2215.09,990.265L2315.09,990.265L2315.09,940.265ZM1265.08,940.265L1165.08,940.265L1165.08,990.265L1265.08,990.265L1265.08,940.265ZM1415.08,940.265L1315.08,940.265L1315.08,990.265L1415.08,990.265L1415.08,940.265ZM1565.08,940.265L1465.08,940.265L1465.08,990.265L1565.08,990.265L1565.08,940.265ZM1715.08,940.265L1615.08,940.265L1615.08,990.265L1715.08,990.265L1715.08,940.265ZM2465.09,940.265L2365.09,940.265L2365.09,990.265L2465.09,990.265L2465.09,940.265ZM365.453,437.562L365.453,644.193L139.286,644.193C178.303,544.782 261.917,467.677 365.453,437.562ZM922.933,423.812L922.933,644.193L390.453,644.193L390.453,431.295C413.674,426.391 437.741,423.812 462.407,423.812L922.933,423.812ZM947.933,423.812L947.933,644.193L1480.41,644.193L1480.41,423.812L947.933,423.812ZM1505.41,423.812L1505.41,644.193L2037.89,644.193L2037.89,423.812L1505.41,423.812ZM2062.89,423.812L2062.89,644.193L2595.37,644.193L2595.37,423.812L2062.89,423.812ZM2620.37,423.812L3080.9,423.812C3105.57,423.812 3129.63,426.391 3152.85,431.295L3152.85,644.193L2620.37,644.193L2620.37,423.812ZM3177.85,437.562C3281.38,467.669 3365,544.774 3404.02,644.193L3177.85,644.193L3177.85,437.562Z"})}),Ye=Ze((e,t)=>{const{tooltip:n="",styleClass:r,tooltipProps:i,asCheckbox:o,isChecked:a,...s}=e;return g.jsx(si,{label:n,hasArrow:!0,...i,...i!=null&&i.placement?{placement:i.placement}:{placement:"top"},children:g.jsx(ls,{ref:t,className:r?`invokeai__icon-button ${r}`:"invokeai__icon-button","data-as-checkbox":o,"data-selected":a!==void 0?a:void 0,...s})})}),On=Ze((e,t)=>{const{children:n,tooltip:r="",tooltipProps:i,styleClass:o,...a}=e;return g.jsx(si,{label:r,...i,children:g.jsx(ss,{ref:t,className:["invokeai__button",o].join(" "),...a,children:n})})}),Ys=e=>{const{triggerComponent:t,children:n,styleClass:r,hasArrow:i=!0,...o}=e;return g.jsxs(V8,{...o,children:[g.jsx(U8,{children:t}),g.jsxs(q8,{className:`invokeai__popover-content ${r}`,children:[i&&g.jsx(G8,{className:"invokeai__popover-arrow"}),n]})]})},d4=lt(e=>e.lightbox,e=>e,{memoizeOptions:{equalityCheck:Pe.isEqual}}),Jo=e=>{const{label:t,isDisabled:n,validValues:r,tooltip:i,tooltipProps:o,size:a="sm",fontSize:s="sm",styleClass:l,...u}=e;return g.jsxs(sn,{isDisabled:n,className:`invokeai__select ${l}`,onClick:d=>{d.stopPropagation(),d.nativeEvent.stopImmediatePropagation(),d.nativeEvent.stopPropagation(),d.nativeEvent.cancelBubble=!0},children:[t&&g.jsx(Sn,{className:"invokeai__select-label",fontSize:s,fontWeight:"bold",marginRight:0,marginBottom:0,whiteSpace:"nowrap",children:t}),g.jsx(si,{label:i,...o,children:g.jsx(qH,{className:"invokeai__select-picker",fontSize:s,size:a,...u,children:r.map(d=>typeof d=="string"||typeof d=="number"?g.jsx("option",{value:d,className:"invokeai__select-option",children:d},d):g.jsx("option",{value:d.value,className:"invokeai__select-option",children:d.key},d.value))})})]})};function j_e(){const e=le(i=>i.postprocessing.facetoolType),t=Te(),{t:n}=De(),r=i=>t(dS(i.target.value));return g.jsx(Jo,{label:n("parameters.type"),validValues:I5e.concat(),value:e,onChange:r})}var HV={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},MI=Ke.createContext&&Ke.createContext(HV),Bd=globalThis&&globalThis.__assign||function(){return Bd=Object.assign||function(e){for(var t,n=1,r=arguments.length;n{Ce(i)},[i]);const we=S.useMemo(()=>V!=null&&V.max?V.max:a,[a,V==null?void 0:V.max]),xe=Xe=>{l(Xe)},Le=Xe=>{Xe.target.value===""&&(Xe.target.value=String(o));const tt=Pe.clamp(w?Math.floor(Number(Xe.target.value)):Number(fe),o,we);l(tt)},Se=Xe=>{Ce(Xe)},Qe=()=>{O&&O()};return g.jsxs(sn,{className:W?`invokeai__slider-component ${W}`:"invokeai__slider-component","data-markers":h,style:L?{display:"flex",flexDirection:"row",alignItems:"center",columnGap:"1rem",margin:0,padding:0}:{},...B,children:[g.jsx(Sn,{className:"invokeai__slider-component-label",fontSize:"sm",...K,children:r}),g.jsxs(l2,{w:"100%",gap:2,alignItems:"center",children:[g.jsxs(QH,{"aria-label":r,value:i,min:o,max:a,step:s,onChange:xe,onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),focusThumbOnChange:!1,isDisabled:I,width:u,...ee,children:[h&&g.jsxs(g.Fragment,{children:[g.jsx(tk,{value:o,className:"invokeai__slider-mark invokeai__slider-mark-start",ml:m,...ne,children:o}),g.jsx(tk,{value:a,className:"invokeai__slider-mark invokeai__slider-mark-end",ml:y,...ne,children:a})]}),g.jsx(eW,{className:"invokeai__slider_track",...z,children:g.jsx(tW,{className:"invokeai__slider_track-filled"})}),g.jsx(si,{hasArrow:!0,className:"invokeai__slider-component-tooltip",placement:"top",isOpen:t,label:`${i}${d}`,hidden:T,...G,children:g.jsx(JH,{className:"invokeai__slider-thumb",...$})})]}),b&&g.jsxs(B8,{min:o,max:we,step:s,value:fe,onChange:Se,onBlur:Le,className:"invokeai__slider-number-field",isDisabled:N,...V,children:[g.jsx(z8,{className:"invokeai__slider-number-input",width:E,readOnly:_,minWidth:E,...X}),g.jsxs(BH,{...Q,children:[g.jsx(W8,{onClick:()=>l(Number(fe)),className:"invokeai__slider-number-stepper"}),g.jsx(H8,{onClick:()=>l(Number(fe)),className:"invokeai__slider-number-stepper"})]})]}),k&&g.jsx(Ye,{size:"sm","aria-label":"Reset",tooltip:"Reset",icon:g.jsx(f4,{}),onClick:Qe,isDisabled:D,...Y})]})]})}function U_e(){const e=le(i=>i.system.isGFPGANAvailable),t=le(i=>i.postprocessing.facetoolStrength),{t:n}=De(),r=Te();return g.jsx(Dn,{isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e,label:n("parameters.strength"),step:.05,min:0,max:1,onChange:i=>r(k3(i)),handleReset:()=>r(k3(.75)),value:t,withReset:!0,withSliderMarks:!0,withInput:!0})}function V_e(){const e=le(i=>i.system.isGFPGANAvailable),t=le(i=>i.postprocessing.codeformerFidelity),{t:n}=De(),r=Te();return g.jsx(Dn,{isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e,label:n("parameters.codeformerFidelity"),step:.05,min:0,max:1,onChange:i=>r(xk(i)),handleReset:()=>r(xk(1)),value:t,withReset:!0,withSliderMarks:!0,withInput:!0})}const RE=()=>{const e=le(t=>t.postprocessing.facetoolType);return g.jsxs(ke,{direction:"column",gap:2,minWidth:"20rem",children:[g.jsx(j_e,{}),g.jsx(U_e,{}),e==="codeformer"&&g.jsx(V_e,{})]})};function G_e(){const e=le(i=>i.system.isESRGANAvailable),t=le(i=>i.postprocessing.upscalingDenoising),{t:n}=De(),r=Te();return g.jsx(Dn,{label:n("parameters.denoisingStrength"),value:t,min:0,max:1,step:.01,onChange:i=>{r(Sk(i))},handleReset:()=>r(Sk(.75)),withSliderMarks:!0,withInput:!0,withReset:!0,isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e})}function q_e(){const e=le(i=>i.system.isESRGANAvailable),t=le(i=>i.postprocessing.upscalingStrength),{t:n}=De(),r=Te();return g.jsx(Dn,{label:`${n("parameters.upscale")} ${n("parameters.strength")}`,value:t,min:0,max:1,step:.05,onChange:i=>r(wk(i)),handleReset:()=>r(wk(.75)),withSliderMarks:!0,withInput:!0,withReset:!0,isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e})}function K_e(){const e=le(o=>o.system.isESRGANAvailable),t=le(o=>o.postprocessing.upscalingLevel),{t:n}=De(),r=Te(),i=o=>r(yU(Number(o.target.value)));return g.jsx(Jo,{isDisabled:!e,label:n("parameters.scale"),value:t,onChange:i,validValues:R5e})}const IE=()=>g.jsxs(ke,{flexDir:"column",rowGap:2,minWidth:"20rem",children:[g.jsx(K_e,{}),g.jsx(G_e,{}),g.jsx(q_e,{})]}),DE=e=>e.postprocessing,hr=e=>e.system,Y_e=e=>e.system.toastQueue,VV=lt(hr,e=>{const{model_list:t}=e,n=Pe.reduce(t,(r,i,o)=>(i.status==="active"&&(r=o),r),"");return{...t[n],name:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),X_e=lt(hr,e=>{const{model_list:t}=e;return Pe.pickBy(t,(r,i)=>{if(r.format==="diffusers")return{name:i,...r}})},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function Vk(){return Vk=Object.assign?Object.assign.bind():function(e){for(var t=1;t'),!0):t?e.some(function(n){return t.includes(n)})||e.includes("*"):!0}var ike=function(t,n,r){r===void 0&&(r=!1);var i=n.alt,o=n.meta,a=n.mod,s=n.shift,l=n.ctrl,u=n.keys,d=t.key,h=t.code,m=t.ctrlKey,y=t.metaKey,b=t.shiftKey,w=t.altKey,E=kd(h),_=d.toLowerCase();if(!r){if(i===!w&&_!=="alt"||s===!b&&_!=="shift")return!1;if(a){if(!y&&!m)return!1}else if(o===!y&&_!=="meta"||l===!m&&_!=="ctrl")return!1}return u&&u.length===1&&(u.includes(_)||u.includes(E))?!0:u?J_e(u):!u},oke=S.createContext(void 0),ake=function(){return S.useContext(oke)};function XV(e,t){return e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(e).length===Object.keys(t).length&&Object.keys(e).reduce(function(n,r){return n&&XV(e[r],t[r])},!0):e===t}var ske=S.createContext({hotkeys:[],enabledScopes:[],toggleScope:function(){},enableScope:function(){},disableScope:function(){}}),lke=function(){return S.useContext(ske)};function uke(e){var t=S.useRef(void 0);return XV(t.current,e)||(t.current=e),t.current}var LI=function(t){t.stopPropagation(),t.preventDefault(),t.stopImmediatePropagation()},cke=typeof window<"u"?S.useLayoutEffect:S.useEffect;function Je(e,t,n,r){var i=S.useRef(null),o=S.useRef(!1),a=n instanceof Array?r instanceof Array?void 0:r:n,s=n instanceof Array?n:r instanceof Array?r:void 0,l=S.useCallback(t,s??[]),u=S.useRef(l);s?u.current=l:u.current=t;var d=uke(a),h=lke(),m=h.enabledScopes,y=ake();return cke(function(){if(!((d==null?void 0:d.enabled)===!1||!rke(m,d==null?void 0:d.scopes))){var b=function(k,T){var L;if(T===void 0&&(T=!1),!(nke(k)&&!YV(k,d==null?void 0:d.enableOnFormTags))){if(i.current!==null&&document.activeElement!==i.current&&!i.current.contains(document.activeElement)){LI(k);return}(L=k.target)!=null&&L.isContentEditable&&!(d!=null&&d.enableOnContentEditable)||XC(e,d==null?void 0:d.splitKey).forEach(function(O){var D,I=ZC(O,d==null?void 0:d.combinationKey);if(ike(k,I,d==null?void 0:d.ignoreModifiers)||(D=I.keys)!=null&&D.includes("*")){if(T&&o.current)return;if(eke(k,I,d==null?void 0:d.preventDefault),!tke(k,I,d==null?void 0:d.enabled)){LI(k);return}u.current(k,I),T||(o.current=!0)}})}},w=function(k){k.key!==void 0&&(qV(kd(k.code)),((d==null?void 0:d.keydown)===void 0&&(d==null?void 0:d.keyup)!==!0||d!=null&&d.keydown)&&b(k))},E=function(k){k.key!==void 0&&(KV(kd(k.code)),o.current=!1,d!=null&&d.keyup&&b(k,!0))};return(i.current||(a==null?void 0:a.document)||document).addEventListener("keyup",E),(i.current||(a==null?void 0:a.document)||document).addEventListener("keydown",w),y&&XC(e,d==null?void 0:d.splitKey).forEach(function(_){return y.addHotkey(ZC(_,d==null?void 0:d.combinationKey))}),function(){(i.current||(a==null?void 0:a.document)||document).removeEventListener("keyup",E),(i.current||(a==null?void 0:a.document)||document).removeEventListener("keydown",w),y&&XC(e,d==null?void 0:d.splitKey).forEach(function(_){return y.removeHotkey(ZC(_,d==null?void 0:d.combinationKey))})}}},[e,d,m]),i}function dke(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M524.531,69.836a1.5,1.5,0,0,0-.764-.7A485.065,485.065,0,0,0,404.081,32.03a1.816,1.816,0,0,0-1.923.91,337.461,337.461,0,0,0-14.9,30.6,447.848,447.848,0,0,0-134.426,0,309.541,309.541,0,0,0-15.135-30.6,1.89,1.89,0,0,0-1.924-.91A483.689,483.689,0,0,0,116.085,69.137a1.712,1.712,0,0,0-.788.676C39.068,183.651,18.186,294.69,28.43,404.354a2.016,2.016,0,0,0,.765,1.375A487.666,487.666,0,0,0,176.02,479.918a1.9,1.9,0,0,0,2.063-.676A348.2,348.2,0,0,0,208.12,430.4a1.86,1.86,0,0,0-1.019-2.588,321.173,321.173,0,0,1-45.868-21.853,1.885,1.885,0,0,1-.185-3.126c3.082-2.309,6.166-4.711,9.109-7.137a1.819,1.819,0,0,1,1.9-.256c96.229,43.917,200.41,43.917,295.5,0a1.812,1.812,0,0,1,1.924.233c2.944,2.426,6.027,4.851,9.132,7.16a1.884,1.884,0,0,1-.162,3.126,301.407,301.407,0,0,1-45.89,21.83,1.875,1.875,0,0,0-1,2.611,391.055,391.055,0,0,0,30.014,48.815,1.864,1.864,0,0,0,2.063.7A486.048,486.048,0,0,0,610.7,405.729a1.882,1.882,0,0,0,.765-1.352C623.729,277.594,590.933,167.465,524.531,69.836ZM222.491,337.58c-28.972,0-52.844-26.587-52.844-59.239S193.056,219.1,222.491,219.1c29.665,0,53.306,26.82,52.843,59.239C275.334,310.993,251.924,337.58,222.491,337.58Zm195.38,0c-28.971,0-52.843-26.587-52.843-59.239S388.437,219.1,417.871,219.1c29.667,0,53.307,26.82,52.844,59.239C470.715,310.993,447.538,337.58,417.871,337.58Z"}}]})(e)}function fke(e){return ut({tag:"svg",attr:{viewBox:"0 0 496 512"},child:[{tag:"path",attr:{d:"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"}}]})(e)}function hke(e){return ut({tag:"svg",attr:{viewBox:"0 0 320 512"},child:[{tag:"path",attr:{d:"M143 256.3L7 120.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0L313 86.3c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.4 9.5-24.6 9.5-34 .1zm34 192l136-136c9.4-9.4 9.4-24.6 0-33.9l-22.6-22.6c-9.4-9.4-24.6-9.4-33.9 0L160 352.1l-96.4-96.4c-9.4-9.4-24.6-9.4-33.9 0L7 278.3c-9.4 9.4-9.4 24.6 0 33.9l136 136c9.4 9.5 24.6 9.5 34 .1z"}}]})(e)}function ZV(e){return ut({tag:"svg",attr:{viewBox:"0 0 256 512"},child:[{tag:"path",attr:{d:"M31.7 239l136-136c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9L127.9 256l96.4 96.4c9.4 9.4 9.4 24.6 0 33.9L201.7 409c-9.4 9.4-24.6 9.4-33.9 0l-136-136c-9.5-9.4-9.5-24.6-.1-34z"}}]})(e)}function QV(e){return ut({tag:"svg",attr:{viewBox:"0 0 256 512"},child:[{tag:"path",attr:{d:"M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z"}}]})(e)}function pke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"}}]})(e)}function gke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"}}]})(e)}function JV(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M352.201 425.775l-79.196 79.196c-9.373 9.373-24.568 9.373-33.941 0l-79.196-79.196c-15.119-15.119-4.411-40.971 16.971-40.97h51.162L228 284H127.196v51.162c0 21.382-25.851 32.09-40.971 16.971L7.029 272.937c-9.373-9.373-9.373-24.569 0-33.941L86.225 159.8c15.119-15.119 40.971-4.411 40.971 16.971V228H228V127.196h-51.23c-21.382 0-32.09-25.851-16.971-40.971l79.196-79.196c9.373-9.373 24.568-9.373 33.941 0l79.196 79.196c15.119 15.119 4.411 40.971-16.971 40.971h-51.162V228h100.804v-51.162c0-21.382 25.851-32.09 40.97-16.971l79.196 79.196c9.373 9.373 9.373 24.569 0 33.941L425.773 352.2c-15.119 15.119-40.971 4.411-40.97-16.971V284H284v100.804h51.23c21.382 0 32.09 25.851 16.971 40.971z"}}]})(e)}function mke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M478.21 334.093L336 256l142.21-78.093c11.795-6.477 15.961-21.384 9.232-33.037l-19.48-33.741c-6.728-11.653-21.72-15.499-33.227-8.523L296 186.718l3.475-162.204C299.763 11.061 288.937 0 275.48 0h-38.96c-13.456 0-24.283 11.061-23.994 24.514L216 186.718 77.265 102.607c-11.506-6.976-26.499-3.13-33.227 8.523l-19.48 33.741c-6.728 11.653-2.562 26.56 9.233 33.037L176 256 33.79 334.093c-11.795 6.477-15.961 21.384-9.232 33.037l19.48 33.741c6.728 11.653 21.721 15.499 33.227 8.523L216 325.282l-3.475 162.204C212.237 500.939 223.064 512 236.52 512h38.961c13.456 0 24.283-11.061 23.995-24.514L296 325.282l138.735 84.111c11.506 6.976 26.499 3.13 33.227-8.523l19.48-33.741c6.728-11.653 2.563-26.559-9.232-33.036z"}}]})(e)}function vke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M511.988 288.9c-.478 17.43-15.217 31.1-32.653 31.1H424v16c0 21.864-4.882 42.584-13.6 61.145l60.228 60.228c12.496 12.497 12.496 32.758 0 45.255-12.498 12.497-32.759 12.496-45.256 0l-54.736-54.736C345.886 467.965 314.351 480 280 480V236c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v244c-34.351 0-65.886-12.035-90.636-32.108l-54.736 54.736c-12.498 12.497-32.759 12.496-45.256 0-12.496-12.497-12.496-32.758 0-45.255l60.228-60.228C92.882 378.584 88 357.864 88 336v-16H32.666C15.23 320 .491 306.33.013 288.9-.484 270.816 14.028 256 32 256h56v-58.745l-46.628-46.628c-12.496-12.497-12.496-32.758 0-45.255 12.498-12.497 32.758-12.497 45.256 0L141.255 160h229.489l54.627-54.627c12.498-12.497 32.758-12.497 45.256 0 12.496 12.497 12.496 32.758 0 45.255L424 197.255V256h56c17.972 0 32.484 14.816 31.988 32.9zM257 0c-61.856 0-112 50.144-112 112h224C369 50.144 318.856 0 257 0z"}}]})(e)}function jE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"}}]})(e)}function eG(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M278.9 511.5l-61-17.7c-6.4-1.8-10-8.5-8.2-14.9L346.2 8.7c1.8-6.4 8.5-10 14.9-8.2l61 17.7c6.4 1.8 10 8.5 8.2 14.9L293.8 503.3c-1.9 6.4-8.5 10.1-14.9 8.2zm-114-112.2l43.5-46.4c4.6-4.9 4.3-12.7-.8-17.2L117 256l90.6-79.7c5.1-4.5 5.5-12.3.8-17.2l-43.5-46.4c-4.5-4.8-12.1-5.1-17-.5L3.8 247.2c-5.1 4.7-5.1 12.8 0 17.5l144.1 135.1c4.9 4.6 12.5 4.4 17-.5zm327.2.6l144.1-135.1c5.1-4.7 5.1-12.8 0-17.5L492.1 112.1c-4.8-4.5-12.4-4.3-17 .5L431.6 159c-4.6 4.9-4.3 12.7.8 17.2L523 256l-90.6 79.7c-5.1 4.5-5.5 12.3-.8 17.2l43.5 46.4c4.5 4.9 12.1 5.1 17 .6z"}}]})(e)}function e0(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z"}}]})(e)}function tG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M500 224h-30.364C455.724 130.325 381.675 56.276 288 42.364V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v30.364C130.325 56.276 56.276 130.325 42.364 224H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h30.364C56.276 381.675 130.325 455.724 224 469.636V500c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-30.364C381.675 455.724 455.724 381.675 469.636 288H500c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zM288 404.634V364c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40.634C165.826 392.232 119.783 346.243 107.366 288H148c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40.634C119.768 165.826 165.757 119.783 224 107.366V148c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40.634C346.174 119.768 392.217 165.757 404.634 224H364c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40.634C392.232 346.174 346.243 392.217 288 404.634zM288 256c0 17.673-14.327 32-32 32s-32-14.327-32-32c0-17.673 14.327-32 32-32s32 14.327 32 32z"}}]})(e)}function yke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z"}}]})(e)}function NE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"}}]})(e)}function nG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M497.941 273.941c18.745-18.745 18.745-49.137 0-67.882l-160-160c-18.745-18.745-49.136-18.746-67.883 0l-256 256c-18.745 18.745-18.745 49.137 0 67.882l96 96A48.004 48.004 0 0 0 144 480h356c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H355.883l142.058-142.059zm-302.627-62.627l137.373 137.373L265.373 416H150.628l-80-80 124.686-124.686z"}}]})(e)}function bke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M448 344v112a23.94 23.94 0 0 1-24 24H312c-21.39 0-32.09-25.9-17-41l36.2-36.2L224 295.6 116.77 402.9 153 439c15.09 15.1 4.39 41-17 41H24a23.94 23.94 0 0 1-24-24V344c0-21.4 25.89-32.1 41-17l36.19 36.2L184.46 256 77.18 148.7 41 185c-15.1 15.1-41 4.4-41-17V56a23.94 23.94 0 0 1 24-24h112c21.39 0 32.09 25.9 17 41l-36.2 36.2L224 216.4l107.23-107.3L295 73c-15.09-15.1-4.39-41 17-41h112a23.94 23.94 0 0 1 24 24v112c0 21.4-25.89 32.1-41 17l-36.19-36.2L263.54 256l107.28 107.3L407 327.1c15.1-15.2 41-4.5 41 16.9z"}}]})(e)}function xke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z"}}]})(e)}function rG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M50.75 333.25c-12 12-18.75 28.28-18.75 45.26V424L0 480l32 32 56-32h45.49c16.97 0 33.25-6.74 45.25-18.74l126.64-126.62-128-128L50.75 333.25zM483.88 28.12c-37.47-37.5-98.28-37.5-135.75 0l-77.09 77.09-13.1-13.1c-9.44-9.44-24.65-9.31-33.94 0l-40.97 40.97c-9.37 9.37-9.37 24.57 0 33.94l161.94 161.94c9.44 9.44 24.65 9.31 33.94 0L419.88 288c9.37-9.37 9.37-24.57 0-33.94l-13.1-13.1 77.09-77.09c37.51-37.48 37.51-98.26.01-135.75z"}}]})(e)}function Ske(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M320 400c-75.85 0-137.25-58.71-142.9-133.11L72.2 185.82c-13.79 17.3-26.48 35.59-36.72 55.59a32.35 32.35 0 0 0 0 29.19C89.71 376.41 197.07 448 320 448c26.91 0 52.87-4 77.89-10.46L346 397.39a144.13 144.13 0 0 1-26 2.61zm313.82 58.1l-110.55-85.44a331.25 331.25 0 0 0 81.25-102.07 32.35 32.35 0 0 0 0-29.19C550.29 135.59 442.93 64 320 64a308.15 308.15 0 0 0-147.32 37.7L45.46 3.37A16 16 0 0 0 23 6.18L3.37 31.45A16 16 0 0 0 6.18 53.9l588.36 454.73a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45zm-183.72-142l-39.3-30.38A94.75 94.75 0 0 0 416 256a94.76 94.76 0 0 0-121.31-92.21A47.65 47.65 0 0 1 304 192a46.64 46.64 0 0 1-1.54 10l-73.61-56.89A142.31 142.31 0 0 1 320 112a143.92 143.92 0 0 1 144 144c0 21.63-5.29 41.79-13.9 60.11z"}}]})(e)}function wke(e){return ut({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M572.52 241.4C518.29 135.59 410.93 64 288 64S57.68 135.64 3.48 241.41a32.35 32.35 0 0 0 0 29.19C57.71 376.41 165.07 448 288 448s230.32-71.64 284.52-177.41a32.35 32.35 0 0 0 0-29.19zM288 400a144 144 0 1 1 144-144 143.93 143.93 0 0 1-144 144zm0-240a95.31 95.31 0 0 0-25.31 3.79 47.85 47.85 0 0 1-66.9 66.9A95.78 95.78 0 1 0 288 160z"}}]})(e)}function iG(e){return ut({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M512 320s-64 92.65-64 128c0 35.35 28.66 64 64 64s64-28.65 64-64-64-128-64-128zm-9.37-102.94L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-81.58 81.58L81.93 4.76c-6.25-6.25-16.38-6.25-22.62 0L36.69 27.38c-6.24 6.25-6.24 16.38 0 22.62l86.19 86.18-94.76 94.76c-37.49 37.48-37.49 98.26 0 135.75l117.19 117.19c18.74 18.74 43.31 28.12 67.87 28.12 24.57 0 49.13-9.37 67.87-28.12l221.57-221.57c12.5-12.5 12.5-32.75.01-45.25zm-116.22 70.97H65.93c1.36-3.84 3.57-7.98 7.43-11.83l13.15-13.15 81.61-81.61 58.6 58.6c12.49 12.49 32.75 12.49 45.24 0s12.49-32.75 0-45.24l-58.6-58.6 58.95-58.95 162.44 162.44-48.34 48.34z"}}]})(e)}function Cke(e){return ut({tag:"svg",attr:{viewBox:"0 0 496 512"},child:[{tag:"path",attr:{d:"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM94.6 168.9l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.2 1 8.9 8.6 4.3 13.2l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L152 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.6-4.7-1.9-12.3 4.3-13.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3zm157.7-249.9l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L344 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.5-4.6-1.9-12.2 4.3-13.2l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.3.9 9 8.5 4.4 13.1z"}}]})(e)}function _ke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"}}]})(e)}function kke(e){return ut({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M528 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM128 180v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm288 0v-40c0-6.627-5.373-12-12-12H172c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h232c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12z"}}]})(e)}function Eke(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M152.1 236.2c-3.5-12.1-7.8-33.2-7.8-33.2h-.5s-4.3 21.1-7.8 33.2l-11.1 37.5H163zM616 96H336v320h280c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zm-24 120c0 6.6-5.4 12-12 12h-11.4c-6.9 23.6-21.7 47.4-42.7 69.9 8.4 6.4 17.1 12.5 26.1 18 5.5 3.4 7.3 10.5 4.1 16.2l-7.9 13.9c-3.4 5.9-10.9 7.8-16.7 4.3-12.6-7.8-24.5-16.1-35.4-24.9-10.9 8.7-22.7 17.1-35.4 24.9-5.8 3.5-13.3 1.6-16.7-4.3l-7.9-13.9c-3.2-5.6-1.4-12.8 4.2-16.2 9.3-5.7 18-11.7 26.1-18-7.9-8.4-14.9-17-21-25.7-4-5.7-2.2-13.6 3.7-17.1l6.5-3.9 7.3-4.3c5.4-3.2 12.4-1.7 16 3.4 5 7 10.8 14 17.4 20.9 13.5-14.2 23.8-28.9 30-43.2H412c-6.6 0-12-5.4-12-12v-16c0-6.6 5.4-12 12-12h64v-16c0-6.6 5.4-12 12-12h16c6.6 0 12 5.4 12 12v16h64c6.6 0 12 5.4 12 12zM0 120v272c0 13.3 10.7 24 24 24h280V96H24c-13.3 0-24 10.7-24 24zm58.9 216.1L116.4 167c1.7-4.9 6.2-8.1 11.4-8.1h32.5c5.1 0 9.7 3.3 11.4 8.1l57.5 169.1c2.6 7.8-3.1 15.9-11.4 15.9h-22.9a12 12 0 0 1-11.5-8.6l-9.4-31.9h-60.2l-9.1 31.8c-1.5 5.1-6.2 8.7-11.5 8.7H70.3c-8.2 0-14-8.1-11.4-15.9z"}}]})(e)}function oG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M12.41 148.02l232.94 105.67c6.8 3.09 14.49 3.09 21.29 0l232.94-105.67c16.55-7.51 16.55-32.52 0-40.03L266.65 2.31a25.607 25.607 0 0 0-21.29 0L12.41 107.98c-16.55 7.51-16.55 32.53 0 40.04zm487.18 88.28l-58.09-26.33-161.64 73.27c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.51 209.97l-58.1 26.33c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 276.3c16.55-7.5 16.55-32.5 0-40zm0 127.8l-57.87-26.23-161.86 73.37c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.29 337.87 12.41 364.1c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 404.1c16.55-7.5 16.55-32.5 0-40z"}}]})(e)}function Pke(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M320.67 64c-442.6 0-357.57 384-158.46 384 39.9 0 77.47-20.69 101.42-55.86l25.73-37.79c15.66-22.99 46.97-22.99 62.63 0l25.73 37.79C401.66 427.31 439.23 448 479.13 448c189.86 0 290.63-384-158.46-384zM184 308.36c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05zm272 0c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05z"}}]})(e)}function Tke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"}}]})(e)}function aG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M167.02 309.34c-40.12 2.58-76.53 17.86-97.19 72.3-2.35 6.21-8 9.98-14.59 9.98-11.11 0-45.46-27.67-55.25-34.35C0 439.62 37.93 512 128 512c75.86 0 128-43.77 128-120.19 0-3.11-.65-6.08-.97-9.13l-88.01-73.34zM457.89 0c-15.16 0-29.37 6.71-40.21 16.45C213.27 199.05 192 203.34 192 257.09c0 13.7 3.25 26.76 8.73 38.7l63.82 53.18c7.21 1.8 14.64 3.03 22.39 3.03 62.11 0 98.11-45.47 211.16-256.46 7.38-14.35 13.9-29.85 13.9-45.99C512 20.64 486 0 457.89 0z"}}]})(e)}function Mke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"}}]})(e)}function Lke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M424.4 214.7L72.4 6.6C43.8-10.3 0 6.1 0 47.9V464c0 37.5 40.7 60.1 72.4 41.3l352-208c31.4-18.5 31.5-64.1 0-82.6z"}}]})(e)}function y2(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"}}]})(e)}function Ake(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z"}}]})(e)}function Oke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M184.561 261.903c3.232 13.997-12.123 24.635-24.068 17.168l-40.736-25.455-50.867 81.402C55.606 356.273 70.96 384 96.012 384H148c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12H96.115c-75.334 0-121.302-83.048-81.408-146.88l50.822-81.388-40.725-25.448c-12.081-7.547-8.966-25.961 4.879-29.158l110.237-25.45c8.611-1.988 17.201 3.381 19.189 11.99l25.452 110.237zm98.561-182.915l41.289 66.076-40.74 25.457c-12.051 7.528-9 25.953 4.879 29.158l110.237 25.45c8.672 1.999 17.215-3.438 19.189-11.99l25.45-110.237c3.197-13.844-11.99-24.719-24.068-17.168l-40.687 25.424-41.263-66.082c-37.521-60.033-125.209-60.171-162.816 0l-17.963 28.766c-3.51 5.62-1.8 13.021 3.82 16.533l33.919 21.195c5.62 3.512 13.024 1.803 16.536-3.817l17.961-28.743c12.712-20.341 41.973-19.676 54.257-.022zM497.288 301.12l-27.515-44.065c-3.511-5.623-10.916-7.334-16.538-3.821l-33.861 21.159c-5.62 3.512-7.33 10.915-3.818 16.536l27.564 44.112c13.257 21.211-2.057 48.96-27.136 48.96H320V336.02c0-14.213-17.242-21.383-27.313-11.313l-80 79.981c-6.249 6.248-6.249 16.379 0 22.627l80 79.989C302.689 517.308 320 510.3 320 495.989V448h95.88c75.274 0 121.335-82.997 81.408-146.88z"}}]})(e)}function Rke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M500.33 0h-47.41a12 12 0 0 0-12 12.57l4 82.76A247.42 247.42 0 0 0 256 8C119.34 8 7.9 119.53 8 256.19 8.1 393.07 119.1 504 256 504a247.1 247.1 0 0 0 166.18-63.91 12 12 0 0 0 .48-17.43l-34-34a12 12 0 0 0-16.38-.55A176 176 0 1 1 402.1 157.8l-101.53-4.87a12 12 0 0 0-12.57 12v47.41a12 12 0 0 0 12 12h200.33a12 12 0 0 0 12-12V12a12 12 0 0 0-12-12z"}}]})(e)}function $E(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z"}}]})(e)}function Ike(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M64 96H0c0 123.7 100.3 224 224 224v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C288 196.3 187.7 96 64 96zm384-64c-84.2 0-157.4 46.5-195.7 115.2 27.7 30.2 48.2 66.9 59 107.6C424 243.1 512 147.9 512 32h-64z"}}]})(e)}function Dke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M352 320c-22.608 0-43.387 7.819-59.79 20.895l-102.486-64.054a96.551 96.551 0 0 0 0-41.683l102.486-64.054C308.613 184.181 329.392 192 352 192c53.019 0 96-42.981 96-96S405.019 0 352 0s-96 42.981-96 96c0 7.158.79 14.13 2.276 20.841L155.79 180.895C139.387 167.819 118.608 160 96 160c-53.019 0-96 42.981-96 96s42.981 96 96 96c22.608 0 43.387-7.819 59.79-20.895l102.486 64.054A96.301 96.301 0 0 0 256 416c0 53.019 42.981 96 96 96s96-42.981 96-96-42.981-96-96-96z"}}]})(e)}function AI(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M503.691 189.836L327.687 37.851C312.281 24.546 288 35.347 288 56.015v80.053C127.371 137.907 0 170.1 0 322.326c0 61.441 39.581 122.309 83.333 154.132 13.653 9.931 33.111-2.533 28.077-18.631C66.066 312.814 132.917 274.316 288 272.085V360c0 20.7 24.3 31.453 39.687 18.164l176.004-152c11.071-9.562 11.086-26.753 0-36.328z"}}]})(e)}function FE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M496 384H160v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h336c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160h-80v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h336v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h80c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160H288V48c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h208v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16z"}}]})(e)}function jke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M32 464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128H32zm272-256a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"}}]})(e)}function hp(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32z"}}]})(e)}function Nke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M212.333 224.333H12c-6.627 0-12-5.373-12-12V12C0 5.373 5.373 0 12 0h48c6.627 0 12 5.373 12 12v78.112C117.773 39.279 184.26 7.47 258.175 8.007c136.906.994 246.448 111.623 246.157 248.532C504.041 393.258 393.12 504 256.333 504c-64.089 0-122.496-24.313-166.51-64.215-5.099-4.622-5.334-12.554-.467-17.42l33.967-33.967c4.474-4.474 11.662-4.717 16.401-.525C170.76 415.336 211.58 432 256.333 432c97.268 0 176-78.716 176-176 0-97.267-78.716-176-176-176-58.496 0-110.28 28.476-142.274 72.333h98.274c6.627 0 12 5.373 12 12v48c0 6.627-5.373 12-12 12z"}}]})(e)}function h4(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M296 384h-80c-13.3 0-24-10.7-24-24V192h-87.7c-17.8 0-26.7-21.5-14.1-34.1L242.3 5.7c7.5-7.5 19.8-7.5 27.3 0l152.2 152.2c12.6 12.6 3.7 34.1-14.1 34.1H320v168c0 13.3-10.7 24-24 24zm216-8v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h136v8c0 30.9 25.1 56 56 56h80c30.9 0 56-25.1 56-56v-8h136c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"}}]})(e)}function $ke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z"}}]})(e)}function BE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M507.73 109.1c-2.24-9.03-13.54-12.09-20.12-5.51l-74.36 74.36-67.88-11.31-11.31-67.88 74.36-74.36c6.62-6.62 3.43-17.9-5.66-20.16-47.38-11.74-99.55.91-136.58 37.93-39.64 39.64-50.55 97.1-34.05 147.2L18.74 402.76c-24.99 24.99-24.99 65.51 0 90.5 24.99 24.99 65.51 24.99 90.5 0l213.21-213.21c50.12 16.71 107.47 5.68 147.37-34.22 37.07-37.07 49.7-89.32 37.91-136.73zM64 472c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"}}]})(e)}const rn=e=>e.canvas,Lr=lt([rn,Br,hr],(e,t,n)=>e.layerState.stagingArea.images.length>0||t==="unifiedCanvas"&&n.isProcessing),sG=e=>e.canvas.layerState.objects.find(x3),pp=e=>e.gallery,Fke=lt([pp,d4,Lr,Br],(e,t,n,r)=>{const{categories:i,currentCategory:o,currentImageUuid:a,shouldPinGallery:s,shouldShowGallery:l,galleryScrollPosition:u,galleryImageMinimumWidth:d,galleryImageObjectFit:h,shouldHoldGalleryOpen:m,shouldAutoSwitchToNewImages:y,galleryWidth:b,shouldUseSingleGalleryColumn:w}=e,{isLightboxOpen:E}=t;return{currentImageUuid:a,shouldPinGallery:s,shouldShowGallery:l,galleryScrollPosition:u,galleryImageMinimumWidth:d,galleryImageObjectFit:h,galleryGridTemplateColumns:w?"auto":`repeat(auto-fill, minmax(${d}px, auto))`,activeTabName:r,shouldHoldGalleryOpen:m,shouldAutoSwitchToNewImages:y,images:i[o].images,areMoreImagesAvailable:i[o].areMoreImagesAvailable,currentCategory:o,galleryWidth:b,isLightboxOpen:E,isStaging:n,shouldEnableResize:!(E||r==="unifiedCanvas"&&s),shouldUseSingleGalleryColumn:w}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),Bke=lt([pp,hr,d4,Br],(e,t,n,r)=>({mayDeleteImage:t.isConnected&&!t.isProcessing,galleryImageObjectFit:e.galleryImageObjectFit,galleryImageMinimumWidth:e.galleryImageMinimumWidth,shouldUseSingleGalleryColumn:e.shouldUseSingleGalleryColumn,activeTabName:r,isLightboxOpen:n.isLightboxOpen}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),zke=lt(hr,e=>{const{shouldConfirmOnDelete:t,isConnected:n,isProcessing:r}=e;return{shouldConfirmOnDelete:t,isConnected:n,isProcessing:r}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),A3=S.forwardRef(({image:e,children:t},n)=>{const{isOpen:r,onOpen:i,onClose:o}=Kd(),a=Te(),{shouldConfirmOnDelete:s,isConnected:l,isProcessing:u}=le(zke),d=S.useRef(null),h=b=>{b.stopPropagation(),s?i():m()},m=()=>{l&&!u&&e&&a(c_e(e)),o()};Je("delete",()=>{s?i():m()},[e,s,l,u]);const y=b=>a(IU(!b.target.checked));return g.jsxs(g.Fragment,{children:[S.cloneElement(t,{onClick:e?h:void 0,ref:n}),g.jsx($H,{isOpen:r,leastDestructiveRef:d,onClose:o,children:g.jsx(oc,{children:g.jsxs(FH,{className:"modal",children:[g.jsx(op,{fontSize:"lg",fontWeight:"bold",children:"Delete image"}),g.jsx(Zm,{children:g.jsxs(ke,{direction:"column",gap:5,children:[g.jsx(Dt,{children:"Are you sure? Deleted images will be sent to the Bin. You can restore from there if you wish to."}),g.jsx(sn,{children:g.jsxs(ke,{alignItems:"center",children:[g.jsx(Sn,{mb:0,children:"Don't ask me again"}),g.jsx(K8,{checked:!s,onChange:y})]})})]})}),g.jsxs(zw,{children:[g.jsx(ss,{ref:d,onClick:o,className:"modal-close-btn",children:"Cancel"}),g.jsx(ss,{colorScheme:"red",onClick:m,ml:3,children:"Delete"})]})]})})})]})});A3.displayName="DeleteImageModal";const zE=()=>{const e=Te();return t=>{const n=typeof t=="string"?t:Rm(t),[r,i]=nU(n);e(uU(r)),e(cU(i))}},Hke=lt([hr,pp,DE,fp,d4,Br],(e,t,n,r,i,o)=>{const{isProcessing:a,isConnected:s,isGFPGANAvailable:l,isESRGANAvailable:u}=e,{upscalingLevel:d,facetoolStrength:h}=n,{isLightboxOpen:m}=i,{shouldShowImageDetails:y}=r,{intermediateImage:b,currentImage:w}=t;return{isProcessing:a,isConnected:s,isGFPGANAvailable:l,isESRGANAvailable:u,upscalingLevel:d,facetoolStrength:h,shouldDisableToolbarButtons:Boolean(b)||!w,currentImage:w,shouldShowImageDetails:y,activeTabName:o,isLightboxOpen:m}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),lG=()=>{var B,K,ne,z,$,V,X,Q;const e=Te(),{isProcessing:t,isConnected:n,isGFPGANAvailable:r,isESRGANAvailable:i,upscalingLevel:o,facetoolStrength:a,shouldDisableToolbarButtons:s,shouldShowImageDetails:l,currentImage:u,isLightboxOpen:d,activeTabName:h}=le(Hke),m=a2(),{t:y}=De(),b=zE(),w=()=>{u&&(d&&e(Om(!1)),e(y0(u)),e(Wo("img2img")))},E=async()=>{if(!u)return;const G=await fetch(u.url).then(ee=>ee.blob()),Y=[new ClipboardItem({[G.type]:G})];await navigator.clipboard.write(Y),m({title:y("toast.imageCopied"),status:"success",duration:2500,isClosable:!0})},_=()=>{navigator.clipboard.writeText(u?window.location.toString()+u.url:"").then(()=>{m({title:y("toast.imageLinkCopied"),status:"success",duration:2500,isClosable:!0})})};Je("shift+i",()=>{u?(w(),m({title:y("toast.sentToImageToImage"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.imageNotLoaded"),description:y("toast.imageNotLoadedDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const k=()=>{var G,Y;u&&(u.metadata&&e(aU(u.metadata)),((G=u.metadata)==null?void 0:G.image.type)==="img2img"?e(Wo("img2img")):((Y=u.metadata)==null?void 0:Y.image.type)==="txt2img"&&e(Wo("txt2img")))};Je("a",()=>{var G,Y;["txt2img","img2img"].includes((Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)==null?void 0:Y.type)?(k(),m({title:y("toast.parametersSet"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.parametersNotSet"),description:y("toast.parametersNotSetDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const T=()=>{u!=null&&u.metadata&&e(p2(u.metadata.image.seed))};Je("s",()=>{var G,Y;(Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)!=null&&Y.seed?(T(),m({title:y("toast.seedSet"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.seedNotSet"),description:y("toast.seedNotSetDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const L=S.useCallback(()=>{var G,Y,ee,fe;(Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)!=null&&Y.prompt&&b((fe=(ee=u==null?void 0:u.metadata)==null?void 0:ee.image)==null?void 0:fe.prompt)},[(K=(B=u==null?void 0:u.metadata)==null?void 0:B.image)==null?void 0:K.prompt,b]);Je("p",()=>{var G,Y;(Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)!=null&&Y.prompt?(L(),m({title:y("toast.promptSet"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.promptNotSet"),description:y("toast.promptNotSetDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const O=()=>{u&&e(l_e(u))};Je("Shift+U",()=>{i&&!s&&n&&!t&&o?O():m({title:y("toast.upscalingFailed"),status:"error",duration:2500,isClosable:!0})},[u,i,s,n,t,o]);const D=()=>{u&&e(u_e(u))};Je("Shift+R",()=>{r&&!s&&n&&!t&&a?D():m({title:y("toast.faceRestoreFailed"),status:"error",duration:2500,isClosable:!0})},[u,r,s,n,t,a]);const I=()=>e(FU(!l)),N=()=>{u&&(d&&e(Om(!1)),e(i4(u)),e(Li(!0)),h!=="unifiedCanvas"&&e(Wo("unifiedCanvas")),m({title:y("toast.sentToUnifiedCanvas"),status:"success",duration:2500,isClosable:!0}))};Je("i",()=>{u?I():m({title:y("toast.metadataLoadFailed"),status:"error",duration:2500,isClosable:!0})},[u,l]);const W=()=>{e(Om(!d))};return g.jsxs("div",{className:"current-image-options",children:[g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":`${y("parameters.sendTo")}...`,icon:g.jsx(Dke,{})}),children:g.jsxs("div",{className:"current-image-send-to-popover",children:[g.jsx(On,{size:"sm",onClick:w,leftIcon:g.jsx(AI,{}),children:y("parameters.sendToImg2Img")}),g.jsx(On,{size:"sm",onClick:N,leftIcon:g.jsx(AI,{}),children:y("parameters.sendToUnifiedCanvas")}),g.jsx(On,{size:"sm",onClick:E,leftIcon:g.jsx(e0,{}),children:y("parameters.copyImage")}),g.jsx(On,{size:"sm",onClick:_,leftIcon:g.jsx(e0,{}),children:y("parameters.copyImageToLink")}),g.jsx(Nh,{download:!0,href:u==null?void 0:u.url,children:g.jsx(On,{leftIcon:g.jsx(NE,{}),size:"sm",w:"100%",children:y("parameters.downloadImage")})})]})}),g.jsx(Ye,{icon:g.jsx(xke,{}),tooltip:d?`${y("parameters.closeViewer")} (Z)`:`${y("parameters.openInViewer")} (Z)`,"aria-label":d?`${y("parameters.closeViewer")} (Z)`:`${y("parameters.openInViewer")} (Z)`,"data-selected":d,onClick:W})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{icon:g.jsx(Ake,{}),tooltip:`${y("parameters.usePrompt")} (P)`,"aria-label":`${y("parameters.usePrompt")} (P)`,isDisabled:!((z=(ne=u==null?void 0:u.metadata)==null?void 0:ne.image)!=null&&z.prompt),onClick:L}),g.jsx(Ye,{icon:g.jsx(Ike,{}),tooltip:`${y("parameters.useSeed")} (S)`,"aria-label":`${y("parameters.useSeed")} (S)`,isDisabled:!((V=($=u==null?void 0:u.metadata)==null?void 0:$.image)!=null&&V.seed),onClick:T}),g.jsx(Ye,{icon:g.jsx(mke,{}),tooltip:`${y("parameters.useAll")} (A)`,"aria-label":`${y("parameters.useAll")} (A)`,isDisabled:!["txt2img","img2img"].includes((Q=(X=u==null?void 0:u.metadata)==null?void 0:X.image)==null?void 0:Q.type),onClick:k})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{icon:g.jsx(Cke,{}),"aria-label":y("parameters.restoreFaces")}),children:g.jsxs("div",{className:"current-image-postprocessing-popover",children:[g.jsx(RE,{}),g.jsx(On,{isDisabled:!r||!u||!(n&&!t)||!a,onClick:D,children:y("parameters.restoreFaces")})]})}),g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{icon:g.jsx(bke,{}),"aria-label":y("parameters.upscale")}),children:g.jsxs("div",{className:"current-image-postprocessing-popover",children:[g.jsx(IE,{}),g.jsx(On,{isDisabled:!i||!u||!(n&&!t)||!o,onClick:O,children:y("parameters.upscaleImage")})]})})]}),g.jsx(Gi,{isAttached:!0,children:g.jsx(Ye,{icon:g.jsx(eG,{}),tooltip:`${y("parameters.info")} (I)`,"aria-label":`${y("parameters.info")} (I)`,"data-selected":l,onClick:I})}),g.jsx(A3,{image:u,children:g.jsx(Ye,{icon:g.jsx(hp,{}),tooltip:`${y("parameters.deleteImage")} (Del)`,"aria-label":`${y("parameters.deleteImage")} (Del)`,isDisabled:!u||!n||t,style:{backgroundColor:"var(--btn-delete-image)"}})})]})};var Wke=fc({displayName:"EditIcon",path:g.jsxs("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:"2",children:[g.jsx("path",{d:"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}),g.jsx("path",{d:"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"})]})}),uG=fc({displayName:"ExternalLinkIcon",path:g.jsxs("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:"2",children:[g.jsx("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),g.jsx("path",{d:"M15 3h6v6"}),g.jsx("path",{d:"M10 14L21 3"})]})}),Uke=fc({displayName:"DeleteIcon",path:g.jsx("g",{fill:"currentColor",children:g.jsx("path",{d:"M19.452 7.5H4.547a.5.5 0 00-.5.545l1.287 14.136A2 2 0 007.326 24h9.347a2 2 0 001.992-1.819L19.95 8.045a.5.5 0 00-.129-.382.5.5 0 00-.369-.163zm-9.2 13a.75.75 0 01-1.5 0v-9a.75.75 0 011.5 0zm5 0a.75.75 0 01-1.5 0v-9a.75.75 0 011.5 0zM22 4h-4.75a.25.25 0 01-.25-.25V2.5A2.5 2.5 0 0014.5 0h-5A2.5 2.5 0 007 2.5v1.25a.25.25 0 01-.25.25H2a1 1 0 000 2h20a1 1 0 000-2zM9 3.75V2.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v1.25a.25.25 0 01-.25.25h-5.5A.25.25 0 019 3.75z"})})});function Vke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M245.09 327.74v-37.32c57.07 0 84.51 13.47 108.58 38.68 5.4 5.65 15 1.32 14.29-6.43-5.45-61.45-34.14-117.09-122.87-117.09v-37.32a8.32 8.32 0 00-14.05-6L146.58 242a8.2 8.2 0 000 11.94L231 333.71a8.32 8.32 0 0014.09-5.97z"}},{tag:"path",attr:{fill:"none",strokeMiterlimit:"10",strokeWidth:"32",d:"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z"}}]})(e)}const Jn=({label:e,value:t,onClick:n,isLink:r,labelPosition:i,withCopy:o=!1})=>g.jsxs(ke,{gap:2,children:[n&&g.jsx(si,{label:`Recall ${e}`,children:g.jsx(ls,{"aria-label":"Use this parameter",icon:g.jsx(Vke,{}),size:"xs",variant:"ghost",fontSize:20,onClick:n})}),o&&g.jsx(si,{label:`Copy ${e}`,children:g.jsx(ls,{"aria-label":`Copy ${e}`,icon:g.jsx(e0,{}),size:"xs",variant:"ghost",fontSize:14,onClick:()=>navigator.clipboard.writeText(t.toString())})}),g.jsxs(ke,{direction:i?"column":"row",children:[g.jsxs(Dt,{fontWeight:"semibold",whiteSpace:"pre-wrap",pr:2,children:[e,":"]}),r?g.jsxs(Nh,{href:t.toString(),isExternal:!0,wordBreak:"break-all",children:[t.toString()," ",g.jsx(uG,{mx:"2px"})]}):g.jsx(Dt,{overflowY:"scroll",wordBreak:"break-all",children:t.toString()})]})]}),Gke=(e,t)=>e.image.uuid===t.image.uuid,HE=S.memo(({image:e,styleClass:t})=>{var B,K;const n=Te(),r=zE();Je("esc",()=>{n(FU(!1))});const i=((B=e==null?void 0:e.metadata)==null?void 0:B.image)||{},o=e==null?void 0:e.dreamPrompt,{cfg_scale:a,fit:s,height:l,hires_fix:u,init_image_path:d,mask_image_path:h,orig_path:m,perlin:y,postprocessing:b,prompt:w,sampler:E,seamless:_,seed:k,steps:T,strength:L,threshold:O,type:D,variations:I,width:N}=i,W=JSON.stringify(e.metadata,null,2);return g.jsx("div",{className:`image-metadata-viewer ${t}`,children:g.jsxs(ke,{gap:1,direction:"column",width:"100%",children:[g.jsxs(ke,{gap:2,children:[g.jsx(Dt,{fontWeight:"semibold",children:"File:"}),g.jsxs(Nh,{href:e.url,isExternal:!0,maxW:"calc(100% - 3rem)",children:[e.url.length>64?e.url.substring(0,64).concat("..."):e.url,g.jsx(uG,{mx:"2px"})]})]}),Object.keys(i).length>0?g.jsxs(g.Fragment,{children:[D&&g.jsx(Jn,{label:"Generation type",value:D}),((K=e.metadata)==null?void 0:K.model_weights)&&g.jsx(Jn,{label:"Model",value:e.metadata.model_weights}),["esrgan","gfpgan"].includes(D)&&g.jsx(Jn,{label:"Original image",value:m}),w&&g.jsx(Jn,{label:"Prompt",labelPosition:"top",value:typeof w=="string"?w:Rm(w),onClick:()=>r(w)}),k!==void 0&&g.jsx(Jn,{label:"Seed",value:k,onClick:()=>n(p2(k))}),O!==void 0&&g.jsx(Jn,{label:"Noise Threshold",value:O,onClick:()=>n(bk(O))}),y!==void 0&&g.jsx(Jn,{label:"Perlin Noise",value:y,onClick:()=>n(vk(y))}),E&&g.jsx(Jn,{label:"Sampler",value:E,onClick:()=>n(dU(E))}),T&&g.jsx(Jn,{label:"Steps",value:T,onClick:()=>n(yk(T))}),a!==void 0&&g.jsx(Jn,{label:"CFG scale",value:a,onClick:()=>n(gk(a))}),I&&I.length>0&&g.jsx(Jn,{label:"Seed-weight pairs",value:_3(I),onClick:()=>n(hU(_3(I)))}),_&&g.jsx(Jn,{label:"Seamless",value:_,onClick:()=>n(fU(_))}),u&&g.jsx(Jn,{label:"High Resolution Optimization",value:u,onClick:()=>n(vU(u))}),N&&g.jsx(Jn,{label:"Width",value:N,onClick:()=>n(cS(N))}),l&&g.jsx(Jn,{label:"Height",value:l,onClick:()=>n(uS(l))}),d&&g.jsx(Jn,{label:"Initial image",value:d,isLink:!0,onClick:()=>n(y0(d))}),h&&g.jsx(Jn,{label:"Mask image",value:h,isLink:!0,onClick:()=>n(lU(h))}),D==="img2img"&&L&&g.jsx(Jn,{label:"Image to image strength",value:L,onClick:()=>n(mk(L))}),s&&g.jsx(Jn,{label:"Image to image fit",value:s,onClick:()=>n(pU(s))}),b&&b.length>0&&g.jsxs(g.Fragment,{children:[g.jsx(jh,{size:"sm",children:"Postprocessing"}),b.map((ne,z)=>{if(ne.type==="esrgan"){const{scale:$,strength:V,denoise_str:X}=ne;return g.jsxs(ke,{pl:"2rem",gap:1,direction:"column",children:[g.jsx(Dt,{size:"md",children:`${z+1}: Upscale (ESRGAN)`}),g.jsx(Jn,{label:"Scale",value:$,onClick:()=>n(yU($))}),g.jsx(Jn,{label:"Strength",value:V,onClick:()=>n(wk(V))}),X!==void 0&&g.jsx(Jn,{label:"Denoising strength",value:X,onClick:()=>n(Sk(X))})]},z)}else if(ne.type==="gfpgan"){const{strength:$}=ne;return g.jsxs(ke,{pl:"2rem",gap:1,direction:"column",children:[g.jsx(Dt,{size:"md",children:`${z+1}: Face restoration (GFPGAN)`}),g.jsx(Jn,{label:"Strength",value:$,onClick:()=>{n(k3($)),n(dS("gfpgan"))}})]},z)}else if(ne.type==="codeformer"){const{strength:$,fidelity:V}=ne;return g.jsxs(ke,{pl:"2rem",gap:1,direction:"column",children:[g.jsx(Dt,{size:"md",children:`${z+1}: Face restoration (Codeformer)`}),g.jsx(Jn,{label:"Strength",value:$,onClick:()=>{n(k3($)),n(dS("codeformer"))}}),V&&g.jsx(Jn,{label:"Fidelity",value:V,onClick:()=>{n(xk(V)),n(dS("codeformer"))}})]},z)}})]}),o&&g.jsx(Jn,{withCopy:!0,label:"Dream Prompt",value:o}),g.jsxs(ke,{gap:2,direction:"column",children:[g.jsxs(ke,{gap:2,children:[g.jsx(si,{label:"Copy metadata JSON",children:g.jsx(ls,{"aria-label":"Copy metadata JSON",icon:g.jsx(e0,{}),size:"xs",variant:"ghost",fontSize:14,onClick:()=>navigator.clipboard.writeText(W)})}),g.jsx(Dt,{fontWeight:"semibold",children:"Metadata JSON:"})]}),g.jsx("div",{className:"image-json-viewer",children:g.jsx("pre",{children:W})})]})]}):g.jsx(aH,{width:"100%",pt:10,children:g.jsx(Dt,{fontSize:"lg",fontWeight:"semibold",children:"No metadata available"})})]})})},Gke);HE.displayName="ImageMetadataViewer";const cG=lt([pp,fp],(e,t)=>{const{currentCategory:n,currentImage:r,intermediateImage:i}=e,{shouldShowImageDetails:o}=t,a=e.categories[r?r.category:"result"].images,s=a.findIndex(u=>{var d;return u.uuid===((d=e==null?void 0:e.currentImage)==null?void 0:d.uuid)}),l=a.length;return{imageToDisplay:i||r,isIntermediate:Boolean(i),viewerImageToDisplay:r,currentCategory:n,isOnFirstImage:s===0,isOnLastImage:!isNaN(s)&&s===l-1,shouldShowImageDetails:o,shouldShowPrevImageButton:s===0,shouldShowNextImageButton:!isNaN(s)&&s===l-1}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function qke(){const e=Te(),{isOnFirstImage:t,isOnLastImage:n,shouldShowImageDetails:r,imageToDisplay:i,isIntermediate:o}=le(cG),[a,s]=S.useState(!1),l=()=>{s(!0)},u=()=>{s(!1)},d=()=>{e(vE())},h=()=>{e(mE())};return g.jsxs("div",{className:"current-image-preview",children:[i&&g.jsx(jw,{src:i.url,width:i.width,height:i.height,style:{imageRendering:o?"pixelated":"initial"}}),!r&&g.jsxs("div",{className:"current-image-next-prev-buttons",children:[g.jsx("div",{className:"next-prev-button-trigger-area prev-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!t&&g.jsx(ls,{"aria-label":"Previous image",icon:g.jsx(ZV,{className:"next-prev-button"}),variant:"unstyled",onClick:d})}),g.jsx("div",{className:"next-prev-button-trigger-area next-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!n&&g.jsx(ls,{"aria-label":"Next image",icon:g.jsx(QV,{className:"next-prev-button"}),variant:"unstyled",onClick:h})})]}),r&&i&&g.jsx(HE,{image:i,styleClass:"current-image-metadata"})]})}var Kke=globalThis&&globalThis.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),ni=globalThis&&globalThis.__assign||function(){return ni=Object.assign||function(e){for(var t,n=1,r=arguments.length;n"u"?void 0:Number(r),maxHeight:typeof i>"u"?void 0:Number(i),minWidth:typeof o>"u"?void 0:Number(o),minHeight:typeof a>"u"?void 0:Number(a)}},t7e=["as","style","className","grid","snap","bounds","boundsByDirection","size","defaultSize","minWidth","minHeight","maxWidth","maxHeight","lockAspectRatio","lockAspectRatioExtraWidth","lockAspectRatioExtraHeight","enable","handleStyles","handleClasses","handleWrapperStyle","handleWrapperClass","children","onResizeStart","onResize","onResizeStop","handleComponent","scale","resizeRatio","snapGap"],jI="__resizable_base__",dG=function(e){Zke(t,e);function t(n){var r=e.call(this,n)||this;return r.ratio=1,r.resizable=null,r.parentLeft=0,r.parentTop=0,r.resizableLeft=0,r.resizableRight=0,r.resizableTop=0,r.resizableBottom=0,r.targetLeft=0,r.targetTop=0,r.appendBase=function(){if(!r.resizable||!r.window)return null;var i=r.parentNode;if(!i)return null;var o=r.window.document.createElement("div");return o.style.width="100%",o.style.height="100%",o.style.position="absolute",o.style.transform="scale(0, 0)",o.style.left="0",o.style.flex="0 0 100%",o.classList?o.classList.add(jI):o.className+=jI,i.appendChild(o),o},r.removeBase=function(i){var o=r.parentNode;o&&o.removeChild(i)},r.ref=function(i){i&&(r.resizable=i)},r.state={isResizing:!1,width:typeof(r.propsSize&&r.propsSize.width)>"u"?"auto":r.propsSize&&r.propsSize.width,height:typeof(r.propsSize&&r.propsSize.height)>"u"?"auto":r.propsSize&&r.propsSize.height,direction:"right",original:{x:0,y:0,width:0,height:0},backgroundStyle:{height:"100%",width:"100%",backgroundColor:"rgba(0,0,0,0)",cursor:"auto",opacity:0,position:"fixed",zIndex:9999,top:"0",left:"0",bottom:"0",right:"0"},flexBasis:void 0},r.onResizeStart=r.onResizeStart.bind(r),r.onMouseMove=r.onMouseMove.bind(r),r.onMouseUp=r.onMouseUp.bind(r),r}return Object.defineProperty(t.prototype,"parentNode",{get:function(){return this.resizable?this.resizable.parentNode:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"window",{get:function(){return!this.resizable||!this.resizable.ownerDocument?null:this.resizable.ownerDocument.defaultView},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"propsSize",{get:function(){return this.props.size||this.props.defaultSize||Qke},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"size",{get:function(){var n=0,r=0;if(this.resizable&&this.window){var i=this.resizable.offsetWidth,o=this.resizable.offsetHeight,a=this.resizable.style.position;a!=="relative"&&(this.resizable.style.position="relative"),n=this.resizable.style.width!=="auto"?this.resizable.offsetWidth:i,r=this.resizable.style.height!=="auto"?this.resizable.offsetHeight:o,this.resizable.style.position=a}return{width:n,height:r}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"sizeStyle",{get:function(){var n=this,r=this.props.size,i=function(s){if(typeof n.state[s]>"u"||n.state[s]==="auto")return"auto";if(n.propsSize&&n.propsSize[s]&&n.propsSize[s].toString().endsWith("%")){if(n.state[s].toString().endsWith("%"))return n.state[s].toString();var l=n.getParentSize(),u=Number(n.state[s].toString().replace("px","")),d=u/l[s]*100;return d+"%"}return QC(n.state[s])},o=r&&typeof r.width<"u"&&!this.state.isResizing?QC(r.width):i("width"),a=r&&typeof r.height<"u"&&!this.state.isResizing?QC(r.height):i("height");return{width:o,height:a}},enumerable:!1,configurable:!0}),t.prototype.getParentSize=function(){if(!this.parentNode)return this.window?{width:this.window.innerWidth,height:this.window.innerHeight}:{width:0,height:0};var n=this.appendBase();if(!n)return{width:0,height:0};var r=!1,i=this.parentNode.style.flexWrap;i!=="wrap"&&(r=!0,this.parentNode.style.flexWrap="wrap"),n.style.position="relative",n.style.minWidth="100%",n.style.minHeight="100%";var o={width:n.offsetWidth,height:n.offsetHeight};return r&&(this.parentNode.style.flexWrap=i),this.removeBase(n),o},t.prototype.bindEvents=function(){this.window&&(this.window.addEventListener("mouseup",this.onMouseUp),this.window.addEventListener("mousemove",this.onMouseMove),this.window.addEventListener("mouseleave",this.onMouseUp),this.window.addEventListener("touchmove",this.onMouseMove,{capture:!0,passive:!1}),this.window.addEventListener("touchend",this.onMouseUp))},t.prototype.unbindEvents=function(){this.window&&(this.window.removeEventListener("mouseup",this.onMouseUp),this.window.removeEventListener("mousemove",this.onMouseMove),this.window.removeEventListener("mouseleave",this.onMouseUp),this.window.removeEventListener("touchmove",this.onMouseMove,!0),this.window.removeEventListener("touchend",this.onMouseUp))},t.prototype.componentDidMount=function(){if(!(!this.resizable||!this.window)){var n=this.window.getComputedStyle(this.resizable);this.setState({width:this.state.width||this.size.width,height:this.state.height||this.size.height,flexBasis:n.flexBasis!=="auto"?n.flexBasis:void 0})}},t.prototype.componentWillUnmount=function(){this.window&&this.unbindEvents()},t.prototype.createSizeForCssProperty=function(n,r){var i=this.propsSize&&this.propsSize[r];return this.state[r]==="auto"&&this.state.original[r]===n&&(typeof i>"u"||i==="auto")?"auto":n},t.prototype.calculateNewMaxFromBoundary=function(n,r){var i=this.props.boundsByDirection,o=this.state.direction,a=i&&Ig("left",o),s=i&&Ig("top",o),l,u;if(this.props.bounds==="parent"){var d=this.parentNode;d&&(l=a?this.resizableRight-this.parentLeft:d.offsetWidth+(this.parentLeft-this.resizableLeft),u=s?this.resizableBottom-this.parentTop:d.offsetHeight+(this.parentTop-this.resizableTop))}else this.props.bounds==="window"?this.window&&(l=a?this.resizableRight:this.window.innerWidth-this.resizableLeft,u=s?this.resizableBottom:this.window.innerHeight-this.resizableTop):this.props.bounds&&(l=a?this.resizableRight-this.targetLeft:this.props.bounds.offsetWidth+(this.targetLeft-this.resizableLeft),u=s?this.resizableBottom-this.targetTop:this.props.bounds.offsetHeight+(this.targetTop-this.resizableTop));return l&&Number.isFinite(l)&&(n=n&&n"u"?10:o.width,h=typeof i.width>"u"||i.width<0?n:i.width,m=typeof o.height>"u"?10:o.height,y=typeof i.height>"u"||i.height<0?r:i.height,b=l||0,w=u||0;if(s){var E=(m-b)*this.ratio+w,_=(y-b)*this.ratio+w,k=(d-w)/this.ratio+b,T=(h-w)/this.ratio+b,L=Math.max(d,E),O=Math.min(h,_),D=Math.max(m,k),I=Math.min(y,T);n=yx(n,L,O),r=yx(r,D,I)}else n=yx(n,d,h),r=yx(r,m,y);return{newWidth:n,newHeight:r}},t.prototype.setBoundingClientRect=function(){if(this.props.bounds==="parent"){var n=this.parentNode;if(n){var r=n.getBoundingClientRect();this.parentLeft=r.left,this.parentTop=r.top}}if(this.props.bounds&&typeof this.props.bounds!="string"){var i=this.props.bounds.getBoundingClientRect();this.targetLeft=i.left,this.targetTop=i.top}if(this.resizable){var o=this.resizable.getBoundingClientRect(),a=o.left,s=o.top,l=o.right,u=o.bottom;this.resizableLeft=a,this.resizableRight=l,this.resizableTop=s,this.resizableBottom=u}},t.prototype.onResizeStart=function(n,r){if(!(!this.resizable||!this.window)){var i=0,o=0;if(n.nativeEvent&&Jke(n.nativeEvent)?(i=n.nativeEvent.clientX,o=n.nativeEvent.clientY):n.nativeEvent&&bx(n.nativeEvent)&&(i=n.nativeEvent.touches[0].clientX,o=n.nativeEvent.touches[0].clientY),this.props.onResizeStart&&this.resizable){var a=this.props.onResizeStart(n,r,this.resizable);if(a===!1)return}this.props.size&&(typeof this.props.size.height<"u"&&this.props.size.height!==this.state.height&&this.setState({height:this.props.size.height}),typeof this.props.size.width<"u"&&this.props.size.width!==this.state.width&&this.setState({width:this.props.size.width})),this.ratio=typeof this.props.lockAspectRatio=="number"?this.props.lockAspectRatio:this.size.width/this.size.height;var s,l=this.window.getComputedStyle(this.resizable);if(l.flexBasis!=="auto"){var u=this.parentNode;if(u){var d=this.window.getComputedStyle(u).flexDirection;this.flexDir=d.startsWith("row")?"row":"column",s=l.flexBasis}}this.setBoundingClientRect(),this.bindEvents();var h={original:{x:i,y:o,width:this.size.width,height:this.size.height},isResizing:!0,backgroundStyle:Ol(Ol({},this.state.backgroundStyle),{cursor:this.window.getComputedStyle(n.target).cursor||"auto"}),direction:r,flexBasis:s};this.setState(h)}},t.prototype.onMouseMove=function(n){var r=this;if(!(!this.state.isResizing||!this.resizable||!this.window)){if(this.window.TouchEvent&&bx(n))try{n.preventDefault(),n.stopPropagation()}catch{}var i=this.props,o=i.maxWidth,a=i.maxHeight,s=i.minWidth,l=i.minHeight,u=bx(n)?n.touches[0].clientX:n.clientX,d=bx(n)?n.touches[0].clientY:n.clientY,h=this.state,m=h.direction,y=h.original,b=h.width,w=h.height,E=this.getParentSize(),_=e7e(E,this.window.innerWidth,this.window.innerHeight,o,a,s,l);o=_.maxWidth,a=_.maxHeight,s=_.minWidth,l=_.minHeight;var k=this.calculateNewSizeFromDirection(u,d),T=k.newHeight,L=k.newWidth,O=this.calculateNewMaxFromBoundary(o,a);this.props.snap&&this.props.snap.x&&(L=DI(L,this.props.snap.x,this.props.snapGap)),this.props.snap&&this.props.snap.y&&(T=DI(T,this.props.snap.y,this.props.snapGap));var D=this.calculateNewSizeFromAspectRatio(L,T,{width:O.maxWidth,height:O.maxHeight},{width:s,height:l});if(L=D.newWidth,T=D.newHeight,this.props.grid){var I=II(L,this.props.grid[0]),N=II(T,this.props.grid[1]),W=this.props.snapGap||0;L=W===0||Math.abs(I-L)<=W?I:L,T=W===0||Math.abs(N-T)<=W?N:T}var B={width:L-y.width,height:T-y.height};if(b&&typeof b=="string"){if(b.endsWith("%")){var K=L/E.width*100;L=K+"%"}else if(b.endsWith("vw")){var ne=L/this.window.innerWidth*100;L=ne+"vw"}else if(b.endsWith("vh")){var z=L/this.window.innerHeight*100;L=z+"vh"}}if(w&&typeof w=="string"){if(w.endsWith("%")){var K=T/E.height*100;T=K+"%"}else if(w.endsWith("vw")){var ne=T/this.window.innerWidth*100;T=ne+"vw"}else if(w.endsWith("vh")){var z=T/this.window.innerHeight*100;T=z+"vh"}}var $={width:this.createSizeForCssProperty(L,"width"),height:this.createSizeForCssProperty(T,"height")};this.flexDir==="row"?$.flexBasis=$.width:this.flexDir==="column"&&($.flexBasis=$.height),Xs.flushSync(function(){r.setState($)}),this.props.onResize&&this.props.onResize(n,m,this.resizable,B)}},t.prototype.onMouseUp=function(n){var r=this.state,i=r.isResizing,o=r.direction,a=r.original;if(!(!i||!this.resizable)){var s={width:this.size.width-a.width,height:this.size.height-a.height};this.props.onResizeStop&&this.props.onResizeStop(n,o,this.resizable,s),this.props.size&&this.setState(this.props.size),this.unbindEvents(),this.setState({isResizing:!1,backgroundStyle:Ol(Ol({},this.state.backgroundStyle),{cursor:"auto"})})}},t.prototype.updateSize=function(n){this.setState({width:n.width,height:n.height})},t.prototype.renderResizer=function(){var n=this,r=this.props,i=r.enable,o=r.handleStyles,a=r.handleClasses,s=r.handleWrapperStyle,l=r.handleWrapperClass,u=r.handleComponent;if(!i)return null;var d=Object.keys(i).map(function(h){return i[h]!==!1?S.createElement(Xke,{key:h,direction:h,onResizeStart:n.onResizeStart,replaceStyles:o&&o[h],className:a&&a[h]},u&&u[h]?u[h]:null):null});return S.createElement("div",{className:l,style:s},d)},t.prototype.render=function(){var n=this,r=Object.keys(this.props).reduce(function(a,s){return t7e.indexOf(s)!==-1||(a[s]=n.props[s]),a},{}),i=Ol(Ol(Ol({position:"relative",userSelect:this.state.isResizing?"none":"auto"},this.props.style),this.sizeStyle),{maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight,minWidth:this.props.minWidth,minHeight:this.props.minHeight,boxSizing:"border-box",flexShrink:0});this.state.flexBasis&&(i.flexBasis=this.state.flexBasis);var o=this.props.as||"div";return S.createElement(o,Ol({ref:this.ref,style:i,className:this.props.className},r),this.state.isResizing&&S.createElement("div",{style:this.state.backgroundStyle}),this.props.children,this.renderResizer())},t.defaultProps={as:"div",onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},enable:{top:!0,right:!0,bottom:!0,left:!0,topRight:!0,bottomRight:!0,bottomLeft:!0,topLeft:!0},style:{},grid:[1,1],lockAspectRatio:!1,lockAspectRatioExtraWidth:0,lockAspectRatioExtraHeight:0,scale:1,resizeRatio:1,snapGap:0},t}(S.PureComponent);const Gn=e=>{const{label:t,styleClass:n,...r}=e;return g.jsx(dz,{className:`invokeai__checkbox ${n}`,...r,children:t})};function fG(e){return ut({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 0 1 1.013.16l3.134-3.133a2.772 2.772 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146z"}}]})(e)}function hG(e){return ut({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 0 1 1.013.16l3.134-3.133a2.772 2.772 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146zm.122 2.112v-.002.002zm0-.002v.002a.5.5 0 0 1-.122.51L6.293 6.878a.5.5 0 0 1-.511.12H5.78l-.014-.004a4.507 4.507 0 0 0-.288-.076 4.922 4.922 0 0 0-.765-.116c-.422-.028-.836.008-1.175.15l5.51 5.509c.141-.34.177-.753.149-1.175a4.924 4.924 0 0 0-.192-1.054l-.004-.013v-.001a.5.5 0 0 1 .12-.512l3.536-3.535a.5.5 0 0 1 .532-.115l.096.022c.087.017.208.034.344.034.114 0 .23-.011.343-.04L9.927 2.028c-.029.113-.04.23-.04.343a1.779 1.779 0 0 0 .062.46z"}}]})(e)}function n7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M16.5 9c-.42 0-.83.04-1.24.11L1.01 3 1 10l9 2-9 2 .01 7 8.07-3.46C9.59 21.19 12.71 24 16.5 24c4.14 0 7.5-3.36 7.5-7.5S20.64 9 16.5 9zm0 13c-3.03 0-5.5-2.47-5.5-5.5s2.47-5.5 5.5-5.5 5.5 2.47 5.5 5.5-2.47 5.5-5.5 5.5z"}},{tag:"path",attr:{d:"M18.27 14.03l-1.77 1.76-1.77-1.76-.7.7 1.76 1.77-1.76 1.77.7.7 1.77-1.76 1.77 1.76.7-.7-1.76-1.77 1.76-1.77z"}}]})(e)}function r7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M20 19.59V8l-6-6H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c.45 0 .85-.15 1.19-.4l-4.43-4.43c-.8.52-1.74.83-2.76.83-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5c0 1.02-.31 1.96-.83 2.75L20 19.59zM9 13c0 1.66 1.34 3 3 3s3-1.34 3-3-1.34-3-3-3-3 1.34-3 3z"}}]})(e)}function i7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"}}]})(e)}function o7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0V0z"}},{tag:"path",attr:{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58a.49.49 0 00.12-.61l-1.92-3.32a.488.488 0 00-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.484.484 0 00-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58a.49.49 0 00-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61l-2.01-1.58zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6z"}}]})(e)}function a7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M15 21h2v-2h-2v2zm4-12h2V7h-2v2zM3 5v14c0 1.1.9 2 2 2h4v-2H5V5h4V3H5c-1.1 0-2 .9-2 2zm16-2v2h2c0-1.1-.9-2-2-2zm-8 20h2V1h-2v22zm8-6h2v-2h-2v2zM15 5h2V3h-2v2zm4 8h2v-2h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2z"}}]})(e)}function pG(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-11-4l2.03 2.71L16 11l4 5H8l3-4zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z"}}]})(e)}function s7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"}}]})(e)}function l7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M7 10l5 5 5-5z"}}]})(e)}function u7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M7 14l5-5 5 5z"}}]})(e)}function c7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"}}]})(e)}function d7e(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function f7e(e,t){e.classList?e.classList.add(t):d7e(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function NI(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function h7e(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=NI(e.className,t):e.setAttribute("class",NI(e.className&&e.className.baseVal||"",t))}const $I={disabled:!1},gG=Ke.createContext(null);var mG=function(t){return t.scrollTop},S1="unmounted",ph="exited",gh="entering",Fg="entered",Gk="exiting",mc=function(e){b8(t,e);function t(r,i){var o;o=e.call(this,r,i)||this;var a=i,s=a&&!a.isMounting?r.enter:r.appear,l;return o.appearStatus=null,r.in?s?(l=ph,o.appearStatus=gh):l=Fg:r.unmountOnExit||r.mountOnEnter?l=S1:l=ph,o.state={status:l},o.nextCallback=null,o}t.getDerivedStateFromProps=function(i,o){var a=i.in;return a&&o.status===S1?{status:ph}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(i){var o=null;if(i!==this.props){var a=this.state.status;this.props.in?a!==gh&&a!==Fg&&(o=gh):(a===gh||a===Fg)&&(o=Gk)}this.updateStatus(!1,o)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var i=this.props.timeout,o,a,s;return o=a=s=i,i!=null&&typeof i!="number"&&(o=i.exit,a=i.enter,s=i.appear!==void 0?i.appear:a),{exit:o,enter:a,appear:s}},n.updateStatus=function(i,o){if(i===void 0&&(i=!1),o!==null)if(this.cancelNextCallback(),o===gh){if(this.props.unmountOnExit||this.props.mountOnEnter){var a=this.props.nodeRef?this.props.nodeRef.current:Ob.findDOMNode(this);a&&mG(a)}this.performEnter(i)}else this.performExit();else this.props.unmountOnExit&&this.state.status===ph&&this.setState({status:S1})},n.performEnter=function(i){var o=this,a=this.props.enter,s=this.context?this.context.isMounting:i,l=this.props.nodeRef?[s]:[Ob.findDOMNode(this),s],u=l[0],d=l[1],h=this.getTimeouts(),m=s?h.appear:h.enter;if(!i&&!a||$I.disabled){this.safeSetState({status:Fg},function(){o.props.onEntered(u)});return}this.props.onEnter(u,d),this.safeSetState({status:gh},function(){o.props.onEntering(u,d),o.onTransitionEnd(m,function(){o.safeSetState({status:Fg},function(){o.props.onEntered(u,d)})})})},n.performExit=function(){var i=this,o=this.props.exit,a=this.getTimeouts(),s=this.props.nodeRef?void 0:Ob.findDOMNode(this);if(!o||$I.disabled){this.safeSetState({status:ph},function(){i.props.onExited(s)});return}this.props.onExit(s),this.safeSetState({status:Gk},function(){i.props.onExiting(s),i.onTransitionEnd(a.exit,function(){i.safeSetState({status:ph},function(){i.props.onExited(s)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(i,o){o=this.setNextCallback(o),this.setState(i,o)},n.setNextCallback=function(i){var o=this,a=!0;return this.nextCallback=function(s){a&&(a=!1,o.nextCallback=null,i(s))},this.nextCallback.cancel=function(){a=!1},this.nextCallback},n.onTransitionEnd=function(i,o){this.setNextCallback(o);var a=this.props.nodeRef?this.props.nodeRef.current:Ob.findDOMNode(this),s=i==null&&!this.props.addEndListener;if(!a||s){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var l=this.props.nodeRef?[this.nextCallback]:[a,this.nextCallback],u=l[0],d=l[1];this.props.addEndListener(u,d)}i!=null&&setTimeout(this.nextCallback,i)},n.render=function(){var i=this.state.status;if(i===S1)return null;var o=this.props,a=o.children;o.in,o.mountOnEnter,o.unmountOnExit,o.appear,o.enter,o.exit,o.timeout,o.addEndListener,o.onEnter,o.onEntering,o.onEntered,o.onExit,o.onExiting,o.onExited,o.nodeRef;var s=m8(o,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return Ke.createElement(gG.Provider,{value:null},typeof a=="function"?a(i,s):Ke.cloneElement(Ke.Children.only(a),s))},t}(Ke.Component);mc.contextType=gG;mc.propTypes={};function Dg(){}mc.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Dg,onEntering:Dg,onEntered:Dg,onExit:Dg,onExiting:Dg,onExited:Dg};mc.UNMOUNTED=S1;mc.EXITED=ph;mc.ENTERING=gh;mc.ENTERED=Fg;mc.EXITING=Gk;const p7e=mc;var g7e=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return f7e(t,r)})},JC=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return h7e(t,r)})},WE=function(e){b8(t,e);function t(){for(var r,i=arguments.length,o=new Array(i),a=0;ab,Object.values(b));return S.createElement(w.Provider,{value:E},y)}function d(h,m){const y=(m==null?void 0:m[e][l])||s,b=S.useContext(y);if(b)return b;if(a!==void 0)return a;throw new Error(`\`${h}\` must be used within \`${o}\``)}return u.displayName=o+"Provider",[u,d]}const i=()=>{const o=n.map(a=>S.createContext(a));return function(s){const l=(s==null?void 0:s[e])||o;return S.useMemo(()=>({[`__scope${e}`]:{...s,[e]:l}}),[s,l])}};return i.scopeName=e,[r,m7e(i,...t)]}function m7e(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(o){const a=r.reduce((s,{useScope:l,scopeName:u})=>{const h=l(o)[`__scope${u}`];return{...s,...h}},{});return S.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}function v7e(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function yG(...e){return t=>e.forEach(n=>v7e(n,t))}function ds(...e){return S.useCallback(yG(...e),e)}const Fy=S.forwardRef((e,t)=>{const{children:n,...r}=e,i=S.Children.toArray(n),o=i.find(b7e);if(o){const a=o.props.children,s=i.map(l=>l===o?S.Children.count(a)>1?S.Children.only(null):S.isValidElement(a)?a.props.children:null:l);return S.createElement(qk,pn({},r,{ref:t}),S.isValidElement(a)?S.cloneElement(a,void 0,s):null)}return S.createElement(qk,pn({},r,{ref:t}),n)});Fy.displayName="Slot";const qk=S.forwardRef((e,t)=>{const{children:n,...r}=e;return S.isValidElement(n)?S.cloneElement(n,{...x7e(r,n.props),ref:yG(t,n.ref)}):S.Children.count(n)>1?S.Children.only(null):null});qk.displayName="SlotClone";const y7e=({children:e})=>S.createElement(S.Fragment,null,e);function b7e(e){return S.isValidElement(e)&&e.type===y7e}function x7e(e,t){const n={...t};for(const r in t){const i=e[r],o=t[r];/^on[A-Z]/.test(r)?i&&o?n[r]=(...s)=>{o(...s),i(...s)}:i&&(n[r]=i):r==="style"?n[r]={...i,...o}:r==="className"&&(n[r]=[i,o].filter(Boolean).join(" "))}return{...e,...n}}const S7e=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],sc=S7e.reduce((e,t)=>{const n=S.forwardRef((r,i)=>{const{asChild:o,...a}=r,s=o?Fy:t;return S.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),S.createElement(s,pn({},a,{ref:i}))});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function bG(e,t){e&&Xs.flushSync(()=>e.dispatchEvent(t))}function xG(e){const t=e+"CollectionProvider",[n,r]=b2(t),[i,o]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=y=>{const{scope:b,children:w}=y,E=Ke.useRef(null),_=Ke.useRef(new Map).current;return Ke.createElement(i,{scope:b,itemMap:_,collectionRef:E},w)},s=e+"CollectionSlot",l=Ke.forwardRef((y,b)=>{const{scope:w,children:E}=y,_=o(s,w),k=ds(b,_.collectionRef);return Ke.createElement(Fy,{ref:k},E)}),u=e+"CollectionItemSlot",d="data-radix-collection-item",h=Ke.forwardRef((y,b)=>{const{scope:w,children:E,..._}=y,k=Ke.useRef(null),T=ds(b,k),L=o(u,w);return Ke.useEffect(()=>(L.itemMap.set(k,{ref:k,..._}),()=>void L.itemMap.delete(k))),Ke.createElement(Fy,{[d]:"",ref:T},E)});function m(y){const b=o(e+"CollectionConsumer",y);return Ke.useCallback(()=>{const E=b.collectionRef.current;if(!E)return[];const _=Array.from(E.querySelectorAll(`[${d}]`));return Array.from(b.itemMap.values()).sort((L,O)=>_.indexOf(L.ref.current)-_.indexOf(O.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:a,Slot:l,ItemSlot:h},m,r]}const w7e=S.createContext(void 0);function SG(e){const t=S.useContext(w7e);return e||t||"ltr"}function Js(e){const t=S.useRef(e);return S.useEffect(()=>{t.current=e}),S.useMemo(()=>(...n)=>{var r;return(r=t.current)===null||r===void 0?void 0:r.call(t,...n)},[])}function C7e(e,t=globalThis==null?void 0:globalThis.document){const n=Js(e);S.useEffect(()=>{const r=i=>{i.key==="Escape"&&n(i)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const Kk="dismissableLayer.update",_7e="dismissableLayer.pointerDownOutside",k7e="dismissableLayer.focusOutside";let FI;const E7e=S.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),P7e=S.forwardRef((e,t)=>{var n;const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:i,onPointerDownOutside:o,onFocusOutside:a,onInteractOutside:s,onDismiss:l,...u}=e,d=S.useContext(E7e),[h,m]=S.useState(null),y=(n=h==null?void 0:h.ownerDocument)!==null&&n!==void 0?n:globalThis==null?void 0:globalThis.document,[,b]=S.useState({}),w=ds(t,N=>m(N)),E=Array.from(d.layers),[_]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),k=E.indexOf(_),T=h?E.indexOf(h):-1,L=d.layersWithOutsidePointerEventsDisabled.size>0,O=T>=k,D=T7e(N=>{const W=N.target,B=[...d.branches].some(K=>K.contains(W));!O||B||(o==null||o(N),s==null||s(N),N.defaultPrevented||l==null||l())},y),I=M7e(N=>{const W=N.target;[...d.branches].some(K=>K.contains(W))||(a==null||a(N),s==null||s(N),N.defaultPrevented||l==null||l())},y);return C7e(N=>{T===d.layers.size-1&&(i==null||i(N),!N.defaultPrevented&&l&&(N.preventDefault(),l()))},y),S.useEffect(()=>{if(h)return r&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(FI=y.body.style.pointerEvents,y.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(h)),d.layers.add(h),BI(),()=>{r&&d.layersWithOutsidePointerEventsDisabled.size===1&&(y.body.style.pointerEvents=FI)}},[h,y,r,d]),S.useEffect(()=>()=>{h&&(d.layers.delete(h),d.layersWithOutsidePointerEventsDisabled.delete(h),BI())},[h,d]),S.useEffect(()=>{const N=()=>b({});return document.addEventListener(Kk,N),()=>document.removeEventListener(Kk,N)},[]),S.createElement(sc.div,pn({},u,{ref:w,style:{pointerEvents:L?O?"auto":"none":void 0,...e.style},onFocusCapture:Kn(e.onFocusCapture,I.onFocusCapture),onBlurCapture:Kn(e.onBlurCapture,I.onBlurCapture),onPointerDownCapture:Kn(e.onPointerDownCapture,D.onPointerDownCapture)}))});function T7e(e,t=globalThis==null?void 0:globalThis.document){const n=Js(e),r=S.useRef(!1),i=S.useRef(()=>{});return S.useEffect(()=>{const o=s=>{if(s.target&&!r.current){let u=function(){wG(_7e,n,l,{discrete:!0})};const l={originalEvent:s};s.pointerType==="touch"?(t.removeEventListener("click",i.current),i.current=u,t.addEventListener("click",i.current,{once:!0})):u()}r.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",o)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",o),t.removeEventListener("click",i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function M7e(e,t=globalThis==null?void 0:globalThis.document){const n=Js(e),r=S.useRef(!1);return S.useEffect(()=>{const i=o=>{o.target&&!r.current&&wG(k7e,n,{originalEvent:o},{discrete:!1})};return t.addEventListener("focusin",i),()=>t.removeEventListener("focusin",i)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function BI(){const e=new CustomEvent(Kk);document.dispatchEvent(e)}function wG(e,t,n,{discrete:r}){const i=n.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?bG(i,o):i.dispatchEvent(o)}let e6=0;function L7e(){S.useEffect(()=>{var e,t;const n=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",(e=n[0])!==null&&e!==void 0?e:zI()),document.body.insertAdjacentElement("beforeend",(t=n[1])!==null&&t!==void 0?t:zI()),e6++,()=>{e6===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(r=>r.remove()),e6--}},[])}function zI(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.cssText="outline: none; opacity: 0; position: fixed; pointer-events: none",e}const t6="focusScope.autoFocusOnMount",n6="focusScope.autoFocusOnUnmount",HI={bubbles:!1,cancelable:!0},A7e=S.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:o,...a}=e,[s,l]=S.useState(null),u=Js(i),d=Js(o),h=S.useRef(null),m=ds(t,w=>l(w)),y=S.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;S.useEffect(()=>{if(r){let w=function(_){if(y.paused||!s)return;const k=_.target;s.contains(k)?h.current=k:mh(h.current,{select:!0})},E=function(_){y.paused||!s||s.contains(_.relatedTarget)||mh(h.current,{select:!0})};return document.addEventListener("focusin",w),document.addEventListener("focusout",E),()=>{document.removeEventListener("focusin",w),document.removeEventListener("focusout",E)}}},[r,s,y.paused]),S.useEffect(()=>{if(s){UI.add(y);const w=document.activeElement;if(!s.contains(w)){const _=new CustomEvent(t6,HI);s.addEventListener(t6,u),s.dispatchEvent(_),_.defaultPrevented||(O7e(N7e(CG(s)),{select:!0}),document.activeElement===w&&mh(s))}return()=>{s.removeEventListener(t6,u),setTimeout(()=>{const _=new CustomEvent(n6,HI);s.addEventListener(n6,d),s.dispatchEvent(_),_.defaultPrevented||mh(w??document.body,{select:!0}),s.removeEventListener(n6,d),UI.remove(y)},0)}}},[s,u,d,y]);const b=S.useCallback(w=>{if(!n&&!r||y.paused)return;const E=w.key==="Tab"&&!w.altKey&&!w.ctrlKey&&!w.metaKey,_=document.activeElement;if(E&&_){const k=w.currentTarget,[T,L]=R7e(k);T&&L?!w.shiftKey&&_===L?(w.preventDefault(),n&&mh(T,{select:!0})):w.shiftKey&&_===T&&(w.preventDefault(),n&&mh(L,{select:!0})):_===k&&w.preventDefault()}},[n,r,y.paused]);return S.createElement(sc.div,pn({tabIndex:-1},a,{ref:m,onKeyDown:b}))});function O7e(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(mh(r,{select:t}),document.activeElement!==n)return}function R7e(e){const t=CG(e),n=WI(t,e),r=WI(t.reverse(),e);return[n,r]}function CG(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function WI(e,t){for(const n of e)if(!I7e(n,{upTo:t}))return n}function I7e(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function D7e(e){return e instanceof HTMLInputElement&&"select"in e}function mh(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&D7e(e)&&t&&e.select()}}const UI=j7e();function j7e(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=VI(e,t),e.unshift(t)},remove(t){var n;e=VI(e,t),(n=e[0])===null||n===void 0||n.resume()}}}function VI(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function N7e(e){return e.filter(t=>t.tagName!=="A")}const Pd=Boolean(globalThis==null?void 0:globalThis.document)?S.useLayoutEffect:()=>{},$7e=p6["useId".toString()]||(()=>{});let F7e=0;function B7e(e){const[t,n]=S.useState($7e());return Pd(()=>{e||n(r=>r??String(F7e++))},[e]),e||(t?`radix-${t}`:"")}function gp(e){return e.split("-")[0]}function x2(e){return e.split("-")[1]}function w0(e){return["top","bottom"].includes(gp(e))?"x":"y"}function UE(e){return e==="y"?"height":"width"}function GI(e,t,n){let{reference:r,floating:i}=e;const o=r.x+r.width/2-i.width/2,a=r.y+r.height/2-i.height/2,s=w0(t),l=UE(s),u=r[l]/2-i[l]/2,d=s==="x";let h;switch(gp(t)){case"top":h={x:o,y:r.y-i.height};break;case"bottom":h={x:o,y:r.y+r.height};break;case"right":h={x:r.x+r.width,y:a};break;case"left":h={x:r.x-i.width,y:a};break;default:h={x:r.x,y:r.y}}switch(x2(t)){case"start":h[s]-=u*(n&&d?-1:1);break;case"end":h[s]+=u*(n&&d?-1:1)}return h}const z7e=async(e,t,n)=>{const{placement:r="bottom",strategy:i="absolute",middleware:o=[],platform:a}=n,s=await(a.isRTL==null?void 0:a.isRTL(t));let l=await a.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=GI(l,r,s),h=r,m={},y=0;for(let b=0;b({name:"arrow",options:e,async fn(t){const{element:n,padding:r=0}=e??{},{x:i,y:o,placement:a,rects:s,platform:l}=t;if(n==null)return{};const u=_G(r),d={x:i,y:o},h=w0(a),m=x2(a),y=UE(h),b=await l.getDimensions(n),w=h==="y"?"top":"left",E=h==="y"?"bottom":"right",_=s.reference[y]+s.reference[h]-d[h]-s.floating[y],k=d[h]-s.reference[h],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(n));let L=T?h==="y"?T.clientHeight||0:T.clientWidth||0:0;L===0&&(L=s.floating[y]);const O=_/2-k/2,D=u[w],I=L-b[y]-u[E],N=L/2-b[y]/2+O,W=Yk(D,N,I),B=(m==="start"?u[w]:u[E])>0&&N!==W&&s.reference[y]<=s.floating[y];return{[h]:d[h]-(B?NW7e[t])}function U7e(e,t,n){n===void 0&&(n=!1);const r=x2(e),i=w0(e),o=UE(i);let a=i==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[o]>t.floating[o]&&(a=R3(a)),{main:a,cross:R3(a)}}const V7e={start:"end",end:"start"};function KI(e){return e.replace(/start|end/g,t=>V7e[t])}const kG=["top","right","bottom","left"];kG.reduce((e,t)=>e.concat(t,t+"-start",t+"-end"),[]);const G7e=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n;const{placement:r,middlewareData:i,rects:o,initialPlacement:a,platform:s,elements:l}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:h,fallbackStrategy:m="bestFit",flipAlignment:y=!0,...b}=e,w=gp(r),E=h||(w===a||!y?[R3(a)]:function(N){const W=R3(N);return[KI(N),W,KI(W)]}(a)),_=[a,...E],k=await By(t,b),T=[];let L=((n=i.flip)==null?void 0:n.overflows)||[];if(u&&T.push(k[w]),d){const{main:N,cross:W}=U7e(r,o,await(s.isRTL==null?void 0:s.isRTL(l.floating)));T.push(k[N],k[W])}if(L=[...L,{placement:r,overflows:T}],!T.every(N=>N<=0)){var O,D;const N=((O=(D=i.flip)==null?void 0:D.index)!=null?O:0)+1,W=_[N];if(W)return{data:{index:N,overflows:L},reset:{placement:W}};let B="bottom";switch(m){case"bestFit":{var I;const K=(I=L.map(ne=>[ne,ne.overflows.filter(z=>z>0).reduce((z,$)=>z+$,0)]).sort((ne,z)=>ne[1]-z[1])[0])==null?void 0:I[0].placement;K&&(B=K);break}case"initialPlacement":B=a}if(r!==B)return{reset:{placement:B}}}return{}}}};function YI(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function XI(e){return kG.some(t=>e[t]>=0)}const q7e=function(e){let{strategy:t="referenceHidden",...n}=e===void 0?{}:e;return{name:"hide",async fn(r){const{rects:i}=r;switch(t){case"referenceHidden":{const o=YI(await By(r,{...n,elementContext:"reference"}),i.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:XI(o)}}}case"escaped":{const o=YI(await By(r,{...n,altBoundary:!0}),i.floating);return{data:{escapedOffsets:o,escaped:XI(o)}}}default:return{}}}}},K7e=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){const{x:n,y:r}=t,i=await async function(o,a){const{placement:s,platform:l,elements:u}=o,d=await(l.isRTL==null?void 0:l.isRTL(u.floating)),h=gp(s),m=x2(s),y=w0(s)==="x",b=["left","top"].includes(h)?-1:1,w=d&&y?-1:1,E=typeof a=="function"?a(o):a;let{mainAxis:_,crossAxis:k,alignmentAxis:T}=typeof E=="number"?{mainAxis:E,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...E};return m&&typeof T=="number"&&(k=m==="end"?-1*T:T),y?{x:k*w,y:_*b}:{x:_*b,y:k*w}}(t,e);return{x:n+i.x,y:r+i.y,data:i}}}};function EG(e){return e==="x"?"y":"x"}const Y7e=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:i}=t,{mainAxis:o=!0,crossAxis:a=!1,limiter:s={fn:E=>{let{x:_,y:k}=E;return{x:_,y:k}}},...l}=e,u={x:n,y:r},d=await By(t,l),h=w0(gp(i)),m=EG(h);let y=u[h],b=u[m];if(o){const E=h==="y"?"bottom":"right";y=Yk(y+d[h==="y"?"top":"left"],y,y-d[E])}if(a){const E=m==="y"?"bottom":"right";b=Yk(b+d[m==="y"?"top":"left"],b,b-d[E])}const w=s.fn({...t,[h]:y,[m]:b});return{...w,data:{x:w.x-n,y:w.y-r}}}}},X7e=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:i,rects:o,middlewareData:a}=t,{offset:s=0,mainAxis:l=!0,crossAxis:u=!0}=e,d={x:n,y:r},h=w0(i),m=EG(h);let y=d[h],b=d[m];const w=typeof s=="function"?s({...o,placement:i}):s,E=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(l){const O=h==="y"?"height":"width",D=o.reference[h]-o.floating[O]+E.mainAxis,I=o.reference[h]+o.reference[O]-E.mainAxis;yI&&(y=I)}if(u){var _,k,T,L;const O=h==="y"?"width":"height",D=["top","left"].includes(gp(i)),I=o.reference[m]-o.floating[O]+(D&&(_=(k=a.offset)==null?void 0:k[m])!=null?_:0)+(D?0:E.crossAxis),N=o.reference[m]+o.reference[O]+(D?0:(T=(L=a.offset)==null?void 0:L[m])!=null?T:0)-(D?E.crossAxis:0);bN&&(b=N)}return{[h]:y,[m]:b}}}},Z7e=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:n,rects:r,platform:i,elements:o}=t,{apply:a,...s}=e,l=await By(t,s),u=gp(n),d=x2(n);let h,m;u==="top"||u==="bottom"?(h=u,m=d===(await(i.isRTL==null?void 0:i.isRTL(o.floating))?"start":"end")?"left":"right"):(m=u,h=d==="end"?"top":"bottom");const y=vh(l.left,0),b=vh(l.right,0),w=vh(l.top,0),E=vh(l.bottom,0),_={availableHeight:r.floating.height-(["left","right"].includes(n)?2*(w!==0||E!==0?w+E:vh(l.top,l.bottom)):l[h]),availableWidth:r.floating.width-(["top","bottom"].includes(n)?2*(y!==0||b!==0?y+b:vh(l.left,l.right)):l[m])},k=await i.getDimensions(o.floating);a==null||a({...t,..._});const T=await i.getDimensions(o.floating);return k.width!==T.width||k.height!==T.height?{reset:{rects:!0}}:{}}}};function PG(e){return e&&e.document&&e.location&&e.alert&&e.setInterval}function vc(e){if(e==null)return window;if(!PG(e)){const t=e.ownerDocument;return t&&t.defaultView||window}return e}function S2(e){return vc(e).getComputedStyle(e)}function Xu(e){return PG(e)?"":e?(e.nodeName||"").toLowerCase():""}function TG(){const e=navigator.userAgentData;return e!=null&&e.brands?e.brands.map(t=>t.brand+"/"+t.version).join(" "):navigator.userAgent}function ou(e){return e instanceof vc(e).HTMLElement}function ef(e){return e instanceof vc(e).Element}function VE(e){return typeof ShadowRoot>"u"?!1:e instanceof vc(e).ShadowRoot||e instanceof ShadowRoot}function p4(e){const{overflow:t,overflowX:n,overflowY:r}=S2(e);return/auto|scroll|overlay|hidden/.test(t+r+n)}function Q7e(e){return["table","td","th"].includes(Xu(e))}function ZI(e){const t=/firefox/i.test(TG()),n=S2(e);return n.transform!=="none"||n.perspective!=="none"||n.contain==="paint"||["transform","perspective"].includes(n.willChange)||t&&n.willChange==="filter"||t&&!!n.filter&&n.filter!=="none"}function MG(){return!/^((?!chrome|android).)*safari/i.test(TG())}const QI=Math.min,Y1=Math.max,I3=Math.round;function Zu(e,t,n){var r,i,o,a;t===void 0&&(t=!1),n===void 0&&(n=!1);const s=e.getBoundingClientRect();let l=1,u=1;t&&ou(e)&&(l=e.offsetWidth>0&&I3(s.width)/e.offsetWidth||1,u=e.offsetHeight>0&&I3(s.height)/e.offsetHeight||1);const d=ef(e)?vc(e):window,h=!MG()&&n,m=(s.left+(h&&(r=(i=d.visualViewport)==null?void 0:i.offsetLeft)!=null?r:0))/l,y=(s.top+(h&&(o=(a=d.visualViewport)==null?void 0:a.offsetTop)!=null?o:0))/u,b=s.width/l,w=s.height/u;return{width:b,height:w,top:y,right:m+b,bottom:y+w,left:m,x:m,y}}function zd(e){return(t=e,(t instanceof vc(t).Node?e.ownerDocument:e.document)||window.document).documentElement;var t}function g4(e){return ef(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function LG(e){return Zu(zd(e)).left+g4(e).scrollLeft}function J7e(e,t,n){const r=ou(t),i=zd(t),o=Zu(e,r&&function(l){const u=Zu(l);return I3(u.width)!==l.offsetWidth||I3(u.height)!==l.offsetHeight}(t),n==="fixed");let a={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if(r||!r&&n!=="fixed")if((Xu(t)!=="body"||p4(i))&&(a=g4(t)),ou(t)){const l=Zu(t,!0);s.x=l.x+t.clientLeft,s.y=l.y+t.clientTop}else i&&(s.x=LG(i));return{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}function AG(e){return Xu(e)==="html"?e:e.assignedSlot||e.parentNode||(VE(e)?e.host:null)||zd(e)}function JI(e){return ou(e)&&getComputedStyle(e).position!=="fixed"?e.offsetParent:null}function Xk(e){const t=vc(e);let n=JI(e);for(;n&&Q7e(n)&&getComputedStyle(n).position==="static";)n=JI(n);return n&&(Xu(n)==="html"||Xu(n)==="body"&&getComputedStyle(n).position==="static"&&!ZI(n))?t:n||function(r){let i=AG(r);for(VE(i)&&(i=i.host);ou(i)&&!["html","body"].includes(Xu(i));){if(ZI(i))return i;i=i.parentNode}return null}(e)||t}function eD(e){if(ou(e))return{width:e.offsetWidth,height:e.offsetHeight};const t=Zu(e);return{width:t.width,height:t.height}}function OG(e){const t=AG(e);return["html","body","#document"].includes(Xu(t))?e.ownerDocument.body:ou(t)&&p4(t)?t:OG(t)}function D3(e,t){var n;t===void 0&&(t=[]);const r=OG(e),i=r===((n=e.ownerDocument)==null?void 0:n.body),o=vc(r),a=i?[o].concat(o.visualViewport||[],p4(r)?r:[]):r,s=t.concat(a);return i?s:s.concat(D3(a))}function tD(e,t,n){return t==="viewport"?O3(function(r,i){const o=vc(r),a=zd(r),s=o.visualViewport;let l=a.clientWidth,u=a.clientHeight,d=0,h=0;if(s){l=s.width,u=s.height;const m=MG();(m||!m&&i==="fixed")&&(d=s.offsetLeft,h=s.offsetTop)}return{width:l,height:u,x:d,y:h}}(e,n)):ef(t)?function(r,i){const o=Zu(r,!1,i==="fixed"),a=o.top+r.clientTop,s=o.left+r.clientLeft;return{top:a,left:s,x:s,y:a,right:s+r.clientWidth,bottom:a+r.clientHeight,width:r.clientWidth,height:r.clientHeight}}(t,n):O3(function(r){var i;const o=zd(r),a=g4(r),s=(i=r.ownerDocument)==null?void 0:i.body,l=Y1(o.scrollWidth,o.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),u=Y1(o.scrollHeight,o.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0);let d=-a.scrollLeft+LG(r);const h=-a.scrollTop;return S2(s||o).direction==="rtl"&&(d+=Y1(o.clientWidth,s?s.clientWidth:0)-l),{width:l,height:u,x:d,y:h}}(zd(e)))}function e9e(e){const t=D3(e),n=["absolute","fixed"].includes(S2(e).position)&&ou(e)?Xk(e):e;return ef(n)?t.filter(r=>ef(r)&&function(i,o){const a=o.getRootNode==null?void 0:o.getRootNode();if(i.contains(o))return!0;if(a&&VE(a)){let s=o;do{if(s&&i===s)return!0;s=s.parentNode||s.host}while(s)}return!1}(r,n)&&Xu(r)!=="body"):[]}const t9e={getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e;const o=[...n==="clippingAncestors"?e9e(t):[].concat(n),r],a=o[0],s=o.reduce((l,u)=>{const d=tD(t,u,i);return l.top=Y1(d.top,l.top),l.right=QI(d.right,l.right),l.bottom=QI(d.bottom,l.bottom),l.left=Y1(d.left,l.left),l},tD(t,a,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{rect:t,offsetParent:n,strategy:r}=e;const i=ou(n),o=zd(n);if(n===o)return t;let a={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if((i||!i&&r!=="fixed")&&((Xu(n)!=="body"||p4(o))&&(a=g4(n)),ou(n))){const l=Zu(n,!0);s.x=l.x+n.clientLeft,s.y=l.y+n.clientTop}return{...t,x:t.x-a.scrollLeft+s.x,y:t.y-a.scrollTop+s.y}},isElement:ef,getDimensions:eD,getOffsetParent:Xk,getDocumentElement:zd,getElementRects:e=>{let{reference:t,floating:n,strategy:r}=e;return{reference:J7e(t,Xk(n),r),floating:{...eD(n),x:0,y:0}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>S2(e).direction==="rtl"};function n9e(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:i=!0,ancestorResize:o=!0,elementResize:a=!0,animationFrame:s=!1}=r,l=i&&!s,u=o&&!s,d=l||u?[...ef(e)?D3(e):[],...D3(t)]:[];d.forEach(b=>{l&&b.addEventListener("scroll",n,{passive:!0}),u&&b.addEventListener("resize",n)});let h,m=null;if(a){let b=!0;m=new ResizeObserver(()=>{b||n(),b=!1}),ef(e)&&!s&&m.observe(e),m.observe(t)}let y=s?Zu(e):null;return s&&function b(){const w=Zu(e);!y||w.x===y.x&&w.y===y.y&&w.width===y.width&&w.height===y.height||n(),y=w,h=requestAnimationFrame(b)}(),n(),()=>{var b;d.forEach(w=>{l&&w.removeEventListener("scroll",n),u&&w.removeEventListener("resize",n)}),(b=m)==null||b.disconnect(),m=null,s&&cancelAnimationFrame(h)}}const r9e=(e,t,n)=>z7e(e,t,{platform:t9e,...n});var Zk=typeof document<"u"?S.useLayoutEffect:S.useEffect;function Qk(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Qk(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){const o=i[r];if(!(o==="_owner"&&e.$$typeof)&&!Qk(e[o],t[o]))return!1}return!0}return e!==e&&t!==t}function i9e(e){const t=S.useRef(e);return Zk(()=>{t.current=e}),t}function o9e(e){let{middleware:t,placement:n="bottom",strategy:r="absolute",whileElementsMounted:i}=e===void 0?{}:e;const o=S.useRef(null),a=S.useRef(null),s=i9e(i),l=S.useRef(null),[u,d]=S.useState({x:null,y:null,strategy:r,placement:n,middlewareData:{}}),[h,m]=S.useState(t);Qk(h==null?void 0:h.map(T=>{let{options:L}=T;return L}),t==null?void 0:t.map(T=>{let{options:L}=T;return L}))||m(t);const y=S.useCallback(()=>{!o.current||!a.current||r9e(o.current,a.current,{middleware:h,placement:n,strategy:r}).then(T=>{b.current&&Xs.flushSync(()=>{d(T)})})},[h,n,r]);Zk(()=>{b.current&&y()},[y]);const b=S.useRef(!1);Zk(()=>(b.current=!0,()=>{b.current=!1}),[]);const w=S.useCallback(()=>{if(typeof l.current=="function"&&(l.current(),l.current=null),o.current&&a.current)if(s.current){const T=s.current(o.current,a.current,y);l.current=T}else y()},[y,s]),E=S.useCallback(T=>{o.current=T,w()},[w]),_=S.useCallback(T=>{a.current=T,w()},[w]),k=S.useMemo(()=>({reference:o,floating:a}),[]);return S.useMemo(()=>({...u,update:y,refs:k,reference:E,floating:_}),[u,y,k,E,_])}const a9e=e=>{const{element:t,padding:n}=e;function r(i){return Object.prototype.hasOwnProperty.call(i,"current")}return{name:"arrow",options:e,fn(i){return r(t)?t.current!=null?qI({element:t.current,padding:n}).fn(i):{}:t?qI({element:t,padding:n}).fn(i):{}}}};function s9e(e){const[t,n]=S.useState(void 0);return Pd(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(i=>{if(!Array.isArray(i)||!i.length)return;const o=i[0];let a,s;if("borderBoxSize"in o){const l=o.borderBoxSize,u=Array.isArray(l)?l[0]:l;a=u.inlineSize,s=u.blockSize}else a=e.offsetWidth,s=e.offsetHeight;n({width:a,height:s})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}const RG="Popper",[GE,IG]=b2(RG),[l9e,DG]=GE(RG),u9e=e=>{const{__scopePopper:t,children:n}=e,[r,i]=S.useState(null);return S.createElement(l9e,{scope:t,anchor:r,onAnchorChange:i},n)},c9e="PopperAnchor",d9e=S.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...i}=e,o=DG(c9e,n),a=S.useRef(null),s=ds(t,a);return S.useEffect(()=>{o.onAnchorChange((r==null?void 0:r.current)||a.current)}),r?null:S.createElement(sc.div,pn({},i,{ref:s}))}),j3="PopperContent",[f9e,zNe]=GE(j3),[h9e,p9e]=GE(j3,{hasParent:!1,positionUpdateFns:new Set}),g9e=S.forwardRef((e,t)=>{var n,r,i,o,a,s,l,u;const{__scopePopper:d,side:h="bottom",sideOffset:m=0,align:y="center",alignOffset:b=0,arrowPadding:w=0,collisionBoundary:E=[],collisionPadding:_=0,sticky:k="partial",hideWhenDetached:T=!1,avoidCollisions:L=!0,onPlaced:O,...D}=e,I=DG(j3,d),[N,W]=S.useState(null),B=ds(t,He=>W(He)),[K,ne]=S.useState(null),z=s9e(K),$=(n=z==null?void 0:z.width)!==null&&n!==void 0?n:0,V=(r=z==null?void 0:z.height)!==null&&r!==void 0?r:0,X=h+(y!=="center"?"-"+y:""),Q=typeof _=="number"?_:{top:0,right:0,bottom:0,left:0,..._},G=Array.isArray(E)?E:[E],Y=G.length>0,ee={padding:Q,boundary:G.filter(v9e),altBoundary:Y},{reference:fe,floating:Ce,strategy:we,x:xe,y:Le,placement:Se,middlewareData:Qe,update:Xe}=o9e({strategy:"fixed",placement:X,whileElementsMounted:n9e,middleware:[y9e(),K7e({mainAxis:m+V,alignmentAxis:b}),L?Y7e({mainAxis:!0,crossAxis:!1,limiter:k==="partial"?X7e():void 0,...ee}):void 0,K?a9e({element:K,padding:w}):void 0,L?G7e({...ee}):void 0,Z7e({...ee,apply:({elements:He,availableWidth:Ue,availableHeight:ye})=>{He.floating.style.setProperty("--radix-popper-available-width",`${Ue}px`),He.floating.style.setProperty("--radix-popper-available-height",`${ye}px`)}}),b9e({arrowWidth:$,arrowHeight:V}),T?q7e({strategy:"referenceHidden"}):void 0].filter(m9e)});Pd(()=>{fe(I.anchor)},[fe,I.anchor]);const tt=xe!==null&&Le!==null,[yt,Be]=jG(Se),Ae=Js(O);Pd(()=>{tt&&(Ae==null||Ae())},[tt,Ae]);const bt=(i=Qe.arrow)===null||i===void 0?void 0:i.x,Fe=(o=Qe.arrow)===null||o===void 0?void 0:o.y,at=((a=Qe.arrow)===null||a===void 0?void 0:a.centerOffset)!==0,[jt,mt]=S.useState();Pd(()=>{N&&mt(window.getComputedStyle(N).zIndex)},[N]);const{hasParent:Zt,positionUpdateFns:on}=p9e(j3,d),se=!Zt;S.useLayoutEffect(()=>{if(!se)return on.add(Xe),()=>{on.delete(Xe)}},[se,on,Xe]),Pd(()=>{se&&tt&&Array.from(on).reverse().forEach(He=>requestAnimationFrame(He))},[se,tt,on]);const Ie={"data-side":yt,"data-align":Be,...D,ref:B,style:{...D.style,animation:tt?void 0:"none",opacity:(s=Qe.hide)!==null&&s!==void 0&&s.referenceHidden?0:void 0}};return S.createElement("div",{ref:Ce,"data-radix-popper-content-wrapper":"",style:{position:we,left:0,top:0,transform:tt?`translate3d(${Math.round(xe)}px, ${Math.round(Le)}px, 0)`:"translate3d(0, -200%, 0)",minWidth:"max-content",zIndex:jt,["--radix-popper-transform-origin"]:[(l=Qe.transformOrigin)===null||l===void 0?void 0:l.x,(u=Qe.transformOrigin)===null||u===void 0?void 0:u.y].join(" ")},dir:e.dir},S.createElement(f9e,{scope:d,placedSide:yt,onArrowChange:ne,arrowX:bt,arrowY:Fe,shouldHideArrow:at},se?S.createElement(h9e,{scope:d,hasParent:!0,positionUpdateFns:on},S.createElement(sc.div,Ie)):S.createElement(sc.div,Ie)))});function m9e(e){return e!==void 0}function v9e(e){return e!==null}const y9e=()=>({name:"anchorCssProperties",fn(e){const{rects:t,elements:n}=e,{width:r,height:i}=t.reference;return n.floating.style.setProperty("--radix-popper-anchor-width",`${r}px`),n.floating.style.setProperty("--radix-popper-anchor-height",`${i}px`),{}}}),b9e=e=>({name:"transformOrigin",options:e,fn(t){var n,r,i,o,a;const{placement:s,rects:l,middlewareData:u}=t,h=((n=u.arrow)===null||n===void 0?void 0:n.centerOffset)!==0,m=h?0:e.arrowWidth,y=h?0:e.arrowHeight,[b,w]=jG(s),E={start:"0%",center:"50%",end:"100%"}[w],_=((r=(i=u.arrow)===null||i===void 0?void 0:i.x)!==null&&r!==void 0?r:0)+m/2,k=((o=(a=u.arrow)===null||a===void 0?void 0:a.y)!==null&&o!==void 0?o:0)+y/2;let T="",L="";return b==="bottom"?(T=h?E:`${_}px`,L=`${-y}px`):b==="top"?(T=h?E:`${_}px`,L=`${l.floating.height+y}px`):b==="right"?(T=`${-y}px`,L=h?E:`${k}px`):b==="left"&&(T=`${l.floating.width+y}px`,L=h?E:`${k}px`),{data:{x:T,y:L}}}});function jG(e){const[t,n="center"]=e.split("-");return[t,n]}const x9e=u9e,S9e=d9e,w9e=g9e;function C9e(e,t){return S.useReducer((n,r)=>{const i=t[n][r];return i??n},e)}const NG=e=>{const{present:t,children:n}=e,r=_9e(t),i=typeof n=="function"?n({present:r.isPresent}):S.Children.only(n),o=ds(r.ref,i.ref);return typeof n=="function"||r.isPresent?S.cloneElement(i,{ref:o}):null};NG.displayName="Presence";function _9e(e){const[t,n]=S.useState(),r=S.useRef({}),i=S.useRef(e),o=S.useRef("none"),a=e?"mounted":"unmounted",[s,l]=C9e(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return S.useEffect(()=>{const u=Sx(r.current);o.current=s==="mounted"?u:"none"},[s]),Pd(()=>{const u=r.current,d=i.current;if(d!==e){const m=o.current,y=Sx(u);e?l("MOUNT"):y==="none"||(u==null?void 0:u.display)==="none"?l("UNMOUNT"):l(d&&m!==y?"ANIMATION_OUT":"UNMOUNT"),i.current=e}},[e,l]),Pd(()=>{if(t){const u=h=>{const y=Sx(r.current).includes(h.animationName);h.target===t&&y&&Xs.flushSync(()=>l("ANIMATION_END"))},d=h=>{h.target===t&&(o.current=Sx(r.current))};return t.addEventListener("animationstart",d),t.addEventListener("animationcancel",u),t.addEventListener("animationend",u),()=>{t.removeEventListener("animationstart",d),t.removeEventListener("animationcancel",u),t.removeEventListener("animationend",u)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(s),ref:S.useCallback(u=>{u&&(r.current=getComputedStyle(u)),n(u)},[])}}function Sx(e){return(e==null?void 0:e.animationName)||"none"}function k9e({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,i]=E9e({defaultProp:t,onChange:n}),o=e!==void 0,a=o?e:r,s=Js(n),l=S.useCallback(u=>{if(o){const h=typeof u=="function"?u(e):u;h!==e&&s(h)}else i(u)},[o,e,i,s]);return[a,l]}function E9e({defaultProp:e,onChange:t}){const n=S.useState(e),[r]=n,i=S.useRef(r),o=Js(t);return S.useEffect(()=>{i.current!==r&&(o(r),i.current=r)},[r,i,o]),n}const r6="rovingFocusGroup.onEntryFocus",P9e={bubbles:!1,cancelable:!0},qE="RovingFocusGroup",[Jk,$G,T9e]=xG(qE),[M9e,FG]=b2(qE,[T9e]),[L9e,A9e]=M9e(qE),O9e=S.forwardRef((e,t)=>S.createElement(Jk.Provider,{scope:e.__scopeRovingFocusGroup},S.createElement(Jk.Slot,{scope:e.__scopeRovingFocusGroup},S.createElement(R9e,pn({},e,{ref:t}))))),R9e=S.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:o,currentTabStopId:a,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:l,onEntryFocus:u,...d}=e,h=S.useRef(null),m=ds(t,h),y=SG(o),[b=null,w]=k9e({prop:a,defaultProp:s,onChange:l}),[E,_]=S.useState(!1),k=Js(u),T=$G(n),L=S.useRef(!1),[O,D]=S.useState(0);return S.useEffect(()=>{const I=h.current;if(I)return I.addEventListener(r6,k),()=>I.removeEventListener(r6,k)},[k]),S.createElement(L9e,{scope:n,orientation:r,dir:y,loop:i,currentTabStopId:b,onItemFocus:S.useCallback(I=>w(I),[w]),onItemShiftTab:S.useCallback(()=>_(!0),[]),onFocusableItemAdd:S.useCallback(()=>D(I=>I+1),[]),onFocusableItemRemove:S.useCallback(()=>D(I=>I-1),[])},S.createElement(sc.div,pn({tabIndex:E||O===0?-1:0,"data-orientation":r},d,{ref:m,style:{outline:"none",...e.style},onMouseDown:Kn(e.onMouseDown,()=>{L.current=!0}),onFocus:Kn(e.onFocus,I=>{const N=!L.current;if(I.target===I.currentTarget&&N&&!E){const W=new CustomEvent(r6,P9e);if(I.currentTarget.dispatchEvent(W),!W.defaultPrevented){const B=T().filter(V=>V.focusable),K=B.find(V=>V.active),ne=B.find(V=>V.id===b),$=[K,ne,...B].filter(Boolean).map(V=>V.ref.current);BG($)}}L.current=!1}),onBlur:Kn(e.onBlur,()=>_(!1))})))}),I9e="RovingFocusGroupItem",D9e=S.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:o,...a}=e,s=B7e(),l=o||s,u=A9e(I9e,n),d=u.currentTabStopId===l,h=$G(n),{onFocusableItemAdd:m,onFocusableItemRemove:y}=u;return S.useEffect(()=>{if(r)return m(),()=>y()},[r,m,y]),S.createElement(Jk.ItemSlot,{scope:n,id:l,focusable:r,active:i},S.createElement(sc.span,pn({tabIndex:d?0:-1,"data-orientation":u.orientation},a,{ref:t,onMouseDown:Kn(e.onMouseDown,b=>{r?u.onItemFocus(l):b.preventDefault()}),onFocus:Kn(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:Kn(e.onKeyDown,b=>{if(b.key==="Tab"&&b.shiftKey){u.onItemShiftTab();return}if(b.target!==b.currentTarget)return;const w=$9e(b,u.orientation,u.dir);if(w!==void 0){b.preventDefault();let _=h().filter(k=>k.focusable).map(k=>k.ref.current);if(w==="last")_.reverse();else if(w==="prev"||w==="next"){w==="prev"&&_.reverse();const k=_.indexOf(b.currentTarget);_=u.loop?F9e(_,k+1):_.slice(k+1)}setTimeout(()=>BG(_))}})})))}),j9e={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function N9e(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function $9e(e,t,n){const r=N9e(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return j9e[r]}function BG(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function F9e(e,t){return e.map((n,r)=>e[(t+r)%e.length])}const B9e=O9e,z9e=D9e,H9e=["Enter"," "],W9e=["ArrowDown","PageUp","Home"],zG=["ArrowUp","PageDown","End"],U9e=[...W9e,...zG],m4="Menu",[e7,V9e,G9e]=xG(m4),[mp,HG]=b2(m4,[G9e,IG,FG]),KE=IG(),WG=FG(),[q9e,v4]=mp(m4),[K9e,YE]=mp(m4),Y9e=e=>{const{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:o,modal:a=!0}=e,s=KE(t),[l,u]=S.useState(null),d=S.useRef(!1),h=Js(o),m=SG(i);return S.useEffect(()=>{const y=()=>{d.current=!0,document.addEventListener("pointerdown",b,{capture:!0,once:!0}),document.addEventListener("pointermove",b,{capture:!0,once:!0})},b=()=>d.current=!1;return document.addEventListener("keydown",y,{capture:!0}),()=>{document.removeEventListener("keydown",y,{capture:!0}),document.removeEventListener("pointerdown",b,{capture:!0}),document.removeEventListener("pointermove",b,{capture:!0})}},[]),S.createElement(x9e,s,S.createElement(q9e,{scope:t,open:n,onOpenChange:h,content:l,onContentChange:u},S.createElement(K9e,{scope:t,onClose:S.useCallback(()=>h(!1),[h]),isUsingKeyboardRef:d,dir:m,modal:a},r)))},X9e=S.forwardRef((e,t)=>{const{__scopeMenu:n,...r}=e,i=KE(n);return S.createElement(S9e,pn({},i,r,{ref:t}))}),Z9e="MenuPortal",[HNe,Q9e]=mp(Z9e,{forceMount:void 0}),Hd="MenuContent",[J9e,UG]=mp(Hd),e8e=S.forwardRef((e,t)=>{const n=Q9e(Hd,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,o=v4(Hd,e.__scopeMenu),a=YE(Hd,e.__scopeMenu);return S.createElement(e7.Provider,{scope:e.__scopeMenu},S.createElement(NG,{present:r||o.open},S.createElement(e7.Slot,{scope:e.__scopeMenu},a.modal?S.createElement(t8e,pn({},i,{ref:t})):S.createElement(n8e,pn({},i,{ref:t})))))}),t8e=S.forwardRef((e,t)=>{const n=v4(Hd,e.__scopeMenu),r=S.useRef(null),i=ds(t,r);return S.useEffect(()=>{const o=r.current;if(o)return LH(o)},[]),S.createElement(VG,pn({},e,{ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:Kn(e.onFocusOutside,o=>o.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)}))}),n8e=S.forwardRef((e,t)=>{const n=v4(Hd,e.__scopeMenu);return S.createElement(VG,pn({},e,{ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)}))}),VG=S.forwardRef((e,t)=>{const{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:o,onCloseAutoFocus:a,disableOutsidePointerEvents:s,onEntryFocus:l,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:h,onInteractOutside:m,onDismiss:y,disableOutsideScroll:b,...w}=e,E=v4(Hd,n),_=YE(Hd,n),k=KE(n),T=WG(n),L=V9e(n),[O,D]=S.useState(null),I=S.useRef(null),N=ds(t,I,E.onContentChange),W=S.useRef(0),B=S.useRef(""),K=S.useRef(0),ne=S.useRef(null),z=S.useRef("right"),$=S.useRef(0),V=b?NH:S.Fragment,X=b?{as:Fy,allowPinchZoom:!0}:void 0,Q=Y=>{var ee,fe;const Ce=B.current+Y,we=L().filter(tt=>!tt.disabled),xe=document.activeElement,Le=(ee=we.find(tt=>tt.ref.current===xe))===null||ee===void 0?void 0:ee.textValue,Se=we.map(tt=>tt.textValue),Qe=d8e(Se,Ce,Le),Xe=(fe=we.find(tt=>tt.textValue===Qe))===null||fe===void 0?void 0:fe.ref.current;(function tt(yt){B.current=yt,window.clearTimeout(W.current),yt!==""&&(W.current=window.setTimeout(()=>tt(""),1e3))})(Ce),Xe&&setTimeout(()=>Xe.focus())};S.useEffect(()=>()=>window.clearTimeout(W.current),[]),L7e();const G=S.useCallback(Y=>{var ee,fe;return z.current===((ee=ne.current)===null||ee===void 0?void 0:ee.side)&&h8e(Y,(fe=ne.current)===null||fe===void 0?void 0:fe.area)},[]);return S.createElement(J9e,{scope:n,searchRef:B,onItemEnter:S.useCallback(Y=>{G(Y)&&Y.preventDefault()},[G]),onItemLeave:S.useCallback(Y=>{var ee;G(Y)||((ee=I.current)===null||ee===void 0||ee.focus(),D(null))},[G]),onTriggerLeave:S.useCallback(Y=>{G(Y)&&Y.preventDefault()},[G]),pointerGraceTimerRef:K,onPointerGraceIntentChange:S.useCallback(Y=>{ne.current=Y},[])},S.createElement(V,X,S.createElement(A7e,{asChild:!0,trapped:i,onMountAutoFocus:Kn(o,Y=>{var ee;Y.preventDefault(),(ee=I.current)===null||ee===void 0||ee.focus()}),onUnmountAutoFocus:a},S.createElement(P7e,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:h,onInteractOutside:m,onDismiss:y},S.createElement(B9e,pn({asChild:!0},T,{dir:_.dir,orientation:"vertical",loop:r,currentTabStopId:O,onCurrentTabStopIdChange:D,onEntryFocus:Kn(l,Y=>{_.isUsingKeyboardRef.current||Y.preventDefault()})}),S.createElement(w9e,pn({role:"menu","aria-orientation":"vertical","data-state":l8e(E.open),"data-radix-menu-content":"",dir:_.dir},k,w,{ref:N,style:{outline:"none",...w.style},onKeyDown:Kn(w.onKeyDown,Y=>{const fe=Y.target.closest("[data-radix-menu-content]")===Y.currentTarget,Ce=Y.ctrlKey||Y.altKey||Y.metaKey,we=Y.key.length===1;fe&&(Y.key==="Tab"&&Y.preventDefault(),!Ce&&we&&Q(Y.key));const xe=I.current;if(Y.target!==xe||!U9e.includes(Y.key))return;Y.preventDefault();const Se=L().filter(Qe=>!Qe.disabled).map(Qe=>Qe.ref.current);zG.includes(Y.key)&&Se.reverse(),u8e(Se)}),onBlur:Kn(e.onBlur,Y=>{Y.currentTarget.contains(Y.target)||(window.clearTimeout(W.current),B.current="")}),onPointerMove:Kn(e.onPointerMove,n7(Y=>{const ee=Y.target,fe=$.current!==Y.clientX;if(Y.currentTarget.contains(ee)&&fe){const Ce=Y.clientX>$.current?"right":"left";z.current=Ce,$.current=Y.clientX}}))})))))))}),t7="MenuItem",nD="menu.itemSelect",r8e=S.forwardRef((e,t)=>{const{disabled:n=!1,onSelect:r,...i}=e,o=S.useRef(null),a=YE(t7,e.__scopeMenu),s=UG(t7,e.__scopeMenu),l=ds(t,o),u=S.useRef(!1),d=()=>{const h=o.current;if(!n&&h){const m=new CustomEvent(nD,{bubbles:!0,cancelable:!0});h.addEventListener(nD,y=>r==null?void 0:r(y),{once:!0}),bG(h,m),m.defaultPrevented?u.current=!1:a.onClose()}};return S.createElement(i8e,pn({},i,{ref:l,disabled:n,onClick:Kn(e.onClick,d),onPointerDown:h=>{var m;(m=e.onPointerDown)===null||m===void 0||m.call(e,h),u.current=!0},onPointerUp:Kn(e.onPointerUp,h=>{var m;u.current||(m=h.currentTarget)===null||m===void 0||m.click()}),onKeyDown:Kn(e.onKeyDown,h=>{const m=s.searchRef.current!=="";n||m&&h.key===" "||H9e.includes(h.key)&&(h.currentTarget.click(),h.preventDefault())})}))}),i8e=S.forwardRef((e,t)=>{const{__scopeMenu:n,disabled:r=!1,textValue:i,...o}=e,a=UG(t7,n),s=WG(n),l=S.useRef(null),u=ds(t,l),[d,h]=S.useState(!1),[m,y]=S.useState("");return S.useEffect(()=>{const b=l.current;if(b){var w;y(((w=b.textContent)!==null&&w!==void 0?w:"").trim())}},[o.children]),S.createElement(e7.ItemSlot,{scope:n,disabled:r,textValue:i??m},S.createElement(z9e,pn({asChild:!0},s,{focusable:!r}),S.createElement(sc.div,pn({role:"menuitem","data-highlighted":d?"":void 0,"aria-disabled":r||void 0,"data-disabled":r?"":void 0},o,{ref:u,onPointerMove:Kn(e.onPointerMove,n7(b=>{r?a.onItemLeave(b):(a.onItemEnter(b),b.defaultPrevented||b.currentTarget.focus())})),onPointerLeave:Kn(e.onPointerLeave,n7(b=>a.onItemLeave(b))),onFocus:Kn(e.onFocus,()=>h(!0)),onBlur:Kn(e.onBlur,()=>h(!1))}))))}),o8e="MenuRadioGroup";mp(o8e,{value:void 0,onValueChange:()=>{}});const a8e="MenuItemIndicator";mp(a8e,{checked:!1});const s8e="MenuSub";mp(s8e);function l8e(e){return e?"open":"closed"}function u8e(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function c8e(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function d8e(e,t,n){const i=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,o=n?e.indexOf(n):-1;let a=c8e(e,Math.max(o,0));i.length===1&&(a=a.filter(u=>u!==n));const l=a.find(u=>u.toLowerCase().startsWith(i.toLowerCase()));return l!==n?l:void 0}function f8e(e,t){const{x:n,y:r}=e;let i=!1;for(let o=0,a=t.length-1;or!=d>r&&n<(u-s)*(r-l)/(d-l)+s&&(i=!i)}return i}function h8e(e,t){if(!t)return!1;const n={x:e.clientX,y:e.clientY};return f8e(n,t)}function n7(e){return t=>t.pointerType==="mouse"?e(t):void 0}const p8e=Y9e,g8e=X9e,m8e=e8e,v8e=r8e,GG="ContextMenu",[y8e,WNe]=b2(GG,[HG]),y4=HG(),[b8e,qG]=y8e(GG),x8e=e=>{const{__scopeContextMenu:t,children:n,onOpenChange:r,dir:i,modal:o=!0}=e,[a,s]=S.useState(!1),l=y4(t),u=Js(r),d=S.useCallback(h=>{s(h),u(h)},[u]);return S.createElement(b8e,{scope:t,open:a,onOpenChange:d,modal:o},S.createElement(p8e,pn({},l,{dir:i,open:a,onOpenChange:d,modal:o}),n))},S8e="ContextMenuTrigger",w8e=S.forwardRef((e,t)=>{const{__scopeContextMenu:n,disabled:r=!1,...i}=e,o=qG(S8e,n),a=y4(n),s=S.useRef({x:0,y:0}),l=S.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...s.current})}),u=S.useRef(0),d=S.useCallback(()=>window.clearTimeout(u.current),[]),h=m=>{s.current={x:m.clientX,y:m.clientY},o.onOpenChange(!0)};return S.useEffect(()=>d,[d]),S.useEffect(()=>void(r&&d()),[r,d]),S.createElement(S.Fragment,null,S.createElement(g8e,pn({},a,{virtualRef:l})),S.createElement(sc.span,pn({"data-state":o.open?"open":"closed","data-disabled":r?"":void 0},i,{ref:t,style:{WebkitTouchCallout:"none",...e.style},onContextMenu:r?e.onContextMenu:Kn(e.onContextMenu,m=>{d(),h(m),m.preventDefault()}),onPointerDown:r?e.onPointerDown:Kn(e.onPointerDown,wx(m=>{d(),u.current=window.setTimeout(()=>h(m),700)})),onPointerMove:r?e.onPointerMove:Kn(e.onPointerMove,wx(d)),onPointerCancel:r?e.onPointerCancel:Kn(e.onPointerCancel,wx(d)),onPointerUp:r?e.onPointerUp:Kn(e.onPointerUp,wx(d))})))}),C8e="ContextMenuContent",_8e=S.forwardRef((e,t)=>{const{__scopeContextMenu:n,...r}=e,i=qG(C8e,n),o=y4(n),a=S.useRef(!1);return S.createElement(m8e,pn({},o,r,{ref:t,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:s=>{var l;(l=e.onCloseAutoFocus)===null||l===void 0||l.call(e,s),!s.defaultPrevented&&a.current&&s.preventDefault(),a.current=!1},onInteractOutside:s=>{var l;(l=e.onInteractOutside)===null||l===void 0||l.call(e,s),!s.defaultPrevented&&!i.modal&&(a.current=!0)},style:{...e.style,["--radix-context-menu-content-transform-origin"]:"var(--radix-popper-transform-origin)"}}))}),k8e=S.forwardRef((e,t)=>{const{__scopeContextMenu:n,...r}=e,i=y4(n);return S.createElement(v8e,pn({},i,r,{ref:t}))});function wx(e){return t=>t.pointerType!=="mouse"?e(t):void 0}const E8e=x8e,P8e=w8e,T8e=_8e,ud=k8e,M8e=(e,t)=>e.image.uuid===t.image.uuid&&e.isSelected===t.isSelected,KG=S.memo(e=>{var z,$,V,X,Q,G,Y,ee;const t=Te(),{activeTabName:n,galleryImageObjectFit:r,galleryImageMinimumWidth:i,mayDeleteImage:o,shouldUseSingleGalleryColumn:a}=le(Bke),{image:s,isSelected:l}=e,{url:u,thumbnail:d,uuid:h,metadata:m}=s,[y,b]=S.useState(!1),w=a2(),{t:E}=De(),_=zE(),k=()=>b(!0),T=()=>b(!1),L=()=>{var fe,Ce,we,xe;(Ce=(fe=s.metadata)==null?void 0:fe.image)!=null&&Ce.prompt&&_((xe=(we=s.metadata)==null?void 0:we.image)==null?void 0:xe.prompt),w({title:E("toast.promptSet"),status:"success",duration:2500,isClosable:!0})},O=()=>{s.metadata&&t(p2(s.metadata.image.seed)),w({title:E("toast.seedSet"),status:"success",duration:2500,isClosable:!0})},D=()=>{t(y0(s)),n!=="img2img"&&t(Wo("img2img")),w({title:E("toast.sentToImageToImage"),status:"success",duration:2500,isClosable:!0})},I=()=>{t(i4(s)),t(r4()),n!=="unifiedCanvas"&&t(Wo("unifiedCanvas")),w({title:E("toast.sentToUnifiedCanvas"),status:"success",duration:2500,isClosable:!0})},N=()=>{m&&t(aU(m)),w({title:E("toast.parametersSet"),status:"success",duration:2500,isClosable:!0})},W=async()=>{var fe;if((fe=m==null?void 0:m.image)!=null&&fe.init_image_path&&(await fetch(m.image.init_image_path)).ok){t(Wo("img2img")),t(N3e(m)),w({title:E("toast.initialImageSet"),status:"success",duration:2500,isClosable:!0});return}w({title:E("toast.initialImageNotSet"),description:E("toast.initialImageNotSetDesc"),status:"error",duration:2500,isClosable:!0})},B=()=>t(ZO(s)),K=fe=>{fe.dataTransfer.setData("invokeai/imageUuid",h),fe.dataTransfer.effectAllowed="move"},ne=()=>{t(ZO(s))};return g.jsxs(E8e,{onOpenChange:fe=>{t(eU(fe))},children:[g.jsx(P8e,{children:g.jsxs(ao,{position:"relative",className:"hoverable-image",onMouseOver:k,onMouseOut:T,userSelect:"none",draggable:!0,onDragStart:K,children:[g.jsx(jw,{className:"hoverable-image-image",objectFit:a?"contain":r,rounded:"md",src:d||u,loading:"lazy"}),g.jsx("div",{className:"hoverable-image-content",onClick:B,children:l&&g.jsx(ja,{width:"50%",height:"50%",as:jE,className:"hoverable-image-check"})}),y&&i>=64&&g.jsx("div",{className:"hoverable-image-delete-button",children:g.jsx(A3,{image:s,children:g.jsx(ls,{"aria-label":E("parameters.deleteImage"),icon:g.jsx(jke,{}),size:"xs",variant:"imageHoverIconButton",fontSize:14,isDisabled:!o})})})]},h)}),g.jsxs(T8e,{className:"hoverable-image-context-menu",sticky:"always",onInteractOutside:fe=>{fe.detail.originalEvent.preventDefault()},children:[g.jsx(ud,{onClickCapture:ne,children:E("parameters.openInViewer")}),g.jsx(ud,{onClickCapture:L,disabled:(($=(z=s==null?void 0:s.metadata)==null?void 0:z.image)==null?void 0:$.prompt)===void 0,children:E("parameters.usePrompt")}),g.jsx(ud,{onClickCapture:O,disabled:((X=(V=s==null?void 0:s.metadata)==null?void 0:V.image)==null?void 0:X.seed)===void 0,children:E("parameters.useSeed")}),g.jsx(ud,{onClickCapture:N,disabled:!["txt2img","img2img"].includes((G=(Q=s==null?void 0:s.metadata)==null?void 0:Q.image)==null?void 0:G.type),children:E("parameters.useAll")}),g.jsx(ud,{onClickCapture:W,disabled:((ee=(Y=s==null?void 0:s.metadata)==null?void 0:Y.image)==null?void 0:ee.type)!=="img2img",children:E("parameters.useInitImg")}),g.jsx(ud,{onClickCapture:D,children:E("parameters.sendToImg2Img")}),g.jsx(ud,{onClickCapture:I,children:E("parameters.sendToUnifiedCanvas")}),g.jsx(ud,{"data-warning":!0,children:g.jsx(A3,{image:s,children:g.jsx("p",{children:E("parameters.deleteImage")})})})]})]})},M8e);KG.displayName="HoverableImage";const Cx=320,rD=40,L8e={txt2img:{galleryMinWidth:200,galleryMaxWidth:500},img2img:{galleryMinWidth:200,galleryMaxWidth:500},unifiedCanvas:{galleryMinWidth:200,galleryMaxWidth:200},nodes:{galleryMinWidth:200,galleryMaxWidth:500},postprocess:{galleryMinWidth:200,galleryMaxWidth:500},training:{galleryMinWidth:200,galleryMaxWidth:500}},iD=400;function YG(){const e=Te(),{t}=De(),{images:n,currentCategory:r,currentImageUuid:i,shouldPinGallery:o,shouldShowGallery:a,galleryScrollPosition:s,galleryImageMinimumWidth:l,galleryGridTemplateColumns:u,activeTabName:d,galleryImageObjectFit:h,shouldHoldGalleryOpen:m,shouldAutoSwitchToNewImages:y,areMoreImagesAvailable:b,galleryWidth:w,isLightboxOpen:E,isStaging:_,shouldEnableResize:k,shouldUseSingleGalleryColumn:T}=le(Fke),{galleryMinWidth:L,galleryMaxWidth:O}=E?{galleryMinWidth:iD,galleryMaxWidth:iD}:L8e[d],[D,I]=S.useState(w>=Cx),[N,W]=S.useState(!1),[B,K]=S.useState(0),ne=S.useRef(null),z=S.useRef(null),$=S.useRef(null);S.useEffect(()=>{w>=Cx&&I(!1)},[w]);const V=()=>{e(_3e(!o)),e(Li(!0))},X=()=>{a?G():Q()},Q=()=>{e(Am(!0)),o&&e(Li(!0))},G=S.useCallback(()=>{e(Am(!1)),e(eU(!1)),e(k3e(z.current?z.current.scrollTop:0)),setTimeout(()=>o&&e(Li(!0)),400)},[e,o]),Y=()=>{e(Uk(r))},ee=xe=>{e(Gv(xe))},fe=()=>{m||($.current=window.setTimeout(()=>G(),500))},Ce=()=>{$.current&&window.clearTimeout($.current)};Je("g",()=>{X()},[a,o]),Je("left",()=>{e(vE())},{enabled:!_||d!=="unifiedCanvas"},[_]),Je("right",()=>{e(mE())},{enabled:!_||d!=="unifiedCanvas"},[_]),Je("shift+g",()=>{V()},[o]),Je("esc",()=>{e(Am(!1))},{enabled:()=>!o,preventDefault:!0},[o]);const we=32;return Je("shift+up",()=>{if(l<256){const xe=Pe.clamp(l+we,32,256);e(Gv(xe))}},[l]),Je("shift+down",()=>{if(l>32){const xe=Pe.clamp(l-we,32,256);e(Gv(xe))}},[l]),S.useEffect(()=>{z.current&&(z.current.scrollTop=s)},[s,a]),S.useEffect(()=>{function xe(Le){!o&&ne.current&&!ne.current.contains(Le.target)&&G()}return document.addEventListener("mousedown",xe),()=>{document.removeEventListener("mousedown",xe)}},[G,o]),g.jsx(vG,{nodeRef:ne,in:a||m,unmountOnExit:!0,timeout:200,classNames:"image-gallery-wrapper",children:g.jsxs("div",{className:"image-gallery-wrapper",style:{zIndex:o?1:100},"data-pinned":o,ref:ne,onMouseLeave:o?void 0:fe,onMouseEnter:o?void 0:Ce,onMouseOver:o?void 0:Ce,children:[g.jsxs(dG,{minWidth:L,maxWidth:o?O:window.innerWidth,className:"image-gallery-popup",handleStyles:{left:{width:"15px"}},enable:{left:k},size:{width:w,height:o?"100%":"100vh"},onResizeStart:(xe,Le,Se)=>{K(Se.clientHeight),Se.style.height=`${Se.clientHeight}px`,o&&(Se.style.position="fixed",Se.style.right="1rem",W(!0))},onResizeStop:(xe,Le,Se,Qe)=>{const Xe=o?Pe.clamp(Number(w)+Qe.width,L,Number(O)):Number(w)+Qe.width;e(T3e(Xe)),Se.removeAttribute("data-resize-alert"),o&&(Se.style.position="relative",Se.style.removeProperty("right"),Se.style.setProperty("height",o?"100%":"100vh"),W(!1),e(Li(!0)))},onResize:(xe,Le,Se,Qe)=>{const Xe=Pe.clamp(Number(w)+Qe.width,L,Number(o?O:.95*window.innerWidth));Xe>=Cx&&!D?I(!0):XeXe-rD&&e(Gv(Xe-rD)),o&&(Xe>=O?Se.setAttribute("data-resize-alert","true"):Se.removeAttribute("data-resize-alert")),Se.style.height=`${B}px`},children:[g.jsxs("div",{className:"image-gallery-header",children:[g.jsx(Gi,{size:"sm",isAttached:!0,variant:"solid",className:"image-gallery-category-btn-group",children:D?g.jsxs(g.Fragment,{children:[g.jsx(On,{size:"sm","data-selected":r==="result",onClick:()=>e(ex("result")),children:t("gallery.generations")}),g.jsx(On,{size:"sm","data-selected":r==="user",onClick:()=>e(ex("user")),children:t("gallery.uploads")})]}):g.jsxs(g.Fragment,{children:[g.jsx(Ye,{"aria-label":t("gallery.showGenerations"),tooltip:t("gallery.showGenerations"),"data-selected":r==="result",icon:g.jsx(_ke,{}),onClick:()=>e(ex("result"))}),g.jsx(Ye,{"aria-label":t("gallery.showUploads"),tooltip:t("gallery.showUploads"),"data-selected":r==="user",icon:g.jsx($ke,{}),onClick:()=>e(ex("user"))})]})}),g.jsxs("div",{className:"image-gallery-header-right-icons",children:[g.jsx(Ys,{isLazy:!0,trigger:"hover",placement:"left",triggerComponent:g.jsx(Ye,{size:"sm","aria-label":t("gallery.gallerySettings"),icon:g.jsx(BE,{}),className:"image-gallery-icon-btn",cursor:"pointer"}),children:g.jsxs("div",{className:"image-gallery-settings-popover",children:[g.jsxs("div",{children:[g.jsx(Dn,{value:l,onChange:ee,min:32,max:256,hideTooltip:!0,label:t("gallery.galleryImageSize")}),g.jsx(Ye,{size:"sm","aria-label":t("gallery.galleryImageResetSize"),tooltip:t("gallery.galleryImageResetSize"),onClick:()=>e(Gv(64)),icon:g.jsx(f4,{}),"data-selected":o,styleClass:"image-gallery-icon-btn"})]}),g.jsx("div",{children:g.jsx(Gn,{label:t("gallery.maintainAspectRatio"),isChecked:h==="contain",onChange:()=>e(E3e(h==="contain"?"cover":"contain"))})}),g.jsx("div",{children:g.jsx(Gn,{label:t("gallery.autoSwitchNewImages"),isChecked:y,onChange:xe=>e(P3e(xe.target.checked))})}),g.jsx("div",{children:g.jsx(Gn,{label:t("gallery.singleColumnLayout"),isChecked:T,onChange:xe=>e(M3e(xe.target.checked))})})]})}),g.jsx(Ye,{size:"sm",className:"image-gallery-icon-btn","aria-label":t("gallery.pinGallery"),tooltip:`${t("gallery.pinGallery")} (Shift+G)`,onClick:V,icon:o?g.jsx(fG,{}):g.jsx(hG,{})})]})]}),g.jsx("div",{className:"image-gallery-container",ref:z,children:n.length||b?g.jsxs(g.Fragment,{children:[g.jsx("div",{className:"image-gallery",style:{gridTemplateColumns:u},children:n.map(xe=>{const{uuid:Le}=xe,Se=i===Le;return g.jsx(KG,{image:xe,isSelected:Se},Le)})}),g.jsx(ss,{onClick:Y,isDisabled:!b,className:"image-gallery-load-more-btn",children:t(b?"gallery.loadMore":"gallery.allImagesLoaded")})]}):g.jsxs("div",{className:"image-gallery-container-placeholder",children:[g.jsx(pG,{}),g.jsx("p",{children:t("gallery.noImagesInGallery")})]})})]}),N&&g.jsx("div",{style:{width:`${w}px`,height:"100%"}})]})})}var ns=function(e,t){return Number(e.toFixed(t))},A8e=function(e,t){return typeof e=="number"?e:t},mr=function(e,t,n){n&&typeof n=="function"&&n(e,t)},O8e=function(e){return-Math.cos(e*Math.PI)/2+.5},R8e=function(e){return e},I8e=function(e){return e*e},D8e=function(e){return e*(2-e)},j8e=function(e){return e<.5?2*e*e:-1+(4-2*e)*e},N8e=function(e){return e*e*e},$8e=function(e){return--e*e*e+1},F8e=function(e){return e<.5?4*e*e*e:(e-1)*(2*e-2)*(2*e-2)+1},B8e=function(e){return e*e*e*e},z8e=function(e){return 1- --e*e*e*e},H8e=function(e){return e<.5?8*e*e*e*e:1-8*--e*e*e*e},W8e=function(e){return e*e*e*e*e},U8e=function(e){return 1+--e*e*e*e*e},V8e=function(e){return e<.5?16*e*e*e*e*e:1+16*--e*e*e*e*e},XG={easeOut:O8e,linear:R8e,easeInQuad:I8e,easeOutQuad:D8e,easeInOutQuad:j8e,easeInCubic:N8e,easeOutCubic:$8e,easeInOutCubic:F8e,easeInQuart:B8e,easeOutQuart:z8e,easeInOutQuart:H8e,easeInQuint:W8e,easeOutQuint:U8e,easeInOutQuint:V8e},ZG=function(e){typeof e=="number"&&cancelAnimationFrame(e)},Fl=function(e){e.mounted&&(ZG(e.animation),e.animate=!1,e.animation=null,e.velocity=null)};function QG(e,t,n,r){if(e.mounted){var i=new Date().getTime(),o=1;Fl(e),e.animation=function(){if(!e.mounted)return ZG(e.animation);var a=new Date().getTime()-i,s=a/n,l=XG[t],u=l(s);a>=n?(r(o),e.animation=null):e.animation&&(r(u),requestAnimationFrame(e.animation))},requestAnimationFrame(e.animation)}}function G8e(e){var t=e.scale,n=e.positionX,r=e.positionY;return!(Number.isNaN(t)||Number.isNaN(n)||Number.isNaN(r))}function ff(e,t,n,r){var i=G8e(t);if(!(!e.mounted||!i)){var o=e.setTransformState,a=e.transformState,s=a.scale,l=a.positionX,u=a.positionY,d=t.scale-s,h=t.positionX-l,m=t.positionY-u;n===0?o(t.scale,t.positionX,t.positionY):QG(e,r,n,function(y){var b=s+d*y,w=l+h*y,E=u+m*y;o(b,w,E)})}}function q8e(e,t,n){var r=e.offsetWidth,i=e.offsetHeight,o=t.offsetWidth,a=t.offsetHeight,s=o*n,l=a*n,u=r-s,d=i-l;return{wrapperWidth:r,wrapperHeight:i,newContentWidth:s,newDiffWidth:u,newContentHeight:l,newDiffHeight:d}}var K8e=function(e,t,n,r,i,o,a){var s=e>t?n*(a?1:.5):0,l=r>i?o*(a?1:.5):0,u=e-t-s,d=s,h=r-i-l,m=l;return{minPositionX:u,maxPositionX:d,minPositionY:h,maxPositionY:m}},XE=function(e,t){var n=e.wrapperComponent,r=e.contentComponent,i=e.setup.centerZoomedOut;if(!n||!r)throw new Error("Components are not mounted");var o=q8e(n,r,t),a=o.wrapperWidth,s=o.wrapperHeight,l=o.newContentWidth,u=o.newDiffWidth,d=o.newContentHeight,h=o.newDiffHeight,m=K8e(a,l,u,s,d,h,Boolean(i));return m},r7=function(e,t,n,r){return r?en?ns(n,2):ns(e,2):ns(e,2)},t0=function(e,t){var n=XE(e,t);return e.bounds=n,n};function b4(e,t,n,r,i,o,a){var s=n.minPositionX,l=n.minPositionY,u=n.maxPositionX,d=n.maxPositionY,h=0,m=0;a&&(h=i,m=o);var y=r7(e,s-h,u+h,r),b=r7(t,l-m,d+m,r);return{x:y,y:b}}function x4(e,t,n,r,i,o){var a=e.transformState,s=a.scale,l=a.positionX,u=a.positionY,d=r-s;if(typeof t!="number"||typeof n!="number")return console.error("Mouse X and Y position were not provided!"),{x:l,y:u};var h=l-t*d,m=u-n*d,y=b4(h,m,i,o,0,0,null);return y}function w2(e,t,n,r,i){var o=i?r:0,a=t-o;return!Number.isNaN(n)&&e>=n?n:!Number.isNaN(t)&&e<=a?a:e}var oD=function(e,t){var n=e.setup.panning.excluded,r=e.isInitialized,i=e.wrapperComponent,o=t.target,a=i==null?void 0:i.contains(o),s=r&&o&&a;if(!s)return!1;var l=S4(o,n);return!l},aD=function(e){var t=e.isInitialized,n=e.isPanning,r=e.setup,i=r.panning.disabled,o=t&&n&&!i;return!!o},Y8e=function(e,t){var n=e.transformState,r=n.positionX,i=n.positionY;e.isPanning=!0;var o=t.clientX,a=t.clientY;e.startCoords={x:o-r,y:a-i}},X8e=function(e,t){var n=t.touches,r=e.transformState,i=r.positionX,o=r.positionY;e.isPanning=!0;var a=n.length===1;if(a){var s=n[0].clientX,l=n[0].clientY;e.startCoords={x:s-i,y:l-o}}};function Z8e(e){var t=e.transformState,n=t.positionX,r=t.positionY,i=t.scale,o=e.setup,a=o.disabled,s=o.limitToBounds,l=o.centerZoomedOut,u=e.wrapperComponent;if(!(a||!u||!e.bounds)){var d=e.bounds,h=d.maxPositionX,m=d.minPositionX,y=d.maxPositionY,b=d.minPositionY,w=n>h||ny||rh?u.offsetWidth:e.setup.minPositionX||0,k=r>y?u.offsetHeight:e.setup.minPositionY||0,T=x4(e,_,k,i,e.bounds,s||l),L=T.x,O=T.y;return{scale:i,positionX:w?L:n,positionY:E?O:r}}}function Q8e(e,t,n,r,i){var o=e.setup.limitToBounds,a=e.wrapperComponent,s=e.bounds,l=e.transformState,u=l.scale,d=l.positionX,h=l.positionY;if(!(a===null||s===null||t===d&&n===h)){var m=b4(t,n,s,o,r,i,a),y=m.x,b=m.y;e.setTransformState(u,y,b)}}var J8e=function(e,t,n){var r=e.startCoords,i=e.transformState,o=e.setup.panning,a=o.lockAxisX,s=o.lockAxisY,l=i.positionX,u=i.positionY;if(!r)return{x:l,y:u};var d=t-r.x,h=n-r.y,m=a?l:d,y=s?u:h;return{x:m,y}},N3=function(e,t){var n=e.setup,r=e.transformState,i=r.scale,o=n.minScale,a=n.disablePadding;return t>0&&i>=o&&!a?t:0},eEe=function(e){var t=e.mounted,n=e.setup,r=n.disabled,i=n.velocityAnimation,o=e.transformState.scale,a=i.disabled,s=!a||o>1||!r||t;return!!s},tEe=function(e){var t=e.mounted,n=e.velocity,r=e.bounds,i=e.setup,o=i.disabled,a=i.velocityAnimation,s=e.transformState.scale,l=a.disabled,u=!l||s>1||!o||t;return!(!u||!n||!r)};function nEe(e,t){var n=e.setup.velocityAnimation,r=n.equalToMove,i=n.animationTime,o=n.sensitivity;return r?i*t*o:i}function sD(e,t,n,r,i,o,a,s,l,u){if(i){if(t>a&&n>a){var d=a+(e-a)*u;return d>l?l:do?o:d}}return r?t:r7(e,o,a,i)}function rEe(e,t){var n=1;return t?Math.min(n,e.offsetWidth/window.innerWidth):n}function iEe(e,t){var n=eEe(e);if(n){var r=e.lastMousePosition,i=e.velocityTime,o=e.setup,a=e.wrapperComponent,s=o.velocityAnimation.equalToMove,l=Date.now();if(r&&i&&a){var u=rEe(a,s),d=t.x-r.x,h=t.y-r.y,m=d/u,y=h/u,b=l-i,w=d*d+h*h,E=Math.sqrt(w)/b;e.velocity={velocityX:m,velocityY:y,total:E}}e.lastMousePosition=t,e.velocityTime=l}}function oEe(e){var t=e.velocity,n=e.bounds,r=e.setup,i=e.wrapperComponent,o=tEe(e);if(!(!o||!t||!n||!i)){var a=t.velocityX,s=t.velocityY,l=t.total,u=n.maxPositionX,d=n.minPositionX,h=n.maxPositionY,m=n.minPositionY,y=r.limitToBounds,b=r.alignmentAnimation,w=r.zoomAnimation,E=r.panning,_=E.lockAxisY,k=E.lockAxisX,T=w.animationType,L=b.sizeX,O=b.sizeY,D=b.velocityAlignmentTime,I=D,N=nEe(e,l),W=Math.max(N,I),B=N3(e,L),K=N3(e,O),ne=B*i.offsetWidth/100,z=K*i.offsetHeight/100,$=u+ne,V=d-ne,X=h+z,Q=m-z,G=e.transformState,Y=new Date().getTime();QG(e,T,W,function(ee){var fe=e.transformState,Ce=fe.scale,we=fe.positionX,xe=fe.positionY,Le=new Date().getTime()-Y,Se=Le/I,Qe=XG[b.animationType],Xe=1-Qe(Math.min(1,Se)),tt=1-ee,yt=we+a*tt,Be=xe+s*tt,Ae=sD(yt,G.positionX,we,k,y,d,u,V,$,Xe),bt=sD(Be,G.positionY,xe,_,y,m,h,Q,X,Xe);(we!==yt||xe!==Be)&&e.setTransformState(Ce,Ae,bt)})}}function lD(e,t){var n=e.transformState.scale;Fl(e),t0(e,n),window.TouchEvent!==void 0&&t instanceof TouchEvent?X8e(e,t):Y8e(e,t)}function JG(e){var t=e.transformState.scale,n=e.setup,r=n.minScale,i=n.alignmentAnimation,o=i.disabled,a=i.sizeX,s=i.sizeY,l=i.animationTime,u=i.animationType,d=o||t.1&&h;m?oEe(e):JG(e)}}function ZE(e,t,n,r){var i=e.setup,o=i.minScale,a=i.maxScale,s=i.limitToBounds,l=w2(ns(t,2),o,a,0,!1),u=t0(e,l),d=x4(e,n,r,l,u,s),h=d.x,m=d.y;return{scale:l,positionX:h,positionY:m}}function eq(e,t,n){var r=e.transformState.scale,i=e.wrapperComponent,o=e.setup,a=o.minScale,s=o.limitToBounds,l=o.zoomAnimation,u=l.disabled,d=l.animationTime,h=l.animationType,m=u||r>=a;if((r>=1||s)&&JG(e),!(m||!i||!e.mounted)){var y=t||i.offsetWidth/2,b=n||i.offsetHeight/2,w=ZE(e,a,y,b);w&&ff(e,w,d,h)}}var Wd=function(){return Wd=Object.assign||function(t){for(var n,r=1,i=arguments.length;ra||Math.sign(n.deltaY)!==Math.sign(t.deltaY)||n.deltaY>0&&n.deltaYt.deltaY||Math.sign(n.deltaY)!==Math.sign(t.deltaY):!1},wEe=function(e,t){var n=e.setup.pinch,r=n.disabled,i=n.excluded,o=e.isInitialized,a=t.target,s=o&&!r&&a;if(!s)return!1;var l=S4(a,i);return!l},CEe=function(e){var t=e.setup.pinch.disabled,n=e.isInitialized,r=e.pinchStartDistance,i=n&&!t&&r;return!!i},_Ee=function(e,t,n){var r=n.getBoundingClientRect(),i=e.touches,o=ns(i[0].clientX-r.left,5),a=ns(i[0].clientY-r.top,5),s=ns(i[1].clientX-r.left,5),l=ns(i[1].clientY-r.top,5);return{x:(o+s)/2/t,y:(a+l)/2/t}},sq=function(e){return Math.sqrt(Math.pow(e.touches[0].pageX-e.touches[1].pageX,2)+Math.pow(e.touches[0].pageY-e.touches[1].pageY,2))},kEe=function(e,t){var n=e.pinchStartScale,r=e.pinchStartDistance,i=e.setup,o=i.maxScale,a=i.minScale,s=i.zoomAnimation,l=i.disablePadding,u=s.size,d=s.disabled;if(!n||r===null||!t)throw new Error("Pinch touches distance was not provided");if(t<0)return e.transformState.scale;var h=t/r,m=h*n;return w2(ns(m,2),a,o,u,!d&&!l)},EEe=160,PEe=100,TEe=function(e,t){var n=e.props,r=n.onWheelStart,i=n.onZoomStart;e.wheelStopEventTimer||(Fl(e),mr(Un(e),t,r),mr(Un(e),t,i))},MEe=function(e,t){var n=e.props,r=n.onWheel,i=n.onZoom,o=e.contentComponent,a=e.setup,s=e.transformState,l=s.scale,u=a.limitToBounds,d=a.centerZoomedOut,h=a.zoomAnimation,m=a.wheel,y=a.disablePadding,b=h.size,w=h.disabled,E=m.step;if(!o)throw new Error("Component not mounted");t.preventDefault(),t.stopPropagation();var _=bEe(t,null),k=xEe(e,_,E,!t.ctrlKey);if(l!==k){var T=t0(e,k),L=aq(t,o,l),O=w||b===0||d||y,D=u&&O,I=x4(e,L.x,L.y,k,T,D),N=I.x,W=I.y;e.previousWheelEvent=t,e.setTransformState(k,N,W),mr(Un(e),t,r),mr(Un(e),t,i)}},LEe=function(e,t){var n=e.props,r=n.onWheelStop,i=n.onZoomStop;i7(e.wheelAnimationTimer),e.wheelAnimationTimer=setTimeout(function(){e.mounted&&(eq(e,t.x,t.y),e.wheelAnimationTimer=null)},PEe);var o=SEe(e,t);o&&(i7(e.wheelStopEventTimer),e.wheelStopEventTimer=setTimeout(function(){e.mounted&&(e.wheelStopEventTimer=null,mr(Un(e),t,r),mr(Un(e),t,i))},EEe))},AEe=function(e,t){var n=sq(t);e.pinchStartDistance=n,e.lastDistance=n,e.pinchStartScale=e.transformState.scale,e.isPanning=!1,Fl(e)},OEe=function(e,t){var n=e.contentComponent,r=e.pinchStartDistance,i=e.transformState.scale,o=e.setup,a=o.limitToBounds,s=o.centerZoomedOut,l=o.zoomAnimation,u=l.disabled,d=l.size;if(!(r===null||!n)){var h=_Ee(t,i,n);if(!(!Number.isFinite(h.x)||!Number.isFinite(h.y))){var m=sq(t),y=kEe(e,m);if(y!==i){var b=t0(e,y),w=u||d===0||s,E=a&&w,_=x4(e,h.x,h.y,y,b,E),k=_.x,T=_.y;e.pinchMidpoint=h,e.lastDistance=m,e.setTransformState(y,k,T)}}}},REe=function(e){var t=e.pinchMidpoint;e.velocity=null,e.lastDistance=null,e.pinchMidpoint=null,e.pinchStartScale=null,e.pinchStartDistance=null,eq(e,t==null?void 0:t.x,t==null?void 0:t.y)},lq=function(e,t){var n=e.props.onZoomStop,r=e.setup.doubleClick.animationTime;i7(e.doubleClickStopEventTimer),e.doubleClickStopEventTimer=setTimeout(function(){e.doubleClickStopEventTimer=null,mr(Un(e),t,n)},r)},IEe=function(e,t){var n=e.props,r=n.onZoomStart,i=n.onZoom,o=e.setup.doubleClick,a=o.animationTime,s=o.animationType;mr(Un(e),t,r),iq(e,a,s,function(){return mr(Un(e),t,i)}),lq(e,t)};function DEe(e,t){var n=e.setup,r=e.doubleClickStopEventTimer,i=e.transformState,o=e.contentComponent,a=i.scale,s=e.props,l=s.onZoomStart,u=s.onZoom,d=n.doubleClick,h=d.disabled,m=d.mode,y=d.step,b=d.animationTime,w=d.animationType;if(!h&&!r){if(m==="reset")return IEe(e,t);if(!o)return console.error("No ContentComponent found");var E=m==="zoomOut"?-1:1,_=nq(e,E,y);if(a!==_){mr(Un(e),t,l);var k=aq(t,o,a),T=ZE(e,_,k.x,k.y);if(!T)return console.error("Error during zoom event. New transformation state was not calculated.");mr(Un(e),t,u),ff(e,T,b,w),lq(e,t)}}}var jEe=function(e,t){var n=e.isInitialized,r=e.setup,i=e.wrapperComponent,o=r.doubleClick,a=o.disabled,s=o.excluded,l=t.target,u=i==null?void 0:i.contains(l),d=n&&l&&u&&!a;if(!d)return!1;var h=S4(l,s);return!h},NEe=function(){function e(t){var n=this;this.mounted=!0,this.onChangeCallbacks=new Set,this.wrapperComponent=null,this.contentComponent=null,this.isInitialized=!1,this.bounds=null,this.previousWheelEvent=null,this.wheelStopEventTimer=null,this.wheelAnimationTimer=null,this.isPanning=!1,this.startCoords=null,this.lastTouch=null,this.distance=null,this.lastDistance=null,this.pinchStartDistance=null,this.pinchStartScale=null,this.pinchMidpoint=null,this.doubleClickStopEventTimer=null,this.velocity=null,this.velocityTime=null,this.lastMousePosition=null,this.animate=!1,this.animation=null,this.maxBounds=null,this.pressedKeys={},this.mount=function(){n.initializeWindowEvents()},this.unmount=function(){n.cleanupWindowEvents()},this.update=function(r){t0(n,n.transformState.scale),n.setup=dD(r)},this.initializeWindowEvents=function(){var r,i=o6(),o=(r=n.wrapperComponent)===null||r===void 0?void 0:r.ownerDocument,a=o==null?void 0:o.defaultView;a==null||a.addEventListener("mousedown",n.onPanningStart,i),a==null||a.addEventListener("mousemove",n.onPanning,i),a==null||a.addEventListener("mouseup",n.onPanningStop,i),o==null||o.addEventListener("mouseleave",n.clearPanning,i),a==null||a.addEventListener("keyup",n.setKeyUnPressed,i),a==null||a.addEventListener("keydown",n.setKeyPressed,i)},this.cleanupWindowEvents=function(){var r,i,o=o6(),a=(r=n.wrapperComponent)===null||r===void 0?void 0:r.ownerDocument,s=a==null?void 0:a.defaultView;s==null||s.removeEventListener("mousedown",n.onPanningStart,o),s==null||s.removeEventListener("mousemove",n.onPanning,o),s==null||s.removeEventListener("mouseup",n.onPanningStop,o),a==null||a.removeEventListener("mouseleave",n.clearPanning,o),s==null||s.removeEventListener("keyup",n.setKeyUnPressed,o),s==null||s.removeEventListener("keydown",n.setKeyPressed,o),document.removeEventListener("mouseleave",n.clearPanning,o),Fl(n),(i=n.observer)===null||i===void 0||i.disconnect()},this.handleInitializeWrapperEvents=function(r){var i=o6();r.addEventListener("wheel",n.onWheelZoom,i),r.addEventListener("dblclick",n.onDoubleClick,i),r.addEventListener("touchstart",n.onTouchPanningStart,i),r.addEventListener("touchmove",n.onTouchPanning,i),r.addEventListener("touchend",n.onTouchPanningStop,i)},this.handleInitialize=function(r){var i=n.setup.centerOnInit;n.applyTransformation(),i&&(n.setCenter(),n.observer=new ResizeObserver(function(){var o;n.setCenter(),(o=n.observer)===null||o===void 0||o.disconnect()}),n.observer.observe(r))},this.onWheelZoom=function(r){var i=n.setup.disabled;if(!i){var o=vEe(n,r);if(o){var a=n.isPressingKeys(n.setup.wheel.activationKeys);a&&(TEe(n,r),MEe(n,r),LEe(n,r))}}},this.onPanningStart=function(r){var i=n.setup.disabled,o=n.props.onPanningStart;if(!i){var a=oD(n,r);if(a){var s=n.isPressingKeys(n.setup.panning.activationKeys);s&&(r.preventDefault(),r.stopPropagation(),Fl(n),lD(n,r),mr(Un(n),r,o))}}},this.onPanning=function(r){var i=n.setup.disabled,o=n.props.onPanning;if(!i){var a=aD(n);if(a){var s=n.isPressingKeys(n.setup.panning.activationKeys);s&&(r.preventDefault(),r.stopPropagation(),uD(n,r.clientX,r.clientY),mr(Un(n),r,o))}}},this.onPanningStop=function(r){var i=n.props.onPanningStop;n.isPanning&&(aEe(n),mr(Un(n),r,i))},this.onPinchStart=function(r){var i=n.setup.disabled,o=n.props,a=o.onPinchingStart,s=o.onZoomStart;if(!i){var l=wEe(n,r);l&&(AEe(n,r),Fl(n),mr(Un(n),r,a),mr(Un(n),r,s))}},this.onPinch=function(r){var i=n.setup.disabled,o=n.props,a=o.onPinching,s=o.onZoom;if(!i){var l=CEe(n);l&&(r.preventDefault(),r.stopPropagation(),OEe(n,r),mr(Un(n),r,a),mr(Un(n),r,s))}},this.onPinchStop=function(r){var i=n.props,o=i.onPinchingStop,a=i.onZoomStop;n.pinchStartScale&&(REe(n),mr(Un(n),r,o),mr(Un(n),r,a))},this.onTouchPanningStart=function(r){var i=n.setup.disabled,o=n.props.onPanningStart;if(!i){var a=oD(n,r);if(a){var s=n.lastTouch&&+new Date-n.lastTouch<200;if(s&&r.touches.length===1)n.onDoubleClick(r);else{n.lastTouch=+new Date,Fl(n);var l=r.touches,u=l.length===1,d=l.length===2;u&&(Fl(n),lD(n,r),mr(Un(n),r,o)),d&&n.onPinchStart(r)}}}},this.onTouchPanning=function(r){var i=n.setup.disabled,o=n.props.onPanning;if(n.isPanning&&r.touches.length===1){if(i)return;var a=aD(n);if(!a)return;r.preventDefault(),r.stopPropagation();var s=r.touches[0];uD(n,s.clientX,s.clientY),mr(Un(n),r,o)}else r.touches.length>1&&n.onPinch(r)},this.onTouchPanningStop=function(r){n.onPanningStop(r),n.onPinchStop(r)},this.onDoubleClick=function(r){var i=n.setup.disabled;if(!i){var o=jEe(n,r);o&&DEe(n,r)}},this.clearPanning=function(r){n.isPanning&&n.onPanningStop(r)},this.setKeyPressed=function(r){n.pressedKeys[r.key]=!0},this.setKeyUnPressed=function(r){n.pressedKeys[r.key]=!1},this.isPressingKeys=function(r){return r.length?Boolean(r.find(function(i){return n.pressedKeys[i]})):!0},this.setTransformState=function(r,i,o){var a=n.props.onTransformed;if(!Number.isNaN(r)&&!Number.isNaN(i)&&!Number.isNaN(o)){r!==n.transformState.scale&&(n.transformState.previousScale=n.transformState.scale,n.transformState.scale=r),n.transformState.positionX=i,n.transformState.positionY=o;var s=Un(n);n.onChangeCallbacks.forEach(function(l){return l(s)}),mr(s,{scale:r,positionX:i,positionY:o},a),n.applyTransformation()}else console.error("Detected NaN set state values")},this.setCenter=function(){if(n.wrapperComponent&&n.contentComponent){var r=oq(n.transformState.scale,n.wrapperComponent,n.contentComponent);n.setTransformState(r.scale,r.positionX,r.positionY)}},this.handleTransformStyles=function(r,i,o){return n.props.customTransform?n.props.customTransform(r,i,o):gEe(r,i,o)},this.applyTransformation=function(){if(!(!n.mounted||!n.contentComponent)){var r=n.transformState,i=r.scale,o=r.positionX,a=r.positionY,s=n.handleTransformStyles(o,a,i);n.contentComponent.style.transform=s}},this.getContext=function(){return Un(n)},this.onChange=function(r){return n.onChangeCallbacks.has(r)||n.onChangeCallbacks.add(r),function(){n.onChangeCallbacks.delete(r)}},this.init=function(r,i){n.cleanupWindowEvents(),n.wrapperComponent=r,n.contentComponent=i,t0(n,n.transformState.scale),n.handleInitializeWrapperEvents(r),n.handleInitialize(i),n.initializeWindowEvents(),n.isInitialized=!0,mr(Un(n),void 0,n.props.onInit)},this.props=t,this.setup=dD(this.props),this.transformState=tq(this.props)}return e}(),QE=Ke.createContext(null),$Ee=function(e,t){return typeof e=="function"?e(t):e},FEe=Ke.forwardRef(function(e,t){var n=S.useState(0),r=n[1],i=e.children,o=S.useRef(new NEe(e)).current,a=$Ee(e.children,Un(o)),s=S.useCallback(function(){typeof i=="function"&&r(function(l){return l+1})},[i]);return S.useImperativeHandle(t,function(){return Un(o)},[o]),S.useEffect(function(){o.update(e)},[o,e]),S.useEffect(function(){return o.onChange(s)},[o,e,s]),Ke.createElement(QE.Provider,{value:o},a)});function BEe(e,t){t===void 0&&(t={});var n=t.insertAt;if(!(!e||typeof document>"u")){var r=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css",n==="top"&&r.firstChild?r.insertBefore(i,r.firstChild):r.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}}var zEe=`.transform-component-module_wrapper__7HFJe { +}`;var Vt=yT(function(){return en(H,gt+"return "+Re).apply(n,Z)});if(Vt.source=Re,Y4(Vt))throw Vt;return Vt}function iQ(c){return _n(c).toLowerCase()}function oQ(c){return _n(c).toUpperCase()}function aQ(c,v,C){if(c=_n(c),c&&(C||v===n))return co(c);if(!c||!(v=po(v)))return c;var A=Qi(c),j=Qi(v),H=la(A,j),Z=Cs(A,j)+1;return Ls(A,H,Z).join("")}function sQ(c,v,C){if(c=_n(c),c&&(C||v===n))return c.slice(0,G0(c)+1);if(!c||!(v=po(v)))return c;var A=Qi(c),j=Cs(A,Qi(v))+1;return Ls(A,0,j).join("")}function lQ(c,v,C){if(c=_n(c),c&&(C||v===n))return c.replace(xc,"");if(!c||!(v=po(v)))return c;var A=Qi(c),j=la(A,Qi(v));return Ls(A,j).join("")}function uQ(c,v){var C=B,A=K;if(Cr(v)){var j="separator"in v?v.separator:j;C="length"in v?Ft(v.length):C,A="omission"in v?po(v.omission):A}c=_n(c);var H=c.length;if(bu(c)){var Z=Qi(c);H=Z.length}if(C>=H)return c;var te=C-za(A);if(te<1)return A;var ce=Z?Ls(Z,0,te).join(""):c.slice(0,te);if(j===n)return ce+A;if(Z&&(te+=ce.length-te),X4(j)){if(c.slice(te).search(j)){var ke,Pe=ce;for(j.global||(j=If(j.source,_n(bs.exec(j))+"g")),j.lastIndex=0;ke=j.exec(Pe);)var Re=ke.index;ce=ce.slice(0,Re===n?te:Re)}}else if(c.indexOf(po(j),te)!=te){var nt=ce.lastIndexOf(j);nt>-1&&(ce=ce.slice(0,nt))}return ce+A}function cQ(c){return c=_n(c),c&&_0.test(c)?c.replace(ys,D2):c}var dQ=_l(function(c,v,C){return c+(C?" ":"")+v.toUpperCase()}),J4=pg("toUpperCase");function vT(c,v,C){return c=_n(c),v=C?n:v,v===n?jp(c)?Rf(c):W0(c):c.match(v)||[]}var yT=Tt(function(c,v){try{return Ii(c,n,v)}catch(C){return Y4(C)?C:new Lt(C)}}),fQ=gr(function(c,v){return Zn(v,function(C){C=kl(C),fa(c,C,q4(c[C],c))}),c});function hQ(c){var v=c==null?0:c.length,C=Oe();return c=v?Hn(c,function(A){if(typeof A[1]!="function")throw new Di(a);return[C(A[0]),A[1]]}):[],Tt(function(A){for(var j=-1;++jG)return[];var C=fe,A=hi(c,fe);v=Oe(v),c-=fe;for(var j=Lf(A,v);++C0||v<0)?new Yt(C):(c<0?C=C.takeRight(-c):c&&(C=C.drop(c)),v!==n&&(v=Ft(v),C=v<0?C.dropRight(-v):C.take(v-c)),C)},Yt.prototype.takeRightWhile=function(c){return this.reverse().takeWhile(c).reverse()},Yt.prototype.toArray=function(){return this.take(fe)},ga(Yt.prototype,function(c,v){var C=/^(?:filter|find|map|reject)|While$/.test(v),A=/^(?:head|last)$/.test(v),j=F[A?"take"+(v=="last"?"Right":""):v],H=A||/^find/.test(v);j&&(F.prototype[v]=function(){var Z=this.__wrapped__,te=A?[1]:arguments,ce=Z instanceof Yt,ke=te[0],Pe=ce||$t(Z),Re=function(Xt){var tn=j.apply(F,Ba([Xt],te));return A&&nt?tn[0]:tn};Pe&&C&&typeof ke=="function"&&ke.length!=1&&(ce=Pe=!1);var nt=this.__chain__,gt=!!this.__actions__.length,_t=H&&!nt,Vt=ce&&!gt;if(!H&&Pe){Z=Vt?Z:new Yt(this);var kt=c.apply(Z,te);return kt.__actions__.push({func:ab,args:[Re],thisArg:n}),new fo(kt,nt)}return _t&&Vt?c.apply(this,te):(kt=this.thru(Re),_t?A?kt.value()[0]:kt.value():kt)})}),Zn(["pop","push","shift","sort","splice","unshift"],function(c){var v=Ic[c],C=/^(?:push|sort|unshift)$/.test(c)?"tap":"thru",A=/^(?:pop|shift)$/.test(c);F.prototype[c]=function(){var j=arguments;if(A&&!this.__chain__){var H=this.value();return v.apply($t(H)?H:[],j)}return this[C](function(Z){return v.apply($t(Z)?Z:[],j)})}}),ga(Yt.prototype,function(c,v){var C=F[v];if(C){var A=C.name+"";an.call(ks,A)||(ks[A]=[]),ks[A].push({name:v,func:C})}}),ks[Qf(n,_).name]=[{name:"wrapper",func:n}],Yt.prototype.clone=Ji,Yt.prototype.reverse=Ni,Yt.prototype.value=U2,F.prototype.at=zY,F.prototype.chain=HY,F.prototype.commit=WY,F.prototype.next=UY,F.prototype.plant=GY,F.prototype.reverse=qY,F.prototype.toJSON=F.prototype.valueOf=F.prototype.value=KY,F.prototype.first=F.prototype.head,Fc&&(F.prototype[Fc]=VY),F},Ha=Ro();Kt?((Kt.exports=Ha)._=Ha,Ot._=Ha):St._=Ha}).call(So)})(USe,Ce);const Pg=(e,t,n,r,i,o,a)=>{const s=e/2-(n+i/2)*a,l=t/2-(r+o/2)*a;return{x:s,y:l}},Tg=(e,t,n,r,i=.95)=>{const o=e*i/n,a=t*i/r;return Math.min(1,Math.min(o,a))},VSe=.999,GSe=.1,qSe=20,Vv=.95,KO=30,pk=10,YO=e=>({x:Math.floor(e.x),y:Math.floor(e.y)}),ih=e=>{const{width:t,height:n}=e,r={width:t,height:n},i=512*512,o=t/n;let a=t*n,s=448;for(;a1?(r.width=s,r.height=Hl(s/o,64)):o<1&&(r.height=s,r.width=Hl(s*o,64)),a=r.width*r.height;return r},KSe=e=>({width:Hl(e.width,64),height:Hl(e.height,64)}),IW=[{key:"Base",value:"base"},{key:"Mask",value:"mask"}],YSe=[{key:"Auto",value:"auto"},{key:"Manual",value:"manual"},{key:"None",value:"none"}],hE=e=>e.kind==="line"&&e.layer==="mask",XSe=e=>e.kind==="line"&&e.layer==="base",x3=e=>e.kind==="image"&&e.layer==="base",ZSe=e=>e.kind==="fillRect"&&e.layer==="base",QSe=e=>e.kind==="eraseRect"&&e.layer==="base",JSe=e=>e.kind==="line",p1={objects:[],stagingArea:{images:[],selectedImageIndex:-1}},e3e={boundingBoxCoordinates:{x:0,y:0},boundingBoxDimensions:{width:512,height:512},boundingBoxPreviewFill:{r:0,g:0,b:0,a:.5},boundingBoxScaleMethod:"auto",brushColor:{r:90,g:90,b:255,a:1},brushSize:50,canvasContainerDimensions:{width:0,height:0},colorPickerColor:{r:90,g:90,b:255,a:1},cursorPosition:null,doesCanvasNeedScaling:!1,futureLayerStates:[],isCanvasInitialized:!1,isDrawing:!1,isMaskEnabled:!0,isMouseOverBoundingBox:!1,isMoveBoundingBoxKeyHeld:!1,isMoveStageKeyHeld:!1,isMovingBoundingBox:!1,isMovingStage:!1,isTransformingBoundingBox:!1,layer:"base",layerState:p1,maskColor:{r:255,g:90,b:90,a:1},maxHistory:128,minimumStageScale:1,pastLayerStates:[],scaledBoundingBoxDimensions:{width:512,height:512},shouldAutoSave:!1,shouldCropToBoundingBoxOnSave:!1,shouldDarkenOutsideBoundingBox:!1,shouldLockBoundingBox:!1,shouldPreserveMaskedArea:!1,shouldRestrictStrokesToBox:!0,shouldShowBoundingBox:!0,shouldShowBrush:!0,shouldShowBrushPreview:!1,shouldShowCanvasDebugInfo:!1,shouldShowCheckboardTransparency:!1,shouldShowGrid:!0,shouldShowIntermediates:!0,shouldShowStagingImage:!0,shouldShowStagingOutline:!0,shouldSnapToGrid:!0,stageCoordinates:{x:0,y:0},stageDimensions:{width:0,height:0},stageScale:1,tool:"brush"},DW=ap({name:"canvas",initialState:e3e,reducers:{setTool:(e,t)=>{const n=t.payload;e.tool=t.payload,n!=="move"&&(e.isTransformingBoundingBox=!1,e.isMouseOverBoundingBox=!1,e.isMovingBoundingBox=!1,e.isMovingStage=!1)},setLayer:(e,t)=>{e.layer=t.payload},toggleTool:e=>{const t=e.tool;t!=="move"&&(e.tool=t==="brush"?"eraser":"brush")},setMaskColor:(e,t)=>{e.maskColor=t.payload},setBrushColor:(e,t)=>{e.brushColor=t.payload},setBrushSize:(e,t)=>{e.brushSize=t.payload},clearMask:e=>{e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.layerState.objects=e.layerState.objects.filter(t=>!hE(t)),e.futureLayerStates=[],e.shouldPreserveMaskedArea=!1},toggleShouldInvertMask:e=>{e.shouldPreserveMaskedArea=!e.shouldPreserveMaskedArea},toggleShouldShowMask:e=>{e.isMaskEnabled=!e.isMaskEnabled},setShouldPreserveMaskedArea:(e,t)=>{e.shouldPreserveMaskedArea=t.payload},setIsMaskEnabled:(e,t)=>{e.isMaskEnabled=t.payload,e.layer=t.payload?"mask":"base"},setShouldShowCheckboardTransparency:(e,t)=>{e.shouldShowCheckboardTransparency=t.payload},setShouldShowBrushPreview:(e,t)=>{e.shouldShowBrushPreview=t.payload},setShouldShowBrush:(e,t)=>{e.shouldShowBrush=t.payload},setCursorPosition:(e,t)=>{e.cursorPosition=t.payload},setInitialCanvasImage:(e,t)=>{const n=t.payload,{stageDimensions:r}=e,i={width:Cd(Ce.clamp(n.width,64,512),64),height:Cd(Ce.clamp(n.height,64,512),64)},o={x:Hl(n.width/2-i.width/2,64),y:Hl(n.height/2-i.height/2,64)};if(e.boundingBoxScaleMethod==="auto"){const l=ih(i);e.scaledBoundingBoxDimensions=l}e.boundingBoxDimensions=i,e.boundingBoxCoordinates=o,e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.layerState={...p1,objects:[{kind:"image",layer:"base",x:0,y:0,width:n.width,height:n.height,image:n}]},e.futureLayerStates=[],e.isCanvasInitialized=!1;const a=Tg(r.width,r.height,n.width,n.height,Vv),s=Pg(r.width,r.height,0,0,n.width,n.height,a);e.stageScale=a,e.stageCoordinates=s,e.doesCanvasNeedScaling=!0},setBoundingBoxDimensions:(e,t)=>{const n=KSe(t.payload);if(e.boundingBoxDimensions=n,e.boundingBoxScaleMethod==="auto"){const r=ih(n);e.scaledBoundingBoxDimensions=r}},setBoundingBoxCoordinates:(e,t)=>{e.boundingBoxCoordinates=YO(t.payload)},setStageCoordinates:(e,t)=>{e.stageCoordinates=t.payload},setBoundingBoxPreviewFill:(e,t)=>{e.boundingBoxPreviewFill=t.payload},setDoesCanvasNeedScaling:(e,t)=>{e.doesCanvasNeedScaling=t.payload},setStageScale:(e,t)=>{e.stageScale=t.payload},setShouldDarkenOutsideBoundingBox:(e,t)=>{e.shouldDarkenOutsideBoundingBox=t.payload},setIsDrawing:(e,t)=>{e.isDrawing=t.payload},clearCanvasHistory:e=>{e.pastLayerStates=[],e.futureLayerStates=[]},setShouldLockBoundingBox:(e,t)=>{e.shouldLockBoundingBox=t.payload},toggleShouldLockBoundingBox:e=>{e.shouldLockBoundingBox=!e.shouldLockBoundingBox},setShouldShowBoundingBox:(e,t)=>{e.shouldShowBoundingBox=t.payload},setIsTransformingBoundingBox:(e,t)=>{e.isTransformingBoundingBox=t.payload},setIsMovingBoundingBox:(e,t)=>{e.isMovingBoundingBox=t.payload},setIsMouseOverBoundingBox:(e,t)=>{e.isMouseOverBoundingBox=t.payload},setIsMoveBoundingBoxKeyHeld:(e,t)=>{e.isMoveBoundingBoxKeyHeld=t.payload},setIsMoveStageKeyHeld:(e,t)=>{e.isMoveStageKeyHeld=t.payload},addImageToStagingArea:(e,t)=>{const{boundingBox:n,image:r}=t.payload;!n||!r||(e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.stagingArea.images.push({kind:"image",layer:"base",...n,image:r}),e.layerState.stagingArea.selectedImageIndex=e.layerState.stagingArea.images.length-1,e.futureLayerStates=[])},discardStagedImages:e=>{e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.stagingArea={...p1.stagingArea},e.futureLayerStates=[],e.shouldShowStagingOutline=!0,e.shouldShowStagingOutline=!0},addFillRect:e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n,brushColor:r}=e;e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.objects.push({kind:"fillRect",layer:"base",...t,...n,color:r}),e.futureLayerStates=[]},addEraseRect:e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n}=e;e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.objects.push({kind:"eraseRect",layer:"base",...t,...n}),e.futureLayerStates=[]},addLine:(e,t)=>{const{tool:n,layer:r,brushColor:i,brushSize:o,shouldRestrictStrokesToBox:a}=e;if(n==="move"||n==="colorPicker")return;const s=o/2,l=r==="base"&&n==="brush"?{color:i}:{};e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift();const u={kind:"line",layer:r,tool:n,strokeWidth:s,points:t.payload,...l};a&&(u.clip={...e.boundingBoxCoordinates,...e.boundingBoxDimensions}),e.layerState.objects.push(u),e.futureLayerStates=[]},addPointToCurrentLine:(e,t)=>{const n=e.layerState.objects.findLast(JSe);n&&n.points.push(...t.payload)},undo:e=>{const t=e.pastLayerStates.pop();t&&(e.futureLayerStates.unshift(Ce.cloneDeep(e.layerState)),e.futureLayerStates.length>e.maxHistory&&e.futureLayerStates.pop(),e.layerState=t)},redo:e=>{const t=e.futureLayerStates.shift();t&&(e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState=t)},setShouldShowGrid:(e,t)=>{e.shouldShowGrid=t.payload},setIsMovingStage:(e,t)=>{e.isMovingStage=t.payload},setShouldSnapToGrid:(e,t)=>{e.shouldSnapToGrid=t.payload},setShouldAutoSave:(e,t)=>{e.shouldAutoSave=t.payload},setShouldShowIntermediates:(e,t)=>{e.shouldShowIntermediates=t.payload},resetCanvas:e=>{e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.layerState=p1,e.futureLayerStates=[]},setCanvasContainerDimensions:(e,t)=>{e.canvasContainerDimensions=t.payload},resizeAndScaleCanvas:e=>{const{width:t,height:n}=e.canvasContainerDimensions,r=e.layerState.objects.find(x3),i={width:Math.floor(t),height:Math.floor(n)};if(!r){const d=Tg(i.width,i.height,512,512,Vv),p=Pg(i.width,i.height,0,0,512,512,d),m={width:512,height:512};if(e.stageScale=d,e.stageCoordinates=p,e.stageDimensions=i,e.boundingBoxCoordinates={x:0,y:0},e.boundingBoxDimensions=m,e.boundingBoxScaleMethod==="auto"){const y=ih(m);e.scaledBoundingBoxDimensions=y}return}const{width:o,height:a}=r,l=Tg(t,n,o,a,.95),u=Pg(i.width,i.height,0,0,o,a,l);e.minimumStageScale=l,e.stageScale=l,e.stageCoordinates=YO(u),e.stageDimensions=i,e.isCanvasInitialized=!0},resizeCanvas:e=>{const{width:t,height:n}=e.canvasContainerDimensions,r={width:Math.floor(t),height:Math.floor(n)};if(e.stageDimensions=r,!e.layerState.objects.find(x3)){const i=Tg(r.width,r.height,512,512,Vv),o=Pg(r.width,r.height,0,0,512,512,i),a={width:512,height:512};if(e.stageScale=i,e.stageCoordinates=o,e.boundingBoxCoordinates={x:0,y:0},e.boundingBoxDimensions=a,e.boundingBoxScaleMethod==="auto"){const s=ih(a);e.scaledBoundingBoxDimensions=s}}},resetCanvasView:(e,t)=>{const{contentRect:n,shouldScaleTo1:r}=t.payload,{stageDimensions:{width:i,height:o}}=e,{x:a,y:s,width:l,height:u}=n;if(l!==0&&u!==0){const d=r?1:Tg(i,o,l,u,Vv),p=Pg(i,o,a,s,l,u,d);e.stageScale=d,e.stageCoordinates=p}else{const d=Tg(i,o,512,512,Vv),p=Pg(i,o,0,0,512,512,d),m={width:512,height:512};if(e.stageScale=d,e.stageCoordinates=p,e.boundingBoxCoordinates={x:0,y:0},e.boundingBoxDimensions=m,e.boundingBoxScaleMethod==="auto"){const y=ih(m);e.scaledBoundingBoxDimensions=y}}},nextStagingAreaImage:e=>{const t=e.layerState.stagingArea.selectedImageIndex,n=e.layerState.stagingArea.images.length;e.layerState.stagingArea.selectedImageIndex=Math.min(t+1,n-1)},prevStagingAreaImage:e=>{const t=e.layerState.stagingArea.selectedImageIndex;e.layerState.stagingArea.selectedImageIndex=Math.max(t-1,0)},commitStagingAreaImage:e=>{const{images:t,selectedImageIndex:n}=e.layerState.stagingArea;e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.pastLayerStates.length>e.maxHistory&&e.pastLayerStates.shift(),e.layerState.objects.push({...t[n]}),e.layerState.stagingArea={...p1.stagingArea},e.futureLayerStates=[],e.shouldShowStagingOutline=!0,e.shouldShowStagingImage=!0},fitBoundingBoxToStage:e=>{const{boundingBoxDimensions:t,boundingBoxCoordinates:n,stageDimensions:r,stageScale:i}=e,o=r.width/i,a=r.height/i;if(n.x<0||n.x+t.width>o||n.y<0||n.y+t.height>a){const s={width:Cd(Ce.clamp(o,64,512),64),height:Cd(Ce.clamp(a,64,512),64)},l={x:Hl(o/2-s.width/2,64),y:Hl(a/2-s.height/2,64)};if(e.boundingBoxDimensions=s,e.boundingBoxCoordinates=l,e.boundingBoxScaleMethod==="auto"){const u=ih(s);e.scaledBoundingBoxDimensions=u}}},setBoundingBoxScaleMethod:(e,t)=>{if(e.boundingBoxScaleMethod=t.payload,t.payload==="auto"){const n=ih(e.boundingBoxDimensions);e.scaledBoundingBoxDimensions=n}},setScaledBoundingBoxDimensions:(e,t)=>{e.scaledBoundingBoxDimensions=t.payload},setShouldShowStagingImage:(e,t)=>{e.shouldShowStagingImage=t.payload},setShouldShowStagingOutline:(e,t)=>{e.shouldShowStagingOutline=t.payload},setShouldShowCanvasDebugInfo:(e,t)=>{e.shouldShowCanvasDebugInfo=t.payload},setShouldRestrictStrokesToBox:(e,t)=>{e.shouldRestrictStrokesToBox=t.payload},setShouldCropToBoundingBoxOnSave:(e,t)=>{e.shouldCropToBoundingBoxOnSave=t.payload},setColorPickerColor:(e,t)=>{e.colorPickerColor=t.payload},commitColorPickerColor:e=>{e.brushColor={...e.colorPickerColor,a:e.brushColor.a},e.tool="brush"},setMergedCanvas:(e,t)=>{e.pastLayerStates.push(Ce.cloneDeep(e.layerState)),e.futureLayerStates=[],e.layerState.objects=[t.payload]},resetCanvasInteractionState:e=>{e.cursorPosition=null,e.isDrawing=!1,e.isMouseOverBoundingBox=!1,e.isMoveBoundingBoxKeyHeld=!1,e.isMoveStageKeyHeld=!1,e.isMovingBoundingBox=!1,e.isMovingStage=!1,e.isTransformingBoundingBox=!1},mouseLeftCanvas:e=>{e.cursorPosition=null,e.isDrawing=!1,e.isMouseOverBoundingBox=!1,e.isMovingBoundingBox=!1,e.isTransformingBoundingBox=!1}}}),{addEraseRect:jW,addFillRect:NW,addImageToStagingArea:t3e,addLine:n3e,addPointToCurrentLine:$W,clearCanvasHistory:FW,clearMask:pE,commitColorPickerColor:r3e,commitStagingAreaImage:i3e,discardStagedImages:o3e,fitBoundingBoxToStage:yNe,mouseLeftCanvas:a3e,nextStagingAreaImage:s3e,prevStagingAreaImage:l3e,redo:u3e,resetCanvas:gE,resetCanvasInteractionState:c3e,resetCanvasView:BW,resizeAndScaleCanvas:r4,resizeCanvas:d3e,setBoundingBoxCoordinates:RC,setBoundingBoxDimensions:g1,setBoundingBoxPreviewFill:bNe,setBoundingBoxScaleMethod:f3e,setBrushColor:Mm,setBrushSize:Lm,setCanvasContainerDimensions:h3e,setColorPickerColor:p3e,setCursorPosition:g3e,setDoesCanvasNeedScaling:Li,setInitialCanvasImage:i4,setIsDrawing:zW,setIsMaskEnabled:h2,setIsMouseOverBoundingBox:Qb,setIsMoveBoundingBoxKeyHeld:xNe,setIsMoveStageKeyHeld:SNe,setIsMovingBoundingBox:IC,setIsMovingStage:S3,setIsTransformingBoundingBox:DC,setLayer:w3,setMaskColor:HW,setMergedCanvas:m3e,setShouldAutoSave:WW,setShouldCropToBoundingBoxOnSave:UW,setShouldDarkenOutsideBoundingBox:VW,setShouldLockBoundingBox:wNe,setShouldPreserveMaskedArea:GW,setShouldShowBoundingBox:v3e,setShouldShowBrush:CNe,setShouldShowBrushPreview:_Ne,setShouldShowCanvasDebugInfo:qW,setShouldShowCheckboardTransparency:kNe,setShouldShowGrid:KW,setShouldShowIntermediates:YW,setShouldShowStagingImage:y3e,setShouldShowStagingOutline:XO,setShouldSnapToGrid:C3,setStageCoordinates:XW,setStageScale:b3e,setTool:Jl,toggleShouldLockBoundingBox:ENe,toggleTool:PNe,undo:x3e,setScaledBoundingBoxDimensions:Jb,setShouldRestrictStrokesToBox:ZW}=DW.actions,S3e=DW.reducer,w3e={currentImageUuid:"",shouldPinGallery:!0,shouldShowGallery:!0,galleryScrollPosition:0,galleryImageMinimumWidth:64,galleryImageObjectFit:"cover",shouldHoldGalleryOpen:!1,shouldAutoSwitchToNewImages:!0,currentCategory:"result",categories:{user:{images:[],latest_mtime:void 0,earliest_mtime:void 0,areMoreImagesAvailable:!0},result:{images:[],latest_mtime:void 0,earliest_mtime:void 0,areMoreImagesAvailable:!0}},galleryWidth:300,shouldUseSingleGalleryColumn:!1},QW=ap({name:"gallery",initialState:w3e,reducers:{setCurrentImage:(e,t)=>{e.currentImage=t.payload,e.currentImageUuid=t.payload.uuid},removeImage:(e,t)=>{const{uuid:n,category:r}=t.payload,i=e.categories[r].images,o=i.filter(a=>a.uuid!==n);if(n===e.currentImageUuid){const a=i.findIndex(l=>l.uuid===n),s=Ce.clamp(a,0,o.length-1);e.currentImage=o.length?o[s]:void 0,e.currentImageUuid=o.length?o[s].uuid:""}e.categories[r].images=o},addImage:(e,t)=>{const{image:n,category:r}=t.payload,{uuid:i,url:o,mtime:a}=n,s=e.categories[r];s.images.find(l=>l.url===o&&l.mtime===a)||(s.images.unshift(n),e.shouldAutoSwitchToNewImages&&(e.currentImageUuid=i,e.currentImage=n,e.currentCategory=r),e.intermediateImage=void 0,s.latest_mtime=a)},setIntermediateImage:(e,t)=>{e.intermediateImage=t.payload},clearIntermediateImage:e=>{e.intermediateImage=void 0},selectNextImage:e=>{const{currentImage:t}=e;if(!t)return;const n=e.categories[t.category].images;if(t){const r=n.findIndex(i=>i.uuid===t.uuid);if(r{const{currentImage:t}=e;if(!t)return;const n=e.categories[t.category].images;if(t){const r=n.findIndex(i=>i.uuid===t.uuid);if(r>0){const i=n[r-1];e.currentImage=i,e.currentImageUuid=i.uuid}}},addGalleryImages:(e,t)=>{const{images:n,areMoreImagesAvailable:r,category:i}=t.payload,o=e.categories[i].images;if(n.length>0){const a=n.filter(s=>!o.find(l=>l.url===s.url&&l.mtime===s.mtime));if(e.categories[i].images=o.concat(a).sort((s,l)=>l.mtime-s.mtime),!e.currentImage){const s=n[0];e.currentImage=s,e.currentImageUuid=s.uuid}e.categories[i].latest_mtime=n[0].mtime,e.categories[i].earliest_mtime=n[n.length-1].mtime}r!==void 0&&(e.categories[i].areMoreImagesAvailable=r)},setShouldPinGallery:(e,t)=>{e.shouldPinGallery=t.payload},setShouldShowGallery:(e,t)=>{e.shouldShowGallery=t.payload},setGalleryScrollPosition:(e,t)=>{e.galleryScrollPosition=t.payload},setGalleryImageMinimumWidth:(e,t)=>{e.galleryImageMinimumWidth=t.payload},setGalleryImageObjectFit:(e,t)=>{e.galleryImageObjectFit=t.payload},setShouldHoldGalleryOpen:(e,t)=>{e.shouldHoldGalleryOpen=t.payload},setShouldAutoSwitchToNewImages:(e,t)=>{e.shouldAutoSwitchToNewImages=t.payload},setCurrentCategory:(e,t)=>{e.currentCategory=t.payload},setGalleryWidth:(e,t)=>{e.galleryWidth=t.payload},setShouldUseSingleGalleryColumn:(e,t)=>{e.shouldUseSingleGalleryColumn=t.payload}}}),{addImage:sm,clearIntermediateImage:jC,removeImage:JW,setCurrentImage:ZO,addGalleryImages:C3e,setIntermediateImage:_3e,selectNextImage:mE,selectPrevImage:vE,setShouldPinGallery:k3e,setShouldShowGallery:Am,setGalleryScrollPosition:E3e,setGalleryImageMinimumWidth:Gv,setGalleryImageObjectFit:P3e,setShouldHoldGalleryOpen:eU,setShouldAutoSwitchToNewImages:T3e,setCurrentCategory:ex,setGalleryWidth:M3e,setShouldUseSingleGalleryColumn:L3e}=QW.actions,A3e=QW.reducer,O3e={isLightboxOpen:!1},R3e=O3e,tU=ap({name:"lightbox",initialState:R3e,reducers:{setIsLightboxOpen:(e,t)=>{e.isLightboxOpen=t.payload}}}),{setIsLightboxOpen:Om}=tU.actions,I3e=tU.reducer,Rm=e=>typeof e=="string"?e:e.length===1?e[0].prompt:e.map(t=>`${t.prompt}:${t.weight}`).join(" ");function nU(e){let t=typeof e=="string"?e:Rm(e),n="";const r=new RegExp(/\[([^\][]*)]/,"gi"),i=[...t.matchAll(r)].map(o=>o[1]);return i.length&&(n=i.join(" "),i.forEach(o=>{t=t.replace(`[${o}]`,"").replaceAll("[]","").trim()})),[t,n]}const D3e=e=>{const r=e.split(",").map(i=>i.split(":")).map(i=>({seed:Number(i[0]),weight:Number(i[1])}));return yE(r)?r:!1},yE=e=>Boolean(typeof e=="string"?D3e(e):e.length&&!e.some(t=>{const{seed:n,weight:r}=t,i=!isNaN(parseInt(n.toString(),10)),o=!isNaN(parseInt(r.toString(),10))&&r>=0&&r<=1;return!(i&&o)})),_3=e=>e.reduce((t,n,r,i)=>{const{seed:o,weight:a}=n;return t+=`${o}:${a}`,r!==i.length-1&&(t+=","),t},""),j3e=e=>e.split(",").map(r=>r.split(":")).map(r=>[parseInt(r[0],10),parseFloat(r[1])]),rU={cfgScale:7.5,height:512,img2imgStrength:.75,infillMethod:"patchmatch",iterations:1,maskPath:"",perlin:0,prompt:"",negativePrompt:"",sampler:"k_lms",seamBlur:16,seamless:!1,seamSize:96,seamSteps:30,seamStrength:.7,seed:0,seedWeights:"",shouldFitToWidthHeight:!0,shouldGenerateVariations:!1,shouldRandomizeSeed:!0,steps:50,threshold:0,tileSize:32,variationAmount:.1,width:512,shouldUseSymmetry:!1,horizontalSymmetrySteps:0,verticalSymmetrySteps:0},N3e=rU,iU=ap({name:"generation",initialState:N3e,reducers:{setPrompt:(e,t)=>{const n=t.payload;typeof n=="string"?e.prompt=n:e.prompt=Rm(n)},setNegativePrompt:(e,t)=>{const n=t.payload;typeof n=="string"?e.negativePrompt=n:e.negativePrompt=Rm(n)},setIterations:(e,t)=>{e.iterations=t.payload},setSteps:(e,t)=>{e.steps=t.payload},clampSymmetrySteps:e=>{e.horizontalSymmetrySteps=Ce.clamp(e.horizontalSymmetrySteps,0,e.steps),e.verticalSymmetrySteps=Ce.clamp(e.verticalSymmetrySteps,0,e.steps)},setCfgScale:(e,t)=>{e.cfgScale=t.payload},setThreshold:(e,t)=>{e.threshold=t.payload},setPerlin:(e,t)=>{e.perlin=t.payload},setHeight:(e,t)=>{e.height=t.payload},setWidth:(e,t)=>{e.width=t.payload},setSampler:(e,t)=>{e.sampler=t.payload},setSeed:(e,t)=>{e.seed=t.payload,e.shouldRandomizeSeed=!1},setImg2imgStrength:(e,t)=>{e.img2imgStrength=t.payload},setMaskPath:(e,t)=>{e.maskPath=t.payload},setSeamless:(e,t)=>{e.seamless=t.payload},setShouldFitToWidthHeight:(e,t)=>{e.shouldFitToWidthHeight=t.payload},resetSeed:e=>{e.seed=-1},setParameter:(e,t)=>{const{key:n,value:r}=t.payload,i={...e,[n]:r};return n==="seed"&&(i.shouldRandomizeSeed=!1),i},setShouldGenerateVariations:(e,t)=>{e.shouldGenerateVariations=t.payload},setVariationAmount:(e,t)=>{e.variationAmount=t.payload},setSeedWeights:(e,t)=>{e.seedWeights=t.payload,e.shouldGenerateVariations=!0,e.variationAmount=0},setAllTextToImageParameters:(e,t)=>{const{sampler:n,prompt:r,seed:i,variations:o,steps:a,cfg_scale:s,threshold:l,perlin:u,seamless:d,hires_fix:p,width:m,height:y}=t.payload.image;o&&o.length>0?(e.seedWeights=_3(o),e.shouldGenerateVariations=!0,e.variationAmount=0):e.shouldGenerateVariations=!1,i&&(e.seed=i,e.shouldRandomizeSeed=!1),r&&(e.prompt=Rm(r)),n&&(e.sampler=n),a&&(e.steps=a),s&&(e.cfgScale=s),typeof l>"u"?e.threshold=0:e.threshold=l,typeof u>"u"?e.perlin=0:e.perlin=u,typeof d=="boolean"&&(e.seamless=d),m&&(e.width=m),y&&(e.height=y)},setAllImageToImageParameters:(e,t)=>{const{type:n,strength:r,fit:i,init_image_path:o,mask_image_path:a}=t.payload.image;n==="img2img"&&(o&&(e.initialImage=o),a&&(e.maskPath=a),r&&(e.img2imgStrength=r),typeof i=="boolean"&&(e.shouldFitToWidthHeight=i))},setAllParameters:(e,t)=>{const{type:n,sampler:r,prompt:i,seed:o,variations:a,steps:s,cfg_scale:l,threshold:u,perlin:d,seamless:p,hires_fix:m,width:y,height:b,strength:w,fit:E,init_image_path:_,mask_image_path:k}=t.payload.image;if(n==="img2img"&&(_&&(e.initialImage=_),k&&(e.maskPath=k),w&&(e.img2imgStrength=w),typeof E=="boolean"&&(e.shouldFitToWidthHeight=E)),a&&a.length>0?(e.seedWeights=_3(a),e.shouldGenerateVariations=!0,e.variationAmount=0):e.shouldGenerateVariations=!1,o&&(e.seed=o,e.shouldRandomizeSeed=!1),i){const[T,L]=nU(i);T&&(e.prompt=T),L?e.negativePrompt=L:e.negativePrompt=""}r&&(e.sampler=r),s&&(e.steps=s),l&&(e.cfgScale=l),typeof u>"u"?e.threshold=0:e.threshold=u,typeof d>"u"?e.perlin=0:e.perlin=d,typeof p=="boolean"&&(e.seamless=p),y&&(e.width=y),b&&(e.height=b)},resetParametersState:e=>({...e,...rU}),setShouldRandomizeSeed:(e,t)=>{e.shouldRandomizeSeed=t.payload},setInitialImage:(e,t)=>{e.initialImage=t.payload},clearInitialImage:e=>{e.initialImage=void 0},setSeamSize:(e,t)=>{e.seamSize=t.payload},setSeamBlur:(e,t)=>{e.seamBlur=t.payload},setSeamStrength:(e,t)=>{e.seamStrength=t.payload},setSeamSteps:(e,t)=>{e.seamSteps=t.payload},setTileSize:(e,t)=>{e.tileSize=t.payload},setInfillMethod:(e,t)=>{e.infillMethod=t.payload},setShouldUseSymmetry:(e,t)=>{e.shouldUseSymmetry=t.payload},setHorizontalSymmetrySteps:(e,t)=>{e.horizontalSymmetrySteps=t.payload},setVerticalSymmetrySteps:(e,t)=>{e.verticalSymmetrySteps=t.payload}}}),{clampSymmetrySteps:oU,clearInitialImage:aU,resetParametersState:TNe,resetSeed:MNe,setAllImageToImageParameters:$3e,setAllParameters:sU,setAllTextToImageParameters:LNe,setCfgScale:gk,setHeight:uS,setImg2imgStrength:mk,setInfillMethod:lU,setInitialImage:y0,setIterations:QO,setMaskPath:uU,setParameter:ANe,setPerlin:vk,setPrompt:cU,setNegativePrompt:dU,setSampler:fU,setSeamBlur:JO,setSeamless:hU,setSeamSize:eR,setSeamSteps:tR,setSeamStrength:nR,setSeed:p2,setSeedWeights:pU,setShouldFitToWidthHeight:gU,setShouldGenerateVariations:F3e,setShouldRandomizeSeed:B3e,setSteps:yk,setThreshold:bk,setTileSize:rR,setVariationAmount:iR,setWidth:cS,setShouldUseSymmetry:z3e,setHorizontalSymmetrySteps:oR,setVerticalSymmetrySteps:aR}=iU.actions,H3e=iU.reducer,mU={codeformerFidelity:.75,facetoolStrength:.75,facetoolType:"gfpgan",hiresFix:!1,hiresStrength:.75,shouldLoopback:!1,shouldRunESRGAN:!1,shouldRunFacetool:!1,upscalingLevel:4,upscalingDenoising:.75,upscalingStrength:.75},W3e=mU,vU=ap({name:"postprocessing",initialState:W3e,reducers:{setFacetoolStrength:(e,t)=>{e.facetoolStrength=t.payload},setCodeformerFidelity:(e,t)=>{e.codeformerFidelity=t.payload},setUpscalingLevel:(e,t)=>{e.upscalingLevel=t.payload},setUpscalingDenoising:(e,t)=>{e.upscalingDenoising=t.payload},setUpscalingStrength:(e,t)=>{e.upscalingStrength=t.payload},setHiresFix:(e,t)=>{e.hiresFix=t.payload},setHiresStrength:(e,t)=>{e.hiresStrength=t.payload},resetPostprocessingState:e=>({...e,...mU}),setShouldRunFacetool:(e,t)=>{e.shouldRunFacetool=t.payload},setFacetoolType:(e,t)=>{e.facetoolType=t.payload},setShouldRunESRGAN:(e,t)=>{e.shouldRunESRGAN=t.payload},setShouldLoopback:(e,t)=>{e.shouldLoopback=t.payload}}}),{resetPostprocessingState:ONe,setCodeformerFidelity:xk,setFacetoolStrength:k3,setFacetoolType:dS,setHiresFix:yU,setHiresStrength:sR,setShouldLoopback:U3e,setShouldRunESRGAN:V3e,setShouldRunFacetool:G3e,setUpscalingLevel:bU,setUpscalingDenoising:Sk,setUpscalingStrength:wk}=vU.actions,q3e=vU.reducer;function gs(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function lR(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n1&&arguments[1]!==void 0?arguments[1]:{};gs(this,e),this.init(t,n)}return ms(e,[{key:"init",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};this.prefix=r.prefix||"i18next:",this.logger=n||X3e,this.options=r,this.debug=r.debug}},{key:"setDebug",value:function(n){this.debug=n}},{key:"log",value:function(){for(var n=arguments.length,r=new Array(n),i=0;i1?r-1:0),o=1;o-1?s.replace(/###/g,"."):s}function i(){return!e||typeof e=="string"}for(var o=typeof t!="string"?[].concat(t):t.split(".");o.length>1;){if(i())return{};var a=r(o.shift());!e[a]&&n&&(e[a]=new n),Object.prototype.hasOwnProperty.call(e,a)?e=e[a]:e={}}return i()?{}:{obj:e,k:r(o.shift())}}function hR(e,t,n){var r=bE(e,t,Object),i=r.obj,o=r.k;i[o]=n}function J3e(e,t,n,r){var i=bE(e,t,Object),o=i.obj,a=i.k;o[a]=o[a]||[],r&&(o[a]=o[a].concat(n)),r||o[a].push(n)}function E3(e,t){var n=bE(e,t),r=n.obj,i=n.k;if(r)return r[i]}function pR(e,t,n){var r=E3(e,n);return r!==void 0?r:E3(t,n)}function CU(e,t,n){for(var r in t)r!=="__proto__"&&r!=="constructor"&&(r in e?typeof e[r]=="string"||e[r]instanceof String||typeof t[r]=="string"||t[r]instanceof String?n&&(e[r]=t[r]):CU(e[r],t[r],n):e[r]=t[r]);return e}function Mg(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var ewe={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};function twe(e){return typeof e=="string"?e.replace(/[&<>"'\/]/g,function(t){return ewe[t]}):e}var a4=typeof window<"u"&&window.navigator&&typeof window.navigator.userAgentData>"u"&&window.navigator.userAgent&&window.navigator.userAgent.indexOf("MSIE")>-1,nwe=[" ",",","?","!",";"];function rwe(e,t,n){t=t||"",n=n||"";var r=nwe.filter(function(s){return t.indexOf(s)<0&&n.indexOf(s)<0});if(r.length===0)return!0;var i=new RegExp("(".concat(r.map(function(s){return s==="?"?"\\?":s}).join("|"),")")),o=!i.test(e);if(!o){var a=e.indexOf(n);a>0&&!i.test(e.substring(0,a))&&(o=!0)}return o}function gR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function tx(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function _U(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:".";if(e){if(e[t])return e[t];for(var r=t.split(n),i=e,o=0;oo+a;)a++,s=r.slice(o,o+a).join(n),l=i[s];if(l===void 0)return;if(l===null)return null;if(t.endsWith(s)){if(typeof l=="string")return l;if(s&&typeof l[s]=="string")return l[s]}var u=r.slice(o+a).join(n);return u?_U(l,u,n):void 0}i=i[r[o]]}return i}}var awe=function(e){o4(n,e);var t=iwe(n);function n(r){var i,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{ns:["translation"],defaultNS:"translation"};return gs(this,n),i=t.call(this),a4&&Jd.call(Fd(i)),i.data=r||{},i.options=o,i.options.keySeparator===void 0&&(i.options.keySeparator="."),i.options.ignoreJSONStructure===void 0&&(i.options.ignoreJSONStructure=!0),i}return ms(n,[{key:"addNamespaces",value:function(i){this.options.ns.indexOf(i)<0&&this.options.ns.push(i)}},{key:"removeNamespaces",value:function(i){var o=this.options.ns.indexOf(i);o>-1&&this.options.ns.splice(o,1)}},{key:"getResource",value:function(i,o,a){var s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},l=s.keySeparator!==void 0?s.keySeparator:this.options.keySeparator,u=s.ignoreJSONStructure!==void 0?s.ignoreJSONStructure:this.options.ignoreJSONStructure,d=[i,o];a&&typeof a!="string"&&(d=d.concat(a)),a&&typeof a=="string"&&(d=d.concat(l?a.split(l):a)),i.indexOf(".")>-1&&(d=i.split("."));var p=E3(this.data,d);return p||!u||typeof a!="string"?p:_U(this.data&&this.data[i]&&this.data[i][o],a,l)}},{key:"addResource",value:function(i,o,a,s){var l=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{silent:!1},u=this.options.keySeparator;u===void 0&&(u=".");var d=[i,o];a&&(d=d.concat(u?a.split(u):a)),i.indexOf(".")>-1&&(d=i.split("."),s=o,o=d[1]),this.addNamespaces(o),hR(this.data,d,s),l.silent||this.emit("added",i,o,a,s)}},{key:"addResources",value:function(i,o,a){var s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{silent:!1};for(var l in a)(typeof a[l]=="string"||Object.prototype.toString.apply(a[l])==="[object Array]")&&this.addResource(i,o,l,a[l],{silent:!0});s.silent||this.emit("added",i,o,a)}},{key:"addResourceBundle",value:function(i,o,a,s,l){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{silent:!1},d=[i,o];i.indexOf(".")>-1&&(d=i.split("."),s=a,a=o,o=d[1]),this.addNamespaces(o);var p=E3(this.data,d)||{};s?CU(p,a,l):p=tx(tx({},p),a),hR(this.data,d,p),u.silent||this.emit("added",i,o,a)}},{key:"removeResourceBundle",value:function(i,o){this.hasResourceBundle(i,o)&&delete this.data[i][o],this.removeNamespaces(o),this.emit("removed",i,o)}},{key:"hasResourceBundle",value:function(i,o){return this.getResource(i,o)!==void 0}},{key:"getResourceBundle",value:function(i,o){return o||(o=this.options.defaultNS),this.options.compatibilityAPI==="v1"?tx(tx({},{}),this.getResource(i,o)):this.getResource(i,o)}},{key:"getDataByLanguage",value:function(i){return this.data[i]}},{key:"hasLanguageSomeTranslations",value:function(i){var o=this.getDataByLanguage(i),a=o&&Object.keys(o)||[];return!!a.find(function(s){return o[s]&&Object.keys(o[s]).length>0})}},{key:"toJSON",value:function(){return this.data}}]),n}(Jd),kU={processors:{},addPostProcessor:function(t){this.processors[t.name]=t},handle:function(t,n,r,i,o){var a=this;return t.forEach(function(s){a.processors[s]&&(n=a.processors[s].process(n,r,i,o))}),n}};function mR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function yo(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}var vR={},yR=function(e){o4(n,e);var t=swe(n);function n(r){var i,o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return gs(this,n),i=t.call(this),a4&&Jd.call(Fd(i)),Q3e(["resourceStore","languageUtils","pluralResolver","interpolator","backendConnector","i18nFormat","utils"],r,Fd(i)),i.options=o,i.options.keySeparator===void 0&&(i.options.keySeparator="."),i.logger=Wl.create("translator"),i}return ms(n,[{key:"changeLanguage",value:function(i){i&&(this.language=i)}},{key:"exists",value:function(i){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}};if(i==null)return!1;var a=this.resolve(i,o);return a&&a.res!==void 0}},{key:"extractFromKey",value:function(i,o){var a=o.nsSeparator!==void 0?o.nsSeparator:this.options.nsSeparator;a===void 0&&(a=":");var s=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,l=o.ns||this.options.defaultNS||[],u=a&&i.indexOf(a)>-1,d=!this.options.userDefinedKeySeparator&&!o.keySeparator&&!this.options.userDefinedNsSeparator&&!o.nsSeparator&&!rwe(i,a,s);if(u&&!d){var p=i.match(this.interpolator.nestingRegexp);if(p&&p.length>0)return{key:i,namespaces:l};var m=i.split(a);(a!==s||a===s&&this.options.ns.indexOf(m[0])>-1)&&(l=m.shift()),i=m.join(s)}return typeof l=="string"&&(l=[l]),{key:i,namespaces:l}}},{key:"translate",value:function(i,o,a){var s=this;if(Ks(o)!=="object"&&this.options.overloadTranslationOptionHandler&&(o=this.options.overloadTranslationOptionHandler(arguments)),o||(o={}),i==null)return"";Array.isArray(i)||(i=[String(i)]);var l=o.returnDetails!==void 0?o.returnDetails:this.options.returnDetails,u=o.keySeparator!==void 0?o.keySeparator:this.options.keySeparator,d=this.extractFromKey(i[i.length-1],o),p=d.key,m=d.namespaces,y=m[m.length-1],b=o.lng||this.language,w=o.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(b&&b.toLowerCase()==="cimode"){if(w){var E=o.nsSeparator||this.options.nsSeparator;return l?{res:"".concat(y).concat(E).concat(p),usedKey:p,exactUsedKey:p,usedLng:b,usedNS:y}:"".concat(y).concat(E).concat(p)}return l?{res:p,usedKey:p,exactUsedKey:p,usedLng:b,usedNS:y}:p}var _=this.resolve(i,o),k=_&&_.res,T=_&&_.usedKey||p,L=_&&_.exactUsedKey||p,O=Object.prototype.toString.apply(k),D=["[object Number]","[object Function]","[object RegExp]"],I=o.joinArrays!==void 0?o.joinArrays:this.options.joinArrays,N=!this.i18nFormat||this.i18nFormat.handleAsObject,W=typeof k!="string"&&typeof k!="boolean"&&typeof k!="number";if(N&&k&&W&&D.indexOf(O)<0&&!(typeof I=="string"&&O==="[object Array]")){if(!o.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn("accessing an object - but returnObjects options is not enabled!");var B=this.options.returnedObjectHandler?this.options.returnedObjectHandler(T,k,yo(yo({},o),{},{ns:m})):"key '".concat(p," (").concat(this.language,")' returned an object instead of string.");return l?(_.res=B,_):B}if(u){var K=O==="[object Array]",ne=K?[]:{},z=K?L:T;for(var $ in k)if(Object.prototype.hasOwnProperty.call(k,$)){var V="".concat(z).concat(u).concat($);ne[$]=this.translate(V,yo(yo({},o),{joinArrays:!1,ns:m})),ne[$]===V&&(ne[$]=k[$])}k=ne}}else if(N&&typeof I=="string"&&O==="[object Array]")k=k.join(I),k&&(k=this.extendTranslation(k,i,o,a));else{var X=!1,Q=!1,G=o.count!==void 0&&typeof o.count!="string",Y=n.hasDefaultValue(o),ee=G?this.pluralResolver.getSuffix(b,o.count,o):"",fe=o["defaultValue".concat(ee)]||o.defaultValue;!this.isValidLookup(k)&&Y&&(X=!0,k=fe),this.isValidLookup(k)||(Q=!0,k=p);var _e=o.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey,we=_e&&Q?void 0:k,xe=Y&&fe!==k&&this.options.updateMissing;if(Q||X||xe){if(this.logger.log(xe?"updateKey":"missingKey",b,y,p,xe?fe:k),u){var Le=this.resolve(p,yo(yo({},o),{},{keySeparator:!1}));Le&&Le.res&&this.logger.warn("Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.")}var Se=[],Je=this.languageUtils.getFallbackCodes(this.options.fallbackLng,o.lng||this.language);if(this.options.saveMissingTo==="fallback"&&Je&&Je[0])for(var Xe=0;Xe1&&arguments[1]!==void 0?arguments[1]:{},s,l,u,d,p;return typeof i=="string"&&(i=[i]),i.forEach(function(m){if(!o.isValidLookup(s)){var y=o.extractFromKey(m,a),b=y.key;l=b;var w=y.namespaces;o.options.fallbackNS&&(w=w.concat(o.options.fallbackNS));var E=a.count!==void 0&&typeof a.count!="string",_=E&&!a.ordinal&&a.count===0&&o.pluralResolver.shouldUseIntlApi(),k=a.context!==void 0&&(typeof a.context=="string"||typeof a.context=="number")&&a.context!=="",T=a.lngs?a.lngs:o.languageUtils.toResolveHierarchy(a.lng||o.language,a.fallbackLng);w.forEach(function(L){o.isValidLookup(s)||(p=L,!vR["".concat(T[0],"-").concat(L)]&&o.utils&&o.utils.hasLoadedNamespace&&!o.utils.hasLoadedNamespace(p)&&(vR["".concat(T[0],"-").concat(L)]=!0,o.logger.warn('key "'.concat(l,'" for languages "').concat(T.join(", "),`" won't get resolved as namespace "`).concat(p,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!")),T.forEach(function(O){if(!o.isValidLookup(s)){d=O;var D=[b];if(o.i18nFormat&&o.i18nFormat.addLookupKeys)o.i18nFormat.addLookupKeys(D,b,O,L,a);else{var I;E&&(I=o.pluralResolver.getSuffix(O,a.count,a));var N="".concat(o.options.pluralSeparator,"zero");if(E&&(D.push(b+I),_&&D.push(b+N)),k){var W="".concat(b).concat(o.options.contextSeparator).concat(a.context);D.push(W),E&&(D.push(W+I),_&&D.push(W+N))}}for(var B;B=D.pop();)o.isValidLookup(s)||(u=B,s=o.getResource(O,L,B,a))}}))})}}),{res:s,usedKey:l,exactUsedKey:u,usedLng:d,usedNS:p}}},{key:"isValidLookup",value:function(i){return i!==void 0&&!(!this.options.returnNull&&i===null)&&!(!this.options.returnEmptyString&&i==="")}},{key:"getResource",value:function(i,o,a){var s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return this.i18nFormat&&this.i18nFormat.getResource?this.i18nFormat.getResource(i,o,a,s):this.resourceStore.getResource(i,o,a,s)}}],[{key:"hasDefaultValue",value:function(i){var o="defaultValue";for(var a in i)if(Object.prototype.hasOwnProperty.call(i,a)&&o===a.substring(0,o.length)&&i[a]!==void 0)return!0;return!1}}]),n}(Jd);function NC(e){return e.charAt(0).toUpperCase()+e.slice(1)}var bR=function(){function e(t){gs(this,e),this.options=t,this.supportedLngs=this.options.supportedLngs||!1,this.logger=Wl.create("languageUtils")}return ms(e,[{key:"getScriptPartFromCode",value:function(n){if(!n||n.indexOf("-")<0)return null;var r=n.split("-");return r.length===2||(r.pop(),r[r.length-1].toLowerCase()==="x")?null:this.formatLanguageCode(r.join("-"))}},{key:"getLanguagePartFromCode",value:function(n){if(!n||n.indexOf("-")<0)return n;var r=n.split("-");return this.formatLanguageCode(r[0])}},{key:"formatLanguageCode",value:function(n){if(typeof n=="string"&&n.indexOf("-")>-1){var r=["hans","hant","latn","cyrl","cans","mong","arab"],i=n.split("-");return this.options.lowerCaseLng?i=i.map(function(o){return o.toLowerCase()}):i.length===2?(i[0]=i[0].toLowerCase(),i[1]=i[1].toUpperCase(),r.indexOf(i[1].toLowerCase())>-1&&(i[1]=NC(i[1].toLowerCase()))):i.length===3&&(i[0]=i[0].toLowerCase(),i[1].length===2&&(i[1]=i[1].toUpperCase()),i[0]!=="sgn"&&i[2].length===2&&(i[2]=i[2].toUpperCase()),r.indexOf(i[1].toLowerCase())>-1&&(i[1]=NC(i[1].toLowerCase())),r.indexOf(i[2].toLowerCase())>-1&&(i[2]=NC(i[2].toLowerCase()))),i.join("-")}return this.options.cleanCode||this.options.lowerCaseLng?n.toLowerCase():n}},{key:"isSupportedCode",value:function(n){return(this.options.load==="languageOnly"||this.options.nonExplicitSupportedLngs)&&(n=this.getLanguagePartFromCode(n)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.indexOf(n)>-1}},{key:"getBestMatchFromCodes",value:function(n){var r=this;if(!n)return null;var i;return n.forEach(function(o){if(!i){var a=r.formatLanguageCode(o);(!r.options.supportedLngs||r.isSupportedCode(a))&&(i=a)}}),!i&&this.options.supportedLngs&&n.forEach(function(o){if(!i){var a=r.getLanguagePartFromCode(o);if(r.isSupportedCode(a))return i=a;i=r.options.supportedLngs.find(function(s){if(s.indexOf(a)===0)return s})}}),i||(i=this.getFallbackCodes(this.options.fallbackLng)[0]),i}},{key:"getFallbackCodes",value:function(n,r){if(!n)return[];if(typeof n=="function"&&(n=n(r)),typeof n=="string"&&(n=[n]),Object.prototype.toString.apply(n)==="[object Array]")return n;if(!r)return n.default||[];var i=n[r];return i||(i=n[this.getScriptPartFromCode(r)]),i||(i=n[this.formatLanguageCode(r)]),i||(i=n[this.getLanguagePartFromCode(r)]),i||(i=n.default),i||[]}},{key:"toResolveHierarchy",value:function(n,r){var i=this,o=this.getFallbackCodes(r||this.options.fallbackLng||[],n),a=[],s=function(u){u&&(i.isSupportedCode(u)?a.push(u):i.logger.warn("rejecting language code not found in supportedLngs: ".concat(u)))};return typeof n=="string"&&n.indexOf("-")>-1?(this.options.load!=="languageOnly"&&s(this.formatLanguageCode(n)),this.options.load!=="languageOnly"&&this.options.load!=="currentOnly"&&s(this.getScriptPartFromCode(n)),this.options.load!=="currentOnly"&&s(this.getLanguagePartFromCode(n))):typeof n=="string"&&s(this.formatLanguageCode(n)),o.forEach(function(l){a.indexOf(l)<0&&s(i.formatLanguageCode(l))}),a}}]),e}(),uwe=[{lngs:["ach","ak","am","arn","br","fil","gun","ln","mfe","mg","mi","oc","pt","pt-BR","tg","tl","ti","tr","uz","wa"],nr:[1,2],fc:1},{lngs:["af","an","ast","az","bg","bn","ca","da","de","dev","el","en","eo","es","et","eu","fi","fo","fur","fy","gl","gu","ha","hi","hu","hy","ia","it","kk","kn","ku","lb","mai","ml","mn","mr","nah","nap","nb","ne","nl","nn","no","nso","pa","pap","pms","ps","pt-PT","rm","sco","se","si","so","son","sq","sv","sw","ta","te","tk","ur","yo"],nr:[1,2],fc:2},{lngs:["ay","bo","cgg","fa","ht","id","ja","jbo","ka","km","ko","ky","lo","ms","sah","su","th","tt","ug","vi","wo","zh"],nr:[1],fc:3},{lngs:["be","bs","cnr","dz","hr","ru","sr","uk"],nr:[1,2,5],fc:4},{lngs:["ar"],nr:[0,1,2,3,11,100],fc:5},{lngs:["cs","sk"],nr:[1,2,5],fc:6},{lngs:["csb","pl"],nr:[1,2,5],fc:7},{lngs:["cy"],nr:[1,2,3,8],fc:8},{lngs:["fr"],nr:[1,2],fc:9},{lngs:["ga"],nr:[1,2,3,7,11],fc:10},{lngs:["gd"],nr:[1,2,3,20],fc:11},{lngs:["is"],nr:[1,2],fc:12},{lngs:["jv"],nr:[0,1],fc:13},{lngs:["kw"],nr:[1,2,3,4],fc:14},{lngs:["lt"],nr:[1,2,10],fc:15},{lngs:["lv"],nr:[1,2,0],fc:16},{lngs:["mk"],nr:[1,2],fc:17},{lngs:["mnk"],nr:[0,1,2],fc:18},{lngs:["mt"],nr:[1,2,11,20],fc:19},{lngs:["or"],nr:[2,1],fc:2},{lngs:["ro"],nr:[1,2,20],fc:20},{lngs:["sl"],nr:[5,1,2,3],fc:21},{lngs:["he","iw"],nr:[1,2,20,21],fc:22}],cwe={1:function(t){return Number(t>1)},2:function(t){return Number(t!=1)},3:function(t){return 0},4:function(t){return Number(t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2)},5:function(t){return Number(t==0?0:t==1?1:t==2?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5)},6:function(t){return Number(t==1?0:t>=2&&t<=4?1:2)},7:function(t){return Number(t==1?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2)},8:function(t){return Number(t==1?0:t==2?1:t!=8&&t!=11?2:3)},9:function(t){return Number(t>=2)},10:function(t){return Number(t==1?0:t==2?1:t<7?2:t<11?3:4)},11:function(t){return Number(t==1||t==11?0:t==2||t==12?1:t>2&&t<20?2:3)},12:function(t){return Number(t%10!=1||t%100==11)},13:function(t){return Number(t!==0)},14:function(t){return Number(t==1?0:t==2?1:t==3?2:3)},15:function(t){return Number(t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2)},16:function(t){return Number(t%10==1&&t%100!=11?0:t!==0?1:2)},17:function(t){return Number(t==1||t%10==1&&t%100!=11?0:1)},18:function(t){return Number(t==0?0:t==1?1:2)},19:function(t){return Number(t==1?0:t==0||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3)},20:function(t){return Number(t==1?0:t==0||t%100>0&&t%100<20?1:2)},21:function(t){return Number(t%100==1?1:t%100==2?2:t%100==3||t%100==4?3:0)},22:function(t){return Number(t==1?0:t==2?1:(t<0||t>10)&&t%10==0?2:3)}},dwe=["v1","v2","v3"],xR={zero:0,one:1,two:2,few:3,many:4,other:5};function fwe(){var e={};return uwe.forEach(function(t){t.lngs.forEach(function(n){e[n]={numbers:t.nr,plurals:cwe[t.fc]}})}),e}var hwe=function(){function e(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};gs(this,e),this.languageUtils=t,this.options=n,this.logger=Wl.create("pluralResolver"),(!this.options.compatibilityJSON||this.options.compatibilityJSON==="v4")&&(typeof Intl>"u"||!Intl.PluralRules)&&(this.options.compatibilityJSON="v3",this.logger.error("Your environment seems not to be Intl API compatible, use an Intl.PluralRules polyfill. Will fallback to the compatibilityJSON v3 format handling.")),this.rules=fwe()}return ms(e,[{key:"addRule",value:function(n,r){this.rules[n]=r}},{key:"getRule",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.shouldUseIntlApi())try{return new Intl.PluralRules(n,{type:r.ordinal?"ordinal":"cardinal"})}catch{return}return this.rules[n]||this.rules[this.languageUtils.getLanguagePartFromCode(n)]}},{key:"needsPlural",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=this.getRule(n,r);return this.shouldUseIntlApi()?i&&i.resolvedOptions().pluralCategories.length>1:i&&i.numbers.length>1}},{key:"getPluralFormsOfKey",value:function(n,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return this.getSuffixes(n,i).map(function(o){return"".concat(r).concat(o)})}},{key:"getSuffixes",value:function(n){var r=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=this.getRule(n,i);return o?this.shouldUseIntlApi()?o.resolvedOptions().pluralCategories.sort(function(a,s){return xR[a]-xR[s]}).map(function(a){return"".concat(r.options.prepend).concat(a)}):o.numbers.map(function(a){return r.getSuffix(n,a,i)}):[]}},{key:"getSuffix",value:function(n,r){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},o=this.getRule(n,i);return o?this.shouldUseIntlApi()?"".concat(this.options.prepend).concat(o.select(r)):this.getSuffixRetroCompatible(o,r):(this.logger.warn("no plural rule found for: ".concat(n)),"")}},{key:"getSuffixRetroCompatible",value:function(n,r){var i=this,o=n.noAbs?n.plurals(r):n.plurals(Math.abs(r)),a=n.numbers[o];this.options.simplifyPluralSuffix&&n.numbers.length===2&&n.numbers[0]===1&&(a===2?a="plural":a===1&&(a=""));var s=function(){return i.options.prepend&&a.toString()?i.options.prepend+a.toString():a.toString()};return this.options.compatibilityJSON==="v1"?a===1?"":typeof a=="number"?"_plural_".concat(a.toString()):s():this.options.compatibilityJSON==="v2"||this.options.simplifyPluralSuffix&&n.numbers.length===2&&n.numbers[0]===1?s():this.options.prepend&&o.toString()?this.options.prepend+o.toString():o.toString()}},{key:"shouldUseIntlApi",value:function(){return!dwe.includes(this.options.compatibilityJSON)}}]),e}();function SR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Fs(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{};gs(this,e),this.logger=Wl.create("interpolator"),this.options=t,this.format=t.interpolation&&t.interpolation.format||function(n){return n},this.init(t)}return ms(e,[{key:"init",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};n.interpolation||(n.interpolation={escapeValue:!0});var r=n.interpolation;this.escape=r.escape!==void 0?r.escape:twe,this.escapeValue=r.escapeValue!==void 0?r.escapeValue:!0,this.useRawValueToEscape=r.useRawValueToEscape!==void 0?r.useRawValueToEscape:!1,this.prefix=r.prefix?Mg(r.prefix):r.prefixEscaped||"{{",this.suffix=r.suffix?Mg(r.suffix):r.suffixEscaped||"}}",this.formatSeparator=r.formatSeparator?r.formatSeparator:r.formatSeparator||",",this.unescapePrefix=r.unescapeSuffix?"":r.unescapePrefix||"-",this.unescapeSuffix=this.unescapePrefix?"":r.unescapeSuffix||"",this.nestingPrefix=r.nestingPrefix?Mg(r.nestingPrefix):r.nestingPrefixEscaped||Mg("$t("),this.nestingSuffix=r.nestingSuffix?Mg(r.nestingSuffix):r.nestingSuffixEscaped||Mg(")"),this.nestingOptionsSeparator=r.nestingOptionsSeparator?r.nestingOptionsSeparator:r.nestingOptionsSeparator||",",this.maxReplaces=r.maxReplaces?r.maxReplaces:1e3,this.alwaysFormat=r.alwaysFormat!==void 0?r.alwaysFormat:!1,this.resetRegExp()}},{key:"reset",value:function(){this.options&&this.init(this.options)}},{key:"resetRegExp",value:function(){var n="".concat(this.prefix,"(.+?)").concat(this.suffix);this.regexp=new RegExp(n,"g");var r="".concat(this.prefix).concat(this.unescapePrefix,"(.+?)").concat(this.unescapeSuffix).concat(this.suffix);this.regexpUnescape=new RegExp(r,"g");var i="".concat(this.nestingPrefix,"(.+?)").concat(this.nestingSuffix);this.nestingRegexp=new RegExp(i,"g")}},{key:"interpolate",value:function(n,r,i,o){var a=this,s,l,u,d=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{};function p(E){return E.replace(/\$/g,"$$$$")}var m=function(_){if(_.indexOf(a.formatSeparator)<0){var k=pR(r,d,_);return a.alwaysFormat?a.format(k,void 0,i,Fs(Fs(Fs({},o),r),{},{interpolationkey:_})):k}var T=_.split(a.formatSeparator),L=T.shift().trim(),O=T.join(a.formatSeparator).trim();return a.format(pR(r,d,L),O,i,Fs(Fs(Fs({},o),r),{},{interpolationkey:L}))};this.resetRegExp();var y=o&&o.missingInterpolationHandler||this.options.missingInterpolationHandler,b=o&&o.interpolation&&o.interpolation.skipOnVariables!==void 0?o.interpolation.skipOnVariables:this.options.interpolation.skipOnVariables,w=[{regex:this.regexpUnescape,safeValue:function(_){return p(_)}},{regex:this.regexp,safeValue:function(_){return a.escapeValue?p(a.escape(_)):p(_)}}];return w.forEach(function(E){for(u=0;s=E.regex.exec(n);){var _=s[1].trim();if(l=m(_),l===void 0)if(typeof y=="function"){var k=y(n,s,o);l=typeof k=="string"?k:""}else if(o&&Object.prototype.hasOwnProperty.call(o,_))l="";else if(b){l=s[0];continue}else a.logger.warn("missed to pass in variable ".concat(_," for interpolating ").concat(n)),l="";else typeof l!="string"&&!a.useRawValueToEscape&&(l=fR(l));var T=E.safeValue(l);if(n=n.replace(s[0],T),b?(E.regex.lastIndex+=l.length,E.regex.lastIndex-=s[0].length):E.regex.lastIndex=0,u++,u>=a.maxReplaces)break}}),n}},{key:"nest",value:function(n,r){var i=this,o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},a,s,l;function u(y,b){var w=this.nestingOptionsSeparator;if(y.indexOf(w)<0)return y;var E=y.split(new RegExp("".concat(w,"[ ]*{"))),_="{".concat(E[1]);y=E[0],_=this.interpolate(_,l);var k=_.match(/'/g),T=_.match(/"/g);(k&&k.length%2===0&&!T||T.length%2!==0)&&(_=_.replace(/'/g,'"'));try{l=JSON.parse(_),b&&(l=Fs(Fs({},b),l))}catch(L){return this.logger.warn("failed parsing options string in nesting for key ".concat(y),L),"".concat(y).concat(w).concat(_)}return delete l.defaultValue,y}for(;a=this.nestingRegexp.exec(n);){var d=[];l=Fs({},o),l=l.replace&&typeof l.replace!="string"?l.replace:l,l.applyPostProcessor=!1,delete l.defaultValue;var p=!1;if(a[0].indexOf(this.formatSeparator)!==-1&&!/{.*}/.test(a[1])){var m=a[1].split(this.formatSeparator).map(function(y){return y.trim()});a[1]=m.shift(),d=m,p=!0}if(s=r(u.call(this,a[1].trim(),l),l),s&&a[0]===n&&typeof s!="string")return s;typeof s!="string"&&(s=fR(s)),s||(this.logger.warn("missed to resolve ".concat(a[1]," for nesting ").concat(n)),s=""),p&&(s=d.reduce(function(y,b){return i.format(y,b,o.lng,Fs(Fs({},o),{},{interpolationkey:a[1].trim()}))},s.trim())),n=n.replace(a[0],s),this.regexp.lastIndex=0}return n}}]),e}();function wR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Ru(e){for(var t=1;t-1){var r=e.split("(");t=r[0].toLowerCase().trim();var i=r[1].substring(0,r[1].length-1);if(t==="currency"&&i.indexOf(":")<0)n.currency||(n.currency=i.trim());else if(t==="relativetime"&&i.indexOf(":")<0)n.range||(n.range=i.trim());else{var o=i.split(";");o.forEach(function(a){if(a){var s=a.split(":"),l=Y3e(s),u=l[0],d=l.slice(1),p=d.join(":").trim().replace(/^'+|'+$/g,"");n[u.trim()]||(n[u.trim()]=p),p==="false"&&(n[u.trim()]=!1),p==="true"&&(n[u.trim()]=!0),isNaN(p)||(n[u.trim()]=parseInt(p,10))}})}}return{formatName:t,formatOptions:n}}function Lg(e){var t={};return function(r,i,o){var a=i+JSON.stringify(o),s=t[a];return s||(s=e(i,o),t[a]=s),s(r)}}var mwe=function(){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};gs(this,e),this.logger=Wl.create("formatter"),this.options=t,this.formats={number:Lg(function(n,r){var i=new Intl.NumberFormat(n,Ru({},r));return function(o){return i.format(o)}}),currency:Lg(function(n,r){var i=new Intl.NumberFormat(n,Ru(Ru({},r),{},{style:"currency"}));return function(o){return i.format(o)}}),datetime:Lg(function(n,r){var i=new Intl.DateTimeFormat(n,Ru({},r));return function(o){return i.format(o)}}),relativetime:Lg(function(n,r){var i=new Intl.RelativeTimeFormat(n,Ru({},r));return function(o){return i.format(o,r.range||"day")}}),list:Lg(function(n,r){var i=new Intl.ListFormat(n,Ru({},r));return function(o){return i.format(o)}})},this.init(t)}return ms(e,[{key:"init",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{interpolation:{}},i=r.interpolation;this.formatSeparator=i.formatSeparator?i.formatSeparator:i.formatSeparator||","}},{key:"add",value:function(n,r){this.formats[n.toLowerCase().trim()]=r}},{key:"addCached",value:function(n,r){this.formats[n.toLowerCase().trim()]=Lg(r)}},{key:"format",value:function(n,r,i){var o=this,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{},s=r.split(this.formatSeparator),l=s.reduce(function(u,d){var p=gwe(d),m=p.formatName,y=p.formatOptions;if(o.formats[m]){var b=u;try{var w=a&&a.formatParams&&a.formatParams[a.interpolationkey]||{},E=w.locale||w.lng||a.locale||a.lng||i;b=o.formats[m](u,E,Ru(Ru(Ru({},y),a),w))}catch(_){o.logger.warn(_)}return b}else o.logger.warn("there was no format function for ".concat(m));return u},n);return l}}]),e}();function CR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function _R(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function bwe(e,t){e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)}var xwe=function(e){o4(n,e);var t=vwe(n);function n(r,i,o){var a,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:{};return gs(this,n),a=t.call(this),a4&&Jd.call(Fd(a)),a.backend=r,a.store=i,a.services=o,a.languageUtils=o.languageUtils,a.options=s,a.logger=Wl.create("backendConnector"),a.waitingReads=[],a.maxParallelReads=s.maxParallelReads||10,a.readingCalls=0,a.maxRetries=s.maxRetries>=0?s.maxRetries:5,a.retryTimeout=s.retryTimeout>=1?s.retryTimeout:350,a.state={},a.queue=[],a.backend&&a.backend.init&&a.backend.init(o,s.backend,s),a}return ms(n,[{key:"queueLoad",value:function(i,o,a,s){var l=this,u={},d={},p={},m={};return i.forEach(function(y){var b=!0;o.forEach(function(w){var E="".concat(y,"|").concat(w);!a.reload&&l.store.hasResourceBundle(y,w)?l.state[E]=2:l.state[E]<0||(l.state[E]===1?d[E]===void 0&&(d[E]=!0):(l.state[E]=1,b=!1,d[E]===void 0&&(d[E]=!0),u[E]===void 0&&(u[E]=!0),m[w]===void 0&&(m[w]=!0)))}),b||(p[y]=!0)}),(Object.keys(u).length||Object.keys(d).length)&&this.queue.push({pending:d,pendingCount:Object.keys(d).length,loaded:{},errors:[],callback:s}),{toLoad:Object.keys(u),pending:Object.keys(d),toLoadLanguages:Object.keys(p),toLoadNamespaces:Object.keys(m)}}},{key:"loaded",value:function(i,o,a){var s=i.split("|"),l=s[0],u=s[1];o&&this.emit("failedLoading",l,u,o),a&&this.store.addResourceBundle(l,u,a),this.state[i]=o?-1:2;var d={};this.queue.forEach(function(p){J3e(p.loaded,[l],u),bwe(p,i),o&&p.errors.push(o),p.pendingCount===0&&!p.done&&(Object.keys(p.loaded).forEach(function(m){d[m]||(d[m]={});var y=p.loaded[m];y.length&&y.forEach(function(b){d[m][b]===void 0&&(d[m][b]=!0)})}),p.done=!0,p.errors.length?p.callback(p.errors):p.callback())}),this.emit("loaded",d),this.queue=this.queue.filter(function(p){return!p.done})}},{key:"read",value:function(i,o,a){var s=this,l=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,u=arguments.length>4&&arguments[4]!==void 0?arguments[4]:this.retryTimeout,d=arguments.length>5?arguments[5]:void 0;if(!i.length)return d(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:i,ns:o,fcName:a,tried:l,wait:u,callback:d});return}this.readingCalls++;var p=function(w,E){if(s.readingCalls--,s.waitingReads.length>0){var _=s.waitingReads.shift();s.read(_.lng,_.ns,_.fcName,_.tried,_.wait,_.callback)}if(w&&E&&l2&&arguments[2]!==void 0?arguments[2]:{},l=arguments.length>3?arguments[3]:void 0;if(!this.backend)return this.logger.warn("No backend was added via i18next.use. Will not load resources."),l&&l();typeof i=="string"&&(i=this.languageUtils.toResolveHierarchy(i)),typeof o=="string"&&(o=[o]);var u=this.queueLoad(i,o,s,l);if(!u.toLoad.length)return u.pending.length||l(),null;u.toLoad.forEach(function(d){a.loadOne(d)})}},{key:"load",value:function(i,o,a){this.prepareLoading(i,o,{},a)}},{key:"reload",value:function(i,o,a){this.prepareLoading(i,o,{reload:!0},a)}},{key:"loadOne",value:function(i){var o=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",s=i.split("|"),l=s[0],u=s[1];this.read(l,u,"read",void 0,void 0,function(d,p){d&&o.logger.warn("".concat(a,"loading namespace ").concat(u," for language ").concat(l," failed"),d),!d&&p&&o.logger.log("".concat(a,"loaded namespace ").concat(u," for language ").concat(l),p),o.loaded(i,d,p)})}},{key:"saveMissing",value:function(i,o,a,s,l){var u=arguments.length>5&&arguments[5]!==void 0?arguments[5]:{},d=arguments.length>6&&arguments[6]!==void 0?arguments[6]:function(){};if(this.services.utils&&this.services.utils.hasLoadedNamespace&&!this.services.utils.hasLoadedNamespace(o)){this.logger.warn('did not save key "'.concat(a,'" as the namespace "').concat(o,'" was not yet loaded'),"This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!");return}if(!(a==null||a==="")){if(this.backend&&this.backend.create){var p=_R(_R({},u),{},{isUpdate:l}),m=this.backend.create.bind(this.backend);if(m.length<6)try{var y;m.length===5?y=m(i,o,a,s,p):y=m(i,o,a,s),y&&typeof y.then=="function"?y.then(function(b){return d(null,b)}).catch(d):d(null,y)}catch(b){d(b)}else m(i,o,a,s,d,p)}!i||!i[0]||this.store.addResource(i[0],o,a,s)}}}]),n}(Jd);function kR(){return{debug:!1,initImmediate:!0,ns:["translation"],defaultNS:["translation"],fallbackLng:["dev"],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:"all",preload:!1,simplifyPluralSuffix:!0,keySeparator:".",nsSeparator:":",pluralSeparator:"_",contextSeparator:"_",partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:"fallback",saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!0,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:function(t){var n={};if(Ks(t[1])==="object"&&(n=t[1]),typeof t[1]=="string"&&(n.defaultValue=t[1]),typeof t[2]=="string"&&(n.tDescription=t[2]),Ks(t[2])==="object"||Ks(t[3])==="object"){var r=t[3]||t[2];Object.keys(r).forEach(function(i){n[i]=r[i]})}return n},interpolation:{escapeValue:!0,format:function(t,n,r,i){return t},prefix:"{{",suffix:"}}",formatSeparator:",",unescapePrefix:"-",nestingPrefix:"$t(",nestingSuffix:")",nestingOptionsSeparator:",",maxReplaces:1e3,skipOnVariables:!0}}}function ER(e){return typeof e.ns=="string"&&(e.ns=[e.ns]),typeof e.fallbackLng=="string"&&(e.fallbackLng=[e.fallbackLng]),typeof e.fallbackNS=="string"&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&e.supportedLngs.indexOf("cimode")<0&&(e.supportedLngs=e.supportedLngs.concat(["cimode"])),e}function PR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function Tl(e){for(var t=1;t"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function nx(){}function Cwe(e){var t=Object.getOwnPropertyNames(Object.getPrototypeOf(e));t.forEach(function(n){typeof e[n]=="function"&&(e[n]=e[n].bind(e))})}var P3=function(e){o4(n,e);var t=Swe(n);function n(){var r,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},o=arguments.length>1?arguments[1]:void 0;if(gs(this,n),r=t.call(this),a4&&Jd.call(Fd(r)),r.options=ER(i),r.services={},r.logger=Wl,r.modules={external:[]},Cwe(Fd(r)),o&&!r.isInitialized&&!i.isClone){if(!r.options.initImmediate)return r.init(i,o),g2(r,Fd(r));setTimeout(function(){r.init(i,o)},0)}return r}return ms(n,[{key:"init",value:function(){var i=this,o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=arguments.length>1?arguments[1]:void 0;typeof o=="function"&&(a=o,o={}),!o.defaultNS&&o.defaultNS!==!1&&o.ns&&(typeof o.ns=="string"?o.defaultNS=o.ns:o.ns.indexOf("translation")<0&&(o.defaultNS=o.ns[0]));var s=kR();this.options=Tl(Tl(Tl({},s),this.options),ER(o)),this.options.compatibilityAPI!=="v1"&&(this.options.interpolation=Tl(Tl({},s.interpolation),this.options.interpolation)),o.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=o.keySeparator),o.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=o.nsSeparator);function l(_){return _?typeof _=="function"?new _:_:null}if(!this.options.isClone){this.modules.logger?Wl.init(l(this.modules.logger),this.options):Wl.init(null,this.options);var u;this.modules.formatter?u=this.modules.formatter:typeof Intl<"u"&&(u=mwe);var d=new bR(this.options);this.store=new awe(this.options.resources,this.options);var p=this.services;p.logger=Wl,p.resourceStore=this.store,p.languageUtils=d,p.pluralResolver=new hwe(d,{prepend:this.options.pluralSeparator,compatibilityJSON:this.options.compatibilityJSON,simplifyPluralSuffix:this.options.simplifyPluralSuffix}),u&&(!this.options.interpolation.format||this.options.interpolation.format===s.interpolation.format)&&(p.formatter=l(u),p.formatter.init(p,this.options),this.options.interpolation.format=p.formatter.format.bind(p.formatter)),p.interpolator=new pwe(this.options),p.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},p.backendConnector=new xwe(l(this.modules.backend),p.resourceStore,p,this.options),p.backendConnector.on("*",function(_){for(var k=arguments.length,T=new Array(k>1?k-1:0),L=1;L1?k-1:0),L=1;L0&&m[0]!=="dev"&&(this.options.lng=m[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn("init: no languageDetector is used and no lng is defined");var y=["getResource","hasResourceBundle","getResourceBundle","getDataByLanguage"];y.forEach(function(_){i[_]=function(){var k;return(k=i.store)[_].apply(k,arguments)}});var b=["addResource","addResources","addResourceBundle","removeResourceBundle"];b.forEach(function(_){i[_]=function(){var k;return(k=i.store)[_].apply(k,arguments),i}});var w=qv(),E=function(){var k=function(L,O){i.isInitialized&&!i.initializedStoreOnce&&i.logger.warn("init: i18next is already initialized. You should call init just once!"),i.isInitialized=!0,i.options.isClone||i.logger.log("initialized",i.options),i.emit("initialized",i.options),w.resolve(O),a(L,O)};if(i.languages&&i.options.compatibilityAPI!=="v1"&&!i.isInitialized)return k(null,i.t.bind(i));i.changeLanguage(i.options.lng,k)};return this.options.resources||!this.options.initImmediate?E():setTimeout(E,0),w}},{key:"loadResources",value:function(i){var o=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:nx,s=a,l=typeof i=="string"?i:this.language;if(typeof i=="function"&&(s=i),!this.options.resources||this.options.partialBundledLanguages){if(l&&l.toLowerCase()==="cimode")return s();var u=[],d=function(y){if(y){var b=o.services.languageUtils.toResolveHierarchy(y);b.forEach(function(w){u.indexOf(w)<0&&u.push(w)})}};if(l)d(l);else{var p=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);p.forEach(function(m){return d(m)})}this.options.preload&&this.options.preload.forEach(function(m){return d(m)}),this.services.backendConnector.load(u,this.options.ns,function(m){!m&&!o.resolvedLanguage&&o.language&&o.setResolvedLanguage(o.language),s(m)})}else s(null)}},{key:"reloadResources",value:function(i,o,a){var s=qv();return i||(i=this.languages),o||(o=this.options.ns),a||(a=nx),this.services.backendConnector.reload(i,o,function(l){s.resolve(),a(l)}),s}},{key:"use",value:function(i){if(!i)throw new Error("You are passing an undefined module! Please check the object you are passing to i18next.use()");if(!i.type)throw new Error("You are passing a wrong module! Please check the object you are passing to i18next.use()");return i.type==="backend"&&(this.modules.backend=i),(i.type==="logger"||i.log&&i.warn&&i.error)&&(this.modules.logger=i),i.type==="languageDetector"&&(this.modules.languageDetector=i),i.type==="i18nFormat"&&(this.modules.i18nFormat=i),i.type==="postProcessor"&&kU.addPostProcessor(i),i.type==="formatter"&&(this.modules.formatter=i),i.type==="3rdParty"&&this.modules.external.push(i),this}},{key:"setResolvedLanguage",value:function(i){if(!(!i||!this.languages)&&!(["cimode","dev"].indexOf(i)>-1))for(var o=0;o-1)&&this.store.hasLanguageSomeTranslations(a)){this.resolvedLanguage=a;break}}}},{key:"changeLanguage",value:function(i,o){var a=this;this.isLanguageChangingTo=i;var s=qv();this.emit("languageChanging",i);var l=function(m){a.language=m,a.languages=a.services.languageUtils.toResolveHierarchy(m),a.resolvedLanguage=void 0,a.setResolvedLanguage(m)},u=function(m,y){y?(l(y),a.translator.changeLanguage(y),a.isLanguageChangingTo=void 0,a.emit("languageChanged",y),a.logger.log("languageChanged",y)):a.isLanguageChangingTo=void 0,s.resolve(function(){return a.t.apply(a,arguments)}),o&&o(m,function(){return a.t.apply(a,arguments)})},d=function(m){!i&&!m&&a.services.languageDetector&&(m=[]);var y=typeof m=="string"?m:a.services.languageUtils.getBestMatchFromCodes(m);y&&(a.language||l(y),a.translator.language||a.translator.changeLanguage(y),a.services.languageDetector&&a.services.languageDetector.cacheUserLanguage&&a.services.languageDetector.cacheUserLanguage(y)),a.loadResources(y,function(b){u(b,y)})};return!i&&this.services.languageDetector&&!this.services.languageDetector.async?d(this.services.languageDetector.detect()):!i&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(d):this.services.languageDetector.detect(d):d(i),s}},{key:"getFixedT",value:function(i,o,a){var s=this,l=function u(d,p){var m;if(Ks(p)!=="object"){for(var y=arguments.length,b=new Array(y>2?y-2:0),w=2;w1&&arguments[1]!==void 0?arguments[1]:{};if(!this.isInitialized)return this.logger.warn("hasLoadedNamespace: i18next was not initialized",this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn("hasLoadedNamespace: i18n.languages were undefined or empty",this.languages),!1;var s=this.resolvedLanguage||this.languages[0],l=this.options?this.options.fallbackLng:!1,u=this.languages[this.languages.length-1];if(s.toLowerCase()==="cimode")return!0;var d=function(y,b){var w=o.services.backendConnector.state["".concat(y,"|").concat(b)];return w===-1||w===2};if(a.precheck){var p=a.precheck(this,d);if(p!==void 0)return p}return!!(this.hasResourceBundle(s,i)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||d(s,i)&&(!l||d(u,i)))}},{key:"loadNamespaces",value:function(i,o){var a=this,s=qv();return this.options.ns?(typeof i=="string"&&(i=[i]),i.forEach(function(l){a.options.ns.indexOf(l)<0&&a.options.ns.push(l)}),this.loadResources(function(l){s.resolve(),o&&o(l)}),s):(o&&o(),Promise.resolve())}},{key:"loadLanguages",value:function(i,o){var a=qv();typeof i=="string"&&(i=[i]);var s=this.options.preload||[],l=i.filter(function(u){return s.indexOf(u)<0});return l.length?(this.options.preload=s.concat(l),this.loadResources(function(u){a.resolve(),o&&o(u)}),a):(o&&o(),Promise.resolve())}},{key:"dir",value:function(i){if(i||(i=this.resolvedLanguage||(this.languages&&this.languages.length>0?this.languages[0]:this.language)),!i)return"rtl";var o=["ar","shu","sqr","ssh","xaa","yhd","yud","aao","abh","abv","acm","acq","acw","acx","acy","adf","ads","aeb","aec","afb","ajp","apc","apd","arb","arq","ars","ary","arz","auz","avl","ayh","ayl","ayn","ayp","bbz","pga","he","iw","ps","pbt","pbu","pst","prp","prd","ug","ur","ydd","yds","yih","ji","yi","hbo","men","xmn","fa","jpr","peo","pes","prs","dv","sam","ckb"],a=this.services&&this.services.languageUtils||new bR(kR());return o.indexOf(a.getLanguagePartFromCode(i))>-1||i.toLowerCase().indexOf("-arab")>1?"rtl":"ltr"}},{key:"cloneInstance",value:function(){var i=this,o=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:nx,s=Tl(Tl(Tl({},this.options),o),{isClone:!0}),l=new n(s);(o.debug!==void 0||o.prefix!==void 0)&&(l.logger=l.logger.clone(o));var u=["store","services","language"];return u.forEach(function(d){l[d]=i[d]}),l.services=Tl({},this.services),l.services.utils={hasLoadedNamespace:l.hasLoadedNamespace.bind(l)},l.translator=new yR(l.services,l.options),l.translator.on("*",function(d){for(var p=arguments.length,m=new Array(p>1?p-1:0),y=1;y0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0;return new P3(e,t)});var Et=P3.createInstance();Et.createInstance=P3.createInstance;Et.createInstance;Et.dir;Et.init;Et.loadResources;Et.reloadResources;Et.use;Et.changeLanguage;Et.getFixedT;Et.t;Et.exists;Et.setDefaultNamespace;Et.hasLoadedNamespace;Et.loadNamespaces;Et.loadLanguages;var EU=[],_we=EU.forEach,kwe=EU.slice;function Ewe(e){return _we.call(kwe.call(arguments,1),function(t){if(t)for(var n in t)e[n]===void 0&&(e[n]=t[n])}),e}var TR=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/,Pwe=function(t,n,r){var i=r||{};i.path=i.path||"/";var o=encodeURIComponent(n),a="".concat(t,"=").concat(o);if(i.maxAge>0){var s=i.maxAge-0;if(Number.isNaN(s))throw new Error("maxAge should be a Number");a+="; Max-Age=".concat(Math.floor(s))}if(i.domain){if(!TR.test(i.domain))throw new TypeError("option domain is invalid");a+="; Domain=".concat(i.domain)}if(i.path){if(!TR.test(i.path))throw new TypeError("option path is invalid");a+="; Path=".concat(i.path)}if(i.expires){if(typeof i.expires.toUTCString!="function")throw new TypeError("option expires is invalid");a+="; Expires=".concat(i.expires.toUTCString())}if(i.httpOnly&&(a+="; HttpOnly"),i.secure&&(a+="; Secure"),i.sameSite){var l=typeof i.sameSite=="string"?i.sameSite.toLowerCase():i.sameSite;switch(l){case!0:a+="; SameSite=Strict";break;case"lax":a+="; SameSite=Lax";break;case"strict":a+="; SameSite=Strict";break;case"none":a+="; SameSite=None";break;default:throw new TypeError("option sameSite is invalid")}}return a},MR={create:function(t,n,r,i){var o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:{path:"/",sameSite:"strict"};r&&(o.expires=new Date,o.expires.setTime(o.expires.getTime()+r*60*1e3)),i&&(o.domain=i),document.cookie=Pwe(t,encodeURIComponent(n),o)},read:function(t){for(var n="".concat(t,"="),r=document.cookie.split(";"),i=0;i-1&&(r=window.location.hash.substring(window.location.hash.indexOf("?")));for(var i=r.substring(1),o=i.split("&"),a=0;a0){var l=o[a].substring(0,s);l===t.lookupQuerystring&&(n=o[a].substring(s+1))}}}return n}},Kv=null,LR=function(){if(Kv!==null)return Kv;try{Kv=window!=="undefined"&&window.localStorage!==null;var t="i18next.translate.boo";window.localStorage.setItem(t,"foo"),window.localStorage.removeItem(t)}catch{Kv=!1}return Kv},Lwe={name:"localStorage",lookup:function(t){var n;if(t.lookupLocalStorage&&LR()){var r=window.localStorage.getItem(t.lookupLocalStorage);r&&(n=r)}return n},cacheUserLanguage:function(t,n){n.lookupLocalStorage&&LR()&&window.localStorage.setItem(n.lookupLocalStorage,t)}},Yv=null,AR=function(){if(Yv!==null)return Yv;try{Yv=window!=="undefined"&&window.sessionStorage!==null;var t="i18next.translate.boo";window.sessionStorage.setItem(t,"foo"),window.sessionStorage.removeItem(t)}catch{Yv=!1}return Yv},Awe={name:"sessionStorage",lookup:function(t){var n;if(t.lookupSessionStorage&&AR()){var r=window.sessionStorage.getItem(t.lookupSessionStorage);r&&(n=r)}return n},cacheUserLanguage:function(t,n){n.lookupSessionStorage&&AR()&&window.sessionStorage.setItem(n.lookupSessionStorage,t)}},Owe={name:"navigator",lookup:function(t){var n=[];if(typeof navigator<"u"){if(navigator.languages)for(var r=0;r0?n:void 0}},Rwe={name:"htmlTag",lookup:function(t){var n,r=t.htmlTag||(typeof document<"u"?document.documentElement:null);return r&&typeof r.getAttribute=="function"&&(n=r.getAttribute("lang")),n}},Iwe={name:"path",lookup:function(t){var n;if(typeof window<"u"){var r=window.location.pathname.match(/\/([a-zA-Z-]*)/g);if(r instanceof Array)if(typeof t.lookupFromPathIndex=="number"){if(typeof r[t.lookupFromPathIndex]!="string")return;n=r[t.lookupFromPathIndex].replace("/","")}else n=r[0].replace("/","")}return n}},Dwe={name:"subdomain",lookup:function(t){var n=typeof t.lookupFromSubdomainIndex=="number"?t.lookupFromSubdomainIndex+1:1,r=typeof window<"u"&&window.location&&window.location.hostname&&window.location.hostname.match(/^(\w{2,5})\.(([a-z0-9-]{1,63}\.[a-z]{2,6})|localhost)/i);if(r)return r[n]}};function jwe(){return{order:["querystring","cookie","localStorage","sessionStorage","navigator","htmlTag"],lookupQuerystring:"lng",lookupCookie:"i18next",lookupLocalStorage:"i18nextLng",lookupSessionStorage:"i18nextLng",caches:["localStorage"],excludeCacheFor:["cimode"]}}var PU=function(){function e(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};gs(this,e),this.type="languageDetector",this.detectors={},this.init(t,n)}return ms(e,[{key:"init",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=n,this.options=Ewe(r,this.options||{},jwe()),this.options.lookupFromUrlIndex&&(this.options.lookupFromPathIndex=this.options.lookupFromUrlIndex),this.i18nOptions=i,this.addDetector(Twe),this.addDetector(Mwe),this.addDetector(Lwe),this.addDetector(Awe),this.addDetector(Owe),this.addDetector(Rwe),this.addDetector(Iwe),this.addDetector(Dwe)}},{key:"addDetector",value:function(n){this.detectors[n.name]=n}},{key:"detect",value:function(n){var r=this;n||(n=this.options.order);var i=[];return n.forEach(function(o){if(r.detectors[o]){var a=r.detectors[o].lookup(r.options);a&&typeof a=="string"&&(a=[a]),a&&(i=i.concat(a))}}),this.services.languageUtils.getBestMatchFromCodes?i:i.length>0?i[0]:null}},{key:"cacheUserLanguage",value:function(n,r){var i=this;r||(r=this.options.caches),r&&(this.options.excludeCacheFor&&this.options.excludeCacheFor.indexOf(n)>-1||r.forEach(function(o){i.detectors[o]&&i.detectors[o].cacheUserLanguage(n,i.options)}))}}]),e}();PU.type="languageDetector";function Ck(e){return Ck=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ck(e)}var TU=[],Nwe=TU.forEach,$we=TU.slice;function _k(e){return Nwe.call($we.call(arguments,1),function(t){if(t)for(var n in t)e[n]===void 0&&(e[n]=t[n])}),e}function MU(){return typeof XMLHttpRequest=="function"||(typeof XMLHttpRequest>"u"?"undefined":Ck(XMLHttpRequest))==="object"}function Fwe(e){return!!e&&typeof e.then=="function"}function Bwe(e){return Fwe(e)?e:Promise.resolve(e)}function zwe(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Dy={},Hwe={get exports(){return Dy},set exports(e){Dy=e}},V1={},Wwe={get exports(){return V1},set exports(e){V1=e}},OR;function Uwe(){return OR||(OR=1,function(e,t){var n=typeof self<"u"?self:So,r=function(){function o(){this.fetch=!1,this.DOMException=n.DOMException}return o.prototype=n,new o}();(function(o){(function(a){var s={searchParams:"URLSearchParams"in o,iterable:"Symbol"in o&&"iterator"in Symbol,blob:"FileReader"in o&&"Blob"in o&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in o,arrayBuffer:"ArrayBuffer"in o};function l($){return $&&DataView.prototype.isPrototypeOf($)}if(s.arrayBuffer)var u=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],d=ArrayBuffer.isView||function($){return $&&u.indexOf(Object.prototype.toString.call($))>-1};function p($){if(typeof $!="string"&&($=String($)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test($))throw new TypeError("Invalid character in header field name");return $.toLowerCase()}function m($){return typeof $!="string"&&($=String($)),$}function y($){var V={next:function(){var X=$.shift();return{done:X===void 0,value:X}}};return s.iterable&&(V[Symbol.iterator]=function(){return V}),V}function b($){this.map={},$ instanceof b?$.forEach(function(V,X){this.append(X,V)},this):Array.isArray($)?$.forEach(function(V){this.append(V[0],V[1])},this):$&&Object.getOwnPropertyNames($).forEach(function(V){this.append(V,$[V])},this)}b.prototype.append=function($,V){$=p($),V=m(V);var X=this.map[$];this.map[$]=X?X+", "+V:V},b.prototype.delete=function($){delete this.map[p($)]},b.prototype.get=function($){return $=p($),this.has($)?this.map[$]:null},b.prototype.has=function($){return this.map.hasOwnProperty(p($))},b.prototype.set=function($,V){this.map[p($)]=m(V)},b.prototype.forEach=function($,V){for(var X in this.map)this.map.hasOwnProperty(X)&&$.call(V,this.map[X],X,this)},b.prototype.keys=function(){var $=[];return this.forEach(function(V,X){$.push(X)}),y($)},b.prototype.values=function(){var $=[];return this.forEach(function(V){$.push(V)}),y($)},b.prototype.entries=function(){var $=[];return this.forEach(function(V,X){$.push([X,V])}),y($)},s.iterable&&(b.prototype[Symbol.iterator]=b.prototype.entries);function w($){if($.bodyUsed)return Promise.reject(new TypeError("Already read"));$.bodyUsed=!0}function E($){return new Promise(function(V,X){$.onload=function(){V($.result)},$.onerror=function(){X($.error)}})}function _($){var V=new FileReader,X=E(V);return V.readAsArrayBuffer($),X}function k($){var V=new FileReader,X=E(V);return V.readAsText($),X}function T($){for(var V=new Uint8Array($),X=new Array(V.length),Q=0;Q-1?V:$}function N($,V){V=V||{};var X=V.body;if($ instanceof N){if($.bodyUsed)throw new TypeError("Already read");this.url=$.url,this.credentials=$.credentials,V.headers||(this.headers=new b($.headers)),this.method=$.method,this.mode=$.mode,this.signal=$.signal,!X&&$._bodyInit!=null&&(X=$._bodyInit,$.bodyUsed=!0)}else this.url=String($);if(this.credentials=V.credentials||this.credentials||"same-origin",(V.headers||!this.headers)&&(this.headers=new b(V.headers)),this.method=I(V.method||this.method||"GET"),this.mode=V.mode||this.mode||null,this.signal=V.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&X)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(X)}N.prototype.clone=function(){return new N(this,{body:this._bodyInit})};function W($){var V=new FormData;return $.trim().split("&").forEach(function(X){if(X){var Q=X.split("="),G=Q.shift().replace(/\+/g," "),Y=Q.join("=").replace(/\+/g," ");V.append(decodeURIComponent(G),decodeURIComponent(Y))}}),V}function B($){var V=new b,X=$.replace(/\r?\n[\t ]+/g," ");return X.split(/\r?\n/).forEach(function(Q){var G=Q.split(":"),Y=G.shift().trim();if(Y){var ee=G.join(":").trim();V.append(Y,ee)}}),V}O.call(N.prototype);function K($,V){V||(V={}),this.type="default",this.status=V.status===void 0?200:V.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in V?V.statusText:"OK",this.headers=new b(V.headers),this.url=V.url||"",this._initBody($)}O.call(K.prototype),K.prototype.clone=function(){return new K(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new b(this.headers),url:this.url})},K.error=function(){var $=new K(null,{status:0,statusText:""});return $.type="error",$};var ne=[301,302,303,307,308];K.redirect=function($,V){if(ne.indexOf(V)===-1)throw new RangeError("Invalid status code");return new K(null,{status:V,headers:{location:$}})},a.DOMException=o.DOMException;try{new a.DOMException}catch{a.DOMException=function(V,X){this.message=V,this.name=X;var Q=Error(V);this.stack=Q.stack},a.DOMException.prototype=Object.create(Error.prototype),a.DOMException.prototype.constructor=a.DOMException}function z($,V){return new Promise(function(X,Q){var G=new N($,V);if(G.signal&&G.signal.aborted)return Q(new a.DOMException("Aborted","AbortError"));var Y=new XMLHttpRequest;function ee(){Y.abort()}Y.onload=function(){var fe={status:Y.status,statusText:Y.statusText,headers:B(Y.getAllResponseHeaders()||"")};fe.url="responseURL"in Y?Y.responseURL:fe.headers.get("X-Request-URL");var _e="response"in Y?Y.response:Y.responseText;X(new K(_e,fe))},Y.onerror=function(){Q(new TypeError("Network request failed"))},Y.ontimeout=function(){Q(new TypeError("Network request failed"))},Y.onabort=function(){Q(new a.DOMException("Aborted","AbortError"))},Y.open(G.method,G.url,!0),G.credentials==="include"?Y.withCredentials=!0:G.credentials==="omit"&&(Y.withCredentials=!1),"responseType"in Y&&s.blob&&(Y.responseType="blob"),G.headers.forEach(function(fe,_e){Y.setRequestHeader(_e,fe)}),G.signal&&(G.signal.addEventListener("abort",ee),Y.onreadystatechange=function(){Y.readyState===4&&G.signal.removeEventListener("abort",ee)}),Y.send(typeof G._bodyInit>"u"?null:G._bodyInit)})}return z.polyfill=!0,o.fetch||(o.fetch=z,o.Headers=b,o.Request=N,o.Response=K),a.Headers=b,a.Request=N,a.Response=K,a.fetch=z,Object.defineProperty(a,"__esModule",{value:!0}),a})({})})(r),r.fetch.ponyfill=!0,delete r.fetch.polyfill;var i=r;t=i.fetch,t.default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t}(Wwe,V1)),V1}(function(e,t){var n;if(typeof fetch=="function"&&(typeof So<"u"&&So.fetch?n=So.fetch:typeof window<"u"&&window.fetch?n=window.fetch:n=fetch),typeof zwe<"u"&&(typeof window>"u"||typeof window.document>"u")){var r=n||Uwe();r.default&&(r=r.default),t.default=r,e.exports=t.default}})(Hwe,Dy);const LU=Dy,RR=Cj({__proto__:null,default:LU},[Dy]);function T3(e){return T3=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},T3(e)}var Yu;typeof fetch=="function"&&(typeof global<"u"&&global.fetch?Yu=global.fetch:typeof window<"u"&&window.fetch?Yu=window.fetch:Yu=fetch);var jy;MU()&&(typeof global<"u"&&global.XMLHttpRequest?jy=global.XMLHttpRequest:typeof window<"u"&&window.XMLHttpRequest&&(jy=window.XMLHttpRequest));var M3;typeof ActiveXObject=="function"&&(typeof global<"u"&&global.ActiveXObject?M3=global.ActiveXObject:typeof window<"u"&&window.ActiveXObject&&(M3=window.ActiveXObject));!Yu&&RR&&!jy&&!M3&&(Yu=LU||RR);typeof Yu!="function"&&(Yu=void 0);var kk=function(t,n){if(n&&T3(n)==="object"){var r="";for(var i in n)r+="&"+encodeURIComponent(i)+"="+encodeURIComponent(n[i]);if(!r)return t;t=t+(t.indexOf("?")!==-1?"&":"?")+r.slice(1)}return t},IR=function(t,n,r){Yu(t,n).then(function(i){if(!i.ok)return r(i.statusText||"Error",{status:i.status});i.text().then(function(o){r(null,{status:i.status,data:o})}).catch(r)}).catch(r)},DR=!1,Vwe=function(t,n,r,i){t.queryStringParams&&(n=kk(n,t.queryStringParams));var o=_k({},typeof t.customHeaders=="function"?t.customHeaders():t.customHeaders);r&&(o["Content-Type"]="application/json");var a=typeof t.requestOptions=="function"?t.requestOptions(r):t.requestOptions,s=_k({method:r?"POST":"GET",body:r?t.stringify(r):void 0,headers:o},DR?{}:a);try{IR(n,s,i)}catch(l){if(!a||Object.keys(a).length===0||!l.message||l.message.indexOf("not implemented")<0)return i(l);try{Object.keys(a).forEach(function(u){delete s[u]}),IR(n,s,i),DR=!0}catch(u){i(u)}}},Gwe=function(t,n,r,i){r&&T3(r)==="object"&&(r=kk("",r).slice(1)),t.queryStringParams&&(n=kk(n,t.queryStringParams));try{var o;jy?o=new jy:o=new M3("MSXML2.XMLHTTP.3.0"),o.open(r?"POST":"GET",n,1),t.crossDomain||o.setRequestHeader("X-Requested-With","XMLHttpRequest"),o.withCredentials=!!t.withCredentials,r&&o.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),o.overrideMimeType&&o.overrideMimeType("application/json");var a=t.customHeaders;if(a=typeof a=="function"?a():a,a)for(var s in a)o.setRequestHeader(s,a[s]);o.onreadystatechange=function(){o.readyState>3&&i(o.status>=400?o.statusText:null,{status:o.status,data:o.responseText})},o.send(r)}catch(l){console&&console.log(l)}},qwe=function(t,n,r,i){if(typeof r=="function"&&(i=r,r=void 0),i=i||function(){},Yu&&n.indexOf("file:")!==0)return Vwe(t,n,r,i);if(MU()||typeof ActiveXObject=="function")return Gwe(t,n,r,i);i(new Error("No fetch and no xhr implementation found!"))};function Ny(e){return Ny=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ny(e)}function Kwe(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function jR(e,t){for(var n=0;n1&&arguments[1]!==void 0?arguments[1]:{},r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};Kwe(this,e),this.services=t,this.options=n,this.allOptions=r,this.type="backend",this.init(t,n,r)}return Ywe(e,[{key:"init",value:function(n){var r=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.services=n,this.options=_k(i,this.options||{},Qwe()),this.allOptions=o,this.services&&this.options.reloadInterval&&setInterval(function(){return r.reload()},this.options.reloadInterval)}},{key:"readMulti",value:function(n,r,i){this._readAny(n,n,r,r,i)}},{key:"read",value:function(n,r,i){this._readAny([n],n,[r],r,i)}},{key:"_readAny",value:function(n,r,i,o,a){var s=this,l=this.options.loadPath;typeof this.options.loadPath=="function"&&(l=this.options.loadPath(n,i)),l=Bwe(l),l.then(function(u){if(!u)return a(null,{});var d=s.services.interpolator.interpolate(u,{lng:n.join("+"),ns:i.join("+")});s.loadUrl(d,a,r,o)})}},{key:"loadUrl",value:function(n,r,i,o){var a=this;this.options.request(this.options,n,void 0,function(s,l){if(l&&(l.status>=500&&l.status<600||!l.status))return r("failed loading "+n+"; status code: "+l.status,!0);if(l&&l.status>=400&&l.status<500)return r("failed loading "+n+"; status code: "+l.status,!1);if(!l&&s&&s.message&&s.message.indexOf("Failed to fetch")>-1)return r("failed loading "+n+": "+s.message,!0);if(s)return r(s,!1);var u,d;try{typeof l.data=="string"?u=a.options.parse(l.data,i,o):u=l.data}catch{d="failed parsing "+n+" to json"}if(d)return r(d,!1);r(null,u)})}},{key:"create",value:function(n,r,i,o,a){var s=this;if(this.options.addPath){typeof n=="string"&&(n=[n]);var l=this.options.parsePayload(r,i,o),u=0,d=[],p=[];n.forEach(function(m){var y=s.options.addPath;typeof s.options.addPath=="function"&&(y=s.options.addPath(m,r));var b=s.services.interpolator.interpolate(y,{lng:m,ns:r});s.options.request(s.options,b,l,function(w,E){u+=1,d.push(w),p.push(E),u===n.length&&typeof a=="function"&&a(d,p)})})}}},{key:"reload",value:function(){var n=this,r=this.services,i=r.backendConnector,o=r.languageUtils,a=r.logger,s=i.language;if(!(s&&s.toLowerCase()==="cimode")){var l=[],u=function(p){var m=o.toResolveHierarchy(p);m.forEach(function(y){l.indexOf(y)<0&&l.push(y)})};u(s),this.allOptions.preload&&this.allOptions.preload.forEach(function(d){return u(d)}),l.forEach(function(d){n.allOptions.ns.forEach(function(p){i.read(d,p,"read",null,null,function(m,y){m&&a.warn("loading namespace ".concat(p," for language ").concat(d," failed"),m),!m&&y&&a.log("loaded namespace ".concat(p," for language ").concat(d),y),i.loaded("".concat(d,"|").concat(p),m,y)})})})}}}]),e}();OU.type="backend";function Jwe(){if(console&&console.warn){for(var e,t=arguments.length,n=new Array(t),r=0;r2&&arguments[2]!==void 0?arguments[2]:{},r=t.languages[0],i=t.options?t.options.fallbackLng:!1,o=t.languages[t.languages.length-1];if(r.toLowerCase()==="cimode")return!0;var a=function(l,u){var d=t.services.backendConnector.state["".concat(l,"|").concat(u)];return d===-1||d===2};return n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!a(t.isLanguageChangingTo,e)?!1:!!(t.hasResourceBundle(r,e)||!t.services.backendConnector.backend||t.options.resources&&!t.options.partialBundledLanguages||a(r,e)&&(!i||a(o,e)))}function t4e(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!t.languages||!t.languages.length)return Ek("i18n.languages were undefined or empty",t.languages),!0;var r=t.options.ignoreJSONStructure!==void 0;return r?t.hasLoadedNamespace(e,{precheck:function(o,a){if(n.bindI18n&&n.bindI18n.indexOf("languageChanging")>-1&&o.services.backendConnector.backend&&o.isLanguageChangingTo&&!a(o.isLanguageChangingTo,e))return!1}}):e4e(e,t,n)}var n4e=/&(?:amp|#38|lt|#60|gt|#62|apos|#39|quot|#34|nbsp|#160|copy|#169|reg|#174|hellip|#8230|#x2F|#47);/g,r4e={"&":"&","&":"&","<":"<","<":"<",">":">",">":">","'":"'","'":"'",""":'"',""":'"'," ":" "," ":" ","©":"©","©":"©","®":"®","®":"®","…":"…","…":"…","/":"/","/":"/"},i4e=function(t){return r4e[t]},o4e=function(t){return t.replace(n4e,i4e)};function FR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function BR(e){for(var t=1;t0&&arguments[0]!==void 0?arguments[0]:{};Pk=BR(BR({},Pk),e)}function s4e(){return Pk}var RU;function l4e(e){RU=e}function u4e(){return RU}var c4e={type:"3rdParty",init:function(t){a4e(t.options.react),l4e(t)}},d4e=S.createContext(),f4e=function(){function e(){gs(this,e),this.usedNamespaces={}}return ms(e,[{key:"addUsedNamespaces",value:function(n){var r=this;n.forEach(function(i){r.usedNamespaces[i]||(r.usedNamespaces[i]=!0)})}},{key:"getUsedNamespaces",value:function(){return Object.keys(this.usedNamespaces)}}]),e}();function h4e(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,i,o,a,s=[],l=!0,u=!1;try{if(o=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=o.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(d){u=!0,i=d}finally{try{if(!l&&n.return!=null&&(a=n.return(),Object(a)!==a))return}finally{if(u)throw i}}return s}}function p4e(e,t){return xU(e)||h4e(e,t)||SU(e,t)||wU()}function zR(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),n.push.apply(n,r)}return n}function $C(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:{},n=t.i18n,r=S.useContext(d4e)||{},i=r.i18n,o=r.defaultNS,a=n||i||u4e();if(a&&!a.reportNamespaces&&(a.reportNamespaces=new f4e),!a){Ek("You will need to pass in an i18next instance by using initReactI18next");var s=function(W){return Array.isArray(W)?W[W.length-1]:W},l=[s,{},!1];return l.t=s,l.i18n={},l.ready=!1,l}a.options.react&&a.options.react.wait!==void 0&&Ek("It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.");var u=$C($C($C({},s4e()),a.options.react),t),d=u.useSuspense,p=u.keyPrefix,m=e||o||a.options&&a.options.defaultNS;m=typeof m=="string"?[m]:m||["translation"],a.reportNamespaces.addUsedNamespaces&&a.reportNamespaces.addUsedNamespaces(m);var y=(a.isInitialized||a.initializedStoreOnce)&&m.every(function(N){return t4e(N,a,u)});function b(){return a.getFixedT(null,u.nsMode==="fallback"?m:m[0],p)}var w=S.useState(b),E=p4e(w,2),_=E[0],k=E[1],T=m.join(),L=g4e(T),O=S.useRef(!0);S.useEffect(function(){var N=u.bindI18n,W=u.bindI18nStore;O.current=!0,!y&&!d&&$R(a,m,function(){O.current&&k(b)}),y&&L&&L!==T&&O.current&&k(b);function B(){O.current&&k(b)}return N&&a&&a.on(N,B),W&&a&&a.store.on(W,B),function(){O.current=!1,N&&a&&N.split(" ").forEach(function(K){return a.off(K,B)}),W&&a&&W.split(" ").forEach(function(K){return a.store.off(K,B)})}},[a,T]);var D=S.useRef(!0);S.useEffect(function(){O.current&&!D.current&&k(b),D.current=!1},[a,p]);var I=[_,a,y];if(I.t=_,I.i18n=a,I.ready=y,y||!y&&!d)return I;throw new Promise(function(N){$R(a,m,function(){N()})})}Et.use(OU).use(PU).use(c4e).init({fallbackLng:"en",debug:!1,backend:{loadPath:"/locales/{{lng}}.json"},interpolation:{escapeValue:!1},returnNull:!1});const m4e={isConnected:!1,isProcessing:!1,log:[],shouldShowLogViewer:!1,shouldDisplayInProgressType:"latents",shouldDisplayGuides:!0,isGFPGANAvailable:!0,isESRGANAvailable:!0,socketId:"",shouldConfirmOnDelete:!0,openAccordions:[0],currentStep:0,totalSteps:0,currentIteration:0,totalIterations:0,currentStatus:Et.isInitialized?Et.t("common.statusDisconnected"):"Disconnected",currentStatusHasSteps:!1,model:"",model_id:"",model_hash:"",app_id:"",app_version:"",model_list:{},infill_methods:[],hasError:!1,wasErrorSeen:!0,isCancelable:!0,saveIntermediatesInterval:5,enableImageDebugging:!1,toastQueue:[],searchFolder:null,foundModels:null,openModel:null,cancelOptions:{cancelType:"immediate",cancelAfter:null}},IU=ap({name:"system",initialState:m4e,reducers:{setShouldDisplayInProgressType:(e,t)=>{e.shouldDisplayInProgressType=t.payload},setIsProcessing:(e,t)=>{e.isProcessing=t.payload},setCurrentStatus:(e,t)=>{e.currentStatus=t.payload},setSystemStatus:(e,t)=>({...e,...t.payload}),errorOccurred:e=>{e.hasError=!0,e.isProcessing=!1,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.currentStatus=Et.t("common.statusError"),e.wasErrorSeen=!1},errorSeen:e=>{e.hasError=!1,e.wasErrorSeen=!0,e.currentStatus=e.isConnected?Et.t("common.statusConnected"):Et.t("common.statusDisconnected")},addLogEntry:(e,t)=>{const{timestamp:n,message:r,level:i}=t.payload,a={timestamp:n,message:r,level:i||"info"};e.log.push(a)},setShouldShowLogViewer:(e,t)=>{e.shouldShowLogViewer=t.payload},setIsConnected:(e,t)=>{e.isConnected=t.payload,e.isProcessing=!1,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.hasError=!1},setSocketId:(e,t)=>{e.socketId=t.payload},setShouldConfirmOnDelete:(e,t)=>{e.shouldConfirmOnDelete=t.payload},setOpenAccordions:(e,t)=>{e.openAccordions=t.payload},setSystemConfig:(e,t)=>({...e,...t.payload}),setShouldDisplayGuides:(e,t)=>{e.shouldDisplayGuides=t.payload},processingCanceled:e=>{e.isProcessing=!1,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.currentStatus=Et.t("common.statusProcessingCanceled")},generationRequested:e=>{e.isProcessing=!0,e.isCancelable=!0,e.currentStep=0,e.totalSteps=0,e.currentIteration=0,e.totalIterations=0,e.currentStatusHasSteps=!1,e.currentStatus=Et.t("common.statusPreparing")},setModelList:(e,t)=>{e.model_list=t.payload},setIsCancelable:(e,t)=>{e.isCancelable=t.payload},modelChangeRequested:e=>{e.currentStatus=Et.t("common.statusLoadingModel"),e.isCancelable=!1,e.isProcessing=!0,e.currentStatusHasSteps=!1},modelConvertRequested:e=>{e.currentStatus=Et.t("common.statusConvertingModel"),e.isCancelable=!1,e.isProcessing=!0,e.currentStatusHasSteps=!1},modelMergingRequested:e=>{e.currentStatus=Et.t("common.statusMergingModels"),e.isCancelable=!1,e.isProcessing=!0,e.currentStatusHasSteps=!1},setSaveIntermediatesInterval:(e,t)=>{e.saveIntermediatesInterval=t.payload},setEnableImageDebugging:(e,t)=>{e.enableImageDebugging=t.payload},addToast:(e,t)=>{e.toastQueue.push(t.payload)},clearToastQueue:e=>{e.toastQueue=[]},setProcessingIndeterminateTask:(e,t)=>{e.isProcessing=!0,e.currentStatus=t.payload,e.currentStatusHasSteps=!1},setSearchFolder:(e,t)=>{e.searchFolder=t.payload},setFoundModels:(e,t)=>{e.foundModels=t.payload},setOpenModel:(e,t)=>{e.openModel=t.payload},setCancelType:(e,t)=>{e.cancelOptions.cancelType=t.payload},setCancelAfter:(e,t)=>{e.cancelOptions.cancelAfter=t.payload}}}),{setShouldDisplayInProgressType:v4e,setIsProcessing:wa,addLogEntry:Pi,setShouldShowLogViewer:FC,setIsConnected:HR,setSocketId:RNe,setShouldConfirmOnDelete:DU,setOpenAccordions:y4e,setSystemStatus:b4e,setCurrentStatus:hh,setSystemConfig:x4e,setShouldDisplayGuides:S4e,processingCanceled:w4e,errorOccurred:WR,errorSeen:jU,setModelList:Ag,setIsCancelable:_d,modelChangeRequested:C4e,modelConvertRequested:_4e,modelMergingRequested:k4e,setSaveIntermediatesInterval:E4e,setEnableImageDebugging:P4e,generationRequested:T4e,addToast:$u,clearToastQueue:M4e,setProcessingIndeterminateTask:L4e,setSearchFolder:NU,setFoundModels:$U,setOpenModel:UR,setCancelType:VR,setCancelAfter:BC}=IU.actions,A4e=IU.reducer,xE=["txt2img","img2img","unifiedCanvas","nodes","postprocess","training"],O4e={activeTab:0,currentTheme:"dark",parametersPanelScrollPosition:0,shouldHoldParametersPanelOpen:!1,shouldPinParametersPanel:!0,shouldShowParametersPanel:!0,shouldShowDualDisplay:!0,shouldShowImageDetails:!1,shouldUseCanvasBetaLayout:!1,shouldShowExistingModelsInSearch:!1,shouldUseSliders:!1,addNewModelUIOption:null},R4e=O4e,FU=ap({name:"ui",initialState:R4e,reducers:{setActiveTab:(e,t)=>{typeof t.payload=="number"?e.activeTab=t.payload:e.activeTab=xE.indexOf(t.payload)},setCurrentTheme:(e,t)=>{e.currentTheme=t.payload},setParametersPanelScrollPosition:(e,t)=>{e.parametersPanelScrollPosition=t.payload},setShouldPinParametersPanel:(e,t)=>{e.shouldPinParametersPanel=t.payload},setShouldShowParametersPanel:(e,t)=>{e.shouldShowParametersPanel=t.payload},setShouldHoldParametersPanelOpen:(e,t)=>{e.shouldHoldParametersPanelOpen=t.payload},setShouldShowDualDisplay:(e,t)=>{e.shouldShowDualDisplay=t.payload},setShouldShowImageDetails:(e,t)=>{e.shouldShowImageDetails=t.payload},setShouldUseCanvasBetaLayout:(e,t)=>{e.shouldUseCanvasBetaLayout=t.payload},setShouldShowExistingModelsInSearch:(e,t)=>{e.shouldShowExistingModelsInSearch=t.payload},setShouldUseSliders:(e,t)=>{e.shouldUseSliders=t.payload},setAddNewModelUIOption:(e,t)=>{e.addNewModelUIOption=t.payload}}}),{setActiveTab:Wo,setCurrentTheme:I4e,setParametersPanelScrollPosition:D4e,setShouldHoldParametersPanelOpen:j4e,setShouldPinParametersPanel:N4e,setShouldShowParametersPanel:Fh,setShouldShowDualDisplay:$4e,setShouldShowImageDetails:BU,setShouldUseCanvasBetaLayout:F4e,setShouldShowExistingModelsInSearch:B4e,setShouldUseSliders:z4e,setAddNewModelUIOption:Bh}=FU.actions,H4e=FU.reducer,iu=Object.create(null);iu.open="0";iu.close="1";iu.ping="2";iu.pong="3";iu.message="4";iu.upgrade="5";iu.noop="6";const fS=Object.create(null);Object.keys(iu).forEach(e=>{fS[iu[e]]=e});const W4e={type:"error",data:"parser error"},U4e=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",V4e=typeof ArrayBuffer=="function",G4e=e=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e&&e.buffer instanceof ArrayBuffer,zU=({type:e,data:t},n,r)=>U4e&&t instanceof Blob?n?r(t):GR(t,r):V4e&&(t instanceof ArrayBuffer||G4e(t))?n?r(t):GR(new Blob([t]),r):r(iu[e]+(t||"")),GR=(e,t)=>{const n=new FileReader;return n.onload=function(){const r=n.result.split(",")[1];t("b"+(r||""))},n.readAsDataURL(e)},qR="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",m1=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let e=0;e{let t=e.length*.75,n=e.length,r,i=0,o,a,s,l;e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);const u=new ArrayBuffer(t),d=new Uint8Array(u);for(r=0;r>4,d[i++]=(a&15)<<4|s>>2,d[i++]=(s&3)<<6|l&63;return u},K4e=typeof ArrayBuffer=="function",HU=(e,t)=>{if(typeof e!="string")return{type:"message",data:WU(e,t)};const n=e.charAt(0);return n==="b"?{type:"message",data:Y4e(e.substring(1),t)}:fS[n]?e.length>1?{type:fS[n],data:e.substring(1)}:{type:fS[n]}:W4e},Y4e=(e,t)=>{if(K4e){const n=q4e(e);return WU(n,t)}else return{base64:!0,data:e}},WU=(e,t)=>{switch(t){case"blob":return e instanceof ArrayBuffer?new Blob([e]):e;case"arraybuffer":default:return e}},UU=String.fromCharCode(30),X4e=(e,t)=>{const n=e.length,r=new Array(n);let i=0;e.forEach((o,a)=>{zU(o,!1,s=>{r[a]=s,++i===n&&t(r.join(UU))})})},Z4e=(e,t)=>{const n=e.split(UU),r=[];for(let i=0;itypeof self<"u"?self:typeof window<"u"?window:Function("return this")())();function GU(e,...t){return t.reduce((n,r)=>(e.hasOwnProperty(r)&&(n[r]=e[r]),n),{})}const J4e=Za.setTimeout,e5e=Za.clearTimeout;function s4(e,t){t.useNativeTimers?(e.setTimeoutFn=J4e.bind(Za),e.clearTimeoutFn=e5e.bind(Za)):(e.setTimeoutFn=Za.setTimeout.bind(Za),e.clearTimeoutFn=Za.clearTimeout.bind(Za))}const t5e=1.33;function n5e(e){return typeof e=="string"?r5e(e):Math.ceil((e.byteLength||e.size)*t5e)}function r5e(e){let t=0,n=0;for(let r=0,i=e.length;r=57344?n+=3:(r++,n+=4);return n}class i5e extends Error{constructor(t,n,r){super(t),this.description=n,this.context=r,this.type="TransportError"}}class qU extends ai{constructor(t){super(),this.writable=!1,s4(this,t),this.opts=t,this.query=t.query,this.socket=t.socket}onError(t,n,r){return super.emitReserved("error",new i5e(t,n,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(t){this.readyState==="open"&&this.write(t)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(t){const n=HU(t,this.socket.binaryType);this.onPacket(n)}onPacket(t){super.emitReserved("packet",t)}onClose(t){this.readyState="closed",super.emitReserved("close",t)}pause(t){}}const KU="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),Tk=64,o5e={};let KR=0,rx=0,YR;function XR(e){let t="";do t=KU[e%Tk]+t,e=Math.floor(e/Tk);while(e>0);return t}function YU(){const e=XR(+new Date);return e!==YR?(KR=0,YR=e):e+"."+XR(KR++)}for(;rx{this.readyState="paused",t()};if(this.polling||!this.writable){let r=0;this.polling&&(r++,this.once("pollComplete",function(){--r||n()})),this.writable||(r++,this.once("drain",function(){--r||n()}))}else n()}poll(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}onData(t){const n=r=>{if(this.readyState==="opening"&&r.type==="open"&&this.onOpen(),r.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(r)};Z4e(t,this.socket.binaryType).forEach(n),this.readyState!=="closed"&&(this.polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this.poll())}doClose(){const t=()=>{this.write([{type:"close"}])};this.readyState==="open"?t():this.once("open",t)}write(t){this.writable=!1,X4e(t,n=>{this.doWrite(n,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){let t=this.query||{};const n=this.opts.secure?"https":"http";let r="";this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=YU()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.opts.port&&(n==="https"&&Number(this.opts.port)!==443||n==="http"&&Number(this.opts.port)!==80)&&(r=":"+this.opts.port);const i=XU(t),o=this.opts.hostname.indexOf(":")!==-1;return n+"://"+(o?"["+this.opts.hostname+"]":this.opts.hostname)+r+this.opts.path+(i.length?"?"+i:"")}request(t={}){return Object.assign(t,{xd:this.xd,xs:this.xs},this.opts),new eu(this.uri(),t)}doWrite(t,n){const r=this.request({method:"POST",data:t});r.on("success",n),r.on("error",(i,o)=>{this.onError("xhr post error",i,o)})}doPoll(){const t=this.request();t.on("data",this.onData.bind(this)),t.on("error",(n,r)=>{this.onError("xhr poll error",n,r)}),this.pollXhr=t}}class eu extends ai{constructor(t,n){super(),s4(this,n),this.opts=n,this.method=n.method||"GET",this.uri=t,this.async=n.async!==!1,this.data=n.data!==void 0?n.data:null,this.create()}create(){const t=GU(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this.opts.xd,t.xscheme=!!this.opts.xs;const n=this.xhr=new QU(t);try{n.open(this.method,this.uri,this.async);try{if(this.opts.extraHeaders){n.setDisableHeaderCheck&&n.setDisableHeaderCheck(!0);for(let r in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(r)&&n.setRequestHeader(r,this.opts.extraHeaders[r])}}catch{}if(this.method==="POST")try{n.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{n.setRequestHeader("Accept","*/*")}catch{}"withCredentials"in n&&(n.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(n.timeout=this.opts.requestTimeout),n.onreadystatechange=()=>{n.readyState===4&&(n.status===200||n.status===1223?this.onLoad():this.setTimeoutFn(()=>{this.onError(typeof n.status=="number"?n.status:0)},0))},n.send(this.data)}catch(r){this.setTimeoutFn(()=>{this.onError(r)},0);return}typeof document<"u"&&(this.index=eu.requestsCount++,eu.requests[this.index]=this)}onError(t){this.emitReserved("error",t,this.xhr),this.cleanup(!0)}cleanup(t){if(!(typeof this.xhr>"u"||this.xhr===null)){if(this.xhr.onreadystatechange=l5e,t)try{this.xhr.abort()}catch{}typeof document<"u"&&delete eu.requests[this.index],this.xhr=null}}onLoad(){const t=this.xhr.responseText;t!==null&&(this.emitReserved("data",t),this.emitReserved("success"),this.cleanup())}abort(){this.cleanup()}}eu.requestsCount=0;eu.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",ZR);else if(typeof addEventListener=="function"){const e="onpagehide"in Za?"pagehide":"unload";addEventListener(e,ZR,!1)}}function ZR(){for(let e in eu.requests)eu.requests.hasOwnProperty(e)&&eu.requests[e].abort()}const JU=(()=>typeof Promise=="function"&&typeof Promise.resolve=="function"?t=>Promise.resolve().then(t):(t,n)=>n(t,0))(),ix=Za.WebSocket||Za.MozWebSocket,QR=!0,d5e="arraybuffer",JR=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class f5e extends qU{constructor(t){super(t),this.supportsBinary=!t.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const t=this.uri(),n=this.opts.protocols,r=JR?{}:GU(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=QR&&!JR?n?new ix(t,n):new ix(t):new ix(t,n,r)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType||d5e,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=t=>this.onClose({description:"websocket connection closed",context:t}),this.ws.onmessage=t=>this.onData(t.data),this.ws.onerror=t=>this.onError("websocket error",t)}write(t){this.writable=!1;for(let n=0;n{const a={};try{QR&&this.ws.send(o)}catch{}i&&JU(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.close(),this.ws=null)}uri(){let t=this.query||{};const n=this.opts.secure?"wss":"ws";let r="";this.opts.port&&(n==="wss"&&Number(this.opts.port)!==443||n==="ws"&&Number(this.opts.port)!==80)&&(r=":"+this.opts.port),this.opts.timestampRequests&&(t[this.opts.timestampParam]=YU()),this.supportsBinary||(t.b64=1);const i=XU(t),o=this.opts.hostname.indexOf(":")!==-1;return n+"://"+(o?"["+this.opts.hostname+"]":this.opts.hostname)+r+this.opts.path+(i.length?"?"+i:"")}check(){return!!ix}}const h5e={websocket:f5e,polling:c5e},p5e=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,g5e=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function Mk(e){const t=e,n=e.indexOf("["),r=e.indexOf("]");n!=-1&&r!=-1&&(e=e.substring(0,n)+e.substring(n,r).replace(/:/g,";")+e.substring(r,e.length));let i=p5e.exec(e||""),o={},a=14;for(;a--;)o[g5e[a]]=i[a]||"";return n!=-1&&r!=-1&&(o.source=t,o.host=o.host.substring(1,o.host.length-1).replace(/;/g,":"),o.authority=o.authority.replace("[","").replace("]","").replace(/;/g,":"),o.ipv6uri=!0),o.pathNames=m5e(o,o.path),o.queryKey=v5e(o,o.query),o}function m5e(e,t){const n=/\/{2,9}/g,r=t.replace(n,"/").split("/");return(t.slice(0,1)=="/"||t.length===0)&&r.splice(0,1),t.slice(-1)=="/"&&r.splice(r.length-1,1),r}function v5e(e,t){const n={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(r,i,o){i&&(n[i]=o)}),n}let eV=class Ng extends ai{constructor(t,n={}){super(),this.writeBuffer=[],t&&typeof t=="object"&&(n=t,t=null),t?(t=Mk(t),n.hostname=t.host,n.secure=t.protocol==="https"||t.protocol==="wss",n.port=t.port,t.query&&(n.query=t.query)):n.host&&(n.hostname=Mk(n.host).host),s4(this,n),this.secure=n.secure!=null?n.secure:typeof location<"u"&&location.protocol==="https:",n.hostname&&!n.port&&(n.port=this.secure?"443":"80"),this.hostname=n.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=n.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=n.transports||["polling","websocket"],this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!0},n),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=a5e(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,typeof addEventListener=="function"&&(this.opts.closeOnBeforeunload&&(this.beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this.beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this.offlineEventListener=()=>{this.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(t){const n=Object.assign({},this.opts.query);n.EIO=VU,n.transport=t,this.id&&(n.sid=this.id);const r=Object.assign({},this.opts.transportOptions[t],this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port});return new h5e[t](r)}open(){let t;if(this.opts.rememberUpgrade&&Ng.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1)t="websocket";else if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}else t=this.transports[0];this.readyState="opening";try{t=this.createTransport(t)}catch{this.transports.shift(),this.open();return}t.open(),this.setTransport(t)}setTransport(t){this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",n=>this.onClose("transport close",n))}probe(t){let n=this.createTransport(t),r=!1;Ng.priorWebsocketSuccess=!1;const i=()=>{r||(n.send([{type:"ping",data:"probe"}]),n.once("packet",p=>{if(!r)if(p.type==="pong"&&p.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",n),!n)return;Ng.priorWebsocketSuccess=n.name==="websocket",this.transport.pause(()=>{r||this.readyState!=="closed"&&(d(),this.setTransport(n),n.send([{type:"upgrade"}]),this.emitReserved("upgrade",n),n=null,this.upgrading=!1,this.flush())})}else{const m=new Error("probe error");m.transport=n.name,this.emitReserved("upgradeError",m)}}))};function o(){r||(r=!0,d(),n.close(),n=null)}const a=p=>{const m=new Error("probe error: "+p);m.transport=n.name,o(),this.emitReserved("upgradeError",m)};function s(){a("transport closed")}function l(){a("socket closed")}function u(p){n&&p.name!==n.name&&o()}const d=()=>{n.removeListener("open",i),n.removeListener("error",a),n.removeListener("close",s),this.off("close",l),this.off("upgrading",u)};n.once("open",i),n.once("error",a),n.once("close",s),this.once("close",l),this.once("upgrading",u),n.open()}onOpen(){if(this.readyState="open",Ng.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush(),this.readyState==="open"&&this.opts.upgrade){let t=0;const n=this.upgrades.length;for(;t{this.onClose("ping timeout")},this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const t=this.getWritablePackets();this.transport.send(t),this.prevBufferLen=t.length,this.emitReserved("flush")}}getWritablePackets(){if(!(this.maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let n=1;for(let r=0;r0&&n>this.maxPayload)return this.writeBuffer.slice(0,r);n+=2}return this.writeBuffer}write(t,n,r){return this.sendPacket("message",t,n,r),this}send(t,n,r){return this.sendPacket("message",t,n,r),this}sendPacket(t,n,r,i){if(typeof n=="function"&&(i=n,n=void 0),typeof r=="function"&&(i=r,r=null),this.readyState==="closing"||this.readyState==="closed")return;r=r||{},r.compress=r.compress!==!1;const o={type:t,data:n,options:r};this.emitReserved("packetCreate",o),this.writeBuffer.push(o),i&&this.once("flush",i),this.flush()}close(){const t=()=>{this.onClose("forced close"),this.transport.close()},n=()=>{this.off("upgrade",n),this.off("upgradeError",n),t()},r=()=>{this.once("upgrade",n),this.once("upgradeError",n)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?r():t()}):this.upgrading?r():t()),this}onError(t){Ng.priorWebsocketSuccess=!1,this.emitReserved("error",t),this.onClose("transport error",t)}onClose(t,n){(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")&&(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),typeof removeEventListener=="function"&&(removeEventListener("beforeunload",this.beforeunloadEventListener,!1),removeEventListener("offline",this.offlineEventListener,!1)),this.readyState="closed",this.id=null,this.emitReserved("close",t,n),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(t){const n=[];let r=0;const i=t.length;for(;rtypeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(e):e.buffer instanceof ArrayBuffer,tV=Object.prototype.toString,S5e=typeof Blob=="function"||typeof Blob<"u"&&tV.call(Blob)==="[object BlobConstructor]",w5e=typeof File=="function"||typeof File<"u"&&tV.call(File)==="[object FileConstructor]";function SE(e){return b5e&&(e instanceof ArrayBuffer||x5e(e))||S5e&&e instanceof Blob||w5e&&e instanceof File}function hS(e,t){if(!e||typeof e!="object")return!1;if(Array.isArray(e)){for(let n=0,r=e.length;n=0&&e.num0;case nn.ACK:case nn.BINARY_ACK:return Array.isArray(n)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class P5e{constructor(t){this.packet=t,this.buffers=[],this.reconPack=t}takeBinaryData(t){if(this.buffers.push(t),this.buffers.length===this.reconPack.attachments){const n=_5e(this.reconPack,this.buffers);return this.finishedReconstruction(),n}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const T5e=Object.freeze(Object.defineProperty({__proto__:null,Decoder:wE,Encoder:E5e,get PacketType(){return nn},protocol:k5e},Symbol.toStringTag,{value:"Module"}));function Hs(e,t,n){return e.on(t,n),function(){e.off(t,n)}}const M5e=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class nV extends ai{constructor(t,n,r){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this.ids=0,this.acks={},this.flags={},this.io=t,this.nsp=n,r&&r.auth&&(this.auth=r.auth),this._opts=Object.assign({},r),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const t=this.io;this.subs=[Hs(t,"open",this.onopen.bind(this)),Hs(t,"packet",this.onpacket.bind(this)),Hs(t,"error",this.onerror.bind(this)),Hs(t,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...t){return t.unshift("message"),this.emit.apply(this,t),this}emit(t,...n){if(M5e.hasOwnProperty(t))throw new Error('"'+t.toString()+'" is a reserved event name');if(n.unshift(t),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(n),this;const r={type:nn.EVENT,data:n};if(r.options={},r.options.compress=this.flags.compress!==!1,typeof n[n.length-1]=="function"){const a=this.ids++,s=n.pop();this._registerAckCallback(a,s),r.id=a}const i=this.io.engine&&this.io.engine.transport&&this.io.engine.transport.writable;return this.flags.volatile&&(!i||!this.connected)||(this.connected?(this.notifyOutgoingListeners(r),this.packet(r)):this.sendBuffer.push(r)),this.flags={},this}_registerAckCallback(t,n){var r;const i=(r=this.flags.timeout)!==null&&r!==void 0?r:this._opts.ackTimeout;if(i===void 0){this.acks[t]=n;return}const o=this.io.setTimeoutFn(()=>{delete this.acks[t];for(let a=0;a{this.io.clearTimeoutFn(o),n.apply(this,[null,...a])}}emitWithAck(t,...n){const r=this.flags.timeout!==void 0||this._opts.ackTimeout!==void 0;return new Promise((i,o)=>{n.push((a,s)=>r?a?o(a):i(s):i(a)),this.emit(t,...n)})}_addToQueue(t){let n;typeof t[t.length-1]=="function"&&(n=t.pop());const r={id:this.ids++,tryCount:0,pending:!1,args:t,flags:Object.assign({fromQueue:!0},this.flags)};t.push((i,...o)=>r!==this._queue[0]?void 0:(i!==null?r.tryCount>this._opts.retries&&(this._queue.shift(),n&&n(i)):(this._queue.shift(),n&&n(null,...o)),r.pending=!1,this._drainQueue())),this._queue.push(r),this._drainQueue()}_drainQueue(){if(this._queue.length===0)return;const t=this._queue[0];if(t.pending)return;t.pending=!0,t.tryCount++;const n=this.ids;this.ids=t.id,this.flags=t.flags,this.emit.apply(this,t.args),this.ids=n}packet(t){t.nsp=this.nsp,this.io._packet(t)}onopen(){typeof this.auth=="function"?this.auth(t=>{this._sendConnectPacket(t)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(t){this.packet({type:nn.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},t):t})}onerror(t){this.connected||this.emitReserved("connect_error",t)}onclose(t,n){this.connected=!1,delete this.id,this.emitReserved("disconnect",t,n)}onpacket(t){if(t.nsp===this.nsp)switch(t.type){case nn.CONNECT:t.data&&t.data.sid?this.onconnect(t.data.sid,t.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case nn.EVENT:case nn.BINARY_EVENT:this.onevent(t);break;case nn.ACK:case nn.BINARY_ACK:this.onack(t);break;case nn.DISCONNECT:this.ondisconnect();break;case nn.CONNECT_ERROR:this.destroy();const r=new Error(t.data.message);r.data=t.data.data,this.emitReserved("connect_error",r);break}}onevent(t){const n=t.data||[];t.id!=null&&n.push(this.ack(t.id)),this.connected?this.emitEvent(n):this.receiveBuffer.push(Object.freeze(n))}emitEvent(t){if(this._anyListeners&&this._anyListeners.length){const n=this._anyListeners.slice();for(const r of n)r.apply(this,t)}super.emit.apply(this,t),this._pid&&t.length&&typeof t[t.length-1]=="string"&&(this._lastOffset=t[t.length-1])}ack(t){const n=this;let r=!1;return function(...i){r||(r=!0,n.packet({type:nn.ACK,id:t,data:i}))}}onack(t){const n=this.acks[t.id];typeof n=="function"&&(n.apply(this,t.data),delete this.acks[t.id])}onconnect(t,n){this.id=t,this.recovered=n&&this._pid===n,this._pid=n,this.connected=!0,this.emitBuffered(),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(t=>this.emitEvent(t)),this.receiveBuffer=[],this.sendBuffer.forEach(t=>{this.notifyOutgoingListeners(t),this.packet(t)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(t=>t()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:nn.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(t){return this.flags.compress=t,this}get volatile(){return this.flags.volatile=!0,this}timeout(t){return this.flags.timeout=t,this}onAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(t),this}prependAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(t),this}offAny(t){if(!this._anyListeners)return this;if(t){const n=this._anyListeners;for(let r=0;r0&&e.jitter<=1?e.jitter:0,this.attempts=0}b0.prototype.duration=function(){var e=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),n=Math.floor(t*this.jitter*e);e=Math.floor(t*10)&1?e+n:e-n}return Math.min(e,this.max)|0};b0.prototype.reset=function(){this.attempts=0};b0.prototype.setMin=function(e){this.ms=e};b0.prototype.setMax=function(e){this.max=e};b0.prototype.setJitter=function(e){this.jitter=e};class Ok extends ai{constructor(t,n){var r;super(),this.nsps={},this.subs=[],t&&typeof t=="object"&&(n=t,t=void 0),n=n||{},n.path=n.path||"/socket.io",this.opts=n,s4(this,n),this.reconnection(n.reconnection!==!1),this.reconnectionAttempts(n.reconnectionAttempts||1/0),this.reconnectionDelay(n.reconnectionDelay||1e3),this.reconnectionDelayMax(n.reconnectionDelayMax||5e3),this.randomizationFactor((r=n.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new b0({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(n.timeout==null?2e4:n.timeout),this._readyState="closed",this.uri=t;const i=n.parser||T5e;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=n.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(t){return arguments.length?(this._reconnection=!!t,this):this._reconnection}reconnectionAttempts(t){return t===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=t,this)}reconnectionDelay(t){var n;return t===void 0?this._reconnectionDelay:(this._reconnectionDelay=t,(n=this.backoff)===null||n===void 0||n.setMin(t),this)}randomizationFactor(t){var n;return t===void 0?this._randomizationFactor:(this._randomizationFactor=t,(n=this.backoff)===null||n===void 0||n.setJitter(t),this)}reconnectionDelayMax(t){var n;return t===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=t,(n=this.backoff)===null||n===void 0||n.setMax(t),this)}timeout(t){return arguments.length?(this._timeout=t,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(t){if(~this._readyState.indexOf("open"))return this;this.engine=new eV(this.uri,this.opts);const n=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;const i=Hs(n,"open",function(){r.onopen(),t&&t()}),o=Hs(n,"error",a=>{r.cleanup(),r._readyState="closed",this.emitReserved("error",a),t?t(a):r.maybeReconnectOnOpen()});if(this._timeout!==!1){const a=this._timeout;a===0&&i();const s=this.setTimeoutFn(()=>{i(),n.close(),n.emit("error",new Error("timeout"))},a);this.opts.autoUnref&&s.unref(),this.subs.push(function(){clearTimeout(s)})}return this.subs.push(i),this.subs.push(o),this}connect(t){return this.open(t)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const t=this.engine;this.subs.push(Hs(t,"ping",this.onping.bind(this)),Hs(t,"data",this.ondata.bind(this)),Hs(t,"error",this.onerror.bind(this)),Hs(t,"close",this.onclose.bind(this)),Hs(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(t){try{this.decoder.add(t)}catch(n){this.onclose("parse error",n)}}ondecoded(t){JU(()=>{this.emitReserved("packet",t)},this.setTimeoutFn)}onerror(t){this.emitReserved("error",t)}socket(t,n){let r=this.nsps[t];return r||(r=new nV(this,t,n),this.nsps[t]=r),this._autoConnect&&r.connect(),r}_destroy(t){const n=Object.keys(this.nsps);for(const r of n)if(this.nsps[r].active)return;this._close()}_packet(t){const n=this.encoder.encode(t);for(let r=0;rt()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(t,n){this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",t,n),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const t=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const n=this.backoff.duration();this._reconnecting=!0;const r=this.setTimeoutFn(()=>{t.skipReconnect||(this.emitReserved("reconnect_attempt",t.backoff.attempts),!t.skipReconnect&&t.open(i=>{i?(t._reconnecting=!1,t.reconnect(),this.emitReserved("reconnect_error",i)):t.onreconnect()}))},n);this.opts.autoUnref&&r.unref(),this.subs.push(function(){clearTimeout(r)})}}onreconnect(){const t=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",t)}}const Xv={};function pS(e,t){typeof e=="object"&&(t=e,e=void 0),t=t||{};const n=y5e(e,t.path||"/socket.io"),r=n.source,i=n.id,o=n.path,a=Xv[i]&&o in Xv[i].nsps,s=t.forceNew||t["force new connection"]||t.multiplex===!1||a;let l;return s?l=new Ok(r,t):(Xv[i]||(Xv[i]=new Ok(r,t)),l=Xv[i]),n.query&&!t.query&&(t.query=n.queryKey),l.socket(n.path,t)}Object.assign(pS,{Manager:Ok,Socket:nV,io:pS,connect:pS});const L5e=["ddim","plms","k_lms","k_dpm_2","k_dpm_2_a","k_dpmpp_2","k_dpmpp_2_a","k_euler","k_euler_a","k_heun"],A5e=["ddim","plms","k_lms","dpmpp_2","k_dpm_2","k_dpm_2_a","k_dpmpp_2","k_euler","k_euler_a","k_heun"],O5e=[64,128,192,256,320,384,448,512,576,640,704,768,832,896,960,1024,1088,1152,1216,1280,1344,1408,1472,1536,1600,1664,1728,1792,1856,1920,1984,2048],R5e=[64,128,192,256,320,384,448,512,576,640,704,768,832,896,960,1024,1088,1152,1216,1280,1344,1408,1472,1536,1600,1664,1728,1792,1856,1920,1984,2048],I5e=[{key:"2x",value:2},{key:"4x",value:4}],CE=0,_E=4294967295,D5e=["gfpgan","codeformer"],j5e=[{key:"None",value:"none"},{key:"Fast",value:"latents"},{key:"Accurate",value:"full-res"}];var N5e=Math.PI/180;function $5e(){return typeof window<"u"&&({}.toString.call(window)==="[object Window]"||{}.toString.call(window)==="[object global]")}const Im=typeof global<"u"?global:typeof window<"u"?window:typeof WorkerGlobalScope<"u"?self:{},ft={_global:Im,version:"8.4.2",isBrowser:$5e(),isUnminified:/param/.test(function(e){}.toString()),dblClickWindow:400,getAngle(e){return ft.angleDeg?e*N5e:e},enableTrace:!1,pointerEventsEnabled:!0,autoDrawEnabled:!0,hitOnDragEnabled:!1,capturePointerEventsEnabled:!1,_mouseListenClick:!1,_touchListenClick:!1,_pointerListenClick:!1,_mouseInDblClickWindow:!1,_touchInDblClickWindow:!1,_pointerInDblClickWindow:!1,_mouseDblClickPointerId:null,_touchDblClickPointerId:null,_pointerDblClickPointerId:null,pixelRatio:typeof window<"u"&&window.devicePixelRatio||1,dragDistance:3,angleDeg:!0,showWarnings:!0,dragButtons:[0,1],isDragging(){return ft.DD.isDragging},isDragReady(){return!!ft.DD.node},releaseCanvasOnDestroy:!0,document:Im.document,_injectGlobal(e){Im.Konva=e}},Mr=e=>{ft[e.prototype.getClassName()]=e};ft._injectGlobal(ft);class Ca{constructor(t=[1,0,0,1,0,0]){this.dirty=!1,this.m=t&&t.slice()||[1,0,0,1,0,0]}reset(){this.m[0]=1,this.m[1]=0,this.m[2]=0,this.m[3]=1,this.m[4]=0,this.m[5]=0}copy(){return new Ca(this.m)}copyInto(t){t.m[0]=this.m[0],t.m[1]=this.m[1],t.m[2]=this.m[2],t.m[3]=this.m[3],t.m[4]=this.m[4],t.m[5]=this.m[5]}point(t){var n=this.m;return{x:n[0]*t.x+n[2]*t.y+n[4],y:n[1]*t.x+n[3]*t.y+n[5]}}translate(t,n){return this.m[4]+=this.m[0]*t+this.m[2]*n,this.m[5]+=this.m[1]*t+this.m[3]*n,this}scale(t,n){return this.m[0]*=t,this.m[1]*=t,this.m[2]*=n,this.m[3]*=n,this}rotate(t){var n=Math.cos(t),r=Math.sin(t),i=this.m[0]*n+this.m[2]*r,o=this.m[1]*n+this.m[3]*r,a=this.m[0]*-r+this.m[2]*n,s=this.m[1]*-r+this.m[3]*n;return this.m[0]=i,this.m[1]=o,this.m[2]=a,this.m[3]=s,this}getTranslation(){return{x:this.m[4],y:this.m[5]}}skew(t,n){var r=this.m[0]+this.m[2]*n,i=this.m[1]+this.m[3]*n,o=this.m[2]+this.m[0]*t,a=this.m[3]+this.m[1]*t;return this.m[0]=r,this.m[1]=i,this.m[2]=o,this.m[3]=a,this}multiply(t){var n=this.m[0]*t.m[0]+this.m[2]*t.m[1],r=this.m[1]*t.m[0]+this.m[3]*t.m[1],i=this.m[0]*t.m[2]+this.m[2]*t.m[3],o=this.m[1]*t.m[2]+this.m[3]*t.m[3],a=this.m[0]*t.m[4]+this.m[2]*t.m[5]+this.m[4],s=this.m[1]*t.m[4]+this.m[3]*t.m[5]+this.m[5];return this.m[0]=n,this.m[1]=r,this.m[2]=i,this.m[3]=o,this.m[4]=a,this.m[5]=s,this}invert(){var t=1/(this.m[0]*this.m[3]-this.m[1]*this.m[2]),n=this.m[3]*t,r=-this.m[1]*t,i=-this.m[2]*t,o=this.m[0]*t,a=t*(this.m[2]*this.m[5]-this.m[3]*this.m[4]),s=t*(this.m[1]*this.m[4]-this.m[0]*this.m[5]);return this.m[0]=n,this.m[1]=r,this.m[2]=i,this.m[3]=o,this.m[4]=a,this.m[5]=s,this}getMatrix(){return this.m}decompose(){var t=this.m[0],n=this.m[1],r=this.m[2],i=this.m[3],o=this.m[4],a=this.m[5],s=t*i-n*r;let l={x:o,y:a,rotation:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(t!=0||n!=0){var u=Math.sqrt(t*t+n*n);l.rotation=n>0?Math.acos(t/u):-Math.acos(t/u),l.scaleX=u,l.scaleY=s/u,l.skewX=(t*r+n*i)/s,l.skewY=0}else if(r!=0||i!=0){var d=Math.sqrt(r*r+i*i);l.rotation=Math.PI/2-(i>0?Math.acos(-r/d):-Math.acos(r/d)),l.scaleX=s/d,l.scaleY=d,l.skewX=0,l.skewY=(t*r+n*i)/s}return l.rotation=de._getRotation(l.rotation),l}}var F5e="[object Array]",B5e="[object Number]",z5e="[object String]",H5e="[object Boolean]",W5e=Math.PI/180,U5e=180/Math.PI,zC="#",V5e="",G5e="0",q5e="Konva warning: ",eI="Konva error: ",K5e="rgb(",HC={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,132,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,255,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[119,128,144],slategrey:[119,128,144],snow:[255,255,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,5]},Y5e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/,ox=[];const X5e=typeof requestAnimationFrame<"u"&&requestAnimationFrame||function(e){setTimeout(e,60)},de={_isElement(e){return!!(e&&e.nodeType==1)},_isFunction(e){return!!(e&&e.constructor&&e.call&&e.apply)},_isPlainObject(e){return!!e&&e.constructor===Object},_isArray(e){return Object.prototype.toString.call(e)===F5e},_isNumber(e){return Object.prototype.toString.call(e)===B5e&&!isNaN(e)&&isFinite(e)},_isString(e){return Object.prototype.toString.call(e)===z5e},_isBoolean(e){return Object.prototype.toString.call(e)===H5e},isObject(e){return e instanceof Object},isValidSelector(e){if(typeof e!="string")return!1;var t=e[0];return t==="#"||t==="."||t===t.toUpperCase()},_sign(e){return e===0||e>0?1:-1},requestAnimFrame(e){ox.push(e),ox.length===1&&X5e(function(){const t=ox;ox=[],t.forEach(function(n){n()})})},createCanvasElement(){var e=document.createElement("canvas");try{e.style=e.style||{}}catch{}return e},createImageElement(){return document.createElement("img")},_isInDocument(e){for(;e=e.parentNode;)if(e==document)return!0;return!1},_urlToImage(e,t){var n=de.createImageElement();n.onload=function(){t(n)},n.src=e},_rgbToHex(e,t,n){return((1<<24)+(e<<16)+(t<<8)+n).toString(16).slice(1)},_hexToRgb(e){e=e.replace(zC,V5e);var t=parseInt(e,16);return{r:t>>16&255,g:t>>8&255,b:t&255}},getRandomColor(){for(var e=(Math.random()*16777215<<0).toString(16);e.length<6;)e=G5e+e;return zC+e},getRGB(e){var t;return e in HC?(t=HC[e],{r:t[0],g:t[1],b:t[2]}):e[0]===zC?this._hexToRgb(e.substring(1)):e.substr(0,4)===K5e?(t=Y5e.exec(e.replace(/ /g,"")),{r:parseInt(t[1],10),g:parseInt(t[2],10),b:parseInt(t[3],10)}):{r:0,g:0,b:0}},colorToRGBA(e){return e=e||"black",de._namedColorToRBA(e)||de._hex3ColorToRGBA(e)||de._hex4ColorToRGBA(e)||de._hex6ColorToRGBA(e)||de._hex8ColorToRGBA(e)||de._rgbColorToRGBA(e)||de._rgbaColorToRGBA(e)||de._hslColorToRGBA(e)},_namedColorToRBA(e){var t=HC[e.toLowerCase()];return t?{r:t[0],g:t[1],b:t[2],a:1}:null},_rgbColorToRGBA(e){if(e.indexOf("rgb(")===0){e=e.match(/rgb\(([^)]+)\)/)[1];var t=e.split(/ *, */).map(Number);return{r:t[0],g:t[1],b:t[2],a:1}}},_rgbaColorToRGBA(e){if(e.indexOf("rgba(")===0){e=e.match(/rgba\(([^)]+)\)/)[1];var t=e.split(/ *, */).map((n,r)=>n.slice(-1)==="%"?r===3?parseInt(n)/100:parseInt(n)/100*255:Number(n));return{r:t[0],g:t[1],b:t[2],a:t[3]}}},_hex8ColorToRGBA(e){if(e[0]==="#"&&e.length===9)return{r:parseInt(e.slice(1,3),16),g:parseInt(e.slice(3,5),16),b:parseInt(e.slice(5,7),16),a:parseInt(e.slice(7,9),16)/255}},_hex6ColorToRGBA(e){if(e[0]==="#"&&e.length===7)return{r:parseInt(e.slice(1,3),16),g:parseInt(e.slice(3,5),16),b:parseInt(e.slice(5,7),16),a:1}},_hex4ColorToRGBA(e){if(e[0]==="#"&&e.length===5)return{r:parseInt(e[1]+e[1],16),g:parseInt(e[2]+e[2],16),b:parseInt(e[3]+e[3],16),a:parseInt(e[4]+e[4],16)/255}},_hex3ColorToRGBA(e){if(e[0]==="#"&&e.length===4)return{r:parseInt(e[1]+e[1],16),g:parseInt(e[2]+e[2],16),b:parseInt(e[3]+e[3],16),a:1}},_hslColorToRGBA(e){if(/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.test(e)){const[t,...n]=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(e),r=Number(n[0])/360,i=Number(n[1])/100,o=Number(n[2])/100;let a,s,l;if(i===0)return l=o*255,{r:Math.round(l),g:Math.round(l),b:Math.round(l),a:1};o<.5?a=o*(1+i):a=o+i-o*i;const u=2*o-a,d=[0,0,0];for(let p=0;p<3;p++)s=r+1/3*-(p-1),s<0&&s++,s>1&&s--,6*s<1?l=u+(a-u)*6*s:2*s<1?l=a:3*s<2?l=u+(a-u)*(2/3-s)*6:l=u,d[p]=l*255;return{r:Math.round(d[0]),g:Math.round(d[1]),b:Math.round(d[2]),a:1}}},haveIntersection(e,t){return!(t.x>e.x+e.width||t.x+t.widthe.y+e.height||t.y+t.height1?(a=n,s=r,l=(n-i)*(n-i)+(r-o)*(r-o)):(a=e+d*(n-e),s=t+d*(r-t),l=(a-i)*(a-i)+(s-o)*(s-o))}return[a,s,l]},_getProjectionToLine(e,t,n){var r=de.cloneObject(e),i=Number.MAX_VALUE;return t.forEach(function(o,a){if(!(!n&&a===t.length-1)){var s=t[(a+1)%t.length],l=de._getProjectionToSegment(o.x,o.y,s.x,s.y,e.x,e.y),u=l[0],d=l[1],p=l[2];pt.length){var a=t;t=e,e=a}for(r=0;r{t.width=0,t.height=0})},drawRoundedRectPath(e,t,n,r){let i=0,o=0,a=0,s=0;typeof r=="number"?i=o=a=s=Math.min(r,t/2,n/2):(i=Math.min(r[0]||0,t/2,n/2),o=Math.min(r[1]||0,t/2,n/2),s=Math.min(r[2]||0,t/2,n/2),a=Math.min(r[3]||0,t/2,n/2)),e.moveTo(i,0),e.lineTo(t-o,0),e.arc(t-o,o,o,Math.PI*3/2,0,!1),e.lineTo(t,n-s),e.arc(t-s,n-s,s,0,Math.PI/2,!1),e.lineTo(a,n),e.arc(a,n-a,a,Math.PI/2,Math.PI,!1),e.lineTo(0,i),e.arc(i,i,i,Math.PI,Math.PI*3/2,!1)}};function uf(e){return de._isString(e)?'"'+e+'"':Object.prototype.toString.call(e)==="[object Number]"||de._isBoolean(e)?e:Object.prototype.toString.call(e)}function rV(e){return e>255?255:e<0?0:Math.round(e)}function Ve(){if(ft.isUnminified)return function(e,t){return de._isNumber(e)||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a number.'),e}}function kE(e){if(ft.isUnminified)return function(t,n){let r=de._isNumber(t),i=de._isArray(t)&&t.length==e;return!r&&!i&&de.warn(uf(t)+' is a not valid value for "'+n+'" attribute. The value should be a number or Array('+e+")"),t}}function EE(){if(ft.isUnminified)return function(e,t){var n=de._isNumber(e),r=e==="auto";return n||r||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a number or "auto".'),e}}function x0(){if(ft.isUnminified)return function(e,t){return de._isString(e)||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a string.'),e}}function iV(){if(ft.isUnminified)return function(e,t){const n=de._isString(e),r=Object.prototype.toString.call(e)==="[object CanvasGradient]"||e&&e.addColorStop;return n||r||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a string or a native gradient.'),e}}function Z5e(){if(ft.isUnminified)return function(e,t){const n=Int8Array?Object.getPrototypeOf(Int8Array):null;return n&&e instanceof n||(de._isArray(e)?e.forEach(function(r){de._isNumber(r)||de.warn('"'+t+'" attribute has non numeric element '+r+". Make sure that all elements are numbers.")}):de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a array of numbers.')),e}}function el(){if(ft.isUnminified)return function(e,t){var n=e===!0||e===!1;return n||de.warn(uf(e)+' is a not valid value for "'+t+'" attribute. The value should be a boolean.'),e}}function Q5e(e){if(ft.isUnminified)return function(t,n){return t==null||de.isObject(t)||de.warn(uf(t)+' is a not valid value for "'+n+'" attribute. The value should be an object with properties '+e),t}}var Zv="get",Qv="set";const J={addGetterSetter(e,t,n,r,i){J.addGetter(e,t,n),J.addSetter(e,t,r,i),J.addOverloadedGetterSetter(e,t)},addGetter(e,t,n){var r=Zv+de._capitalize(t);e.prototype[r]=e.prototype[r]||function(){var i=this.attrs[t];return i===void 0?n:i}},addSetter(e,t,n,r){var i=Qv+de._capitalize(t);e.prototype[i]||J.overWriteSetter(e,t,n,r)},overWriteSetter(e,t,n,r){var i=Qv+de._capitalize(t);e.prototype[i]=function(o){return n&&o!==void 0&&o!==null&&(o=n.call(this,o,t)),this._setAttr(t,o),r&&r.call(this),this}},addComponentsGetterSetter(e,t,n,r,i){var o=n.length,a=de._capitalize,s=Zv+a(t),l=Qv+a(t),u,d;e.prototype[s]=function(){var m={};for(u=0;u{this._setAttr(t+a(w),void 0)}),this._fireChangeEvent(t,y,m),i&&i.call(this),this},J.addOverloadedGetterSetter(e,t)},addOverloadedGetterSetter(e,t){var n=de._capitalize(t),r=Qv+n,i=Zv+n;e.prototype[t]=function(){return arguments.length?(this[r](arguments[0]),this):this[i]()}},addDeprecatedGetterSetter(e,t,n,r){de.error("Adding deprecated "+t);var i=Zv+de._capitalize(t),o=t+" property is deprecated and will be removed soon. Look at Konva change log for more information.";e.prototype[i]=function(){de.error(o);var a=this.attrs[t];return a===void 0?n:a},J.addSetter(e,t,r,function(){de.error(o)}),J.addOverloadedGetterSetter(e,t)},backCompat(e,t){de.each(t,function(n,r){var i=e.prototype[r],o=Zv+de._capitalize(n),a=Qv+de._capitalize(n);function s(){i.apply(this,arguments),de.error('"'+n+'" method is deprecated and will be removed soon. Use ""'+r+'" instead.')}e.prototype[n]=s,e.prototype[o]=s,e.prototype[a]=s})},afterSetFilter(){this._filterUpToDate=!1}};function J5e(e){var t=[],n=e.length,r=de,i,o;for(i=0;itypeof d=="number"?Math.floor(d):d)),o+=eCe+u.join(tI)+tCe)):(o+=s.property,t||(o+=aCe+s.val)),o+=iCe;return o}clearTrace(){this.traceArr=[]}_trace(t){var n=this.traceArr,r;n.push(t),r=n.length,r>=lCe&&n.shift()}reset(){var t=this.getCanvas().getPixelRatio();this.setTransform(1*t,0,0,1*t,0,0)}getCanvas(){return this.canvas}clear(t){var n=this.getCanvas();t?this.clearRect(t.x||0,t.y||0,t.width||0,t.height||0):this.clearRect(0,0,n.getWidth()/n.pixelRatio,n.getHeight()/n.pixelRatio)}_applyLineCap(t){var n=t.getLineCap();n&&this.setAttr("lineCap",n)}_applyOpacity(t){var n=t.getAbsoluteOpacity();n!==1&&this.setAttr("globalAlpha",n)}_applyLineJoin(t){var n=t.attrs.lineJoin;n&&this.setAttr("lineJoin",n)}setAttr(t,n){this._context[t]=n}arc(t,n,r,i,o,a){this._context.arc(t,n,r,i,o,a)}arcTo(t,n,r,i,o){this._context.arcTo(t,n,r,i,o)}beginPath(){this._context.beginPath()}bezierCurveTo(t,n,r,i,o,a){this._context.bezierCurveTo(t,n,r,i,o,a)}clearRect(t,n,r,i){this._context.clearRect(t,n,r,i)}clip(){this._context.clip()}closePath(){this._context.closePath()}createImageData(t,n){var r=arguments;if(r.length===2)return this._context.createImageData(t,n);if(r.length===1)return this._context.createImageData(t)}createLinearGradient(t,n,r,i){return this._context.createLinearGradient(t,n,r,i)}createPattern(t,n){return this._context.createPattern(t,n)}createRadialGradient(t,n,r,i,o,a){return this._context.createRadialGradient(t,n,r,i,o,a)}drawImage(t,n,r,i,o,a,s,l,u){var d=arguments,p=this._context;d.length===3?p.drawImage(t,n,r):d.length===5?p.drawImage(t,n,r,i,o):d.length===9&&p.drawImage(t,n,r,i,o,a,s,l,u)}ellipse(t,n,r,i,o,a,s,l){this._context.ellipse(t,n,r,i,o,a,s,l)}isPointInPath(t,n,r,i){return r?this._context.isPointInPath(r,t,n,i):this._context.isPointInPath(t,n,i)}fill(t){t?this._context.fill(t):this._context.fill()}fillRect(t,n,r,i){this._context.fillRect(t,n,r,i)}strokeRect(t,n,r,i){this._context.strokeRect(t,n,r,i)}fillText(t,n,r,i){i?this._context.fillText(t,n,r,i):this._context.fillText(t,n,r)}measureText(t){return this._context.measureText(t)}getImageData(t,n,r,i){return this._context.getImageData(t,n,r,i)}lineTo(t,n){this._context.lineTo(t,n)}moveTo(t,n){this._context.moveTo(t,n)}rect(t,n,r,i){this._context.rect(t,n,r,i)}putImageData(t,n,r){this._context.putImageData(t,n,r)}quadraticCurveTo(t,n,r,i){this._context.quadraticCurveTo(t,n,r,i)}restore(){this._context.restore()}rotate(t){this._context.rotate(t)}save(){this._context.save()}scale(t,n){this._context.scale(t,n)}setLineDash(t){this._context.setLineDash?this._context.setLineDash(t):"mozDash"in this._context?this._context.mozDash=t:"webkitLineDash"in this._context&&(this._context.webkitLineDash=t)}getLineDash(){return this._context.getLineDash()}setTransform(t,n,r,i,o,a){this._context.setTransform(t,n,r,i,o,a)}stroke(t){t?this._context.stroke(t):this._context.stroke()}strokeText(t,n,r,i){this._context.strokeText(t,n,r,i)}transform(t,n,r,i,o,a){this._context.transform(t,n,r,i,o,a)}translate(t,n){this._context.translate(t,n)}_enableTrace(){var t=this,n=nI.length,r=this.setAttr,i,o,a=function(s){var l=t[s],u;t[s]=function(){return o=J5e(Array.prototype.slice.call(arguments,0)),u=l.apply(t,arguments),t._trace({method:s,args:o}),u}};for(i=0;i{t.dragStatus==="dragging"&&(e=!0)}),e},justDragged:!1,get node(){var e;return fn._dragElements.forEach(t=>{e=t.node}),e},_dragElements:new Map,_drag(e){const t=[];fn._dragElements.forEach((n,r)=>{const{node:i}=n,o=i.getStage();o.setPointersPositions(e),n.pointerId===void 0&&(n.pointerId=de._getFirstPointerId(e));const a=o._changedPointerPositions.find(u=>u.id===n.pointerId);if(a){if(n.dragStatus!=="dragging"){var s=i.dragDistance(),l=Math.max(Math.abs(a.x-n.startPointerPos.x),Math.abs(a.y-n.startPointerPos.y));if(l{n.fire("dragmove",{type:"dragmove",target:n,evt:e},!0)})},_endDragBefore(e){const t=[];fn._dragElements.forEach(n=>{const{node:r}=n,i=r.getStage();if(e&&i.setPointersPositions(e),!i._changedPointerPositions.find(s=>s.id===n.pointerId))return;(n.dragStatus==="dragging"||n.dragStatus==="stopped")&&(fn.justDragged=!0,ft._mouseListenClick=!1,ft._touchListenClick=!1,ft._pointerListenClick=!1,n.dragStatus="stopped");const a=n.node.getLayer()||n.node instanceof ft.Stage&&n.node;a&&t.indexOf(a)===-1&&t.push(a)}),t.forEach(n=>{n.draw()})},_endDragAfter(e){fn._dragElements.forEach((t,n)=>{t.dragStatus==="stopped"&&t.node.fire("dragend",{type:"dragend",target:t.node,evt:e},!0),t.dragStatus!=="dragging"&&fn._dragElements.delete(n)})}};ft.isBrowser&&(window.addEventListener("mouseup",fn._endDragBefore,!0),window.addEventListener("touchend",fn._endDragBefore,!0),window.addEventListener("mousemove",fn._drag),window.addEventListener("touchmove",fn._drag),window.addEventListener("mouseup",fn._endDragAfter,!1),window.addEventListener("touchend",fn._endDragAfter,!1));var gS="absoluteOpacity",sx="allEventListeners",Iu="absoluteTransform",rI="absoluteScale",oh="canvas",fCe="Change",hCe="children",pCe="konva",Rk="listening",iI="mouseenter",oI="mouseleave",aI="set",sI="Shape",mS=" ",lI="stage",fd="transform",gCe="Stage",Ik="visible",mCe=["xChange.konva","yChange.konva","scaleXChange.konva","scaleYChange.konva","skewXChange.konva","skewYChange.konva","rotationChange.konva","offsetXChange.konva","offsetYChange.konva","transformsEnabledChange.konva"].join(mS);let vCe=1,Ge=class Dk{constructor(t){this._id=vCe++,this.eventListeners={},this.attrs={},this.index=0,this._allEventListeners=null,this.parent=null,this._cache=new Map,this._attachedDepsListeners=new Map,this._lastPos=null,this._batchingTransformChange=!1,this._needClearTransformCache=!1,this._filterUpToDate=!1,this._isUnderCache=!1,this._dragEventId=null,this._shouldFireChangeEvents=!1,this.setAttrs(t),this._shouldFireChangeEvents=!0}hasChildren(){return!1}_clearCache(t){(t===fd||t===Iu)&&this._cache.get(t)?this._cache.get(t).dirty=!0:t?this._cache.delete(t):this._cache.clear()}_getCache(t,n){var r=this._cache.get(t),i=t===fd||t===Iu,o=r===void 0||i&&r.dirty===!0;return o&&(r=n.call(this),this._cache.set(t,r)),r}_calculate(t,n,r){if(!this._attachedDepsListeners.get(t)){const i=n.map(o=>o+"Change.konva").join(mS);this.on(i,()=>{this._clearCache(t)}),this._attachedDepsListeners.set(t,!0)}return this._getCache(t,r)}_getCanvasCache(){return this._cache.get(oh)}_clearSelfAndDescendantCache(t){this._clearCache(t),t===Iu&&this.fire("absoluteTransformChange")}clearCache(){if(this._cache.has(oh)){const{scene:t,filter:n,hit:r}=this._cache.get(oh);de.releaseCanvas(t,n,r),this._cache.delete(oh)}return this._clearSelfAndDescendantCache(),this._requestDraw(),this}cache(t){var n=t||{},r={};(n.x===void 0||n.y===void 0||n.width===void 0||n.height===void 0)&&(r=this.getClientRect({skipTransform:!0,relativeTo:this.getParent()}));var i=Math.ceil(n.width||r.width),o=Math.ceil(n.height||r.height),a=n.pixelRatio,s=n.x===void 0?Math.floor(r.x):n.x,l=n.y===void 0?Math.floor(r.y):n.y,u=n.offset||0,d=n.drawBorder||!1,p=n.hitCanvasPixelRatio||1;if(!i||!o){de.error("Can not cache the node. Width or height of the node equals 0. Caching is skipped.");return}i+=u*2+1,o+=u*2+1,s-=u,l-=u;var m=new Dm({pixelRatio:a,width:i,height:o}),y=new Dm({pixelRatio:a,width:0,height:0}),b=new PE({pixelRatio:p,width:i,height:o}),w=m.getContext(),E=b.getContext();return b.isCache=!0,m.isCache=!0,this._cache.delete(oh),this._filterUpToDate=!1,n.imageSmoothingEnabled===!1&&(m.getContext()._context.imageSmoothingEnabled=!1,y.getContext()._context.imageSmoothingEnabled=!1),w.save(),E.save(),w.translate(-s,-l),E.translate(-s,-l),this._isUnderCache=!0,this._clearSelfAndDescendantCache(gS),this._clearSelfAndDescendantCache(rI),this.drawScene(m,this),this.drawHit(b,this),this._isUnderCache=!1,w.restore(),E.restore(),d&&(w.save(),w.beginPath(),w.rect(0,0,i,o),w.closePath(),w.setAttr("strokeStyle","red"),w.setAttr("lineWidth",5),w.stroke(),w.restore()),this._cache.set(oh,{scene:m,filter:y,hit:b,x:s,y:l}),this._requestDraw(),this}isCached(){return this._cache.has(oh)}getClientRect(t){throw new Error('abstract "getClientRect" method call')}_transformedRect(t,n){var r=[{x:t.x,y:t.y},{x:t.x+t.width,y:t.y},{x:t.x+t.width,y:t.y+t.height},{x:t.x,y:t.y+t.height}],i,o,a,s,l=this.getAbsoluteTransform(n);return r.forEach(function(u){var d=l.point(u);i===void 0&&(i=a=d.x,o=s=d.y),i=Math.min(i,d.x),o=Math.min(o,d.y),a=Math.max(a,d.x),s=Math.max(s,d.y)}),{x:i,y:o,width:a-i,height:s-o}}_drawCachedSceneCanvas(t){t.save(),t._applyOpacity(this),t._applyGlobalCompositeOperation(this);const n=this._getCanvasCache();t.translate(n.x,n.y);var r=this._getCachedSceneCanvas(),i=r.pixelRatio;t.drawImage(r._canvas,0,0,r.width/i,r.height/i),t.restore()}_drawCachedHitCanvas(t){var n=this._getCanvasCache(),r=n.hit;t.save(),t.translate(n.x,n.y),t.drawImage(r._canvas,0,0,r.width/r.pixelRatio,r.height/r.pixelRatio),t.restore()}_getCachedSceneCanvas(){var t=this.filters(),n=this._getCanvasCache(),r=n.scene,i=n.filter,o=i.getContext(),a,s,l,u;if(t){if(!this._filterUpToDate){var d=r.pixelRatio;i.setSize(r.width/r.pixelRatio,r.height/r.pixelRatio);try{for(a=t.length,o.clear(),o.drawImage(r._canvas,0,0,r.getWidth()/d,r.getHeight()/d),s=o.getImageData(0,0,i.getWidth(),i.getHeight()),l=0;l{var n,r;if(!t)return this;for(n in t)n!==hCe&&(r=aI+de._capitalize(n),de._isFunction(this[r])?this[r](t[n]):this._setAttr(n,t[n]))}),this}isListening(){return this._getCache(Rk,this._isListening)}_isListening(t){if(!this.listening())return!1;const r=this.getParent();return r&&r!==t&&this!==t?r._isListening(t):!0}isVisible(){return this._getCache(Ik,this._isVisible)}_isVisible(t){if(!this.visible())return!1;const r=this.getParent();return r&&r!==t&&this!==t?r._isVisible(t):!0}shouldDrawHit(t,n=!1){if(t)return this._isVisible(t)&&this._isListening(t);var r=this.getLayer(),i=!1;fn._dragElements.forEach(a=>{a.dragStatus==="dragging"&&(a.node.nodeType==="Stage"||a.node.getLayer()===r)&&(i=!0)});var o=!n&&!ft.hitOnDragEnabled&&i;return this.isListening()&&this.isVisible()&&!o}show(){return this.visible(!0),this}hide(){return this.visible(!1),this}getZIndex(){return this.index||0}getAbsoluteZIndex(){var t=this.getDepth(),n=this,r=0,i,o,a,s;function l(u){for(i=[],o=u.length,a=0;a0&&i[0].getDepth()<=t&&l(i)}return n.nodeType!==gCe&&l(n.getStage().getChildren()),r}getDepth(){for(var t=0,n=this.parent;n;)t++,n=n.parent;return t}_batchTransformChanges(t){this._batchingTransformChange=!0,t(),this._batchingTransformChange=!1,this._needClearTransformCache&&(this._clearCache(fd),this._clearSelfAndDescendantCache(Iu)),this._needClearTransformCache=!1}setPosition(t){return this._batchTransformChanges(()=>{this.x(t.x),this.y(t.y)}),this}getPosition(){return{x:this.x(),y:this.y()}}getRelativePointerPosition(){if(!this.getStage())return null;var t=this.getStage().getPointerPosition();if(!t)return null;var n=this.getAbsoluteTransform().copy();return n.invert(),n.point(t)}getAbsolutePosition(t){let n=!1,r=this.parent;for(;r;){if(r.isCached()){n=!0;break}r=r.parent}n&&!t&&(t=!0);var i=this.getAbsoluteTransform(t).getMatrix(),o=new Ca,a=this.offset();return o.m=i.slice(),o.translate(a.x,a.y),o.getTranslation()}setAbsolutePosition(t){var n=this._clearTransform();this.attrs.x=n.x,this.attrs.y=n.y,delete n.x,delete n.y,this._clearCache(fd);var r=this._getAbsoluteTransform().copy();return r.invert(),r.translate(t.x,t.y),t={x:this.attrs.x+r.getTranslation().x,y:this.attrs.y+r.getTranslation().y},this._setTransform(n),this.setPosition({x:t.x,y:t.y}),this._clearCache(fd),this._clearSelfAndDescendantCache(Iu),this}_setTransform(t){var n;for(n in t)this.attrs[n]=t[n]}_clearTransform(){var t={x:this.x(),y:this.y(),rotation:this.rotation(),scaleX:this.scaleX(),scaleY:this.scaleY(),offsetX:this.offsetX(),offsetY:this.offsetY(),skewX:this.skewX(),skewY:this.skewY()};return this.attrs.x=0,this.attrs.y=0,this.attrs.rotation=0,this.attrs.scaleX=1,this.attrs.scaleY=1,this.attrs.offsetX=0,this.attrs.offsetY=0,this.attrs.skewX=0,this.attrs.skewY=0,t}move(t){var n=t.x,r=t.y,i=this.x(),o=this.y();return n!==void 0&&(i+=n),r!==void 0&&(o+=r),this.setPosition({x:i,y:o}),this}_eachAncestorReverse(t,n){var r=[],i=this.getParent(),o,a;if(!(n&&n._id===this._id)){for(r.unshift(this);i&&(!n||i._id!==n._id);)r.unshift(i),i=i.parent;for(o=r.length,a=0;a0?(this.parent.children.splice(t,1),this.parent.children.splice(t-1,0,this),this.parent._setChildrenIndices(),!0):!1}moveToBottom(){if(!this.parent)return de.warn("Node has no parent. moveToBottom function is ignored."),!1;var t=this.index;return t>0?(this.parent.children.splice(t,1),this.parent.children.unshift(this),this.parent._setChildrenIndices(),!0):!1}setZIndex(t){if(!this.parent)return de.warn("Node has no parent. zIndex parameter is ignored."),this;(t<0||t>=this.parent.children.length)&&de.warn("Unexpected value "+t+" for zIndex property. zIndex is just index of a node in children of its parent. Expected value is from 0 to "+(this.parent.children.length-1)+".");var n=this.index;return this.parent.children.splice(n,1),this.parent.children.splice(t,0,this),this.parent._setChildrenIndices(),this}getAbsoluteOpacity(){return this._getCache(gS,this._getAbsoluteOpacity)}_getAbsoluteOpacity(){var t=this.opacity(),n=this.getParent();return n&&!n._isUnderCache&&(t*=n.getAbsoluteOpacity()),t}moveTo(t){return this.getParent()!==t&&(this._remove(),t.add(this)),this}toObject(){var t={},n=this.getAttrs(),r,i,o,a,s;t.attrs={};for(r in n)i=n[r],s=de.isObject(i)&&!de._isPlainObject(i)&&!de._isArray(i),!s&&(o=typeof this[r]=="function"&&this[r],delete n[r],a=o?o.call(this):null,n[r]=i,a!==i&&(t.attrs[r]=i));return t.className=this.getClassName(),de._prepareToStringify(t)}toJSON(){return JSON.stringify(this.toObject())}getParent(){return this.parent}findAncestors(t,n,r){var i=[];n&&this._isMatch(t)&&i.push(this);for(var o=this.parent;o;){if(o===r)return i;o._isMatch(t)&&i.push(o),o=o.parent}return i}isAncestorOf(t){return!1}findAncestor(t,n,r){return this.findAncestors(t,n,r)[0]}_isMatch(t){if(!t)return!1;if(typeof t=="function")return t(this);var n=t.replace(/ /g,"").split(","),r=n.length,i,o;for(i=0;i{try{const i=t==null?void 0:t.callback;i&&delete t.callback,de._urlToImage(this.toDataURL(t),function(o){n(o),i==null||i(o)})}catch(i){r(i)}})}toBlob(t){return new Promise((n,r)=>{try{const i=t==null?void 0:t.callback;i&&delete t.callback,this.toCanvas(t).toBlob(o=>{n(o),i==null||i(o)})}catch(i){r(i)}})}setSize(t){return this.width(t.width),this.height(t.height),this}getSize(){return{width:this.width(),height:this.height()}}getClassName(){return this.className||this.nodeType}getType(){return this.nodeType}getDragDistance(){return this.attrs.dragDistance!==void 0?this.attrs.dragDistance:this.parent?this.parent.getDragDistance():ft.dragDistance}_off(t,n,r){var i=this.eventListeners[t],o,a,s;for(o=0;o=0;if(r&&!this.isDragging()){var i=!1;fn._dragElements.forEach(o=>{this.isAncestorOf(o.node)&&(i=!0)}),i||this._createDragElement(t)}})}_dragChange(){if(this.attrs.draggable)this._listenDrag();else{this._dragCleanup();var t=this.getStage();if(!t)return;const n=fn._dragElements.get(this._id),r=n&&n.dragStatus==="dragging",i=n&&n.dragStatus==="ready";r?this.stopDrag():i&&fn._dragElements.delete(this._id)}}_dragCleanup(){this.off("mousedown.konva"),this.off("touchstart.konva")}isClientRectOnScreen(t={x:0,y:0}){const n=this.getStage();if(!n)return!1;const r={x:-t.x,y:-t.y,width:n.width()+2*t.x,height:n.height()+2*t.y};return de.haveIntersection(r,this.getClientRect())}static create(t,n){return de._isString(t)&&(t=JSON.parse(t)),this._createNode(t,n)}static _createNode(t,n){var r=Dk.prototype.getClassName.call(t),i=t.children,o,a,s;n&&(t.attrs.container=n),ft[r]||(de.warn('Can not find a node with class name "'+r+'". Fallback to "Shape".'),r="Shape");const l=ft[r];if(o=new l(t.attrs),i)for(a=i.length,s=0;s0}removeChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.remove()}),this.children=[],this._requestDraw(),this}destroyChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.destroy()}),this.children=[],this._requestDraw(),this}add(...t){if(t.length===0)return this;if(t.length>1){for(var n=0;n0?n[0]:void 0}_generalFind(t,n){var r=[];return this._descendants(i=>{const o=i._isMatch(t);return o&&r.push(i),!!(o&&n)}),r}_descendants(t){let n=!1;const r=this.getChildren();for(const i of r){if(n=t(i),n)return!0;if(i.hasChildren()&&(n=i._descendants(t),n))return!0}return!1}toObject(){var t=Ge.prototype.toObject.call(this);return t.children=[],this.getChildren().forEach(n=>{t.children.push(n.toObject())}),t}isAncestorOf(t){for(var n=t.getParent();n;){if(n._id===this._id)return!0;n=n.getParent()}return!1}clone(t){var n=Ge.prototype.clone.call(this,t);return this.getChildren().forEach(function(r){n.add(r.clone())}),n}getAllIntersections(t){var n=[];return this.find("Shape").forEach(function(r){r.isVisible()&&r.intersects(t)&&n.push(r)}),n}_clearSelfAndDescendantCache(t){var n;super._clearSelfAndDescendantCache(t),!this.isCached()&&((n=this.children)===null||n===void 0||n.forEach(function(r){r._clearSelfAndDescendantCache(t)}))}_setChildrenIndices(){var t;(t=this.children)===null||t===void 0||t.forEach(function(n,r){n.index=r}),this._requestDraw()}drawScene(t,n){var r=this.getLayer(),i=t||r&&r.getCanvas(),o=i&&i.getContext(),a=this._getCanvasCache(),s=a&&a.scene,l=i&&i.isCache;if(!this.isVisible()&&!l)return this;if(s){o.save();var u=this.getAbsoluteTransform(n).getMatrix();o.transform(u[0],u[1],u[2],u[3],u[4],u[5]),this._drawCachedSceneCanvas(o),o.restore()}else this._drawChildren("drawScene",i,n);return this}drawHit(t,n){if(!this.shouldDrawHit(n))return this;var r=this.getLayer(),i=t||r&&r.hitCanvas,o=i&&i.getContext(),a=this._getCanvasCache(),s=a&&a.hit;if(s){o.save();var l=this.getAbsoluteTransform(n).getMatrix();o.transform(l[0],l[1],l[2],l[3],l[4],l[5]),this._drawCachedHitCanvas(o),o.restore()}else this._drawChildren("drawHit",i,n);return this}_drawChildren(t,n,r){var i,o=n&&n.getContext(),a=this.clipWidth(),s=this.clipHeight(),l=this.clipFunc(),u=a&&s||l;const d=r===this;if(u){o.save();var p=this.getAbsoluteTransform(r),m=p.getMatrix();if(o.transform(m[0],m[1],m[2],m[3],m[4],m[5]),o.beginPath(),l)l.call(this,o,this);else{var y=this.clipX(),b=this.clipY();o.rect(y,b,a,s)}o.clip(),m=p.copy().invert().getMatrix(),o.transform(m[0],m[1],m[2],m[3],m[4],m[5])}var w=!d&&this.globalCompositeOperation()!=="source-over"&&t==="drawScene";w&&(o.save(),o._applyGlobalCompositeOperation(this)),(i=this.children)===null||i===void 0||i.forEach(function(E){E[t](n,r)}),w&&o.restore(),u&&o.restore()}getClientRect(t){var n;t=t||{};var r=t.skipTransform,i=t.relativeTo,o,a,s,l,u={x:1/0,y:1/0,width:0,height:0},d=this;(n=this.children)===null||n===void 0||n.forEach(function(w){if(w.visible()){var E=w.getClientRect({relativeTo:d,skipShadow:t.skipShadow,skipStroke:t.skipStroke});E.width===0&&E.height===0||(o===void 0?(o=E.x,a=E.y,s=E.x+E.width,l=E.y+E.height):(o=Math.min(o,E.x),a=Math.min(a,E.y),s=Math.max(s,E.x+E.width),l=Math.max(l,E.y+E.height)))}});for(var p=this.find("Shape"),m=!1,y=0;ye.indexOf("pointer")>=0?"pointer":e.indexOf("touch")>=0?"touch":"mouse",Og=e=>{const t=x1(e);if(t==="pointer")return ft.pointerEventsEnabled&&UC.pointer;if(t==="touch")return UC.touch;if(t==="mouse")return UC.mouse};function cI(e={}){return(e.clipFunc||e.clipWidth||e.clipHeight)&&de.warn("Stage does not support clipping. Please use clip for Layers or Groups."),e}const _Ce="Pointer position is missing and not registered by the stage. Looks like it is outside of the stage container. You can set it manually from event: stage.setPointersPositions(event);",vS=[];let c4=class extends Ma{constructor(t){super(cI(t)),this._pointerPositions=[],this._changedPointerPositions=[],this._buildDOM(),this._bindContentEvents(),vS.push(this),this.on("widthChange.konva heightChange.konva",this._resizeDOM),this.on("visibleChange.konva",this._checkVisibility),this.on("clipWidthChange.konva clipHeightChange.konva clipFuncChange.konva",()=>{cI(this.attrs)}),this._checkVisibility()}_validateAdd(t){const n=t.getType()==="Layer",r=t.getType()==="FastLayer";n||r||de.throw("You may only add layers to the stage.")}_checkVisibility(){if(!this.content)return;const t=this.visible()?"":"none";this.content.style.display=t}setContainer(t){if(typeof t===bCe){if(t.charAt(0)==="."){var n=t.slice(1);t=document.getElementsByClassName(n)[0]}else{var r;t.charAt(0)!=="#"?r=t:r=t.slice(1),t=document.getElementById(r)}if(!t)throw"Can not find container in document with id "+r}return this._setAttr("container",t),this.content&&(this.content.parentElement&&this.content.parentElement.removeChild(this.content),t.appendChild(this.content)),this}shouldDrawHit(){return!0}clear(){var t=this.children,n=t.length,r;for(r=0;r-1&&vS.splice(n,1),de.releaseCanvas(this.bufferCanvas._canvas,this.bufferHitCanvas._canvas),this}getPointerPosition(){const t=this._pointerPositions[0]||this._changedPointerPositions[0];return t?{x:t.x,y:t.y}:(de.warn(_Ce),null)}_getPointerById(t){return this._pointerPositions.find(n=>n.id===t)}getPointersPositions(){return this._pointerPositions}getStage(){return this}getContent(){return this.content}_toKonvaCanvas(t){t=t||{},t.x=t.x||0,t.y=t.y||0,t.width=t.width||this.width(),t.height=t.height||this.height();var n=new Dm({width:t.width,height:t.height,pixelRatio:t.pixelRatio||1}),r=n.getContext()._context,i=this.children;return(t.x||t.y)&&r.translate(-1*t.x,-1*t.y),i.forEach(function(o){if(o.isVisible()){var a=o._toKonvaCanvas(t);r.drawImage(a._canvas,t.x,t.y,a.getWidth()/a.getPixelRatio(),a.getHeight()/a.getPixelRatio())}}),n}getIntersection(t){if(!t)return null;var n=this.children,r=n.length,i=r-1,o;for(o=i;o>=0;o--){const a=n[o].getIntersection(t);if(a)return a}return null}_resizeDOM(){var t=this.width(),n=this.height();this.content&&(this.content.style.width=t+uI,this.content.style.height=n+uI),this.bufferCanvas.setSize(t,n),this.bufferHitCanvas.setSize(t,n),this.children.forEach(r=>{r.setSize({width:t,height:n}),r.draw()})}add(t,...n){if(arguments.length>1){for(var r=0;rwCe&&de.warn("The stage has "+i+" layers. Recommended maximum number of layers is 3-5. Adding more layers into the stage may drop the performance. Rethink your tree structure, you can use Konva.Group."),t.setSize({width:this.width(),height:this.height()}),t.draw(),ft.isBrowser&&this.content.appendChild(t.canvas._canvas),this}getParent(){return null}getLayer(){return null}hasPointerCapture(t){return aV(t,this)}setPointerCapture(t){sV(t,this)}releaseCapture(t){G1(t)}getLayers(){return this.children}_bindContentEvents(){ft.isBrowser&&CCe.forEach(([t,n])=>{this.content.addEventListener(t,r=>{this[n](r)},{passive:!1})})}_pointerenter(t){this.setPointersPositions(t);const n=Og(t.type);this._fire(n.pointerenter,{evt:t,target:this,currentTarget:this})}_pointerover(t){this.setPointersPositions(t);const n=Og(t.type);this._fire(n.pointerover,{evt:t,target:this,currentTarget:this})}_getTargetShape(t){let n=this[t+"targetShape"];return n&&!n.getStage()&&(n=null),n}_pointerleave(t){const n=Og(t.type),r=x1(t.type);if(n){this.setPointersPositions(t);var i=this._getTargetShape(r),o=!fn.isDragging||ft.hitOnDragEnabled;i&&o?(i._fireAndBubble(n.pointerout,{evt:t}),i._fireAndBubble(n.pointerleave,{evt:t}),this._fire(n.pointerleave,{evt:t,target:this,currentTarget:this}),this[r+"targetShape"]=null):o&&(this._fire(n.pointerleave,{evt:t,target:this,currentTarget:this}),this._fire(n.pointerout,{evt:t,target:this,currentTarget:this})),this.pointerPos=void 0,this._pointerPositions=[]}}_pointerdown(t){const n=Og(t.type),r=x1(t.type);if(n){this.setPointersPositions(t);var i=!1;this._changedPointerPositions.forEach(o=>{var a=this.getIntersection(o);if(fn.justDragged=!1,ft["_"+r+"ListenClick"]=!0,!(a&&a.isListening()))return;ft.capturePointerEventsEnabled&&a.setPointerCapture(o.id),this[r+"ClickStartShape"]=a,a._fireAndBubble(n.pointerdown,{evt:t,pointerId:o.id}),i=!0;const l=t.type.indexOf("touch")>=0;a.preventDefault()&&t.cancelable&&l&&t.preventDefault()}),i||this._fire(n.pointerdown,{evt:t,target:this,currentTarget:this,pointerId:this._pointerPositions[0].id})}}_pointermove(t){const n=Og(t.type),r=x1(t.type);if(!n)return;fn.isDragging&&fn.node.preventDefault()&&t.cancelable&&t.preventDefault(),this.setPointersPositions(t);var i=!fn.isDragging||ft.hitOnDragEnabled;if(!i)return;var o={};let a=!1;var s=this._getTargetShape(r);this._changedPointerPositions.forEach(l=>{const u=WC(l.id)||this.getIntersection(l),d=l.id,p={evt:t,pointerId:d};var m=s!==u;if(m&&s&&(s._fireAndBubble(n.pointerout,Object.assign({},p),u),s._fireAndBubble(n.pointerleave,Object.assign({},p),u)),u){if(o[u._id])return;o[u._id]=!0}u&&u.isListening()?(a=!0,m&&(u._fireAndBubble(n.pointerover,Object.assign({},p),s),u._fireAndBubble(n.pointerenter,Object.assign({},p),s),this[r+"targetShape"]=u),u._fireAndBubble(n.pointermove,Object.assign({},p))):s&&(this._fire(n.pointerover,{evt:t,target:this,currentTarget:this,pointerId:d}),this[r+"targetShape"]=null)}),a||this._fire(n.pointermove,{evt:t,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id})}_pointerup(t){const n=Og(t.type),r=x1(t.type);if(!n)return;this.setPointersPositions(t);const i=this[r+"ClickStartShape"],o=this[r+"ClickEndShape"];var a={};let s=!1;this._changedPointerPositions.forEach(l=>{const u=WC(l.id)||this.getIntersection(l);if(u){if(u.releaseCapture(l.id),a[u._id])return;a[u._id]=!0}const d=l.id,p={evt:t,pointerId:d};let m=!1;ft["_"+r+"InDblClickWindow"]?(m=!0,clearTimeout(this[r+"DblTimeout"])):fn.justDragged||(ft["_"+r+"InDblClickWindow"]=!0,clearTimeout(this[r+"DblTimeout"])),this[r+"DblTimeout"]=setTimeout(function(){ft["_"+r+"InDblClickWindow"]=!1},ft.dblClickWindow),u&&u.isListening()?(s=!0,this[r+"ClickEndShape"]=u,u._fireAndBubble(n.pointerup,Object.assign({},p)),ft["_"+r+"ListenClick"]&&i&&i===u&&(u._fireAndBubble(n.pointerclick,Object.assign({},p)),m&&o&&o===u&&u._fireAndBubble(n.pointerdblclick,Object.assign({},p)))):(this[r+"ClickEndShape"]=null,ft["_"+r+"ListenClick"]&&this._fire(n.pointerclick,{evt:t,target:this,currentTarget:this,pointerId:d}),m&&this._fire(n.pointerdblclick,{evt:t,target:this,currentTarget:this,pointerId:d}))}),s||this._fire(n.pointerup,{evt:t,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id}),ft["_"+r+"ListenClick"]=!1,t.cancelable&&r!=="touch"&&t.preventDefault()}_contextmenu(t){this.setPointersPositions(t);var n=this.getIntersection(this.getPointerPosition());n&&n.isListening()?n._fireAndBubble(jk,{evt:t}):this._fire(jk,{evt:t,target:this,currentTarget:this})}_wheel(t){this.setPointersPositions(t);var n=this.getIntersection(this.getPointerPosition());n&&n.isListening()?n._fireAndBubble(Nk,{evt:t}):this._fire(Nk,{evt:t,target:this,currentTarget:this})}_pointercancel(t){this.setPointersPositions(t);const n=WC(t.pointerId)||this.getIntersection(this.getPointerPosition());n&&n._fireAndBubble(lm,TE(t)),G1(t.pointerId)}_lostpointercapture(t){G1(t.pointerId)}setPointersPositions(t){var n=this._getContentPosition(),r=null,i=null;t=t||window.event,t.touches!==void 0?(this._pointerPositions=[],this._changedPointerPositions=[],Array.prototype.forEach.call(t.touches,o=>{this._pointerPositions.push({id:o.identifier,x:(o.clientX-n.left)/n.scaleX,y:(o.clientY-n.top)/n.scaleY})}),Array.prototype.forEach.call(t.changedTouches||t.touches,o=>{this._changedPointerPositions.push({id:o.identifier,x:(o.clientX-n.left)/n.scaleX,y:(o.clientY-n.top)/n.scaleY})})):(r=(t.clientX-n.left)/n.scaleX,i=(t.clientY-n.top)/n.scaleY,this.pointerPos={x:r,y:i},this._pointerPositions=[{x:r,y:i,id:de._getFirstPointerId(t)}],this._changedPointerPositions=[{x:r,y:i,id:de._getFirstPointerId(t)}])}_setPointerPosition(t){de.warn('Method _setPointerPosition is deprecated. Use "stage.setPointersPositions(event)" instead.'),this.setPointersPositions(t)}_getContentPosition(){if(!this.content||!this.content.getBoundingClientRect)return{top:0,left:0,scaleX:1,scaleY:1};var t=this.content.getBoundingClientRect();return{top:t.top,left:t.left,scaleX:t.width/this.content.clientWidth||1,scaleY:t.height/this.content.clientHeight||1}}_buildDOM(){if(this.bufferCanvas=new Dm({width:this.width(),height:this.height()}),this.bufferHitCanvas=new PE({pixelRatio:1,width:this.width(),height:this.height()}),!!ft.isBrowser){var t=this.container();if(!t)throw"Stage has no container. A container is required.";t.innerHTML="",this.content=document.createElement("div"),this.content.style.position="relative",this.content.style.userSelect="none",this.content.className="konvajs-content",this.content.setAttribute("role","presentation"),t.appendChild(this.content),this._resizeDOM()}}cache(){return de.warn("Cache function is not allowed for stage. You may use cache only for layers, groups and shapes."),this}clearCache(){return this}batchDraw(){return this.getChildren().forEach(function(t){t.batchDraw()}),this}};c4.prototype.nodeType=yCe;Mr(c4);J.addGetterSetter(c4,"container");var yV="hasShadow",bV="shadowRGBA",xV="patternImage",SV="linearGradient",wV="radialGradient";let fx;function VC(){return fx||(fx=de.createCanvasElement().getContext("2d"),fx)}const q1={};function kCe(e){e.fill()}function ECe(e){e.stroke()}function PCe(e){e.fill()}function TCe(e){e.stroke()}function MCe(){this._clearCache(yV)}function LCe(){this._clearCache(bV)}function ACe(){this._clearCache(xV)}function OCe(){this._clearCache(SV)}function RCe(){this._clearCache(wV)}class $e extends Ge{constructor(t){super(t);let n;for(;n=de.getRandomColor(),!(n&&!(n in q1)););this.colorKey=n,q1[n]=this}getContext(){return de.warn("shape.getContext() method is deprecated. Please do not use it."),this.getLayer().getContext()}getCanvas(){return de.warn("shape.getCanvas() method is deprecated. Please do not use it."),this.getLayer().getCanvas()}getSceneFunc(){return this.attrs.sceneFunc||this._sceneFunc}getHitFunc(){return this.attrs.hitFunc||this._hitFunc}hasShadow(){return this._getCache(yV,this._hasShadow)}_hasShadow(){return this.shadowEnabled()&&this.shadowOpacity()!==0&&!!(this.shadowColor()||this.shadowBlur()||this.shadowOffsetX()||this.shadowOffsetY())}_getFillPattern(){return this._getCache(xV,this.__getFillPattern)}__getFillPattern(){if(this.fillPatternImage()){var t=VC();const n=t.createPattern(this.fillPatternImage(),this.fillPatternRepeat()||"repeat");if(n&&n.setTransform){const r=new Ca;r.translate(this.fillPatternX(),this.fillPatternY()),r.rotate(ft.getAngle(this.fillPatternRotation())),r.scale(this.fillPatternScaleX(),this.fillPatternScaleY()),r.translate(-1*this.fillPatternOffsetX(),-1*this.fillPatternOffsetY());const i=r.getMatrix(),o=typeof DOMMatrix>"u"?{a:i[0],b:i[1],c:i[2],d:i[3],e:i[4],f:i[5]}:new DOMMatrix(i);n.setTransform(o)}return n}}_getLinearGradient(){return this._getCache(SV,this.__getLinearGradient)}__getLinearGradient(){var t=this.fillLinearGradientColorStops();if(t){for(var n=VC(),r=this.fillLinearGradientStartPoint(),i=this.fillLinearGradientEndPoint(),o=n.createLinearGradient(r.x,r.y,i.x,i.y),a=0;athis.fillEnabled()&&!!(this.fill()||this.fillPatternImage()||this.fillLinearGradientColorStops()||this.fillRadialGradientColorStops()))}hasStroke(){return this._calculate("hasStroke",["strokeEnabled","strokeWidth","stroke","strokeLinearGradientColorStops"],()=>this.strokeEnabled()&&this.strokeWidth()&&!!(this.stroke()||this.strokeLinearGradientColorStops()))}hasHitStroke(){const t=this.hitStrokeWidth();return t==="auto"?this.hasStroke():this.strokeEnabled()&&!!t}intersects(t){var n=this.getStage(),r=n.bufferHitCanvas,i;return r.getContext().clear(),this.drawHit(r,null,!0),i=r.context.getImageData(Math.round(t.x),Math.round(t.y),1,1).data,i[3]>0}destroy(){return Ge.prototype.destroy.call(this),delete q1[this.colorKey],delete this.colorKey,this}_useBufferCanvas(t){var n;if(!this.getStage()||!((n=this.attrs.perfectDrawEnabled)!==null&&n!==void 0?n:!0))return!1;const i=t||this.hasFill(),o=this.hasStroke(),a=this.getAbsoluteOpacity()!==1;if(i&&o&&a)return!0;const s=this.hasShadow(),l=this.shadowForStrokeEnabled();return!!(i&&o&&s&&l)}setStrokeHitEnabled(t){de.warn("strokeHitEnabled property is deprecated. Please use hitStrokeWidth instead."),t?this.hitStrokeWidth("auto"):this.hitStrokeWidth(0)}getStrokeHitEnabled(){return this.hitStrokeWidth()!==0}getSelfRect(){var t=this.size();return{x:this._centroid?-t.width/2:0,y:this._centroid?-t.height/2:0,width:t.width,height:t.height}}getClientRect(t={}){const n=t.skipTransform,r=t.relativeTo,i=this.getSelfRect(),a=!t.skipStroke&&this.hasStroke()&&this.strokeWidth()||0,s=i.width+a,l=i.height+a,u=!t.skipShadow&&this.hasShadow(),d=u?this.shadowOffsetX():0,p=u?this.shadowOffsetY():0,m=s+Math.abs(d),y=l+Math.abs(p),b=u&&this.shadowBlur()||0,w=m+b*2,E=y+b*2,_={width:w,height:E,x:-(a/2+b)+Math.min(d,0)+i.x,y:-(a/2+b)+Math.min(p,0)+i.y};return n?_:this._transformedRect(_,r)}drawScene(t,n){var r=this.getLayer(),i=t||r.getCanvas(),o=i.getContext(),a=this._getCanvasCache(),s=this.getSceneFunc(),l=this.hasShadow(),u,d,p,m=i.isCache,y=n===this;if(!this.isVisible()&&!y)return this;if(a){o.save();var b=this.getAbsoluteTransform(n).getMatrix();return o.transform(b[0],b[1],b[2],b[3],b[4],b[5]),this._drawCachedSceneCanvas(o),o.restore(),this}if(!s)return this;if(o.save(),this._useBufferCanvas()&&!m){u=this.getStage(),d=u.bufferCanvas,p=d.getContext(),p.clear(),p.save(),p._applyLineJoin(this);var w=this.getAbsoluteTransform(n).getMatrix();p.transform(w[0],w[1],w[2],w[3],w[4],w[5]),s.call(this,p,this),p.restore();var E=d.pixelRatio;l&&o._applyShadow(this),o._applyOpacity(this),o._applyGlobalCompositeOperation(this),o.drawImage(d._canvas,0,0,d.width/E,d.height/E)}else{if(o._applyLineJoin(this),!y){var w=this.getAbsoluteTransform(n).getMatrix();o.transform(w[0],w[1],w[2],w[3],w[4],w[5]),o._applyOpacity(this),o._applyGlobalCompositeOperation(this)}l&&o._applyShadow(this),s.call(this,o,this)}return o.restore(),this}drawHit(t,n,r=!1){if(!this.shouldDrawHit(n,r))return this;var i=this.getLayer(),o=t||i.hitCanvas,a=o&&o.getContext(),s=this.hitFunc()||this.sceneFunc(),l=this._getCanvasCache(),u=l&&l.hit;if(this.colorKey||de.warn("Looks like your canvas has a destroyed shape in it. Do not reuse shape after you destroyed it. If you want to reuse shape you should call remove() instead of destroy()"),u){a.save();var d=this.getAbsoluteTransform(n).getMatrix();return a.transform(d[0],d[1],d[2],d[3],d[4],d[5]),this._drawCachedHitCanvas(a),a.restore(),this}if(!s)return this;if(a.save(),a._applyLineJoin(this),!(this===n)){var m=this.getAbsoluteTransform(n).getMatrix();a.transform(m[0],m[1],m[2],m[3],m[4],m[5])}return s.call(this,a,this),a.restore(),this}drawHitFromCache(t=0){var n=this._getCanvasCache(),r=this._getCachedSceneCanvas(),i=n.hit,o=i.getContext(),a=i.getWidth(),s=i.getHeight(),l,u,d,p,m,y;o.clear(),o.drawImage(r._canvas,0,0,a,s);try{for(l=o.getImageData(0,0,a,s),u=l.data,d=u.length,p=de._hexToRgb(this.colorKey),m=0;mt?(u[m]=p.r,u[m+1]=p.g,u[m+2]=p.b,u[m+3]=255):u[m+3]=0;o.putImageData(l,0,0)}catch(b){de.error("Unable to draw hit graph from cached scene canvas. "+b.message)}return this}hasPointerCapture(t){return aV(t,this)}setPointerCapture(t){sV(t,this)}releaseCapture(t){G1(t)}}$e.prototype._fillFunc=kCe;$e.prototype._strokeFunc=ECe;$e.prototype._fillFuncHit=PCe;$e.prototype._strokeFuncHit=TCe;$e.prototype._centroid=!1;$e.prototype.nodeType="Shape";Mr($e);$e.prototype.eventListeners={};$e.prototype.on.call($e.prototype,"shadowColorChange.konva shadowBlurChange.konva shadowOffsetChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",MCe);$e.prototype.on.call($e.prototype,"shadowColorChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",LCe);$e.prototype.on.call($e.prototype,"fillPriorityChange.konva fillPatternImageChange.konva fillPatternRepeatChange.konva fillPatternScaleXChange.konva fillPatternScaleYChange.konva fillPatternOffsetXChange.konva fillPatternOffsetYChange.konva fillPatternXChange.konva fillPatternYChange.konva fillPatternRotationChange.konva",ACe);$e.prototype.on.call($e.prototype,"fillPriorityChange.konva fillLinearGradientColorStopsChange.konva fillLinearGradientStartPointXChange.konva fillLinearGradientStartPointYChange.konva fillLinearGradientEndPointXChange.konva fillLinearGradientEndPointYChange.konva",OCe);$e.prototype.on.call($e.prototype,"fillPriorityChange.konva fillRadialGradientColorStopsChange.konva fillRadialGradientStartPointXChange.konva fillRadialGradientStartPointYChange.konva fillRadialGradientEndPointXChange.konva fillRadialGradientEndPointYChange.konva fillRadialGradientStartRadiusChange.konva fillRadialGradientEndRadiusChange.konva",RCe);J.addGetterSetter($e,"stroke",void 0,iV());J.addGetterSetter($e,"strokeWidth",2,Ve());J.addGetterSetter($e,"fillAfterStrokeEnabled",!1);J.addGetterSetter($e,"hitStrokeWidth","auto",EE());J.addGetterSetter($e,"strokeHitEnabled",!0,el());J.addGetterSetter($e,"perfectDrawEnabled",!0,el());J.addGetterSetter($e,"shadowForStrokeEnabled",!0,el());J.addGetterSetter($e,"lineJoin");J.addGetterSetter($e,"lineCap");J.addGetterSetter($e,"sceneFunc");J.addGetterSetter($e,"hitFunc");J.addGetterSetter($e,"dash");J.addGetterSetter($e,"dashOffset",0,Ve());J.addGetterSetter($e,"shadowColor",void 0,x0());J.addGetterSetter($e,"shadowBlur",0,Ve());J.addGetterSetter($e,"shadowOpacity",1,Ve());J.addComponentsGetterSetter($e,"shadowOffset",["x","y"]);J.addGetterSetter($e,"shadowOffsetX",0,Ve());J.addGetterSetter($e,"shadowOffsetY",0,Ve());J.addGetterSetter($e,"fillPatternImage");J.addGetterSetter($e,"fill",void 0,iV());J.addGetterSetter($e,"fillPatternX",0,Ve());J.addGetterSetter($e,"fillPatternY",0,Ve());J.addGetterSetter($e,"fillLinearGradientColorStops");J.addGetterSetter($e,"strokeLinearGradientColorStops");J.addGetterSetter($e,"fillRadialGradientStartRadius",0);J.addGetterSetter($e,"fillRadialGradientEndRadius",0);J.addGetterSetter($e,"fillRadialGradientColorStops");J.addGetterSetter($e,"fillPatternRepeat","repeat");J.addGetterSetter($e,"fillEnabled",!0);J.addGetterSetter($e,"strokeEnabled",!0);J.addGetterSetter($e,"shadowEnabled",!0);J.addGetterSetter($e,"dashEnabled",!0);J.addGetterSetter($e,"strokeScaleEnabled",!0);J.addGetterSetter($e,"fillPriority","color");J.addComponentsGetterSetter($e,"fillPatternOffset",["x","y"]);J.addGetterSetter($e,"fillPatternOffsetX",0,Ve());J.addGetterSetter($e,"fillPatternOffsetY",0,Ve());J.addComponentsGetterSetter($e,"fillPatternScale",["x","y"]);J.addGetterSetter($e,"fillPatternScaleX",1,Ve());J.addGetterSetter($e,"fillPatternScaleY",1,Ve());J.addComponentsGetterSetter($e,"fillLinearGradientStartPoint",["x","y"]);J.addComponentsGetterSetter($e,"strokeLinearGradientStartPoint",["x","y"]);J.addGetterSetter($e,"fillLinearGradientStartPointX",0);J.addGetterSetter($e,"strokeLinearGradientStartPointX",0);J.addGetterSetter($e,"fillLinearGradientStartPointY",0);J.addGetterSetter($e,"strokeLinearGradientStartPointY",0);J.addComponentsGetterSetter($e,"fillLinearGradientEndPoint",["x","y"]);J.addComponentsGetterSetter($e,"strokeLinearGradientEndPoint",["x","y"]);J.addGetterSetter($e,"fillLinearGradientEndPointX",0);J.addGetterSetter($e,"strokeLinearGradientEndPointX",0);J.addGetterSetter($e,"fillLinearGradientEndPointY",0);J.addGetterSetter($e,"strokeLinearGradientEndPointY",0);J.addComponentsGetterSetter($e,"fillRadialGradientStartPoint",["x","y"]);J.addGetterSetter($e,"fillRadialGradientStartPointX",0);J.addGetterSetter($e,"fillRadialGradientStartPointY",0);J.addComponentsGetterSetter($e,"fillRadialGradientEndPoint",["x","y"]);J.addGetterSetter($e,"fillRadialGradientEndPointX",0);J.addGetterSetter($e,"fillRadialGradientEndPointY",0);J.addGetterSetter($e,"fillPatternRotation",0);J.backCompat($e,{dashArray:"dash",getDashArray:"getDash",setDashArray:"getDash",drawFunc:"sceneFunc",getDrawFunc:"getSceneFunc",setDrawFunc:"setSceneFunc",drawHitFunc:"hitFunc",getDrawHitFunc:"getHitFunc",setDrawHitFunc:"setHitFunc"});var ICe="#",DCe="beforeDraw",jCe="draw",CV=[{x:0,y:0},{x:-1,y:-1},{x:1,y:-1},{x:1,y:1},{x:-1,y:1}],NCe=CV.length;let sp=class extends Ma{constructor(t){super(t),this.canvas=new Dm,this.hitCanvas=new PE({pixelRatio:1}),this._waitingForDraw=!1,this.on("visibleChange.konva",this._checkVisibility),this._checkVisibility(),this.on("imageSmoothingEnabledChange.konva",this._setSmoothEnabled),this._setSmoothEnabled()}createPNGStream(){return this.canvas._canvas.createPNGStream()}getCanvas(){return this.canvas}getNativeCanvasElement(){return this.canvas._canvas}getHitCanvas(){return this.hitCanvas}getContext(){return this.getCanvas().getContext()}clear(t){return this.getContext().clear(t),this.getHitCanvas().getContext().clear(t),this}setZIndex(t){super.setZIndex(t);var n=this.getStage();return n&&n.content&&(n.content.removeChild(this.getNativeCanvasElement()),t{this.draw(),this._waitingForDraw=!1})),this}getIntersection(t){if(!this.isListening()||!this.isVisible())return null;for(var n=1,r=!1;;){for(let i=0;i0)return{antialiased:!0};return{}}drawScene(t,n){var r=this.getLayer(),i=t||r&&r.getCanvas();return this._fire(DCe,{node:this}),this.clearBeforeDraw()&&i.getContext().clear(),Ma.prototype.drawScene.call(this,i,n),this._fire(jCe,{node:this}),this}drawHit(t,n){var r=this.getLayer(),i=t||r&&r.hitCanvas;return r&&r.clearBeforeDraw()&&r.getHitCanvas().getContext().clear(),Ma.prototype.drawHit.call(this,i,n),this}enableHitGraph(){return this.hitGraphEnabled(!0),this}disableHitGraph(){return this.hitGraphEnabled(!1),this}setHitGraphEnabled(t){de.warn("hitGraphEnabled method is deprecated. Please use layer.listening() instead."),this.listening(t)}getHitGraphEnabled(t){return de.warn("hitGraphEnabled method is deprecated. Please use layer.listening() instead."),this.listening()}toggleHitCanvas(){if(!(!this.parent||!this.parent.content)){var t=this.parent,n=!!this.hitCanvas._canvas.parentNode;n?t.content.removeChild(this.hitCanvas._canvas):t.content.appendChild(this.hitCanvas._canvas)}}destroy(){return de.releaseCanvas(this.getNativeCanvasElement(),this.getHitCanvas()._canvas),super.destroy()}};sp.prototype.nodeType="Layer";Mr(sp);J.addGetterSetter(sp,"imageSmoothingEnabled",!0);J.addGetterSetter(sp,"clearBeforeDraw",!0);J.addGetterSetter(sp,"hitGraphEnabled",!0,el());class ME extends sp{constructor(t){super(t),this.listening(!1),de.warn('Konva.Fast layer is deprecated. Please use "new Konva.Layer({ listening: false })" instead.')}}ME.prototype.nodeType="FastLayer";Mr(ME);let Jm=class extends Ma{_validateAdd(t){var n=t.getType();n!=="Group"&&n!=="Shape"&&de.throw("You may only add groups and shapes to groups.")}};Jm.prototype.nodeType="Group";Mr(Jm);var GC=function(){return Im.performance&&Im.performance.now?function(){return Im.performance.now()}:function(){return new Date().getTime()}}();class Ja{constructor(t,n){this.id=Ja.animIdCounter++,this.frame={time:0,timeDiff:0,lastTime:GC(),frameRate:0},this.func=t,this.setLayers(n)}setLayers(t){var n=[];return t?t.length>0?n=t:n=[t]:n=[],this.layers=n,this}getLayers(){return this.layers}addLayer(t){var n=this.layers,r=n.length,i;for(i=0;ithis.duration?this.yoyo?(this._time=this.duration,this.reverse()):this.finish():t<0?this.yoyo?(this._time=0,this.play()):this.reset():(this._time=t,this.update())}getTime(){return this._time}setPosition(t){this.prevPos=this._pos,this.propFunc(t),this._pos=t}getPosition(t){return t===void 0&&(t=this._time),this.func(t,this.begin,this._change,this.duration)}play(){this.state=dI,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire("onPlay")}reverse(){this.state=fI,this._time=this.duration-this._time,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire("onReverse")}seek(t){this.pause(),this._time=t,this.update(),this.fire("onSeek")}reset(){this.pause(),this._time=0,this.update(),this.fire("onReset")}finish(){this.pause(),this._time=this.duration,this.update(),this.fire("onFinish")}update(){this.setPosition(this.getPosition(this._time)),this.fire("onUpdate")}onEnterFrame(){var t=this.getTimer()-this._startTime;this.state===dI?this.setTime(t):this.state===fI&&this.setTime(this.duration-t)}pause(){this.state=FCe,this.fire("onPause")}getTimer(){return new Date().getTime()}}class Xr{constructor(t){var n=this,r=t.node,i=r._id,o,a=t.easing||K1.Linear,s=!!t.yoyo,l;typeof t.duration>"u"?o=.3:t.duration===0?o=.001:o=t.duration,this.node=r,this._id=BCe++;var u=r.getLayer()||(r instanceof ft.Stage?r.getLayers():null);u||de.error("Tween constructor have `node` that is not in a layer. Please add node into layer first."),this.anim=new Ja(function(){n.tween.onEnterFrame()},u),this.tween=new zCe(l,function(d){n._tweenFunc(d)},a,0,1,o*1e3,s),this._addListeners(),Xr.attrs[i]||(Xr.attrs[i]={}),Xr.attrs[i][this._id]||(Xr.attrs[i][this._id]={}),Xr.tweens[i]||(Xr.tweens[i]={});for(l in t)$Ce[l]===void 0&&this._addAttr(l,t[l]);this.reset(),this.onFinish=t.onFinish,this.onReset=t.onReset,this.onUpdate=t.onUpdate}_addAttr(t,n){var r=this.node,i=r._id,o,a,s,l,u,d,p,m;if(s=Xr.tweens[i][t],s&&delete Xr.attrs[i][s][t],o=r.getAttr(t),de._isArray(n))if(a=[],u=Math.max(n.length,o.length),t==="points"&&n.length!==o.length&&(n.length>o.length?(p=o,o=de._prepareArrayForTween(o,n,r.closed())):(d=n,n=de._prepareArrayForTween(n,o,r.closed()))),t.indexOf("fill")===0)for(l=0;l{this.anim.start()},this.tween.onReverse=()=>{this.anim.start()},this.tween.onPause=()=>{this.anim.stop()},this.tween.onFinish=()=>{var t=this.node,n=Xr.attrs[t._id][this._id];n.points&&n.points.trueEnd&&t.setAttr("points",n.points.trueEnd),this.onFinish&&this.onFinish.call(this)},this.tween.onReset=()=>{var t=this.node,n=Xr.attrs[t._id][this._id];n.points&&n.points.trueStart&&t.points(n.points.trueStart),this.onReset&&this.onReset()},this.tween.onUpdate=()=>{this.onUpdate&&this.onUpdate.call(this)}}play(){return this.tween.play(),this}reverse(){return this.tween.reverse(),this}reset(){return this.tween.reset(),this}seek(t){return this.tween.seek(t*1e3),this}pause(){return this.tween.pause(),this}finish(){return this.tween.finish(),this}destroy(){var t=this.node._id,n=this._id,r=Xr.tweens[t],i;this.pause();for(i in r)delete Xr.tweens[t][i];delete Xr.attrs[t][n]}}Xr.attrs={};Xr.tweens={};Ge.prototype.to=function(e){var t=e.onFinish;e.node=this,e.onFinish=function(){this.destroy(),t&&t()};var n=new Xr(e);n.play()};const K1={BackEaseIn(e,t,n,r){var i=1.70158;return n*(e/=r)*e*((i+1)*e-i)+t},BackEaseOut(e,t,n,r){var i=1.70158;return n*((e=e/r-1)*e*((i+1)*e+i)+1)+t},BackEaseInOut(e,t,n,r){var i=1.70158;return(e/=r/2)<1?n/2*(e*e*(((i*=1.525)+1)*e-i))+t:n/2*((e-=2)*e*(((i*=1.525)+1)*e+i)+2)+t},ElasticEaseIn(e,t,n,r,i,o){var a=0;return e===0?t:(e/=r)===1?t+n:(o||(o=r*.3),!i||i0?t:n),d=a*n,p=s*(s>0?t:n),m=l*(l>0?n:t);return{x:u,y:r?-1*m:p,width:d-u,height:m-p}}}hc.prototype._centroid=!0;hc.prototype.className="Arc";hc.prototype._attrsAffectingSize=["innerRadius","outerRadius"];Mr(hc);J.addGetterSetter(hc,"innerRadius",0,Ve());J.addGetterSetter(hc,"outerRadius",0,Ve());J.addGetterSetter(hc,"angle",0,Ve());J.addGetterSetter(hc,"clockwise",!1,el());function $k(e,t,n,r,i,o,a){var s=Math.sqrt(Math.pow(n-e,2)+Math.pow(r-t,2)),l=Math.sqrt(Math.pow(i-n,2)+Math.pow(o-r,2)),u=a*s/(s+l),d=a*l/(s+l),p=n-u*(i-e),m=r-u*(o-t),y=n+d*(i-e),b=r+d*(o-t);return[p,m,y,b]}function pI(e,t){var n=e.length,r=[],i,o;for(i=2;i4){for(s=this.getTensionPoints(),l=s.length,u=o?0:4,o||t.quadraticCurveTo(s[0],s[1],s[2],s[3]);ud?u:d,E=u>d?1:u/d,_=u>d?d/u:1;t.translate(s,l),t.rotate(y),t.scale(E,_),t.arc(0,0,w,p,p+m,1-b),t.scale(1/E,1/_),t.rotate(-y),t.translate(-s,-l);break;case"z":r=!0,t.closePath();break}}!r&&!this.hasFill()?t.strokeShape(this):t.fillStrokeShape(this)}getSelfRect(){var t=[];this.dataArray.forEach(function(u){if(u.command==="A"){var d=u.points[4],p=u.points[5],m=u.points[4]+p,y=Math.PI/180;if(Math.abs(d-m)m;b-=y){const w=Fn.getPointOnEllipticalArc(u.points[0],u.points[1],u.points[2],u.points[3],b,0);t.push(w.x,w.y)}else for(let b=d+y;bthis.dataArray[r].pathLength;)t-=this.dataArray[r].pathLength,++r;if(r===i)return n=this.dataArray[r-1].points.slice(-2),{x:n[0],y:n[1]};if(t<.01)return n=this.dataArray[r].points.slice(0,2),{x:n[0],y:n[1]};var o=this.dataArray[r],a=o.points;switch(o.command){case"L":return Fn.getPointOnLine(t,o.start.x,o.start.y,a[0],a[1]);case"C":return Fn.getPointOnCubicBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3],a[4],a[5]);case"Q":return Fn.getPointOnQuadraticBezier(t/o.pathLength,o.start.x,o.start.y,a[0],a[1],a[2],a[3]);case"A":var s=a[0],l=a[1],u=a[2],d=a[3],p=a[4],m=a[5],y=a[6];return p+=m*t/o.pathLength,Fn.getPointOnEllipticalArc(s,l,u,d,p,y)}return null}static getLineLength(t,n,r,i){return Math.sqrt((r-t)*(r-t)+(i-n)*(i-n))}static getPointOnLine(t,n,r,i,o,a,s){a===void 0&&(a=n),s===void 0&&(s=r);var l=(o-r)/(i-n+1e-8),u=Math.sqrt(t*t/(1+l*l));i0&&!isNaN(b[0]);){var k=null,T=[],L=l,O=u,D,I,N,W,B,K,ne,z,$,V;switch(y){case"l":l+=b.shift(),u+=b.shift(),k="L",T.push(l,u);break;case"L":l=b.shift(),u=b.shift(),T.push(l,u);break;case"m":var X=b.shift(),Q=b.shift();if(l+=X,u+=Q,k="M",a.length>2&&a[a.length-1].command==="z"){for(var G=a.length-2;G>=0;G--)if(a[G].command==="M"){l=a[G].points[0]+X,u=a[G].points[1]+Q;break}}T.push(l,u),y="l";break;case"M":l=b.shift(),u=b.shift(),k="M",T.push(l,u),y="L";break;case"h":l+=b.shift(),k="L",T.push(l,u);break;case"H":l=b.shift(),k="L",T.push(l,u);break;case"v":u+=b.shift(),k="L",T.push(l,u);break;case"V":u=b.shift(),k="L",T.push(l,u);break;case"C":T.push(b.shift(),b.shift(),b.shift(),b.shift()),l=b.shift(),u=b.shift(),T.push(l,u);break;case"c":T.push(l+b.shift(),u+b.shift(),l+b.shift(),u+b.shift()),l+=b.shift(),u+=b.shift(),k="C",T.push(l,u);break;case"S":I=l,N=u,D=a[a.length-1],D.command==="C"&&(I=l+(l-D.points[2]),N=u+(u-D.points[3])),T.push(I,N,b.shift(),b.shift()),l=b.shift(),u=b.shift(),k="C",T.push(l,u);break;case"s":I=l,N=u,D=a[a.length-1],D.command==="C"&&(I=l+(l-D.points[2]),N=u+(u-D.points[3])),T.push(I,N,l+b.shift(),u+b.shift()),l+=b.shift(),u+=b.shift(),k="C",T.push(l,u);break;case"Q":T.push(b.shift(),b.shift()),l=b.shift(),u=b.shift(),T.push(l,u);break;case"q":T.push(l+b.shift(),u+b.shift()),l+=b.shift(),u+=b.shift(),k="Q",T.push(l,u);break;case"T":I=l,N=u,D=a[a.length-1],D.command==="Q"&&(I=l+(l-D.points[0]),N=u+(u-D.points[1])),l=b.shift(),u=b.shift(),k="Q",T.push(I,N,l,u);break;case"t":I=l,N=u,D=a[a.length-1],D.command==="Q"&&(I=l+(l-D.points[0]),N=u+(u-D.points[1])),l+=b.shift(),u+=b.shift(),k="Q",T.push(I,N,l,u);break;case"A":W=b.shift(),B=b.shift(),K=b.shift(),ne=b.shift(),z=b.shift(),$=l,V=u,l=b.shift(),u=b.shift(),k="A",T=this.convertEndpointToCenterParameterization($,V,l,u,ne,z,W,B,K);break;case"a":W=b.shift(),B=b.shift(),K=b.shift(),ne=b.shift(),z=b.shift(),$=l,V=u,l+=b.shift(),u+=b.shift(),k="A",T=this.convertEndpointToCenterParameterization($,V,l,u,ne,z,W,B,K);break}a.push({command:k||y,points:T,start:{x:L,y:O},pathLength:this.calcLength(L,O,k||y,T)})}(y==="z"||y==="Z")&&a.push({command:"z",points:[],start:void 0,pathLength:0})}return a}static calcLength(t,n,r,i){var o,a,s,l,u=Fn;switch(r){case"L":return u.getLineLength(t,n,i[0],i[1]);case"C":for(o=0,a=u.getPointOnCubicBezier(0,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),l=.01;l<=1;l+=.01)s=u.getPointOnCubicBezier(l,t,n,i[0],i[1],i[2],i[3],i[4],i[5]),o+=u.getLineLength(a.x,a.y,s.x,s.y),a=s;return o;case"Q":for(o=0,a=u.getPointOnQuadraticBezier(0,t,n,i[0],i[1],i[2],i[3]),l=.01;l<=1;l+=.01)s=u.getPointOnQuadraticBezier(l,t,n,i[0],i[1],i[2],i[3]),o+=u.getLineLength(a.x,a.y,s.x,s.y),a=s;return o;case"A":o=0;var d=i[4],p=i[5],m=i[4]+p,y=Math.PI/180;if(Math.abs(d-m)m;l-=y)s=u.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],l,0),o+=u.getLineLength(a.x,a.y,s.x,s.y),a=s;else for(l=d+y;l1&&(s*=Math.sqrt(y),l*=Math.sqrt(y));var b=Math.sqrt((s*s*(l*l)-s*s*(m*m)-l*l*(p*p))/(s*s*(m*m)+l*l*(p*p)));o===a&&(b*=-1),isNaN(b)&&(b=0);var w=b*s*m/l,E=b*-l*p/s,_=(t+r)/2+Math.cos(d)*w-Math.sin(d)*E,k=(n+i)/2+Math.sin(d)*w+Math.cos(d)*E,T=function(B){return Math.sqrt(B[0]*B[0]+B[1]*B[1])},L=function(B,K){return(B[0]*K[0]+B[1]*K[1])/(T(B)*T(K))},O=function(B,K){return(B[0]*K[1]=1&&(W=0),a===0&&W>0&&(W=W-2*Math.PI),a===1&&W<0&&(W=W+2*Math.PI),[_,k,s,l,D,W,d,a]}}Fn.prototype.className="Path";Fn.prototype._attrsAffectingSize=["data"];Mr(Fn);J.addGetterSetter(Fn,"data");class lp extends pc{_sceneFunc(t){super._sceneFunc(t);var n=Math.PI*2,r=this.points(),i=r,o=this.tension()!==0&&r.length>4;o&&(i=this.getTensionPoints());var a=this.pointerLength(),s=r.length,l,u;if(o){const m=[i[i.length-4],i[i.length-3],i[i.length-2],i[i.length-1],r[s-2],r[s-1]],y=Fn.calcLength(i[i.length-4],i[i.length-3],"C",m),b=Fn.getPointOnQuadraticBezier(Math.min(1,1-a/y),m[0],m[1],m[2],m[3],m[4],m[5]);l=r[s-2]-b.x,u=r[s-1]-b.y}else l=r[s-2]-r[s-4],u=r[s-1]-r[s-3];var d=(Math.atan2(u,l)+n)%n,p=this.pointerWidth();this.pointerAtEnding()&&(t.save(),t.beginPath(),t.translate(r[s-2],r[s-1]),t.rotate(d),t.moveTo(0,0),t.lineTo(-a,p/2),t.lineTo(-a,-p/2),t.closePath(),t.restore(),this.__fillStroke(t)),this.pointerAtBeginning()&&(t.save(),t.beginPath(),t.translate(r[0],r[1]),o?(l=(i[0]+i[2])/2-r[0],u=(i[1]+i[3])/2-r[1]):(l=r[2]-r[0],u=r[3]-r[1]),t.rotate((Math.atan2(-u,-l)+n)%n),t.moveTo(0,0),t.lineTo(-a,p/2),t.lineTo(-a,-p/2),t.closePath(),t.restore(),this.__fillStroke(t))}__fillStroke(t){var n=this.dashEnabled();n&&(this.attrs.dashEnabled=!1,t.setLineDash([])),t.fillStrokeShape(this),n&&(this.attrs.dashEnabled=!0)}getSelfRect(){const t=super.getSelfRect(),n=this.pointerWidth()/2;return{x:t.x-n,y:t.y-n,width:t.width+n*2,height:t.height+n*2}}}lp.prototype.className="Arrow";Mr(lp);J.addGetterSetter(lp,"pointerLength",10,Ve());J.addGetterSetter(lp,"pointerWidth",10,Ve());J.addGetterSetter(lp,"pointerAtBeginning",!1);J.addGetterSetter(lp,"pointerAtEnding",!0);let S0=class extends $e{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.attrs.radius||0,0,Math.PI*2,!1),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(t){this.radius()!==t/2&&this.radius(t/2)}setHeight(t){this.radius()!==t/2&&this.radius(t/2)}};S0.prototype._centroid=!0;S0.prototype.className="Circle";S0.prototype._attrsAffectingSize=["radius"];Mr(S0);J.addGetterSetter(S0,"radius",0,Ve());class cf extends $e{_sceneFunc(t){var n=this.radiusX(),r=this.radiusY();t.beginPath(),t.save(),n!==r&&t.scale(1,r/n),t.arc(0,0,n,0,Math.PI*2,!1),t.restore(),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.radiusX()*2}getHeight(){return this.radiusY()*2}setWidth(t){this.radiusX(t/2)}setHeight(t){this.radiusY(t/2)}}cf.prototype.className="Ellipse";cf.prototype._centroid=!0;cf.prototype._attrsAffectingSize=["radiusX","radiusY"];Mr(cf);J.addComponentsGetterSetter(cf,"radius",["x","y"]);J.addGetterSetter(cf,"radiusX",0,Ve());J.addGetterSetter(cf,"radiusY",0,Ve());let uu=class _V extends $e{constructor(t){super(t),this.on("imageChange.konva",()=>{this._setImageLoad()}),this._setImageLoad()}_setImageLoad(){const t=this.image();t&&t.complete||t&&t.readyState===4||t&&t.addEventListener&&t.addEventListener("load",()=>{this._requestDraw()})}_useBufferCanvas(){return super._useBufferCanvas(!0)}_sceneFunc(t){const n=this.getWidth(),r=this.getHeight(),i=this.cornerRadius(),o=this.attrs.image;let a;if(o){const s=this.attrs.cropWidth,l=this.attrs.cropHeight;s&&l?a=[o,this.cropX(),this.cropY(),s,l,0,0,n,r]:a=[o,0,0,n,r]}(this.hasFill()||this.hasStroke()||i)&&(t.beginPath(),i?de.drawRoundedRectPath(t,n,r,i):t.rect(0,0,n,r),t.closePath(),t.fillStrokeShape(this)),o&&(i&&t.clip(),t.drawImage.apply(t,a))}_hitFunc(t){var n=this.width(),r=this.height(),i=this.cornerRadius();t.beginPath(),i?de.drawRoundedRectPath(t,n,r,i):t.rect(0,0,n,r),t.closePath(),t.fillStrokeShape(this)}getWidth(){var t,n;return(t=this.attrs.width)!==null&&t!==void 0?t:(n=this.image())===null||n===void 0?void 0:n.width}getHeight(){var t,n;return(t=this.attrs.height)!==null&&t!==void 0?t:(n=this.image())===null||n===void 0?void 0:n.height}static fromURL(t,n,r=null){var i=de.createImageElement();i.onload=function(){var o=new _V({image:i});n(o)},i.onerror=r,i.crossOrigin="Anonymous",i.src=t}};uu.prototype.className="Image";Mr(uu);J.addGetterSetter(uu,"cornerRadius",0,kE(4));J.addGetterSetter(uu,"image");J.addComponentsGetterSetter(uu,"crop",["x","y","width","height"]);J.addGetterSetter(uu,"cropX",0,Ve());J.addGetterSetter(uu,"cropY",0,Ve());J.addGetterSetter(uu,"cropWidth",0,Ve());J.addGetterSetter(uu,"cropHeight",0,Ve());var kV=["fontFamily","fontSize","fontStyle","padding","lineHeight","text","width","height","pointerDirection","pointerWidth","pointerHeight"],HCe="Change.konva",WCe="none",Fk="up",Bk="right",zk="down",Hk="left",UCe=kV.length;class LE extends Jm{constructor(t){super(t),this.on("add.konva",function(n){this._addListeners(n.child),this._sync()})}getText(){return this.find("Text")[0]}getTag(){return this.find("Tag")[0]}_addListeners(t){var n=this,r,i=function(){n._sync()};for(r=0;r{n=Math.min(n,a.x),r=Math.max(r,a.x),i=Math.min(i,a.y),o=Math.max(o,a.y)}),{x:n,y:i,width:r-n,height:o-i}}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(t){this.radius(t/2)}setHeight(t){this.radius(t/2)}}cp.prototype.className="RegularPolygon";cp.prototype._centroid=!0;cp.prototype._attrsAffectingSize=["radius"];Mr(cp);J.addGetterSetter(cp,"radius",0,Ve());J.addGetterSetter(cp,"sides",0,Ve());var gI=Math.PI*2;class dp extends $e{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.innerRadius(),0,gI,!1),t.moveTo(this.outerRadius(),0),t.arc(0,0,this.outerRadius(),gI,0,!0),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.outerRadius()*2}getHeight(){return this.outerRadius()*2}setWidth(t){this.outerRadius(t/2)}setHeight(t){this.outerRadius(t/2)}}dp.prototype.className="Ring";dp.prototype._centroid=!0;dp.prototype._attrsAffectingSize=["innerRadius","outerRadius"];Mr(dp);J.addGetterSetter(dp,"innerRadius",0,Ve());J.addGetterSetter(dp,"outerRadius",0,Ve());class cu extends $e{constructor(t){super(t),this._updated=!0,this.anim=new Ja(()=>{var n=this._updated;return this._updated=!1,n}),this.on("animationChange.konva",function(){this.frameIndex(0)}),this.on("frameIndexChange.konva",function(){this._updated=!0}),this.on("frameRateChange.konva",function(){this.anim.isRunning()&&(clearInterval(this.interval),this._setInterval())})}_sceneFunc(t){var n=this.animation(),r=this.frameIndex(),i=r*4,o=this.animations()[n],a=this.frameOffsets(),s=o[i+0],l=o[i+1],u=o[i+2],d=o[i+3],p=this.image();if((this.hasFill()||this.hasStroke())&&(t.beginPath(),t.rect(0,0,u,d),t.closePath(),t.fillStrokeShape(this)),p)if(a){var m=a[n],y=r*2;t.drawImage(p,s,l,u,d,m[y+0],m[y+1],u,d)}else t.drawImage(p,s,l,u,d,0,0,u,d)}_hitFunc(t){var n=this.animation(),r=this.frameIndex(),i=r*4,o=this.animations()[n],a=this.frameOffsets(),s=o[i+2],l=o[i+3];if(t.beginPath(),a){var u=a[n],d=r*2;t.rect(u[d+0],u[d+1],s,l)}else t.rect(0,0,s,l);t.closePath(),t.fillShape(this)}_useBufferCanvas(){return super._useBufferCanvas(!0)}_setInterval(){var t=this;this.interval=setInterval(function(){t._updateIndex()},1e3/this.frameRate())}start(){if(!this.isRunning()){var t=this.getLayer();this.anim.setLayers(t),this._setInterval(),this.anim.start()}}stop(){this.anim.stop(),clearInterval(this.interval)}isRunning(){return this.anim.isRunning()}_updateIndex(){var t=this.frameIndex(),n=this.animation(),r=this.animations(),i=r[n],o=i.length/4;t{t=t.trim();const n=t.indexOf(" ")>=0,r=t.indexOf('"')>=0||t.indexOf("'")>=0;return n&&!r&&(t=`"${t}"`),t}).join(", ")}var px;function KC(){return px||(px=de.createCanvasElement().getContext(qCe),px)}function i6e(e){e.fillText(this._partialText,this._partialTextX,this._partialTextY)}function o6e(e){e.strokeText(this._partialText,this._partialTextX,this._partialTextY)}function a6e(e){return e=e||{},!e.fillLinearGradientColorStops&&!e.fillRadialGradientColorStops&&!e.fillPatternImage&&(e.fill=e.fill||"black"),e}class Tr extends $e{constructor(t){super(a6e(t)),this._partialTextX=0,this._partialTextY=0;for(var n=0;n1&&(_+=a)}}}_hitFunc(t){var n=this.getWidth(),r=this.getHeight();t.beginPath(),t.rect(0,0,n,r),t.closePath(),t.fillStrokeShape(this)}setText(t){var n=de._isString(t)?t:t==null?"":t+"";return this._setAttr(KCe,n),this}getWidth(){var t=this.attrs.width===Rg||this.attrs.width===void 0;return t?this.getTextWidth()+this.padding()*2:this.attrs.width}getHeight(){var t=this.attrs.height===Rg||this.attrs.height===void 0;return t?this.fontSize()*this.textArr.length*this.lineHeight()+this.padding()*2:this.attrs.height}getTextWidth(){return this.textWidth}getTextHeight(){return de.warn("text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height."),this.textHeight}measureSize(t){var n=KC(),r=this.fontSize(),i;return n.save(),n.font=this._getContextFont(),i=n.measureText(t),n.restore(),{width:i.width,height:r}}_getContextFont(){return this.fontStyle()+hx+this.fontVariant()+hx+(this.fontSize()+QCe)+r6e(this.fontFamily())}_addTextLine(t){this.align()===Jv&&(t=t.trim());var r=this._getTextWidth(t);return this.textArr.push({text:t,width:r,lastInParagraph:!1})}_getTextWidth(t){var n=this.letterSpacing(),r=t.length;return KC().measureText(t).width+(r?n*(r-1):0)}_setTextData(){var t=this.text().split(` +`),n=+this.fontSize(),r=0,i=this.lineHeight()*n,o=this.attrs.width,a=this.attrs.height,s=o!==Rg&&o!==void 0,l=a!==Rg&&a!==void 0,u=this.padding(),d=o-u*2,p=a-u*2,m=0,y=this.wrap(),b=y!==yI,w=y!==t6e&&b,E=this.ellipsis();this.textArr=[],KC().font=this._getContextFont();for(var _=E?this._getTextWidth(qC):0,k=0,T=t.length;kd)for(;L.length>0;){for(var D=0,I=L.length,N="",W=0;D>>1,K=L.slice(0,B+1),ne=this._getTextWidth(K)+_;ne<=d?(D=B+1,N=K,W=ne):I=B}if(N){if(w){var z,$=L[N.length],V=$===hx||$===mI;V&&W<=d?z=N.length:z=Math.max(N.lastIndexOf(hx),N.lastIndexOf(mI))+1,z>0&&(D=z,N=N.slice(0,D),W=this._getTextWidth(N))}N=N.trimRight(),this._addTextLine(N),r=Math.max(r,W),m+=i;var X=this._shouldHandleEllipsis(m);if(X){this._tryToAddEllipsisToLastLine();break}if(L=L.slice(D),L=L.trimLeft(),L.length>0&&(O=this._getTextWidth(L),O<=d)){this._addTextLine(L),m+=i,r=Math.max(r,O);break}}else break}else this._addTextLine(L),m+=i,r=Math.max(r,O),this._shouldHandleEllipsis(m)&&kp)break}this.textHeight=n,this.textWidth=r}_shouldHandleEllipsis(t){var n=+this.fontSize(),r=this.lineHeight()*n,i=this.attrs.height,o=i!==Rg&&i!==void 0,a=this.padding(),s=i-a*2,l=this.wrap(),u=l!==yI;return!u||o&&t+r>s}_tryToAddEllipsisToLastLine(){var t=this.attrs.width,n=t!==Rg&&t!==void 0,r=this.padding(),i=t-r*2,o=this.ellipsis(),a=this.textArr[this.textArr.length-1];if(!(!a||!o)){if(n){var s=this._getTextWidth(a.text+qC)=1){var r=n[0].p0;t.moveTo(r.x,r.y)}for(var i=0;i0&&(s+=t.dataArray[l].pathLength);var u=0;i==="center"&&(u=Math.max(0,s/2-a/2)),i==="right"&&(u=Math.max(0,s-a));for(var d=EV(this.text()),p=this.text().split(" ").length-1,m,y,b,w=-1,E=0,_=function(){E=0;for(var ne=t.dataArray,z=w+1;z0)return w=z,ne[z];ne[z].command==="M"&&(m={x:ne[z].points[0],y:ne[z].points[1]})}return{}},k=function(ne){var z=t._getTextSize(ne).width+r;ne===" "&&i==="justify"&&(z+=(s-a)/p);var $=0,V=0;for(y=void 0;Math.abs(z-$)/z>.01&&V<20;){V++;for(var X=$;b===void 0;)b=_(),b&&X+b.pathLengthz?y=Fn.getPointOnLine(z,m.x,m.y,b.points[0],b.points[1],m.x,m.y):b=void 0;break;case"A":var G=b.points[4],Y=b.points[5],ee=b.points[4]+Y;E===0?E=G+1e-8:z>$?E+=Math.PI/180*Y/Math.abs(Y):E-=Math.PI/360*Y/Math.abs(Y),(Y<0&&E=0&&E>ee)&&(E=ee,Q=!0),y=Fn.getPointOnEllipticalArc(b.points[0],b.points[1],b.points[2],b.points[3],E,b.points[6]);break;case"C":E===0?z>b.pathLength?E=1e-8:E=z/b.pathLength:z>$?E+=(z-$)/b.pathLength/2:E=Math.max(E-($-z)/b.pathLength/2,0),E>1&&(E=1,Q=!0),y=Fn.getPointOnCubicBezier(E,b.start.x,b.start.y,b.points[0],b.points[1],b.points[2],b.points[3],b.points[4],b.points[5]);break;case"Q":E===0?E=z/b.pathLength:z>$?E+=(z-$)/b.pathLength:E-=($-z)/b.pathLength,E>1&&(E=1,Q=!0),y=Fn.getPointOnQuadraticBezier(E,b.start.x,b.start.y,b.points[0],b.points[1],b.points[2],b.points[3]);break}y!==void 0&&($=Fn.getLineLength(m.x,m.y,y.x,y.y)),Q&&(Q=!1,b=void 0)}},T="C",L=t._getTextSize(T).width+r,O=u/L-1,D=0;De+`.${RV}`).join(" "),bI="nodesRect",u6e=["widthChange","heightChange","scaleXChange","scaleYChange","skewXChange","skewYChange","rotationChange","offsetXChange","offsetYChange","transformsEnabledChange","strokeWidthChange"],c6e={"top-left":-45,"top-center":0,"top-right":45,"middle-right":-90,"middle-left":90,"bottom-left":-135,"bottom-center":180,"bottom-right":135};const d6e="ontouchstart"in ft._global;function f6e(e,t){if(e==="rotater")return"crosshair";t+=de.degToRad(c6e[e]||0);var n=(de.radToDeg(t)%360+360)%360;return de._inRange(n,315+22.5,360)||de._inRange(n,0,22.5)?"ns-resize":de._inRange(n,45-22.5,45+22.5)?"nesw-resize":de._inRange(n,90-22.5,90+22.5)?"ew-resize":de._inRange(n,135-22.5,135+22.5)?"nwse-resize":de._inRange(n,180-22.5,180+22.5)?"ns-resize":de._inRange(n,225-22.5,225+22.5)?"nesw-resize":de._inRange(n,270-22.5,270+22.5)?"ew-resize":de._inRange(n,315-22.5,315+22.5)?"nwse-resize":(de.error("Transformer has unknown angle for cursor detection: "+n),"pointer")}var L3=["top-left","top-center","top-right","middle-right","middle-left","bottom-left","bottom-center","bottom-right"],xI=1e8;function h6e(e){return{x:e.x+e.width/2*Math.cos(e.rotation)+e.height/2*Math.sin(-e.rotation),y:e.y+e.height/2*Math.cos(e.rotation)+e.width/2*Math.sin(e.rotation)}}function IV(e,t,n){const r=n.x+(e.x-n.x)*Math.cos(t)-(e.y-n.y)*Math.sin(t),i=n.y+(e.x-n.x)*Math.sin(t)+(e.y-n.y)*Math.cos(t);return Object.assign(Object.assign({},e),{rotation:e.rotation+t,x:r,y:i})}function p6e(e,t){const n=h6e(e);return IV(e,t,n)}function g6e(e,t,n){let r=t;for(let i=0;i{const i=()=>{this.nodes().length===1&&this.useSingleNodeRotation()&&this.rotation(this.nodes()[0].getAbsoluteRotation()),this._resetTransformCache(),!this._transforming&&!this.isDragging()&&this.update()},o=r._attrsAffectingSize.map(a=>a+"Change."+this._getEventNamespace()).join(" ");r.on(o,i),r.on(u6e.map(a=>a+`.${this._getEventNamespace()}`).join(" "),i),r.on(`absoluteTransformChange.${this._getEventNamespace()}`,i),this._proxyDrag(r)}),this._resetTransformCache();var n=!!this.findOne(".top-left");return n&&this.update(),this}_proxyDrag(t){let n;t.on(`dragstart.${this._getEventNamespace()}`,r=>{n=t.getAbsolutePosition(),!this.isDragging()&&t!==this.findOne(".back")&&this.startDrag(r,!1)}),t.on(`dragmove.${this._getEventNamespace()}`,r=>{if(!n)return;const i=t.getAbsolutePosition(),o=i.x-n.x,a=i.y-n.y;this.nodes().forEach(s=>{if(s===t||s.isDragging())return;const l=s.getAbsolutePosition();s.setAbsolutePosition({x:l.x+o,y:l.y+a}),s.startDrag(r)}),n=null})}getNodes(){return this._nodes||[]}getActiveAnchor(){return this._movingAnchorName}detach(){this._nodes&&this._nodes.forEach(t=>{t.off("."+this._getEventNamespace())}),this._nodes=[],this._resetTransformCache()}_resetTransformCache(){this._clearCache(bI),this._clearCache("transform"),this._clearSelfAndDescendantCache("absoluteTransform")}_getNodeRect(){return this._getCache(bI,this.__getNodeRect)}__getNodeShape(t,n=this.rotation(),r){var i=t.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()}),o=t.getAbsoluteScale(r),a=t.getAbsolutePosition(r),s=i.x*o.x-t.offsetX()*o.x,l=i.y*o.y-t.offsetY()*o.y;const u=(ft.getAngle(t.getAbsoluteRotation())+Math.PI*2)%(Math.PI*2),d={x:a.x+s*Math.cos(u)+l*Math.sin(-u),y:a.y+l*Math.cos(u)+s*Math.sin(u),width:i.width*o.x,height:i.height*o.y,rotation:u};return IV(d,-ft.getAngle(n),{x:0,y:0})}__getNodeRect(){var t=this.getNode();if(!t)return{x:-xI,y:-xI,width:0,height:0,rotation:0};const n=[];this.nodes().map(u=>{const d=u.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()});var p=[{x:d.x,y:d.y},{x:d.x+d.width,y:d.y},{x:d.x+d.width,y:d.y+d.height},{x:d.x,y:d.y+d.height}],m=u.getAbsoluteTransform();p.forEach(function(y){var b=m.point(y);n.push(b)})});const r=new Ca;r.rotate(-ft.getAngle(this.rotation()));var i,o,a,s;n.forEach(function(u){var d=r.point(u);i===void 0&&(i=a=d.x,o=s=d.y),i=Math.min(i,d.x),o=Math.min(o,d.y),a=Math.max(a,d.x),s=Math.max(s,d.y)}),r.invert();const l=r.point({x:i,y:o});return{x:l.x,y:l.y,width:a-i,height:s-o,rotation:ft.getAngle(this.rotation())}}getX(){return this._getNodeRect().x}getY(){return this._getNodeRect().y}getWidth(){return this._getNodeRect().width}getHeight(){return this._getNodeRect().height}_createElements(){this._createBack(),L3.forEach(function(t){this._createAnchor(t)}.bind(this)),this._createAnchor("rotater")}_createAnchor(t){var n=new m2({stroke:"rgb(0, 161, 255)",fill:"white",strokeWidth:1,name:t+" _anchor",dragDistance:0,draggable:!0,hitStrokeWidth:d6e?10:"auto"}),r=this;n.on("mousedown touchstart",function(i){r._handleMouseDown(i)}),n.on("dragstart",i=>{n.stopDrag(),i.cancelBubble=!0}),n.on("dragend",i=>{i.cancelBubble=!0}),n.on("mouseenter",()=>{var i=ft.getAngle(this.rotation()),o=f6e(t,i);n.getStage().content&&(n.getStage().content.style.cursor=o),this._cursorChange=!0}),n.on("mouseout",()=>{n.getStage().content&&(n.getStage().content.style.cursor=""),this._cursorChange=!1}),this.add(n)}_createBack(){var t=new $e({name:"back",width:0,height:0,draggable:!0,sceneFunc(n){var r=this.getParent(),i=r.padding();n.beginPath(),n.rect(-i,-i,this.width()+i*2,this.height()+i*2),n.moveTo(this.width()/2,-i),r.rotateEnabled()&&n.lineTo(this.width()/2,-r.rotateAnchorOffset()*de._sign(this.height())-i),n.fillStrokeShape(this)},hitFunc:(n,r)=>{if(this.shouldOverdrawWholeArea()){var i=this.padding();n.beginPath(),n.rect(-i,-i,r.width()+i*2,r.height()+i*2),n.fillStrokeShape(r)}}});this.add(t),this._proxyDrag(t),t.on("dragstart",n=>{n.cancelBubble=!0}),t.on("dragmove",n=>{n.cancelBubble=!0}),t.on("dragend",n=>{n.cancelBubble=!0}),this.on("dragmove",n=>{this.update()})}_handleMouseDown(t){this._movingAnchorName=t.target.name().split(" ")[0];var n=this._getNodeRect(),r=n.width,i=n.height,o=Math.sqrt(Math.pow(r,2)+Math.pow(i,2));this.sin=Math.abs(i/o),this.cos=Math.abs(r/o),typeof window<"u"&&(window.addEventListener("mousemove",this._handleMouseMove),window.addEventListener("touchmove",this._handleMouseMove),window.addEventListener("mouseup",this._handleMouseUp,!0),window.addEventListener("touchend",this._handleMouseUp,!0)),this._transforming=!0;var a=t.target.getAbsolutePosition(),s=t.target.getStage().getPointerPosition();this._anchorDragOffset={x:s.x-a.x,y:s.y-a.y},this._fire("transformstart",{evt:t.evt,target:this.getNode()}),this._nodes.forEach(l=>{l._fire("transformstart",{evt:t.evt,target:l})})}_handleMouseMove(t){var n,r,i,o=this.findOne("."+this._movingAnchorName),a=o.getStage();a.setPointersPositions(t);const s=a.getPointerPosition();let l={x:s.x-this._anchorDragOffset.x,y:s.y-this._anchorDragOffset.y};const u=o.getAbsolutePosition();this.anchorDragBoundFunc()&&(l=this.anchorDragBoundFunc()(u,l,t)),o.setAbsolutePosition(l);const d=o.getAbsolutePosition();if(!(u.x===d.x&&u.y===d.y)){if(this._movingAnchorName==="rotater"){var p=this._getNodeRect();n=o.x()-p.width/2,r=-o.y()+p.height/2;let ne=Math.atan2(-r,n)+Math.PI/2;p.height<0&&(ne-=Math.PI);var m=ft.getAngle(this.rotation());const z=m+ne,$=ft.getAngle(this.rotationSnapTolerance()),X=g6e(this.rotationSnaps(),z,$)-p.rotation,Q=p6e(p,X);this._fitNodesInto(Q,t);return}var y=this.keepRatio()||t.shiftKey,k=this.centeredScaling()||t.altKey;if(this._movingAnchorName==="top-left"){if(y){var b=k?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".bottom-right").x(),y:this.findOne(".bottom-right").y()};i=Math.sqrt(Math.pow(b.x-o.x(),2)+Math.pow(b.y-o.y(),2));var w=this.findOne(".top-left").x()>b.x?-1:1,E=this.findOne(".top-left").y()>b.y?-1:1;n=i*this.cos*w,r=i*this.sin*E,this.findOne(".top-left").x(b.x-n),this.findOne(".top-left").y(b.y-r)}}else if(this._movingAnchorName==="top-center")this.findOne(".top-left").y(o.y());else if(this._movingAnchorName==="top-right"){if(y){var b=k?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".bottom-left").x(),y:this.findOne(".bottom-left").y()};i=Math.sqrt(Math.pow(o.x()-b.x,2)+Math.pow(b.y-o.y(),2));var w=this.findOne(".top-right").x()b.y?-1:1;n=i*this.cos*w,r=i*this.sin*E,this.findOne(".top-right").x(b.x+n),this.findOne(".top-right").y(b.y-r)}var _=o.position();this.findOne(".top-left").y(_.y),this.findOne(".bottom-right").x(_.x)}else if(this._movingAnchorName==="middle-left")this.findOne(".top-left").x(o.x());else if(this._movingAnchorName==="middle-right")this.findOne(".bottom-right").x(o.x());else if(this._movingAnchorName==="bottom-left"){if(y){var b=k?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".top-right").x(),y:this.findOne(".top-right").y()};i=Math.sqrt(Math.pow(b.x-o.x(),2)+Math.pow(o.y()-b.y,2));var w=b.x{r._fire("transformend",{evt:t,target:r})}),this._movingAnchorName=null}}_fitNodesInto(t,n){var r=this._getNodeRect();const i=1;if(de._inRange(t.width,-this.padding()*2-i,i)){this.update();return}if(de._inRange(t.height,-this.padding()*2-i,i)){this.update();return}const o=this.flipEnabled();var a=new Ca;if(a.rotate(ft.getAngle(this.rotation())),this._movingAnchorName&&t.width<0&&this._movingAnchorName.indexOf("left")>=0){const p=a.point({x:-this.padding()*2,y:0});if(t.x+=p.x,t.y+=p.y,t.width+=this.padding()*2,this._movingAnchorName=this._movingAnchorName.replace("left","right"),this._anchorDragOffset.x-=p.x,this._anchorDragOffset.y-=p.y,!o){this.update();return}}else if(this._movingAnchorName&&t.width<0&&this._movingAnchorName.indexOf("right")>=0){const p=a.point({x:this.padding()*2,y:0});if(this._movingAnchorName=this._movingAnchorName.replace("right","left"),this._anchorDragOffset.x-=p.x,this._anchorDragOffset.y-=p.y,t.width+=this.padding()*2,!o){this.update();return}}if(this._movingAnchorName&&t.height<0&&this._movingAnchorName.indexOf("top")>=0){const p=a.point({x:0,y:-this.padding()*2});if(t.x+=p.x,t.y+=p.y,this._movingAnchorName=this._movingAnchorName.replace("top","bottom"),this._anchorDragOffset.x-=p.x,this._anchorDragOffset.y-=p.y,t.height+=this.padding()*2,!o){this.update();return}}else if(this._movingAnchorName&&t.height<0&&this._movingAnchorName.indexOf("bottom")>=0){const p=a.point({x:0,y:this.padding()*2});if(this._movingAnchorName=this._movingAnchorName.replace("bottom","top"),this._anchorDragOffset.x-=p.x,this._anchorDragOffset.y-=p.y,t.height+=this.padding()*2,!o){this.update();return}}if(this.boundBoxFunc()){const p=this.boundBoxFunc()(r,t);p?t=p:de.warn("boundBoxFunc returned falsy. You should return new bound rect from it!")}const s=1e7,l=new Ca;l.translate(r.x,r.y),l.rotate(r.rotation),l.scale(r.width/s,r.height/s);const u=new Ca;u.translate(t.x,t.y),u.rotate(t.rotation),u.scale(t.width/s,t.height/s);const d=u.multiply(l.invert());this._nodes.forEach(p=>{var m;const y=p.getParent().getAbsoluteTransform(),b=p.getTransform().copy();b.translate(p.offsetX(),p.offsetY());const w=new Ca;w.multiply(y.copy().invert()).multiply(d).multiply(y).multiply(b);const E=w.decompose();p.setAttrs(E),this._fire("transform",{evt:n,target:p}),p._fire("transform",{evt:n,target:p}),(m=p.getLayer())===null||m===void 0||m.batchDraw()}),this.rotation(de._getRotation(t.rotation)),this._resetTransformCache(),this.update(),this.getLayer().batchDraw()}forceUpdate(){this._resetTransformCache(),this.update()}_batchChangeChild(t,n){this.findOne(t).setAttrs(n)}update(){var t,n=this._getNodeRect();this.rotation(de._getRotation(n.rotation));var r=n.width,i=n.height,o=this.enabledAnchors(),a=this.resizeEnabled(),s=this.padding(),l=this.anchorSize();this.find("._anchor").forEach(u=>{u.setAttrs({width:l,height:l,offsetX:l/2,offsetY:l/2,stroke:this.anchorStroke(),strokeWidth:this.anchorStrokeWidth(),fill:this.anchorFill(),cornerRadius:this.anchorCornerRadius()})}),this._batchChangeChild(".top-left",{x:0,y:0,offsetX:l/2+s,offsetY:l/2+s,visible:a&&o.indexOf("top-left")>=0}),this._batchChangeChild(".top-center",{x:r/2,y:0,offsetY:l/2+s,visible:a&&o.indexOf("top-center")>=0}),this._batchChangeChild(".top-right",{x:r,y:0,offsetX:l/2-s,offsetY:l/2+s,visible:a&&o.indexOf("top-right")>=0}),this._batchChangeChild(".middle-left",{x:0,y:i/2,offsetX:l/2+s,visible:a&&o.indexOf("middle-left")>=0}),this._batchChangeChild(".middle-right",{x:r,y:i/2,offsetX:l/2-s,visible:a&&o.indexOf("middle-right")>=0}),this._batchChangeChild(".bottom-left",{x:0,y:i,offsetX:l/2+s,offsetY:l/2-s,visible:a&&o.indexOf("bottom-left")>=0}),this._batchChangeChild(".bottom-center",{x:r/2,y:i,offsetY:l/2-s,visible:a&&o.indexOf("bottom-center")>=0}),this._batchChangeChild(".bottom-right",{x:r,y:i,offsetX:l/2-s,offsetY:l/2-s,visible:a&&o.indexOf("bottom-right")>=0}),this._batchChangeChild(".rotater",{x:r/2,y:-this.rotateAnchorOffset()*de._sign(i)-s,visible:this.rotateEnabled()}),this._batchChangeChild(".back",{width:r,height:i,visible:this.borderEnabled(),stroke:this.borderStroke(),strokeWidth:this.borderStrokeWidth(),dash:this.borderDash(),x:0,y:0}),(t=this.getLayer())===null||t===void 0||t.batchDraw()}isTransforming(){return this._transforming}stopTransform(){if(this._transforming){this._removeEvents();var t=this.findOne("."+this._movingAnchorName);t&&t.stopDrag()}}destroy(){return this.getStage()&&this._cursorChange&&this.getStage().content&&(this.getStage().content.style.cursor=""),Jm.prototype.destroy.call(this),this.detach(),this._removeEvents(),this}toObject(){return Ge.prototype.toObject.call(this)}clone(t){var n=Ge.prototype.clone.call(this,t);return n}getClientRect(){return this.nodes().length>0?super.getClientRect():{x:0,y:0,width:0,height:0}}};function m6e(e){return e instanceof Array||de.warn("enabledAnchors value should be an array"),e instanceof Array&&e.forEach(function(t){L3.indexOf(t)===-1&&de.warn("Unknown anchor name: "+t+". Available names are: "+L3.join(", "))}),e||[]}Tn.prototype.className="Transformer";Mr(Tn);J.addGetterSetter(Tn,"enabledAnchors",L3,m6e);J.addGetterSetter(Tn,"flipEnabled",!0,el());J.addGetterSetter(Tn,"resizeEnabled",!0);J.addGetterSetter(Tn,"anchorSize",10,Ve());J.addGetterSetter(Tn,"rotateEnabled",!0);J.addGetterSetter(Tn,"rotationSnaps",[]);J.addGetterSetter(Tn,"rotateAnchorOffset",50,Ve());J.addGetterSetter(Tn,"rotationSnapTolerance",5,Ve());J.addGetterSetter(Tn,"borderEnabled",!0);J.addGetterSetter(Tn,"anchorStroke","rgb(0, 161, 255)");J.addGetterSetter(Tn,"anchorStrokeWidth",1,Ve());J.addGetterSetter(Tn,"anchorFill","white");J.addGetterSetter(Tn,"anchorCornerRadius",0,Ve());J.addGetterSetter(Tn,"borderStroke","rgb(0, 161, 255)");J.addGetterSetter(Tn,"borderStrokeWidth",1,Ve());J.addGetterSetter(Tn,"borderDash");J.addGetterSetter(Tn,"keepRatio",!0);J.addGetterSetter(Tn,"centeredScaling",!1);J.addGetterSetter(Tn,"ignoreStroke",!1);J.addGetterSetter(Tn,"padding",0,Ve());J.addGetterSetter(Tn,"node");J.addGetterSetter(Tn,"nodes");J.addGetterSetter(Tn,"boundBoxFunc");J.addGetterSetter(Tn,"anchorDragBoundFunc");J.addGetterSetter(Tn,"shouldOverdrawWholeArea",!1);J.addGetterSetter(Tn,"useSingleNodeRotation",!0);J.backCompat(Tn,{lineEnabled:"borderEnabled",rotateHandlerOffset:"rotateAnchorOffset",enabledHandlers:"enabledAnchors"});class gc extends $e{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.radius(),0,ft.getAngle(this.angle()),this.clockwise()),t.lineTo(0,0),t.closePath(),t.fillStrokeShape(this)}getWidth(){return this.radius()*2}getHeight(){return this.radius()*2}setWidth(t){this.radius(t/2)}setHeight(t){this.radius(t/2)}}gc.prototype.className="Wedge";gc.prototype._centroid=!0;gc.prototype._attrsAffectingSize=["radius"];Mr(gc);J.addGetterSetter(gc,"radius",0,Ve());J.addGetterSetter(gc,"angle",0,Ve());J.addGetterSetter(gc,"clockwise",!1);J.backCompat(gc,{angleDeg:"angle",getAngleDeg:"getAngle",setAngleDeg:"setAngle"});function SI(){this.r=0,this.g=0,this.b=0,this.a=0,this.next=null}var v6e=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],y6e=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24];function b6e(e,t){var n=e.data,r=e.width,i=e.height,o,a,s,l,u,d,p,m,y,b,w,E,_,k,T,L,O,D,I,N,W,B,K,ne,z=t+t+1,$=r-1,V=i-1,X=t+1,Q=X*(X+1)/2,G=new SI,Y=null,ee=G,fe=null,_e=null,we=v6e[t],xe=y6e[t];for(s=1;s>xe,K!==0?(K=255/K,n[d]=(m*we>>xe)*K,n[d+1]=(y*we>>xe)*K,n[d+2]=(b*we>>xe)*K):n[d]=n[d+1]=n[d+2]=0,m-=E,y-=_,b-=k,w-=T,E-=fe.r,_-=fe.g,k-=fe.b,T-=fe.a,l=p+((l=o+t+1)<$?l:$)<<2,L+=fe.r=n[l],O+=fe.g=n[l+1],D+=fe.b=n[l+2],I+=fe.a=n[l+3],m+=L,y+=O,b+=D,w+=I,fe=fe.next,E+=N=_e.r,_+=W=_e.g,k+=B=_e.b,T+=K=_e.a,L-=N,O-=W,D-=B,I-=K,_e=_e.next,d+=4;p+=r}for(o=0;o>xe,K>0?(K=255/K,n[l]=(m*we>>xe)*K,n[l+1]=(y*we>>xe)*K,n[l+2]=(b*we>>xe)*K):n[l]=n[l+1]=n[l+2]=0,m-=E,y-=_,b-=k,w-=T,E-=fe.r,_-=fe.g,k-=fe.b,T-=fe.a,l=o+((l=a+X)0&&b6e(t,n)};J.addGetterSetter(Ge,"blurRadius",0,Ve(),J.afterSetFilter);const S6e=function(e){var t=this.brightness()*255,n=e.data,r=n.length,i;for(i=0;i255?255:i,o=o<0?0:o>255?255:o,a=a<0?0:a>255?255:a,n[s]=i,n[s+1]=o,n[s+2]=a};J.addGetterSetter(Ge,"contrast",0,Ve(),J.afterSetFilter);const C6e=function(e){var t=this.embossStrength()*10,n=this.embossWhiteLevel()*255,r=this.embossDirection(),i=this.embossBlend(),o=0,a=0,s=e.data,l=e.width,u=e.height,d=l*4,p=u;switch(r){case"top-left":o=-1,a=-1;break;case"top":o=-1,a=0;break;case"top-right":o=-1,a=1;break;case"right":o=0,a=1;break;case"bottom-right":o=1,a=1;break;case"bottom":o=1,a=0;break;case"bottom-left":o=1,a=-1;break;case"left":o=0,a=-1;break;default:de.error("Unknown emboss direction: "+r)}do{var m=(p-1)*d,y=o;p+y<1&&(y=0),p+y>u&&(y=0);var b=(p-1+y)*l*4,w=l;do{var E=m+(w-1)*4,_=a;w+_<1&&(_=0),w+_>l&&(_=0);var k=b+(w-1+_)*4,T=s[E]-s[k],L=s[E+1]-s[k+1],O=s[E+2]-s[k+2],D=T,I=D>0?D:-D,N=L>0?L:-L,W=O>0?O:-O;if(N>I&&(D=L),W>I&&(D=O),D*=t,i){var B=s[E]+D,K=s[E+1]+D,ne=s[E+2]+D;s[E]=B>255?255:B<0?0:B,s[E+1]=K>255?255:K<0?0:K,s[E+2]=ne>255?255:ne<0?0:ne}else{var z=n-D;z<0?z=0:z>255&&(z=255),s[E]=s[E+1]=s[E+2]=z}}while(--w)}while(--p)};J.addGetterSetter(Ge,"embossStrength",.5,Ve(),J.afterSetFilter);J.addGetterSetter(Ge,"embossWhiteLevel",.5,Ve(),J.afterSetFilter);J.addGetterSetter(Ge,"embossDirection","top-left",null,J.afterSetFilter);J.addGetterSetter(Ge,"embossBlend",!1,null,J.afterSetFilter);function YC(e,t,n,r,i){var o=n-t,a=i-r,s;return o===0?r+a/2:a===0?r:(s=(e-t)/o,s=a*s+r,s)}const _6e=function(e){var t=e.data,n=t.length,r=t[0],i=r,o,a=t[1],s=a,l,u=t[2],d=u,p,m,y=this.enhance();if(y!==0){for(m=0;mi&&(i=o),l=t[m+1],ls&&(s=l),p=t[m+2],pd&&(d=p);i===r&&(i=255,r=0),s===a&&(s=255,a=0),d===u&&(d=255,u=0);var b,w,E,_,k,T,L,O,D;for(y>0?(w=i+y*(255-i),E=r-y*(r-0),k=s+y*(255-s),T=a-y*(a-0),O=d+y*(255-d),D=u-y*(u-0)):(b=(i+r)*.5,w=i+y*(i-b),E=r+y*(r-b),_=(s+a)*.5,k=s+y*(s-_),T=a+y*(a-_),L=(d+u)*.5,O=d+y*(d-L),D=u+y*(u-L)),m=0;m_?E:_;var k=a,T=o,L,O,D=360/T*Math.PI/180,I,N;for(O=0;OT?k:T;var L=a,O=o,D,I,N=n.polarRotation||0,W,B;for(d=0;dt&&(L=T,O=0,D=-1),i=0;i=0&&y=0&&b=0&&y=0&&b=255*4?255:0}return a}function N6e(e,t,n){for(var r=[.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111,.1111111111111111],i=Math.round(Math.sqrt(r.length)),o=Math.floor(i/2),a=[],s=0;s=0&&y=0&&b=n))for(o=w;o=r||(a=(n*o+i)*4,s+=L[a+0],l+=L[a+1],u+=L[a+2],d+=L[a+3],T+=1);for(s=s/T,l=l/T,u=u/T,d=d/T,i=y;i=n))for(o=w;o=r||(a=(n*o+i)*4,L[a+0]=s,L[a+1]=l,L[a+2]=u,L[a+3]=d)}};J.addGetterSetter(Ge,"pixelSize",8,Ve(),J.afterSetFilter);const z6e=function(e){var t=Math.round(this.levels()*254)+1,n=e.data,r=n.length,i=255/t,o;for(o=0;o255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"green",0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"blue",0,rV,J.afterSetFilter);const W6e=function(e){var t=e.data,n=t.length,r=this.red(),i=this.green(),o=this.blue(),a=this.alpha(),s,l;for(s=0;s255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"green",0,function(e){return this._filterUpToDate=!1,e>255?255:e<0?0:Math.round(e)});J.addGetterSetter(Ge,"blue",0,rV,J.afterSetFilter);J.addGetterSetter(Ge,"alpha",1,function(e){return this._filterUpToDate=!1,e>1?1:e<0?0:e});const U6e=function(e){var t=e.data,n=t.length,r,i,o,a;for(r=0;r127&&(u=255-u),d>127&&(d=255-d),p>127&&(p=255-p),t[l]=u,t[l+1]=d,t[l+2]=p}while(--s)}while(--o)},G6e=function(e){var t=this.threshold()*255,n=e.data,r=n.length,i;for(i=0;i{const{width:n,height:r}=t,i=document.createElement("div"),o=new $g.Stage({container:i,width:n,height:r}),a=new $g.Layer,s=new $g.Layer;a.add(new $g.Rect({...t,fill:"white"})),e.forEach(u=>s.add(new $g.Line({points:u.points,stroke:"black",strokeWidth:u.strokeWidth*2,tension:0,lineCap:"round",lineJoin:"round",shadowForStrokeEnabled:!1,globalCompositeOperation:u.tool==="brush"?"source-over":"destination-out"}))),o.add(a),o.add(s);const l=o.toDataURL({...t});return i.remove(),l};let DV=null,jV=null;const K6e=e=>{DV=e},Qs=()=>DV,Y6e=e=>{jV=e},NV=()=>jV,X6e=e=>{const t=window.open("");t&&e.forEach(n=>{const r=new Image;r.src=n.base64,t.document.write(n.caption),t.document.write("
"),t.document.write(r.outerHTML),t.document.write("

")})},$V=(e,t)=>Math.floor(Math.random()*(t-e+1)+e),Z6e=e=>{const t=Qs(),{generationMode:n,generationState:r,postprocessingState:i,canvasState:o,systemState:a}=e,{codeformerFidelity:s,facetoolStrength:l,facetoolType:u,hiresFix:d,hiresStrength:p,shouldRunESRGAN:m,shouldRunFacetool:y,upscalingLevel:b,upscalingStrength:w,upscalingDenoising:E}=i,{cfgScale:_,height:k,img2imgStrength:T,infillMethod:L,initialImage:O,iterations:D,perlin:I,prompt:N,negativePrompt:W,sampler:B,seamBlur:K,seamless:ne,seamSize:z,seamSteps:$,seamStrength:V,seed:X,seedWeights:Q,shouldFitToWidthHeight:G,shouldGenerateVariations:Y,shouldRandomizeSeed:ee,steps:fe,threshold:_e,tileSize:we,variationAmount:xe,width:Le,shouldUseSymmetry:Se,horizontalSymmetrySteps:Je,verticalSymmetrySteps:Xe}=r,{shouldDisplayInProgressType:tt,saveIntermediatesInterval:yt,enableImageDebugging:Be}=a,Ae={prompt:N,iterations:D,steps:fe,cfg_scale:_,threshold:_e,perlin:I,height:k,width:Le,sampler_name:B,seed:X,progress_images:tt==="full-res",progress_latents:tt==="latents",save_intermediates:yt,generation_mode:n,init_mask:""};let bt=!1,Fe=!1;if(W!==""&&(Ae.prompt=`${N} [${W}]`),Ae.seed=ee?$V(CE,_E):X,Se&&(Je>0&&(Ae.h_symmetry_time_pct=Math.max(0,Math.min(1,Je/fe))),Xe>0&&(Ae.v_symmetry_time_pct=Math.max(0,Math.min(1,Xe/fe)))),n==="txt2img"&&(Ae.hires_fix=d,d&&(Ae.strength=p)),["txt2img","img2img"].includes(n)&&(Ae.seamless=ne,m&&(bt={level:b,denoise_str:E,strength:w}),y&&(Fe={type:u,strength:l},u==="codeformer"&&(Fe.codeformer_fidelity=s))),n==="img2img"&&O&&(Ae.init_img=typeof O=="string"?O:O.url,Ae.strength=T,Ae.fit=G),n==="unifiedCanvas"&&t){const{layerState:{objects:at},boundingBoxCoordinates:jt,boundingBoxDimensions:mt,stageScale:Zt,isMaskEnabled:on,shouldPreserveMaskedArea:se,boundingBoxScaleMethod:Ie,scaledBoundingBoxDimensions:He}=o,Ue={...jt,...mt},ye=q6e(on?at.filter(hE):[],Ue);Ae.init_mask=ye,Ae.fit=!1,Ae.strength=T,Ae.invert_mask=se,Ae.bounding_box=Ue;const je=t.scale();t.scale({x:1/Zt,y:1/Zt});const vt=t.getAbsolutePosition(),Mt=t.toDataURL({x:Ue.x+vt.x,y:Ue.y+vt.y,width:Ue.width,height:Ue.height});Be&&X6e([{base64:ye,caption:"mask sent as init_mask"},{base64:Mt,caption:"image sent as init_img"}]),t.scale(je),Ae.init_img=Mt,Ae.progress_images=!1,Ie!=="none"&&(Ae.inpaint_width=He.width,Ae.inpaint_height=He.height),Ae.seam_size=z,Ae.seam_blur=K,Ae.seam_strength=V,Ae.seam_steps=$,Ae.tile_size=we,Ae.infill_method=L,Ae.force_outpaint=!1}return Y?(Ae.variation_amount=xe,Q&&(Ae.with_variations=j3e(Q))):Ae.variation_amount=0,Be&&(Ae.enable_image_debugging=Be),{generationParameters:Ae,esrganParameters:bt,facetoolParameters:Fe}};var Q6e=/d{1,4}|D{3,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|W{1,2}|[LlopSZN]|"[^"]*"|'[^']*'/g,J6e=/\b(?:[A-Z]{1,3}[A-Z][TC])(?:[-+]\d{4})?|((?:Australian )?(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time)\b/g,e_e=/[^-+\dA-Z]/g;function Ti(e,t,n,r){if(arguments.length===1&&typeof e=="string"&&!/\d/.test(e)&&(t=e,e=void 0),e=e||e===0?e:new Date,e instanceof Date||(e=new Date(e)),isNaN(e))throw TypeError("Invalid date");t=String(wI[t]||t||wI.default);var i=t.slice(0,4);(i==="UTC:"||i==="GMT:")&&(t=t.slice(4),n=!0,i==="GMT:"&&(r=!0));var o=function(){return n?"getUTC":"get"},a=function(){return e[o()+"Date"]()},s=function(){return e[o()+"Day"]()},l=function(){return e[o()+"Month"]()},u=function(){return e[o()+"FullYear"]()},d=function(){return e[o()+"Hours"]()},p=function(){return e[o()+"Minutes"]()},m=function(){return e[o()+"Seconds"]()},y=function(){return e[o()+"Milliseconds"]()},b=function(){return n?0:e.getTimezoneOffset()},w=function(){return t_e(e)},E=function(){return n_e(e)},_={d:function(){return a()},dd:function(){return xa(a())},ddd:function(){return zo.dayNames[s()]},DDD:function(){return CI({y:u(),m:l(),d:a(),_:o(),dayName:zo.dayNames[s()],short:!0})},dddd:function(){return zo.dayNames[s()+7]},DDDD:function(){return CI({y:u(),m:l(),d:a(),_:o(),dayName:zo.dayNames[s()+7]})},m:function(){return l()+1},mm:function(){return xa(l()+1)},mmm:function(){return zo.monthNames[l()]},mmmm:function(){return zo.monthNames[l()+12]},yy:function(){return String(u()).slice(2)},yyyy:function(){return xa(u(),4)},h:function(){return d()%12||12},hh:function(){return xa(d()%12||12)},H:function(){return d()},HH:function(){return xa(d())},M:function(){return p()},MM:function(){return xa(p())},s:function(){return m()},ss:function(){return xa(m())},l:function(){return xa(y(),3)},L:function(){return xa(Math.floor(y()/10))},t:function(){return d()<12?zo.timeNames[0]:zo.timeNames[1]},tt:function(){return d()<12?zo.timeNames[2]:zo.timeNames[3]},T:function(){return d()<12?zo.timeNames[4]:zo.timeNames[5]},TT:function(){return d()<12?zo.timeNames[6]:zo.timeNames[7]},Z:function(){return r?"GMT":n?"UTC":r_e(e)},o:function(){return(b()>0?"-":"+")+xa(Math.floor(Math.abs(b())/60)*100+Math.abs(b())%60,4)},p:function(){return(b()>0?"-":"+")+xa(Math.floor(Math.abs(b())/60),2)+":"+xa(Math.floor(Math.abs(b())%60),2)},S:function(){return["th","st","nd","rd"][a()%10>3?0:(a()%100-a()%10!=10)*a()%10]},W:function(){return w()},WW:function(){return xa(w())},N:function(){return E()}};return t.replace(Q6e,function(k){return k in _?_[k]():k.slice(1,k.length-1)})}var wI={default:"ddd mmm dd yyyy HH:MM:ss",shortDate:"m/d/yy",paddedShortDate:"mm/dd/yyyy",mediumDate:"mmm d, yyyy",longDate:"mmmm d, yyyy",fullDate:"dddd, mmmm d, yyyy",shortTime:"h:MM TT",mediumTime:"h:MM:ss TT",longTime:"h:MM:ss TT Z",isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:sso",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'",expiresHeaderFormat:"ddd, dd mmm yyyy HH:MM:ss Z"},zo={dayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"],timeNames:["a","p","am","pm","A","P","AM","PM"]},xa=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2;return String(t).padStart(n,"0")},CI=function(t){var n=t.y,r=t.m,i=t.d,o=t._,a=t.dayName,s=t.short,l=s===void 0?!1:s,u=new Date,d=new Date;d.setDate(d[o+"Date"]()-1);var p=new Date;p.setDate(p[o+"Date"]()+1);var m=function(){return u[o+"Date"]()},y=function(){return u[o+"Month"]()},b=function(){return u[o+"FullYear"]()},w=function(){return d[o+"Date"]()},E=function(){return d[o+"Month"]()},_=function(){return d[o+"FullYear"]()},k=function(){return p[o+"Date"]()},T=function(){return p[o+"Month"]()},L=function(){return p[o+"FullYear"]()};return b()===n&&y()===r&&m()===i?l?"Tdy":"Today":_()===n&&E()===r&&w()===i?l?"Ysd":"Yesterday":L()===n&&T()===r&&k()===i?l?"Tmw":"Tomorrow":a},t_e=function(t){var n=new Date(t.getFullYear(),t.getMonth(),t.getDate());n.setDate(n.getDate()-(n.getDay()+6)%7+3);var r=new Date(n.getFullYear(),0,4);r.setDate(r.getDate()-(r.getDay()+6)%7+3);var i=n.getTimezoneOffset()-r.getTimezoneOffset();n.setHours(n.getHours()-i);var o=(n-r)/(864e5*7);return 1+Math.floor(o)},n_e=function(t){var n=t.getDay();return n===0&&(n=7),n},r_e=function(t){return(String(t).match(J6e)||[""]).pop().replace(e_e,"").replace(/GMT\+0000/g,"UTC")};const i_e=(e,t)=>{const{dispatch:n,getState:r}=e;return{emitGenerateImage:i=>{n(wa(!0));const o=r(),{generation:a,postprocessing:s,system:l,canvas:u}=o,d={generationMode:i,generationState:a,postprocessingState:s,canvasState:u,systemState:l};n(T4e());const{generationParameters:p,esrganParameters:m,facetoolParameters:y}=Z6e(d);t.emit("generateImage",p,m,y),p.init_mask&&(p.init_mask=p.init_mask.substr(0,64).concat("...")),p.init_img&&(p.init_img=p.init_img.substr(0,64).concat("...")),n(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Image generation requested: ${JSON.stringify({...p,...m,...y})}`}))},emitRunESRGAN:i=>{n(wa(!0));const{postprocessing:{upscalingLevel:o,upscalingDenoising:a,upscalingStrength:s}}=r(),l={upscale:[o,a,s]};t.emit("runPostprocessing",i,{type:"esrgan",...l}),n(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`ESRGAN upscale requested: ${JSON.stringify({file:i.url,...l})}`}))},emitRunFacetool:i=>{n(wa(!0));const{postprocessing:{facetoolType:o,facetoolStrength:a,codeformerFidelity:s}}=r(),l={facetool_strength:a};o==="codeformer"&&(l.codeformer_fidelity=s),t.emit("runPostprocessing",i,{type:o,...l}),n(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Face restoration (${o}) requested: ${JSON.stringify({file:i.url,...l})}`}))},emitDeleteImage:i=>{const{url:o,uuid:a,category:s,thumbnail:l}=i;n(JW(i)),t.emit("deleteImage",o,l,a,s)},emitRequestImages:i=>{const o=r().gallery,{earliest_mtime:a}=o.categories[i];t.emit("requestImages",i,a)},emitRequestNewImages:i=>{const o=r().gallery,{latest_mtime:a}=o.categories[i];t.emit("requestLatestImages",i,a)},emitCancelProcessing:()=>{t.emit("cancel")},emitRequestSystemConfig:()=>{t.emit("requestSystemConfig")},emitSearchForModels:i=>{t.emit("searchForModels",i)},emitAddNewModel:i=>{t.emit("addNewModel",i)},emitDeleteModel:i=>{t.emit("deleteModel",i)},emitConvertToDiffusers:i=>{n(_4e()),t.emit("convertToDiffusers",i)},emitMergeDiffusersModels:i=>{n(k4e()),t.emit("mergeDiffusersModels",i)},emitRequestModelChange:i=>{n(C4e()),t.emit("requestModelChange",i)},emitSaveStagingAreaImageToGallery:i=>{t.emit("requestSaveStagingAreaImageToGallery",i)},emitRequestEmptyTempFolder:()=>{t.emit("requestEmptyTempFolder")}}};let mx;const o_e=new Uint8Array(16);function a_e(){if(!mx&&(mx=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!mx))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return mx(o_e)}const Hi=[];for(let e=0;e<256;++e)Hi.push((e+256).toString(16).slice(1));function s_e(e,t=0){return(Hi[e[t+0]]+Hi[e[t+1]]+Hi[e[t+2]]+Hi[e[t+3]]+"-"+Hi[e[t+4]]+Hi[e[t+5]]+"-"+Hi[e[t+6]]+Hi[e[t+7]]+"-"+Hi[e[t+8]]+Hi[e[t+9]]+"-"+Hi[e[t+10]]+Hi[e[t+11]]+Hi[e[t+12]]+Hi[e[t+13]]+Hi[e[t+14]]+Hi[e[t+15]]).toLowerCase()}const l_e=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),_I={randomUUID:l_e};function um(e,t,n){if(_I.randomUUID&&!t&&!e)return _I.randomUUID();e=e||{};const r=e.random||(e.rng||a_e)();if(r[6]=r[6]&15|64,r[8]=r[8]&63|128,t){n=n||0;for(let i=0;i<16;++i)t[n+i]=r[i];return t}return s_e(r)}const Wk=br("socketio/generateImage"),u_e=br("socketio/runESRGAN"),c_e=br("socketio/runFacetool"),d_e=br("socketio/deleteImage"),Uk=br("socketio/requestImages"),kI=br("socketio/requestNewImages"),f_e=br("socketio/cancelProcessing"),h_e=br("socketio/requestSystemConfig"),EI=br("socketio/searchForModels"),v2=br("socketio/addNewModel"),p_e=br("socketio/deleteModel"),g_e=br("socketio/convertToDiffusers"),m_e=br("socketio/mergeDiffusersModels"),FV=br("socketio/requestModelChange"),v_e=br("socketio/saveStagingAreaImageToGallery"),y_e=br("socketio/requestEmptyTempFolder"),b_e=e=>{const{dispatch:t,getState:n}=e;return{onConnect:()=>{try{t(HR(!0)),t(hh(Et.t("common.statusConnected"))),t(h_e());const r=n().gallery;r.categories.result.latest_mtime?t(kI("result")):t(Uk("result")),r.categories.user.latest_mtime?t(kI("user")):t(Uk("user"))}catch(r){console.error(r)}},onDisconnect:()=>{try{t(HR(!1)),t(hh(Et.t("common.statusDisconnected"))),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:"Disconnected from server",level:"warning"}))}catch(r){console.error(r)}},onGenerationResult:r=>{try{const i=n(),{activeTab:o}=i.ui,{shouldLoopback:a}=i.postprocessing,{boundingBox:s,generationMode:l,...u}=r,d={uuid:um(),...u};if(["txt2img","img2img"].includes(l)&&t(sm({category:"result",image:{...d,category:"result"}})),l==="unifiedCanvas"&&r.boundingBox){const{boundingBox:p}=r;t(t3e({image:{...d,category:"temp"},boundingBox:p})),i.canvas.shouldAutoSave&&t(sm({image:{...d,category:"result"},category:"result"}))}if(a)switch(xE[o]){case"img2img":{t(y0(d));break}}t(jC()),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Image generated: ${r.url}`}))}catch(i){console.error(i)}},onIntermediateResult:r=>{try{t(_3e({uuid:um(),...r,category:"result"})),r.isBase64||t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Intermediate image generated: ${r.url}`}))}catch(i){console.error(i)}},onPostprocessingResult:r=>{try{t(sm({category:"result",image:{uuid:um(),...r,category:"result"}})),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Postprocessed: ${r.url}`}))}catch(i){console.error(i)}},onProgressUpdate:r=>{try{t(wa(!0)),t(b4e(r))}catch(i){console.error(i)}},onError:r=>{const{message:i,additionalData:o}=r;try{t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Server error: ${i}`,level:"error"})),t(WR()),t(jC())}catch(a){console.error(a)}},onGalleryImages:r=>{const{images:i,areMoreImagesAvailable:o,category:a}=r,s=i.map(l=>({uuid:um(),...l}));t(C3e({images:s,areMoreImagesAvailable:o,category:a})),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Loaded ${i.length} images`}))},onProcessingCanceled:()=>{t(w4e());const{intermediateImage:r}=n().gallery;r&&(r.isBase64||(t(sm({category:"result",image:r})),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Intermediate image saved: ${r.url}`}))),t(jC())),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:"Processing canceled",level:"warning"}))},onImageDeleted:r=>{const{url:i}=r;t(JW(r));const{generation:{initialImage:o,maskPath:a}}=n();(o===i||(o==null?void 0:o.url)===i)&&t(aU()),a===i&&t(uU("")),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Image deleted: ${i}`}))},onSystemConfig:r=>{t(x4e(r)),r.infill_methods.includes("patchmatch")||t(lU(r.infill_methods[0]))},onFoundModels:r=>{const{search_folder:i,found_models:o}=r;t(NU(i)),t($U(o))},onNewModelAdded:r=>{const{new_model_name:i,model_list:o,update:a}=r;t(Ag(o)),t(wa(!1)),t(hh(Et.t("modelManager.modelAdded"))),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model Added: ${i}`,level:"info"})),t($u({title:a?`${Et.t("modelManager.modelUpdated")}: ${i}`:`${Et.t("modelManager.modelAdded")}: ${i}`,status:"success",duration:2500,isClosable:!0}))},onModelDeleted:r=>{const{deleted_model_name:i,model_list:o}=r;t(Ag(o)),t(wa(!1)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`${Et.t("modelManager.modelAdded")}: ${i}`,level:"info"})),t($u({title:`${Et.t("modelManager.modelEntryDeleted")}: ${i}`,status:"success",duration:2500,isClosable:!0}))},onModelConverted:r=>{const{converted_model_name:i,model_list:o}=r;t(Ag(o)),t(hh(Et.t("common.statusModelConverted"))),t(wa(!1)),t(_d(!0)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model converted: ${i}`,level:"info"})),t($u({title:`${Et.t("modelManager.modelConverted")}: ${i}`,status:"success",duration:2500,isClosable:!0}))},onModelsMerged:r=>{const{merged_models:i,merged_model_name:o,model_list:a}=r;t(Ag(a)),t(hh(Et.t("common.statusMergedModels"))),t(wa(!1)),t(_d(!0)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Models merged: ${i}`,level:"info"})),t($u({title:`${Et.t("modelManager.modelsMerged")}: ${o}`,status:"success",duration:2500,isClosable:!0}))},onModelChanged:r=>{const{model_name:i,model_list:o}=r;t(Ag(o)),t(hh(Et.t("common.statusModelChanged"))),t(wa(!1)),t(_d(!0)),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model changed: ${i}`,level:"info"}))},onModelChangeFailed:r=>{const{model_name:i,model_list:o}=r;t(Ag(o)),t(wa(!1)),t(_d(!0)),t(WR()),t(Pi({timestamp:Ti(new Date,"isoDateTime"),message:`Model change failed: ${i}`,level:"error"}))},onTempFolderEmptied:()=>{t($u({title:Et.t("toast.tempFoldersEmptied"),status:"success",duration:2500,isClosable:!0}))}}},x_e=()=>{const{origin:e}=new URL(window.location.href),t=pS(e,{timeout:6e4,path:`${window.location.pathname}socket.io`});let n=!1;return i=>o=>a=>{const{onConnect:s,onDisconnect:l,onError:u,onPostprocessingResult:d,onGenerationResult:p,onIntermediateResult:m,onProgressUpdate:y,onGalleryImages:b,onProcessingCanceled:w,onImageDeleted:E,onSystemConfig:_,onModelChanged:k,onFoundModels:T,onNewModelAdded:L,onModelDeleted:O,onModelConverted:D,onModelsMerged:I,onModelChangeFailed:N,onTempFolderEmptied:W}=b_e(i),{emitGenerateImage:B,emitRunESRGAN:K,emitRunFacetool:ne,emitDeleteImage:z,emitRequestImages:$,emitRequestNewImages:V,emitCancelProcessing:X,emitRequestSystemConfig:Q,emitSearchForModels:G,emitAddNewModel:Y,emitDeleteModel:ee,emitConvertToDiffusers:fe,emitMergeDiffusersModels:_e,emitRequestModelChange:we,emitSaveStagingAreaImageToGallery:xe,emitRequestEmptyTempFolder:Le}=i_e(i,t);switch(n||(t.on("connect",()=>s()),t.on("disconnect",()=>l()),t.on("error",Se=>u(Se)),t.on("generationResult",Se=>p(Se)),t.on("postprocessingResult",Se=>d(Se)),t.on("intermediateResult",Se=>m(Se)),t.on("progressUpdate",Se=>y(Se)),t.on("galleryImages",Se=>b(Se)),t.on("processingCanceled",()=>{w()}),t.on("imageDeleted",Se=>{E(Se)}),t.on("systemConfig",Se=>{_(Se)}),t.on("foundModels",Se=>{T(Se)}),t.on("newModelAdded",Se=>{L(Se)}),t.on("modelDeleted",Se=>{O(Se)}),t.on("modelConverted",Se=>{D(Se)}),t.on("modelsMerged",Se=>{I(Se)}),t.on("modelChanged",Se=>{k(Se)}),t.on("modelChangeFailed",Se=>{N(Se)}),t.on("tempFolderEmptied",()=>{W()}),n=!0),a.type){case"socketio/generateImage":{B(a.payload);break}case"socketio/runESRGAN":{K(a.payload);break}case"socketio/runFacetool":{ne(a.payload);break}case"socketio/deleteImage":{z(a.payload);break}case"socketio/requestImages":{$(a.payload);break}case"socketio/requestNewImages":{V(a.payload);break}case"socketio/cancelProcessing":{X();break}case"socketio/requestSystemConfig":{Q();break}case"socketio/searchForModels":{G(a.payload);break}case"socketio/addNewModel":{Y(a.payload);break}case"socketio/deleteModel":{ee(a.payload);break}case"socketio/convertToDiffusers":{fe(a.payload);break}case"socketio/mergeDiffusersModels":{_e(a.payload);break}case"socketio/requestModelChange":{we(a.payload);break}case"socketio/saveStagingAreaImageToGallery":{xe(a.payload);break}case"socketio/requestEmptyTempFolder":{Le();break}}o(a)}},S_e=["cursorPosition","isCanvasInitialized","doesCanvasNeedScaling"].map(e=>`canvas.${e}`),w_e=["currentIteration","currentStatus","currentStep","isCancelable","isConnected","isESRGANAvailable","isGFPGANAvailable","isProcessing","socketId","totalIterations","totalSteps","openModel","cancelOptions.cancelAfter"].map(e=>`system.${e}`),C_e=["categories","currentCategory","currentImage","currentImageUuid","shouldAutoSwitchToNewImages","shouldHoldGalleryOpen","intermediateImage"].map(e=>`gallery.${e}`),BV=SW({generation:H3e,postprocessing:q3e,gallery:A3e,system:A4e,canvas:S3e,ui:H4e,lightbox:I3e}),__e=OW.getPersistConfig({key:"root",storage:AW,rootReducer:BV,blacklist:[...S_e,...w_e,...C_e],debounce:300}),k_e=TSe(__e,BV),zV=iSe({reducer:k_e,middleware:e=>e({immutableCheck:!1,serializableCheck:!1}).concat(x_e()),devTools:{actionsDenylist:["canvas/setCursorPosition","canvas/setStageCoordinates","canvas/setStageScale","canvas/setIsDrawing","canvas/setBoundingBoxCoordinates","canvas/setBoundingBoxDimensions","canvas/setIsDrawing","canvas/addPointToCurrentLine"]}}),HV=ISe(zV),AE=S.createContext(null),Te=yxe,le=sxe;let PI;const OE=()=>({setOpenUploader:e=>{e&&(PI=e)},openUploader:PI}),Br=lt(e=>e.ui,e=>xE[e.activeTab],{memoizeOptions:{equalityCheck:Ce.isEqual}}),E_e=lt(e=>e.ui,e=>e.activeTab,{memoizeOptions:{equalityCheck:Ce.isEqual}}),fp=lt(e=>e.ui,e=>e,{memoizeOptions:{equalityCheck:Ce.isEqual}}),TI=e=>async(t,n)=>{const{imageFile:r}=e,i=n(),o=Br(i),a=new FormData;a.append("file",r,r.name),a.append("data",JSON.stringify({kind:"init"}));const l=await(await fetch(`${window.location.origin}/upload`,{method:"POST",body:a})).json(),u={uuid:um(),category:"user",...l};t(sm({image:u,category:"user"})),o==="unifiedCanvas"?t(i4(u)):o==="img2img"&&t(y0(u))};function P_e(){const{t:e}=De();return g.jsxs("div",{className:"work-in-progress nodes-work-in-progress",children:[g.jsx("h1",{children:e("common.nodes")}),g.jsx("p",{children:e("common.nodesDesc")})]})}const T_e=()=>{const{t:e}=De();return g.jsxs("div",{className:"work-in-progress post-processing-work-in-progress",children:[g.jsx("h1",{children:e("common.postProcessing")}),g.jsx("p",{children:e("common.postProcessDesc1")}),g.jsx("p",{children:e("common.postProcessDesc2")}),g.jsx("p",{children:e("common.postProcessDesc3")})]})};function M_e(){const{t:e}=De();return g.jsxs("div",{className:"work-in-progress nodes-work-in-progress",children:[g.jsx("h1",{children:e("common.training")}),g.jsxs("p",{children:[e("common.trainingDesc1"),g.jsx("br",{}),g.jsx("br",{}),e("common.trainingDesc2")]})]})}function L_e(e){const{i18n:t}=De(),n=localStorage.getItem("i18nextLng");Ke.useEffect(()=>{e()},[e]),Ke.useEffect(()=>{t.on("languageChanged",()=>{e()})},[e,t,n])}const A_e=fc({displayName:"ImageToImageIcon",viewBox:"0 0 3543 3543",path:g.jsx("g",{transform:"matrix(1.10943,0,0,1.10943,-206.981,-213.533)",children:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M688.533,2405.95L542.987,2405.95C349.532,2405.95 192.47,2248.89 192.47,2055.44L192.47,542.987C192.47,349.532 349.532,192.47 542.987,192.47L2527.88,192.47C2721.33,192.47 2878.4,349.532 2878.4,542.987L2878.4,1172.79L3023.94,1172.79C3217.4,1172.79 3374.46,1329.85 3374.46,1523.3C3374.46,1523.3 3374.46,3035.75 3374.46,3035.75C3374.46,3229.21 3217.4,3386.27 3023.94,3386.27L1039.05,3386.27C845.595,3386.27 688.533,3229.21 688.533,3035.75L688.533,2405.95ZM3286.96,2634.37L3286.96,1523.3C3286.96,1378.14 3169.11,1260.29 3023.94,1260.29C3023.94,1260.29 1039.05,1260.29 1039.05,1260.29C893.887,1260.29 776.033,1378.14 776.033,1523.3L776.033,2489.79L1440.94,1736.22L2385.83,2775.59L2880.71,2200.41L3286.96,2634.37ZM2622.05,1405.51C2778.5,1405.51 2905.51,1532.53 2905.51,1688.98C2905.51,1845.42 2778.5,1972.44 2622.05,1972.44C2465.6,1972.44 2338.58,1845.42 2338.58,1688.98C2338.58,1532.53 2465.6,1405.51 2622.05,1405.51ZM2790.9,1172.79L1323.86,1172.79L944.882,755.906L279.97,1509.47L279.97,542.987C279.97,397.824 397.824,279.97 542.987,279.97C542.987,279.97 2527.88,279.97 2527.88,279.97C2673.04,279.97 2790.9,397.824 2790.9,542.987L2790.9,1172.79ZM2125.98,425.197C2282.43,425.197 2409.45,552.213 2409.45,708.661C2409.45,865.11 2282.43,992.126 2125.98,992.126C1969.54,992.126 1842.52,865.11 1842.52,708.661C1842.52,552.213 1969.54,425.197 2125.98,425.197Z"})})}),O_e=fc({displayName:"NodesIcon",viewBox:"0 0 3543 3543",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M3543.31,770.787C3543.31,515.578 3336.11,308.38 3080.9,308.38L462.407,308.38C207.197,308.38 0,515.578 0,770.787L0,2766.03C0,3021.24 207.197,3228.44 462.407,3228.44L3080.9,3228.44C3336.11,3228.44 3543.31,3021.24 3543.31,2766.03C3543.31,2766.03 3543.31,770.787 3543.31,770.787ZM3427.88,770.787L3427.88,2766.03C3427.88,2957.53 3272.4,3113.01 3080.9,3113.01C3080.9,3113.01 462.407,3113.01 462.407,3113.01C270.906,3113.01 115.431,2957.53 115.431,2766.03L115.431,770.787C115.431,579.286 270.906,423.812 462.407,423.812L3080.9,423.812C3272.4,423.812 3427.88,579.286 3427.88,770.787ZM1214.23,1130.69L1321.47,1130.69C1324.01,1130.69 1326.54,1130.53 1329.05,1130.2C1329.05,1130.2 1367.3,1125.33 1397.94,1149.8C1421.63,1168.72 1437.33,1204.3 1437.33,1265.48L1437.33,2078.74L1220.99,2078.74C1146.83,2078.74 1086.61,2138.95 1086.61,2213.12L1086.61,2762.46C1086.61,2836.63 1146.83,2896.84 1220.99,2896.84L1770.34,2896.84C1844.5,2896.84 1904.71,2836.63 1904.71,2762.46L1904.71,2213.12C1904.71,2138.95 1844.5,2078.74 1770.34,2078.74L1554,2078.74L1554,1604.84C1625.84,1658.19 1703.39,1658.1 1703.39,1658.1C1703.54,1658.1 1703.69,1658.11 1703.84,1658.11L2362.2,1658.11L2362.2,1874.44C2362.2,1948.61 2422.42,2008.82 2496.58,2008.82L3045.93,2008.82C3120.09,2008.82 3180.3,1948.61 3180.3,1874.44L3180.3,1325.1C3180.3,1250.93 3120.09,1190.72 3045.93,1190.72L2496.58,1190.72C2422.42,1190.72 2362.2,1250.93 2362.2,1325.1L2362.2,1558.97L2362.2,1541.44L1704.23,1541.44C1702.2,1541.37 1650.96,1539.37 1609.51,1499.26C1577.72,1468.49 1554,1416.47 1554,1331.69L1554,1265.48C1554,1153.86 1513.98,1093.17 1470.76,1058.64C1411.24,1011.1 1338.98,1012.58 1319.15,1014.03L1214.23,1014.03L1214.23,796.992C1214.23,722.828 1154.02,662.617 1079.85,662.617L530.507,662.617C456.343,662.617 396.131,722.828 396.131,796.992L396.131,1346.34C396.131,1420.5 456.343,1480.71 530.507,1480.71L1079.85,1480.71C1154.02,1480.71 1214.23,1420.5 1214.23,1346.34L1214.23,1130.69Z"})}),R_e=fc({displayName:"PostprocessingIcon",viewBox:"0 0 3543 3543",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M709.477,1596.53L992.591,1275.66L2239.09,2646.81L2891.95,1888.03L3427.88,2460.51L3427.88,994.78C3427.88,954.66 3421.05,916.122 3408.5,880.254L3521.9,855.419C3535.8,899.386 3543.31,946.214 3543.31,994.78L3543.31,2990.02C3543.31,3245.23 3336.11,3452.43 3080.9,3452.43C3080.9,3452.43 462.407,3452.43 462.407,3452.43C207.197,3452.43 -0,3245.23 -0,2990.02L-0,994.78C-0,739.571 207.197,532.373 462.407,532.373L505.419,532.373L504.644,532.546L807.104,600.085C820.223,601.729 832.422,607.722 841.77,617.116C850.131,625.517 855.784,636.21 858.055,647.804L462.407,647.804C270.906,647.804 115.431,803.279 115.431,994.78L115.431,2075.73L-0,2101.5L115.431,2127.28L115.431,2269.78L220.47,2150.73L482.345,2209.21C503.267,2211.83 522.722,2221.39 537.63,2236.37C552.538,2251.35 562.049,2270.9 564.657,2291.93L671.84,2776.17L779.022,2291.93C781.631,2270.9 791.141,2251.35 806.05,2236.37C820.958,2221.39 840.413,2211.83 861.334,2209.21L1353.15,2101.5L861.334,1993.8C840.413,1991.18 820.958,1981.62 806.05,1966.64C791.141,1951.66 781.631,1932.11 779.022,1911.08L709.477,1596.53ZM671.84,1573.09L725.556,2006.07C726.863,2016.61 731.63,2026.4 739.101,2033.91C746.573,2041.42 756.323,2046.21 766.808,2047.53L1197.68,2101.5L766.808,2155.48C756.323,2156.8 746.573,2161.59 739.101,2169.09C731.63,2176.6 726.863,2186.4 725.556,2196.94L671.84,2629.92L618.124,2196.94C616.817,2186.4 612.05,2176.6 604.579,2169.09C597.107,2161.59 587.357,2156.8 576.872,2155.48L146.001,2101.5L576.872,2047.53C587.357,2046.21 597.107,2041.42 604.579,2033.91C612.05,2026.4 616.817,2016.61 618.124,2006.07L671.84,1573.09ZM609.035,1710.36L564.657,1911.08C562.049,1932.11 552.538,1951.66 537.63,1966.64C522.722,1981.62 503.267,1991.18 482.345,1993.8L328.665,2028.11L609.035,1710.36ZM2297.12,938.615L2451.12,973.003C2480.59,976.695 2507.99,990.158 2528.99,1011.26C2549.99,1032.37 2563.39,1059.9 2567.07,1089.52L2672.73,1566.9C2634.5,1580.11 2593.44,1587.29 2550.72,1587.29C2344.33,1587.29 2176.77,1419.73 2176.77,1213.34C2176.77,1104.78 2223.13,1006.96 2297.12,938.615ZM2718.05,76.925L2793.72,686.847C2795.56,701.69 2802.27,715.491 2812.8,726.068C2823.32,736.644 2837.06,743.391 2851.83,745.242L3458.78,821.28L2851.83,897.318C2837.06,899.168 2823.32,905.916 2812.8,916.492C2802.27,927.068 2795.56,940.87 2793.72,955.712L2718.05,1565.63L2642.38,955.712C2640.54,940.87 2633.83,927.068 2623.3,916.492C2612.78,905.916 2599.04,899.168 2584.27,897.318L1977.32,821.28L2584.27,745.242C2599.04,743.391 2612.78,736.644 2623.3,726.068C2633.83,715.491 2640.54,701.69 2642.38,686.847L2718.05,76.925ZM2883.68,1043.06C2909.88,1094.13 2924.67,1152.02 2924.67,1213.34C2924.67,1335.4 2866.06,1443.88 2775.49,1512.14L2869.03,1089.52C2871.07,1073.15 2876.07,1057.42 2883.68,1043.06ZM925.928,201.2L959.611,472.704C960.431,479.311 963.42,485.455 968.105,490.163C972.79,494.871 978.904,497.875 985.479,498.698L1255.66,532.546L985.479,566.395C978.904,567.218 972.79,570.222 968.105,574.93C963.42,579.638 960.431,585.781 959.611,592.388L925.928,863.893L892.245,592.388C891.425,585.781 888.436,579.638 883.751,574.93C879.066,570.222 872.952,567.218 866.378,566.395L596.195,532.546L866.378,498.698C872.952,497.875 879.066,494.871 883.751,490.163C888.436,485.455 891.425,479.311 892.245,472.704L925.928,201.2ZM2864.47,532.373L3080.9,532.373C3258.7,532.373 3413.2,632.945 3490.58,780.281L3319.31,742.773C3257.14,683.925 3173.2,647.804 3080.9,647.804L2927.07,647.804C2919.95,642.994 2913.25,637.473 2907.11,631.298C2886.11,610.194 2872.71,582.655 2869.03,553.04L2864.47,532.373ZM1352.36,532.373L2571.64,532.373L2567.07,553.04C2563.39,582.655 2549.99,610.194 2528.99,631.298C2522.85,637.473 2516.16,642.994 2509.03,647.804L993.801,647.804C996.072,636.21 1001.73,625.517 1010.09,617.116C1019.43,607.722 1031.63,601.729 1044.75,600.085L1353.15,532.546L1352.36,532.373Z"})}),I_e=fc({displayName:"TextToImageIcon",viewBox:"0 0 3543 3543",path:g.jsx("g",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",transform:"matrix(1.11667,0,0,1.1066,-231.131,-213.062)",children:g.jsx("path",{d:"M2209.59,1137.35L2209.59,1098.17C2177.13,1108.99 2125.74,1121.91 2055.41,1136.94C2054.77,1137.08 2054.14,1137.21 2053.49,1137.35L1662.79,1137.35C1687.75,1101.98 1720.8,1074.35 1761.93,1054.44C1808.52,1031.9 1875.69,1012.22 1963.45,995.386C2081.86,973.146 2163.91,952.409 2209.59,933.174L2209.59,907.929C2209.59,859.241 2197.57,824.529 2173.53,803.792C2149.48,783.054 2104.1,772.686 2037.38,772.686C1992.3,772.686 1957.14,781.552 1931.89,799.284C1906.64,817.015 1886.21,848.121 1870.58,892.601L1640.67,851.127C1666.51,758.56 1710.99,690.037 1774.11,645.557C1837.22,601.077 1930.99,578.837 2055.41,578.837C2168.42,578.837 2252.57,592.211 2307.87,618.959C2363.17,645.707 2402.09,679.668 2424.63,720.842C2447.17,762.016 2458.44,837.602 2458.44,947.6L2456.7,1137.35L3021.34,1137.35C3214.79,1137.35 3371.86,1294.41 3371.86,1487.87C3371.86,1487.87 3371.86,3000.32 3371.86,3000.32C3371.86,3193.78 3214.79,3350.84 3021.34,3350.84C3021.34,3350.84 1036.45,3350.84 1036.45,3350.84C842.991,3350.84 685.93,3193.78 685.93,3000.32L685.93,1487.87C685.93,1400.21 718.174,1320.03 771.448,1258.54L772.123,1257.76L607.408,1257.76L498.311,1558L215.202,1558L730.028,236.22L1012.24,236.22L1373.06,1137.35L2209.59,1137.35ZM3284.36,2598.93L3284.36,1487.87C3284.36,1342.71 3166.5,1224.85 3021.34,1224.85C3021.34,1224.85 1036.45,1224.85 1036.45,1224.85C891.284,1224.85 773.43,1342.71 773.43,1487.87L773.43,2454.35L1438.34,1700.79L2383.22,2740.16L2878.11,2164.98L3284.36,2598.93ZM2619.44,1370.08C2775.89,1370.08 2902.91,1497.1 2902.91,1653.54C2902.91,1809.99 2775.89,1937.01 2619.44,1937.01C2462.99,1937.01 2335.98,1809.99 2335.98,1653.54C2335.98,1497.1 2462.99,1370.08 2619.44,1370.08ZM772.877,1256.89L772.849,1256.93L773.167,1256.57L772.877,1256.89ZM773.634,1256.04L773.563,1256.12L773.985,1255.64L773.634,1256.04ZM774.394,1255.18L774.276,1255.31L774.746,1254.78L774.394,1255.18ZM775.157,1254.32L774.988,1254.51L775.493,1253.95L775.157,1254.32ZM775.923,1253.47L775.698,1253.72L776.237,1253.12L775.923,1253.47ZM776.691,1252.62L776.403,1252.94L776.979,1252.3L776.691,1252.62ZM777.462,1251.77L777.098,1252.17L777.723,1251.49L777.462,1251.77ZM925.081,1155.44C868.026,1174.57 817.508,1207.99 777.775,1251.43C817.511,1207.99 868.031,1174.57 925.081,1155.44ZM925.646,1155.25L925.108,1155.43L926.103,1155.1L925.646,1155.25ZM935.286,1152.2C932.214,1153.12 929.159,1154.09 926.13,1155.09C929.165,1154.09 932.219,1153.12 935.286,1152.2ZM935.716,1152.07L935.384,1152.17L936.292,1151.89L935.716,1152.07ZM936.843,1151.73L936.451,1151.85L937.327,1151.59L936.843,1151.73ZM937.972,1151.4L937.514,1151.53L938.377,1151.28L937.972,1151.4ZM939.102,1151.07L938.57,1151.22L939.438,1150.97L939.102,1151.07ZM940.233,1150.74L939.613,1150.92L940.505,1150.67L940.233,1150.74ZM946.659,1148.98C944.639,1149.51 942.626,1150.07 940.626,1150.63C942.631,1150.06 944.642,1149.51 946.659,1148.98ZM947.056,1148.87L946.829,1148.93L947.659,1148.71L947.056,1148.87ZM948.198,1148.57L947.919,1148.65L948.705,1148.44L948.198,1148.57ZM949.342,1148.28L949.008,1148.37L949.771,1148.17L949.342,1148.28ZM950.488,1147.99L950.096,1148.09L950.848,1147.9L950.488,1147.99ZM951.635,1147.7L951.182,1147.81L951.932,1147.63L951.635,1147.7ZM952.783,1147.42L952.262,1147.55L953.022,1147.36L952.783,1147.42ZM953.933,1147.14L953.327,1147.28L954.115,1147.09L953.933,1147.14ZM958.213,1146.13C956.927,1146.42 955.644,1146.73 954.354,1147.04C955.637,1146.73 956.923,1146.43 958.213,1146.13ZM958.547,1146.06L958.409,1146.09L959.174,1145.91L958.547,1146.06ZM959.704,1145.79L959.517,1145.84L960.229,1145.68L959.704,1145.79ZM960.863,1145.54L960.626,1145.59L961.311,1145.44L960.863,1145.54ZM962.023,1145.28L961.736,1145.35L962.406,1145.2L962.023,1145.28ZM963.184,1145.03L962.846,1145.11L963.508,1144.97L963.184,1145.03ZM964.347,1144.79L963.956,1144.87L964.615,1144.73L964.347,1144.79ZM965.511,1144.55L965.066,1144.64L965.725,1144.5L965.511,1144.55ZM966.677,1144.31L966.172,1144.41L966.838,1144.28L966.677,1144.31ZM967.844,1144.08L967.269,1144.19L967.953,1144.05L967.844,1144.08ZM970.183,1143.62C969.793,1143.69 969.403,1143.77 969.013,1143.85L969.055,1143.84C969.413,1143.77 969.771,1143.7 970.129,1143.63L970.183,1143.62ZM971.354,1143.4L971.245,1143.42L971.882,1143.3L971.354,1143.4ZM972.526,1143.18L972.37,1143.21L972.987,1143.09L972.526,1143.18ZM973.7,1142.96L973.496,1143L974.103,1142.89L973.7,1142.96ZM974.876,1142.75L974.624,1142.8L975.225,1142.69L974.876,1142.75ZM976.052,1142.55L975.754,1142.6L976.349,1142.49L976.052,1142.55ZM977.23,1142.34L976.885,1142.4L977.476,1142.3L977.23,1142.34ZM978.41,1142.14L978.019,1142.21L978.605,1142.11L978.41,1142.14ZM979.59,1141.95L979.156,1142.02L979.736,1141.92L979.59,1141.95ZM980.772,1141.76L980.299,1141.83L980.868,1141.74L980.772,1141.76ZM981.955,1141.57L981.464,1141.65L982.002,1141.56L981.955,1141.57ZM983.14,1141.39L983.1,1141.39L983.605,1141.32L983.14,1141.39ZM984.326,1141.21L984.239,1141.22L984.778,1141.14L984.326,1141.21ZM985.513,1141.03L985.379,1141.05L985.928,1140.97L985.513,1141.03ZM986.702,1140.86L986.521,1140.89L987.073,1140.81L986.702,1140.86ZM987.891,1140.69L987.665,1140.73L988.218,1140.65L987.891,1140.69ZM989.082,1140.53L988.811,1140.57L989.363,1140.49L989.082,1140.53ZM990.275,1140.37L989.96,1140.41L990.508,1140.34L990.275,1140.37ZM991.468,1140.22L991.113,1140.26L991.654,1140.19L991.468,1140.22ZM992.663,1140.07L992.273,1140.12L992.8,1140.05L992.663,1140.07ZM993.859,1139.92L993.447,1139.97L993.948,1139.91L993.859,1139.92ZM995.056,1139.78L994.671,1139.82L995.097,1139.77L995.056,1139.78ZM996.255,1139.64L996.23,1139.64L996.578,1139.6L996.255,1139.64ZM997.454,1139.5L997.383,1139.51L997.852,1139.46L997.454,1139.5ZM998.655,1139.37L998.537,1139.38L999.041,1139.33L998.655,1139.37ZM999.857,1139.24L999.693,1139.26L1000.21,1139.21L999.857,1139.24ZM1001.06,1139.12L1000.85,1139.14L1001.38,1139.09L1001.06,1139.12ZM1002.26,1139L1002.01,1139.03L1002.54,1138.98L1002.26,1139ZM1003.47,1138.89L1003.18,1138.91L1003.7,1138.87L1003.47,1138.89ZM1004.68,1138.78L1004.34,1138.81L1004.86,1138.76L1004.68,1138.78ZM1005.89,1138.67L1005.52,1138.7L1006.02,1138.66L1005.89,1138.67ZM1007.1,1138.57L1006.71,1138.6L1007.18,1138.56L1007.1,1138.57ZM1008.31,1138.47L1007.96,1138.5L1008.35,1138.46L1008.31,1138.47ZM1009.52,1138.37L1009.5,1138.38L1009.72,1138.36L1009.52,1138.37ZM1010.73,1138.28L1010.67,1138.29L1011.1,1138.26L1010.73,1138.28ZM1011.94,1138.2L1011.84,1138.2L1012.32,1138.17L1011.94,1138.2ZM1013.16,1138.12L1013,1138.13L1013.51,1138.09L1013.16,1138.12ZM1014.37,1138.04L1014.17,1138.05L1014.69,1138.02L1014.37,1138.04ZM1015.59,1137.96L1015.35,1137.98L1015.86,1137.95L1015.59,1137.96ZM1016.81,1137.89L1016.52,1137.91L1017.04,1137.88L1016.81,1137.89ZM1018.03,1137.83L1017.7,1137.85L1018.21,1137.82L1018.03,1137.83ZM1019.25,1137.77L1018.89,1137.79L1019.39,1137.76L1019.25,1137.77ZM1020.47,1137.71L1020.1,1137.73L1020.56,1137.71L1020.47,1137.71ZM1021.69,1137.66L1021.36,1137.67L1021.74,1137.66L1021.69,1137.66ZM1022.92,1137.61L1022.91,1137.61L1023.02,1137.61L1022.92,1137.61ZM1024.14,1137.57L1024.09,1137.57L1024.49,1137.55L1024.14,1137.57ZM1025.37,1137.52L1025.27,1137.53L1025.74,1137.51L1025.37,1137.52ZM1026.6,1137.49L1026.45,1137.49L1026.94,1137.48L1026.6,1137.49ZM1027.82,1137.46L1027.63,1137.46L1028.14,1137.45L1027.82,1137.46ZM1029.05,1137.43L1028.81,1137.43L1029.33,1137.42L1029.05,1137.43ZM1030.28,1137.41L1030,1137.41L1030.52,1137.4L1030.28,1137.41ZM1031.51,1137.39L1031.19,1137.39L1031.7,1137.38L1031.51,1137.39ZM1032.75,1137.37L1032.39,1137.38L1032.89,1137.37L1032.75,1137.37ZM1033.98,1137.36L1033.61,1137.36L1034.07,1137.36L1033.98,1137.36ZM1035.21,1137.35L1034.87,1137.36L1035.26,1137.35L1035.21,1137.35ZM1050.1,1035.06L867.977,544.575L689.455,1035.06L1050.1,1035.06Z"})})}),D_e=fc({displayName:"TrainingIcon",viewBox:"0 0 3544 3544",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M0,768.593L0,2774.71C0,2930.6 78.519,3068.3 198.135,3150.37C273.059,3202.68 364.177,3233.38 462.407,3233.38C462.407,3233.38 3080.9,3233.38 3080.9,3233.38C3179.13,3233.38 3270.25,3202.68 3345.17,3150.37C3464.79,3068.3 3543.31,2930.6 3543.31,2774.71L3543.31,768.593C3543.31,517.323 3339.31,313.324 3088.04,313.324L455.269,313.324C203.999,313.324 0,517.323 0,768.593ZM3427.88,775.73L3427.88,2770.97C3427.88,2962.47 3272.4,3117.95 3080.9,3117.95L462.407,3117.95C270.906,3117.95 115.431,2962.47 115.431,2770.97C115.431,2770.97 115.431,775.73 115.431,775.73C115.431,584.229 270.906,428.755 462.407,428.755C462.407,428.755 3080.9,428.755 3080.9,428.755C3272.4,428.755 3427.88,584.229 3427.88,775.73ZM796.24,1322.76L796.24,1250.45C796.24,1199.03 836.16,1157.27 885.331,1157.27C885.331,1157.27 946.847,1157.27 946.847,1157.27C996.017,1157.27 1035.94,1199.03 1035.94,1250.45L1035.94,1644.81L2507.37,1644.81L2507.37,1250.45C2507.37,1199.03 2547.29,1157.27 2596.46,1157.27C2596.46,1157.27 2657.98,1157.27 2657.98,1157.27C2707.15,1157.27 2747.07,1199.03 2747.07,1250.45L2747.07,1322.76C2756.66,1319.22 2767.02,1317.29 2777.83,1317.29C2777.83,1317.29 2839.34,1317.29 2839.34,1317.29C2888.51,1317.29 2928.43,1357.21 2928.43,1406.38L2928.43,1527.32C2933.51,1526.26 2938.77,1525.71 2944.16,1525.71L2995.3,1525.71C3036.18,1525.71 3069.37,1557.59 3069.37,1596.86C3069.37,1596.86 3069.37,1946.44 3069.37,1946.44C3069.37,1985.72 3036.18,2017.6 2995.3,2017.6C2995.3,2017.6 2944.16,2017.6 2944.16,2017.6C2938.77,2017.6 2933.51,2017.04 2928.43,2015.99L2928.43,2136.92C2928.43,2186.09 2888.51,2226.01 2839.34,2226.01L2777.83,2226.01C2767.02,2226.01 2756.66,2224.08 2747.07,2220.55L2747.07,2292.85C2747.07,2344.28 2707.15,2386.03 2657.98,2386.03C2657.98,2386.03 2596.46,2386.03 2596.46,2386.03C2547.29,2386.03 2507.37,2344.28 2507.37,2292.85L2507.37,1898.5L1035.94,1898.5L1035.94,2292.85C1035.94,2344.28 996.017,2386.03 946.847,2386.03C946.847,2386.03 885.331,2386.03 885.331,2386.03C836.16,2386.03 796.24,2344.28 796.24,2292.85L796.24,2220.55C786.651,2224.08 776.29,2226.01 765.482,2226.01L703.967,2226.01C654.796,2226.01 614.876,2186.09 614.876,2136.92L614.876,2015.99C609.801,2017.04 604.539,2017.6 599.144,2017.6C599.144,2017.6 548.003,2017.6 548.003,2017.6C507.125,2017.6 473.937,1985.72 473.937,1946.44C473.937,1946.44 473.937,1596.86 473.937,1596.86C473.937,1557.59 507.125,1525.71 548.003,1525.71L599.144,1525.71C604.539,1525.71 609.801,1526.26 614.876,1527.32L614.876,1406.38C614.876,1357.21 654.796,1317.29 703.967,1317.29C703.967,1317.29 765.482,1317.29 765.482,1317.29C776.29,1317.29 786.651,1319.22 796.24,1322.76ZM977.604,1250.45C977.604,1232.7 963.822,1218.29 946.847,1218.29L885.331,1218.29C868.355,1218.29 854.573,1232.7 854.573,1250.45L854.573,2292.85C854.573,2310.61 868.355,2325.02 885.331,2325.02L946.847,2325.02C963.822,2325.02 977.604,2310.61 977.604,2292.85L977.604,1250.45ZM2565.7,1250.45C2565.7,1232.7 2579.49,1218.29 2596.46,1218.29L2657.98,1218.29C2674.95,1218.29 2688.73,1232.7 2688.73,1250.45L2688.73,2292.85C2688.73,2310.61 2674.95,2325.02 2657.98,2325.02L2596.46,2325.02C2579.49,2325.02 2565.7,2310.61 2565.7,2292.85L2565.7,1250.45ZM673.209,1406.38L673.209,2136.92C673.209,2153.9 686.991,2167.68 703.967,2167.68L765.482,2167.68C782.458,2167.68 796.24,2153.9 796.24,2136.92L796.24,1406.38C796.24,1389.41 782.458,1375.63 765.482,1375.63L703.967,1375.63C686.991,1375.63 673.209,1389.41 673.209,1406.38ZM2870.1,1406.38L2870.1,2136.92C2870.1,2153.9 2856.32,2167.68 2839.34,2167.68L2777.83,2167.68C2760.85,2167.68 2747.07,2153.9 2747.07,2136.92L2747.07,1406.38C2747.07,1389.41 2760.85,1375.63 2777.83,1375.63L2839.34,1375.63C2856.32,1375.63 2870.1,1389.41 2870.1,1406.38ZM614.876,1577.5C610.535,1574.24 605.074,1572.3 599.144,1572.3L548.003,1572.3C533.89,1572.3 522.433,1583.3 522.433,1596.86L522.433,1946.44C522.433,1960 533.89,1971.01 548.003,1971.01L599.144,1971.01C605.074,1971.01 610.535,1969.07 614.876,1965.81L614.876,1577.5ZM2928.43,1965.81L2928.43,1577.5C2932.77,1574.24 2938.23,1572.3 2944.16,1572.3L2995.3,1572.3C3009.42,1572.3 3020.87,1583.3 3020.87,1596.86L3020.87,1946.44C3020.87,1960 3009.42,1971.01 2995.3,1971.01L2944.16,1971.01C2938.23,1971.01 2932.77,1969.07 2928.43,1965.81ZM2507.37,1703.14L1035.94,1703.14L1035.94,1840.16L2507.37,1840.16L2507.37,1898.38L2507.37,1659.46L2507.37,1703.14Z"})}),j_e=fc({displayName:"UnifiedCanvasIcon",viewBox:"0 0 3544 3544",path:g.jsx("path",{fill:"currentColor",fillRule:"evenodd",clipRule:"evenodd",d:"M3543.31,770.787C3543.31,515.578 3336.11,308.38 3080.9,308.38L462.407,308.38C207.197,308.38 -0,515.578 -0,770.787L-0,2766.03C-0,3021.24 207.197,3228.44 462.407,3228.44L3080.9,3228.44C3336.11,3228.44 3543.31,3021.24 3543.31,2766.03C3543.31,2766.03 3543.31,770.787 3543.31,770.787ZM922.933,3113.01L462.407,3113.01C437.741,3113.01 413.674,3110.43 390.453,3105.52L390.453,2899.11L922.933,2899.11L922.933,3113.01ZM947.933,2899.11L947.933,3113.01L1480.41,3113.01L1480.41,2899.11L947.933,2899.11ZM1505.41,2899.11L1505.41,3113.01L2037.89,3113.01L2037.89,2899.11L1505.41,2899.11ZM2062.89,2899.11L2062.89,3113.01L2595.37,3113.01L2595.37,2899.11L2062.89,2899.11ZM3152.85,3105.52C3129.63,3110.43 3105.57,3113.01 3080.9,3113.01L2620.37,3113.01L2620.37,2899.11L3152.85,2899.11L3152.85,3105.52ZM365.453,3099.26L365.408,3099.24C354.521,3096.07 343.79,3092.37 333.266,3088.14C315.377,3080.95 298.094,3072.26 281.651,3062.2C263.114,3050.85 245.648,3037.77 229.544,3023.17C213.34,3008.49 198.518,2992.28 185.34,2974.83C174.102,2959.94 164.06,2944.16 155.353,2927.66C150.517,2918.5 146.102,2909.13 142.102,2899.57L141.91,2899.11L365.453,2899.11L365.453,3099.26ZM3401.4,2899.11C3361.33,2995.39 3279.12,3069.8 3177.85,3099.26L3177.85,2899.11L3401.4,2899.11ZM132.624,2874.11C121.465,2840.08 115.431,2803.76 115.431,2766.03L115.431,2341.63L365.453,2341.63L365.453,2874.11L132.624,2874.11ZM922.933,918.103L922.933,669.193L390.453,669.193L390.453,1201.67L731.014,1201.67L731.014,1226.67L390.453,1226.67L390.453,1759.15L731.014,1759.15L731.014,1784.15L390.453,1784.15L390.453,2316.63L731.014,2316.63L731.014,2341.63L390.453,2341.63L390.453,2874.11L922.933,2874.11L922.933,2625.2C931.122,2627.1 939.463,2628.6 947.933,2629.66L947.933,2874.11L1480.41,2874.11L1480.41,2631.62L1505.41,2631.62L1505.41,2874.11L2037.89,2874.11L2037.89,2631.62L2062.89,2631.62L2062.89,2874.11L2595.37,2874.11L2595.37,2629.66C2603.85,2628.6 2612.18,2627.1 2620.37,2625.2L2620.37,2874.11L3152.85,2874.11L3152.85,2341.63L2812.29,2341.63L2812.29,2316.63L3152.85,2316.63L3152.85,1784.15L2812.29,1784.15L2812.29,1759.15L3152.85,1759.15L3152.85,1226.67L2812.29,1226.67L2812.29,1201.67L3152.85,1201.67L3152.85,669.193L2620.37,669.193L2620.37,918.103C2612.18,916.203 2603.84,914.708 2595.37,913.642L2595.37,669.193L2062.89,669.193L2062.89,911.688L2037.89,911.688L2037.89,669.193L1505.41,669.193L1505.41,911.688L1480.41,911.688L1480.41,669.193L947.933,669.193L947.933,913.642C939.462,914.708 931.123,916.203 922.933,918.103ZM3427.88,2341.63L3427.88,2766.03C3427.88,2803.76 3421.84,2840.08 3410.68,2874.11L3177.85,2874.11L3177.85,2341.63L3427.88,2341.63ZM2494.01,2603.04L2524.53,2603.04C2541.26,2603.04 2557.62,2601.44 2573.47,2598.39L2598.02,2593.66L2588.56,2544.56L2564.01,2549.29C2551.23,2551.75 2538.03,2553.04 2524.53,2553.04L2494.01,2553.04L2494.01,2603.04ZM1294.01,2603.04L1394.01,2603.04L1394.01,2553.04L1294.01,2553.04L1294.01,2603.04ZM1894.01,2603.04L1994.01,2603.04L1994.01,2553.04L1894.01,2553.04L1894.01,2603.04ZM2194.01,2603.04L2294.01,2603.04L2294.01,2553.04L2194.01,2553.04L2194.01,2603.04ZM1144.01,2603.04L1244.01,2603.04L1244.01,2553.04L1144.01,2553.04L1144.01,2603.04ZM1444.01,2603.04L1544.01,2603.04L1544.01,2553.04L1444.01,2553.04L1444.01,2603.04ZM1594.01,2603.04L1694.01,2603.04L1694.01,2553.04L1594.01,2553.04L1594.01,2603.04ZM2344.01,2603.04L2444.01,2603.04L2444.01,2553.04L2344.01,2553.04L2344.01,2603.04ZM2044.01,2603.04L2144.01,2603.04L2144.01,2553.04L2044.01,2553.04L2044.01,2603.04ZM994.01,2603.04L1094.01,2603.04L1094.01,2553.04L994.01,2553.04L994.01,2603.04ZM1744.01,2603.04L1844.01,2603.04L1844.01,2553.04L1744.01,2553.04L1744.01,2603.04ZM864.145,2551.46C878.835,2562.5 894.741,2572 911.624,2579.74L934.352,2590.15L955.18,2544.7L932.452,2534.28C918.844,2528.05 906.024,2520.39 894.185,2511.49L874.199,2496.47L844.16,2536.44L864.145,2551.46ZM2674.44,2554.92C2689.46,2544.16 2703.28,2531.82 2715.65,2518.14L2732.42,2499.61L2695.35,2466.06L2678.58,2484.6C2668.59,2495.63 2657.44,2505.59 2645.32,2514.28L2625,2528.84L2654.12,2569.48L2674.44,2554.92ZM865.632,1911.31L1339.59,1374.15L2030.89,2134.59L2392.97,1713.77L2677.68,2017.9L2677.68,2324.93C2677.68,2424.23 2597.06,2504.85 2497.76,2504.85C2497.76,2504.85 1045.55,2504.85 1045.55,2504.85C946.251,2504.85 865.632,2424.23 865.632,2324.93L865.632,1911.31ZM771.251,2417.22C776.455,2435.14 783.552,2452.26 792.313,2468.35L804.27,2490.3L848.18,2466.39L836.223,2444.43C829.171,2431.49 823.457,2417.7 819.268,2403.28L812.297,2379.27L764.28,2393.21L771.251,2417.22ZM2770.36,2422.83C2775.83,2405.47 2779.52,2387.33 2781.2,2368.61L2783.43,2343.71L2733.64,2339.24L2731.4,2364.14C2730.05,2379.21 2727.08,2393.82 2722.67,2407.79L2715.15,2431.63L2762.84,2446.67L2770.36,2422.83ZM761.068,2236.12L761.068,2336.12L811.068,2336.12L811.068,2236.12L761.068,2236.12ZM3177.85,1784.15L3177.85,2316.63L3427.88,2316.63L3427.88,1784.15L3177.85,1784.15ZM115.431,1784.15L115.431,2316.63L365.453,2316.63L365.453,1784.15L115.431,1784.15ZM2782.24,2291.41L2782.24,2191.41L2732.24,2191.41L2732.24,2291.41L2782.24,2291.41ZM761.068,2086.12L761.068,2186.12L811.068,2186.12L811.068,2086.12L761.068,2086.12ZM2782.24,2141.41L2782.24,2041.4L2732.24,2041.4L2732.24,2141.41L2782.24,2141.41ZM761.068,1936.12L761.068,2036.12L811.068,2036.12L811.068,1936.12L761.068,1936.12ZM2782.24,1991.4L2782.24,1891.4L2732.24,1891.4L2732.24,1991.4L2782.24,1991.4ZM761.068,1786.12L761.068,1886.12L811.068,1886.12L811.068,1786.12L761.068,1786.12ZM2782.24,1841.4L2782.24,1741.41L2732.24,1741.41L2732.24,1841.4L2782.24,1841.4ZM3177.85,1226.67L3177.85,1759.15L3427.88,1759.15L3427.88,1226.67L3177.85,1226.67ZM115.431,1226.67L115.431,1759.15L365.453,1759.15L365.453,1226.67L115.431,1226.67ZM761.068,1636.12L761.068,1736.12L811.068,1736.12L811.068,1636.12L761.068,1636.12ZM2782.24,1691.41L2782.24,1591.41L2732.24,1591.41L2732.24,1691.41L2782.24,1691.41ZM761.068,1486.12L761.068,1586.12L811.068,1586.12L811.068,1486.12L761.068,1486.12ZM2203.72,1132.2C2318.18,1132.2 2411.11,1225.13 2411.11,1339.59C2411.11,1454.05 2318.18,1546.98 2203.72,1546.98C2089.26,1546.98 1996.33,1454.05 1996.33,1339.59C1996.33,1225.13 2089.26,1132.2 2203.72,1132.2ZM2782.24,1541.41L2782.24,1441.41L2732.24,1441.41L2732.24,1541.41L2782.24,1541.41ZM761.068,1336.12L761.068,1436.12L811.068,1436.12L811.068,1336.12L761.068,1336.12ZM2782.24,1391.41L2782.24,1291.41L2732.24,1291.41L2732.24,1391.41L2782.24,1391.41ZM761.068,1186.12L761.068,1286.12L811.068,1286.12L811.068,1186.12L761.068,1186.12ZM2732.24,1197.98L2732.24,1241.41L2782.24,1241.41L2782.24,1172.98L2781.03,1172.98C2780.06,1162.82 2778.49,1152.83 2776.36,1143.04L2771.04,1118.62L2722.18,1129.24L2727.5,1153.67C2730.61,1167.95 2732.24,1182.78 2732.24,1197.98ZM3412.74,669.193L3412.89,669.694C3414.66,675.5 3416.28,681.348 3417.73,687.238C3420.46,698.265 3422.65,709.427 3424.28,720.67C3425.85,731.554 3426.91,742.513 3427.45,753.497C3427.74,759.256 3427.87,765.021 3427.88,770.787L3427.88,1201.67L3177.85,1201.67L3177.85,669.193L3412.74,669.193ZM115.431,1201.67L115.431,770.787C115.436,765.021 115.572,759.256 115.855,753.497C116.395,742.513 117.453,731.554 119.031,720.67C120.66,709.427 122.844,698.265 125.574,687.238C127.032,681.348 128.65,675.5 130.414,669.694L130.567,669.193L365.453,669.193L365.453,1201.67L115.431,1201.67ZM804.386,1055C794.186,1070.26 785.572,1086.67 778.777,1103.99L769.647,1127.26L816.194,1145.52L825.324,1122.25C830.797,1108.3 837.738,1095.08 845.955,1082.79L859.848,1062L818.279,1034.21L804.386,1055ZM2730.5,1043.14C2719.39,1028.39 2706.73,1014.86 2692.77,1002.81L2673.84,986.48L2641.17,1024.34L2660.1,1040.67C2671.37,1050.39 2681.59,1061.31 2690.56,1073.22L2705.6,1093.19L2745.54,1063.11L2730.5,1043.14ZM933.266,954.821C915.698,961.006 898.998,969.041 883.402,978.694L862.144,991.851L888.457,1034.37L909.715,1021.21C922.275,1013.44 935.723,1006.96 949.871,1001.98L973.452,993.681L956.848,946.518L933.266,954.821ZM2596.18,950.378C2578.71,945.327 2560.49,942.072 2541.72,940.832L2516.78,939.183L2513.48,989.074L2538.43,990.723C2553.54,991.722 2568.22,994.341 2582.28,998.409L2606.3,1005.36L2620.19,957.325L2596.18,950.378ZM2165.09,940.265L2065.09,940.265L2065.09,990.265L2165.09,990.265L2165.09,940.265ZM1865.08,940.265L1765.08,940.265L1765.08,990.265L1865.08,990.265L1865.08,940.265ZM1115.08,940.265L1015.08,940.265L1015.08,990.265L1115.08,990.265L1115.08,940.265ZM2015.09,940.265L1915.09,940.265L1915.09,990.265L2015.09,990.265L2015.09,940.265ZM2315.09,940.265L2215.09,940.265L2215.09,990.265L2315.09,990.265L2315.09,940.265ZM1265.08,940.265L1165.08,940.265L1165.08,990.265L1265.08,990.265L1265.08,940.265ZM1415.08,940.265L1315.08,940.265L1315.08,990.265L1415.08,990.265L1415.08,940.265ZM1565.08,940.265L1465.08,940.265L1465.08,990.265L1565.08,990.265L1565.08,940.265ZM1715.08,940.265L1615.08,940.265L1615.08,990.265L1715.08,990.265L1715.08,940.265ZM2465.09,940.265L2365.09,940.265L2365.09,990.265L2465.09,990.265L2465.09,940.265ZM365.453,437.562L365.453,644.193L139.286,644.193C178.303,544.782 261.917,467.677 365.453,437.562ZM922.933,423.812L922.933,644.193L390.453,644.193L390.453,431.295C413.674,426.391 437.741,423.812 462.407,423.812L922.933,423.812ZM947.933,423.812L947.933,644.193L1480.41,644.193L1480.41,423.812L947.933,423.812ZM1505.41,423.812L1505.41,644.193L2037.89,644.193L2037.89,423.812L1505.41,423.812ZM2062.89,423.812L2062.89,644.193L2595.37,644.193L2595.37,423.812L2062.89,423.812ZM2620.37,423.812L3080.9,423.812C3105.57,423.812 3129.63,426.391 3152.85,431.295L3152.85,644.193L2620.37,644.193L2620.37,423.812ZM3177.85,437.562C3281.38,467.669 3365,544.774 3404.02,644.193L3177.85,644.193L3177.85,437.562Z"})}),Ye=Ze((e,t)=>{const{tooltip:n="",styleClass:r,tooltipProps:i,asCheckbox:o,isChecked:a,...s}=e;return g.jsx(si,{label:n,hasArrow:!0,...i,...i!=null&&i.placement?{placement:i.placement}:{placement:"top"},children:g.jsx(ls,{ref:t,className:r?`invokeai__icon-button ${r}`:"invokeai__icon-button","data-as-checkbox":o,"data-selected":a!==void 0?a:void 0,...s})})}),On=Ze((e,t)=>{const{children:n,tooltip:r="",tooltipProps:i,styleClass:o,...a}=e;return g.jsx(si,{label:r,...i,children:g.jsx(ss,{ref:t,className:["invokeai__button",o].join(" "),...a,children:n})})}),Ys=e=>{const{triggerComponent:t,children:n,styleClass:r,hasArrow:i=!0,...o}=e;return g.jsxs(V8,{...o,children:[g.jsx(U8,{children:t}),g.jsxs(q8,{className:`invokeai__popover-content ${r}`,children:[i&&g.jsx(G8,{className:"invokeai__popover-arrow"}),n]})]})},d4=lt(e=>e.lightbox,e=>e,{memoizeOptions:{equalityCheck:Ce.isEqual}}),Jo=e=>{const{label:t,isDisabled:n,validValues:r,tooltip:i,tooltipProps:o,size:a="sm",fontSize:s="sm",styleClass:l,...u}=e;return g.jsxs(sn,{isDisabled:n,className:`invokeai__select ${l}`,onClick:d=>{d.stopPropagation(),d.nativeEvent.stopImmediatePropagation(),d.nativeEvent.stopPropagation(),d.nativeEvent.cancelBubble=!0},children:[t&&g.jsx(Sn,{className:"invokeai__select-label",fontSize:s,fontWeight:"bold",marginRight:0,marginBottom:0,whiteSpace:"nowrap",children:t}),g.jsx(si,{label:i,...o,children:g.jsx(qH,{className:"invokeai__select-picker",fontSize:s,size:a,...u,children:r.map(d=>typeof d=="string"||typeof d=="number"?g.jsx("option",{value:d,className:"invokeai__select-option",children:d},d):g.jsx("option",{value:d.value,className:"invokeai__select-option",children:d.key},d.value))})})]})};function N_e(){const e=le(i=>i.postprocessing.facetoolType),t=Te(),{t:n}=De(),r=i=>t(dS(i.target.value));return g.jsx(Jo,{label:n("parameters.type"),validValues:D5e.concat(),value:e,onChange:r})}var WV={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},MI=Ke.createContext&&Ke.createContext(WV),Bd=globalThis&&globalThis.__assign||function(){return Bd=Object.assign||function(e){for(var t,n=1,r=arguments.length;n{_e(i)},[i]);const we=S.useMemo(()=>V!=null&&V.max?V.max:a,[a,V==null?void 0:V.max]),xe=Xe=>{l(Xe)},Le=Xe=>{Xe.target.value===""&&(Xe.target.value=String(o));const tt=Ce.clamp(w?Math.floor(Number(Xe.target.value)):Number(fe),o,we);l(tt)},Se=Xe=>{_e(Xe)},Je=()=>{O&&O()};return g.jsxs(sn,{className:W?`invokeai__slider-component ${W}`:"invokeai__slider-component","data-markers":p,style:L?{display:"flex",flexDirection:"row",alignItems:"center",columnGap:"1rem",margin:0,padding:0}:{},...B,children:[g.jsx(Sn,{className:"invokeai__slider-component-label",fontSize:"sm",...K,children:r}),g.jsxs(l2,{w:"100%",gap:2,alignItems:"center",children:[g.jsxs(QH,{"aria-label":r,value:i,min:o,max:a,step:s,onChange:xe,onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),focusThumbOnChange:!1,isDisabled:I,width:u,...ee,children:[p&&g.jsxs(g.Fragment,{children:[g.jsx(tk,{value:o,className:"invokeai__slider-mark invokeai__slider-mark-start",ml:m,...ne,children:o}),g.jsx(tk,{value:a,className:"invokeai__slider-mark invokeai__slider-mark-end",ml:y,...ne,children:a})]}),g.jsx(eW,{className:"invokeai__slider_track",...z,children:g.jsx(tW,{className:"invokeai__slider_track-filled"})}),g.jsx(si,{hasArrow:!0,className:"invokeai__slider-component-tooltip",placement:"top",isOpen:t,label:`${i}${d}`,hidden:T,...G,children:g.jsx(JH,{className:"invokeai__slider-thumb",...$})})]}),b&&g.jsxs(B8,{min:o,max:we,step:s,value:fe,onChange:Se,onBlur:Le,className:"invokeai__slider-number-field",isDisabled:N,...V,children:[g.jsx(z8,{className:"invokeai__slider-number-input",width:E,readOnly:_,minWidth:E,...X}),g.jsxs(BH,{...Q,children:[g.jsx(W8,{onClick:()=>l(Number(fe)),className:"invokeai__slider-number-stepper"}),g.jsx(H8,{onClick:()=>l(Number(fe)),className:"invokeai__slider-number-stepper"})]})]}),k&&g.jsx(Ye,{size:"sm","aria-label":"Reset",tooltip:"Reset",icon:g.jsx(f4,{}),onClick:Je,isDisabled:D,...Y})]})]})}function V_e(){const e=le(i=>i.system.isGFPGANAvailable),t=le(i=>i.postprocessing.facetoolStrength),{t:n}=De(),r=Te();return g.jsx(Dn,{isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e,label:n("parameters.strength"),step:.05,min:0,max:1,onChange:i=>r(k3(i)),handleReset:()=>r(k3(.75)),value:t,withReset:!0,withSliderMarks:!0,withInput:!0})}function G_e(){const e=le(i=>i.system.isGFPGANAvailable),t=le(i=>i.postprocessing.codeformerFidelity),{t:n}=De(),r=Te();return g.jsx(Dn,{isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e,label:n("parameters.codeformerFidelity"),step:.05,min:0,max:1,onChange:i=>r(xk(i)),handleReset:()=>r(xk(1)),value:t,withReset:!0,withSliderMarks:!0,withInput:!0})}const RE=()=>{const e=le(t=>t.postprocessing.facetoolType);return g.jsxs(Ee,{direction:"column",gap:2,minWidth:"20rem",children:[g.jsx(N_e,{}),g.jsx(V_e,{}),e==="codeformer"&&g.jsx(G_e,{})]})};function q_e(){const e=le(i=>i.system.isESRGANAvailable),t=le(i=>i.postprocessing.upscalingDenoising),{t:n}=De(),r=Te();return g.jsx(Dn,{label:n("parameters.denoisingStrength"),value:t,min:0,max:1,step:.01,onChange:i=>{r(Sk(i))},handleReset:()=>r(Sk(.75)),withSliderMarks:!0,withInput:!0,withReset:!0,isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e})}function K_e(){const e=le(i=>i.system.isESRGANAvailable),t=le(i=>i.postprocessing.upscalingStrength),{t:n}=De(),r=Te();return g.jsx(Dn,{label:`${n("parameters.upscale")} ${n("parameters.strength")}`,value:t,min:0,max:1,step:.05,onChange:i=>r(wk(i)),handleReset:()=>r(wk(.75)),withSliderMarks:!0,withInput:!0,withReset:!0,isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e})}function Y_e(){const e=le(o=>o.system.isESRGANAvailable),t=le(o=>o.postprocessing.upscalingLevel),{t:n}=De(),r=Te(),i=o=>r(bU(Number(o.target.value)));return g.jsx(Jo,{isDisabled:!e,label:n("parameters.scale"),value:t,onChange:i,validValues:I5e})}const IE=()=>g.jsxs(Ee,{flexDir:"column",rowGap:2,minWidth:"20rem",children:[g.jsx(Y_e,{}),g.jsx(q_e,{}),g.jsx(K_e,{})]}),DE=e=>e.postprocessing,hr=e=>e.system,X_e=e=>e.system.toastQueue,GV=lt(hr,e=>{const{model_list:t}=e,n=Ce.reduce(t,(r,i,o)=>(i.status==="active"&&(r=o),r),"");return{...t[n],name:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),Z_e=lt(hr,e=>{const{model_list:t}=e;return Ce.pickBy(t,(r,i)=>{if(r.format==="diffusers")return{name:i,...r}})},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function Vk(){return Vk=Object.assign?Object.assign.bind():function(e){for(var t=1;t'),!0):t?e.some(function(n){return t.includes(n)})||e.includes("*"):!0}var oke=function(t,n,r){r===void 0&&(r=!1);var i=n.alt,o=n.meta,a=n.mod,s=n.shift,l=n.ctrl,u=n.keys,d=t.key,p=t.code,m=t.ctrlKey,y=t.metaKey,b=t.shiftKey,w=t.altKey,E=kd(p),_=d.toLowerCase();if(!r){if(i===!w&&_!=="alt"||s===!b&&_!=="shift")return!1;if(a){if(!y&&!m)return!1}else if(o===!y&&_!=="meta"||l===!m&&_!=="ctrl")return!1}return u&&u.length===1&&(u.includes(_)||u.includes(E))?!0:u?eke(u):!u},ake=S.createContext(void 0),ske=function(){return S.useContext(ake)};function ZV(e,t){return e&&t&&typeof e=="object"&&typeof t=="object"?Object.keys(e).length===Object.keys(t).length&&Object.keys(e).reduce(function(n,r){return n&&ZV(e[r],t[r])},!0):e===t}var lke=S.createContext({hotkeys:[],enabledScopes:[],toggleScope:function(){},enableScope:function(){},disableScope:function(){}}),uke=function(){return S.useContext(lke)};function cke(e){var t=S.useRef(void 0);return ZV(t.current,e)||(t.current=e),t.current}var LI=function(t){t.stopPropagation(),t.preventDefault(),t.stopImmediatePropagation()},dke=typeof window<"u"?S.useLayoutEffect:S.useEffect;function Qe(e,t,n,r){var i=S.useRef(null),o=S.useRef(!1),a=n instanceof Array?r instanceof Array?void 0:r:n,s=n instanceof Array?n:r instanceof Array?r:void 0,l=S.useCallback(t,s??[]),u=S.useRef(l);s?u.current=l:u.current=t;var d=cke(a),p=uke(),m=p.enabledScopes,y=ske();return dke(function(){if(!((d==null?void 0:d.enabled)===!1||!ike(m,d==null?void 0:d.scopes))){var b=function(k,T){var L;if(T===void 0&&(T=!1),!(rke(k)&&!XV(k,d==null?void 0:d.enableOnFormTags))){if(i.current!==null&&document.activeElement!==i.current&&!i.current.contains(document.activeElement)){LI(k);return}(L=k.target)!=null&&L.isContentEditable&&!(d!=null&&d.enableOnContentEditable)||XC(e,d==null?void 0:d.splitKey).forEach(function(O){var D,I=ZC(O,d==null?void 0:d.combinationKey);if(oke(k,I,d==null?void 0:d.ignoreModifiers)||(D=I.keys)!=null&&D.includes("*")){if(T&&o.current)return;if(tke(k,I,d==null?void 0:d.preventDefault),!nke(k,I,d==null?void 0:d.enabled)){LI(k);return}u.current(k,I),T||(o.current=!0)}})}},w=function(k){k.key!==void 0&&(KV(kd(k.code)),((d==null?void 0:d.keydown)===void 0&&(d==null?void 0:d.keyup)!==!0||d!=null&&d.keydown)&&b(k))},E=function(k){k.key!==void 0&&(YV(kd(k.code)),o.current=!1,d!=null&&d.keyup&&b(k,!0))};return(i.current||(a==null?void 0:a.document)||document).addEventListener("keyup",E),(i.current||(a==null?void 0:a.document)||document).addEventListener("keydown",w),y&&XC(e,d==null?void 0:d.splitKey).forEach(function(_){return y.addHotkey(ZC(_,d==null?void 0:d.combinationKey))}),function(){(i.current||(a==null?void 0:a.document)||document).removeEventListener("keyup",E),(i.current||(a==null?void 0:a.document)||document).removeEventListener("keydown",w),y&&XC(e,d==null?void 0:d.splitKey).forEach(function(_){return y.removeHotkey(ZC(_,d==null?void 0:d.combinationKey))})}}},[e,d,m]),i}function fke(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M524.531,69.836a1.5,1.5,0,0,0-.764-.7A485.065,485.065,0,0,0,404.081,32.03a1.816,1.816,0,0,0-1.923.91,337.461,337.461,0,0,0-14.9,30.6,447.848,447.848,0,0,0-134.426,0,309.541,309.541,0,0,0-15.135-30.6,1.89,1.89,0,0,0-1.924-.91A483.689,483.689,0,0,0,116.085,69.137a1.712,1.712,0,0,0-.788.676C39.068,183.651,18.186,294.69,28.43,404.354a2.016,2.016,0,0,0,.765,1.375A487.666,487.666,0,0,0,176.02,479.918a1.9,1.9,0,0,0,2.063-.676A348.2,348.2,0,0,0,208.12,430.4a1.86,1.86,0,0,0-1.019-2.588,321.173,321.173,0,0,1-45.868-21.853,1.885,1.885,0,0,1-.185-3.126c3.082-2.309,6.166-4.711,9.109-7.137a1.819,1.819,0,0,1,1.9-.256c96.229,43.917,200.41,43.917,295.5,0a1.812,1.812,0,0,1,1.924.233c2.944,2.426,6.027,4.851,9.132,7.16a1.884,1.884,0,0,1-.162,3.126,301.407,301.407,0,0,1-45.89,21.83,1.875,1.875,0,0,0-1,2.611,391.055,391.055,0,0,0,30.014,48.815,1.864,1.864,0,0,0,2.063.7A486.048,486.048,0,0,0,610.7,405.729a1.882,1.882,0,0,0,.765-1.352C623.729,277.594,590.933,167.465,524.531,69.836ZM222.491,337.58c-28.972,0-52.844-26.587-52.844-59.239S193.056,219.1,222.491,219.1c29.665,0,53.306,26.82,52.843,59.239C275.334,310.993,251.924,337.58,222.491,337.58Zm195.38,0c-28.971,0-52.843-26.587-52.843-59.239S388.437,219.1,417.871,219.1c29.667,0,53.307,26.82,52.844,59.239C470.715,310.993,447.538,337.58,417.871,337.58Z"}}]})(e)}function hke(e){return ut({tag:"svg",attr:{viewBox:"0 0 496 512"},child:[{tag:"path",attr:{d:"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"}}]})(e)}function pke(e){return ut({tag:"svg",attr:{viewBox:"0 0 320 512"},child:[{tag:"path",attr:{d:"M143 256.3L7 120.3c-9.4-9.4-9.4-24.6 0-33.9l22.6-22.6c9.4-9.4 24.6-9.4 33.9 0l96.4 96.4 96.4-96.4c9.4-9.4 24.6-9.4 33.9 0L313 86.3c9.4 9.4 9.4 24.6 0 33.9l-136 136c-9.4 9.5-24.6 9.5-34 .1zm34 192l136-136c9.4-9.4 9.4-24.6 0-33.9l-22.6-22.6c-9.4-9.4-24.6-9.4-33.9 0L160 352.1l-96.4-96.4c-9.4-9.4-24.6-9.4-33.9 0L7 278.3c-9.4 9.4-9.4 24.6 0 33.9l136 136c9.4 9.5 24.6 9.5 34 .1z"}}]})(e)}function QV(e){return ut({tag:"svg",attr:{viewBox:"0 0 256 512"},child:[{tag:"path",attr:{d:"M31.7 239l136-136c9.4-9.4 24.6-9.4 33.9 0l22.6 22.6c9.4 9.4 9.4 24.6 0 33.9L127.9 256l96.4 96.4c9.4 9.4 9.4 24.6 0 33.9L201.7 409c-9.4 9.4-24.6 9.4-33.9 0l-136-136c-9.5-9.4-9.5-24.6-.1-34z"}}]})(e)}function JV(e){return ut({tag:"svg",attr:{viewBox:"0 0 256 512"},child:[{tag:"path",attr:{d:"M224.3 273l-136 136c-9.4 9.4-24.6 9.4-33.9 0l-22.6-22.6c-9.4-9.4-9.4-24.6 0-33.9l96.4-96.4-96.4-96.4c-9.4-9.4-9.4-24.6 0-33.9L54.3 103c9.4-9.4 24.6-9.4 33.9 0l136 136c9.5 9.4 9.5 24.6.1 34z"}}]})(e)}function gke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M257.5 445.1l-22.2 22.2c-9.4 9.4-24.6 9.4-33.9 0L7 273c-9.4-9.4-9.4-24.6 0-33.9L201.4 44.7c9.4-9.4 24.6-9.4 33.9 0l22.2 22.2c9.5 9.5 9.3 25-.4 34.3L136.6 216H424c13.3 0 24 10.7 24 24v32c0 13.3-10.7 24-24 24H136.6l120.5 114.8c9.8 9.3 10 24.8.4 34.3z"}}]})(e)}function mke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M190.5 66.9l22.2-22.2c9.4-9.4 24.6-9.4 33.9 0L441 239c9.4 9.4 9.4 24.6 0 33.9L246.6 467.3c-9.4 9.4-24.6 9.4-33.9 0l-22.2-22.2c-9.5-9.5-9.3-25 .4-34.3L311.4 296H24c-13.3 0-24-10.7-24-24v-32c0-13.3 10.7-24 24-24h287.4L190.9 101.2c-9.8-9.3-10-24.8-.4-34.3z"}}]})(e)}function eG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M352.201 425.775l-79.196 79.196c-9.373 9.373-24.568 9.373-33.941 0l-79.196-79.196c-15.119-15.119-4.411-40.971 16.971-40.97h51.162L228 284H127.196v51.162c0 21.382-25.851 32.09-40.971 16.971L7.029 272.937c-9.373-9.373-9.373-24.569 0-33.941L86.225 159.8c15.119-15.119 40.971-4.411 40.971 16.971V228H228V127.196h-51.23c-21.382 0-32.09-25.851-16.971-40.971l79.196-79.196c9.373-9.373 24.568-9.373 33.941 0l79.196 79.196c15.119 15.119 4.411 40.971-16.971 40.971h-51.162V228h100.804v-51.162c0-21.382 25.851-32.09 40.97-16.971l79.196 79.196c9.373 9.373 9.373 24.569 0 33.941L425.773 352.2c-15.119 15.119-40.971 4.411-40.97-16.971V284H284v100.804h51.23c21.382 0 32.09 25.851 16.971 40.971z"}}]})(e)}function vke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M478.21 334.093L336 256l142.21-78.093c11.795-6.477 15.961-21.384 9.232-33.037l-19.48-33.741c-6.728-11.653-21.72-15.499-33.227-8.523L296 186.718l3.475-162.204C299.763 11.061 288.937 0 275.48 0h-38.96c-13.456 0-24.283 11.061-23.994 24.514L216 186.718 77.265 102.607c-11.506-6.976-26.499-3.13-33.227 8.523l-19.48 33.741c-6.728 11.653-2.562 26.56 9.233 33.037L176 256 33.79 334.093c-11.795 6.477-15.961 21.384-9.232 33.037l19.48 33.741c6.728 11.653 21.721 15.499 33.227 8.523L216 325.282l-3.475 162.204C212.237 500.939 223.064 512 236.52 512h38.961c13.456 0 24.283-11.061 23.995-24.514L296 325.282l138.735 84.111c11.506 6.976 26.499 3.13 33.227-8.523l19.48-33.741c6.728-11.653 2.563-26.559-9.232-33.036z"}}]})(e)}function yke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M511.988 288.9c-.478 17.43-15.217 31.1-32.653 31.1H424v16c0 21.864-4.882 42.584-13.6 61.145l60.228 60.228c12.496 12.497 12.496 32.758 0 45.255-12.498 12.497-32.759 12.496-45.256 0l-54.736-54.736C345.886 467.965 314.351 480 280 480V236c0-6.627-5.373-12-12-12h-24c-6.627 0-12 5.373-12 12v244c-34.351 0-65.886-12.035-90.636-32.108l-54.736 54.736c-12.498 12.497-32.759 12.496-45.256 0-12.496-12.497-12.496-32.758 0-45.255l60.228-60.228C92.882 378.584 88 357.864 88 336v-16H32.666C15.23 320 .491 306.33.013 288.9-.484 270.816 14.028 256 32 256h56v-58.745l-46.628-46.628c-12.496-12.497-12.496-32.758 0-45.255 12.498-12.497 32.758-12.497 45.256 0L141.255 160h229.489l54.627-54.627c12.498-12.497 32.758-12.497 45.256 0 12.496 12.497 12.496 32.758 0 45.255L424 197.255V256h56c17.972 0 32.484 14.816 31.988 32.9zM257 0c-61.856 0-112 50.144-112 112h224C369 50.144 318.856 0 257 0z"}}]})(e)}function jE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M173.898 439.404l-166.4-166.4c-9.997-9.997-9.997-26.206 0-36.204l36.203-36.204c9.997-9.998 26.207-9.998 36.204 0L192 312.69 432.095 72.596c9.997-9.997 26.207-9.997 36.204 0l36.203 36.204c9.997 9.997 9.997 26.206 0 36.204l-294.4 294.401c-9.998 9.997-26.207 9.997-36.204-.001z"}}]})(e)}function tG(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M278.9 511.5l-61-17.7c-6.4-1.8-10-8.5-8.2-14.9L346.2 8.7c1.8-6.4 8.5-10 14.9-8.2l61 17.7c6.4 1.8 10 8.5 8.2 14.9L293.8 503.3c-1.9 6.4-8.5 10.1-14.9 8.2zm-114-112.2l43.5-46.4c4.6-4.9 4.3-12.7-.8-17.2L117 256l90.6-79.7c5.1-4.5 5.5-12.3.8-17.2l-43.5-46.4c-4.5-4.8-12.1-5.1-17-.5L3.8 247.2c-5.1 4.7-5.1 12.8 0 17.5l144.1 135.1c4.9 4.6 12.5 4.4 17-.5zm327.2.6l144.1-135.1c5.1-4.7 5.1-12.8 0-17.5L492.1 112.1c-4.8-4.5-12.4-4.3-17 .5L431.6 159c-4.6 4.9-4.3 12.7.8 17.2L523 256l-90.6 79.7c-5.1 4.5-5.5 12.3-.8 17.2l43.5 46.4c4.5 4.9 12.1 5.1 17 .6z"}}]})(e)}function e0(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z"}}]})(e)}function nG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M500 224h-30.364C455.724 130.325 381.675 56.276 288 42.364V12c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v30.364C130.325 56.276 56.276 130.325 42.364 224H12c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h30.364C56.276 381.675 130.325 455.724 224 469.636V500c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-30.364C381.675 455.724 455.724 381.675 469.636 288H500c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12zM288 404.634V364c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40.634C165.826 392.232 119.783 346.243 107.366 288H148c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12h-40.634C119.768 165.826 165.757 119.783 224 107.366V148c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12v-40.634C346.174 119.768 392.217 165.757 404.634 224H364c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40.634C392.232 346.174 346.243 392.217 288 404.634zM288 256c0 17.673-14.327 32-32 32s-32-14.327-32-32c0-17.673 14.327-32 32-32s32 14.327 32 32z"}}]})(e)}function bke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M239.1 6.3l-208 78c-18.7 7-31.1 25-31.1 45v225.1c0 18.2 10.3 34.8 26.5 42.9l208 104c13.5 6.8 29.4 6.8 42.9 0l208-104c16.3-8.1 26.5-24.8 26.5-42.9V129.3c0-20-12.4-37.9-31.1-44.9l-208-78C262 2.2 250 2.2 239.1 6.3zM256 68.4l192 72v1.1l-192 78-192-78v-1.1l192-72zm32 356V275.5l160-65v133.9l-160 80z"}}]})(e)}function NE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M216 0h80c13.3 0 24 10.7 24 24v168h87.7c17.8 0 26.7 21.5 14.1 34.1L269.7 378.3c-7.5 7.5-19.8 7.5-27.3 0L90.1 226.1c-12.6-12.6-3.7-34.1 14.1-34.1H192V24c0-13.3 10.7-24 24-24zm296 376v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h146.7l49 49c20.1 20.1 52.5 20.1 72.6 0l49-49H488c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"}}]})(e)}function rG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M497.941 273.941c18.745-18.745 18.745-49.137 0-67.882l-160-160c-18.745-18.745-49.136-18.746-67.883 0l-256 256c-18.745 18.745-18.745 49.137 0 67.882l96 96A48.004 48.004 0 0 0 144 480h356c6.627 0 12-5.373 12-12v-40c0-6.627-5.373-12-12-12H355.883l142.058-142.059zm-302.627-62.627l137.373 137.373L265.373 416H150.628l-80-80 124.686-124.686z"}}]})(e)}function xke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M448 344v112a23.94 23.94 0 0 1-24 24H312c-21.39 0-32.09-25.9-17-41l36.2-36.2L224 295.6 116.77 402.9 153 439c15.09 15.1 4.39 41-17 41H24a23.94 23.94 0 0 1-24-24V344c0-21.4 25.89-32.1 41-17l36.19 36.2L184.46 256 77.18 148.7 41 185c-15.1 15.1-41 4.4-41-17V56a23.94 23.94 0 0 1 24-24h112c21.39 0 32.09 25.9 17 41l-36.2 36.2L224 216.4l107.23-107.3L295 73c-15.09-15.1-4.39-41 17-41h112a23.94 23.94 0 0 1 24 24v112c0 21.4-25.89 32.1-41 17l-36.19-36.2L263.54 256l107.28 107.3L407 327.1c15.1-15.2 41-4.5 41 16.9z"}}]})(e)}function Ske(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M0 180V56c0-13.3 10.7-24 24-24h124c6.6 0 12 5.4 12 12v40c0 6.6-5.4 12-12 12H64v84c0 6.6-5.4 12-12 12H12c-6.6 0-12-5.4-12-12zM288 44v40c0 6.6 5.4 12 12 12h84v84c0 6.6 5.4 12 12 12h40c6.6 0 12-5.4 12-12V56c0-13.3-10.7-24-24-24H300c-6.6 0-12 5.4-12 12zm148 276h-40c-6.6 0-12 5.4-12 12v84h-84c-6.6 0-12 5.4-12 12v40c0 6.6 5.4 12 12 12h124c13.3 0 24-10.7 24-24V332c0-6.6-5.4-12-12-12zM160 468v-40c0-6.6-5.4-12-12-12H64v-84c0-6.6-5.4-12-12-12H12c-6.6 0-12 5.4-12 12v124c0 13.3 10.7 24 24 24h124c6.6 0 12-5.4 12-12z"}}]})(e)}function iG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M50.75 333.25c-12 12-18.75 28.28-18.75 45.26V424L0 480l32 32 56-32h45.49c16.97 0 33.25-6.74 45.25-18.74l126.64-126.62-128-128L50.75 333.25zM483.88 28.12c-37.47-37.5-98.28-37.5-135.75 0l-77.09 77.09-13.1-13.1c-9.44-9.44-24.65-9.31-33.94 0l-40.97 40.97c-9.37 9.37-9.37 24.57 0 33.94l161.94 161.94c9.44 9.44 24.65 9.31 33.94 0L419.88 288c9.37-9.37 9.37-24.57 0-33.94l-13.1-13.1 77.09-77.09c37.51-37.48 37.51-98.26.01-135.75z"}}]})(e)}function wke(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M320 400c-75.85 0-137.25-58.71-142.9-133.11L72.2 185.82c-13.79 17.3-26.48 35.59-36.72 55.59a32.35 32.35 0 0 0 0 29.19C89.71 376.41 197.07 448 320 448c26.91 0 52.87-4 77.89-10.46L346 397.39a144.13 144.13 0 0 1-26 2.61zm313.82 58.1l-110.55-85.44a331.25 331.25 0 0 0 81.25-102.07 32.35 32.35 0 0 0 0-29.19C550.29 135.59 442.93 64 320 64a308.15 308.15 0 0 0-147.32 37.7L45.46 3.37A16 16 0 0 0 23 6.18L3.37 31.45A16 16 0 0 0 6.18 53.9l588.36 454.73a16 16 0 0 0 22.46-2.81l19.64-25.27a16 16 0 0 0-2.82-22.45zm-183.72-142l-39.3-30.38A94.75 94.75 0 0 0 416 256a94.76 94.76 0 0 0-121.31-92.21A47.65 47.65 0 0 1 304 192a46.64 46.64 0 0 1-1.54 10l-73.61-56.89A142.31 142.31 0 0 1 320 112a143.92 143.92 0 0 1 144 144c0 21.63-5.29 41.79-13.9 60.11z"}}]})(e)}function Cke(e){return ut({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M572.52 241.4C518.29 135.59 410.93 64 288 64S57.68 135.64 3.48 241.41a32.35 32.35 0 0 0 0 29.19C57.71 376.41 165.07 448 288 448s230.32-71.64 284.52-177.41a32.35 32.35 0 0 0 0-29.19zM288 400a144 144 0 1 1 144-144 143.93 143.93 0 0 1-144 144zm0-240a95.31 95.31 0 0 0-25.31 3.79 47.85 47.85 0 0 1-66.9 66.9A95.78 95.78 0 1 0 288 160z"}}]})(e)}function oG(e){return ut({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M512 320s-64 92.65-64 128c0 35.35 28.66 64 64 64s64-28.65 64-64-64-128-64-128zm-9.37-102.94L294.94 9.37C288.69 3.12 280.5 0 272.31 0s-16.38 3.12-22.62 9.37l-81.58 81.58L81.93 4.76c-6.25-6.25-16.38-6.25-22.62 0L36.69 27.38c-6.24 6.25-6.24 16.38 0 22.62l86.19 86.18-94.76 94.76c-37.49 37.48-37.49 98.26 0 135.75l117.19 117.19c18.74 18.74 43.31 28.12 67.87 28.12 24.57 0 49.13-9.37 67.87-28.12l221.57-221.57c12.5-12.5 12.5-32.75.01-45.25zm-116.22 70.97H65.93c1.36-3.84 3.57-7.98 7.43-11.83l13.15-13.15 81.61-81.61 58.6 58.6c12.49 12.49 32.75 12.49 45.24 0s12.49-32.75 0-45.24l-58.6-58.6 58.95-58.95 162.44 162.44-48.34 48.34z"}}]})(e)}function _ke(e){return ut({tag:"svg",attr:{viewBox:"0 0 496 512"},child:[{tag:"path",attr:{d:"M248 8C111 8 0 119 0 256s111 248 248 248 248-111 248-248S385 8 248 8zM94.6 168.9l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.2 1 8.9 8.6 4.3 13.2l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L152 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.6-4.7-1.9-12.3 4.3-13.3zM248 432c-60.6 0-134.5-38.3-143.8-93.3-2-11.8 9.3-21.5 20.7-17.9C155.1 330.5 200 336 248 336s92.9-5.5 123.1-15.2c11.5-3.7 22.6 6.1 20.7 17.9-9.3 55-83.2 93.3-143.8 93.3zm157.7-249.9l-25.4 24.6 6 34.9c1 6.2-5.3 11-11 7.9L344 233.3l-31.3 16.3c-5.7 3.1-12-1.7-11-7.9l6-34.9-25.4-24.6c-4.5-4.6-1.9-12.2 4.3-13.2l34.9-5 15.5-31.6c2.9-5.8 11-5.8 13.9 0l15.5 31.6 34.9 5c6.3.9 9 8.5 4.4 13.1z"}}]})(e)}function kke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M464 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM112 120c-30.928 0-56 25.072-56 56s25.072 56 56 56 56-25.072 56-56-25.072-56-56-56zM64 384h384V272l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L208 320l-55.515-55.515c-4.686-4.686-12.284-4.686-16.971 0L64 336v48z"}}]})(e)}function Eke(e){return ut({tag:"svg",attr:{viewBox:"0 0 576 512"},child:[{tag:"path",attr:{d:"M528 448H48c-26.51 0-48-21.49-48-48V112c0-26.51 21.49-48 48-48h480c26.51 0 48 21.49 48 48v288c0 26.51-21.49 48-48 48zM128 180v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm-336 96v-40c0-6.627-5.373-12-12-12H76c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12zm288 0v-40c0-6.627-5.373-12-12-12H172c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h232c6.627 0 12-5.373 12-12zm96 0v-40c0-6.627-5.373-12-12-12h-40c-6.627 0-12 5.373-12 12v40c0 6.627 5.373 12 12 12h40c6.627 0 12-5.373 12-12z"}}]})(e)}function Pke(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M152.1 236.2c-3.5-12.1-7.8-33.2-7.8-33.2h-.5s-4.3 21.1-7.8 33.2l-11.1 37.5H163zM616 96H336v320h280c13.3 0 24-10.7 24-24V120c0-13.3-10.7-24-24-24zm-24 120c0 6.6-5.4 12-12 12h-11.4c-6.9 23.6-21.7 47.4-42.7 69.9 8.4 6.4 17.1 12.5 26.1 18 5.5 3.4 7.3 10.5 4.1 16.2l-7.9 13.9c-3.4 5.9-10.9 7.8-16.7 4.3-12.6-7.8-24.5-16.1-35.4-24.9-10.9 8.7-22.7 17.1-35.4 24.9-5.8 3.5-13.3 1.6-16.7-4.3l-7.9-13.9c-3.2-5.6-1.4-12.8 4.2-16.2 9.3-5.7 18-11.7 26.1-18-7.9-8.4-14.9-17-21-25.7-4-5.7-2.2-13.6 3.7-17.1l6.5-3.9 7.3-4.3c5.4-3.2 12.4-1.7 16 3.4 5 7 10.8 14 17.4 20.9 13.5-14.2 23.8-28.9 30-43.2H412c-6.6 0-12-5.4-12-12v-16c0-6.6 5.4-12 12-12h64v-16c0-6.6 5.4-12 12-12h16c6.6 0 12 5.4 12 12v16h64c6.6 0 12 5.4 12 12zM0 120v272c0 13.3 10.7 24 24 24h280V96H24c-13.3 0-24 10.7-24 24zm58.9 216.1L116.4 167c1.7-4.9 6.2-8.1 11.4-8.1h32.5c5.1 0 9.7 3.3 11.4 8.1l57.5 169.1c2.6 7.8-3.1 15.9-11.4 15.9h-22.9a12 12 0 0 1-11.5-8.6l-9.4-31.9h-60.2l-9.1 31.8c-1.5 5.1-6.2 8.7-11.5 8.7H70.3c-8.2 0-14-8.1-11.4-15.9z"}}]})(e)}function aG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M12.41 148.02l232.94 105.67c6.8 3.09 14.49 3.09 21.29 0l232.94-105.67c16.55-7.51 16.55-32.52 0-40.03L266.65 2.31a25.607 25.607 0 0 0-21.29 0L12.41 107.98c-16.55 7.51-16.55 32.53 0 40.04zm487.18 88.28l-58.09-26.33-161.64 73.27c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.51 209.97l-58.1 26.33c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 276.3c16.55-7.5 16.55-32.5 0-40zm0 127.8l-57.87-26.23-161.86 73.37c-7.56 3.43-15.59 5.17-23.86 5.17s-16.29-1.74-23.86-5.17L70.29 337.87 12.41 364.1c-16.55 7.5-16.55 32.5 0 40l232.94 105.59c6.8 3.08 14.49 3.08 21.29 0L499.59 404.1c16.55-7.5 16.55-32.5 0-40z"}}]})(e)}function Tke(e){return ut({tag:"svg",attr:{viewBox:"0 0 640 512"},child:[{tag:"path",attr:{d:"M320.67 64c-442.6 0-357.57 384-158.46 384 39.9 0 77.47-20.69 101.42-55.86l25.73-37.79c15.66-22.99 46.97-22.99 62.63 0l25.73 37.79C401.66 427.31 439.23 448 479.13 448c189.86 0 290.63-384-158.46-384zM184 308.36c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05zm272 0c-41.06 0-67.76-25.66-80.08-41.05-5.23-6.53-5.23-16.09 0-22.63 12.32-15.4 39.01-41.05 80.08-41.05s67.76 25.66 80.08 41.05c5.23 6.53 5.23 16.09 0 22.63-12.32 15.4-39.02 41.05-80.08 41.05z"}}]})(e)}function Mke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"}}]})(e)}function sG(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M167.02 309.34c-40.12 2.58-76.53 17.86-97.19 72.3-2.35 6.21-8 9.98-14.59 9.98-11.11 0-45.46-27.67-55.25-34.35C0 439.62 37.93 512 128 512c75.86 0 128-43.77 128-120.19 0-3.11-.65-6.08-.97-9.13l-88.01-73.34zM457.89 0c-15.16 0-29.37 6.71-40.21 16.45C213.27 199.05 192 203.34 192 257.09c0 13.7 3.25 26.76 8.73 38.7l63.82 53.18c7.21 1.8 14.64 3.03 22.39 3.03 62.11 0 98.11-45.47 211.16-256.46 7.38-14.35 13.9-29.85 13.9-45.99C512 20.64 486 0 457.89 0z"}}]})(e)}function Lke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M204.3 5C104.9 24.4 24.8 104.3 5.2 203.4c-37 187 131.7 326.4 258.8 306.7 41.2-6.4 61.4-54.6 42.5-91.7-23.1-45.4 9.9-98.4 60.9-98.4h79.7c35.8 0 64.8-29.6 64.9-65.3C511.5 97.1 368.1-26.9 204.3 5zM96 320c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm32-128c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128-64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32zm128 64c-17.7 0-32-14.3-32-32s14.3-32 32-32 32 14.3 32 32-14.3 32-32 32z"}}]})(e)}function Ake(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M424.4 214.7L72.4 6.6C43.8-10.3 0 6.1 0 47.9V464c0 37.5 40.7 60.1 72.4 41.3l352-208c31.4-18.5 31.5-64.1 0-82.6z"}}]})(e)}function y2(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M416 208H272V64c0-17.67-14.33-32-32-32h-32c-17.67 0-32 14.33-32 32v144H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h144v144c0 17.67 14.33 32 32 32h32c17.67 0 32-14.33 32-32V304h144c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z"}}]})(e)}function Oke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z"}}]})(e)}function Rke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M184.561 261.903c3.232 13.997-12.123 24.635-24.068 17.168l-40.736-25.455-50.867 81.402C55.606 356.273 70.96 384 96.012 384H148c6.627 0 12 5.373 12 12v40c0 6.627-5.373 12-12 12H96.115c-75.334 0-121.302-83.048-81.408-146.88l50.822-81.388-40.725-25.448c-12.081-7.547-8.966-25.961 4.879-29.158l110.237-25.45c8.611-1.988 17.201 3.381 19.189 11.99l25.452 110.237zm98.561-182.915l41.289 66.076-40.74 25.457c-12.051 7.528-9 25.953 4.879 29.158l110.237 25.45c8.672 1.999 17.215-3.438 19.189-11.99l25.45-110.237c3.197-13.844-11.99-24.719-24.068-17.168l-40.687 25.424-41.263-66.082c-37.521-60.033-125.209-60.171-162.816 0l-17.963 28.766c-3.51 5.62-1.8 13.021 3.82 16.533l33.919 21.195c5.62 3.512 13.024 1.803 16.536-3.817l17.961-28.743c12.712-20.341 41.973-19.676 54.257-.022zM497.288 301.12l-27.515-44.065c-3.511-5.623-10.916-7.334-16.538-3.821l-33.861 21.159c-5.62 3.512-7.33 10.915-3.818 16.536l27.564 44.112c13.257 21.211-2.057 48.96-27.136 48.96H320V336.02c0-14.213-17.242-21.383-27.313-11.313l-80 79.981c-6.249 6.248-6.249 16.379 0 22.627l80 79.989C302.689 517.308 320 510.3 320 495.989V448h95.88c75.274 0 121.335-82.997 81.408-146.88z"}}]})(e)}function Ike(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M500.33 0h-47.41a12 12 0 0 0-12 12.57l4 82.76A247.42 247.42 0 0 0 256 8C119.34 8 7.9 119.53 8 256.19 8.1 393.07 119.1 504 256 504a247.1 247.1 0 0 0 166.18-63.91 12 12 0 0 0 .48-17.43l-34-34a12 12 0 0 0-16.38-.55A176 176 0 1 1 402.1 157.8l-101.53-4.87a12 12 0 0 0-12.57 12v47.41a12 12 0 0 0 12 12h200.33a12 12 0 0 0 12-12V12a12 12 0 0 0-12-12z"}}]})(e)}function $E(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M433.941 129.941l-83.882-83.882A48 48 0 0 0 316.118 32H48C21.49 32 0 53.49 0 80v352c0 26.51 21.49 48 48 48h352c26.51 0 48-21.49 48-48V163.882a48 48 0 0 0-14.059-33.941zM224 416c-35.346 0-64-28.654-64-64 0-35.346 28.654-64 64-64s64 28.654 64 64c0 35.346-28.654 64-64 64zm96-304.52V212c0 6.627-5.373 12-12 12H76c-6.627 0-12-5.373-12-12V108c0-6.627 5.373-12 12-12h228.52c3.183 0 6.235 1.264 8.485 3.515l3.48 3.48A11.996 11.996 0 0 1 320 111.48z"}}]})(e)}function Dke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M64 96H0c0 123.7 100.3 224 224 224v144c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16V320C288 196.3 187.7 96 64 96zm384-64c-84.2 0-157.4 46.5-195.7 115.2 27.7 30.2 48.2 66.9 59 107.6C424 243.1 512 147.9 512 32h-64z"}}]})(e)}function jke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M352 320c-22.608 0-43.387 7.819-59.79 20.895l-102.486-64.054a96.551 96.551 0 0 0 0-41.683l102.486-64.054C308.613 184.181 329.392 192 352 192c53.019 0 96-42.981 96-96S405.019 0 352 0s-96 42.981-96 96c0 7.158.79 14.13 2.276 20.841L155.79 180.895C139.387 167.819 118.608 160 96 160c-53.019 0-96 42.981-96 96s42.981 96 96 96c22.608 0 43.387-7.819 59.79-20.895l102.486 64.054A96.301 96.301 0 0 0 256 416c0 53.019 42.981 96 96 96s96-42.981 96-96-42.981-96-96-96z"}}]})(e)}function AI(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M503.691 189.836L327.687 37.851C312.281 24.546 288 35.347 288 56.015v80.053C127.371 137.907 0 170.1 0 322.326c0 61.441 39.581 122.309 83.333 154.132 13.653 9.931 33.111-2.533 28.077-18.631C66.066 312.814 132.917 274.316 288 272.085V360c0 20.7 24.3 31.453 39.687 18.164l176.004-152c11.071-9.562 11.086-26.753 0-36.328z"}}]})(e)}function FE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M496 384H160v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h80v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h336c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160h-80v-16c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16c-8.8 0-16 7.2-16 16v32c0 8.8 7.2 16 16 16h336v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h80c8.8 0 16-7.2 16-16v-32c0-8.8-7.2-16-16-16zm0-160H288V48c0-8.8-7.2-16-16-16h-32c-8.8 0-16 7.2-16 16v16H16C7.2 64 0 71.2 0 80v32c0 8.8 7.2 16 16 16h208v16c0 8.8 7.2 16 16 16h32c8.8 0 16-7.2 16-16v-16h208c8.8 0 16-7.2 16-16V80c0-8.8-7.2-16-16-16z"}}]})(e)}function Nke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M32 464a48 48 0 0 0 48 48h288a48 48 0 0 0 48-48V128H32zm272-256a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zm-96 0a16 16 0 0 1 32 0v224a16 16 0 0 1-32 0zM432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16z"}}]})(e)}function hp(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M432 32H312l-9.4-18.7A24 24 0 0 0 281.1 0H166.8a23.72 23.72 0 0 0-21.4 13.3L136 32H16A16 16 0 0 0 0 48v32a16 16 0 0 0 16 16h416a16 16 0 0 0 16-16V48a16 16 0 0 0-16-16zM53.2 467a48 48 0 0 0 47.9 45h245.8a48 48 0 0 0 47.9-45L416 128H32z"}}]})(e)}function $ke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M212.333 224.333H12c-6.627 0-12-5.373-12-12V12C0 5.373 5.373 0 12 0h48c6.627 0 12 5.373 12 12v78.112C117.773 39.279 184.26 7.47 258.175 8.007c136.906.994 246.448 111.623 246.157 248.532C504.041 393.258 393.12 504 256.333 504c-64.089 0-122.496-24.313-166.51-64.215-5.099-4.622-5.334-12.554-.467-17.42l33.967-33.967c4.474-4.474 11.662-4.717 16.401-.525C170.76 415.336 211.58 432 256.333 432c97.268 0 176-78.716 176-176 0-97.267-78.716-176-176-176-58.496 0-110.28 28.476-142.274 72.333h98.274c6.627 0 12 5.373 12 12v48c0 6.627-5.373 12-12 12z"}}]})(e)}function h4(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M296 384h-80c-13.3 0-24-10.7-24-24V192h-87.7c-17.8 0-26.7-21.5-14.1-34.1L242.3 5.7c7.5-7.5 19.8-7.5 27.3 0l152.2 152.2c12.6 12.6 3.7 34.1-14.1 34.1H320v168c0 13.3-10.7 24-24 24zm216-8v112c0 13.3-10.7 24-24 24H24c-13.3 0-24-10.7-24-24V376c0-13.3 10.7-24 24-24h136v8c0 30.9 25.1 56 56 56h80c30.9 0 56-25.1 56-56v-8h136c13.3 0 24 10.7 24 24zm-124 88c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20zm64 0c0-11-9-20-20-20s-20 9-20 20 9 20 20 20 20-9 20-20z"}}]})(e)}function Fke(e){return ut({tag:"svg",attr:{viewBox:"0 0 448 512"},child:[{tag:"path",attr:{d:"M224 256c70.7 0 128-57.3 128-128S294.7 0 224 0 96 57.3 96 128s57.3 128 128 128zm89.6 32h-16.7c-22.2 10.2-46.9 16-72.9 16s-50.6-5.8-72.9-16h-16.7C60.2 288 0 348.2 0 422.4V464c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48v-41.6c0-74.2-60.2-134.4-134.4-134.4z"}}]})(e)}function BE(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M507.73 109.1c-2.24-9.03-13.54-12.09-20.12-5.51l-74.36 74.36-67.88-11.31-11.31-67.88 74.36-74.36c6.62-6.62 3.43-17.9-5.66-20.16-47.38-11.74-99.55.91-136.58 37.93-39.64 39.64-50.55 97.1-34.05 147.2L18.74 402.76c-24.99 24.99-24.99 65.51 0 90.5 24.99 24.99 65.51 24.99 90.5 0l213.21-213.21c50.12 16.71 107.47 5.68 147.37-34.22 37.07-37.07 49.7-89.32 37.91-136.73zM64 472c-13.25 0-24-10.75-24-24 0-13.26 10.75-24 24-24s24 10.74 24 24c0 13.25-10.75 24-24 24z"}}]})(e)}const rn=e=>e.canvas,Lr=lt([rn,Br,hr],(e,t,n)=>e.layerState.stagingArea.images.length>0||t==="unifiedCanvas"&&n.isProcessing),lG=e=>e.canvas.layerState.objects.find(x3),pp=e=>e.gallery,Bke=lt([pp,d4,Lr,Br],(e,t,n,r)=>{const{categories:i,currentCategory:o,currentImageUuid:a,shouldPinGallery:s,shouldShowGallery:l,galleryScrollPosition:u,galleryImageMinimumWidth:d,galleryImageObjectFit:p,shouldHoldGalleryOpen:m,shouldAutoSwitchToNewImages:y,galleryWidth:b,shouldUseSingleGalleryColumn:w}=e,{isLightboxOpen:E}=t;return{currentImageUuid:a,shouldPinGallery:s,shouldShowGallery:l,galleryScrollPosition:u,galleryImageMinimumWidth:d,galleryImageObjectFit:p,galleryGridTemplateColumns:w?"auto":`repeat(auto-fill, minmax(${d}px, auto))`,activeTabName:r,shouldHoldGalleryOpen:m,shouldAutoSwitchToNewImages:y,images:i[o].images,areMoreImagesAvailable:i[o].areMoreImagesAvailable,currentCategory:o,galleryWidth:b,isLightboxOpen:E,isStaging:n,shouldEnableResize:!(E||r==="unifiedCanvas"&&s),shouldUseSingleGalleryColumn:w}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),zke=lt([pp,hr,d4,Br],(e,t,n,r)=>({mayDeleteImage:t.isConnected&&!t.isProcessing,galleryImageObjectFit:e.galleryImageObjectFit,galleryImageMinimumWidth:e.galleryImageMinimumWidth,shouldUseSingleGalleryColumn:e.shouldUseSingleGalleryColumn,activeTabName:r,isLightboxOpen:n.isLightboxOpen}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),Hke=lt(hr,e=>{const{shouldConfirmOnDelete:t,isConnected:n,isProcessing:r}=e;return{shouldConfirmOnDelete:t,isConnected:n,isProcessing:r}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),A3=S.forwardRef(({image:e,children:t},n)=>{const{isOpen:r,onOpen:i,onClose:o}=Kd(),a=Te(),{shouldConfirmOnDelete:s,isConnected:l,isProcessing:u}=le(Hke),d=S.useRef(null),p=b=>{b.stopPropagation(),s?i():m()},m=()=>{l&&!u&&e&&a(d_e(e)),o()};Qe("delete",()=>{s?i():m()},[e,s,l,u]);const y=b=>a(DU(!b.target.checked));return g.jsxs(g.Fragment,{children:[S.cloneElement(t,{onClick:e?p:void 0,ref:n}),g.jsx($H,{isOpen:r,leastDestructiveRef:d,onClose:o,children:g.jsx(oc,{children:g.jsxs(FH,{className:"modal",children:[g.jsx(op,{fontSize:"lg",fontWeight:"bold",children:"Delete image"}),g.jsx(Zm,{children:g.jsxs(Ee,{direction:"column",gap:5,children:[g.jsx(Dt,{children:"Are you sure? Deleted images will be sent to the Bin. You can restore from there if you wish to."}),g.jsx(sn,{children:g.jsxs(Ee,{alignItems:"center",children:[g.jsx(Sn,{mb:0,children:"Don't ask me again"}),g.jsx(K8,{checked:!s,onChange:y})]})})]})}),g.jsxs(zw,{children:[g.jsx(ss,{ref:d,onClick:o,className:"modal-close-btn",children:"Cancel"}),g.jsx(ss,{colorScheme:"red",onClick:m,ml:3,children:"Delete"})]})]})})})]})});A3.displayName="DeleteImageModal";const zE=()=>{const e=Te();return t=>{const n=typeof t=="string"?t:Rm(t),[r,i]=nU(n);e(cU(r)),e(dU(i))}},Wke=lt([hr,pp,DE,fp,d4,Br],(e,t,n,r,i,o)=>{const{isProcessing:a,isConnected:s,isGFPGANAvailable:l,isESRGANAvailable:u}=e,{upscalingLevel:d,facetoolStrength:p}=n,{isLightboxOpen:m}=i,{shouldShowImageDetails:y}=r,{intermediateImage:b,currentImage:w}=t;return{isProcessing:a,isConnected:s,isGFPGANAvailable:l,isESRGANAvailable:u,upscalingLevel:d,facetoolStrength:p,shouldDisableToolbarButtons:Boolean(b)||!w,currentImage:w,shouldShowImageDetails:y,activeTabName:o,isLightboxOpen:m}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),uG=()=>{var B,K,ne,z,$,V,X,Q;const e=Te(),{isProcessing:t,isConnected:n,isGFPGANAvailable:r,isESRGANAvailable:i,upscalingLevel:o,facetoolStrength:a,shouldDisableToolbarButtons:s,shouldShowImageDetails:l,currentImage:u,isLightboxOpen:d,activeTabName:p}=le(Wke),m=a2(),{t:y}=De(),b=zE(),w=()=>{u&&(d&&e(Om(!1)),e(y0(u)),e(Wo("img2img")))},E=async()=>{if(!u)return;const G=await fetch(u.url).then(ee=>ee.blob()),Y=[new ClipboardItem({[G.type]:G})];await navigator.clipboard.write(Y),m({title:y("toast.imageCopied"),status:"success",duration:2500,isClosable:!0})},_=()=>{navigator.clipboard.writeText(u?window.location.toString()+u.url:"").then(()=>{m({title:y("toast.imageLinkCopied"),status:"success",duration:2500,isClosable:!0})})};Qe("shift+i",()=>{u?(w(),m({title:y("toast.sentToImageToImage"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.imageNotLoaded"),description:y("toast.imageNotLoadedDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const k=()=>{var G,Y;u&&(u.metadata&&e(sU(u.metadata)),((G=u.metadata)==null?void 0:G.image.type)==="img2img"?e(Wo("img2img")):((Y=u.metadata)==null?void 0:Y.image.type)==="txt2img"&&e(Wo("txt2img")))};Qe("a",()=>{var G,Y;["txt2img","img2img"].includes((Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)==null?void 0:Y.type)?(k(),m({title:y("toast.parametersSet"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.parametersNotSet"),description:y("toast.parametersNotSetDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const T=()=>{u!=null&&u.metadata&&e(p2(u.metadata.image.seed))};Qe("s",()=>{var G,Y;(Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)!=null&&Y.seed?(T(),m({title:y("toast.seedSet"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.seedNotSet"),description:y("toast.seedNotSetDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const L=S.useCallback(()=>{var G,Y,ee,fe;(Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)!=null&&Y.prompt&&b((fe=(ee=u==null?void 0:u.metadata)==null?void 0:ee.image)==null?void 0:fe.prompt)},[(K=(B=u==null?void 0:u.metadata)==null?void 0:B.image)==null?void 0:K.prompt,b]);Qe("p",()=>{var G,Y;(Y=(G=u==null?void 0:u.metadata)==null?void 0:G.image)!=null&&Y.prompt?(L(),m({title:y("toast.promptSet"),status:"success",duration:2500,isClosable:!0})):m({title:y("toast.promptNotSet"),description:y("toast.promptNotSetDesc"),status:"error",duration:2500,isClosable:!0})},[u]);const O=()=>{u&&e(u_e(u))};Qe("Shift+U",()=>{i&&!s&&n&&!t&&o?O():m({title:y("toast.upscalingFailed"),status:"error",duration:2500,isClosable:!0})},[u,i,s,n,t,o]);const D=()=>{u&&e(c_e(u))};Qe("Shift+R",()=>{r&&!s&&n&&!t&&a?D():m({title:y("toast.faceRestoreFailed"),status:"error",duration:2500,isClosable:!0})},[u,r,s,n,t,a]);const I=()=>e(BU(!l)),N=()=>{u&&(d&&e(Om(!1)),e(i4(u)),e(Li(!0)),p!=="unifiedCanvas"&&e(Wo("unifiedCanvas")),m({title:y("toast.sentToUnifiedCanvas"),status:"success",duration:2500,isClosable:!0}))};Qe("i",()=>{u?I():m({title:y("toast.metadataLoadFailed"),status:"error",duration:2500,isClosable:!0})},[u,l]);const W=()=>{e(Om(!d))};return g.jsxs("div",{className:"current-image-options",children:[g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":`${y("parameters.sendTo")}...`,icon:g.jsx(jke,{})}),children:g.jsxs("div",{className:"current-image-send-to-popover",children:[g.jsx(On,{size:"sm",onClick:w,leftIcon:g.jsx(AI,{}),children:y("parameters.sendToImg2Img")}),g.jsx(On,{size:"sm",onClick:N,leftIcon:g.jsx(AI,{}),children:y("parameters.sendToUnifiedCanvas")}),g.jsx(On,{size:"sm",onClick:E,leftIcon:g.jsx(e0,{}),children:y("parameters.copyImage")}),g.jsx(On,{size:"sm",onClick:_,leftIcon:g.jsx(e0,{}),children:y("parameters.copyImageToLink")}),g.jsx(Nh,{download:!0,href:u==null?void 0:u.url,children:g.jsx(On,{leftIcon:g.jsx(NE,{}),size:"sm",w:"100%",children:y("parameters.downloadImage")})})]})}),g.jsx(Ye,{icon:g.jsx(Ske,{}),tooltip:d?`${y("parameters.closeViewer")} (Z)`:`${y("parameters.openInViewer")} (Z)`,"aria-label":d?`${y("parameters.closeViewer")} (Z)`:`${y("parameters.openInViewer")} (Z)`,"data-selected":d,onClick:W})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{icon:g.jsx(Oke,{}),tooltip:`${y("parameters.usePrompt")} (P)`,"aria-label":`${y("parameters.usePrompt")} (P)`,isDisabled:!((z=(ne=u==null?void 0:u.metadata)==null?void 0:ne.image)!=null&&z.prompt),onClick:L}),g.jsx(Ye,{icon:g.jsx(Dke,{}),tooltip:`${y("parameters.useSeed")} (S)`,"aria-label":`${y("parameters.useSeed")} (S)`,isDisabled:!((V=($=u==null?void 0:u.metadata)==null?void 0:$.image)!=null&&V.seed),onClick:T}),g.jsx(Ye,{icon:g.jsx(vke,{}),tooltip:`${y("parameters.useAll")} (A)`,"aria-label":`${y("parameters.useAll")} (A)`,isDisabled:!["txt2img","img2img"].includes((Q=(X=u==null?void 0:u.metadata)==null?void 0:X.image)==null?void 0:Q.type),onClick:k})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{icon:g.jsx(_ke,{}),"aria-label":y("parameters.restoreFaces")}),children:g.jsxs("div",{className:"current-image-postprocessing-popover",children:[g.jsx(RE,{}),g.jsx(On,{isDisabled:!r||!u||!(n&&!t)||!a,onClick:D,children:y("parameters.restoreFaces")})]})}),g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{icon:g.jsx(xke,{}),"aria-label":y("parameters.upscale")}),children:g.jsxs("div",{className:"current-image-postprocessing-popover",children:[g.jsx(IE,{}),g.jsx(On,{isDisabled:!i||!u||!(n&&!t)||!o,onClick:O,children:y("parameters.upscaleImage")})]})})]}),g.jsx(Gi,{isAttached:!0,children:g.jsx(Ye,{icon:g.jsx(tG,{}),tooltip:`${y("parameters.info")} (I)`,"aria-label":`${y("parameters.info")} (I)`,"data-selected":l,onClick:I})}),g.jsx(A3,{image:u,children:g.jsx(Ye,{icon:g.jsx(hp,{}),tooltip:`${y("parameters.deleteImage")} (Del)`,"aria-label":`${y("parameters.deleteImage")} (Del)`,isDisabled:!u||!n||t,style:{backgroundColor:"var(--btn-delete-image)"}})})]})};var Uke=fc({displayName:"EditIcon",path:g.jsxs("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:"2",children:[g.jsx("path",{d:"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}),g.jsx("path",{d:"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"})]})}),cG=fc({displayName:"ExternalLinkIcon",path:g.jsxs("g",{fill:"none",stroke:"currentColor",strokeLinecap:"round",strokeWidth:"2",children:[g.jsx("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),g.jsx("path",{d:"M15 3h6v6"}),g.jsx("path",{d:"M10 14L21 3"})]})}),Vke=fc({displayName:"DeleteIcon",path:g.jsx("g",{fill:"currentColor",children:g.jsx("path",{d:"M19.452 7.5H4.547a.5.5 0 00-.5.545l1.287 14.136A2 2 0 007.326 24h9.347a2 2 0 001.992-1.819L19.95 8.045a.5.5 0 00-.129-.382.5.5 0 00-.369-.163zm-9.2 13a.75.75 0 01-1.5 0v-9a.75.75 0 011.5 0zm5 0a.75.75 0 01-1.5 0v-9a.75.75 0 011.5 0zM22 4h-4.75a.25.25 0 01-.25-.25V2.5A2.5 2.5 0 0014.5 0h-5A2.5 2.5 0 007 2.5v1.25a.25.25 0 01-.25.25H2a1 1 0 000 2h20a1 1 0 000-2zM9 3.75V2.5a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v1.25a.25.25 0 01-.25.25h-5.5A.25.25 0 019 3.75z"})})});function Gke(e){return ut({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M245.09 327.74v-37.32c57.07 0 84.51 13.47 108.58 38.68 5.4 5.65 15 1.32 14.29-6.43-5.45-61.45-34.14-117.09-122.87-117.09v-37.32a8.32 8.32 0 00-14.05-6L146.58 242a8.2 8.2 0 000 11.94L231 333.71a8.32 8.32 0 0014.09-5.97z"}},{tag:"path",attr:{fill:"none",strokeMiterlimit:"10",strokeWidth:"32",d:"M256 64C150 64 64 150 64 256s86 192 192 192 192-86 192-192S362 64 256 64z"}}]})(e)}const Jn=({label:e,value:t,onClick:n,isLink:r,labelPosition:i,withCopy:o=!1})=>g.jsxs(Ee,{gap:2,children:[n&&g.jsx(si,{label:`Recall ${e}`,children:g.jsx(ls,{"aria-label":"Use this parameter",icon:g.jsx(Gke,{}),size:"xs",variant:"ghost",fontSize:20,onClick:n})}),o&&g.jsx(si,{label:`Copy ${e}`,children:g.jsx(ls,{"aria-label":`Copy ${e}`,icon:g.jsx(e0,{}),size:"xs",variant:"ghost",fontSize:14,onClick:()=>navigator.clipboard.writeText(t.toString())})}),g.jsxs(Ee,{direction:i?"column":"row",children:[g.jsxs(Dt,{fontWeight:"semibold",whiteSpace:"pre-wrap",pr:2,children:[e,":"]}),r?g.jsxs(Nh,{href:t.toString(),isExternal:!0,wordBreak:"break-all",children:[t.toString()," ",g.jsx(cG,{mx:"2px"})]}):g.jsx(Dt,{overflowY:"scroll",wordBreak:"break-all",children:t.toString()})]})]}),qke=(e,t)=>e.image.uuid===t.image.uuid,HE=S.memo(({image:e,styleClass:t})=>{var B,K;const n=Te(),r=zE();Qe("esc",()=>{n(BU(!1))});const i=((B=e==null?void 0:e.metadata)==null?void 0:B.image)||{},o=e==null?void 0:e.dreamPrompt,{cfg_scale:a,fit:s,height:l,hires_fix:u,init_image_path:d,mask_image_path:p,orig_path:m,perlin:y,postprocessing:b,prompt:w,sampler:E,seamless:_,seed:k,steps:T,strength:L,threshold:O,type:D,variations:I,width:N}=i,W=JSON.stringify(e.metadata,null,2);return g.jsx("div",{className:`image-metadata-viewer ${t}`,children:g.jsxs(Ee,{gap:1,direction:"column",width:"100%",children:[g.jsxs(Ee,{gap:2,children:[g.jsx(Dt,{fontWeight:"semibold",children:"File:"}),g.jsxs(Nh,{href:e.url,isExternal:!0,maxW:"calc(100% - 3rem)",children:[e.url.length>64?e.url.substring(0,64).concat("..."):e.url,g.jsx(cG,{mx:"2px"})]})]}),Object.keys(i).length>0?g.jsxs(g.Fragment,{children:[D&&g.jsx(Jn,{label:"Generation type",value:D}),((K=e.metadata)==null?void 0:K.model_weights)&&g.jsx(Jn,{label:"Model",value:e.metadata.model_weights}),["esrgan","gfpgan"].includes(D)&&g.jsx(Jn,{label:"Original image",value:m}),w&&g.jsx(Jn,{label:"Prompt",labelPosition:"top",value:typeof w=="string"?w:Rm(w),onClick:()=>r(w)}),k!==void 0&&g.jsx(Jn,{label:"Seed",value:k,onClick:()=>n(p2(k))}),O!==void 0&&g.jsx(Jn,{label:"Noise Threshold",value:O,onClick:()=>n(bk(O))}),y!==void 0&&g.jsx(Jn,{label:"Perlin Noise",value:y,onClick:()=>n(vk(y))}),E&&g.jsx(Jn,{label:"Sampler",value:E,onClick:()=>n(fU(E))}),T&&g.jsx(Jn,{label:"Steps",value:T,onClick:()=>n(yk(T))}),a!==void 0&&g.jsx(Jn,{label:"CFG scale",value:a,onClick:()=>n(gk(a))}),I&&I.length>0&&g.jsx(Jn,{label:"Seed-weight pairs",value:_3(I),onClick:()=>n(pU(_3(I)))}),_&&g.jsx(Jn,{label:"Seamless",value:_,onClick:()=>n(hU(_))}),u&&g.jsx(Jn,{label:"High Resolution Optimization",value:u,onClick:()=>n(yU(u))}),N&&g.jsx(Jn,{label:"Width",value:N,onClick:()=>n(cS(N))}),l&&g.jsx(Jn,{label:"Height",value:l,onClick:()=>n(uS(l))}),d&&g.jsx(Jn,{label:"Initial image",value:d,isLink:!0,onClick:()=>n(y0(d))}),p&&g.jsx(Jn,{label:"Mask image",value:p,isLink:!0,onClick:()=>n(uU(p))}),D==="img2img"&&L&&g.jsx(Jn,{label:"Image to image strength",value:L,onClick:()=>n(mk(L))}),s&&g.jsx(Jn,{label:"Image to image fit",value:s,onClick:()=>n(gU(s))}),b&&b.length>0&&g.jsxs(g.Fragment,{children:[g.jsx(jh,{size:"sm",children:"Postprocessing"}),b.map((ne,z)=>{if(ne.type==="esrgan"){const{scale:$,strength:V,denoise_str:X}=ne;return g.jsxs(Ee,{pl:"2rem",gap:1,direction:"column",children:[g.jsx(Dt,{size:"md",children:`${z+1}: Upscale (ESRGAN)`}),g.jsx(Jn,{label:"Scale",value:$,onClick:()=>n(bU($))}),g.jsx(Jn,{label:"Strength",value:V,onClick:()=>n(wk(V))}),X!==void 0&&g.jsx(Jn,{label:"Denoising strength",value:X,onClick:()=>n(Sk(X))})]},z)}else if(ne.type==="gfpgan"){const{strength:$}=ne;return g.jsxs(Ee,{pl:"2rem",gap:1,direction:"column",children:[g.jsx(Dt,{size:"md",children:`${z+1}: Face restoration (GFPGAN)`}),g.jsx(Jn,{label:"Strength",value:$,onClick:()=>{n(k3($)),n(dS("gfpgan"))}})]},z)}else if(ne.type==="codeformer"){const{strength:$,fidelity:V}=ne;return g.jsxs(Ee,{pl:"2rem",gap:1,direction:"column",children:[g.jsx(Dt,{size:"md",children:`${z+1}: Face restoration (Codeformer)`}),g.jsx(Jn,{label:"Strength",value:$,onClick:()=>{n(k3($)),n(dS("codeformer"))}}),V&&g.jsx(Jn,{label:"Fidelity",value:V,onClick:()=>{n(xk(V)),n(dS("codeformer"))}})]},z)}})]}),o&&g.jsx(Jn,{withCopy:!0,label:"Dream Prompt",value:o}),g.jsxs(Ee,{gap:2,direction:"column",children:[g.jsxs(Ee,{gap:2,children:[g.jsx(si,{label:"Copy metadata JSON",children:g.jsx(ls,{"aria-label":"Copy metadata JSON",icon:g.jsx(e0,{}),size:"xs",variant:"ghost",fontSize:14,onClick:()=>navigator.clipboard.writeText(W)})}),g.jsx(Dt,{fontWeight:"semibold",children:"Metadata JSON:"})]}),g.jsx("div",{className:"image-json-viewer",children:g.jsx("pre",{children:W})})]})]}):g.jsx(aH,{width:"100%",pt:10,children:g.jsx(Dt,{fontSize:"lg",fontWeight:"semibold",children:"No metadata available"})})]})})},qke);HE.displayName="ImageMetadataViewer";const dG=lt([pp,fp],(e,t)=>{const{currentCategory:n,currentImage:r,intermediateImage:i}=e,{shouldShowImageDetails:o}=t,a=e.categories[r?r.category:"result"].images,s=a.findIndex(u=>{var d;return u.uuid===((d=e==null?void 0:e.currentImage)==null?void 0:d.uuid)}),l=a.length;return{imageToDisplay:i||r,isIntermediate:Boolean(i),viewerImageToDisplay:r,currentCategory:n,isOnFirstImage:s===0,isOnLastImage:!isNaN(s)&&s===l-1,shouldShowImageDetails:o,shouldShowPrevImageButton:s===0,shouldShowNextImageButton:!isNaN(s)&&s===l-1}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function Kke(){const e=Te(),{isOnFirstImage:t,isOnLastImage:n,shouldShowImageDetails:r,imageToDisplay:i,isIntermediate:o}=le(dG),[a,s]=S.useState(!1),l=()=>{s(!0)},u=()=>{s(!1)},d=()=>{e(vE())},p=()=>{e(mE())};return g.jsxs("div",{className:"current-image-preview",children:[i&&g.jsx(jw,{src:i.url,width:i.width,height:i.height,style:{imageRendering:o?"pixelated":"initial"}}),!r&&g.jsxs("div",{className:"current-image-next-prev-buttons",children:[g.jsx("div",{className:"next-prev-button-trigger-area prev-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!t&&g.jsx(ls,{"aria-label":"Previous image",icon:g.jsx(QV,{className:"next-prev-button"}),variant:"unstyled",onClick:d})}),g.jsx("div",{className:"next-prev-button-trigger-area next-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!n&&g.jsx(ls,{"aria-label":"Next image",icon:g.jsx(JV,{className:"next-prev-button"}),variant:"unstyled",onClick:p})})]}),r&&i&&g.jsx(HE,{image:i,styleClass:"current-image-metadata"})]})}var Yke=globalThis&&globalThis.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var o in i)Object.prototype.hasOwnProperty.call(i,o)&&(r[o]=i[o])},e(t,n)};return function(t,n){e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),ni=globalThis&&globalThis.__assign||function(){return ni=Object.assign||function(e){for(var t,n=1,r=arguments.length;n"u"?void 0:Number(r),maxHeight:typeof i>"u"?void 0:Number(i),minWidth:typeof o>"u"?void 0:Number(o),minHeight:typeof a>"u"?void 0:Number(a)}},n7e=["as","style","className","grid","snap","bounds","boundsByDirection","size","defaultSize","minWidth","minHeight","maxWidth","maxHeight","lockAspectRatio","lockAspectRatioExtraWidth","lockAspectRatioExtraHeight","enable","handleStyles","handleClasses","handleWrapperStyle","handleWrapperClass","children","onResizeStart","onResize","onResizeStop","handleComponent","scale","resizeRatio","snapGap"],jI="__resizable_base__",fG=function(e){Qke(t,e);function t(n){var r=e.call(this,n)||this;return r.ratio=1,r.resizable=null,r.parentLeft=0,r.parentTop=0,r.resizableLeft=0,r.resizableRight=0,r.resizableTop=0,r.resizableBottom=0,r.targetLeft=0,r.targetTop=0,r.appendBase=function(){if(!r.resizable||!r.window)return null;var i=r.parentNode;if(!i)return null;var o=r.window.document.createElement("div");return o.style.width="100%",o.style.height="100%",o.style.position="absolute",o.style.transform="scale(0, 0)",o.style.left="0",o.style.flex="0 0 100%",o.classList?o.classList.add(jI):o.className+=jI,i.appendChild(o),o},r.removeBase=function(i){var o=r.parentNode;o&&o.removeChild(i)},r.ref=function(i){i&&(r.resizable=i)},r.state={isResizing:!1,width:typeof(r.propsSize&&r.propsSize.width)>"u"?"auto":r.propsSize&&r.propsSize.width,height:typeof(r.propsSize&&r.propsSize.height)>"u"?"auto":r.propsSize&&r.propsSize.height,direction:"right",original:{x:0,y:0,width:0,height:0},backgroundStyle:{height:"100%",width:"100%",backgroundColor:"rgba(0,0,0,0)",cursor:"auto",opacity:0,position:"fixed",zIndex:9999,top:"0",left:"0",bottom:"0",right:"0"},flexBasis:void 0},r.onResizeStart=r.onResizeStart.bind(r),r.onMouseMove=r.onMouseMove.bind(r),r.onMouseUp=r.onMouseUp.bind(r),r}return Object.defineProperty(t.prototype,"parentNode",{get:function(){return this.resizable?this.resizable.parentNode:null},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"window",{get:function(){return!this.resizable||!this.resizable.ownerDocument?null:this.resizable.ownerDocument.defaultView},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"propsSize",{get:function(){return this.props.size||this.props.defaultSize||Jke},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"size",{get:function(){var n=0,r=0;if(this.resizable&&this.window){var i=this.resizable.offsetWidth,o=this.resizable.offsetHeight,a=this.resizable.style.position;a!=="relative"&&(this.resizable.style.position="relative"),n=this.resizable.style.width!=="auto"?this.resizable.offsetWidth:i,r=this.resizable.style.height!=="auto"?this.resizable.offsetHeight:o,this.resizable.style.position=a}return{width:n,height:r}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"sizeStyle",{get:function(){var n=this,r=this.props.size,i=function(s){if(typeof n.state[s]>"u"||n.state[s]==="auto")return"auto";if(n.propsSize&&n.propsSize[s]&&n.propsSize[s].toString().endsWith("%")){if(n.state[s].toString().endsWith("%"))return n.state[s].toString();var l=n.getParentSize(),u=Number(n.state[s].toString().replace("px","")),d=u/l[s]*100;return d+"%"}return QC(n.state[s])},o=r&&typeof r.width<"u"&&!this.state.isResizing?QC(r.width):i("width"),a=r&&typeof r.height<"u"&&!this.state.isResizing?QC(r.height):i("height");return{width:o,height:a}},enumerable:!1,configurable:!0}),t.prototype.getParentSize=function(){if(!this.parentNode)return this.window?{width:this.window.innerWidth,height:this.window.innerHeight}:{width:0,height:0};var n=this.appendBase();if(!n)return{width:0,height:0};var r=!1,i=this.parentNode.style.flexWrap;i!=="wrap"&&(r=!0,this.parentNode.style.flexWrap="wrap"),n.style.position="relative",n.style.minWidth="100%",n.style.minHeight="100%";var o={width:n.offsetWidth,height:n.offsetHeight};return r&&(this.parentNode.style.flexWrap=i),this.removeBase(n),o},t.prototype.bindEvents=function(){this.window&&(this.window.addEventListener("mouseup",this.onMouseUp),this.window.addEventListener("mousemove",this.onMouseMove),this.window.addEventListener("mouseleave",this.onMouseUp),this.window.addEventListener("touchmove",this.onMouseMove,{capture:!0,passive:!1}),this.window.addEventListener("touchend",this.onMouseUp))},t.prototype.unbindEvents=function(){this.window&&(this.window.removeEventListener("mouseup",this.onMouseUp),this.window.removeEventListener("mousemove",this.onMouseMove),this.window.removeEventListener("mouseleave",this.onMouseUp),this.window.removeEventListener("touchmove",this.onMouseMove,!0),this.window.removeEventListener("touchend",this.onMouseUp))},t.prototype.componentDidMount=function(){if(!(!this.resizable||!this.window)){var n=this.window.getComputedStyle(this.resizable);this.setState({width:this.state.width||this.size.width,height:this.state.height||this.size.height,flexBasis:n.flexBasis!=="auto"?n.flexBasis:void 0})}},t.prototype.componentWillUnmount=function(){this.window&&this.unbindEvents()},t.prototype.createSizeForCssProperty=function(n,r){var i=this.propsSize&&this.propsSize[r];return this.state[r]==="auto"&&this.state.original[r]===n&&(typeof i>"u"||i==="auto")?"auto":n},t.prototype.calculateNewMaxFromBoundary=function(n,r){var i=this.props.boundsByDirection,o=this.state.direction,a=i&&Ig("left",o),s=i&&Ig("top",o),l,u;if(this.props.bounds==="parent"){var d=this.parentNode;d&&(l=a?this.resizableRight-this.parentLeft:d.offsetWidth+(this.parentLeft-this.resizableLeft),u=s?this.resizableBottom-this.parentTop:d.offsetHeight+(this.parentTop-this.resizableTop))}else this.props.bounds==="window"?this.window&&(l=a?this.resizableRight:this.window.innerWidth-this.resizableLeft,u=s?this.resizableBottom:this.window.innerHeight-this.resizableTop):this.props.bounds&&(l=a?this.resizableRight-this.targetLeft:this.props.bounds.offsetWidth+(this.targetLeft-this.resizableLeft),u=s?this.resizableBottom-this.targetTop:this.props.bounds.offsetHeight+(this.targetTop-this.resizableTop));return l&&Number.isFinite(l)&&(n=n&&n"u"?10:o.width,p=typeof i.width>"u"||i.width<0?n:i.width,m=typeof o.height>"u"?10:o.height,y=typeof i.height>"u"||i.height<0?r:i.height,b=l||0,w=u||0;if(s){var E=(m-b)*this.ratio+w,_=(y-b)*this.ratio+w,k=(d-w)/this.ratio+b,T=(p-w)/this.ratio+b,L=Math.max(d,E),O=Math.min(p,_),D=Math.max(m,k),I=Math.min(y,T);n=yx(n,L,O),r=yx(r,D,I)}else n=yx(n,d,p),r=yx(r,m,y);return{newWidth:n,newHeight:r}},t.prototype.setBoundingClientRect=function(){if(this.props.bounds==="parent"){var n=this.parentNode;if(n){var r=n.getBoundingClientRect();this.parentLeft=r.left,this.parentTop=r.top}}if(this.props.bounds&&typeof this.props.bounds!="string"){var i=this.props.bounds.getBoundingClientRect();this.targetLeft=i.left,this.targetTop=i.top}if(this.resizable){var o=this.resizable.getBoundingClientRect(),a=o.left,s=o.top,l=o.right,u=o.bottom;this.resizableLeft=a,this.resizableRight=l,this.resizableTop=s,this.resizableBottom=u}},t.prototype.onResizeStart=function(n,r){if(!(!this.resizable||!this.window)){var i=0,o=0;if(n.nativeEvent&&e7e(n.nativeEvent)?(i=n.nativeEvent.clientX,o=n.nativeEvent.clientY):n.nativeEvent&&bx(n.nativeEvent)&&(i=n.nativeEvent.touches[0].clientX,o=n.nativeEvent.touches[0].clientY),this.props.onResizeStart&&this.resizable){var a=this.props.onResizeStart(n,r,this.resizable);if(a===!1)return}this.props.size&&(typeof this.props.size.height<"u"&&this.props.size.height!==this.state.height&&this.setState({height:this.props.size.height}),typeof this.props.size.width<"u"&&this.props.size.width!==this.state.width&&this.setState({width:this.props.size.width})),this.ratio=typeof this.props.lockAspectRatio=="number"?this.props.lockAspectRatio:this.size.width/this.size.height;var s,l=this.window.getComputedStyle(this.resizable);if(l.flexBasis!=="auto"){var u=this.parentNode;if(u){var d=this.window.getComputedStyle(u).flexDirection;this.flexDir=d.startsWith("row")?"row":"column",s=l.flexBasis}}this.setBoundingClientRect(),this.bindEvents();var p={original:{x:i,y:o,width:this.size.width,height:this.size.height},isResizing:!0,backgroundStyle:Ol(Ol({},this.state.backgroundStyle),{cursor:this.window.getComputedStyle(n.target).cursor||"auto"}),direction:r,flexBasis:s};this.setState(p)}},t.prototype.onMouseMove=function(n){var r=this;if(!(!this.state.isResizing||!this.resizable||!this.window)){if(this.window.TouchEvent&&bx(n))try{n.preventDefault(),n.stopPropagation()}catch{}var i=this.props,o=i.maxWidth,a=i.maxHeight,s=i.minWidth,l=i.minHeight,u=bx(n)?n.touches[0].clientX:n.clientX,d=bx(n)?n.touches[0].clientY:n.clientY,p=this.state,m=p.direction,y=p.original,b=p.width,w=p.height,E=this.getParentSize(),_=t7e(E,this.window.innerWidth,this.window.innerHeight,o,a,s,l);o=_.maxWidth,a=_.maxHeight,s=_.minWidth,l=_.minHeight;var k=this.calculateNewSizeFromDirection(u,d),T=k.newHeight,L=k.newWidth,O=this.calculateNewMaxFromBoundary(o,a);this.props.snap&&this.props.snap.x&&(L=DI(L,this.props.snap.x,this.props.snapGap)),this.props.snap&&this.props.snap.y&&(T=DI(T,this.props.snap.y,this.props.snapGap));var D=this.calculateNewSizeFromAspectRatio(L,T,{width:O.maxWidth,height:O.maxHeight},{width:s,height:l});if(L=D.newWidth,T=D.newHeight,this.props.grid){var I=II(L,this.props.grid[0]),N=II(T,this.props.grid[1]),W=this.props.snapGap||0;L=W===0||Math.abs(I-L)<=W?I:L,T=W===0||Math.abs(N-T)<=W?N:T}var B={width:L-y.width,height:T-y.height};if(b&&typeof b=="string"){if(b.endsWith("%")){var K=L/E.width*100;L=K+"%"}else if(b.endsWith("vw")){var ne=L/this.window.innerWidth*100;L=ne+"vw"}else if(b.endsWith("vh")){var z=L/this.window.innerHeight*100;L=z+"vh"}}if(w&&typeof w=="string"){if(w.endsWith("%")){var K=T/E.height*100;T=K+"%"}else if(w.endsWith("vw")){var ne=T/this.window.innerWidth*100;T=ne+"vw"}else if(w.endsWith("vh")){var z=T/this.window.innerHeight*100;T=z+"vh"}}var $={width:this.createSizeForCssProperty(L,"width"),height:this.createSizeForCssProperty(T,"height")};this.flexDir==="row"?$.flexBasis=$.width:this.flexDir==="column"&&($.flexBasis=$.height),Xs.flushSync(function(){r.setState($)}),this.props.onResize&&this.props.onResize(n,m,this.resizable,B)}},t.prototype.onMouseUp=function(n){var r=this.state,i=r.isResizing,o=r.direction,a=r.original;if(!(!i||!this.resizable)){var s={width:this.size.width-a.width,height:this.size.height-a.height};this.props.onResizeStop&&this.props.onResizeStop(n,o,this.resizable,s),this.props.size&&this.setState(this.props.size),this.unbindEvents(),this.setState({isResizing:!1,backgroundStyle:Ol(Ol({},this.state.backgroundStyle),{cursor:"auto"})})}},t.prototype.updateSize=function(n){this.setState({width:n.width,height:n.height})},t.prototype.renderResizer=function(){var n=this,r=this.props,i=r.enable,o=r.handleStyles,a=r.handleClasses,s=r.handleWrapperStyle,l=r.handleWrapperClass,u=r.handleComponent;if(!i)return null;var d=Object.keys(i).map(function(p){return i[p]!==!1?S.createElement(Zke,{key:p,direction:p,onResizeStart:n.onResizeStart,replaceStyles:o&&o[p],className:a&&a[p]},u&&u[p]?u[p]:null):null});return S.createElement("div",{className:l,style:s},d)},t.prototype.render=function(){var n=this,r=Object.keys(this.props).reduce(function(a,s){return n7e.indexOf(s)!==-1||(a[s]=n.props[s]),a},{}),i=Ol(Ol(Ol({position:"relative",userSelect:this.state.isResizing?"none":"auto"},this.props.style),this.sizeStyle),{maxWidth:this.props.maxWidth,maxHeight:this.props.maxHeight,minWidth:this.props.minWidth,minHeight:this.props.minHeight,boxSizing:"border-box",flexShrink:0});this.state.flexBasis&&(i.flexBasis=this.state.flexBasis);var o=this.props.as||"div";return S.createElement(o,Ol({ref:this.ref,style:i,className:this.props.className},r),this.state.isResizing&&S.createElement("div",{style:this.state.backgroundStyle}),this.props.children,this.renderResizer())},t.defaultProps={as:"div",onResizeStart:function(){},onResize:function(){},onResizeStop:function(){},enable:{top:!0,right:!0,bottom:!0,left:!0,topRight:!0,bottomRight:!0,bottomLeft:!0,topLeft:!0},style:{},grid:[1,1],lockAspectRatio:!1,lockAspectRatioExtraWidth:0,lockAspectRatioExtraHeight:0,scale:1,resizeRatio:1,snapGap:0},t}(S.PureComponent);const Gn=e=>{const{label:t,styleClass:n,...r}=e;return g.jsx(dz,{className:`invokeai__checkbox ${n}`,...r,children:t})};function hG(e){return ut({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 0 1 1.013.16l3.134-3.133a2.772 2.772 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146z"}}]})(e)}function pG(e){return ut({tag:"svg",attr:{fill:"currentColor",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M9.828.722a.5.5 0 0 1 .354.146l4.95 4.95a.5.5 0 0 1 0 .707c-.48.48-1.072.588-1.503.588-.177 0-.335-.018-.46-.039l-3.134 3.134a5.927 5.927 0 0 1 .16 1.013c.046.702-.032 1.687-.72 2.375a.5.5 0 0 1-.707 0l-2.829-2.828-3.182 3.182c-.195.195-1.219.902-1.414.707-.195-.195.512-1.22.707-1.414l3.182-3.182-2.828-2.829a.5.5 0 0 1 0-.707c.688-.688 1.673-.767 2.375-.72a5.922 5.922 0 0 1 1.013.16l3.134-3.133a2.772 2.772 0 0 1-.04-.461c0-.43.108-1.022.589-1.503a.5.5 0 0 1 .353-.146zm.122 2.112v-.002.002zm0-.002v.002a.5.5 0 0 1-.122.51L6.293 6.878a.5.5 0 0 1-.511.12H5.78l-.014-.004a4.507 4.507 0 0 0-.288-.076 4.922 4.922 0 0 0-.765-.116c-.422-.028-.836.008-1.175.15l5.51 5.509c.141-.34.177-.753.149-1.175a4.924 4.924 0 0 0-.192-1.054l-.004-.013v-.001a.5.5 0 0 1 .12-.512l3.536-3.535a.5.5 0 0 1 .532-.115l.096.022c.087.017.208.034.344.034.114 0 .23-.011.343-.04L9.927 2.028c-.029.113-.04.23-.04.343a1.779 1.779 0 0 0 .062.46z"}}]})(e)}function r7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M16.5 9c-.42 0-.83.04-1.24.11L1.01 3 1 10l9 2-9 2 .01 7 8.07-3.46C9.59 21.19 12.71 24 16.5 24c4.14 0 7.5-3.36 7.5-7.5S20.64 9 16.5 9zm0 13c-3.03 0-5.5-2.47-5.5-5.5s2.47-5.5 5.5-5.5 5.5 2.47 5.5 5.5-2.47 5.5-5.5 5.5z"}},{tag:"path",attr:{d:"M18.27 14.03l-1.77 1.76-1.77-1.76-.7.7 1.76 1.77-1.76 1.77.7.7 1.77-1.76 1.77 1.76.7-.7-1.76-1.77 1.76-1.77z"}}]})(e)}function i7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M20 19.59V8l-6-6H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c.45 0 .85-.15 1.19-.4l-4.43-4.43c-.8.52-1.74.83-2.76.83-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5c0 1.02-.31 1.96-.83 2.75L20 19.59zM9 13c0 1.66 1.34 3 3 3s3-1.34 3-3-1.34-3-3-3-3 1.34-3 3z"}}]})(e)}function o7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"}}]})(e)}function a7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0V0z"}},{tag:"path",attr:{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58a.49.49 0 00.12-.61l-1.92-3.32a.488.488 0 00-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54a.484.484 0 00-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58a.49.49 0 00-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61l-2.01-1.58zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6z"}}]})(e)}function s7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M15 21h2v-2h-2v2zm4-12h2V7h-2v2zM3 5v14c0 1.1.9 2 2 2h4v-2H5V5h4V3H5c-1.1 0-2 .9-2 2zm16-2v2h2c0-1.1-.9-2-2-2zm-8 20h2V1h-2v22zm8-6h2v-2h-2v2zM15 5h2V3h-2v2zm4 8h2v-2h-2v2zm0 8c1.1 0 2-.9 2-2h-2v2z"}}]})(e)}function gG(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M22 16V4c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-11-4l2.03 2.71L16 11l4 5H8l3-4zM2 6v14c0 1.1.9 2 2 2h14v-2H4V6H2z"}}]})(e)}function l7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z"}}]})(e)}function u7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M7 10l5 5 5-5z"}}]})(e)}function c7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M7 14l5-5 5 5z"}}]})(e)}function d7e(e){return ut({tag:"svg",attr:{viewBox:"0 0 24 24"},child:[{tag:"path",attr:{fill:"none",d:"M0 0h24v24H0z"}},{tag:"path",attr:{d:"M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z"}}]})(e)}function f7e(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function h7e(e,t){e.classList?e.classList.add(t):f7e(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function NI(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function p7e(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=NI(e.className,t):e.setAttribute("class",NI(e.className&&e.className.baseVal||"",t))}const $I={disabled:!1},mG=Ke.createContext(null);var vG=function(t){return t.scrollTop},S1="unmounted",ph="exited",gh="entering",Fg="entered",Gk="exiting",mc=function(e){b8(t,e);function t(r,i){var o;o=e.call(this,r,i)||this;var a=i,s=a&&!a.isMounting?r.enter:r.appear,l;return o.appearStatus=null,r.in?s?(l=ph,o.appearStatus=gh):l=Fg:r.unmountOnExit||r.mountOnEnter?l=S1:l=ph,o.state={status:l},o.nextCallback=null,o}t.getDerivedStateFromProps=function(i,o){var a=i.in;return a&&o.status===S1?{status:ph}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(i){var o=null;if(i!==this.props){var a=this.state.status;this.props.in?a!==gh&&a!==Fg&&(o=gh):(a===gh||a===Fg)&&(o=Gk)}this.updateStatus(!1,o)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var i=this.props.timeout,o,a,s;return o=a=s=i,i!=null&&typeof i!="number"&&(o=i.exit,a=i.enter,s=i.appear!==void 0?i.appear:a),{exit:o,enter:a,appear:s}},n.updateStatus=function(i,o){if(i===void 0&&(i=!1),o!==null)if(this.cancelNextCallback(),o===gh){if(this.props.unmountOnExit||this.props.mountOnEnter){var a=this.props.nodeRef?this.props.nodeRef.current:Ob.findDOMNode(this);a&&vG(a)}this.performEnter(i)}else this.performExit();else this.props.unmountOnExit&&this.state.status===ph&&this.setState({status:S1})},n.performEnter=function(i){var o=this,a=this.props.enter,s=this.context?this.context.isMounting:i,l=this.props.nodeRef?[s]:[Ob.findDOMNode(this),s],u=l[0],d=l[1],p=this.getTimeouts(),m=s?p.appear:p.enter;if(!i&&!a||$I.disabled){this.safeSetState({status:Fg},function(){o.props.onEntered(u)});return}this.props.onEnter(u,d),this.safeSetState({status:gh},function(){o.props.onEntering(u,d),o.onTransitionEnd(m,function(){o.safeSetState({status:Fg},function(){o.props.onEntered(u,d)})})})},n.performExit=function(){var i=this,o=this.props.exit,a=this.getTimeouts(),s=this.props.nodeRef?void 0:Ob.findDOMNode(this);if(!o||$I.disabled){this.safeSetState({status:ph},function(){i.props.onExited(s)});return}this.props.onExit(s),this.safeSetState({status:Gk},function(){i.props.onExiting(s),i.onTransitionEnd(a.exit,function(){i.safeSetState({status:ph},function(){i.props.onExited(s)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(i,o){o=this.setNextCallback(o),this.setState(i,o)},n.setNextCallback=function(i){var o=this,a=!0;return this.nextCallback=function(s){a&&(a=!1,o.nextCallback=null,i(s))},this.nextCallback.cancel=function(){a=!1},this.nextCallback},n.onTransitionEnd=function(i,o){this.setNextCallback(o);var a=this.props.nodeRef?this.props.nodeRef.current:Ob.findDOMNode(this),s=i==null&&!this.props.addEndListener;if(!a||s){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var l=this.props.nodeRef?[this.nextCallback]:[a,this.nextCallback],u=l[0],d=l[1];this.props.addEndListener(u,d)}i!=null&&setTimeout(this.nextCallback,i)},n.render=function(){var i=this.state.status;if(i===S1)return null;var o=this.props,a=o.children;o.in,o.mountOnEnter,o.unmountOnExit,o.appear,o.enter,o.exit,o.timeout,o.addEndListener,o.onEnter,o.onEntering,o.onEntered,o.onExit,o.onExiting,o.onExited,o.nodeRef;var s=m8(o,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return Ke.createElement(mG.Provider,{value:null},typeof a=="function"?a(i,s):Ke.cloneElement(Ke.Children.only(a),s))},t}(Ke.Component);mc.contextType=mG;mc.propTypes={};function Dg(){}mc.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Dg,onEntering:Dg,onEntered:Dg,onExit:Dg,onExiting:Dg,onExited:Dg};mc.UNMOUNTED=S1;mc.EXITED=ph;mc.ENTERING=gh;mc.ENTERED=Fg;mc.EXITING=Gk;const g7e=mc;var m7e=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return h7e(t,r)})},JC=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return p7e(t,r)})},WE=function(e){b8(t,e);function t(){for(var r,i=arguments.length,o=new Array(i),a=0;ab,Object.values(b));return S.createElement(w.Provider,{value:E},y)}function d(p,m){const y=(m==null?void 0:m[e][l])||s,b=S.useContext(y);if(b)return b;if(a!==void 0)return a;throw new Error(`\`${p}\` must be used within \`${o}\``)}return u.displayName=o+"Provider",[u,d]}const i=()=>{const o=n.map(a=>S.createContext(a));return function(s){const l=(s==null?void 0:s[e])||o;return S.useMemo(()=>({[`__scope${e}`]:{...s,[e]:l}}),[s,l])}};return i.scopeName=e,[r,v7e(i,...t)]}function v7e(...e){const t=e[0];if(e.length===1)return t;const n=()=>{const r=e.map(i=>({useScope:i(),scopeName:i.scopeName}));return function(o){const a=r.reduce((s,{useScope:l,scopeName:u})=>{const p=l(o)[`__scope${u}`];return{...s,...p}},{});return S.useMemo(()=>({[`__scope${t.scopeName}`]:a}),[a])}};return n.scopeName=t.scopeName,n}function y7e(e,t){typeof e=="function"?e(t):e!=null&&(e.current=t)}function bG(...e){return t=>e.forEach(n=>y7e(n,t))}function ds(...e){return S.useCallback(bG(...e),e)}const Fy=S.forwardRef((e,t)=>{const{children:n,...r}=e,i=S.Children.toArray(n),o=i.find(x7e);if(o){const a=o.props.children,s=i.map(l=>l===o?S.Children.count(a)>1?S.Children.only(null):S.isValidElement(a)?a.props.children:null:l);return S.createElement(qk,pn({},r,{ref:t}),S.isValidElement(a)?S.cloneElement(a,void 0,s):null)}return S.createElement(qk,pn({},r,{ref:t}),n)});Fy.displayName="Slot";const qk=S.forwardRef((e,t)=>{const{children:n,...r}=e;return S.isValidElement(n)?S.cloneElement(n,{...S7e(r,n.props),ref:bG(t,n.ref)}):S.Children.count(n)>1?S.Children.only(null):null});qk.displayName="SlotClone";const b7e=({children:e})=>S.createElement(S.Fragment,null,e);function x7e(e){return S.isValidElement(e)&&e.type===b7e}function S7e(e,t){const n={...t};for(const r in t){const i=e[r],o=t[r];/^on[A-Z]/.test(r)?i&&o?n[r]=(...s)=>{o(...s),i(...s)}:i&&(n[r]=i):r==="style"?n[r]={...i,...o}:r==="className"&&(n[r]=[i,o].filter(Boolean).join(" "))}return{...e,...n}}const w7e=["a","button","div","h2","h3","img","label","li","nav","ol","p","span","svg","ul"],sc=w7e.reduce((e,t)=>{const n=S.forwardRef((r,i)=>{const{asChild:o,...a}=r,s=o?Fy:t;return S.useEffect(()=>{window[Symbol.for("radix-ui")]=!0},[]),S.createElement(s,pn({},a,{ref:i}))});return n.displayName=`Primitive.${t}`,{...e,[t]:n}},{});function xG(e,t){e&&Xs.flushSync(()=>e.dispatchEvent(t))}function SG(e){const t=e+"CollectionProvider",[n,r]=b2(t),[i,o]=n(t,{collectionRef:{current:null},itemMap:new Map}),a=y=>{const{scope:b,children:w}=y,E=Ke.useRef(null),_=Ke.useRef(new Map).current;return Ke.createElement(i,{scope:b,itemMap:_,collectionRef:E},w)},s=e+"CollectionSlot",l=Ke.forwardRef((y,b)=>{const{scope:w,children:E}=y,_=o(s,w),k=ds(b,_.collectionRef);return Ke.createElement(Fy,{ref:k},E)}),u=e+"CollectionItemSlot",d="data-radix-collection-item",p=Ke.forwardRef((y,b)=>{const{scope:w,children:E,..._}=y,k=Ke.useRef(null),T=ds(b,k),L=o(u,w);return Ke.useEffect(()=>(L.itemMap.set(k,{ref:k,..._}),()=>void L.itemMap.delete(k))),Ke.createElement(Fy,{[d]:"",ref:T},E)});function m(y){const b=o(e+"CollectionConsumer",y);return Ke.useCallback(()=>{const E=b.collectionRef.current;if(!E)return[];const _=Array.from(E.querySelectorAll(`[${d}]`));return Array.from(b.itemMap.values()).sort((L,O)=>_.indexOf(L.ref.current)-_.indexOf(O.ref.current))},[b.collectionRef,b.itemMap])}return[{Provider:a,Slot:l,ItemSlot:p},m,r]}const C7e=S.createContext(void 0);function wG(e){const t=S.useContext(C7e);return e||t||"ltr"}function Js(e){const t=S.useRef(e);return S.useEffect(()=>{t.current=e}),S.useMemo(()=>(...n)=>{var r;return(r=t.current)===null||r===void 0?void 0:r.call(t,...n)},[])}function _7e(e,t=globalThis==null?void 0:globalThis.document){const n=Js(e);S.useEffect(()=>{const r=i=>{i.key==="Escape"&&n(i)};return t.addEventListener("keydown",r),()=>t.removeEventListener("keydown",r)},[n,t])}const Kk="dismissableLayer.update",k7e="dismissableLayer.pointerDownOutside",E7e="dismissableLayer.focusOutside";let FI;const P7e=S.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),T7e=S.forwardRef((e,t)=>{var n;const{disableOutsidePointerEvents:r=!1,onEscapeKeyDown:i,onPointerDownOutside:o,onFocusOutside:a,onInteractOutside:s,onDismiss:l,...u}=e,d=S.useContext(P7e),[p,m]=S.useState(null),y=(n=p==null?void 0:p.ownerDocument)!==null&&n!==void 0?n:globalThis==null?void 0:globalThis.document,[,b]=S.useState({}),w=ds(t,N=>m(N)),E=Array.from(d.layers),[_]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),k=E.indexOf(_),T=p?E.indexOf(p):-1,L=d.layersWithOutsidePointerEventsDisabled.size>0,O=T>=k,D=M7e(N=>{const W=N.target,B=[...d.branches].some(K=>K.contains(W));!O||B||(o==null||o(N),s==null||s(N),N.defaultPrevented||l==null||l())},y),I=L7e(N=>{const W=N.target;[...d.branches].some(K=>K.contains(W))||(a==null||a(N),s==null||s(N),N.defaultPrevented||l==null||l())},y);return _7e(N=>{T===d.layers.size-1&&(i==null||i(N),!N.defaultPrevented&&l&&(N.preventDefault(),l()))},y),S.useEffect(()=>{if(p)return r&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(FI=y.body.style.pointerEvents,y.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(p)),d.layers.add(p),BI(),()=>{r&&d.layersWithOutsidePointerEventsDisabled.size===1&&(y.body.style.pointerEvents=FI)}},[p,y,r,d]),S.useEffect(()=>()=>{p&&(d.layers.delete(p),d.layersWithOutsidePointerEventsDisabled.delete(p),BI())},[p,d]),S.useEffect(()=>{const N=()=>b({});return document.addEventListener(Kk,N),()=>document.removeEventListener(Kk,N)},[]),S.createElement(sc.div,pn({},u,{ref:w,style:{pointerEvents:L?O?"auto":"none":void 0,...e.style},onFocusCapture:Kn(e.onFocusCapture,I.onFocusCapture),onBlurCapture:Kn(e.onBlurCapture,I.onBlurCapture),onPointerDownCapture:Kn(e.onPointerDownCapture,D.onPointerDownCapture)}))});function M7e(e,t=globalThis==null?void 0:globalThis.document){const n=Js(e),r=S.useRef(!1),i=S.useRef(()=>{});return S.useEffect(()=>{const o=s=>{if(s.target&&!r.current){let u=function(){CG(k7e,n,l,{discrete:!0})};const l={originalEvent:s};s.pointerType==="touch"?(t.removeEventListener("click",i.current),i.current=u,t.addEventListener("click",i.current,{once:!0})):u()}r.current=!1},a=window.setTimeout(()=>{t.addEventListener("pointerdown",o)},0);return()=>{window.clearTimeout(a),t.removeEventListener("pointerdown",o),t.removeEventListener("click",i.current)}},[t,n]),{onPointerDownCapture:()=>r.current=!0}}function L7e(e,t=globalThis==null?void 0:globalThis.document){const n=Js(e),r=S.useRef(!1);return S.useEffect(()=>{const i=o=>{o.target&&!r.current&&CG(E7e,n,{originalEvent:o},{discrete:!1})};return t.addEventListener("focusin",i),()=>t.removeEventListener("focusin",i)},[t,n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function BI(){const e=new CustomEvent(Kk);document.dispatchEvent(e)}function CG(e,t,n,{discrete:r}){const i=n.originalEvent.target,o=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&i.addEventListener(e,t,{once:!0}),r?xG(i,o):i.dispatchEvent(o)}let e6=0;function A7e(){S.useEffect(()=>{var e,t;const n=document.querySelectorAll("[data-radix-focus-guard]");return document.body.insertAdjacentElement("afterbegin",(e=n[0])!==null&&e!==void 0?e:zI()),document.body.insertAdjacentElement("beforeend",(t=n[1])!==null&&t!==void 0?t:zI()),e6++,()=>{e6===1&&document.querySelectorAll("[data-radix-focus-guard]").forEach(r=>r.remove()),e6--}},[])}function zI(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.cssText="outline: none; opacity: 0; position: fixed; pointer-events: none",e}const t6="focusScope.autoFocusOnMount",n6="focusScope.autoFocusOnUnmount",HI={bubbles:!1,cancelable:!0},O7e=S.forwardRef((e,t)=>{const{loop:n=!1,trapped:r=!1,onMountAutoFocus:i,onUnmountAutoFocus:o,...a}=e,[s,l]=S.useState(null),u=Js(i),d=Js(o),p=S.useRef(null),m=ds(t,w=>l(w)),y=S.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;S.useEffect(()=>{if(r){let w=function(_){if(y.paused||!s)return;const k=_.target;s.contains(k)?p.current=k:mh(p.current,{select:!0})},E=function(_){y.paused||!s||s.contains(_.relatedTarget)||mh(p.current,{select:!0})};return document.addEventListener("focusin",w),document.addEventListener("focusout",E),()=>{document.removeEventListener("focusin",w),document.removeEventListener("focusout",E)}}},[r,s,y.paused]),S.useEffect(()=>{if(s){UI.add(y);const w=document.activeElement;if(!s.contains(w)){const _=new CustomEvent(t6,HI);s.addEventListener(t6,u),s.dispatchEvent(_),_.defaultPrevented||(R7e($7e(_G(s)),{select:!0}),document.activeElement===w&&mh(s))}return()=>{s.removeEventListener(t6,u),setTimeout(()=>{const _=new CustomEvent(n6,HI);s.addEventListener(n6,d),s.dispatchEvent(_),_.defaultPrevented||mh(w??document.body,{select:!0}),s.removeEventListener(n6,d),UI.remove(y)},0)}}},[s,u,d,y]);const b=S.useCallback(w=>{if(!n&&!r||y.paused)return;const E=w.key==="Tab"&&!w.altKey&&!w.ctrlKey&&!w.metaKey,_=document.activeElement;if(E&&_){const k=w.currentTarget,[T,L]=I7e(k);T&&L?!w.shiftKey&&_===L?(w.preventDefault(),n&&mh(T,{select:!0})):w.shiftKey&&_===T&&(w.preventDefault(),n&&mh(L,{select:!0})):_===k&&w.preventDefault()}},[n,r,y.paused]);return S.createElement(sc.div,pn({tabIndex:-1},a,{ref:m,onKeyDown:b}))});function R7e(e,{select:t=!1}={}){const n=document.activeElement;for(const r of e)if(mh(r,{select:t}),document.activeElement!==n)return}function I7e(e){const t=_G(e),n=WI(t,e),r=WI(t.reverse(),e);return[n,r]}function _G(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const i=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||i?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function WI(e,t){for(const n of e)if(!D7e(n,{upTo:t}))return n}function D7e(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function j7e(e){return e instanceof HTMLInputElement&&"select"in e}function mh(e,{select:t=!1}={}){if(e&&e.focus){const n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&j7e(e)&&t&&e.select()}}const UI=N7e();function N7e(){let e=[];return{add(t){const n=e[0];t!==n&&(n==null||n.pause()),e=VI(e,t),e.unshift(t)},remove(t){var n;e=VI(e,t),(n=e[0])===null||n===void 0||n.resume()}}}function VI(e,t){const n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function $7e(e){return e.filter(t=>t.tagName!=="A")}const Pd=Boolean(globalThis==null?void 0:globalThis.document)?S.useLayoutEffect:()=>{},F7e=p6["useId".toString()]||(()=>{});let B7e=0;function z7e(e){const[t,n]=S.useState(F7e());return Pd(()=>{e||n(r=>r??String(B7e++))},[e]),e||(t?`radix-${t}`:"")}function gp(e){return e.split("-")[0]}function x2(e){return e.split("-")[1]}function w0(e){return["top","bottom"].includes(gp(e))?"x":"y"}function UE(e){return e==="y"?"height":"width"}function GI(e,t,n){let{reference:r,floating:i}=e;const o=r.x+r.width/2-i.width/2,a=r.y+r.height/2-i.height/2,s=w0(t),l=UE(s),u=r[l]/2-i[l]/2,d=s==="x";let p;switch(gp(t)){case"top":p={x:o,y:r.y-i.height};break;case"bottom":p={x:o,y:r.y+r.height};break;case"right":p={x:r.x+r.width,y:a};break;case"left":p={x:r.x-i.width,y:a};break;default:p={x:r.x,y:r.y}}switch(x2(t)){case"start":p[s]-=u*(n&&d?-1:1);break;case"end":p[s]+=u*(n&&d?-1:1)}return p}const H7e=async(e,t,n)=>{const{placement:r="bottom",strategy:i="absolute",middleware:o=[],platform:a}=n,s=await(a.isRTL==null?void 0:a.isRTL(t));let l=await a.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=GI(l,r,s),p=r,m={},y=0;for(let b=0;b({name:"arrow",options:e,async fn(t){const{element:n,padding:r=0}=e??{},{x:i,y:o,placement:a,rects:s,platform:l}=t;if(n==null)return{};const u=kG(r),d={x:i,y:o},p=w0(a),m=x2(a),y=UE(p),b=await l.getDimensions(n),w=p==="y"?"top":"left",E=p==="y"?"bottom":"right",_=s.reference[y]+s.reference[p]-d[p]-s.floating[y],k=d[p]-s.reference[p],T=await(l.getOffsetParent==null?void 0:l.getOffsetParent(n));let L=T?p==="y"?T.clientHeight||0:T.clientWidth||0:0;L===0&&(L=s.floating[y]);const O=_/2-k/2,D=u[w],I=L-b[y]-u[E],N=L/2-b[y]/2+O,W=Yk(D,N,I),B=(m==="start"?u[w]:u[E])>0&&N!==W&&s.reference[y]<=s.floating[y];return{[p]:d[p]-(B?NU7e[t])}function V7e(e,t,n){n===void 0&&(n=!1);const r=x2(e),i=w0(e),o=UE(i);let a=i==="x"?r===(n?"end":"start")?"right":"left":r==="start"?"bottom":"top";return t.reference[o]>t.floating[o]&&(a=R3(a)),{main:a,cross:R3(a)}}const G7e={start:"end",end:"start"};function KI(e){return e.replace(/start|end/g,t=>G7e[t])}const EG=["top","right","bottom","left"];EG.reduce((e,t)=>e.concat(t,t+"-start",t+"-end"),[]);const q7e=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n;const{placement:r,middlewareData:i,rects:o,initialPlacement:a,platform:s,elements:l}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:p,fallbackStrategy:m="bestFit",flipAlignment:y=!0,...b}=e,w=gp(r),E=p||(w===a||!y?[R3(a)]:function(N){const W=R3(N);return[KI(N),W,KI(W)]}(a)),_=[a,...E],k=await By(t,b),T=[];let L=((n=i.flip)==null?void 0:n.overflows)||[];if(u&&T.push(k[w]),d){const{main:N,cross:W}=V7e(r,o,await(s.isRTL==null?void 0:s.isRTL(l.floating)));T.push(k[N],k[W])}if(L=[...L,{placement:r,overflows:T}],!T.every(N=>N<=0)){var O,D;const N=((O=(D=i.flip)==null?void 0:D.index)!=null?O:0)+1,W=_[N];if(W)return{data:{index:N,overflows:L},reset:{placement:W}};let B="bottom";switch(m){case"bestFit":{var I;const K=(I=L.map(ne=>[ne,ne.overflows.filter(z=>z>0).reduce((z,$)=>z+$,0)]).sort((ne,z)=>ne[1]-z[1])[0])==null?void 0:I[0].placement;K&&(B=K);break}case"initialPlacement":B=a}if(r!==B)return{reset:{placement:B}}}return{}}}};function YI(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function XI(e){return EG.some(t=>e[t]>=0)}const K7e=function(e){let{strategy:t="referenceHidden",...n}=e===void 0?{}:e;return{name:"hide",async fn(r){const{rects:i}=r;switch(t){case"referenceHidden":{const o=YI(await By(r,{...n,elementContext:"reference"}),i.reference);return{data:{referenceHiddenOffsets:o,referenceHidden:XI(o)}}}case"escaped":{const o=YI(await By(r,{...n,altBoundary:!0}),i.floating);return{data:{escapedOffsets:o,escaped:XI(o)}}}default:return{}}}}},Y7e=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){const{x:n,y:r}=t,i=await async function(o,a){const{placement:s,platform:l,elements:u}=o,d=await(l.isRTL==null?void 0:l.isRTL(u.floating)),p=gp(s),m=x2(s),y=w0(s)==="x",b=["left","top"].includes(p)?-1:1,w=d&&y?-1:1,E=typeof a=="function"?a(o):a;let{mainAxis:_,crossAxis:k,alignmentAxis:T}=typeof E=="number"?{mainAxis:E,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...E};return m&&typeof T=="number"&&(k=m==="end"?-1*T:T),y?{x:k*w,y:_*b}:{x:_*b,y:k*w}}(t,e);return{x:n+i.x,y:r+i.y,data:i}}}};function PG(e){return e==="x"?"y":"x"}const X7e=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:r,placement:i}=t,{mainAxis:o=!0,crossAxis:a=!1,limiter:s={fn:E=>{let{x:_,y:k}=E;return{x:_,y:k}}},...l}=e,u={x:n,y:r},d=await By(t,l),p=w0(gp(i)),m=PG(p);let y=u[p],b=u[m];if(o){const E=p==="y"?"bottom":"right";y=Yk(y+d[p==="y"?"top":"left"],y,y-d[E])}if(a){const E=m==="y"?"bottom":"right";b=Yk(b+d[m==="y"?"top":"left"],b,b-d[E])}const w=s.fn({...t,[p]:y,[m]:b});return{...w,data:{x:w.x-n,y:w.y-r}}}}},Z7e=function(e){return e===void 0&&(e={}),{options:e,fn(t){const{x:n,y:r,placement:i,rects:o,middlewareData:a}=t,{offset:s=0,mainAxis:l=!0,crossAxis:u=!0}=e,d={x:n,y:r},p=w0(i),m=PG(p);let y=d[p],b=d[m];const w=typeof s=="function"?s({...o,placement:i}):s,E=typeof w=="number"?{mainAxis:w,crossAxis:0}:{mainAxis:0,crossAxis:0,...w};if(l){const O=p==="y"?"height":"width",D=o.reference[p]-o.floating[O]+E.mainAxis,I=o.reference[p]+o.reference[O]-E.mainAxis;yI&&(y=I)}if(u){var _,k,T,L;const O=p==="y"?"width":"height",D=["top","left"].includes(gp(i)),I=o.reference[m]-o.floating[O]+(D&&(_=(k=a.offset)==null?void 0:k[m])!=null?_:0)+(D?0:E.crossAxis),N=o.reference[m]+o.reference[O]+(D?0:(T=(L=a.offset)==null?void 0:L[m])!=null?T:0)-(D?E.crossAxis:0);bN&&(b=N)}return{[p]:y,[m]:b}}}},Q7e=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:n,rects:r,platform:i,elements:o}=t,{apply:a,...s}=e,l=await By(t,s),u=gp(n),d=x2(n);let p,m;u==="top"||u==="bottom"?(p=u,m=d===(await(i.isRTL==null?void 0:i.isRTL(o.floating))?"start":"end")?"left":"right"):(m=u,p=d==="end"?"top":"bottom");const y=vh(l.left,0),b=vh(l.right,0),w=vh(l.top,0),E=vh(l.bottom,0),_={availableHeight:r.floating.height-(["left","right"].includes(n)?2*(w!==0||E!==0?w+E:vh(l.top,l.bottom)):l[p]),availableWidth:r.floating.width-(["top","bottom"].includes(n)?2*(y!==0||b!==0?y+b:vh(l.left,l.right)):l[m])},k=await i.getDimensions(o.floating);a==null||a({...t,..._});const T=await i.getDimensions(o.floating);return k.width!==T.width||k.height!==T.height?{reset:{rects:!0}}:{}}}};function TG(e){return e&&e.document&&e.location&&e.alert&&e.setInterval}function vc(e){if(e==null)return window;if(!TG(e)){const t=e.ownerDocument;return t&&t.defaultView||window}return e}function S2(e){return vc(e).getComputedStyle(e)}function Xu(e){return TG(e)?"":e?(e.nodeName||"").toLowerCase():""}function MG(){const e=navigator.userAgentData;return e!=null&&e.brands?e.brands.map(t=>t.brand+"/"+t.version).join(" "):navigator.userAgent}function ou(e){return e instanceof vc(e).HTMLElement}function ef(e){return e instanceof vc(e).Element}function VE(e){return typeof ShadowRoot>"u"?!1:e instanceof vc(e).ShadowRoot||e instanceof ShadowRoot}function p4(e){const{overflow:t,overflowX:n,overflowY:r}=S2(e);return/auto|scroll|overlay|hidden/.test(t+r+n)}function J7e(e){return["table","td","th"].includes(Xu(e))}function ZI(e){const t=/firefox/i.test(MG()),n=S2(e);return n.transform!=="none"||n.perspective!=="none"||n.contain==="paint"||["transform","perspective"].includes(n.willChange)||t&&n.willChange==="filter"||t&&!!n.filter&&n.filter!=="none"}function LG(){return!/^((?!chrome|android).)*safari/i.test(MG())}const QI=Math.min,Y1=Math.max,I3=Math.round;function Zu(e,t,n){var r,i,o,a;t===void 0&&(t=!1),n===void 0&&(n=!1);const s=e.getBoundingClientRect();let l=1,u=1;t&&ou(e)&&(l=e.offsetWidth>0&&I3(s.width)/e.offsetWidth||1,u=e.offsetHeight>0&&I3(s.height)/e.offsetHeight||1);const d=ef(e)?vc(e):window,p=!LG()&&n,m=(s.left+(p&&(r=(i=d.visualViewport)==null?void 0:i.offsetLeft)!=null?r:0))/l,y=(s.top+(p&&(o=(a=d.visualViewport)==null?void 0:a.offsetTop)!=null?o:0))/u,b=s.width/l,w=s.height/u;return{width:b,height:w,top:y,right:m+b,bottom:y+w,left:m,x:m,y}}function zd(e){return(t=e,(t instanceof vc(t).Node?e.ownerDocument:e.document)||window.document).documentElement;var t}function g4(e){return ef(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function AG(e){return Zu(zd(e)).left+g4(e).scrollLeft}function e9e(e,t,n){const r=ou(t),i=zd(t),o=Zu(e,r&&function(l){const u=Zu(l);return I3(u.width)!==l.offsetWidth||I3(u.height)!==l.offsetHeight}(t),n==="fixed");let a={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if(r||!r&&n!=="fixed")if((Xu(t)!=="body"||p4(i))&&(a=g4(t)),ou(t)){const l=Zu(t,!0);s.x=l.x+t.clientLeft,s.y=l.y+t.clientTop}else i&&(s.x=AG(i));return{x:o.left+a.scrollLeft-s.x,y:o.top+a.scrollTop-s.y,width:o.width,height:o.height}}function OG(e){return Xu(e)==="html"?e:e.assignedSlot||e.parentNode||(VE(e)?e.host:null)||zd(e)}function JI(e){return ou(e)&&getComputedStyle(e).position!=="fixed"?e.offsetParent:null}function Xk(e){const t=vc(e);let n=JI(e);for(;n&&J7e(n)&&getComputedStyle(n).position==="static";)n=JI(n);return n&&(Xu(n)==="html"||Xu(n)==="body"&&getComputedStyle(n).position==="static"&&!ZI(n))?t:n||function(r){let i=OG(r);for(VE(i)&&(i=i.host);ou(i)&&!["html","body"].includes(Xu(i));){if(ZI(i))return i;i=i.parentNode}return null}(e)||t}function eD(e){if(ou(e))return{width:e.offsetWidth,height:e.offsetHeight};const t=Zu(e);return{width:t.width,height:t.height}}function RG(e){const t=OG(e);return["html","body","#document"].includes(Xu(t))?e.ownerDocument.body:ou(t)&&p4(t)?t:RG(t)}function D3(e,t){var n;t===void 0&&(t=[]);const r=RG(e),i=r===((n=e.ownerDocument)==null?void 0:n.body),o=vc(r),a=i?[o].concat(o.visualViewport||[],p4(r)?r:[]):r,s=t.concat(a);return i?s:s.concat(D3(a))}function tD(e,t,n){return t==="viewport"?O3(function(r,i){const o=vc(r),a=zd(r),s=o.visualViewport;let l=a.clientWidth,u=a.clientHeight,d=0,p=0;if(s){l=s.width,u=s.height;const m=LG();(m||!m&&i==="fixed")&&(d=s.offsetLeft,p=s.offsetTop)}return{width:l,height:u,x:d,y:p}}(e,n)):ef(t)?function(r,i){const o=Zu(r,!1,i==="fixed"),a=o.top+r.clientTop,s=o.left+r.clientLeft;return{top:a,left:s,x:s,y:a,right:s+r.clientWidth,bottom:a+r.clientHeight,width:r.clientWidth,height:r.clientHeight}}(t,n):O3(function(r){var i;const o=zd(r),a=g4(r),s=(i=r.ownerDocument)==null?void 0:i.body,l=Y1(o.scrollWidth,o.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),u=Y1(o.scrollHeight,o.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0);let d=-a.scrollLeft+AG(r);const p=-a.scrollTop;return S2(s||o).direction==="rtl"&&(d+=Y1(o.clientWidth,s?s.clientWidth:0)-l),{width:l,height:u,x:d,y:p}}(zd(e)))}function t9e(e){const t=D3(e),n=["absolute","fixed"].includes(S2(e).position)&&ou(e)?Xk(e):e;return ef(n)?t.filter(r=>ef(r)&&function(i,o){const a=o.getRootNode==null?void 0:o.getRootNode();if(i.contains(o))return!0;if(a&&VE(a)){let s=o;do{if(s&&i===s)return!0;s=s.parentNode||s.host}while(s)}return!1}(r,n)&&Xu(r)!=="body"):[]}const n9e={getClippingRect:function(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e;const o=[...n==="clippingAncestors"?t9e(t):[].concat(n),r],a=o[0],s=o.reduce((l,u)=>{const d=tD(t,u,i);return l.top=Y1(d.top,l.top),l.right=QI(d.right,l.right),l.bottom=QI(d.bottom,l.bottom),l.left=Y1(d.left,l.left),l},tD(t,a,i));return{width:s.right-s.left,height:s.bottom-s.top,x:s.left,y:s.top}},convertOffsetParentRelativeRectToViewportRelativeRect:function(e){let{rect:t,offsetParent:n,strategy:r}=e;const i=ou(n),o=zd(n);if(n===o)return t;let a={scrollLeft:0,scrollTop:0};const s={x:0,y:0};if((i||!i&&r!=="fixed")&&((Xu(n)!=="body"||p4(o))&&(a=g4(n)),ou(n))){const l=Zu(n,!0);s.x=l.x+n.clientLeft,s.y=l.y+n.clientTop}return{...t,x:t.x-a.scrollLeft+s.x,y:t.y-a.scrollTop+s.y}},isElement:ef,getDimensions:eD,getOffsetParent:Xk,getDocumentElement:zd,getElementRects:e=>{let{reference:t,floating:n,strategy:r}=e;return{reference:e9e(t,Xk(n),r),floating:{...eD(n),x:0,y:0}}},getClientRects:e=>Array.from(e.getClientRects()),isRTL:e=>S2(e).direction==="rtl"};function r9e(e,t,n,r){r===void 0&&(r={});const{ancestorScroll:i=!0,ancestorResize:o=!0,elementResize:a=!0,animationFrame:s=!1}=r,l=i&&!s,u=o&&!s,d=l||u?[...ef(e)?D3(e):[],...D3(t)]:[];d.forEach(b=>{l&&b.addEventListener("scroll",n,{passive:!0}),u&&b.addEventListener("resize",n)});let p,m=null;if(a){let b=!0;m=new ResizeObserver(()=>{b||n(),b=!1}),ef(e)&&!s&&m.observe(e),m.observe(t)}let y=s?Zu(e):null;return s&&function b(){const w=Zu(e);!y||w.x===y.x&&w.y===y.y&&w.width===y.width&&w.height===y.height||n(),y=w,p=requestAnimationFrame(b)}(),n(),()=>{var b;d.forEach(w=>{l&&w.removeEventListener("scroll",n),u&&w.removeEventListener("resize",n)}),(b=m)==null||b.disconnect(),m=null,s&&cancelAnimationFrame(p)}}const i9e=(e,t,n)=>H7e(e,t,{platform:n9e,...n});var Zk=typeof document<"u"?S.useLayoutEffect:S.useEffect;function Qk(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(typeof e=="function"&&e.toString()===t.toString())return!0;let n,r,i;if(e&&t&&typeof e=="object"){if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(r=n;r--!==0;)if(!Qk(e[r],t[r]))return!1;return!0}if(i=Object.keys(e),n=i.length,n!==Object.keys(t).length)return!1;for(r=n;r--!==0;)if(!Object.prototype.hasOwnProperty.call(t,i[r]))return!1;for(r=n;r--!==0;){const o=i[r];if(!(o==="_owner"&&e.$$typeof)&&!Qk(e[o],t[o]))return!1}return!0}return e!==e&&t!==t}function o9e(e){const t=S.useRef(e);return Zk(()=>{t.current=e}),t}function a9e(e){let{middleware:t,placement:n="bottom",strategy:r="absolute",whileElementsMounted:i}=e===void 0?{}:e;const o=S.useRef(null),a=S.useRef(null),s=o9e(i),l=S.useRef(null),[u,d]=S.useState({x:null,y:null,strategy:r,placement:n,middlewareData:{}}),[p,m]=S.useState(t);Qk(p==null?void 0:p.map(T=>{let{options:L}=T;return L}),t==null?void 0:t.map(T=>{let{options:L}=T;return L}))||m(t);const y=S.useCallback(()=>{!o.current||!a.current||i9e(o.current,a.current,{middleware:p,placement:n,strategy:r}).then(T=>{b.current&&Xs.flushSync(()=>{d(T)})})},[p,n,r]);Zk(()=>{b.current&&y()},[y]);const b=S.useRef(!1);Zk(()=>(b.current=!0,()=>{b.current=!1}),[]);const w=S.useCallback(()=>{if(typeof l.current=="function"&&(l.current(),l.current=null),o.current&&a.current)if(s.current){const T=s.current(o.current,a.current,y);l.current=T}else y()},[y,s]),E=S.useCallback(T=>{o.current=T,w()},[w]),_=S.useCallback(T=>{a.current=T,w()},[w]),k=S.useMemo(()=>({reference:o,floating:a}),[]);return S.useMemo(()=>({...u,update:y,refs:k,reference:E,floating:_}),[u,y,k,E,_])}const s9e=e=>{const{element:t,padding:n}=e;function r(i){return Object.prototype.hasOwnProperty.call(i,"current")}return{name:"arrow",options:e,fn(i){return r(t)?t.current!=null?qI({element:t.current,padding:n}).fn(i):{}:t?qI({element:t,padding:n}).fn(i):{}}}};function l9e(e){const[t,n]=S.useState(void 0);return Pd(()=>{if(e){n({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(i=>{if(!Array.isArray(i)||!i.length)return;const o=i[0];let a,s;if("borderBoxSize"in o){const l=o.borderBoxSize,u=Array.isArray(l)?l[0]:l;a=u.inlineSize,s=u.blockSize}else a=e.offsetWidth,s=e.offsetHeight;n({width:a,height:s})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else n(void 0)},[e]),t}const IG="Popper",[GE,DG]=b2(IG),[u9e,jG]=GE(IG),c9e=e=>{const{__scopePopper:t,children:n}=e,[r,i]=S.useState(null);return S.createElement(u9e,{scope:t,anchor:r,onAnchorChange:i},n)},d9e="PopperAnchor",f9e=S.forwardRef((e,t)=>{const{__scopePopper:n,virtualRef:r,...i}=e,o=jG(d9e,n),a=S.useRef(null),s=ds(t,a);return S.useEffect(()=>{o.onAnchorChange((r==null?void 0:r.current)||a.current)}),r?null:S.createElement(sc.div,pn({},i,{ref:s}))}),j3="PopperContent",[h9e,HNe]=GE(j3),[p9e,g9e]=GE(j3,{hasParent:!1,positionUpdateFns:new Set}),m9e=S.forwardRef((e,t)=>{var n,r,i,o,a,s,l,u;const{__scopePopper:d,side:p="bottom",sideOffset:m=0,align:y="center",alignOffset:b=0,arrowPadding:w=0,collisionBoundary:E=[],collisionPadding:_=0,sticky:k="partial",hideWhenDetached:T=!1,avoidCollisions:L=!0,onPlaced:O,...D}=e,I=jG(j3,d),[N,W]=S.useState(null),B=ds(t,He=>W(He)),[K,ne]=S.useState(null),z=l9e(K),$=(n=z==null?void 0:z.width)!==null&&n!==void 0?n:0,V=(r=z==null?void 0:z.height)!==null&&r!==void 0?r:0,X=p+(y!=="center"?"-"+y:""),Q=typeof _=="number"?_:{top:0,right:0,bottom:0,left:0,..._},G=Array.isArray(E)?E:[E],Y=G.length>0,ee={padding:Q,boundary:G.filter(y9e),altBoundary:Y},{reference:fe,floating:_e,strategy:we,x:xe,y:Le,placement:Se,middlewareData:Je,update:Xe}=a9e({strategy:"fixed",placement:X,whileElementsMounted:r9e,middleware:[b9e(),Y7e({mainAxis:m+V,alignmentAxis:b}),L?X7e({mainAxis:!0,crossAxis:!1,limiter:k==="partial"?Z7e():void 0,...ee}):void 0,K?s9e({element:K,padding:w}):void 0,L?q7e({...ee}):void 0,Q7e({...ee,apply:({elements:He,availableWidth:Ue,availableHeight:ye})=>{He.floating.style.setProperty("--radix-popper-available-width",`${Ue}px`),He.floating.style.setProperty("--radix-popper-available-height",`${ye}px`)}}),x9e({arrowWidth:$,arrowHeight:V}),T?K7e({strategy:"referenceHidden"}):void 0].filter(v9e)});Pd(()=>{fe(I.anchor)},[fe,I.anchor]);const tt=xe!==null&&Le!==null,[yt,Be]=NG(Se),Ae=Js(O);Pd(()=>{tt&&(Ae==null||Ae())},[tt,Ae]);const bt=(i=Je.arrow)===null||i===void 0?void 0:i.x,Fe=(o=Je.arrow)===null||o===void 0?void 0:o.y,at=((a=Je.arrow)===null||a===void 0?void 0:a.centerOffset)!==0,[jt,mt]=S.useState();Pd(()=>{N&&mt(window.getComputedStyle(N).zIndex)},[N]);const{hasParent:Zt,positionUpdateFns:on}=g9e(j3,d),se=!Zt;S.useLayoutEffect(()=>{if(!se)return on.add(Xe),()=>{on.delete(Xe)}},[se,on,Xe]),Pd(()=>{se&&tt&&Array.from(on).reverse().forEach(He=>requestAnimationFrame(He))},[se,tt,on]);const Ie={"data-side":yt,"data-align":Be,...D,ref:B,style:{...D.style,animation:tt?void 0:"none",opacity:(s=Je.hide)!==null&&s!==void 0&&s.referenceHidden?0:void 0}};return S.createElement("div",{ref:_e,"data-radix-popper-content-wrapper":"",style:{position:we,left:0,top:0,transform:tt?`translate3d(${Math.round(xe)}px, ${Math.round(Le)}px, 0)`:"translate3d(0, -200%, 0)",minWidth:"max-content",zIndex:jt,["--radix-popper-transform-origin"]:[(l=Je.transformOrigin)===null||l===void 0?void 0:l.x,(u=Je.transformOrigin)===null||u===void 0?void 0:u.y].join(" ")},dir:e.dir},S.createElement(h9e,{scope:d,placedSide:yt,onArrowChange:ne,arrowX:bt,arrowY:Fe,shouldHideArrow:at},se?S.createElement(p9e,{scope:d,hasParent:!0,positionUpdateFns:on},S.createElement(sc.div,Ie)):S.createElement(sc.div,Ie)))});function v9e(e){return e!==void 0}function y9e(e){return e!==null}const b9e=()=>({name:"anchorCssProperties",fn(e){const{rects:t,elements:n}=e,{width:r,height:i}=t.reference;return n.floating.style.setProperty("--radix-popper-anchor-width",`${r}px`),n.floating.style.setProperty("--radix-popper-anchor-height",`${i}px`),{}}}),x9e=e=>({name:"transformOrigin",options:e,fn(t){var n,r,i,o,a;const{placement:s,rects:l,middlewareData:u}=t,p=((n=u.arrow)===null||n===void 0?void 0:n.centerOffset)!==0,m=p?0:e.arrowWidth,y=p?0:e.arrowHeight,[b,w]=NG(s),E={start:"0%",center:"50%",end:"100%"}[w],_=((r=(i=u.arrow)===null||i===void 0?void 0:i.x)!==null&&r!==void 0?r:0)+m/2,k=((o=(a=u.arrow)===null||a===void 0?void 0:a.y)!==null&&o!==void 0?o:0)+y/2;let T="",L="";return b==="bottom"?(T=p?E:`${_}px`,L=`${-y}px`):b==="top"?(T=p?E:`${_}px`,L=`${l.floating.height+y}px`):b==="right"?(T=`${-y}px`,L=p?E:`${k}px`):b==="left"&&(T=`${l.floating.width+y}px`,L=p?E:`${k}px`),{data:{x:T,y:L}}}});function NG(e){const[t,n="center"]=e.split("-");return[t,n]}const S9e=c9e,w9e=f9e,C9e=m9e;function _9e(e,t){return S.useReducer((n,r)=>{const i=t[n][r];return i??n},e)}const $G=e=>{const{present:t,children:n}=e,r=k9e(t),i=typeof n=="function"?n({present:r.isPresent}):S.Children.only(n),o=ds(r.ref,i.ref);return typeof n=="function"||r.isPresent?S.cloneElement(i,{ref:o}):null};$G.displayName="Presence";function k9e(e){const[t,n]=S.useState(),r=S.useRef({}),i=S.useRef(e),o=S.useRef("none"),a=e?"mounted":"unmounted",[s,l]=_9e(a,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return S.useEffect(()=>{const u=Sx(r.current);o.current=s==="mounted"?u:"none"},[s]),Pd(()=>{const u=r.current,d=i.current;if(d!==e){const m=o.current,y=Sx(u);e?l("MOUNT"):y==="none"||(u==null?void 0:u.display)==="none"?l("UNMOUNT"):l(d&&m!==y?"ANIMATION_OUT":"UNMOUNT"),i.current=e}},[e,l]),Pd(()=>{if(t){const u=p=>{const y=Sx(r.current).includes(p.animationName);p.target===t&&y&&Xs.flushSync(()=>l("ANIMATION_END"))},d=p=>{p.target===t&&(o.current=Sx(r.current))};return t.addEventListener("animationstart",d),t.addEventListener("animationcancel",u),t.addEventListener("animationend",u),()=>{t.removeEventListener("animationstart",d),t.removeEventListener("animationcancel",u),t.removeEventListener("animationend",u)}}else l("ANIMATION_END")},[t,l]),{isPresent:["mounted","unmountSuspended"].includes(s),ref:S.useCallback(u=>{u&&(r.current=getComputedStyle(u)),n(u)},[])}}function Sx(e){return(e==null?void 0:e.animationName)||"none"}function E9e({prop:e,defaultProp:t,onChange:n=()=>{}}){const[r,i]=P9e({defaultProp:t,onChange:n}),o=e!==void 0,a=o?e:r,s=Js(n),l=S.useCallback(u=>{if(o){const p=typeof u=="function"?u(e):u;p!==e&&s(p)}else i(u)},[o,e,i,s]);return[a,l]}function P9e({defaultProp:e,onChange:t}){const n=S.useState(e),[r]=n,i=S.useRef(r),o=Js(t);return S.useEffect(()=>{i.current!==r&&(o(r),i.current=r)},[r,i,o]),n}const r6="rovingFocusGroup.onEntryFocus",T9e={bubbles:!1,cancelable:!0},qE="RovingFocusGroup",[Jk,FG,M9e]=SG(qE),[L9e,BG]=b2(qE,[M9e]),[A9e,O9e]=L9e(qE),R9e=S.forwardRef((e,t)=>S.createElement(Jk.Provider,{scope:e.__scopeRovingFocusGroup},S.createElement(Jk.Slot,{scope:e.__scopeRovingFocusGroup},S.createElement(I9e,pn({},e,{ref:t}))))),I9e=S.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,orientation:r,loop:i=!1,dir:o,currentTabStopId:a,defaultCurrentTabStopId:s,onCurrentTabStopIdChange:l,onEntryFocus:u,...d}=e,p=S.useRef(null),m=ds(t,p),y=wG(o),[b=null,w]=E9e({prop:a,defaultProp:s,onChange:l}),[E,_]=S.useState(!1),k=Js(u),T=FG(n),L=S.useRef(!1),[O,D]=S.useState(0);return S.useEffect(()=>{const I=p.current;if(I)return I.addEventListener(r6,k),()=>I.removeEventListener(r6,k)},[k]),S.createElement(A9e,{scope:n,orientation:r,dir:y,loop:i,currentTabStopId:b,onItemFocus:S.useCallback(I=>w(I),[w]),onItemShiftTab:S.useCallback(()=>_(!0),[]),onFocusableItemAdd:S.useCallback(()=>D(I=>I+1),[]),onFocusableItemRemove:S.useCallback(()=>D(I=>I-1),[])},S.createElement(sc.div,pn({tabIndex:E||O===0?-1:0,"data-orientation":r},d,{ref:m,style:{outline:"none",...e.style},onMouseDown:Kn(e.onMouseDown,()=>{L.current=!0}),onFocus:Kn(e.onFocus,I=>{const N=!L.current;if(I.target===I.currentTarget&&N&&!E){const W=new CustomEvent(r6,T9e);if(I.currentTarget.dispatchEvent(W),!W.defaultPrevented){const B=T().filter(V=>V.focusable),K=B.find(V=>V.active),ne=B.find(V=>V.id===b),$=[K,ne,...B].filter(Boolean).map(V=>V.ref.current);zG($)}}L.current=!1}),onBlur:Kn(e.onBlur,()=>_(!1))})))}),D9e="RovingFocusGroupItem",j9e=S.forwardRef((e,t)=>{const{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:o,...a}=e,s=z7e(),l=o||s,u=O9e(D9e,n),d=u.currentTabStopId===l,p=FG(n),{onFocusableItemAdd:m,onFocusableItemRemove:y}=u;return S.useEffect(()=>{if(r)return m(),()=>y()},[r,m,y]),S.createElement(Jk.ItemSlot,{scope:n,id:l,focusable:r,active:i},S.createElement(sc.span,pn({tabIndex:d?0:-1,"data-orientation":u.orientation},a,{ref:t,onMouseDown:Kn(e.onMouseDown,b=>{r?u.onItemFocus(l):b.preventDefault()}),onFocus:Kn(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:Kn(e.onKeyDown,b=>{if(b.key==="Tab"&&b.shiftKey){u.onItemShiftTab();return}if(b.target!==b.currentTarget)return;const w=F9e(b,u.orientation,u.dir);if(w!==void 0){b.preventDefault();let _=p().filter(k=>k.focusable).map(k=>k.ref.current);if(w==="last")_.reverse();else if(w==="prev"||w==="next"){w==="prev"&&_.reverse();const k=_.indexOf(b.currentTarget);_=u.loop?B9e(_,k+1):_.slice(k+1)}setTimeout(()=>zG(_))}})})))}),N9e={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function $9e(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function F9e(e,t,n){const r=$9e(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(r))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(r)))return N9e[r]}function zG(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function B9e(e,t){return e.map((n,r)=>e[(t+r)%e.length])}const z9e=R9e,H9e=j9e,W9e=["Enter"," "],U9e=["ArrowDown","PageUp","Home"],HG=["ArrowUp","PageDown","End"],V9e=[...U9e,...HG],m4="Menu",[e7,G9e,q9e]=SG(m4),[mp,WG]=b2(m4,[q9e,DG,BG]),KE=DG(),UG=BG(),[K9e,v4]=mp(m4),[Y9e,YE]=mp(m4),X9e=e=>{const{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:o,modal:a=!0}=e,s=KE(t),[l,u]=S.useState(null),d=S.useRef(!1),p=Js(o),m=wG(i);return S.useEffect(()=>{const y=()=>{d.current=!0,document.addEventListener("pointerdown",b,{capture:!0,once:!0}),document.addEventListener("pointermove",b,{capture:!0,once:!0})},b=()=>d.current=!1;return document.addEventListener("keydown",y,{capture:!0}),()=>{document.removeEventListener("keydown",y,{capture:!0}),document.removeEventListener("pointerdown",b,{capture:!0}),document.removeEventListener("pointermove",b,{capture:!0})}},[]),S.createElement(S9e,s,S.createElement(K9e,{scope:t,open:n,onOpenChange:p,content:l,onContentChange:u},S.createElement(Y9e,{scope:t,onClose:S.useCallback(()=>p(!1),[p]),isUsingKeyboardRef:d,dir:m,modal:a},r)))},Z9e=S.forwardRef((e,t)=>{const{__scopeMenu:n,...r}=e,i=KE(n);return S.createElement(w9e,pn({},i,r,{ref:t}))}),Q9e="MenuPortal",[WNe,J9e]=mp(Q9e,{forceMount:void 0}),Hd="MenuContent",[e8e,VG]=mp(Hd),t8e=S.forwardRef((e,t)=>{const n=J9e(Hd,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,o=v4(Hd,e.__scopeMenu),a=YE(Hd,e.__scopeMenu);return S.createElement(e7.Provider,{scope:e.__scopeMenu},S.createElement($G,{present:r||o.open},S.createElement(e7.Slot,{scope:e.__scopeMenu},a.modal?S.createElement(n8e,pn({},i,{ref:t})):S.createElement(r8e,pn({},i,{ref:t})))))}),n8e=S.forwardRef((e,t)=>{const n=v4(Hd,e.__scopeMenu),r=S.useRef(null),i=ds(t,r);return S.useEffect(()=>{const o=r.current;if(o)return LH(o)},[]),S.createElement(GG,pn({},e,{ref:i,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:Kn(e.onFocusOutside,o=>o.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)}))}),r8e=S.forwardRef((e,t)=>{const n=v4(Hd,e.__scopeMenu);return S.createElement(GG,pn({},e,{ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)}))}),GG=S.forwardRef((e,t)=>{const{__scopeMenu:n,loop:r=!1,trapFocus:i,onOpenAutoFocus:o,onCloseAutoFocus:a,disableOutsidePointerEvents:s,onEntryFocus:l,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:p,onInteractOutside:m,onDismiss:y,disableOutsideScroll:b,...w}=e,E=v4(Hd,n),_=YE(Hd,n),k=KE(n),T=UG(n),L=G9e(n),[O,D]=S.useState(null),I=S.useRef(null),N=ds(t,I,E.onContentChange),W=S.useRef(0),B=S.useRef(""),K=S.useRef(0),ne=S.useRef(null),z=S.useRef("right"),$=S.useRef(0),V=b?NH:S.Fragment,X=b?{as:Fy,allowPinchZoom:!0}:void 0,Q=Y=>{var ee,fe;const _e=B.current+Y,we=L().filter(tt=>!tt.disabled),xe=document.activeElement,Le=(ee=we.find(tt=>tt.ref.current===xe))===null||ee===void 0?void 0:ee.textValue,Se=we.map(tt=>tt.textValue),Je=f8e(Se,_e,Le),Xe=(fe=we.find(tt=>tt.textValue===Je))===null||fe===void 0?void 0:fe.ref.current;(function tt(yt){B.current=yt,window.clearTimeout(W.current),yt!==""&&(W.current=window.setTimeout(()=>tt(""),1e3))})(_e),Xe&&setTimeout(()=>Xe.focus())};S.useEffect(()=>()=>window.clearTimeout(W.current),[]),A7e();const G=S.useCallback(Y=>{var ee,fe;return z.current===((ee=ne.current)===null||ee===void 0?void 0:ee.side)&&p8e(Y,(fe=ne.current)===null||fe===void 0?void 0:fe.area)},[]);return S.createElement(e8e,{scope:n,searchRef:B,onItemEnter:S.useCallback(Y=>{G(Y)&&Y.preventDefault()},[G]),onItemLeave:S.useCallback(Y=>{var ee;G(Y)||((ee=I.current)===null||ee===void 0||ee.focus(),D(null))},[G]),onTriggerLeave:S.useCallback(Y=>{G(Y)&&Y.preventDefault()},[G]),pointerGraceTimerRef:K,onPointerGraceIntentChange:S.useCallback(Y=>{ne.current=Y},[])},S.createElement(V,X,S.createElement(O7e,{asChild:!0,trapped:i,onMountAutoFocus:Kn(o,Y=>{var ee;Y.preventDefault(),(ee=I.current)===null||ee===void 0||ee.focus()}),onUnmountAutoFocus:a},S.createElement(T7e,{asChild:!0,disableOutsidePointerEvents:s,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:p,onInteractOutside:m,onDismiss:y},S.createElement(z9e,pn({asChild:!0},T,{dir:_.dir,orientation:"vertical",loop:r,currentTabStopId:O,onCurrentTabStopIdChange:D,onEntryFocus:Kn(l,Y=>{_.isUsingKeyboardRef.current||Y.preventDefault()})}),S.createElement(C9e,pn({role:"menu","aria-orientation":"vertical","data-state":u8e(E.open),"data-radix-menu-content":"",dir:_.dir},k,w,{ref:N,style:{outline:"none",...w.style},onKeyDown:Kn(w.onKeyDown,Y=>{const fe=Y.target.closest("[data-radix-menu-content]")===Y.currentTarget,_e=Y.ctrlKey||Y.altKey||Y.metaKey,we=Y.key.length===1;fe&&(Y.key==="Tab"&&Y.preventDefault(),!_e&&we&&Q(Y.key));const xe=I.current;if(Y.target!==xe||!V9e.includes(Y.key))return;Y.preventDefault();const Se=L().filter(Je=>!Je.disabled).map(Je=>Je.ref.current);HG.includes(Y.key)&&Se.reverse(),c8e(Se)}),onBlur:Kn(e.onBlur,Y=>{Y.currentTarget.contains(Y.target)||(window.clearTimeout(W.current),B.current="")}),onPointerMove:Kn(e.onPointerMove,n7(Y=>{const ee=Y.target,fe=$.current!==Y.clientX;if(Y.currentTarget.contains(ee)&&fe){const _e=Y.clientX>$.current?"right":"left";z.current=_e,$.current=Y.clientX}}))})))))))}),t7="MenuItem",nD="menu.itemSelect",i8e=S.forwardRef((e,t)=>{const{disabled:n=!1,onSelect:r,...i}=e,o=S.useRef(null),a=YE(t7,e.__scopeMenu),s=VG(t7,e.__scopeMenu),l=ds(t,o),u=S.useRef(!1),d=()=>{const p=o.current;if(!n&&p){const m=new CustomEvent(nD,{bubbles:!0,cancelable:!0});p.addEventListener(nD,y=>r==null?void 0:r(y),{once:!0}),xG(p,m),m.defaultPrevented?u.current=!1:a.onClose()}};return S.createElement(o8e,pn({},i,{ref:l,disabled:n,onClick:Kn(e.onClick,d),onPointerDown:p=>{var m;(m=e.onPointerDown)===null||m===void 0||m.call(e,p),u.current=!0},onPointerUp:Kn(e.onPointerUp,p=>{var m;u.current||(m=p.currentTarget)===null||m===void 0||m.click()}),onKeyDown:Kn(e.onKeyDown,p=>{const m=s.searchRef.current!=="";n||m&&p.key===" "||W9e.includes(p.key)&&(p.currentTarget.click(),p.preventDefault())})}))}),o8e=S.forwardRef((e,t)=>{const{__scopeMenu:n,disabled:r=!1,textValue:i,...o}=e,a=VG(t7,n),s=UG(n),l=S.useRef(null),u=ds(t,l),[d,p]=S.useState(!1),[m,y]=S.useState("");return S.useEffect(()=>{const b=l.current;if(b){var w;y(((w=b.textContent)!==null&&w!==void 0?w:"").trim())}},[o.children]),S.createElement(e7.ItemSlot,{scope:n,disabled:r,textValue:i??m},S.createElement(H9e,pn({asChild:!0},s,{focusable:!r}),S.createElement(sc.div,pn({role:"menuitem","data-highlighted":d?"":void 0,"aria-disabled":r||void 0,"data-disabled":r?"":void 0},o,{ref:u,onPointerMove:Kn(e.onPointerMove,n7(b=>{r?a.onItemLeave(b):(a.onItemEnter(b),b.defaultPrevented||b.currentTarget.focus())})),onPointerLeave:Kn(e.onPointerLeave,n7(b=>a.onItemLeave(b))),onFocus:Kn(e.onFocus,()=>p(!0)),onBlur:Kn(e.onBlur,()=>p(!1))}))))}),a8e="MenuRadioGroup";mp(a8e,{value:void 0,onValueChange:()=>{}});const s8e="MenuItemIndicator";mp(s8e,{checked:!1});const l8e="MenuSub";mp(l8e);function u8e(e){return e?"open":"closed"}function c8e(e){const t=document.activeElement;for(const n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function d8e(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function f8e(e,t,n){const i=t.length>1&&Array.from(t).every(u=>u===t[0])?t[0]:t,o=n?e.indexOf(n):-1;let a=d8e(e,Math.max(o,0));i.length===1&&(a=a.filter(u=>u!==n));const l=a.find(u=>u.toLowerCase().startsWith(i.toLowerCase()));return l!==n?l:void 0}function h8e(e,t){const{x:n,y:r}=e;let i=!1;for(let o=0,a=t.length-1;or!=d>r&&n<(u-s)*(r-l)/(d-l)+s&&(i=!i)}return i}function p8e(e,t){if(!t)return!1;const n={x:e.clientX,y:e.clientY};return h8e(n,t)}function n7(e){return t=>t.pointerType==="mouse"?e(t):void 0}const g8e=X9e,m8e=Z9e,v8e=t8e,y8e=i8e,qG="ContextMenu",[b8e,UNe]=b2(qG,[WG]),y4=WG(),[x8e,KG]=b8e(qG),S8e=e=>{const{__scopeContextMenu:t,children:n,onOpenChange:r,dir:i,modal:o=!0}=e,[a,s]=S.useState(!1),l=y4(t),u=Js(r),d=S.useCallback(p=>{s(p),u(p)},[u]);return S.createElement(x8e,{scope:t,open:a,onOpenChange:d,modal:o},S.createElement(g8e,pn({},l,{dir:i,open:a,onOpenChange:d,modal:o}),n))},w8e="ContextMenuTrigger",C8e=S.forwardRef((e,t)=>{const{__scopeContextMenu:n,disabled:r=!1,...i}=e,o=KG(w8e,n),a=y4(n),s=S.useRef({x:0,y:0}),l=S.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...s.current})}),u=S.useRef(0),d=S.useCallback(()=>window.clearTimeout(u.current),[]),p=m=>{s.current={x:m.clientX,y:m.clientY},o.onOpenChange(!0)};return S.useEffect(()=>d,[d]),S.useEffect(()=>void(r&&d()),[r,d]),S.createElement(S.Fragment,null,S.createElement(m8e,pn({},a,{virtualRef:l})),S.createElement(sc.span,pn({"data-state":o.open?"open":"closed","data-disabled":r?"":void 0},i,{ref:t,style:{WebkitTouchCallout:"none",...e.style},onContextMenu:r?e.onContextMenu:Kn(e.onContextMenu,m=>{d(),p(m),m.preventDefault()}),onPointerDown:r?e.onPointerDown:Kn(e.onPointerDown,wx(m=>{d(),u.current=window.setTimeout(()=>p(m),700)})),onPointerMove:r?e.onPointerMove:Kn(e.onPointerMove,wx(d)),onPointerCancel:r?e.onPointerCancel:Kn(e.onPointerCancel,wx(d)),onPointerUp:r?e.onPointerUp:Kn(e.onPointerUp,wx(d))})))}),_8e="ContextMenuContent",k8e=S.forwardRef((e,t)=>{const{__scopeContextMenu:n,...r}=e,i=KG(_8e,n),o=y4(n),a=S.useRef(!1);return S.createElement(v8e,pn({},o,r,{ref:t,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:s=>{var l;(l=e.onCloseAutoFocus)===null||l===void 0||l.call(e,s),!s.defaultPrevented&&a.current&&s.preventDefault(),a.current=!1},onInteractOutside:s=>{var l;(l=e.onInteractOutside)===null||l===void 0||l.call(e,s),!s.defaultPrevented&&!i.modal&&(a.current=!0)},style:{...e.style,["--radix-context-menu-content-transform-origin"]:"var(--radix-popper-transform-origin)"}}))}),E8e=S.forwardRef((e,t)=>{const{__scopeContextMenu:n,...r}=e,i=y4(n);return S.createElement(y8e,pn({},i,r,{ref:t}))});function wx(e){return t=>t.pointerType!=="mouse"?e(t):void 0}const P8e=S8e,T8e=C8e,M8e=k8e,ud=E8e,L8e=(e,t)=>e.image.uuid===t.image.uuid&&e.isSelected===t.isSelected,YG=S.memo(e=>{var z,$,V,X,Q,G,Y,ee;const t=Te(),{activeTabName:n,galleryImageObjectFit:r,galleryImageMinimumWidth:i,mayDeleteImage:o,shouldUseSingleGalleryColumn:a}=le(zke),{image:s,isSelected:l}=e,{url:u,thumbnail:d,uuid:p,metadata:m}=s,[y,b]=S.useState(!1),w=a2(),{t:E}=De(),_=zE(),k=()=>b(!0),T=()=>b(!1),L=()=>{var fe,_e,we,xe;(_e=(fe=s.metadata)==null?void 0:fe.image)!=null&&_e.prompt&&_((xe=(we=s.metadata)==null?void 0:we.image)==null?void 0:xe.prompt),w({title:E("toast.promptSet"),status:"success",duration:2500,isClosable:!0})},O=()=>{s.metadata&&t(p2(s.metadata.image.seed)),w({title:E("toast.seedSet"),status:"success",duration:2500,isClosable:!0})},D=()=>{t(y0(s)),n!=="img2img"&&t(Wo("img2img")),w({title:E("toast.sentToImageToImage"),status:"success",duration:2500,isClosable:!0})},I=()=>{t(i4(s)),t(r4()),n!=="unifiedCanvas"&&t(Wo("unifiedCanvas")),w({title:E("toast.sentToUnifiedCanvas"),status:"success",duration:2500,isClosable:!0})},N=()=>{m&&t(sU(m)),w({title:E("toast.parametersSet"),status:"success",duration:2500,isClosable:!0})},W=async()=>{var fe;if((fe=m==null?void 0:m.image)!=null&&fe.init_image_path&&(await fetch(m.image.init_image_path)).ok){t(Wo("img2img")),t($3e(m)),w({title:E("toast.initialImageSet"),status:"success",duration:2500,isClosable:!0});return}w({title:E("toast.initialImageNotSet"),description:E("toast.initialImageNotSetDesc"),status:"error",duration:2500,isClosable:!0})},B=()=>t(ZO(s)),K=fe=>{fe.dataTransfer.setData("invokeai/imageUuid",p),fe.dataTransfer.effectAllowed="move"},ne=()=>{t(ZO(s))};return g.jsxs(P8e,{onOpenChange:fe=>{t(eU(fe))},children:[g.jsx(T8e,{children:g.jsxs(ao,{position:"relative",className:"hoverable-image",onMouseOver:k,onMouseOut:T,userSelect:"none",draggable:!0,onDragStart:K,children:[g.jsx(jw,{className:"hoverable-image-image",objectFit:a?"contain":r,rounded:"md",src:d||u,loading:"lazy"}),g.jsx("div",{className:"hoverable-image-content",onClick:B,children:l&&g.jsx(ja,{width:"50%",height:"50%",as:jE,className:"hoverable-image-check"})}),y&&i>=64&&g.jsx("div",{className:"hoverable-image-delete-button",children:g.jsx(A3,{image:s,children:g.jsx(ls,{"aria-label":E("parameters.deleteImage"),icon:g.jsx(Nke,{}),size:"xs",variant:"imageHoverIconButton",fontSize:14,isDisabled:!o})})})]},p)}),g.jsxs(M8e,{className:"hoverable-image-context-menu",sticky:"always",onInteractOutside:fe=>{fe.detail.originalEvent.preventDefault()},children:[g.jsx(ud,{onClickCapture:ne,children:E("parameters.openInViewer")}),g.jsx(ud,{onClickCapture:L,disabled:(($=(z=s==null?void 0:s.metadata)==null?void 0:z.image)==null?void 0:$.prompt)===void 0,children:E("parameters.usePrompt")}),g.jsx(ud,{onClickCapture:O,disabled:((X=(V=s==null?void 0:s.metadata)==null?void 0:V.image)==null?void 0:X.seed)===void 0,children:E("parameters.useSeed")}),g.jsx(ud,{onClickCapture:N,disabled:!["txt2img","img2img"].includes((G=(Q=s==null?void 0:s.metadata)==null?void 0:Q.image)==null?void 0:G.type),children:E("parameters.useAll")}),g.jsx(ud,{onClickCapture:W,disabled:((ee=(Y=s==null?void 0:s.metadata)==null?void 0:Y.image)==null?void 0:ee.type)!=="img2img",children:E("parameters.useInitImg")}),g.jsx(ud,{onClickCapture:D,children:E("parameters.sendToImg2Img")}),g.jsx(ud,{onClickCapture:I,children:E("parameters.sendToUnifiedCanvas")}),g.jsx(ud,{"data-warning":!0,children:g.jsx(A3,{image:s,children:g.jsx("p",{children:E("parameters.deleteImage")})})})]})]})},L8e);YG.displayName="HoverableImage";const Cx=320,rD=40,A8e={txt2img:{galleryMinWidth:200,galleryMaxWidth:500},img2img:{galleryMinWidth:200,galleryMaxWidth:500},unifiedCanvas:{galleryMinWidth:200,galleryMaxWidth:200},nodes:{galleryMinWidth:200,galleryMaxWidth:500},postprocess:{galleryMinWidth:200,galleryMaxWidth:500},training:{galleryMinWidth:200,galleryMaxWidth:500}},iD=400;function XG(){const e=Te(),{t}=De(),{images:n,currentCategory:r,currentImageUuid:i,shouldPinGallery:o,shouldShowGallery:a,galleryScrollPosition:s,galleryImageMinimumWidth:l,galleryGridTemplateColumns:u,activeTabName:d,galleryImageObjectFit:p,shouldHoldGalleryOpen:m,shouldAutoSwitchToNewImages:y,areMoreImagesAvailable:b,galleryWidth:w,isLightboxOpen:E,isStaging:_,shouldEnableResize:k,shouldUseSingleGalleryColumn:T}=le(Bke),{galleryMinWidth:L,galleryMaxWidth:O}=E?{galleryMinWidth:iD,galleryMaxWidth:iD}:A8e[d],[D,I]=S.useState(w>=Cx),[N,W]=S.useState(!1),[B,K]=S.useState(0),ne=S.useRef(null),z=S.useRef(null),$=S.useRef(null);S.useEffect(()=>{w>=Cx&&I(!1)},[w]);const V=()=>{e(k3e(!o)),e(Li(!0))},X=()=>{a?G():Q()},Q=()=>{e(Am(!0)),o&&e(Li(!0))},G=S.useCallback(()=>{e(Am(!1)),e(eU(!1)),e(E3e(z.current?z.current.scrollTop:0)),setTimeout(()=>o&&e(Li(!0)),400)},[e,o]),Y=()=>{e(Uk(r))},ee=xe=>{e(Gv(xe))},fe=()=>{m||($.current=window.setTimeout(()=>G(),500))},_e=()=>{$.current&&window.clearTimeout($.current)};Qe("g",()=>{X()},[a,o]),Qe("left",()=>{e(vE())},{enabled:!_||d!=="unifiedCanvas"},[_]),Qe("right",()=>{e(mE())},{enabled:!_||d!=="unifiedCanvas"},[_]),Qe("shift+g",()=>{V()},[o]),Qe("esc",()=>{e(Am(!1))},{enabled:()=>!o,preventDefault:!0},[o]);const we=32;return Qe("shift+up",()=>{if(l<256){const xe=Ce.clamp(l+we,32,256);e(Gv(xe))}},[l]),Qe("shift+down",()=>{if(l>32){const xe=Ce.clamp(l-we,32,256);e(Gv(xe))}},[l]),S.useEffect(()=>{z.current&&(z.current.scrollTop=s)},[s,a]),S.useEffect(()=>{function xe(Le){!o&&ne.current&&!ne.current.contains(Le.target)&&G()}return document.addEventListener("mousedown",xe),()=>{document.removeEventListener("mousedown",xe)}},[G,o]),g.jsx(yG,{nodeRef:ne,in:a||m,unmountOnExit:!0,timeout:200,classNames:"image-gallery-wrapper",children:g.jsxs("div",{className:"image-gallery-wrapper",style:{zIndex:o?1:100},"data-pinned":o,ref:ne,onMouseLeave:o?void 0:fe,onMouseEnter:o?void 0:_e,onMouseOver:o?void 0:_e,children:[g.jsxs(fG,{minWidth:L,maxWidth:o?O:window.innerWidth,className:"image-gallery-popup",handleStyles:{left:{width:"15px"}},enable:{left:k},size:{width:w,height:o?"100%":"100vh"},onResizeStart:(xe,Le,Se)=>{K(Se.clientHeight),Se.style.height=`${Se.clientHeight}px`,o&&(Se.style.position="fixed",Se.style.right="1rem",W(!0))},onResizeStop:(xe,Le,Se,Je)=>{const Xe=o?Ce.clamp(Number(w)+Je.width,L,Number(O)):Number(w)+Je.width;e(M3e(Xe)),Se.removeAttribute("data-resize-alert"),o&&(Se.style.position="relative",Se.style.removeProperty("right"),Se.style.setProperty("height",o?"100%":"100vh"),W(!1),e(Li(!0)))},onResize:(xe,Le,Se,Je)=>{const Xe=Ce.clamp(Number(w)+Je.width,L,Number(o?O:.95*window.innerWidth));Xe>=Cx&&!D?I(!0):XeXe-rD&&e(Gv(Xe-rD)),o&&(Xe>=O?Se.setAttribute("data-resize-alert","true"):Se.removeAttribute("data-resize-alert")),Se.style.height=`${B}px`},children:[g.jsxs("div",{className:"image-gallery-header",children:[g.jsx(Gi,{size:"sm",isAttached:!0,variant:"solid",className:"image-gallery-category-btn-group",children:D?g.jsxs(g.Fragment,{children:[g.jsx(On,{size:"sm","data-selected":r==="result",onClick:()=>e(ex("result")),children:t("gallery.generations")}),g.jsx(On,{size:"sm","data-selected":r==="user",onClick:()=>e(ex("user")),children:t("gallery.uploads")})]}):g.jsxs(g.Fragment,{children:[g.jsx(Ye,{"aria-label":t("gallery.showGenerations"),tooltip:t("gallery.showGenerations"),"data-selected":r==="result",icon:g.jsx(kke,{}),onClick:()=>e(ex("result"))}),g.jsx(Ye,{"aria-label":t("gallery.showUploads"),tooltip:t("gallery.showUploads"),"data-selected":r==="user",icon:g.jsx(Fke,{}),onClick:()=>e(ex("user"))})]})}),g.jsxs("div",{className:"image-gallery-header-right-icons",children:[g.jsx(Ys,{isLazy:!0,trigger:"hover",placement:"left",triggerComponent:g.jsx(Ye,{size:"sm","aria-label":t("gallery.gallerySettings"),icon:g.jsx(BE,{}),className:"image-gallery-icon-btn",cursor:"pointer"}),children:g.jsxs("div",{className:"image-gallery-settings-popover",children:[g.jsxs("div",{children:[g.jsx(Dn,{value:l,onChange:ee,min:32,max:256,hideTooltip:!0,label:t("gallery.galleryImageSize")}),g.jsx(Ye,{size:"sm","aria-label":t("gallery.galleryImageResetSize"),tooltip:t("gallery.galleryImageResetSize"),onClick:()=>e(Gv(64)),icon:g.jsx(f4,{}),"data-selected":o,styleClass:"image-gallery-icon-btn"})]}),g.jsx("div",{children:g.jsx(Gn,{label:t("gallery.maintainAspectRatio"),isChecked:p==="contain",onChange:()=>e(P3e(p==="contain"?"cover":"contain"))})}),g.jsx("div",{children:g.jsx(Gn,{label:t("gallery.autoSwitchNewImages"),isChecked:y,onChange:xe=>e(T3e(xe.target.checked))})}),g.jsx("div",{children:g.jsx(Gn,{label:t("gallery.singleColumnLayout"),isChecked:T,onChange:xe=>e(L3e(xe.target.checked))})})]})}),g.jsx(Ye,{size:"sm",className:"image-gallery-icon-btn","aria-label":t("gallery.pinGallery"),tooltip:`${t("gallery.pinGallery")} (Shift+G)`,onClick:V,icon:o?g.jsx(hG,{}):g.jsx(pG,{})})]})]}),g.jsx("div",{className:"image-gallery-container",ref:z,children:n.length||b?g.jsxs(g.Fragment,{children:[g.jsx("div",{className:"image-gallery",style:{gridTemplateColumns:u},children:n.map(xe=>{const{uuid:Le}=xe,Se=i===Le;return g.jsx(YG,{image:xe,isSelected:Se},Le)})}),g.jsx(ss,{onClick:Y,isDisabled:!b,className:"image-gallery-load-more-btn",children:t(b?"gallery.loadMore":"gallery.allImagesLoaded")})]}):g.jsxs("div",{className:"image-gallery-container-placeholder",children:[g.jsx(gG,{}),g.jsx("p",{children:t("gallery.noImagesInGallery")})]})})]}),N&&g.jsx("div",{style:{width:`${w}px`,height:"100%"}})]})})}var ns=function(e,t){return Number(e.toFixed(t))},O8e=function(e,t){return typeof e=="number"?e:t},mr=function(e,t,n){n&&typeof n=="function"&&n(e,t)},R8e=function(e){return-Math.cos(e*Math.PI)/2+.5},I8e=function(e){return e},D8e=function(e){return e*e},j8e=function(e){return e*(2-e)},N8e=function(e){return e<.5?2*e*e:-1+(4-2*e)*e},$8e=function(e){return e*e*e},F8e=function(e){return--e*e*e+1},B8e=function(e){return e<.5?4*e*e*e:(e-1)*(2*e-2)*(2*e-2)+1},z8e=function(e){return e*e*e*e},H8e=function(e){return 1- --e*e*e*e},W8e=function(e){return e<.5?8*e*e*e*e:1-8*--e*e*e*e},U8e=function(e){return e*e*e*e*e},V8e=function(e){return 1+--e*e*e*e*e},G8e=function(e){return e<.5?16*e*e*e*e*e:1+16*--e*e*e*e*e},ZG={easeOut:R8e,linear:I8e,easeInQuad:D8e,easeOutQuad:j8e,easeInOutQuad:N8e,easeInCubic:$8e,easeOutCubic:F8e,easeInOutCubic:B8e,easeInQuart:z8e,easeOutQuart:H8e,easeInOutQuart:W8e,easeInQuint:U8e,easeOutQuint:V8e,easeInOutQuint:G8e},QG=function(e){typeof e=="number"&&cancelAnimationFrame(e)},Fl=function(e){e.mounted&&(QG(e.animation),e.animate=!1,e.animation=null,e.velocity=null)};function JG(e,t,n,r){if(e.mounted){var i=new Date().getTime(),o=1;Fl(e),e.animation=function(){if(!e.mounted)return QG(e.animation);var a=new Date().getTime()-i,s=a/n,l=ZG[t],u=l(s);a>=n?(r(o),e.animation=null):e.animation&&(r(u),requestAnimationFrame(e.animation))},requestAnimationFrame(e.animation)}}function q8e(e){var t=e.scale,n=e.positionX,r=e.positionY;return!(Number.isNaN(t)||Number.isNaN(n)||Number.isNaN(r))}function ff(e,t,n,r){var i=q8e(t);if(!(!e.mounted||!i)){var o=e.setTransformState,a=e.transformState,s=a.scale,l=a.positionX,u=a.positionY,d=t.scale-s,p=t.positionX-l,m=t.positionY-u;n===0?o(t.scale,t.positionX,t.positionY):JG(e,r,n,function(y){var b=s+d*y,w=l+p*y,E=u+m*y;o(b,w,E)})}}function K8e(e,t,n){var r=e.offsetWidth,i=e.offsetHeight,o=t.offsetWidth,a=t.offsetHeight,s=o*n,l=a*n,u=r-s,d=i-l;return{wrapperWidth:r,wrapperHeight:i,newContentWidth:s,newDiffWidth:u,newContentHeight:l,newDiffHeight:d}}var Y8e=function(e,t,n,r,i,o,a){var s=e>t?n*(a?1:.5):0,l=r>i?o*(a?1:.5):0,u=e-t-s,d=s,p=r-i-l,m=l;return{minPositionX:u,maxPositionX:d,minPositionY:p,maxPositionY:m}},XE=function(e,t){var n=e.wrapperComponent,r=e.contentComponent,i=e.setup.centerZoomedOut;if(!n||!r)throw new Error("Components are not mounted");var o=K8e(n,r,t),a=o.wrapperWidth,s=o.wrapperHeight,l=o.newContentWidth,u=o.newDiffWidth,d=o.newContentHeight,p=o.newDiffHeight,m=Y8e(a,l,u,s,d,p,Boolean(i));return m},r7=function(e,t,n,r){return r?en?ns(n,2):ns(e,2):ns(e,2)},t0=function(e,t){var n=XE(e,t);return e.bounds=n,n};function b4(e,t,n,r,i,o,a){var s=n.minPositionX,l=n.minPositionY,u=n.maxPositionX,d=n.maxPositionY,p=0,m=0;a&&(p=i,m=o);var y=r7(e,s-p,u+p,r),b=r7(t,l-m,d+m,r);return{x:y,y:b}}function x4(e,t,n,r,i,o){var a=e.transformState,s=a.scale,l=a.positionX,u=a.positionY,d=r-s;if(typeof t!="number"||typeof n!="number")return console.error("Mouse X and Y position were not provided!"),{x:l,y:u};var p=l-t*d,m=u-n*d,y=b4(p,m,i,o,0,0,null);return y}function w2(e,t,n,r,i){var o=i?r:0,a=t-o;return!Number.isNaN(n)&&e>=n?n:!Number.isNaN(t)&&e<=a?a:e}var oD=function(e,t){var n=e.setup.panning.excluded,r=e.isInitialized,i=e.wrapperComponent,o=t.target,a=i==null?void 0:i.contains(o),s=r&&o&&a;if(!s)return!1;var l=S4(o,n);return!l},aD=function(e){var t=e.isInitialized,n=e.isPanning,r=e.setup,i=r.panning.disabled,o=t&&n&&!i;return!!o},X8e=function(e,t){var n=e.transformState,r=n.positionX,i=n.positionY;e.isPanning=!0;var o=t.clientX,a=t.clientY;e.startCoords={x:o-r,y:a-i}},Z8e=function(e,t){var n=t.touches,r=e.transformState,i=r.positionX,o=r.positionY;e.isPanning=!0;var a=n.length===1;if(a){var s=n[0].clientX,l=n[0].clientY;e.startCoords={x:s-i,y:l-o}}};function Q8e(e){var t=e.transformState,n=t.positionX,r=t.positionY,i=t.scale,o=e.setup,a=o.disabled,s=o.limitToBounds,l=o.centerZoomedOut,u=e.wrapperComponent;if(!(a||!u||!e.bounds)){var d=e.bounds,p=d.maxPositionX,m=d.minPositionX,y=d.maxPositionY,b=d.minPositionY,w=n>p||ny||rp?u.offsetWidth:e.setup.minPositionX||0,k=r>y?u.offsetHeight:e.setup.minPositionY||0,T=x4(e,_,k,i,e.bounds,s||l),L=T.x,O=T.y;return{scale:i,positionX:w?L:n,positionY:E?O:r}}}function J8e(e,t,n,r,i){var o=e.setup.limitToBounds,a=e.wrapperComponent,s=e.bounds,l=e.transformState,u=l.scale,d=l.positionX,p=l.positionY;if(!(a===null||s===null||t===d&&n===p)){var m=b4(t,n,s,o,r,i,a),y=m.x,b=m.y;e.setTransformState(u,y,b)}}var eEe=function(e,t,n){var r=e.startCoords,i=e.transformState,o=e.setup.panning,a=o.lockAxisX,s=o.lockAxisY,l=i.positionX,u=i.positionY;if(!r)return{x:l,y:u};var d=t-r.x,p=n-r.y,m=a?l:d,y=s?u:p;return{x:m,y}},N3=function(e,t){var n=e.setup,r=e.transformState,i=r.scale,o=n.minScale,a=n.disablePadding;return t>0&&i>=o&&!a?t:0},tEe=function(e){var t=e.mounted,n=e.setup,r=n.disabled,i=n.velocityAnimation,o=e.transformState.scale,a=i.disabled,s=!a||o>1||!r||t;return!!s},nEe=function(e){var t=e.mounted,n=e.velocity,r=e.bounds,i=e.setup,o=i.disabled,a=i.velocityAnimation,s=e.transformState.scale,l=a.disabled,u=!l||s>1||!o||t;return!(!u||!n||!r)};function rEe(e,t){var n=e.setup.velocityAnimation,r=n.equalToMove,i=n.animationTime,o=n.sensitivity;return r?i*t*o:i}function sD(e,t,n,r,i,o,a,s,l,u){if(i){if(t>a&&n>a){var d=a+(e-a)*u;return d>l?l:do?o:d}}return r?t:r7(e,o,a,i)}function iEe(e,t){var n=1;return t?Math.min(n,e.offsetWidth/window.innerWidth):n}function oEe(e,t){var n=tEe(e);if(n){var r=e.lastMousePosition,i=e.velocityTime,o=e.setup,a=e.wrapperComponent,s=o.velocityAnimation.equalToMove,l=Date.now();if(r&&i&&a){var u=iEe(a,s),d=t.x-r.x,p=t.y-r.y,m=d/u,y=p/u,b=l-i,w=d*d+p*p,E=Math.sqrt(w)/b;e.velocity={velocityX:m,velocityY:y,total:E}}e.lastMousePosition=t,e.velocityTime=l}}function aEe(e){var t=e.velocity,n=e.bounds,r=e.setup,i=e.wrapperComponent,o=nEe(e);if(!(!o||!t||!n||!i)){var a=t.velocityX,s=t.velocityY,l=t.total,u=n.maxPositionX,d=n.minPositionX,p=n.maxPositionY,m=n.minPositionY,y=r.limitToBounds,b=r.alignmentAnimation,w=r.zoomAnimation,E=r.panning,_=E.lockAxisY,k=E.lockAxisX,T=w.animationType,L=b.sizeX,O=b.sizeY,D=b.velocityAlignmentTime,I=D,N=rEe(e,l),W=Math.max(N,I),B=N3(e,L),K=N3(e,O),ne=B*i.offsetWidth/100,z=K*i.offsetHeight/100,$=u+ne,V=d-ne,X=p+z,Q=m-z,G=e.transformState,Y=new Date().getTime();JG(e,T,W,function(ee){var fe=e.transformState,_e=fe.scale,we=fe.positionX,xe=fe.positionY,Le=new Date().getTime()-Y,Se=Le/I,Je=ZG[b.animationType],Xe=1-Je(Math.min(1,Se)),tt=1-ee,yt=we+a*tt,Be=xe+s*tt,Ae=sD(yt,G.positionX,we,k,y,d,u,V,$,Xe),bt=sD(Be,G.positionY,xe,_,y,m,p,Q,X,Xe);(we!==yt||xe!==Be)&&e.setTransformState(_e,Ae,bt)})}}function lD(e,t){var n=e.transformState.scale;Fl(e),t0(e,n),window.TouchEvent!==void 0&&t instanceof TouchEvent?Z8e(e,t):X8e(e,t)}function eq(e){var t=e.transformState.scale,n=e.setup,r=n.minScale,i=n.alignmentAnimation,o=i.disabled,a=i.sizeX,s=i.sizeY,l=i.animationTime,u=i.animationType,d=o||t.1&&p;m?aEe(e):eq(e)}}function ZE(e,t,n,r){var i=e.setup,o=i.minScale,a=i.maxScale,s=i.limitToBounds,l=w2(ns(t,2),o,a,0,!1),u=t0(e,l),d=x4(e,n,r,l,u,s),p=d.x,m=d.y;return{scale:l,positionX:p,positionY:m}}function tq(e,t,n){var r=e.transformState.scale,i=e.wrapperComponent,o=e.setup,a=o.minScale,s=o.limitToBounds,l=o.zoomAnimation,u=l.disabled,d=l.animationTime,p=l.animationType,m=u||r>=a;if((r>=1||s)&&eq(e),!(m||!i||!e.mounted)){var y=t||i.offsetWidth/2,b=n||i.offsetHeight/2,w=ZE(e,a,y,b);w&&ff(e,w,d,p)}}var Wd=function(){return Wd=Object.assign||function(t){for(var n,r=1,i=arguments.length;ra||Math.sign(n.deltaY)!==Math.sign(t.deltaY)||n.deltaY>0&&n.deltaYt.deltaY||Math.sign(n.deltaY)!==Math.sign(t.deltaY):!1},CEe=function(e,t){var n=e.setup.pinch,r=n.disabled,i=n.excluded,o=e.isInitialized,a=t.target,s=o&&!r&&a;if(!s)return!1;var l=S4(a,i);return!l},_Ee=function(e){var t=e.setup.pinch.disabled,n=e.isInitialized,r=e.pinchStartDistance,i=n&&!t&&r;return!!i},kEe=function(e,t,n){var r=n.getBoundingClientRect(),i=e.touches,o=ns(i[0].clientX-r.left,5),a=ns(i[0].clientY-r.top,5),s=ns(i[1].clientX-r.left,5),l=ns(i[1].clientY-r.top,5);return{x:(o+s)/2/t,y:(a+l)/2/t}},lq=function(e){return Math.sqrt(Math.pow(e.touches[0].pageX-e.touches[1].pageX,2)+Math.pow(e.touches[0].pageY-e.touches[1].pageY,2))},EEe=function(e,t){var n=e.pinchStartScale,r=e.pinchStartDistance,i=e.setup,o=i.maxScale,a=i.minScale,s=i.zoomAnimation,l=i.disablePadding,u=s.size,d=s.disabled;if(!n||r===null||!t)throw new Error("Pinch touches distance was not provided");if(t<0)return e.transformState.scale;var p=t/r,m=p*n;return w2(ns(m,2),a,o,u,!d&&!l)},PEe=160,TEe=100,MEe=function(e,t){var n=e.props,r=n.onWheelStart,i=n.onZoomStart;e.wheelStopEventTimer||(Fl(e),mr(Un(e),t,r),mr(Un(e),t,i))},LEe=function(e,t){var n=e.props,r=n.onWheel,i=n.onZoom,o=e.contentComponent,a=e.setup,s=e.transformState,l=s.scale,u=a.limitToBounds,d=a.centerZoomedOut,p=a.zoomAnimation,m=a.wheel,y=a.disablePadding,b=p.size,w=p.disabled,E=m.step;if(!o)throw new Error("Component not mounted");t.preventDefault(),t.stopPropagation();var _=xEe(t,null),k=SEe(e,_,E,!t.ctrlKey);if(l!==k){var T=t0(e,k),L=sq(t,o,l),O=w||b===0||d||y,D=u&&O,I=x4(e,L.x,L.y,k,T,D),N=I.x,W=I.y;e.previousWheelEvent=t,e.setTransformState(k,N,W),mr(Un(e),t,r),mr(Un(e),t,i)}},AEe=function(e,t){var n=e.props,r=n.onWheelStop,i=n.onZoomStop;i7(e.wheelAnimationTimer),e.wheelAnimationTimer=setTimeout(function(){e.mounted&&(tq(e,t.x,t.y),e.wheelAnimationTimer=null)},TEe);var o=wEe(e,t);o&&(i7(e.wheelStopEventTimer),e.wheelStopEventTimer=setTimeout(function(){e.mounted&&(e.wheelStopEventTimer=null,mr(Un(e),t,r),mr(Un(e),t,i))},PEe))},OEe=function(e,t){var n=lq(t);e.pinchStartDistance=n,e.lastDistance=n,e.pinchStartScale=e.transformState.scale,e.isPanning=!1,Fl(e)},REe=function(e,t){var n=e.contentComponent,r=e.pinchStartDistance,i=e.transformState.scale,o=e.setup,a=o.limitToBounds,s=o.centerZoomedOut,l=o.zoomAnimation,u=l.disabled,d=l.size;if(!(r===null||!n)){var p=kEe(t,i,n);if(!(!Number.isFinite(p.x)||!Number.isFinite(p.y))){var m=lq(t),y=EEe(e,m);if(y!==i){var b=t0(e,y),w=u||d===0||s,E=a&&w,_=x4(e,p.x,p.y,y,b,E),k=_.x,T=_.y;e.pinchMidpoint=p,e.lastDistance=m,e.setTransformState(y,k,T)}}}},IEe=function(e){var t=e.pinchMidpoint;e.velocity=null,e.lastDistance=null,e.pinchMidpoint=null,e.pinchStartScale=null,e.pinchStartDistance=null,tq(e,t==null?void 0:t.x,t==null?void 0:t.y)},uq=function(e,t){var n=e.props.onZoomStop,r=e.setup.doubleClick.animationTime;i7(e.doubleClickStopEventTimer),e.doubleClickStopEventTimer=setTimeout(function(){e.doubleClickStopEventTimer=null,mr(Un(e),t,n)},r)},DEe=function(e,t){var n=e.props,r=n.onZoomStart,i=n.onZoom,o=e.setup.doubleClick,a=o.animationTime,s=o.animationType;mr(Un(e),t,r),oq(e,a,s,function(){return mr(Un(e),t,i)}),uq(e,t)};function jEe(e,t){var n=e.setup,r=e.doubleClickStopEventTimer,i=e.transformState,o=e.contentComponent,a=i.scale,s=e.props,l=s.onZoomStart,u=s.onZoom,d=n.doubleClick,p=d.disabled,m=d.mode,y=d.step,b=d.animationTime,w=d.animationType;if(!p&&!r){if(m==="reset")return DEe(e,t);if(!o)return console.error("No ContentComponent found");var E=m==="zoomOut"?-1:1,_=rq(e,E,y);if(a!==_){mr(Un(e),t,l);var k=sq(t,o,a),T=ZE(e,_,k.x,k.y);if(!T)return console.error("Error during zoom event. New transformation state was not calculated.");mr(Un(e),t,u),ff(e,T,b,w),uq(e,t)}}}var NEe=function(e,t){var n=e.isInitialized,r=e.setup,i=e.wrapperComponent,o=r.doubleClick,a=o.disabled,s=o.excluded,l=t.target,u=i==null?void 0:i.contains(l),d=n&&l&&u&&!a;if(!d)return!1;var p=S4(l,s);return!p},$Ee=function(){function e(t){var n=this;this.mounted=!0,this.onChangeCallbacks=new Set,this.wrapperComponent=null,this.contentComponent=null,this.isInitialized=!1,this.bounds=null,this.previousWheelEvent=null,this.wheelStopEventTimer=null,this.wheelAnimationTimer=null,this.isPanning=!1,this.startCoords=null,this.lastTouch=null,this.distance=null,this.lastDistance=null,this.pinchStartDistance=null,this.pinchStartScale=null,this.pinchMidpoint=null,this.doubleClickStopEventTimer=null,this.velocity=null,this.velocityTime=null,this.lastMousePosition=null,this.animate=!1,this.animation=null,this.maxBounds=null,this.pressedKeys={},this.mount=function(){n.initializeWindowEvents()},this.unmount=function(){n.cleanupWindowEvents()},this.update=function(r){t0(n,n.transformState.scale),n.setup=dD(r)},this.initializeWindowEvents=function(){var r,i=o6(),o=(r=n.wrapperComponent)===null||r===void 0?void 0:r.ownerDocument,a=o==null?void 0:o.defaultView;a==null||a.addEventListener("mousedown",n.onPanningStart,i),a==null||a.addEventListener("mousemove",n.onPanning,i),a==null||a.addEventListener("mouseup",n.onPanningStop,i),o==null||o.addEventListener("mouseleave",n.clearPanning,i),a==null||a.addEventListener("keyup",n.setKeyUnPressed,i),a==null||a.addEventListener("keydown",n.setKeyPressed,i)},this.cleanupWindowEvents=function(){var r,i,o=o6(),a=(r=n.wrapperComponent)===null||r===void 0?void 0:r.ownerDocument,s=a==null?void 0:a.defaultView;s==null||s.removeEventListener("mousedown",n.onPanningStart,o),s==null||s.removeEventListener("mousemove",n.onPanning,o),s==null||s.removeEventListener("mouseup",n.onPanningStop,o),a==null||a.removeEventListener("mouseleave",n.clearPanning,o),s==null||s.removeEventListener("keyup",n.setKeyUnPressed,o),s==null||s.removeEventListener("keydown",n.setKeyPressed,o),document.removeEventListener("mouseleave",n.clearPanning,o),Fl(n),(i=n.observer)===null||i===void 0||i.disconnect()},this.handleInitializeWrapperEvents=function(r){var i=o6();r.addEventListener("wheel",n.onWheelZoom,i),r.addEventListener("dblclick",n.onDoubleClick,i),r.addEventListener("touchstart",n.onTouchPanningStart,i),r.addEventListener("touchmove",n.onTouchPanning,i),r.addEventListener("touchend",n.onTouchPanningStop,i)},this.handleInitialize=function(r){var i=n.setup.centerOnInit;n.applyTransformation(),i&&(n.setCenter(),n.observer=new ResizeObserver(function(){var o;n.setCenter(),(o=n.observer)===null||o===void 0||o.disconnect()}),n.observer.observe(r))},this.onWheelZoom=function(r){var i=n.setup.disabled;if(!i){var o=yEe(n,r);if(o){var a=n.isPressingKeys(n.setup.wheel.activationKeys);a&&(MEe(n,r),LEe(n,r),AEe(n,r))}}},this.onPanningStart=function(r){var i=n.setup.disabled,o=n.props.onPanningStart;if(!i){var a=oD(n,r);if(a){var s=n.isPressingKeys(n.setup.panning.activationKeys);s&&(r.preventDefault(),r.stopPropagation(),Fl(n),lD(n,r),mr(Un(n),r,o))}}},this.onPanning=function(r){var i=n.setup.disabled,o=n.props.onPanning;if(!i){var a=aD(n);if(a){var s=n.isPressingKeys(n.setup.panning.activationKeys);s&&(r.preventDefault(),r.stopPropagation(),uD(n,r.clientX,r.clientY),mr(Un(n),r,o))}}},this.onPanningStop=function(r){var i=n.props.onPanningStop;n.isPanning&&(sEe(n),mr(Un(n),r,i))},this.onPinchStart=function(r){var i=n.setup.disabled,o=n.props,a=o.onPinchingStart,s=o.onZoomStart;if(!i){var l=CEe(n,r);l&&(OEe(n,r),Fl(n),mr(Un(n),r,a),mr(Un(n),r,s))}},this.onPinch=function(r){var i=n.setup.disabled,o=n.props,a=o.onPinching,s=o.onZoom;if(!i){var l=_Ee(n);l&&(r.preventDefault(),r.stopPropagation(),REe(n,r),mr(Un(n),r,a),mr(Un(n),r,s))}},this.onPinchStop=function(r){var i=n.props,o=i.onPinchingStop,a=i.onZoomStop;n.pinchStartScale&&(IEe(n),mr(Un(n),r,o),mr(Un(n),r,a))},this.onTouchPanningStart=function(r){var i=n.setup.disabled,o=n.props.onPanningStart;if(!i){var a=oD(n,r);if(a){var s=n.lastTouch&&+new Date-n.lastTouch<200;if(s&&r.touches.length===1)n.onDoubleClick(r);else{n.lastTouch=+new Date,Fl(n);var l=r.touches,u=l.length===1,d=l.length===2;u&&(Fl(n),lD(n,r),mr(Un(n),r,o)),d&&n.onPinchStart(r)}}}},this.onTouchPanning=function(r){var i=n.setup.disabled,o=n.props.onPanning;if(n.isPanning&&r.touches.length===1){if(i)return;var a=aD(n);if(!a)return;r.preventDefault(),r.stopPropagation();var s=r.touches[0];uD(n,s.clientX,s.clientY),mr(Un(n),r,o)}else r.touches.length>1&&n.onPinch(r)},this.onTouchPanningStop=function(r){n.onPanningStop(r),n.onPinchStop(r)},this.onDoubleClick=function(r){var i=n.setup.disabled;if(!i){var o=NEe(n,r);o&&jEe(n,r)}},this.clearPanning=function(r){n.isPanning&&n.onPanningStop(r)},this.setKeyPressed=function(r){n.pressedKeys[r.key]=!0},this.setKeyUnPressed=function(r){n.pressedKeys[r.key]=!1},this.isPressingKeys=function(r){return r.length?Boolean(r.find(function(i){return n.pressedKeys[i]})):!0},this.setTransformState=function(r,i,o){var a=n.props.onTransformed;if(!Number.isNaN(r)&&!Number.isNaN(i)&&!Number.isNaN(o)){r!==n.transformState.scale&&(n.transformState.previousScale=n.transformState.scale,n.transformState.scale=r),n.transformState.positionX=i,n.transformState.positionY=o;var s=Un(n);n.onChangeCallbacks.forEach(function(l){return l(s)}),mr(s,{scale:r,positionX:i,positionY:o},a),n.applyTransformation()}else console.error("Detected NaN set state values")},this.setCenter=function(){if(n.wrapperComponent&&n.contentComponent){var r=aq(n.transformState.scale,n.wrapperComponent,n.contentComponent);n.setTransformState(r.scale,r.positionX,r.positionY)}},this.handleTransformStyles=function(r,i,o){return n.props.customTransform?n.props.customTransform(r,i,o):mEe(r,i,o)},this.applyTransformation=function(){if(!(!n.mounted||!n.contentComponent)){var r=n.transformState,i=r.scale,o=r.positionX,a=r.positionY,s=n.handleTransformStyles(o,a,i);n.contentComponent.style.transform=s}},this.getContext=function(){return Un(n)},this.onChange=function(r){return n.onChangeCallbacks.has(r)||n.onChangeCallbacks.add(r),function(){n.onChangeCallbacks.delete(r)}},this.init=function(r,i){n.cleanupWindowEvents(),n.wrapperComponent=r,n.contentComponent=i,t0(n,n.transformState.scale),n.handleInitializeWrapperEvents(r),n.handleInitialize(i),n.initializeWindowEvents(),n.isInitialized=!0,mr(Un(n),void 0,n.props.onInit)},this.props=t,this.setup=dD(this.props),this.transformState=nq(this.props)}return e}(),QE=Ke.createContext(null),FEe=function(e,t){return typeof e=="function"?e(t):e},BEe=Ke.forwardRef(function(e,t){var n=S.useState(0),r=n[1],i=e.children,o=S.useRef(new $Ee(e)).current,a=FEe(e.children,Un(o)),s=S.useCallback(function(){typeof i=="function"&&r(function(l){return l+1})},[i]);return S.useImperativeHandle(t,function(){return Un(o)},[o]),S.useEffect(function(){o.update(e)},[o,e]),S.useEffect(function(){return o.onChange(s)},[o,e,s]),Ke.createElement(QE.Provider,{value:o},a)});function zEe(e,t){t===void 0&&(t={});var n=t.insertAt;if(!(!e||typeof document>"u")){var r=document.head||document.getElementsByTagName("head")[0],i=document.createElement("style");i.type="text/css",n==="top"&&r.firstChild?r.insertBefore(i,r.firstChild):r.appendChild(i),i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}}var HEe=`.transform-component-module_wrapper__7HFJe { position: relative; width: -moz-fit-content; width: fit-content; @@ -505,7 +505,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho .transform-component-module_content__uCDPE img { pointer-events: none; } -`,fD={wrapper:"transform-component-module_wrapper__7HFJe",content:"transform-component-module_content__uCDPE"};BEe(zEe);var HEe=function(e){var t=e.children,n=e.wrapperClass,r=n===void 0?"":n,i=e.contentClass,o=i===void 0?"":i,a=e.wrapperStyle,s=e.contentStyle,l=e.wrapperProps,u=l===void 0?{}:l,d=e.contentProps,h=d===void 0?{}:d,m=S.useContext(QE).init,y=S.useRef(null),b=S.useRef(null);return S.useEffect(function(){var w=y.current,E=b.current;w!==null&&E!==null&&m&&m(w,E)},[]),Ke.createElement("div",Wd({},u,{ref:y,className:"react-transform-wrapper ".concat(fD.wrapper," ").concat(r),style:a}),Ke.createElement("div",Wd({},h,{ref:b,className:"react-transform-component ".concat(fD.content," ").concat(o),style:s}),t))};Ke.forwardRef(function(e,t){var n=S.useRef(null),r=S.useContext(QE);return S.useEffect(function(){return r.onChange(function(i){if(n.current){var o=0,a=0;n.current.style.transform=r.handleTransformStyles(o,a,1/i.state.scale)}})},[r]),Ke.createElement("div",Wd({},e,{ref:mEe([n,t])}))});function WEe({image:e,alt:t,ref:n,styleClass:r}){const[i,o]=S.useState(0),[a,s]=S.useState(!1),l=()=>{o(i===-3?0:i-1)},u=()=>{o(i===3?0:i+1)},d=()=>{s(!a)};return g.jsx(FEe,{centerOnInit:!0,minScale:.1,initialPositionX:50,initialPositionY:50,children:({zoomIn:h,zoomOut:m,resetTransform:y,centerView:b})=>g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"lightbox-image-options",children:[g.jsx(Ye,{icon:g.jsx(H_e,{}),"aria-label":"Zoom In",tooltip:"Zoom In",onClick:()=>h(),fontSize:20}),g.jsx(Ye,{icon:g.jsx(W_e,{}),"aria-label":"Zoom Out",tooltip:"Zoom Out",onClick:()=>m(),fontSize:20}),g.jsx(Ye,{icon:g.jsx(B_e,{}),"aria-label":"Rotate Left",tooltip:"Rotate Left",onClick:l,fontSize:20}),g.jsx(Ye,{icon:g.jsx(z_e,{}),"aria-label":"Rotate Right",tooltip:"Rotate Right",onClick:u,fontSize:20}),g.jsx(Ye,{icon:g.jsx(a7e,{}),"aria-label":"Flip Image",tooltip:"Flip Image",onClick:d,fontSize:20}),g.jsx(Ye,{icon:g.jsx(f4,{}),"aria-label":"Reset",tooltip:"Reset",onClick:()=>{y(),o(0),s(!1)},fontSize:20})]}),g.jsx(HEe,{wrapperStyle:{width:"100%",height:"100%"},children:g.jsx("img",{style:{transform:`rotate(${i*90}deg) scaleX(${a?-1:1})`,width:"100%"},src:e,alt:t,ref:n,className:r||"",onLoad:()=>b(1,0,"easeOut")})})]})})}function UEe(){const e=Te(),t=le(m=>m.lightbox.isLightboxOpen),{viewerImageToDisplay:n,shouldShowImageDetails:r,isOnFirstImage:i,isOnLastImage:o}=le(cG),[a,s]=S.useState(!1),l=()=>{s(!0)},u=()=>{s(!1)},d=()=>{e(vE())},h=()=>{e(mE())};return Je("Esc",()=>{t&&e(Om(!1))},[t]),g.jsxs("div",{className:"lightbox-container",children:[g.jsx(Ye,{icon:g.jsx(F_e,{}),"aria-label":"Exit Viewer",className:"lightbox-close-btn",onClick:()=>{e(Om(!1))},fontSize:20}),g.jsxs("div",{className:"lightbox-display-container",children:[g.jsxs("div",{className:"lightbox-preview-wrapper",children:[g.jsx(lG,{}),!r&&g.jsxs("div",{className:"current-image-next-prev-buttons",children:[g.jsx("div",{className:"next-prev-button-trigger-area prev-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!i&&g.jsx(ls,{"aria-label":"Previous image",icon:g.jsx(ZV,{className:"next-prev-button"}),variant:"unstyled",onClick:d})}),g.jsx("div",{className:"next-prev-button-trigger-area next-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!o&&g.jsx(ls,{"aria-label":"Next image",icon:g.jsx(QV,{className:"next-prev-button"}),variant:"unstyled",onClick:h})})]}),n&&g.jsxs(g.Fragment,{children:[g.jsx(WEe,{image:n.url,styleClass:"lightbox-image"}),r&&g.jsx(HE,{image:n})]})]}),g.jsx(YG,{})]})]})}function VEe(e){const{menuType:t="icon",iconTooltip:n,buttonText:r,menuItems:i,menuProps:o,menuButtonProps:a,menuListProps:s,menuItemProps:l}=e,u=()=>{const d=[];return i.forEach((h,m)=>{d.push(g.jsx(_H,{onClick:h.onClick,fontSize:"0.9rem",color:"var(--text-color-secondary)",backgroundColor:"var(--background-color-secondary)",_focus:{color:"var(--text-color)",backgroundColor:"var(--border-color)"},...l,children:h.item},m))}),d};return g.jsx(SH,{...o,children:({isOpen:d})=>g.jsxs(g.Fragment,{children:[g.jsx(EH,{as:t==="icon"?Ye:On,tooltip:n,icon:d?g.jsx(u7e,{}):g.jsx(l7e,{}),padding:t==="regular"?"0 0.5rem":0,backgroundColor:"var(--btn-base-color)",_hover:{backgroundColor:"var(--btn-base-color-hover)"},minWidth:"1rem",minHeight:"1rem",fontSize:"1.5rem",...a,children:t==="regular"&&r}),g.jsx(kH,{zIndex:15,padding:0,borderRadius:"0.5rem",backgroundColor:"var(--background-color-secondary)",color:"var(--text-color-secondary)",borderColor:"var(--border-color)",...s,children:u()})]})})}const GEe=lt(hr,e=>({isProcessing:e.isProcessing,isConnected:e.isConnected,isCancelable:e.isCancelable,currentIteration:e.currentIteration,totalIterations:e.totalIterations,cancelType:e.cancelOptions.cancelType,cancelAfter:e.cancelOptions.cancelAfter}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function JE(e){const t=Te(),{btnGroupWidth:n="auto",...r}=e,{isProcessing:i,isConnected:o,isCancelable:a,currentIteration:s,totalIterations:l,cancelType:u,cancelAfter:d}=le(GEe),h=S.useCallback(()=>{t(d_e()),t(BC(null))},[t]),{t:m}=De(),y=d!==null;Je("shift+x",()=>{(o||i)&&a&&h()},[o,i,a]),S.useEffect(()=>{d!==null&&dt(VR("immediate"))},{item:m("parameters.cancel.schedule"),onClick:()=>t(VR("scheduled"))}];return g.jsxs(Gi,{isAttached:!0,variant:"link",minHeight:"2.5rem",width:n,children:[u==="immediate"?g.jsx(Ye,{icon:g.jsx(c7e,{}),tooltip:m("parameters.cancel.immediate"),"aria-label":m("parameters.cancel.immediate"),isDisabled:!o||!i||!a,onClick:h,className:"cancel-btn",...r}):g.jsx(Ye,{icon:y?g.jsx(a3,{color:"var(--text-color)"}):g.jsx(n7e,{}),tooltip:m(y?"parameters.cancel.isScheduled":"parameters.cancel.schedule"),"aria-label":m(y?"parameters.cancel.isScheduled":"parameters.cancel.schedule"),isDisabled:!o||!i||!a||s===l,onClick:()=>{t(BC(y?null:s))},className:"cancel-btn",...r}),g.jsx(VEe,{menuItems:b,iconTooltip:m("parameters.cancel.setType"),menuButtonProps:{backgroundColor:"var(--destructive-color)",color:"var(--text-color)",minWidth:"1.5rem",minHeight:"1.5rem",_hover:{backgroundColor:"var(--destructive-color-hover)"}}})]})}const eP=e=>e.generation;lt(eP,({shouldRandomizeSeed:e,shouldGenerateVariations:t})=>e||t,{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});const uq=lt([eP,hr,sG,Br],(e,t,n,r)=>{const{prompt:i,shouldGenerateVariations:o,seedWeights:a,initialImage:s,seed:l}=e,{isProcessing:u,isConnected:d}=t;let h=!0;const m=[];return(!i||Boolean(i.match(/^[\s\r\n]+$/)))&&(h=!1,m.push("Missing prompt")),r==="img2img"&&!s&&(h=!1,m.push("No initial image selected")),u&&(h=!1,m.push("System Busy")),d||(h=!1,m.push("System Disconnected")),o&&(!(yE(a)||a==="")||l===-1)&&(h=!1,m.push("Seed-Weights badly formatted.")),{isReady:h,reasonsWhyNotReady:m}},{memoizeOptions:{equalityCheck:Pe.isEqual,resultEqualityCheck:Pe.isEqual}});function tP(e){const{iconButton:t=!1,...n}=e,r=Te(),{isReady:i}=le(uq),o=le(Br),a=()=>{r(Wk(o))},{t:s}=De();return Je(["ctrl+enter","meta+enter"],()=>{r(Wk(o))},{enabled:()=>i,preventDefault:!0,enableOnFormTags:["input","textarea","select"]},[i,o]),g.jsx("div",{style:{flexGrow:4},children:t?g.jsx(Ye,{"aria-label":s("parameters.invoke"),type:"submit",icon:g.jsx(Lke,{}),isDisabled:!i,onClick:a,className:"invoke-btn",tooltip:s("parameters.invoke"),tooltipProps:{placement:"bottom"},...n}):g.jsx(On,{"aria-label":s("parameters.invoke"),type:"submit",isDisabled:!i,onClick:a,className:"invoke-btn",...n,children:"Invoke"})})}const nP=lt([pp,fp,Br],(e,t,n)=>{const{shouldPinParametersPanel:r,shouldShowParametersPanel:i,shouldHoldParametersPanelOpen:o,shouldUseCanvasBetaLayout:a}=t,{shouldShowGallery:s,shouldPinGallery:l,shouldHoldGalleryOpen:u}=e,d=a&&n==="unifiedCanvas",h=!d&&!(i||o&&!r)&&["txt2img","img2img","unifiedCanvas"].includes(n),m=!(s||u&&!l)&&["txt2img","img2img","unifiedCanvas"].includes(n);return{shouldPinParametersPanel:r,shouldShowProcessButtons:!d&&(!r||!i),shouldShowParametersPanelButton:h,shouldShowParametersPanel:i,shouldShowGallery:s,shouldPinGallery:l,shouldShowGalleryButton:m}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),qEe=()=>{const e=Te(),{shouldShowParametersPanelButton:t,shouldShowProcessButtons:n,shouldPinParametersPanel:r}=le(nP),i=()=>{e(Fh(!0)),r&&setTimeout(()=>e(Li(!0)),400)};return t?g.jsxs("div",{className:"show-hide-button-options",children:[g.jsx(Ye,{tooltip:"Show Options Panel (O)",tooltipProps:{placement:"top"},"aria-label":"Show Options Panel",onClick:i,children:g.jsx(FE,{})}),n&&g.jsxs(g.Fragment,{children:[g.jsx(tP,{iconButton:!0}),g.jsx(JE,{})]})]}):null};function KEe(e){return ut({tag:"svg",attr:{viewBox:"0 0 16 16",fill:"currentColor"},child:[{tag:"path",attr:{d:"M14 1H3L2 2v11l1 1h11l1-1V2l-1-1zM8 13H3V2h5v11zm6 0H9V2h5v11z"}}]})(e)}const YEe=lt(pp,e=>({resultImages:e.categories.result.images,userImages:e.categories.user.images})),XEe=()=>{const{resultImages:e,userImages:t}=le(YEe);return n=>{const r=e.find(o=>o.uuid===n);if(r)return r;const i=t.find(o=>o.uuid===n);if(i)return i}},ZEe=lt([fp,d4,Br],(e,t,n)=>{const{shouldShowDualDisplay:r,shouldPinParametersPanel:i}=e,{isLightboxOpen:o}=t;return{shouldShowDualDisplay:r,shouldPinParametersPanel:i,isLightboxOpen:o,shouldShowDualDisplayButton:["inpainting"].includes(n),activeTabName:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),rP=e=>{const t=Te(),{optionsPanel:n,children:r,styleClass:i}=e,{activeTabName:o,shouldShowDualDisplay:a,isLightboxOpen:s,shouldShowDualDisplayButton:l}=le(ZEe),u=XEe(),d=()=>{t(N4e(!a)),t(Li(!0))},h=m=>{const y=m.dataTransfer.getData("invokeai/imageUuid"),b=u(y);b&&(o==="img2img"?t(y0(b)):o==="unifiedCanvas"&&t(i4(b)))};return g.jsx("div",{className:i?`workarea-wrapper ${i}`:"workarea-wrapper",children:g.jsxs("div",{className:"workarea-main",children:[n,g.jsxs("div",{className:"workarea-children-wrapper",onDrop:h,children:[r,l&&g.jsx(si,{label:"Toggle Split View",children:g.jsx("div",{className:"workarea-split-button","data-selected":a,onClick:d,children:g.jsx(KEe,{})})})]}),!s&&g.jsx(YG,{})]})})},QEe=e=>{const{styleClass:t}=e,n=S.useContext(AE),r=()=>{n&&n()};return g.jsx("div",{className:`image-uploader-button-outer ${t}`,onClick:r,children:g.jsxs("div",{className:"image-upload-button",children:[g.jsx(h4,{}),g.jsx(jh,{size:"lg",children:"Click or Drag and Drop"})]})})},JEe=lt([pp,fp,Br],(e,t,n)=>{const{currentImage:r,intermediateImage:i}=e,{shouldShowImageDetails:o}=t;return{activeTabName:n,shouldShowImageDetails:o,hasAnImageToDisplay:r||i}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),cq=()=>{const{hasAnImageToDisplay:e,activeTabName:t}=le(JEe);return g.jsx("div",{className:"current-image-area","data-tab-name":t,children:e?g.jsxs(g.Fragment,{children:[g.jsx(lG,{}),g.jsx(qke,{})]}):g.jsx("div",{className:"current-image-display-placeholder",children:g.jsx(s7e,{})})})},ePe=()=>{const e=S.useContext(AE);return g.jsx(Ye,{"aria-label":"Upload Image",tooltip:"Upload Image",icon:g.jsx(h4,{}),onClick:e||void 0})};function tPe(){const e=le(o=>o.generation.initialImage),{t}=De(),n=Te(),r=a2(),i=()=>{r({title:t("toast.parametersFailed"),description:t("toast.parametersFailedDesc"),status:"error",isClosable:!0}),n(oU())};return g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"init-image-preview-header",children:[g.jsx("h2",{children:t("parameters.initialImage")}),g.jsx(ePe,{})]}),e&&g.jsx("div",{className:"init-image-preview",children:g.jsx(jw,{fit:"contain",maxWidth:"100%",maxHeight:"100%",src:typeof e=="string"?e:e.url,onError:i})})]})}const nPe=()=>{const e=le(r=>r.generation.initialImage),{currentImage:t}=le(r=>r.gallery),n=e?g.jsx("div",{className:"image-to-image-area",children:g.jsx(tPe,{})}):g.jsx(QEe,{});return g.jsxs("div",{className:"workarea-split-view",children:[g.jsx("div",{className:"workarea-split-view-left",children:n}),t&&g.jsx("div",{className:"workarea-split-view-right",children:g.jsx(cq,{})})]})};var oo=(e=>(e[e.PROMPT=0]="PROMPT",e[e.GALLERY=1]="GALLERY",e[e.OTHER=2]="OTHER",e[e.SEED=3]="SEED",e[e.VARIATIONS=4]="VARIATIONS",e[e.UPSCALE=5]="UPSCALE",e[e.FACE_CORRECTION=6]="FACE_CORRECTION",e[e.IMAGE_TO_IMAGE=7]="IMAGE_TO_IMAGE",e[e.BOUNDING_BOX=8]="BOUNDING_BOX",e[e.SEAM_CORRECTION=9]="SEAM_CORRECTION",e[e.INFILL_AND_SCALING=10]="INFILL_AND_SCALING",e))(oo||{});const rPe=()=>{const{t:e}=De();return S.useMemo(()=>({[0]:{text:e("tooltip.feature.prompt"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[1]:{text:e("tooltip.feature.gallery"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[2]:{text:e("tooltip.feature.other"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[3]:{text:e("tooltip.feature.seed"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[4]:{text:e("tooltip.feature.variations"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[5]:{text:e("tooltip.feature.upscale"),href:"link/to/docs/feature1.html",guideImage:"asset/path.gif"},[6]:{text:e("tooltip.feature.faceCorrection"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[7]:{text:e("tooltip.feature.imageToImage"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[8]:{text:e("tooltip.feature.boundingBox"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[9]:{text:e("tooltip.feature.seamCorrection"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[10]:{text:e("tooltip.feature.infillAndScaling"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"}}),[e])},iPe=e=>rPe()[e],_a=e=>{const{label:t,isDisabled:n=!1,width:r="auto",formControlProps:i,formLabelProps:o,styleClass:a,...s}=e;return g.jsxs(sn,{isDisabled:n,width:r,className:`invokeai__switch-form-control ${a}`,display:"flex",columnGap:"1rem",alignItems:"center",justifyContent:"space-between",...i,children:[g.jsx(Sn,{className:"invokeai__switch-form-label",whiteSpace:"nowrap",marginRight:0,marginTop:.5,marginBottom:.5,fontSize:"sm",fontWeight:"bold",width:"auto",...o,children:t}),g.jsx(K8,{className:"invokeai__switch-root",...s})]})};function dq(){const e=le(i=>i.system.isGFPGANAvailable),t=le(i=>i.postprocessing.shouldRunFacetool),n=Te(),r=i=>n(V3e(i.target.checked));return g.jsx(_a,{isDisabled:!e,isChecked:t,onChange:r})}const fq=()=>{const e=Te(),t=le(i=>i.generation.seamless),n=i=>e(fU(i.target.checked)),{t:r}=De();return g.jsx(ke,{gap:2,direction:"column",children:g.jsx(_a,{label:r("parameters.seamlessTiling"),fontSize:"md",isChecked:t,onChange:n})})},oPe=()=>g.jsx(ke,{gap:2,direction:"column",children:g.jsx(fq,{})});function iP(){const e=le(o=>o.generation.horizontalSymmetryTimePercentage),t=le(o=>o.generation.verticalSymmetryTimePercentage),n=le(o=>o.generation.steps),r=Te(),{t:i}=De();return g.jsxs(g.Fragment,{children:[g.jsx(Dn,{label:i("parameters.hSymmetryStep"),value:e,onChange:o=>r(oR(o)),min:0,max:n,step:1,withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>r(oR(0)),sliderMarkRightOffset:-6}),g.jsx(Dn,{label:i("parameters.vSymmetryStep"),value:t,onChange:o=>r(aR(o)),min:0,max:n,step:1,withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>r(aR(0)),sliderMarkRightOffset:-6})]})}function oP(){const e=le(n=>n.generation.shouldUseSymmetry),t=Te();return g.jsx(_a,{isChecked:e,onChange:n=>t(B3e(n.target.checked))})}function aPe(){const e=Te(),t=le(r=>r.generation.perlin),{t:n}=De();return g.jsx(Dn,{label:n("parameters.perlinNoise"),min:0,max:1,step:.05,onChange:r=>e(vk(r)),handleReset:()=>e(vk(0)),value:t,withInput:!0,withReset:!0,withSliderMarks:!0})}function sPe(){const e=Te(),{t}=De(),n=le(i=>i.generation.shouldRandomizeSeed),r=i=>e(F3e(i.target.checked));return g.jsx(_a,{label:t("parameters.randomizeSeed"),isChecked:n,onChange:r})}const hD=/^-?(0\.)?\.?$/,lc=e=>{const{label:t,labelFontSize:n="sm",styleClass:r,isDisabled:i=!1,showStepper:o=!0,width:a,textAlign:s,isInvalid:l,value:u,onChange:d,min:h,max:m,isInteger:y=!0,formControlProps:b,formLabelProps:w,numberInputFieldProps:E,numberInputStepperProps:_,tooltipProps:k,...T}=e,[L,O]=S.useState(String(u));S.useEffect(()=>{!L.match(hD)&&u!==Number(L)&&O(String(u))},[u,L]);const D=N=>{O(N),N.match(hD)||d(y?Math.floor(Number(N)):Number(N))},I=N=>{const W=Pe.clamp(y?Math.floor(Number(N.target.value)):Number(N.target.value),h,m);O(String(W)),d(W)};return g.jsx(si,{...k,children:g.jsxs(sn,{isDisabled:i,isInvalid:l,className:r?`invokeai__number-input-form-control ${r}`:"invokeai__number-input-form-control",...b,children:[t&&g.jsx(Sn,{className:"invokeai__number-input-form-label",style:{display:t?"block":"none"},fontSize:n,fontWeight:"bold",marginRight:0,marginBottom:0,whiteSpace:"nowrap",...w,children:t}),g.jsxs(B8,{className:"invokeai__number-input-root",value:L,min:h,max:m,keepWithinRange:!0,clampValueOnBlur:!1,onChange:D,onBlur:I,width:a,...T,children:[g.jsx(z8,{className:"invokeai__number-input-field",textAlign:s,...E}),o&&g.jsxs("div",{className:"invokeai__number-input-stepper",children:[g.jsx(W8,{..._,className:"invokeai__number-input-stepper-button"}),g.jsx(H8,{..._,className:"invokeai__number-input-stepper-button"})]})]})]})})};function lPe(){const e=le(a=>a.generation.seed),t=le(a=>a.generation.shouldRandomizeSeed),n=le(a=>a.generation.shouldGenerateVariations),{t:r}=De(),i=Te(),o=a=>i(p2(a));return g.jsx(lc,{label:r("parameters.seed"),step:1,precision:0,flexGrow:1,min:CE,max:_E,isDisabled:t,isInvalid:e<0&&n,onChange:o,value:e,width:"auto"})}function uPe(){const e=Te(),t=le(i=>i.generation.shouldRandomizeSeed),{t:n}=De(),r=()=>e(p2(NV(CE,_E)));return g.jsx(ss,{size:"sm",isDisabled:t,onClick:r,padding:"0 1.5rem",children:g.jsx("p",{children:n("parameters.shuffle")})})}function cPe(){const e=Te(),t=le(r=>r.generation.threshold),{t:n}=De();return g.jsx(Dn,{label:n("parameters.noiseThreshold"),min:0,max:20,step:.1,onChange:r=>e(bk(r)),handleReset:()=>e(bk(0)),value:t,withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-4})}const aP=()=>g.jsxs(ke,{gap:2,direction:"column",children:[g.jsx(sPe,{}),g.jsxs(ke,{gap:2,children:[g.jsx(lPe,{}),g.jsx(uPe,{})]}),g.jsx(ke,{gap:2,children:g.jsx(cPe,{})}),g.jsx(ke,{gap:2,children:g.jsx(aPe,{})})]});function hq(){const e=le(i=>i.system.isESRGANAvailable),t=le(i=>i.postprocessing.shouldRunESRGAN),n=Te(),r=i=>n(U3e(i.target.checked));return g.jsx(_a,{isDisabled:!e,isChecked:t,onChange:r})}function sP(){const e=le(r=>r.generation.shouldGenerateVariations),t=Te(),n=r=>t($3e(r.target.checked));return g.jsx(_a,{isChecked:e,width:"auto",onChange:n})}function qn(e){const{label:t="",styleClass:n,isDisabled:r=!1,fontSize:i="sm",width:o,size:a="sm",isInvalid:s,...l}=e;return g.jsxs(sn,{className:`input ${n}`,isInvalid:s,isDisabled:r,children:[t!==""&&g.jsx(Sn,{fontSize:i,fontWeight:"bold",alignItems:"center",whiteSpace:"nowrap",marginBottom:0,marginRight:0,className:"input-label",children:t}),g.jsx(E8,{...l,className:"input-entry",size:a,width:o})]})}function dPe(){const e=le(o=>o.generation.seedWeights),t=le(o=>o.generation.shouldGenerateVariations),{t:n}=De(),r=Te(),i=o=>r(hU(o.target.value));return g.jsx(qn,{label:n("parameters.seedWeights"),value:e,isInvalid:t&&!(yE(e)||e===""),isDisabled:!t,onChange:i})}function fPe(){const e=le(i=>i.generation.variationAmount),t=le(i=>i.generation.shouldGenerateVariations),{t:n}=De(),r=Te();return g.jsx(Dn,{label:n("parameters.variationAmount"),value:e,step:.01,min:0,max:1,isSliderDisabled:!t,isInputDisabled:!t,isResetDisabled:!t,onChange:i=>r(iR(i)),handleReset:()=>r(iR(.1)),withInput:!0,withReset:!0,withSliderMarks:!0})}const lP=()=>g.jsxs(ke,{gap:2,direction:"column",children:[g.jsx(fPe,{}),g.jsx(dPe,{})]}),hPe=lt(hr,e=>e.shouldDisplayGuides),pPe=({children:e,feature:t})=>{const n=le(hPe),{text:r}=iPe(t);return n?g.jsxs(V8,{trigger:"hover",children:[g.jsx(U8,{children:g.jsx(ao,{children:e})}),g.jsxs(q8,{className:"guide-popover-content",maxWidth:"400px",onClick:i=>i.preventDefault(),cursor:"initial",children:[g.jsx(G8,{className:"guide-popover-arrow"}),g.jsx("div",{className:"guide-popover-guide-content",children:r})]})]}):null},gPe=Ze(({feature:e,icon:t=i7e},n)=>g.jsx(pPe,{feature:e,children:g.jsx(ao,{ref:n,children:g.jsx(ja,{marginBottom:"-.15rem",as:t})})}));function mPe(e){const{header:t,feature:n,content:r,additionalHeaderComponents:i}=e;return g.jsxs(rm,{className:"advanced-parameters-item",children:[g.jsx(tm,{className:"advanced-parameters-header",children:g.jsxs(ke,{width:"100%",gap:"0.5rem",align:"center",children:[g.jsx(ao,{flexGrow:1,textAlign:"left",children:t}),i,n&&g.jsx(gPe,{feature:n}),g.jsx(nm,{})]})}),g.jsx(om,{className:"advanced-parameters-panel",children:r})]})}const n0=e=>{const{accordionInfo:t}=e,n=le(a=>a.system.openAccordions),r=Te(),i=a=>r(v4e(a)),o=()=>{const a=[];return t&&Object.keys(t).forEach(s=>{const{header:l,feature:u,content:d,additionalHeaderComponents:h}=t[s];a.push(g.jsx(mPe,{header:l,feature:u,content:d,additionalHeaderComponents:h},s))}),a};return g.jsx(c8,{defaultIndex:n,allowMultiple:!0,reduceMotion:!0,onChange:i,className:"advanced-parameters",children:o()})};function pD(){const e=Te(),t=le(o=>o.generation.cfgScale),n=le(o=>o.ui.shouldUseSliders),{t:r}=De(),i=o=>e(gk(o));return n?g.jsx(Dn,{label:r("parameters.cfgScale"),step:.5,min:1.01,max:30,onChange:i,handleReset:()=>e(gk(7.5)),value:t,sliderMarkRightOffset:-5,sliderNumberInputProps:{max:200},withInput:!0,withReset:!0,withSliderMarks:!0}):g.jsx(lc,{label:r("parameters.cfgScale"),step:.5,min:1.01,max:200,onChange:i,value:t,width:"auto",styleClass:"main-settings-block",textAlign:"center",isInteger:!1})}function gD(){const e=le(o=>o.generation.height),t=le(o=>o.ui.shouldUseSliders),n=le(Br),r=Te(),{t:i}=De();return t?g.jsx(Dn,{isSliderDisabled:n==="unifiedCanvas",isInputDisabled:n==="unifiedCanvas",isResetDisabled:n==="unifiedCanvas",label:i("parameters.height"),value:e,min:64,step:64,max:2048,onChange:o=>r(uS(o)),handleReset:()=>r(uS(512)),withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-8,inputWidth:"6.2rem",sliderNumberInputProps:{max:15360}}):g.jsx(Jo,{isDisabled:n==="unifiedCanvas",label:i("parameters.height"),value:e,flexGrow:1,onChange:o=>r(uS(Number(o.target.value))),validValues:O5e,styleClass:"main-settings-block",width:"5.5rem"})}function mD(){const e=le(o=>o.generation.iterations),t=le(o=>o.ui.shouldUseSliders),n=Te(),{t:r}=De(),i=o=>n(QO(o));return t?g.jsx(Dn,{label:r("parameters.images"),step:1,min:1,max:16,onChange:i,handleReset:()=>n(QO(1)),value:e,withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-5,sliderNumberInputProps:{max:9999}}):g.jsx(lc,{label:r("parameters.images"),step:1,min:1,max:9999,onChange:i,value:e,width:"auto",labelFontSize:.5,styleClass:"main-settings-block",textAlign:"center"})}function vD(){const e=le(o=>o.generation.sampler),t=le(VV),n=Te(),{t:r}=De(),i=o=>n(dU(o.target.value));return g.jsx(Jo,{label:r("parameters.sampler"),value:e,onChange:i,validValues:t.format==="diffusers"?L5e:M5e,styleClass:"main-settings-block",minWidth:"9rem"})}function yD(){const e=Te(),t=le(o=>o.generation.steps),n=le(o=>o.ui.shouldUseSliders),{t:r}=De(),i=o=>e(yk(o));return n?g.jsx(Dn,{label:r("parameters.steps"),min:1,step:1,onChange:i,handleReset:()=>e(yk(20)),value:t,withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-6,sliderNumberInputProps:{max:9999}}):g.jsx(lc,{label:r("parameters.steps"),min:1,max:9999,step:1,onChange:i,value:t,width:"auto",styleClass:"main-settings-block",textAlign:"center"})}function bD(){const e=le(o=>o.generation.width),t=le(o=>o.ui.shouldUseSliders),n=le(Br),{t:r}=De(),i=Te();return t?g.jsx(Dn,{isSliderDisabled:n==="unifiedCanvas",isInputDisabled:n==="unifiedCanvas",isResetDisabled:n==="unifiedCanvas",label:r("parameters.width"),value:e,min:64,step:64,max:2048,onChange:o=>i(cS(o)),handleReset:()=>i(cS(512)),withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-8,inputWidth:"6.2rem",inputReadOnly:!0,sliderNumberInputProps:{max:15360}}):g.jsx(Jo,{isDisabled:n==="unifiedCanvas",label:r("parameters.width"),value:e,flexGrow:1,onChange:o=>i(cS(Number(o.target.value))),validValues:A5e,styleClass:"main-settings-block",width:"5.5rem"})}function uP(){const{t:e}=De(),t=le(r=>r.ui.shouldUseSliders),n={main:{header:`${e("parameters.general")}`,feature:void 0,content:t?g.jsxs(ke,{flexDir:"column",rowGap:2,children:[g.jsx(mD,{}),g.jsx(yD,{}),g.jsx(pD,{}),g.jsx(bD,{}),g.jsx(gD,{}),g.jsx(vD,{})]}):g.jsxs(ke,{flexDirection:"column",rowGap:2,children:[g.jsxs(ke,{gap:2,children:[g.jsx(mD,{}),g.jsx(yD,{}),g.jsx(pD,{})]}),g.jsxs(ke,{children:[g.jsx(bD,{}),g.jsx(gD,{}),g.jsx(vD,{})]})]})}};return g.jsx(n0,{accordionInfo:n})}const vPe=lt(DE,({shouldLoopback:e})=>e),yPe=()=>{const e=Te(),t=le(vPe),{t:n}=De();return g.jsx(Ye,{"aria-label":n("parameters.toggleLoopback"),tooltip:n("parameters.toggleLoopback"),styleClass:"loopback-btn",asCheckbox:!0,isChecked:t,icon:g.jsx(Oke,{}),onClick:()=>{e(W3e(!t))}})},cP=()=>{const e=le(Br);return g.jsxs("div",{className:"process-buttons",children:[g.jsx(tP,{}),e==="img2img"&&g.jsx(yPe,{}),g.jsx(JE,{})]})},dP=()=>{const e=le(r=>r.generation.negativePrompt),t=Te(),{t:n}=De();return g.jsx(sn,{children:g.jsx(Z8,{id:"negativePrompt",name:"negativePrompt",value:e,onChange:r=>t(cU(r.target.value)),background:"var(--prompt-bg-color)",placeholder:n("parameters.negativePrompts"),_placeholder:{fontSize:"0.8rem"},borderColor:"var(--border-color)",_hover:{borderColor:"var(--border-color-light)"},_focusVisible:{borderColor:"var(--border-color-invalid)",boxShadow:"0 0 10px var(--box-shadow-color-invalid)"},fontSize:"0.9rem",color:"var(--text-color-secondary)"})})},bPe=lt([e=>e.generation,Br],(e,t)=>({prompt:e.prompt,activeTabName:t}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),fP=()=>{const e=Te(),{prompt:t,activeTabName:n}=le(bPe),{isReady:r}=le(uq),i=S.useRef(null),{t:o}=De(),a=l=>{e(uU(l.target.value))};Je("alt+a",()=>{var l;(l=i.current)==null||l.focus()},[]);const s=l=>{l.key==="Enter"&&l.shiftKey===!1&&r&&(l.preventDefault(),e(Wk(n)))};return g.jsx("div",{className:"prompt-bar",children:g.jsx(sn,{isInvalid:t.length===0||Boolean(t.match(/^[\s\r\n]+$/)),children:g.jsx(Z8,{id:"prompt",name:"prompt",placeholder:o("parameters.promptPlaceholder"),size:"lg",value:t,onChange:a,onKeyDown:s,resize:"vertical",height:30,ref:i,_placeholder:{color:"var(--text-color-secondary)"}})})})},pq=""+new URL("logo-13003d72.png",import.meta.url).href,xPe=lt(fp,e=>{const{shouldShowParametersPanel:t,shouldHoldParametersPanelOpen:n,shouldPinParametersPanel:r,parametersPanelScrollPosition:i}=e;return{shouldShowParametersPanel:t,shouldHoldParametersPanelOpen:n,shouldPinParametersPanel:r,parametersPanelScrollPosition:i}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),hP=e=>{const t=Te(),{shouldShowParametersPanel:n,shouldHoldParametersPanelOpen:r,shouldPinParametersPanel:i}=le(xPe),o=S.useRef(null),a=S.useRef(null),s=S.useRef(null),{children:l}=e;Je("o",()=>{t(Fh(!n)),i&&setTimeout(()=>t(Li(!0)),400)},[n,i]),Je("esc",()=>{t(Fh(!1))},{enabled:()=>!i,preventDefault:!0},[i]),Je("shift+o",()=>{m(),t(Li(!0))},[i]);const u=S.useCallback(()=>{i||(t(I4e(a.current?a.current.scrollTop:0)),t(Fh(!1)),t(D4e(!1)))},[t,i]),d=()=>{s.current=window.setTimeout(()=>u(),500)},h=()=>{s.current&&window.clearTimeout(s.current)},m=()=>{t(j4e(!i)),t(Li(!0))};return S.useEffect(()=>{function y(b){o.current&&!o.current.contains(b.target)&&u()}return document.addEventListener("mousedown",y),()=>{document.removeEventListener("mousedown",y)}},[u]),g.jsx(vG,{nodeRef:o,in:n||r&&!i,unmountOnExit:!0,timeout:200,classNames:"parameters-panel-wrapper",children:g.jsx("div",{className:"parameters-panel-wrapper","data-pinned":i,tabIndex:1,ref:o,onMouseEnter:i?void 0:h,onMouseOver:i?void 0:h,style:{borderRight:i?"":"0.3rem solid var(--tab-list-text-inactive)"},children:g.jsx("div",{className:"parameters-panel-margin",children:g.jsxs("div",{className:"parameters-panel",ref:a,onMouseLeave:y=>{y.target!==a.current?h():!i&&d()},children:[g.jsx(si,{label:"Pin Options Panel",children:g.jsx("div",{className:"parameters-panel-pin-button","data-selected":i,onClick:m,children:i?g.jsx(fG,{}):g.jsx(hG,{})})}),!i&&g.jsxs("div",{className:"invoke-ai-logo-wrapper",children:[g.jsx("img",{src:pq,alt:"invoke-ai-logo"}),g.jsxs("h1",{children:["invoke ",g.jsx("strong",{children:"ai"})]})]}),l]})})})})};function SPe(){const e=Te(),t=le(i=>i.generation.shouldFitToWidthHeight),n=i=>e(pU(i.target.checked)),{t:r}=De();return g.jsx(_a,{label:r("parameters.imageFit"),isChecked:t,onChange:n})}function gq(e){const{t}=De(),{label:n=`${t("parameters.strength")}`,styleClass:r}=e,i=le(l=>l.generation.img2imgStrength),o=Te(),a=l=>o(mk(l)),s=()=>{o(mk(.75))};return g.jsx(Dn,{label:n,step:.01,min:.01,max:1,onChange:a,value:i,isInteger:!1,styleClass:r,withInput:!0,withSliderMarks:!0,inputWidth:"5.5rem",withReset:!0,handleReset:s})}function wPe(){const{t:e}=De(),t={imageToImage:{header:`${e("parameters.imageToImage")}`,feature:void 0,content:g.jsxs(ke,{gap:2,flexDir:"column",children:[g.jsx(gq,{label:e("parameters.img2imgStrength"),styleClass:"main-settings-block image-to-image-strength-main-option"}),g.jsx(SPe,{})]})}};return g.jsx(n0,{accordionInfo:t})}function CPe(){const{t:e}=De(),t={seed:{header:`${e("parameters.seed")}`,feature:oo.SEED,content:g.jsx(aP,{})},variations:{header:`${e("parameters.variations")}`,feature:oo.VARIATIONS,content:g.jsx(lP,{}),additionalHeaderComponents:g.jsx(sP,{})},face_restore:{header:`${e("parameters.faceRestoration")}`,feature:oo.FACE_CORRECTION,content:g.jsx(RE,{}),additionalHeaderComponents:g.jsx(dq,{})},upscale:{header:`${e("parameters.upscaling")}`,feature:oo.UPSCALE,content:g.jsx(IE,{}),additionalHeaderComponents:g.jsx(hq,{})},symmetry:{header:`${e("parameters.symmetry")}`,content:g.jsx(iP,{}),additionalHeaderComponents:g.jsx(oP,{})},other:{header:`${e("parameters.otherOptions")}`,feature:oo.OTHER,content:g.jsx(oPe,{})}};return g.jsxs(hP,{children:[g.jsxs(ke,{flexDir:"column",rowGap:"0.5rem",children:[g.jsx(fP,{}),g.jsx(dP,{})]}),g.jsx(cP,{}),g.jsx(uP,{}),g.jsx(wPe,{}),g.jsx(n0,{accordionInfo:t})]})}function _Pe(){return g.jsx(rP,{optionsPanel:g.jsx(CPe,{}),children:g.jsx(nPe,{})})}const kPe=()=>g.jsx("div",{className:"workarea-single-view",children:g.jsx("div",{className:"text-to-image-area",children:g.jsx(cq,{})})});function EPe(e){const{active:t=!0,width:n="1rem",height:r="1.3rem",side:i="right"}=e;return g.jsxs(g.Fragment,{children:[i==="right"&&g.jsx(ao,{width:n,height:r,margin:"-0.5rem 0.5rem 0 0.5rem",borderLeft:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)",borderBottom:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)"}),i==="left"&&g.jsx(ao,{width:n,height:r,margin:"-0.5rem 0.5rem 0 0.5rem",borderRight:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)",borderBottom:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)"})]})}const PPe=lt([DE],({hiresFix:e,hiresStrength:t})=>({hiresFix:e,hiresStrength:t}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),TPe=()=>{const{hiresFix:e,hiresStrength:t}=le(PPe),n=Te(),{t:r}=De(),i=a=>{n(sR(a))},o=()=>{n(sR(.75))};return g.jsxs(ke,{children:[g.jsx(EPe,{active:e}),g.jsx(Dn,{label:r("parameters.hiresStrength"),step:.01,min:.01,max:.99,onChange:i,value:t,isInteger:!1,withInput:!0,withSliderMarks:!0,inputWidth:"5.5rem",withReset:!0,handleReset:o,isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e,sliderMarkRightOffset:-7})]})},MPe=()=>{const e=Te(),t=le(i=>i.postprocessing.hiresFix),{t:n}=De(),r=i=>e(vU(i.target.checked));return g.jsxs(ke,{rowGap:"0.8rem",direction:"column",children:[g.jsx(_a,{label:n("parameters.hiresOptim"),fontSize:"md",isChecked:t,onChange:r}),g.jsx(TPe,{})]})},LPe=()=>g.jsxs(ke,{gap:2,direction:"column",children:[g.jsx(fq,{}),g.jsx(MPe,{})]});function APe(){const{t:e}=De(),t={seed:{header:`${e("parameters.seed")}`,feature:oo.SEED,content:g.jsx(aP,{})},variations:{header:`${e("parameters.variations")}`,feature:oo.VARIATIONS,content:g.jsx(lP,{}),additionalHeaderComponents:g.jsx(sP,{})},face_restore:{header:`${e("parameters.faceRestoration")}`,feature:oo.FACE_CORRECTION,content:g.jsx(RE,{}),additionalHeaderComponents:g.jsx(dq,{})},upscale:{header:`${e("parameters.upscaling")}`,feature:oo.UPSCALE,content:g.jsx(IE,{}),additionalHeaderComponents:g.jsx(hq,{})},symmetry:{header:`${e("parameters.symmetry")}`,content:g.jsx(iP,{}),additionalHeaderComponents:g.jsx(oP,{})},other:{header:`${e("parameters.otherOptions")}`,feature:oo.OTHER,content:g.jsx(LPe,{})}};return g.jsxs(hP,{children:[g.jsxs(ke,{flexDir:"column",rowGap:"0.5rem",children:[g.jsx(fP,{}),g.jsx(dP,{})]}),g.jsx(cP,{}),g.jsx(uP,{}),g.jsx(n0,{accordionInfo:t})]})}function OPe(){return g.jsx(rP,{optionsPanel:g.jsx(APe,{}),children:g.jsx(kPe,{})})}var o7={},RPe={get exports(){return o7},set exports(e){o7=e}};/** +`,fD={wrapper:"transform-component-module_wrapper__7HFJe",content:"transform-component-module_content__uCDPE"};zEe(HEe);var WEe=function(e){var t=e.children,n=e.wrapperClass,r=n===void 0?"":n,i=e.contentClass,o=i===void 0?"":i,a=e.wrapperStyle,s=e.contentStyle,l=e.wrapperProps,u=l===void 0?{}:l,d=e.contentProps,p=d===void 0?{}:d,m=S.useContext(QE).init,y=S.useRef(null),b=S.useRef(null);return S.useEffect(function(){var w=y.current,E=b.current;w!==null&&E!==null&&m&&m(w,E)},[]),Ke.createElement("div",Wd({},u,{ref:y,className:"react-transform-wrapper ".concat(fD.wrapper," ").concat(r),style:a}),Ke.createElement("div",Wd({},p,{ref:b,className:"react-transform-component ".concat(fD.content," ").concat(o),style:s}),t))};Ke.forwardRef(function(e,t){var n=S.useRef(null),r=S.useContext(QE);return S.useEffect(function(){return r.onChange(function(i){if(n.current){var o=0,a=0;n.current.style.transform=r.handleTransformStyles(o,a,1/i.state.scale)}})},[r]),Ke.createElement("div",Wd({},e,{ref:vEe([n,t])}))});function UEe({image:e,alt:t,ref:n,styleClass:r}){const[i,o]=S.useState(0),[a,s]=S.useState(!1),l=()=>{o(i===-3?0:i-1)},u=()=>{o(i===3?0:i+1)},d=()=>{s(!a)};return g.jsx(BEe,{centerOnInit:!0,minScale:.1,initialPositionX:50,initialPositionY:50,children:({zoomIn:p,zoomOut:m,resetTransform:y,centerView:b})=>g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"lightbox-image-options",children:[g.jsx(Ye,{icon:g.jsx(W_e,{}),"aria-label":"Zoom In",tooltip:"Zoom In",onClick:()=>p(),fontSize:20}),g.jsx(Ye,{icon:g.jsx(U_e,{}),"aria-label":"Zoom Out",tooltip:"Zoom Out",onClick:()=>m(),fontSize:20}),g.jsx(Ye,{icon:g.jsx(z_e,{}),"aria-label":"Rotate Left",tooltip:"Rotate Left",onClick:l,fontSize:20}),g.jsx(Ye,{icon:g.jsx(H_e,{}),"aria-label":"Rotate Right",tooltip:"Rotate Right",onClick:u,fontSize:20}),g.jsx(Ye,{icon:g.jsx(s7e,{}),"aria-label":"Flip Image",tooltip:"Flip Image",onClick:d,fontSize:20}),g.jsx(Ye,{icon:g.jsx(f4,{}),"aria-label":"Reset",tooltip:"Reset",onClick:()=>{y(),o(0),s(!1)},fontSize:20})]}),g.jsx(WEe,{wrapperStyle:{width:"100%",height:"100%"},children:g.jsx("img",{style:{transform:`rotate(${i*90}deg) scaleX(${a?-1:1})`,width:"100%"},src:e,alt:t,ref:n,className:r||"",onLoad:()=>b(1,0,"easeOut")})})]})})}function VEe(){const e=Te(),t=le(m=>m.lightbox.isLightboxOpen),{viewerImageToDisplay:n,shouldShowImageDetails:r,isOnFirstImage:i,isOnLastImage:o}=le(dG),[a,s]=S.useState(!1),l=()=>{s(!0)},u=()=>{s(!1)},d=()=>{e(vE())},p=()=>{e(mE())};return Qe("Esc",()=>{t&&e(Om(!1))},[t]),g.jsxs("div",{className:"lightbox-container",children:[g.jsx(Ye,{icon:g.jsx(B_e,{}),"aria-label":"Exit Viewer",className:"lightbox-close-btn",onClick:()=>{e(Om(!1))},fontSize:20}),g.jsxs("div",{className:"lightbox-display-container",children:[g.jsxs("div",{className:"lightbox-preview-wrapper",children:[g.jsx(uG,{}),!r&&g.jsxs("div",{className:"current-image-next-prev-buttons",children:[g.jsx("div",{className:"next-prev-button-trigger-area prev-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!i&&g.jsx(ls,{"aria-label":"Previous image",icon:g.jsx(QV,{className:"next-prev-button"}),variant:"unstyled",onClick:d})}),g.jsx("div",{className:"next-prev-button-trigger-area next-button-trigger-area",onMouseOver:l,onMouseOut:u,children:a&&!o&&g.jsx(ls,{"aria-label":"Next image",icon:g.jsx(JV,{className:"next-prev-button"}),variant:"unstyled",onClick:p})})]}),n&&g.jsxs(g.Fragment,{children:[g.jsx(UEe,{image:n.url,styleClass:"lightbox-image"}),r&&g.jsx(HE,{image:n})]})]}),g.jsx(XG,{})]})]})}function GEe(e){const{menuType:t="icon",iconTooltip:n,buttonText:r,menuItems:i,menuProps:o,menuButtonProps:a,menuListProps:s,menuItemProps:l}=e,u=()=>{const d=[];return i.forEach((p,m)=>{d.push(g.jsx(_H,{onClick:p.onClick,fontSize:"0.9rem",color:"var(--text-color-secondary)",backgroundColor:"var(--background-color-secondary)",_focus:{color:"var(--text-color)",backgroundColor:"var(--border-color)"},...l,children:p.item},m))}),d};return g.jsx(SH,{...o,children:({isOpen:d})=>g.jsxs(g.Fragment,{children:[g.jsx(EH,{as:t==="icon"?Ye:On,tooltip:n,icon:d?g.jsx(c7e,{}):g.jsx(u7e,{}),padding:t==="regular"?"0 0.5rem":0,backgroundColor:"var(--btn-base-color)",_hover:{backgroundColor:"var(--btn-base-color-hover)"},minWidth:"1rem",minHeight:"1rem",fontSize:"1.5rem",...a,children:t==="regular"&&r}),g.jsx(kH,{zIndex:15,padding:0,borderRadius:"0.5rem",backgroundColor:"var(--background-color-secondary)",color:"var(--text-color-secondary)",borderColor:"var(--border-color)",...s,children:u()})]})})}const qEe=lt(hr,e=>({isProcessing:e.isProcessing,isConnected:e.isConnected,isCancelable:e.isCancelable,currentIteration:e.currentIteration,totalIterations:e.totalIterations,cancelType:e.cancelOptions.cancelType,cancelAfter:e.cancelOptions.cancelAfter}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function JE(e){const t=Te(),{btnGroupWidth:n="auto",...r}=e,{isProcessing:i,isConnected:o,isCancelable:a,currentIteration:s,totalIterations:l,cancelType:u,cancelAfter:d}=le(qEe),p=S.useCallback(()=>{t(f_e()),t(BC(null))},[t]),{t:m}=De(),y=d!==null;Qe("shift+x",()=>{(o||i)&&a&&p()},[o,i,a]),S.useEffect(()=>{d!==null&&dt(VR("immediate"))},{item:m("parameters.cancel.schedule"),onClick:()=>t(VR("scheduled"))}];return g.jsxs(Gi,{isAttached:!0,variant:"link",minHeight:"2.5rem",width:n,children:[u==="immediate"?g.jsx(Ye,{icon:g.jsx(d7e,{}),tooltip:m("parameters.cancel.immediate"),"aria-label":m("parameters.cancel.immediate"),isDisabled:!o||!i||!a,onClick:p,className:"cancel-btn",...r}):g.jsx(Ye,{icon:y?g.jsx(a3,{color:"var(--text-color)"}):g.jsx(r7e,{}),tooltip:m(y?"parameters.cancel.isScheduled":"parameters.cancel.schedule"),"aria-label":m(y?"parameters.cancel.isScheduled":"parameters.cancel.schedule"),isDisabled:!o||!i||!a||s===l,onClick:()=>{t(BC(y?null:s))},className:"cancel-btn",...r}),g.jsx(GEe,{menuItems:b,iconTooltip:m("parameters.cancel.setType"),menuButtonProps:{backgroundColor:"var(--destructive-color)",color:"var(--text-color)",minWidth:"1.5rem",minHeight:"1.5rem",_hover:{backgroundColor:"var(--destructive-color-hover)"}}})]})}const eP=e=>e.generation;lt(eP,({shouldRandomizeSeed:e,shouldGenerateVariations:t})=>e||t,{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});const cq=lt([eP,hr,lG,Br],(e,t,n,r)=>{const{prompt:i,shouldGenerateVariations:o,seedWeights:a,initialImage:s,seed:l}=e,{isProcessing:u,isConnected:d}=t;let p=!0;const m=[];return(!i||Boolean(i.match(/^[\s\r\n]+$/)))&&(p=!1,m.push("Missing prompt")),r==="img2img"&&!s&&(p=!1,m.push("No initial image selected")),u&&(p=!1,m.push("System Busy")),d||(p=!1,m.push("System Disconnected")),o&&(!(yE(a)||a==="")||l===-1)&&(p=!1,m.push("Seed-Weights badly formatted.")),{isReady:p,reasonsWhyNotReady:m}},{memoizeOptions:{equalityCheck:Ce.isEqual,resultEqualityCheck:Ce.isEqual}});function tP(e){const{iconButton:t=!1,...n}=e,r=Te(),{isReady:i}=le(cq),o=le(Br),a=()=>{r(Wk(o))},{t:s}=De();return Qe(["ctrl+enter","meta+enter"],()=>{r(oU()),r(Wk(o))},{enabled:()=>i,preventDefault:!0,enableOnFormTags:["input","textarea","select"]},[i,o]),g.jsx("div",{style:{flexGrow:4},children:t?g.jsx(Ye,{"aria-label":s("parameters.invoke"),type:"submit",icon:g.jsx(Ake,{}),isDisabled:!i,onClick:a,className:"invoke-btn",tooltip:s("parameters.invoke"),tooltipProps:{placement:"bottom"},...n}):g.jsx(On,{"aria-label":s("parameters.invoke"),type:"submit",isDisabled:!i,onClick:a,className:"invoke-btn",...n,children:"Invoke"})})}const nP=lt([pp,fp,Br],(e,t,n)=>{const{shouldPinParametersPanel:r,shouldShowParametersPanel:i,shouldHoldParametersPanelOpen:o,shouldUseCanvasBetaLayout:a}=t,{shouldShowGallery:s,shouldPinGallery:l,shouldHoldGalleryOpen:u}=e,d=a&&n==="unifiedCanvas",p=!d&&!(i||o&&!r)&&["txt2img","img2img","unifiedCanvas"].includes(n),m=!(s||u&&!l)&&["txt2img","img2img","unifiedCanvas"].includes(n);return{shouldPinParametersPanel:r,shouldShowProcessButtons:!d&&(!r||!i),shouldShowParametersPanelButton:p,shouldShowParametersPanel:i,shouldShowGallery:s,shouldPinGallery:l,shouldShowGalleryButton:m}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),KEe=()=>{const e=Te(),{shouldShowParametersPanelButton:t,shouldShowProcessButtons:n,shouldPinParametersPanel:r}=le(nP),i=()=>{e(Fh(!0)),r&&setTimeout(()=>e(Li(!0)),400)};return t?g.jsxs("div",{className:"show-hide-button-options",children:[g.jsx(Ye,{tooltip:"Show Options Panel (O)",tooltipProps:{placement:"top"},"aria-label":"Show Options Panel",onClick:i,children:g.jsx(FE,{})}),n&&g.jsxs(g.Fragment,{children:[g.jsx(tP,{iconButton:!0}),g.jsx(JE,{})]})]}):null};function YEe(e){return ut({tag:"svg",attr:{viewBox:"0 0 16 16",fill:"currentColor"},child:[{tag:"path",attr:{d:"M14 1H3L2 2v11l1 1h11l1-1V2l-1-1zM8 13H3V2h5v11zm6 0H9V2h5v11z"}}]})(e)}const XEe=lt(pp,e=>({resultImages:e.categories.result.images,userImages:e.categories.user.images})),ZEe=()=>{const{resultImages:e,userImages:t}=le(XEe);return n=>{const r=e.find(o=>o.uuid===n);if(r)return r;const i=t.find(o=>o.uuid===n);if(i)return i}},QEe=lt([fp,d4,Br],(e,t,n)=>{const{shouldShowDualDisplay:r,shouldPinParametersPanel:i}=e,{isLightboxOpen:o}=t;return{shouldShowDualDisplay:r,shouldPinParametersPanel:i,isLightboxOpen:o,shouldShowDualDisplayButton:["inpainting"].includes(n),activeTabName:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),rP=e=>{const t=Te(),{optionsPanel:n,children:r,styleClass:i}=e,{activeTabName:o,shouldShowDualDisplay:a,isLightboxOpen:s,shouldShowDualDisplayButton:l}=le(QEe),u=ZEe(),d=()=>{t($4e(!a)),t(Li(!0))},p=m=>{const y=m.dataTransfer.getData("invokeai/imageUuid"),b=u(y);b&&(o==="img2img"?t(y0(b)):o==="unifiedCanvas"&&t(i4(b)))};return g.jsx("div",{className:i?`workarea-wrapper ${i}`:"workarea-wrapper",children:g.jsxs("div",{className:"workarea-main",children:[n,g.jsxs("div",{className:"workarea-children-wrapper",onDrop:p,children:[r,l&&g.jsx(si,{label:"Toggle Split View",children:g.jsx("div",{className:"workarea-split-button","data-selected":a,onClick:d,children:g.jsx(YEe,{})})})]}),!s&&g.jsx(XG,{})]})})},JEe=e=>{const{styleClass:t}=e,n=S.useContext(AE),r=()=>{n&&n()};return g.jsx("div",{className:`image-uploader-button-outer ${t}`,onClick:r,children:g.jsxs("div",{className:"image-upload-button",children:[g.jsx(h4,{}),g.jsx(jh,{size:"lg",children:"Click or Drag and Drop"})]})})},ePe=lt([pp,fp,Br],(e,t,n)=>{const{currentImage:r,intermediateImage:i}=e,{shouldShowImageDetails:o}=t;return{activeTabName:n,shouldShowImageDetails:o,hasAnImageToDisplay:r||i}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),dq=()=>{const{hasAnImageToDisplay:e,activeTabName:t}=le(ePe);return g.jsx("div",{className:"current-image-area","data-tab-name":t,children:e?g.jsxs(g.Fragment,{children:[g.jsx(uG,{}),g.jsx(Kke,{})]}):g.jsx("div",{className:"current-image-display-placeholder",children:g.jsx(l7e,{})})})},tPe=()=>{const e=S.useContext(AE);return g.jsx(Ye,{"aria-label":"Upload Image",tooltip:"Upload Image",icon:g.jsx(h4,{}),onClick:e||void 0})};function nPe(){const e=le(o=>o.generation.initialImage),{t}=De(),n=Te(),r=a2(),i=()=>{r({title:t("toast.parametersFailed"),description:t("toast.parametersFailedDesc"),status:"error",isClosable:!0}),n(aU())};return g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"init-image-preview-header",children:[g.jsx("h2",{children:t("parameters.initialImage")}),g.jsx(tPe,{})]}),e&&g.jsx("div",{className:"init-image-preview",children:g.jsx(jw,{fit:"contain",maxWidth:"100%",maxHeight:"100%",src:typeof e=="string"?e:e.url,onError:i})})]})}const rPe=()=>{const e=le(r=>r.generation.initialImage),{currentImage:t}=le(r=>r.gallery),n=e?g.jsx("div",{className:"image-to-image-area",children:g.jsx(nPe,{})}):g.jsx(JEe,{});return g.jsxs("div",{className:"workarea-split-view",children:[g.jsx("div",{className:"workarea-split-view-left",children:n}),t&&g.jsx("div",{className:"workarea-split-view-right",children:g.jsx(dq,{})})]})};var oo=(e=>(e[e.PROMPT=0]="PROMPT",e[e.GALLERY=1]="GALLERY",e[e.OTHER=2]="OTHER",e[e.SEED=3]="SEED",e[e.VARIATIONS=4]="VARIATIONS",e[e.UPSCALE=5]="UPSCALE",e[e.FACE_CORRECTION=6]="FACE_CORRECTION",e[e.IMAGE_TO_IMAGE=7]="IMAGE_TO_IMAGE",e[e.BOUNDING_BOX=8]="BOUNDING_BOX",e[e.SEAM_CORRECTION=9]="SEAM_CORRECTION",e[e.INFILL_AND_SCALING=10]="INFILL_AND_SCALING",e))(oo||{});const iPe=()=>{const{t:e}=De();return S.useMemo(()=>({[0]:{text:e("tooltip.feature.prompt"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[1]:{text:e("tooltip.feature.gallery"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[2]:{text:e("tooltip.feature.other"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[3]:{text:e("tooltip.feature.seed"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[4]:{text:e("tooltip.feature.variations"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[5]:{text:e("tooltip.feature.upscale"),href:"link/to/docs/feature1.html",guideImage:"asset/path.gif"},[6]:{text:e("tooltip.feature.faceCorrection"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[7]:{text:e("tooltip.feature.imageToImage"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[8]:{text:e("tooltip.feature.boundingBox"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[9]:{text:e("tooltip.feature.seamCorrection"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"},[10]:{text:e("tooltip.feature.infillAndScaling"),href:"link/to/docs/feature3.html",guideImage:"asset/path.gif"}}),[e])},oPe=e=>iPe()[e],_a=e=>{const{label:t,isDisabled:n=!1,width:r="auto",formControlProps:i,formLabelProps:o,styleClass:a,...s}=e;return g.jsxs(sn,{isDisabled:n,width:r,className:`invokeai__switch-form-control ${a}`,display:"flex",columnGap:"1rem",alignItems:"center",justifyContent:"space-between",...i,children:[g.jsx(Sn,{className:"invokeai__switch-form-label",whiteSpace:"nowrap",marginRight:0,marginTop:.5,marginBottom:.5,fontSize:"sm",fontWeight:"bold",width:"auto",...o,children:t}),g.jsx(K8,{className:"invokeai__switch-root",...s})]})};function fq(){const e=le(i=>i.system.isGFPGANAvailable),t=le(i=>i.postprocessing.shouldRunFacetool),n=Te(),r=i=>n(G3e(i.target.checked));return g.jsx(_a,{isDisabled:!e,isChecked:t,onChange:r})}const hq=()=>{const e=Te(),t=le(i=>i.generation.seamless),n=i=>e(hU(i.target.checked)),{t:r}=De();return g.jsx(Ee,{gap:2,direction:"column",children:g.jsx(_a,{label:r("parameters.seamlessTiling"),fontSize:"md",isChecked:t,onChange:n})})},aPe=()=>g.jsx(Ee,{gap:2,direction:"column",children:g.jsx(hq,{})});function iP(){const e=le(o=>o.generation.horizontalSymmetrySteps),t=le(o=>o.generation.verticalSymmetrySteps),n=le(o=>o.generation.steps),r=Te(),{t:i}=De();return g.jsxs(g.Fragment,{children:[g.jsx(Dn,{label:i("parameters.hSymmetryStep"),value:e,onChange:o=>r(oR(o)),min:0,max:n,step:1,withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>r(oR(0)),sliderMarkRightOffset:-6}),g.jsx(Dn,{label:i("parameters.vSymmetryStep"),value:t,onChange:o=>r(aR(o)),min:0,max:n,step:1,withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>r(aR(0)),sliderMarkRightOffset:-6})]})}function oP(){const e=le(n=>n.generation.shouldUseSymmetry),t=Te();return g.jsx(_a,{isChecked:e,onChange:n=>t(z3e(n.target.checked))})}function sPe(){const e=Te(),t=le(r=>r.generation.perlin),{t:n}=De();return g.jsx(Dn,{label:n("parameters.perlinNoise"),min:0,max:1,step:.05,onChange:r=>e(vk(r)),handleReset:()=>e(vk(0)),value:t,withInput:!0,withReset:!0,withSliderMarks:!0})}function lPe(){const e=Te(),{t}=De(),n=le(i=>i.generation.shouldRandomizeSeed),r=i=>e(B3e(i.target.checked));return g.jsx(_a,{label:t("parameters.randomizeSeed"),isChecked:n,onChange:r})}const hD=/^-?(0\.)?\.?$/,lc=e=>{const{label:t,labelFontSize:n="sm",styleClass:r,isDisabled:i=!1,showStepper:o=!0,width:a,textAlign:s,isInvalid:l,value:u,onChange:d,min:p,max:m,isInteger:y=!0,formControlProps:b,formLabelProps:w,numberInputFieldProps:E,numberInputStepperProps:_,tooltipProps:k,...T}=e,[L,O]=S.useState(String(u));S.useEffect(()=>{!L.match(hD)&&u!==Number(L)&&O(String(u))},[u,L]);const D=N=>{O(N),N.match(hD)||d(y?Math.floor(Number(N)):Number(N))},I=N=>{const W=Ce.clamp(y?Math.floor(Number(N.target.value)):Number(N.target.value),p,m);O(String(W)),d(W)};return g.jsx(si,{...k,children:g.jsxs(sn,{isDisabled:i,isInvalid:l,className:r?`invokeai__number-input-form-control ${r}`:"invokeai__number-input-form-control",...b,children:[t&&g.jsx(Sn,{className:"invokeai__number-input-form-label",style:{display:t?"block":"none"},fontSize:n,fontWeight:"bold",marginRight:0,marginBottom:0,whiteSpace:"nowrap",...w,children:t}),g.jsxs(B8,{className:"invokeai__number-input-root",value:L,min:p,max:m,keepWithinRange:!0,clampValueOnBlur:!1,onChange:D,onBlur:I,width:a,...T,children:[g.jsx(z8,{className:"invokeai__number-input-field",textAlign:s,...E}),o&&g.jsxs("div",{className:"invokeai__number-input-stepper",children:[g.jsx(W8,{..._,className:"invokeai__number-input-stepper-button"}),g.jsx(H8,{..._,className:"invokeai__number-input-stepper-button"})]})]})]})})};function uPe(){const e=le(a=>a.generation.seed),t=le(a=>a.generation.shouldRandomizeSeed),n=le(a=>a.generation.shouldGenerateVariations),{t:r}=De(),i=Te(),o=a=>i(p2(a));return g.jsx(lc,{label:r("parameters.seed"),step:1,precision:0,flexGrow:1,min:CE,max:_E,isDisabled:t,isInvalid:e<0&&n,onChange:o,value:e,width:"auto"})}function cPe(){const e=Te(),t=le(i=>i.generation.shouldRandomizeSeed),{t:n}=De(),r=()=>e(p2($V(CE,_E)));return g.jsx(ss,{size:"sm",isDisabled:t,onClick:r,padding:"0 1.5rem",children:g.jsx("p",{children:n("parameters.shuffle")})})}function dPe(){const e=Te(),t=le(r=>r.generation.threshold),{t:n}=De();return g.jsx(Dn,{label:n("parameters.noiseThreshold"),min:0,max:20,step:.1,onChange:r=>e(bk(r)),handleReset:()=>e(bk(0)),value:t,withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-4})}const aP=()=>g.jsxs(Ee,{gap:2,direction:"column",children:[g.jsx(lPe,{}),g.jsxs(Ee,{gap:2,children:[g.jsx(uPe,{}),g.jsx(cPe,{})]}),g.jsx(Ee,{gap:2,children:g.jsx(dPe,{})}),g.jsx(Ee,{gap:2,children:g.jsx(sPe,{})})]});function pq(){const e=le(i=>i.system.isESRGANAvailable),t=le(i=>i.postprocessing.shouldRunESRGAN),n=Te(),r=i=>n(V3e(i.target.checked));return g.jsx(_a,{isDisabled:!e,isChecked:t,onChange:r})}function sP(){const e=le(r=>r.generation.shouldGenerateVariations),t=Te(),n=r=>t(F3e(r.target.checked));return g.jsx(_a,{isChecked:e,width:"auto",onChange:n})}function qn(e){const{label:t="",styleClass:n,isDisabled:r=!1,fontSize:i="sm",width:o,size:a="sm",isInvalid:s,...l}=e;return g.jsxs(sn,{className:`input ${n}`,isInvalid:s,isDisabled:r,children:[t!==""&&g.jsx(Sn,{fontSize:i,fontWeight:"bold",alignItems:"center",whiteSpace:"nowrap",marginBottom:0,marginRight:0,className:"input-label",children:t}),g.jsx(E8,{...l,className:"input-entry",size:a,width:o})]})}function fPe(){const e=le(o=>o.generation.seedWeights),t=le(o=>o.generation.shouldGenerateVariations),{t:n}=De(),r=Te(),i=o=>r(pU(o.target.value));return g.jsx(qn,{label:n("parameters.seedWeights"),value:e,isInvalid:t&&!(yE(e)||e===""),isDisabled:!t,onChange:i})}function hPe(){const e=le(i=>i.generation.variationAmount),t=le(i=>i.generation.shouldGenerateVariations),{t:n}=De(),r=Te();return g.jsx(Dn,{label:n("parameters.variationAmount"),value:e,step:.01,min:0,max:1,isSliderDisabled:!t,isInputDisabled:!t,isResetDisabled:!t,onChange:i=>r(iR(i)),handleReset:()=>r(iR(.1)),withInput:!0,withReset:!0,withSliderMarks:!0})}const lP=()=>g.jsxs(Ee,{gap:2,direction:"column",children:[g.jsx(hPe,{}),g.jsx(fPe,{})]}),pPe=lt(hr,e=>e.shouldDisplayGuides),gPe=({children:e,feature:t})=>{const n=le(pPe),{text:r}=oPe(t);return n?g.jsxs(V8,{trigger:"hover",children:[g.jsx(U8,{children:g.jsx(ao,{children:e})}),g.jsxs(q8,{className:"guide-popover-content",maxWidth:"400px",onClick:i=>i.preventDefault(),cursor:"initial",children:[g.jsx(G8,{className:"guide-popover-arrow"}),g.jsx("div",{className:"guide-popover-guide-content",children:r})]})]}):null},mPe=Ze(({feature:e,icon:t=o7e},n)=>g.jsx(gPe,{feature:e,children:g.jsx(ao,{ref:n,children:g.jsx(ja,{marginBottom:"-.15rem",as:t})})}));function vPe(e){const{header:t,feature:n,content:r,additionalHeaderComponents:i}=e;return g.jsxs(rm,{className:"advanced-parameters-item",children:[g.jsx(tm,{className:"advanced-parameters-header",children:g.jsxs(Ee,{width:"100%",gap:"0.5rem",align:"center",children:[g.jsx(ao,{flexGrow:1,textAlign:"left",children:t}),i,n&&g.jsx(mPe,{feature:n}),g.jsx(nm,{})]})}),g.jsx(om,{className:"advanced-parameters-panel",children:r})]})}const n0=e=>{const{accordionInfo:t}=e,n=le(a=>a.system.openAccordions),r=Te(),i=a=>r(y4e(a)),o=()=>{const a=[];return t&&Object.keys(t).forEach(s=>{const{header:l,feature:u,content:d,additionalHeaderComponents:p}=t[s];a.push(g.jsx(vPe,{header:l,feature:u,content:d,additionalHeaderComponents:p},s))}),a};return g.jsx(c8,{defaultIndex:n,allowMultiple:!0,reduceMotion:!0,onChange:i,className:"advanced-parameters",children:o()})};function pD(){const e=Te(),t=le(o=>o.generation.cfgScale),n=le(o=>o.ui.shouldUseSliders),{t:r}=De(),i=o=>e(gk(o));return n?g.jsx(Dn,{label:r("parameters.cfgScale"),step:.5,min:1.01,max:30,onChange:i,handleReset:()=>e(gk(7.5)),value:t,sliderMarkRightOffset:-5,sliderNumberInputProps:{max:200},withInput:!0,withReset:!0,withSliderMarks:!0}):g.jsx(lc,{label:r("parameters.cfgScale"),step:.5,min:1.01,max:200,onChange:i,value:t,width:"auto",styleClass:"main-settings-block",textAlign:"center",isInteger:!1})}function gD(){const e=le(o=>o.generation.height),t=le(o=>o.ui.shouldUseSliders),n=le(Br),r=Te(),{t:i}=De();return t?g.jsx(Dn,{isSliderDisabled:n==="unifiedCanvas",isInputDisabled:n==="unifiedCanvas",isResetDisabled:n==="unifiedCanvas",label:i("parameters.height"),value:e,min:64,step:64,max:2048,onChange:o=>r(uS(o)),handleReset:()=>r(uS(512)),withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-8,inputWidth:"6.2rem",sliderNumberInputProps:{max:15360}}):g.jsx(Jo,{isDisabled:n==="unifiedCanvas",label:i("parameters.height"),value:e,flexGrow:1,onChange:o=>r(uS(Number(o.target.value))),validValues:R5e,styleClass:"main-settings-block",width:"5.5rem"})}function mD(){const e=le(o=>o.generation.iterations),t=le(o=>o.ui.shouldUseSliders),n=Te(),{t:r}=De(),i=o=>n(QO(o));return t?g.jsx(Dn,{label:r("parameters.images"),step:1,min:1,max:16,onChange:i,handleReset:()=>n(QO(1)),value:e,withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-5,sliderNumberInputProps:{max:9999}}):g.jsx(lc,{label:r("parameters.images"),step:1,min:1,max:9999,onChange:i,value:e,width:"auto",labelFontSize:.5,styleClass:"main-settings-block",textAlign:"center"})}function vD(){const e=le(o=>o.generation.sampler),t=le(GV),n=Te(),{t:r}=De(),i=o=>n(fU(o.target.value));return g.jsx(Jo,{label:r("parameters.sampler"),value:e,onChange:i,validValues:t.format==="diffusers"?A5e:L5e,styleClass:"main-settings-block",minWidth:"9rem"})}function yD(){const e=Te(),t=le(a=>a.generation.steps),n=le(a=>a.ui.shouldUseSliders),{t:r}=De(),i=a=>{e(yk(a))},o=()=>{e(oU())};return n?g.jsx(Dn,{label:r("parameters.steps"),min:1,step:1,onChange:i,handleReset:()=>e(yk(20)),value:t,withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-6,sliderNumberInputProps:{max:9999}}):g.jsx(lc,{label:r("parameters.steps"),min:1,max:9999,step:1,onChange:i,value:t,width:"auto",styleClass:"main-settings-block",textAlign:"center",onBlur:o})}function bD(){const e=le(o=>o.generation.width),t=le(o=>o.ui.shouldUseSliders),n=le(Br),{t:r}=De(),i=Te();return t?g.jsx(Dn,{isSliderDisabled:n==="unifiedCanvas",isInputDisabled:n==="unifiedCanvas",isResetDisabled:n==="unifiedCanvas",label:r("parameters.width"),value:e,min:64,step:64,max:2048,onChange:o=>i(cS(o)),handleReset:()=>i(cS(512)),withInput:!0,withReset:!0,withSliderMarks:!0,sliderMarkRightOffset:-8,inputWidth:"6.2rem",inputReadOnly:!0,sliderNumberInputProps:{max:15360}}):g.jsx(Jo,{isDisabled:n==="unifiedCanvas",label:r("parameters.width"),value:e,flexGrow:1,onChange:o=>i(cS(Number(o.target.value))),validValues:O5e,styleClass:"main-settings-block",width:"5.5rem"})}function uP(){const{t:e}=De(),t=le(r=>r.ui.shouldUseSliders),n={main:{header:`${e("parameters.general")}`,feature:void 0,content:t?g.jsxs(Ee,{flexDir:"column",rowGap:2,children:[g.jsx(mD,{}),g.jsx(yD,{}),g.jsx(pD,{}),g.jsx(bD,{}),g.jsx(gD,{}),g.jsx(vD,{})]}):g.jsxs(Ee,{flexDirection:"column",rowGap:2,children:[g.jsxs(Ee,{gap:2,children:[g.jsx(mD,{}),g.jsx(yD,{}),g.jsx(pD,{})]}),g.jsxs(Ee,{children:[g.jsx(bD,{}),g.jsx(gD,{}),g.jsx(vD,{})]})]})}};return g.jsx(n0,{accordionInfo:n})}const yPe=lt(DE,({shouldLoopback:e})=>e),bPe=()=>{const e=Te(),t=le(yPe),{t:n}=De();return g.jsx(Ye,{"aria-label":n("parameters.toggleLoopback"),tooltip:n("parameters.toggleLoopback"),styleClass:"loopback-btn",asCheckbox:!0,isChecked:t,icon:g.jsx(Rke,{}),onClick:()=>{e(U3e(!t))}})},cP=()=>{const e=le(Br);return g.jsxs("div",{className:"process-buttons",children:[g.jsx(tP,{}),e==="img2img"&&g.jsx(bPe,{}),g.jsx(JE,{})]})},dP=()=>{const e=le(r=>r.generation.negativePrompt),t=Te(),{t:n}=De();return g.jsx(sn,{children:g.jsx(Z8,{id:"negativePrompt",name:"negativePrompt",value:e,onChange:r=>t(dU(r.target.value)),background:"var(--prompt-bg-color)",placeholder:n("parameters.negativePrompts"),_placeholder:{fontSize:"0.8rem"},borderColor:"var(--border-color)",_hover:{borderColor:"var(--border-color-light)"},_focusVisible:{borderColor:"var(--border-color-invalid)",boxShadow:"0 0 10px var(--box-shadow-color-invalid)"},fontSize:"0.9rem",color:"var(--text-color-secondary)"})})},xPe=lt([e=>e.generation,Br],(e,t)=>({prompt:e.prompt,activeTabName:t}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),fP=()=>{const e=Te(),{prompt:t,activeTabName:n}=le(xPe),{isReady:r}=le(cq),i=S.useRef(null),{t:o}=De(),a=l=>{e(cU(l.target.value))};Qe("alt+a",()=>{var l;(l=i.current)==null||l.focus()},[]);const s=l=>{l.key==="Enter"&&l.shiftKey===!1&&r&&(l.preventDefault(),e(Wk(n)))};return g.jsx("div",{className:"prompt-bar",children:g.jsx(sn,{isInvalid:t.length===0||Boolean(t.match(/^[\s\r\n]+$/)),children:g.jsx(Z8,{id:"prompt",name:"prompt",placeholder:o("parameters.promptPlaceholder"),size:"lg",value:t,onChange:a,onKeyDown:s,resize:"vertical",height:30,ref:i,_placeholder:{color:"var(--text-color-secondary)"}})})})},gq=""+new URL("logo-13003d72.png",import.meta.url).href,SPe=lt(fp,e=>{const{shouldShowParametersPanel:t,shouldHoldParametersPanelOpen:n,shouldPinParametersPanel:r,parametersPanelScrollPosition:i}=e;return{shouldShowParametersPanel:t,shouldHoldParametersPanelOpen:n,shouldPinParametersPanel:r,parametersPanelScrollPosition:i}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),hP=e=>{const t=Te(),{shouldShowParametersPanel:n,shouldHoldParametersPanelOpen:r,shouldPinParametersPanel:i}=le(SPe),o=S.useRef(null),a=S.useRef(null),s=S.useRef(null),{children:l}=e,{t:u}=De();Qe("o",()=>{t(Fh(!n)),i&&setTimeout(()=>t(Li(!0)),400)},[n,i]),Qe("esc",()=>{t(Fh(!1))},{enabled:()=>!i,preventDefault:!0},[i]),Qe("shift+o",()=>{y(),t(Li(!0))},[i]);const d=S.useCallback(()=>{i||(t(D4e(a.current?a.current.scrollTop:0)),t(Fh(!1)),t(j4e(!1)))},[t,i]),p=()=>{s.current=window.setTimeout(()=>d(),500)},m=()=>{s.current&&window.clearTimeout(s.current)},y=()=>{t(N4e(!i)),t(Li(!0))};return S.useEffect(()=>{function b(w){o.current&&!o.current.contains(w.target)&&d()}return document.addEventListener("mousedown",b),()=>{document.removeEventListener("mousedown",b)}},[d]),g.jsx(yG,{nodeRef:o,in:n||r&&!i,unmountOnExit:!0,timeout:200,classNames:"parameters-panel-wrapper",children:g.jsx("div",{className:"parameters-panel-wrapper","data-pinned":i,tabIndex:1,ref:o,onMouseEnter:i?void 0:m,onMouseOver:i?void 0:m,style:{borderRight:i?"":"0.3rem solid var(--tab-list-text-inactive)"},children:g.jsx("div",{className:"parameters-panel-margin",children:g.jsxs("div",{className:"parameters-panel",ref:a,onMouseLeave:b=>{b.target!==a.current?m():!i&&p()},children:[g.jsx(si,{label:u("common.pinOptionsPanel"),children:g.jsx("div",{className:"parameters-panel-pin-button","data-selected":i,onClick:y,children:i?g.jsx(hG,{}):g.jsx(pG,{})})}),!i&&g.jsxs("div",{className:"invoke-ai-logo-wrapper",children:[g.jsx("img",{src:gq,alt:"invoke-ai-logo"}),g.jsxs("h1",{children:["invoke ",g.jsx("strong",{children:"ai"})]})]}),l]})})})})};function wPe(){const e=Te(),t=le(i=>i.generation.shouldFitToWidthHeight),n=i=>e(gU(i.target.checked)),{t:r}=De();return g.jsx(_a,{label:r("parameters.imageFit"),isChecked:t,onChange:n})}function mq(e){const{t}=De(),{label:n=`${t("parameters.strength")}`,styleClass:r}=e,i=le(l=>l.generation.img2imgStrength),o=Te(),a=l=>o(mk(l)),s=()=>{o(mk(.75))};return g.jsx(Dn,{label:n,step:.01,min:.01,max:1,onChange:a,value:i,isInteger:!1,styleClass:r,withInput:!0,withSliderMarks:!0,inputWidth:"5.5rem",withReset:!0,handleReset:s})}function CPe(){const{t:e}=De(),t={imageToImage:{header:`${e("parameters.imageToImage")}`,feature:void 0,content:g.jsxs(Ee,{gap:2,flexDir:"column",children:[g.jsx(mq,{label:e("parameters.img2imgStrength"),styleClass:"main-settings-block image-to-image-strength-main-option"}),g.jsx(wPe,{})]})}};return g.jsx(n0,{accordionInfo:t})}function _Pe(){const{t:e}=De(),t={seed:{header:`${e("parameters.seed")}`,feature:oo.SEED,content:g.jsx(aP,{})},variations:{header:`${e("parameters.variations")}`,feature:oo.VARIATIONS,content:g.jsx(lP,{}),additionalHeaderComponents:g.jsx(sP,{})},face_restore:{header:`${e("parameters.faceRestoration")}`,feature:oo.FACE_CORRECTION,content:g.jsx(RE,{}),additionalHeaderComponents:g.jsx(fq,{})},upscale:{header:`${e("parameters.upscaling")}`,feature:oo.UPSCALE,content:g.jsx(IE,{}),additionalHeaderComponents:g.jsx(pq,{})},symmetry:{header:`${e("parameters.symmetry")}`,content:g.jsx(iP,{}),additionalHeaderComponents:g.jsx(oP,{})},other:{header:`${e("parameters.otherOptions")}`,feature:oo.OTHER,content:g.jsx(aPe,{})}};return g.jsxs(hP,{children:[g.jsxs(Ee,{flexDir:"column",rowGap:"0.5rem",children:[g.jsx(fP,{}),g.jsx(dP,{})]}),g.jsx(cP,{}),g.jsx(uP,{}),g.jsx(CPe,{}),g.jsx(n0,{accordionInfo:t})]})}function kPe(){return g.jsx(rP,{optionsPanel:g.jsx(_Pe,{}),children:g.jsx(rPe,{})})}const EPe=()=>g.jsx("div",{className:"workarea-single-view",children:g.jsx("div",{className:"text-to-image-area",children:g.jsx(dq,{})})});function PPe(e){const{active:t=!0,width:n="1rem",height:r="1.3rem",side:i="right"}=e;return g.jsxs(g.Fragment,{children:[i==="right"&&g.jsx(ao,{width:n,height:r,margin:"-0.5rem 0.5rem 0 0.5rem",borderLeft:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)",borderBottom:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)"}),i==="left"&&g.jsx(ao,{width:n,height:r,margin:"-0.5rem 0.5rem 0 0.5rem",borderRight:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)",borderBottom:t?"3px solid var(--subhook-color)":"3px solid var(--tab-hover-color)"})]})}const TPe=lt([DE],({hiresFix:e,hiresStrength:t})=>({hiresFix:e,hiresStrength:t}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),MPe=()=>{const{hiresFix:e,hiresStrength:t}=le(TPe),n=Te(),{t:r}=De(),i=a=>{n(sR(a))},o=()=>{n(sR(.75))};return g.jsxs(Ee,{children:[g.jsx(PPe,{active:e}),g.jsx(Dn,{label:r("parameters.hiresStrength"),step:.01,min:.01,max:.99,onChange:i,value:t,isInteger:!1,withInput:!0,withSliderMarks:!0,inputWidth:"5.5rem",withReset:!0,handleReset:o,isSliderDisabled:!e,isInputDisabled:!e,isResetDisabled:!e,sliderMarkRightOffset:-7})]})},LPe=()=>{const e=Te(),t=le(i=>i.postprocessing.hiresFix),{t:n}=De(),r=i=>e(yU(i.target.checked));return g.jsxs(Ee,{rowGap:"0.8rem",direction:"column",children:[g.jsx(_a,{label:n("parameters.hiresOptim"),fontSize:"md",isChecked:t,onChange:r}),g.jsx(MPe,{})]})},APe=()=>g.jsxs(Ee,{gap:2,direction:"column",children:[g.jsx(hq,{}),g.jsx(LPe,{})]});function OPe(){const{t:e}=De(),t={seed:{header:`${e("parameters.seed")}`,feature:oo.SEED,content:g.jsx(aP,{})},variations:{header:`${e("parameters.variations")}`,feature:oo.VARIATIONS,content:g.jsx(lP,{}),additionalHeaderComponents:g.jsx(sP,{})},face_restore:{header:`${e("parameters.faceRestoration")}`,feature:oo.FACE_CORRECTION,content:g.jsx(RE,{}),additionalHeaderComponents:g.jsx(fq,{})},upscale:{header:`${e("parameters.upscaling")}`,feature:oo.UPSCALE,content:g.jsx(IE,{}),additionalHeaderComponents:g.jsx(pq,{})},symmetry:{header:`${e("parameters.symmetry")}`,content:g.jsx(iP,{}),additionalHeaderComponents:g.jsx(oP,{})},other:{header:`${e("parameters.otherOptions")}`,feature:oo.OTHER,content:g.jsx(APe,{})}};return g.jsxs(hP,{children:[g.jsxs(Ee,{flexDir:"column",rowGap:"0.5rem",children:[g.jsx(fP,{}),g.jsx(dP,{})]}),g.jsx(cP,{}),g.jsx(uP,{}),g.jsx(n0,{accordionInfo:t})]})}function RPe(){return g.jsx(rP,{optionsPanel:g.jsx(OPe,{}),children:g.jsx(EPe,{})})}var o7={},IPe={get exports(){return o7},set exports(e){o7=e}};/** * @license React * react-reconciler.production.min.js * @@ -513,17 +513,17 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */var IPe=function(t){var n={},r=S,i=Th,o=Object.assign;function a(f){for(var p="https://reactjs.org/docs/error-decoder.html?invariant="+f,x=1;xae||M[U]!==R[ae]){var he=` -`+M[U].replace(" at new "," at ");return f.displayName&&he.includes("")&&(he=he.replace("",f.displayName)),he}while(1<=U&&0<=ae);break}}}finally{il=!1,Error.prepareStackTrace=x}return(f=f?f.displayName||f.name:"")?hu(f):""}var kp=Object.prototype.hasOwnProperty,wc=[],ol=-1;function ra(f){return{current:f}}function Mn(f){0>ol||(f.current=wc[ol],wc[ol]=null,ol--)}function wn(f,p){ol++,wc[ol]=f.current,f.current=p}var ia={},Hr=ra(ia),ui=ra(!1),oa=ia;function al(f,p){var x=f.type.contextTypes;if(!x)return ia;var P=f.stateNode;if(P&&P.__reactInternalMemoizedUnmaskedChildContext===p)return P.__reactInternalMemoizedMaskedChildContext;var M={},R;for(R in x)M[R]=p[R];return P&&(f=f.stateNode,f.__reactInternalMemoizedUnmaskedChildContext=p,f.__reactInternalMemoizedMaskedChildContext=M),M}function ci(f){return f=f.childContextTypes,f!=null}function Ss(){Mn(ui),Mn(Hr)}function yf(f,p,x){if(Hr.current!==ia)throw Error(a(168));wn(Hr,p),wn(ui,x)}function gu(f,p,x){var P=f.stateNode;if(p=p.childContextTypes,typeof P.getChildContext!="function")return x;P=P.getChildContext();for(var M in P)if(!(M in p))throw Error(a(108,N(f)||"Unknown",M));return o({},x,P)}function ws(f){return f=(f=f.stateNode)&&f.__reactInternalMemoizedMergedChildContext||ia,oa=Hr.current,wn(Hr,f),wn(ui,ui.current),!0}function bf(f,p,x){var P=f.stateNode;if(!P)throw Error(a(169));x?(f=gu(f,p,oa),P.__reactInternalMemoizedMergedChildContext=f,Mn(ui),Mn(Hr),wn(Hr,f)):Mn(ui),wn(ui,x)}var Ri=Math.clz32?Math.clz32:xf,Ep=Math.log,Pp=Math.LN2;function xf(f){return f>>>=0,f===0?32:31-(Ep(f)/Pp|0)|0}var sl=64,Mo=4194304;function ll(f){switch(f&-f){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 f&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return f&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return f}}function mu(f,p){var x=f.pendingLanes;if(x===0)return 0;var P=0,M=f.suspendedLanes,R=f.pingedLanes,U=x&268435455;if(U!==0){var ae=U&~M;ae!==0?P=ll(ae):(R&=U,R!==0&&(P=ll(R)))}else U=x&~M,U!==0?P=ll(U):R!==0&&(P=ll(R));if(P===0)return 0;if(p!==0&&p!==P&&!(p&M)&&(M=P&-P,R=p&-p,M>=R||M===16&&(R&4194240)!==0))return p;if(P&4&&(P|=x&16),p=f.entangledLanes,p!==0)for(f=f.entanglements,p&=P;0x;x++)p.push(f);return p}function $a(f,p,x){f.pendingLanes|=p,p!==536870912&&(f.suspendedLanes=0,f.pingedLanes=0),f=f.eventTimes,p=31-Ri(p),f[p]=x}function wf(f,p){var x=f.pendingLanes&~p;f.pendingLanes=p,f.suspendedLanes=0,f.pingedLanes=0,f.expiredLanes&=p,f.mutableReadLanes&=p,f.entangledLanes&=p,p=f.entanglements;var P=f.eventTimes;for(f=f.expirationTimes;0>=U,M-=U,uo=1<<32-Ri(p)+M|x<Ut?(ti=At,At=null):ti=At.sibling;var Qt=it(ge,At,ve[Ut],et);if(Qt===null){At===null&&(At=ti);break}f&&At&&Qt.alternate===null&&p(ge,At),ue=R(Qt,ue,Ut),It===null?Oe=Qt:It.sibling=Qt,It=Qt,At=ti}if(Ut===ve.length)return x(ge,At),zn&&ul(ge,Ut),Oe;if(At===null){for(;UtUt?(ti=At,At=null):ti=At.sibling;var As=it(ge,At,Qt.value,et);if(As===null){At===null&&(At=ti);break}f&&At&&As.alternate===null&&p(ge,At),ue=R(As,ue,Ut),It===null?Oe=As:It.sibling=As,It=As,At=ti}if(Qt.done)return x(ge,At),zn&&ul(ge,Ut),Oe;if(At===null){for(;!Qt.done;Ut++,Qt=ve.next())Qt=Rt(ge,Qt.value,et),Qt!==null&&(ue=R(Qt,ue,Ut),It===null?Oe=Qt:It.sibling=Qt,It=Qt);return zn&&ul(ge,Ut),Oe}for(At=P(ge,At);!Qt.done;Ut++,Qt=ve.next())Qt=Wn(At,ge,Ut,Qt.value,et),Qt!==null&&(f&&Qt.alternate!==null&&At.delete(Qt.key===null?Ut:Qt.key),ue=R(Qt,ue,Ut),It===null?Oe=Qt:It.sibling=Qt,It=Qt);return f&&At.forEach(function(ki){return p(ge,ki)}),zn&&ul(ge,Ut),Oe}function ma(ge,ue,ve,et){if(typeof ve=="object"&&ve!==null&&ve.type===d&&ve.key===null&&(ve=ve.props.children),typeof ve=="object"&&ve!==null){switch(ve.$$typeof){case l:e:{for(var Oe=ve.key,It=ue;It!==null;){if(It.key===Oe){if(Oe=ve.type,Oe===d){if(It.tag===7){x(ge,It.sibling),ue=M(It,ve.props.children),ue.return=ge,ge=ue;break e}}else if(It.elementType===Oe||typeof Oe=="object"&&Oe!==null&&Oe.$$typeof===T&&G0(Oe)===It.type){x(ge,It.sibling),ue=M(It,ve.props),ue.ref=za(ge,It,ve),ue.return=ge,ge=ue;break e}x(ge,It);break}else p(ge,It);It=It.sibling}ve.type===d?(ue=Cl(ve.props.children,ge.mode,et,ve.key),ue.return=ge,ge=ue):(et=Xf(ve.type,ve.key,ve.props,null,ge.mode,et),et.ref=za(ge,ue,ve),et.return=ge,ge=et)}return U(ge);case u:e:{for(It=ve.key;ue!==null;){if(ue.key===It)if(ue.tag===4&&ue.stateNode.containerInfo===ve.containerInfo&&ue.stateNode.implementation===ve.implementation){x(ge,ue.sibling),ue=M(ue,ve.children||[]),ue.return=ge,ge=ue;break e}else{x(ge,ue);break}else p(ge,ue);ue=ue.sibling}ue=_l(ve,ge.mode,et),ue.return=ge,ge=ue}return U(ge);case T:return It=ve._init,ma(ge,ue,It(ve._payload),et)}if(V(ve))return Ln(ge,ue,ve,et);if(D(ve))return gr(ge,ue,ve,et);Qi(ge,ve)}return typeof ve=="string"&&ve!==""||typeof ve=="number"?(ve=""+ve,ue!==null&&ue.tag===6?(x(ge,ue.sibling),ue=M(ue,ve),ue.return=ge,ge=ue):(x(ge,ue),ue=pg(ve,ge.mode,et),ue.return=ge,ge=ue),U(ge)):x(ge,ue)}return ma}var Rc=D2(!0),j2=D2(!1),Rf={},Ro=ra(Rf),Ha=ra(Rf),ie=ra(Rf);function be(f){if(f===Rf)throw Error(a(174));return f}function me(f,p){wn(ie,p),wn(Ha,f),wn(Ro,Rf),f=Q(p),Mn(Ro),wn(Ro,f)}function rt(){Mn(Ro),Mn(Ha),Mn(ie)}function Lt(f){var p=be(ie.current),x=be(Ro.current);p=G(x,f.type,p),x!==p&&(wn(Ha,f),wn(Ro,p))}function en(f){Ha.current===f&&(Mn(Ro),Mn(Ha))}var Nt=ra(0);function dn(f){for(var p=f;p!==null;){if(p.tag===13){var x=p.memoizedState;if(x!==null&&(x=x.dehydrated,x===null||xc(x)||vf(x)))return p}else if(p.tag===19&&p.memoizedProps.revealOrder!==void 0){if(p.flags&128)return p}else if(p.child!==null){p.child.return=p,p=p.child;continue}if(p===f)break;for(;p.sibling===null;){if(p.return===null||p.return===f)return null;p=p.return}p.sibling.return=p.return,p=p.sibling}return null}var If=[];function q0(){for(var f=0;fx?x:4,f(!0);var P=Ic.transition;Ic.transition={};try{f(!1),p()}finally{Gt=x,Ic.transition=P}}function zc(){return ji().memoizedState}function tv(f,p,x){var P=qr(f);if(x={lane:P,action:x,hasEagerState:!1,eagerState:null,next:null},Wc(f))Uc(p,x);else if(x=Oc(f,p,x,P),x!==null){var M=_i();jo(x,f,P,M),Bf(x,p,P)}}function Hc(f,p,x){var P=qr(f),M={lane:P,action:x,hasEagerState:!1,eagerState:null,next:null};if(Wc(f))Uc(p,M);else{var R=f.alternate;if(f.lanes===0&&(R===null||R.lanes===0)&&(R=p.lastRenderedReducer,R!==null))try{var U=p.lastRenderedState,ae=R(U,x);if(M.hasEagerState=!0,M.eagerState=ae,q(ae,U)){var he=p.interleaved;he===null?(M.next=M,Af(p)):(M.next=he.next,he.next=M),p.interleaved=M;return}}catch{}finally{}x=Oc(f,p,M,P),x!==null&&(M=_i(),jo(x,f,P,M),Bf(x,p,P))}}function Wc(f){var p=f.alternate;return f===Cn||p!==null&&p===Cn}function Uc(f,p){Df=an=!0;var x=f.pending;x===null?p.next=p:(p.next=x.next,x.next=p),f.pending=p}function Bf(f,p,x){if(x&4194240){var P=p.lanes;P&=f.pendingLanes,x|=P,p.lanes=x,vu(f,x)}}var ks={readContext:co,useCallback:xi,useContext:xi,useEffect:xi,useImperativeHandle:xi,useInsertionEffect:xi,useLayoutEffect:xi,useMemo:xi,useReducer:xi,useRef:xi,useState:xi,useDebugValue:xi,useDeferredValue:xi,useTransition:xi,useMutableSource:xi,useSyncExternalStore:xi,useId:xi,unstable_isNewReconciler:!1},A4={readContext:co,useCallback:function(f,p){return fi().memoizedState=[f,p===void 0?null:p],f},useContext:co,useEffect:F2,useImperativeHandle:function(f,p,x){return x=x!=null?x.concat([f]):null,Su(4194308,4,Or.bind(null,p,f),x)},useLayoutEffect:function(f,p){return Su(4194308,4,f,p)},useInsertionEffect:function(f,p){return Su(4,2,f,p)},useMemo:function(f,p){var x=fi();return p=p===void 0?null:p,f=f(),x.memoizedState=[f,p],f},useReducer:function(f,p,x){var P=fi();return p=x!==void 0?x(p):p,P.memoizedState=P.baseState=p,f={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:f,lastRenderedState:p},P.queue=f,f=f.dispatch=tv.bind(null,Cn,f),[P.memoizedState,f]},useRef:function(f){var p=fi();return f={current:f},p.memoizedState=f},useState:$2,useDebugValue:Q0,useDeferredValue:function(f){return fi().memoizedState=f},useTransition:function(){var f=$2(!1),p=f[0];return f=ev.bind(null,f[1]),fi().memoizedState=f,[p,f]},useMutableSource:function(){},useSyncExternalStore:function(f,p,x){var P=Cn,M=fi();if(zn){if(x===void 0)throw Error(a(407));x=x()}else{if(x=p(),ei===null)throw Error(a(349));xu&30||Z0(P,p,x)}M.memoizedState=x;var R={value:x,getSnapshot:p};return M.queue=R,F2(fl.bind(null,P,R,f),[f]),P.flags|=2048,$f(9,Fc.bind(null,P,R,x,p),void 0,null),x},useId:function(){var f=fi(),p=ei.identifierPrefix;if(zn){var x=Fa,P=uo;x=(P&~(1<<32-Ri(P)-1)).toString(32)+x,p=":"+p+"R"+x,x=Dc++,0")&&(he=he.replace("",f.displayName)),he}while(1<=U&&0<=ae);break}}}finally{il=!1,Error.prepareStackTrace=x}return(f=f?f.displayName||f.name:"")?hu(f):""}var kp=Object.prototype.hasOwnProperty,wc=[],ol=-1;function ra(f){return{current:f}}function Mn(f){0>ol||(f.current=wc[ol],wc[ol]=null,ol--)}function wn(f,h){ol++,wc[ol]=f.current,f.current=h}var ia={},Hr=ra(ia),ui=ra(!1),oa=ia;function al(f,h){var x=f.type.contextTypes;if(!x)return ia;var P=f.stateNode;if(P&&P.__reactInternalMemoizedUnmaskedChildContext===h)return P.__reactInternalMemoizedMaskedChildContext;var M={},R;for(R in x)M[R]=h[R];return P&&(f=f.stateNode,f.__reactInternalMemoizedUnmaskedChildContext=h,f.__reactInternalMemoizedMaskedChildContext=M),M}function ci(f){return f=f.childContextTypes,f!=null}function Ss(){Mn(ui),Mn(Hr)}function yf(f,h,x){if(Hr.current!==ia)throw Error(a(168));wn(Hr,h),wn(ui,x)}function gu(f,h,x){var P=f.stateNode;if(h=h.childContextTypes,typeof P.getChildContext!="function")return x;P=P.getChildContext();for(var M in P)if(!(M in h))throw Error(a(108,N(f)||"Unknown",M));return o({},x,P)}function ws(f){return f=(f=f.stateNode)&&f.__reactInternalMemoizedMergedChildContext||ia,oa=Hr.current,wn(Hr,f),wn(ui,ui.current),!0}function bf(f,h,x){var P=f.stateNode;if(!P)throw Error(a(169));x?(f=gu(f,h,oa),P.__reactInternalMemoizedMergedChildContext=f,Mn(ui),Mn(Hr),wn(Hr,f)):Mn(ui),wn(ui,x)}var Ri=Math.clz32?Math.clz32:xf,Ep=Math.log,Pp=Math.LN2;function xf(f){return f>>>=0,f===0?32:31-(Ep(f)/Pp|0)|0}var sl=64,Mo=4194304;function ll(f){switch(f&-f){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 f&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return f&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return f}}function mu(f,h){var x=f.pendingLanes;if(x===0)return 0;var P=0,M=f.suspendedLanes,R=f.pingedLanes,U=x&268435455;if(U!==0){var ae=U&~M;ae!==0?P=ll(ae):(R&=U,R!==0&&(P=ll(R)))}else U=x&~M,U!==0?P=ll(U):R!==0&&(P=ll(R));if(P===0)return 0;if(h!==0&&h!==P&&!(h&M)&&(M=P&-P,R=h&-h,M>=R||M===16&&(R&4194240)!==0))return h;if(P&4&&(P|=x&16),h=f.entangledLanes,h!==0)for(f=f.entanglements,h&=P;0x;x++)h.push(f);return h}function $a(f,h,x){f.pendingLanes|=h,h!==536870912&&(f.suspendedLanes=0,f.pingedLanes=0),f=f.eventTimes,h=31-Ri(h),f[h]=x}function wf(f,h){var x=f.pendingLanes&~h;f.pendingLanes=h,f.suspendedLanes=0,f.pingedLanes=0,f.expiredLanes&=h,f.mutableReadLanes&=h,f.entangledLanes&=h,h=f.entanglements;var P=f.eventTimes;for(f=f.expirationTimes;0>=U,M-=U,uo=1<<32-Ri(h)+M|x<Ut?(ti=At,At=null):ti=At.sibling;var Qt=it(ge,At,ve[Ut],et);if(Qt===null){At===null&&(At=ti);break}f&&At&&Qt.alternate===null&&h(ge,At),ue=R(Qt,ue,Ut),It===null?Oe=Qt:It.sibling=Qt,It=Qt,At=ti}if(Ut===ve.length)return x(ge,At),zn&&ul(ge,Ut),Oe;if(At===null){for(;UtUt?(ti=At,At=null):ti=At.sibling;var As=it(ge,At,Qt.value,et);if(As===null){At===null&&(At=ti);break}f&&At&&As.alternate===null&&h(ge,At),ue=R(As,ue,Ut),It===null?Oe=As:It.sibling=As,It=As,At=ti}if(Qt.done)return x(ge,At),zn&&ul(ge,Ut),Oe;if(At===null){for(;!Qt.done;Ut++,Qt=ve.next())Qt=Rt(ge,Qt.value,et),Qt!==null&&(ue=R(Qt,ue,Ut),It===null?Oe=Qt:It.sibling=Qt,It=Qt);return zn&&ul(ge,Ut),Oe}for(At=P(ge,At);!Qt.done;Ut++,Qt=ve.next())Qt=Wn(At,ge,Ut,Qt.value,et),Qt!==null&&(f&&Qt.alternate!==null&&At.delete(Qt.key===null?Ut:Qt.key),ue=R(Qt,ue,Ut),It===null?Oe=Qt:It.sibling=Qt,It=Qt);return f&&At.forEach(function(ki){return h(ge,ki)}),zn&&ul(ge,Ut),Oe}function ma(ge,ue,ve,et){if(typeof ve=="object"&&ve!==null&&ve.type===d&&ve.key===null&&(ve=ve.props.children),typeof ve=="object"&&ve!==null){switch(ve.$$typeof){case l:e:{for(var Oe=ve.key,It=ue;It!==null;){if(It.key===Oe){if(Oe=ve.type,Oe===d){if(It.tag===7){x(ge,It.sibling),ue=M(It,ve.props.children),ue.return=ge,ge=ue;break e}}else if(It.elementType===Oe||typeof Oe=="object"&&Oe!==null&&Oe.$$typeof===T&&G0(Oe)===It.type){x(ge,It.sibling),ue=M(It,ve.props),ue.ref=za(ge,It,ve),ue.return=ge,ge=ue;break e}x(ge,It);break}else h(ge,It);It=It.sibling}ve.type===d?(ue=Cl(ve.props.children,ge.mode,et,ve.key),ue.return=ge,ge=ue):(et=Xf(ve.type,ve.key,ve.props,null,ge.mode,et),et.ref=za(ge,ue,ve),et.return=ge,ge=et)}return U(ge);case u:e:{for(It=ve.key;ue!==null;){if(ue.key===It)if(ue.tag===4&&ue.stateNode.containerInfo===ve.containerInfo&&ue.stateNode.implementation===ve.implementation){x(ge,ue.sibling),ue=M(ue,ve.children||[]),ue.return=ge,ge=ue;break e}else{x(ge,ue);break}else h(ge,ue);ue=ue.sibling}ue=_l(ve,ge.mode,et),ue.return=ge,ge=ue}return U(ge);case T:return It=ve._init,ma(ge,ue,It(ve._payload),et)}if(V(ve))return Ln(ge,ue,ve,et);if(D(ve))return gr(ge,ue,ve,et);Qi(ge,ve)}return typeof ve=="string"&&ve!==""||typeof ve=="number"?(ve=""+ve,ue!==null&&ue.tag===6?(x(ge,ue.sibling),ue=M(ue,ve),ue.return=ge,ge=ue):(x(ge,ue),ue=pg(ve,ge.mode,et),ue.return=ge,ge=ue),U(ge)):x(ge,ue)}return ma}var Rc=D2(!0),j2=D2(!1),Rf={},Ro=ra(Rf),Ha=ra(Rf),ie=ra(Rf);function be(f){if(f===Rf)throw Error(a(174));return f}function me(f,h){wn(ie,h),wn(Ha,f),wn(Ro,Rf),f=Q(h),Mn(Ro),wn(Ro,f)}function rt(){Mn(Ro),Mn(Ha),Mn(ie)}function Lt(f){var h=be(ie.current),x=be(Ro.current);h=G(x,f.type,h),x!==h&&(wn(Ha,f),wn(Ro,h))}function en(f){Ha.current===f&&(Mn(Ro),Mn(Ha))}var Nt=ra(0);function dn(f){for(var h=f;h!==null;){if(h.tag===13){var x=h.memoizedState;if(x!==null&&(x=x.dehydrated,x===null||xc(x)||vf(x)))return h}else if(h.tag===19&&h.memoizedProps.revealOrder!==void 0){if(h.flags&128)return h}else if(h.child!==null){h.child.return=h,h=h.child;continue}if(h===f)break;for(;h.sibling===null;){if(h.return===null||h.return===f)return null;h=h.return}h.sibling.return=h.return,h=h.sibling}return null}var If=[];function q0(){for(var f=0;fx?x:4,f(!0);var P=Ic.transition;Ic.transition={};try{f(!1),h()}finally{Gt=x,Ic.transition=P}}function zc(){return ji().memoizedState}function tv(f,h,x){var P=qr(f);if(x={lane:P,action:x,hasEagerState:!1,eagerState:null,next:null},Wc(f))Uc(h,x);else if(x=Oc(f,h,x,P),x!==null){var M=_i();jo(x,f,P,M),Bf(x,h,P)}}function Hc(f,h,x){var P=qr(f),M={lane:P,action:x,hasEagerState:!1,eagerState:null,next:null};if(Wc(f))Uc(h,M);else{var R=f.alternate;if(f.lanes===0&&(R===null||R.lanes===0)&&(R=h.lastRenderedReducer,R!==null))try{var U=h.lastRenderedState,ae=R(U,x);if(M.hasEagerState=!0,M.eagerState=ae,q(ae,U)){var he=h.interleaved;he===null?(M.next=M,Af(h)):(M.next=he.next,he.next=M),h.interleaved=M;return}}catch{}finally{}x=Oc(f,h,M,P),x!==null&&(M=_i(),jo(x,f,P,M),Bf(x,h,P))}}function Wc(f){var h=f.alternate;return f===Cn||h!==null&&h===Cn}function Uc(f,h){Df=an=!0;var x=f.pending;x===null?h.next=h:(h.next=x.next,x.next=h),f.pending=h}function Bf(f,h,x){if(x&4194240){var P=h.lanes;P&=f.pendingLanes,x|=P,h.lanes=x,vu(f,x)}}var ks={readContext:co,useCallback:xi,useContext:xi,useEffect:xi,useImperativeHandle:xi,useInsertionEffect:xi,useLayoutEffect:xi,useMemo:xi,useReducer:xi,useRef:xi,useState:xi,useDebugValue:xi,useDeferredValue:xi,useTransition:xi,useMutableSource:xi,useSyncExternalStore:xi,useId:xi,unstable_isNewReconciler:!1},A4={readContext:co,useCallback:function(f,h){return fi().memoizedState=[f,h===void 0?null:h],f},useContext:co,useEffect:F2,useImperativeHandle:function(f,h,x){return x=x!=null?x.concat([f]):null,Su(4194308,4,Or.bind(null,h,f),x)},useLayoutEffect:function(f,h){return Su(4194308,4,f,h)},useInsertionEffect:function(f,h){return Su(4,2,f,h)},useMemo:function(f,h){var x=fi();return h=h===void 0?null:h,f=f(),x.memoizedState=[f,h],f},useReducer:function(f,h,x){var P=fi();return h=x!==void 0?x(h):h,P.memoizedState=P.baseState=h,f={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:f,lastRenderedState:h},P.queue=f,f=f.dispatch=tv.bind(null,Cn,f),[P.memoizedState,f]},useRef:function(f){var h=fi();return f={current:f},h.memoizedState=f},useState:$2,useDebugValue:Q0,useDeferredValue:function(f){return fi().memoizedState=f},useTransition:function(){var f=$2(!1),h=f[0];return f=ev.bind(null,f[1]),fi().memoizedState=f,[h,f]},useMutableSource:function(){},useSyncExternalStore:function(f,h,x){var P=Cn,M=fi();if(zn){if(x===void 0)throw Error(a(407));x=x()}else{if(x=h(),ei===null)throw Error(a(349));xu&30||Z0(P,h,x)}M.memoizedState=x;var R={value:x,getSnapshot:h};return M.queue=R,F2(fl.bind(null,P,R,f),[f]),P.flags|=2048,$f(9,Fc.bind(null,P,R,x,h),void 0,null),x},useId:function(){var f=fi(),h=ei.identifierPrefix;if(zn){var x=Fa,P=uo;x=(P&~(1<<32-Ri(P)-1)).toString(32)+x,h=":"+h+"R"+x,x=Dc++,0ig&&(p.flags|=128,P=!0,qc(M,!1),p.lanes=4194304)}else{if(!P)if(f=dn(R),f!==null){if(p.flags|=128,P=!0,f=f.updateQueue,f!==null&&(p.updateQueue=f,p.flags|=4),qc(M,!0),M.tail===null&&M.tailMode==="hidden"&&!R.alternate&&!zn)return Si(p),null}else 2*Xn()-M.renderingStartTime>ig&&x!==1073741824&&(p.flags|=128,P=!0,qc(M,!1),p.lanes=4194304);M.isBackwards?(R.sibling=p.child,p.child=R):(f=M.last,f!==null?f.sibling=R:p.child=R,M.last=R)}return M.tail!==null?(p=M.tail,M.rendering=p,M.tail=p.sibling,M.renderingStartTime=Xn(),p.sibling=null,f=Nt.current,wn(Nt,P?f&1|2:f&1),p):(Si(p),null);case 22:case 23:return nd(),x=p.memoizedState!==null,f!==null&&f.memoizedState!==null!==x&&(p.flags|=8192),x&&p.mode&1?ho&1073741824&&(Si(p),Be&&p.subtreeFlags&6&&(p.flags|=8192)):Si(p),null;case 24:return null;case 25:return null}throw Error(a(156,p.tag))}function uv(f,p){switch(H0(p),p.tag){case 1:return ci(p.type)&&Ss(),f=p.flags,f&65536?(p.flags=f&-65537|128,p):null;case 3:return rt(),Mn(ui),Mn(Hr),q0(),f=p.flags,f&65536&&!(f&128)?(p.flags=f&-65537|128,p):null;case 5:return en(p),null;case 13:if(Mn(Nt),f=p.memoizedState,f!==null&&f.dehydrated!==null){if(p.alternate===null)throw Error(a(340));Mc()}return f=p.flags,f&65536?(p.flags=f&-65537|128,p):null;case 19:return Mn(Nt),null;case 4:return rt(),null;case 10:return Mf(p.type._context),null;case 22:case 23:return nd(),null;case 24:return null;default:return null}}var pl=!1,Ur=!1,N4=typeof WeakSet=="function"?WeakSet:Set,st=null;function Kc(f,p){var x=f.ref;if(x!==null)if(typeof x=="function")try{x(null)}catch(P){Qn(f,p,P)}else x.current=null}function fa(f,p,x){try{x()}catch(P){Qn(f,p,P)}}var Vp=!1;function Cu(f,p){for(Y(f.containerInfo),st=p;st!==null;)if(f=st,p=f.child,(f.subtreeFlags&1028)!==0&&p!==null)p.return=f,st=p;else for(;st!==null;){f=st;try{var x=f.alternate;if(f.flags&1024)switch(f.tag){case 0:case 11:case 15:break;case 1:if(x!==null){var P=x.memoizedProps,M=x.memoizedState,R=f.stateNode,U=R.getSnapshotBeforeUpdate(f.elementType===f.type?P:sa(f.type,P),M);R.__reactInternalSnapshotBeforeUpdate=U}break;case 3:Be&&Xi(f.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(a(163))}}catch(ae){Qn(f,f.return,ae)}if(p=f.sibling,p!==null){p.return=f.return,st=p;break}st=f.return}return x=Vp,Vp=!1,x}function wi(f,p,x){var P=p.updateQueue;if(P=P!==null?P.lastEffect:null,P!==null){var M=P=P.next;do{if((M.tag&f)===f){var R=M.destroy;M.destroy=void 0,R!==void 0&&fa(p,x,R)}M=M.next}while(M!==P)}}function Gp(f,p){if(p=p.updateQueue,p=p!==null?p.lastEffect:null,p!==null){var x=p=p.next;do{if((x.tag&f)===f){var P=x.create;x.destroy=P()}x=x.next}while(x!==p)}}function qp(f){var p=f.ref;if(p!==null){var x=f.stateNode;switch(f.tag){case 5:f=X(x);break;default:f=x}typeof p=="function"?p(f):p.current=f}}function cv(f){var p=f.alternate;p!==null&&(f.alternate=null,cv(p)),f.child=null,f.deletions=null,f.sibling=null,f.tag===5&&(p=f.stateNode,p!==null&&mt(p)),f.stateNode=null,f.return=null,f.dependencies=null,f.memoizedProps=null,f.memoizedState=null,f.pendingProps=null,f.stateNode=null,f.updateQueue=null}function Yc(f){return f.tag===5||f.tag===3||f.tag===4}function Ps(f){e:for(;;){for(;f.sibling===null;){if(f.return===null||Yc(f.return))return null;f=f.return}for(f.sibling.return=f.return,f=f.sibling;f.tag!==5&&f.tag!==6&&f.tag!==18;){if(f.flags&2||f.child===null||f.tag===4)continue e;f.child.return=f,f=f.child}if(!(f.flags&2))return f.stateNode}}function Kp(f,p,x){var P=f.tag;if(P===5||P===6)f=f.stateNode,p?zr(x,f,p):Ct(x,f);else if(P!==4&&(f=f.child,f!==null))for(Kp(f,p,x),f=f.sibling;f!==null;)Kp(f,p,x),f=f.sibling}function dv(f,p,x){var P=f.tag;if(P===5||P===6)f=f.stateNode,p?pt(x,f,p):Me(x,f);else if(P!==4&&(f=f.child,f!==null))for(dv(f,p,x),f=f.sibling;f!==null;)dv(f,p,x),f=f.sibling}var Ir=null,ha=!1;function pa(f,p,x){for(x=x.child;x!==null;)Vr(f,p,x),x=x.sibling}function Vr(f,p,x){if(qt&&typeof qt.onCommitFiberUnmount=="function")try{qt.onCommitFiberUnmount(cn,x)}catch{}switch(x.tag){case 5:Ur||Kc(x,p);case 6:if(Be){var P=Ir,M=ha;Ir=null,pa(f,p,x),Ir=P,ha=M,Ir!==null&&(ha?Bn(Ir,x.stateNode):rr(Ir,x.stateNode))}else pa(f,p,x);break;case 18:Be&&Ir!==null&&(ha?N0(Ir,x.stateNode):j0(Ir,x.stateNode));break;case 4:Be?(P=Ir,M=ha,Ir=x.stateNode.containerInfo,ha=!0,pa(f,p,x),Ir=P,ha=M):(Ae&&(P=x.stateNode.containerInfo,M=Na(P),bc(P,M)),pa(f,p,x));break;case 0:case 11:case 14:case 15:if(!Ur&&(P=x.updateQueue,P!==null&&(P=P.lastEffect,P!==null))){M=P=P.next;do{var R=M,U=R.destroy;R=R.tag,U!==void 0&&(R&2||R&4)&&fa(x,p,U),M=M.next}while(M!==P)}pa(f,p,x);break;case 1:if(!Ur&&(Kc(x,p),P=x.stateNode,typeof P.componentWillUnmount=="function"))try{P.props=x.memoizedProps,P.state=x.memoizedState,P.componentWillUnmount()}catch(ae){Qn(x,p,ae)}pa(f,p,x);break;case 21:pa(f,p,x);break;case 22:x.mode&1?(Ur=(P=Ur)||x.memoizedState!==null,pa(f,p,x),Ur=P):pa(f,p,x);break;default:pa(f,p,x)}}function Yp(f){var p=f.updateQueue;if(p!==null){f.updateQueue=null;var x=f.stateNode;x===null&&(x=f.stateNode=new N4),p.forEach(function(P){var M=rb.bind(null,f,P);x.has(P)||(x.add(P),P.then(M,M))})}}function Io(f,p){var x=p.deletions;if(x!==null)for(var P=0;P";case Jp:return":has("+(pv(f)||"")+")";case eg:return'[role="'+f.value+'"]';case tg:return'"'+f.value+'"';case Xc:return'[data-testname="'+f.value+'"]';default:throw Error(a(365))}}function Zc(f,p){var x=[];f=[f,0];for(var P=0;PM&&(M=U),P&=~R}if(P=M,P=Xn()-P,P=(120>P?120:480>P?480:1080>P?1080:1920>P?1920:3e3>P?3e3:4320>P?4320:1960*$4(P/1960))-P,10f?16:f,Tt===null)var P=!1;else{if(f=Tt,Tt=null,og=0,Wt&6)throw Error(a(331));var M=Wt;for(Wt|=4,st=f.current;st!==null;){var R=st,U=R.child;if(st.flags&16){var ae=R.deletions;if(ae!==null){for(var he=0;heXn()-vv?xl(f,0):mv|=x),pi(f,p)}function wv(f,p){p===0&&(f.mode&1?(p=Mo,Mo<<=1,!(Mo&130023424)&&(Mo=4194304)):p=1);var x=_i();f=la(f,p),f!==null&&($a(f,p,x),pi(f,x))}function B4(f){var p=f.memoizedState,x=0;p!==null&&(x=p.retryLane),wv(f,x)}function rb(f,p){var x=0;switch(f.tag){case 13:var P=f.stateNode,M=f.memoizedState;M!==null&&(x=M.retryLane);break;case 19:P=f.stateNode;break;default:throw Error(a(314))}P!==null&&P.delete(p),wv(f,x)}var Cv;Cv=function(f,p,x){if(f!==null)if(f.memoizedProps!==p.pendingProps||ui.current)Ji=!0;else{if(!(f.lanes&x)&&!(p.flags&128))return Ji=!1,D4(f,p,x);Ji=!!(f.flags&131072)}else Ji=!1,zn&&p.flags&1048576&&z0(p,Ar,p.index);switch(p.lanes=0,p.tag){case 2:var P=p.type;Wa(f,p),f=p.pendingProps;var M=al(p,Hr.current);Ac(p,x),M=Y0(null,p,P,f,M,x);var R=jc();return p.flags|=1,typeof M=="object"&&M!==null&&typeof M.render=="function"&&M.$$typeof===void 0?(p.tag=1,p.memoizedState=null,p.updateQueue=null,ci(P)?(R=!0,ws(p)):R=!1,p.memoizedState=M.state!==null&&M.state!==void 0?M.state:null,U0(p),M.updater=ua,p.stateNode=M,M._reactInternals=p,V0(p,P,f,x),p=ca(null,p,P,!0,R,x)):(p.tag=0,zn&&R&&Ii(p),Ni(null,p,M,x),p=p.child),p;case 16:P=p.elementType;e:{switch(Wa(f,p),f=p.pendingProps,M=P._init,P=M(P._payload),p.type=P,M=p.tag=fg(P),f=sa(P,f),M){case 0:p=iv(null,p,P,f,x);break e;case 1:p=K2(null,p,P,f,x);break e;case 11:p=U2(null,p,P,f,x);break e;case 14:p=hl(null,p,P,sa(P.type,f),x);break e}throw Error(a(306,P,""))}return p;case 0:return P=p.type,M=p.pendingProps,M=p.elementType===P?M:sa(P,M),iv(f,p,P,M,x);case 1:return P=p.type,M=p.pendingProps,M=p.elementType===P?M:sa(P,M),K2(f,p,P,M,x);case 3:e:{if(Y2(p),f===null)throw Error(a(387));P=p.pendingProps,R=p.memoizedState,M=R.element,A2(f,p),jp(p,P,null,x);var U=p.memoizedState;if(P=U.element,bt&&R.isDehydrated)if(R={element:P,isDehydrated:!1,cache:U.cache,pendingSuspenseBoundaries:U.pendingSuspenseBoundaries,transitions:U.transitions},p.updateQueue.baseState=R,p.memoizedState=R,p.flags&256){M=Vc(Error(a(423)),p),p=X2(f,p,P,x,M);break e}else if(P!==M){M=Vc(Error(a(424)),p),p=X2(f,p,P,x,M);break e}else for(bt&&(Ao=M0(p.stateNode.containerInfo),Zn=p,zn=!0,Zi=null,Oo=!1),x=j2(p,null,P,x),p.child=x;x;)x.flags=x.flags&-3|4096,x=x.sibling;else{if(Mc(),P===M){p=Es(f,p,x);break e}Ni(f,p,P,x)}p=p.child}return p;case 5:return Lt(p),f===null&&kf(p),P=p.type,M=p.pendingProps,R=f!==null?f.memoizedProps:null,U=M.children,Le(P,M)?U=null:R!==null&&Le(P,R)&&(p.flags|=32),q2(f,p),Ni(f,p,U,x),p.child;case 6:return f===null&&kf(p),null;case 13:return Z2(f,p,x);case 4:return me(p,p.stateNode.containerInfo),P=p.pendingProps,f===null?p.child=Rc(p,null,P,x):Ni(f,p,P,x),p.child;case 11:return P=p.type,M=p.pendingProps,M=p.elementType===P?M:sa(P,M),U2(f,p,P,M,x);case 7:return Ni(f,p,p.pendingProps,x),p.child;case 8:return Ni(f,p,p.pendingProps.children,x),p.child;case 12:return Ni(f,p,p.pendingProps.children,x),p.child;case 10:e:{if(P=p.type._context,M=p.pendingProps,R=p.memoizedProps,U=M.value,L2(p,P,U),R!==null)if(q(R.value,U)){if(R.children===M.children&&!ui.current){p=Es(f,p,x);break e}}else for(R=p.child,R!==null&&(R.return=p);R!==null;){var ae=R.dependencies;if(ae!==null){U=R.child;for(var he=ae.firstContext;he!==null;){if(he.context===P){if(R.tag===1){he=_s(-1,x&-x),he.tag=2;var We=R.updateQueue;if(We!==null){We=We.shared;var ct=We.pending;ct===null?he.next=he:(he.next=ct.next,ct.next=he),We.pending=he}}R.lanes|=x,he=R.alternate,he!==null&&(he.lanes|=x),Lf(R.return,x,p),ae.lanes|=x;break}he=he.next}}else if(R.tag===10)U=R.type===p.type?null:R.child;else if(R.tag===18){if(U=R.return,U===null)throw Error(a(341));U.lanes|=x,ae=U.alternate,ae!==null&&(ae.lanes|=x),Lf(U,x,p),U=R.sibling}else U=R.child;if(U!==null)U.return=R;else for(U=R;U!==null;){if(U===p){U=null;break}if(R=U.sibling,R!==null){R.return=U.return,U=R;break}U=U.return}R=U}Ni(f,p,M.children,x),p=p.child}return p;case 9:return M=p.type,P=p.pendingProps.children,Ac(p,x),M=co(M),P=P(M),p.flags|=1,Ni(f,p,P,x),p.child;case 14:return P=p.type,M=sa(P,p.pendingProps),M=sa(P.type,M),hl(f,p,P,M,x);case 15:return V2(f,p,p.type,p.pendingProps,x);case 17:return P=p.type,M=p.pendingProps,M=p.elementType===P?M:sa(P,M),Wa(f,p),p.tag=1,ci(P)?(f=!0,ws(p)):f=!1,Ac(p,x),R2(p,P,M),V0(p,P,M,x),ca(null,p,P,!0,f,x);case 19:return J2(f,p,x);case 22:return G2(f,p,x)}throw Error(a(156,p.tag))};function Bi(f,p){return Ec(f,p)}function Ua(f,p,x,P){this.tag=f,this.key=x,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=p,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=P,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function No(f,p,x,P){return new Ua(f,p,x,P)}function _v(f){return f=f.prototype,!(!f||!f.isReactComponent)}function fg(f){if(typeof f=="function")return _v(f)?1:0;if(f!=null){if(f=f.$$typeof,f===w)return 11;if(f===k)return 14}return 2}function go(f,p){var x=f.alternate;return x===null?(x=No(f.tag,p,f.key,f.mode),x.elementType=f.elementType,x.type=f.type,x.stateNode=f.stateNode,x.alternate=f,f.alternate=x):(x.pendingProps=p,x.type=f.type,x.flags=0,x.subtreeFlags=0,x.deletions=null),x.flags=f.flags&14680064,x.childLanes=f.childLanes,x.lanes=f.lanes,x.child=f.child,x.memoizedProps=f.memoizedProps,x.memoizedState=f.memoizedState,x.updateQueue=f.updateQueue,p=f.dependencies,x.dependencies=p===null?null:{lanes:p.lanes,firstContext:p.firstContext},x.sibling=f.sibling,x.index=f.index,x.ref=f.ref,x}function Xf(f,p,x,P,M,R){var U=2;if(P=f,typeof f=="function")_v(f)&&(U=1);else if(typeof f=="string")U=5;else e:switch(f){case d:return Cl(x.children,M,R,p);case h:U=8,M|=8;break;case m:return f=No(12,x,p,M|2),f.elementType=m,f.lanes=R,f;case E:return f=No(13,x,p,M),f.elementType=E,f.lanes=R,f;case _:return f=No(19,x,p,M),f.elementType=_,f.lanes=R,f;case L:return hg(x,M,R,p);default:if(typeof f=="object"&&f!==null)switch(f.$$typeof){case y:U=10;break e;case b:U=9;break e;case w:U=11;break e;case k:U=14;break e;case T:U=16,P=null;break e}throw Error(a(130,f==null?f:typeof f,""))}return p=No(U,x,p,M),p.elementType=f,p.type=P,p.lanes=R,p}function Cl(f,p,x,P){return f=No(7,f,P,p),f.lanes=x,f}function hg(f,p,x,P){return f=No(22,f,P,p),f.elementType=L,f.lanes=x,f.stateNode={isHidden:!1},f}function pg(f,p,x){return f=No(6,f,null,p),f.lanes=x,f}function _l(f,p,x){return p=No(4,f.children!==null?f.children:[],f.key,p),p.lanes=x,p.stateNode={containerInfo:f.containerInfo,pendingChildren:null,implementation:f.implementation},p}function Zf(f,p,x,P,M){this.tag=p,this.containerInfo=f,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=tt,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=kc(0),this.expirationTimes=kc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=kc(0),this.identifierPrefix=P,this.onRecoverableError=M,bt&&(this.mutableSourceEagerHydrationData=null)}function ib(f,p,x,P,M,R,U,ae,he){return f=new Zf(f,p,x,ae,he),p===1?(p=1,R===!0&&(p|=8)):p=0,R=No(3,null,null,p),f.current=R,R.stateNode=f,R.memoizedState={element:P,isDehydrated:x,cache:null,transitions:null,pendingSuspenseBoundaries:null},U0(R),f}function kv(f){if(!f)return ia;f=f._reactInternals;e:{if(W(f)!==f||f.tag!==1)throw Error(a(170));var p=f;do{switch(p.tag){case 3:p=p.stateNode.context;break e;case 1:if(ci(p.type)){p=p.stateNode.__reactInternalMemoizedMergedChildContext;break e}}p=p.return}while(p!==null);throw Error(a(171))}if(f.tag===1){var x=f.type;if(ci(x))return gu(f,x,p)}return p}function Ev(f){var p=f._reactInternals;if(p===void 0)throw typeof f.render=="function"?Error(a(188)):(f=Object.keys(f).join(","),Error(a(268,f)));return f=ne(p),f===null?null:f.stateNode}function Qf(f,p){if(f=f.memoizedState,f!==null&&f.dehydrated!==null){var x=f.retryLane;f.retryLane=x!==0&&x=We&&R>=Rt&&M<=ct&&U<=it){f.splice(p,1);break}else if(P!==We||x.width!==he.width||itU){if(!(R!==Rt||x.height!==he.height||ctM)){We>P&&(he.width+=We-P,he.x=P),ctR&&(he.height+=Rt-R,he.y=R),itx&&(x=U)),Uig&&(h.flags|=128,P=!0,qc(M,!1),h.lanes=4194304)}else{if(!P)if(f=dn(R),f!==null){if(h.flags|=128,P=!0,f=f.updateQueue,f!==null&&(h.updateQueue=f,h.flags|=4),qc(M,!0),M.tail===null&&M.tailMode==="hidden"&&!R.alternate&&!zn)return Si(h),null}else 2*Xn()-M.renderingStartTime>ig&&x!==1073741824&&(h.flags|=128,P=!0,qc(M,!1),h.lanes=4194304);M.isBackwards?(R.sibling=h.child,h.child=R):(f=M.last,f!==null?f.sibling=R:h.child=R,M.last=R)}return M.tail!==null?(h=M.tail,M.rendering=h,M.tail=h.sibling,M.renderingStartTime=Xn(),h.sibling=null,f=Nt.current,wn(Nt,P?f&1|2:f&1),h):(Si(h),null);case 22:case 23:return nd(),x=h.memoizedState!==null,f!==null&&f.memoizedState!==null!==x&&(h.flags|=8192),x&&h.mode&1?ho&1073741824&&(Si(h),Be&&h.subtreeFlags&6&&(h.flags|=8192)):Si(h),null;case 24:return null;case 25:return null}throw Error(a(156,h.tag))}function uv(f,h){switch(H0(h),h.tag){case 1:return ci(h.type)&&Ss(),f=h.flags,f&65536?(h.flags=f&-65537|128,h):null;case 3:return rt(),Mn(ui),Mn(Hr),q0(),f=h.flags,f&65536&&!(f&128)?(h.flags=f&-65537|128,h):null;case 5:return en(h),null;case 13:if(Mn(Nt),f=h.memoizedState,f!==null&&f.dehydrated!==null){if(h.alternate===null)throw Error(a(340));Mc()}return f=h.flags,f&65536?(h.flags=f&-65537|128,h):null;case 19:return Mn(Nt),null;case 4:return rt(),null;case 10:return Mf(h.type._context),null;case 22:case 23:return nd(),null;case 24:return null;default:return null}}var pl=!1,Ur=!1,N4=typeof WeakSet=="function"?WeakSet:Set,st=null;function Kc(f,h){var x=f.ref;if(x!==null)if(typeof x=="function")try{x(null)}catch(P){Qn(f,h,P)}else x.current=null}function fa(f,h,x){try{x()}catch(P){Qn(f,h,P)}}var Vp=!1;function Cu(f,h){for(Y(f.containerInfo),st=h;st!==null;)if(f=st,h=f.child,(f.subtreeFlags&1028)!==0&&h!==null)h.return=f,st=h;else for(;st!==null;){f=st;try{var x=f.alternate;if(f.flags&1024)switch(f.tag){case 0:case 11:case 15:break;case 1:if(x!==null){var P=x.memoizedProps,M=x.memoizedState,R=f.stateNode,U=R.getSnapshotBeforeUpdate(f.elementType===f.type?P:sa(f.type,P),M);R.__reactInternalSnapshotBeforeUpdate=U}break;case 3:Be&&Xi(f.stateNode.containerInfo);break;case 5:case 6:case 4:case 17:break;default:throw Error(a(163))}}catch(ae){Qn(f,f.return,ae)}if(h=f.sibling,h!==null){h.return=f.return,st=h;break}st=f.return}return x=Vp,Vp=!1,x}function wi(f,h,x){var P=h.updateQueue;if(P=P!==null?P.lastEffect:null,P!==null){var M=P=P.next;do{if((M.tag&f)===f){var R=M.destroy;M.destroy=void 0,R!==void 0&&fa(h,x,R)}M=M.next}while(M!==P)}}function Gp(f,h){if(h=h.updateQueue,h=h!==null?h.lastEffect:null,h!==null){var x=h=h.next;do{if((x.tag&f)===f){var P=x.create;x.destroy=P()}x=x.next}while(x!==h)}}function qp(f){var h=f.ref;if(h!==null){var x=f.stateNode;switch(f.tag){case 5:f=X(x);break;default:f=x}typeof h=="function"?h(f):h.current=f}}function cv(f){var h=f.alternate;h!==null&&(f.alternate=null,cv(h)),f.child=null,f.deletions=null,f.sibling=null,f.tag===5&&(h=f.stateNode,h!==null&&mt(h)),f.stateNode=null,f.return=null,f.dependencies=null,f.memoizedProps=null,f.memoizedState=null,f.pendingProps=null,f.stateNode=null,f.updateQueue=null}function Yc(f){return f.tag===5||f.tag===3||f.tag===4}function Ps(f){e:for(;;){for(;f.sibling===null;){if(f.return===null||Yc(f.return))return null;f=f.return}for(f.sibling.return=f.return,f=f.sibling;f.tag!==5&&f.tag!==6&&f.tag!==18;){if(f.flags&2||f.child===null||f.tag===4)continue e;f.child.return=f,f=f.child}if(!(f.flags&2))return f.stateNode}}function Kp(f,h,x){var P=f.tag;if(P===5||P===6)f=f.stateNode,h?zr(x,f,h):Ct(x,f);else if(P!==4&&(f=f.child,f!==null))for(Kp(f,h,x),f=f.sibling;f!==null;)Kp(f,h,x),f=f.sibling}function dv(f,h,x){var P=f.tag;if(P===5||P===6)f=f.stateNode,h?pt(x,f,h):Me(x,f);else if(P!==4&&(f=f.child,f!==null))for(dv(f,h,x),f=f.sibling;f!==null;)dv(f,h,x),f=f.sibling}var Ir=null,ha=!1;function pa(f,h,x){for(x=x.child;x!==null;)Vr(f,h,x),x=x.sibling}function Vr(f,h,x){if(qt&&typeof qt.onCommitFiberUnmount=="function")try{qt.onCommitFiberUnmount(cn,x)}catch{}switch(x.tag){case 5:Ur||Kc(x,h);case 6:if(Be){var P=Ir,M=ha;Ir=null,pa(f,h,x),Ir=P,ha=M,Ir!==null&&(ha?Bn(Ir,x.stateNode):rr(Ir,x.stateNode))}else pa(f,h,x);break;case 18:Be&&Ir!==null&&(ha?N0(Ir,x.stateNode):j0(Ir,x.stateNode));break;case 4:Be?(P=Ir,M=ha,Ir=x.stateNode.containerInfo,ha=!0,pa(f,h,x),Ir=P,ha=M):(Ae&&(P=x.stateNode.containerInfo,M=Na(P),bc(P,M)),pa(f,h,x));break;case 0:case 11:case 14:case 15:if(!Ur&&(P=x.updateQueue,P!==null&&(P=P.lastEffect,P!==null))){M=P=P.next;do{var R=M,U=R.destroy;R=R.tag,U!==void 0&&(R&2||R&4)&&fa(x,h,U),M=M.next}while(M!==P)}pa(f,h,x);break;case 1:if(!Ur&&(Kc(x,h),P=x.stateNode,typeof P.componentWillUnmount=="function"))try{P.props=x.memoizedProps,P.state=x.memoizedState,P.componentWillUnmount()}catch(ae){Qn(x,h,ae)}pa(f,h,x);break;case 21:pa(f,h,x);break;case 22:x.mode&1?(Ur=(P=Ur)||x.memoizedState!==null,pa(f,h,x),Ur=P):pa(f,h,x);break;default:pa(f,h,x)}}function Yp(f){var h=f.updateQueue;if(h!==null){f.updateQueue=null;var x=f.stateNode;x===null&&(x=f.stateNode=new N4),h.forEach(function(P){var M=rb.bind(null,f,P);x.has(P)||(x.add(P),P.then(M,M))})}}function Io(f,h){var x=h.deletions;if(x!==null)for(var P=0;P";case Jp:return":has("+(pv(f)||"")+")";case eg:return'[role="'+f.value+'"]';case tg:return'"'+f.value+'"';case Xc:return'[data-testname="'+f.value+'"]';default:throw Error(a(365))}}function Zc(f,h){var x=[];f=[f,0];for(var P=0;PM&&(M=U),P&=~R}if(P=M,P=Xn()-P,P=(120>P?120:480>P?480:1080>P?1080:1920>P?1920:3e3>P?3e3:4320>P?4320:1960*$4(P/1960))-P,10f?16:f,Tt===null)var P=!1;else{if(f=Tt,Tt=null,og=0,Wt&6)throw Error(a(331));var M=Wt;for(Wt|=4,st=f.current;st!==null;){var R=st,U=R.child;if(st.flags&16){var ae=R.deletions;if(ae!==null){for(var he=0;heXn()-vv?xl(f,0):mv|=x),pi(f,h)}function wv(f,h){h===0&&(f.mode&1?(h=Mo,Mo<<=1,!(Mo&130023424)&&(Mo=4194304)):h=1);var x=_i();f=la(f,h),f!==null&&($a(f,h,x),pi(f,x))}function B4(f){var h=f.memoizedState,x=0;h!==null&&(x=h.retryLane),wv(f,x)}function rb(f,h){var x=0;switch(f.tag){case 13:var P=f.stateNode,M=f.memoizedState;M!==null&&(x=M.retryLane);break;case 19:P=f.stateNode;break;default:throw Error(a(314))}P!==null&&P.delete(h),wv(f,x)}var Cv;Cv=function(f,h,x){if(f!==null)if(f.memoizedProps!==h.pendingProps||ui.current)Ji=!0;else{if(!(f.lanes&x)&&!(h.flags&128))return Ji=!1,D4(f,h,x);Ji=!!(f.flags&131072)}else Ji=!1,zn&&h.flags&1048576&&z0(h,Ar,h.index);switch(h.lanes=0,h.tag){case 2:var P=h.type;Wa(f,h),f=h.pendingProps;var M=al(h,Hr.current);Ac(h,x),M=Y0(null,h,P,f,M,x);var R=jc();return h.flags|=1,typeof M=="object"&&M!==null&&typeof M.render=="function"&&M.$$typeof===void 0?(h.tag=1,h.memoizedState=null,h.updateQueue=null,ci(P)?(R=!0,ws(h)):R=!1,h.memoizedState=M.state!==null&&M.state!==void 0?M.state:null,U0(h),M.updater=ua,h.stateNode=M,M._reactInternals=h,V0(h,P,f,x),h=ca(null,h,P,!0,R,x)):(h.tag=0,zn&&R&&Ii(h),Ni(null,h,M,x),h=h.child),h;case 16:P=h.elementType;e:{switch(Wa(f,h),f=h.pendingProps,M=P._init,P=M(P._payload),h.type=P,M=h.tag=fg(P),f=sa(P,f),M){case 0:h=iv(null,h,P,f,x);break e;case 1:h=K2(null,h,P,f,x);break e;case 11:h=U2(null,h,P,f,x);break e;case 14:h=hl(null,h,P,sa(P.type,f),x);break e}throw Error(a(306,P,""))}return h;case 0:return P=h.type,M=h.pendingProps,M=h.elementType===P?M:sa(P,M),iv(f,h,P,M,x);case 1:return P=h.type,M=h.pendingProps,M=h.elementType===P?M:sa(P,M),K2(f,h,P,M,x);case 3:e:{if(Y2(h),f===null)throw Error(a(387));P=h.pendingProps,R=h.memoizedState,M=R.element,A2(f,h),jp(h,P,null,x);var U=h.memoizedState;if(P=U.element,bt&&R.isDehydrated)if(R={element:P,isDehydrated:!1,cache:U.cache,pendingSuspenseBoundaries:U.pendingSuspenseBoundaries,transitions:U.transitions},h.updateQueue.baseState=R,h.memoizedState=R,h.flags&256){M=Vc(Error(a(423)),h),h=X2(f,h,P,x,M);break e}else if(P!==M){M=Vc(Error(a(424)),h),h=X2(f,h,P,x,M);break e}else for(bt&&(Ao=M0(h.stateNode.containerInfo),Zn=h,zn=!0,Zi=null,Oo=!1),x=j2(h,null,P,x),h.child=x;x;)x.flags=x.flags&-3|4096,x=x.sibling;else{if(Mc(),P===M){h=Es(f,h,x);break e}Ni(f,h,P,x)}h=h.child}return h;case 5:return Lt(h),f===null&&kf(h),P=h.type,M=h.pendingProps,R=f!==null?f.memoizedProps:null,U=M.children,Le(P,M)?U=null:R!==null&&Le(P,R)&&(h.flags|=32),q2(f,h),Ni(f,h,U,x),h.child;case 6:return f===null&&kf(h),null;case 13:return Z2(f,h,x);case 4:return me(h,h.stateNode.containerInfo),P=h.pendingProps,f===null?h.child=Rc(h,null,P,x):Ni(f,h,P,x),h.child;case 11:return P=h.type,M=h.pendingProps,M=h.elementType===P?M:sa(P,M),U2(f,h,P,M,x);case 7:return Ni(f,h,h.pendingProps,x),h.child;case 8:return Ni(f,h,h.pendingProps.children,x),h.child;case 12:return Ni(f,h,h.pendingProps.children,x),h.child;case 10:e:{if(P=h.type._context,M=h.pendingProps,R=h.memoizedProps,U=M.value,L2(h,P,U),R!==null)if(q(R.value,U)){if(R.children===M.children&&!ui.current){h=Es(f,h,x);break e}}else for(R=h.child,R!==null&&(R.return=h);R!==null;){var ae=R.dependencies;if(ae!==null){U=R.child;for(var he=ae.firstContext;he!==null;){if(he.context===P){if(R.tag===1){he=_s(-1,x&-x),he.tag=2;var We=R.updateQueue;if(We!==null){We=We.shared;var ct=We.pending;ct===null?he.next=he:(he.next=ct.next,ct.next=he),We.pending=he}}R.lanes|=x,he=R.alternate,he!==null&&(he.lanes|=x),Lf(R.return,x,h),ae.lanes|=x;break}he=he.next}}else if(R.tag===10)U=R.type===h.type?null:R.child;else if(R.tag===18){if(U=R.return,U===null)throw Error(a(341));U.lanes|=x,ae=U.alternate,ae!==null&&(ae.lanes|=x),Lf(U,x,h),U=R.sibling}else U=R.child;if(U!==null)U.return=R;else for(U=R;U!==null;){if(U===h){U=null;break}if(R=U.sibling,R!==null){R.return=U.return,U=R;break}U=U.return}R=U}Ni(f,h,M.children,x),h=h.child}return h;case 9:return M=h.type,P=h.pendingProps.children,Ac(h,x),M=co(M),P=P(M),h.flags|=1,Ni(f,h,P,x),h.child;case 14:return P=h.type,M=sa(P,h.pendingProps),M=sa(P.type,M),hl(f,h,P,M,x);case 15:return V2(f,h,h.type,h.pendingProps,x);case 17:return P=h.type,M=h.pendingProps,M=h.elementType===P?M:sa(P,M),Wa(f,h),h.tag=1,ci(P)?(f=!0,ws(h)):f=!1,Ac(h,x),R2(h,P,M),V0(h,P,M,x),ca(null,h,P,!0,f,x);case 19:return J2(f,h,x);case 22:return G2(f,h,x)}throw Error(a(156,h.tag))};function Bi(f,h){return Ec(f,h)}function Ua(f,h,x,P){this.tag=f,this.key=x,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=h,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=P,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function No(f,h,x,P){return new Ua(f,h,x,P)}function _v(f){return f=f.prototype,!(!f||!f.isReactComponent)}function fg(f){if(typeof f=="function")return _v(f)?1:0;if(f!=null){if(f=f.$$typeof,f===w)return 11;if(f===k)return 14}return 2}function go(f,h){var x=f.alternate;return x===null?(x=No(f.tag,h,f.key,f.mode),x.elementType=f.elementType,x.type=f.type,x.stateNode=f.stateNode,x.alternate=f,f.alternate=x):(x.pendingProps=h,x.type=f.type,x.flags=0,x.subtreeFlags=0,x.deletions=null),x.flags=f.flags&14680064,x.childLanes=f.childLanes,x.lanes=f.lanes,x.child=f.child,x.memoizedProps=f.memoizedProps,x.memoizedState=f.memoizedState,x.updateQueue=f.updateQueue,h=f.dependencies,x.dependencies=h===null?null:{lanes:h.lanes,firstContext:h.firstContext},x.sibling=f.sibling,x.index=f.index,x.ref=f.ref,x}function Xf(f,h,x,P,M,R){var U=2;if(P=f,typeof f=="function")_v(f)&&(U=1);else if(typeof f=="string")U=5;else e:switch(f){case d:return Cl(x.children,M,R,h);case p:U=8,M|=8;break;case m:return f=No(12,x,h,M|2),f.elementType=m,f.lanes=R,f;case E:return f=No(13,x,h,M),f.elementType=E,f.lanes=R,f;case _:return f=No(19,x,h,M),f.elementType=_,f.lanes=R,f;case L:return hg(x,M,R,h);default:if(typeof f=="object"&&f!==null)switch(f.$$typeof){case y:U=10;break e;case b:U=9;break e;case w:U=11;break e;case k:U=14;break e;case T:U=16,P=null;break e}throw Error(a(130,f==null?f:typeof f,""))}return h=No(U,x,h,M),h.elementType=f,h.type=P,h.lanes=R,h}function Cl(f,h,x,P){return f=No(7,f,P,h),f.lanes=x,f}function hg(f,h,x,P){return f=No(22,f,P,h),f.elementType=L,f.lanes=x,f.stateNode={isHidden:!1},f}function pg(f,h,x){return f=No(6,f,null,h),f.lanes=x,f}function _l(f,h,x){return h=No(4,f.children!==null?f.children:[],f.key,h),h.lanes=x,h.stateNode={containerInfo:f.containerInfo,pendingChildren:null,implementation:f.implementation},h}function Zf(f,h,x,P,M){this.tag=h,this.containerInfo=f,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=tt,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=kc(0),this.expirationTimes=kc(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=kc(0),this.identifierPrefix=P,this.onRecoverableError=M,bt&&(this.mutableSourceEagerHydrationData=null)}function ib(f,h,x,P,M,R,U,ae,he){return f=new Zf(f,h,x,ae,he),h===1?(h=1,R===!0&&(h|=8)):h=0,R=No(3,null,null,h),f.current=R,R.stateNode=f,R.memoizedState={element:P,isDehydrated:x,cache:null,transitions:null,pendingSuspenseBoundaries:null},U0(R),f}function kv(f){if(!f)return ia;f=f._reactInternals;e:{if(W(f)!==f||f.tag!==1)throw Error(a(170));var h=f;do{switch(h.tag){case 3:h=h.stateNode.context;break e;case 1:if(ci(h.type)){h=h.stateNode.__reactInternalMemoizedMergedChildContext;break e}}h=h.return}while(h!==null);throw Error(a(171))}if(f.tag===1){var x=f.type;if(ci(x))return gu(f,x,h)}return h}function Ev(f){var h=f._reactInternals;if(h===void 0)throw typeof f.render=="function"?Error(a(188)):(f=Object.keys(f).join(","),Error(a(268,f)));return f=ne(h),f===null?null:f.stateNode}function Qf(f,h){if(f=f.memoizedState,f!==null&&f.dehydrated!==null){var x=f.retryLane;f.retryLane=x!==0&&x=We&&R>=Rt&&M<=ct&&U<=it){f.splice(h,1);break}else if(P!==We||x.width!==he.width||itU){if(!(R!==Rt||x.height!==he.height||ctM)){We>P&&(he.width+=We-P,he.x=P),ctR&&(he.height+=Rt-R,he.y=R),itx&&(x=U)),U ")+` No matching component was found for: - `)+f.join(" > ")}return null},n.getPublicRootInstance=function(f){if(f=f.current,!f.child)return null;switch(f.child.tag){case 5:return X(f.child.stateNode);default:return f.child.stateNode}},n.injectIntoDevTools=function(f){if(f={bundleType:f.bundleType,version:f.version,rendererPackageName:f.rendererPackageName,rendererConfig:f.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:s.ReactCurrentDispatcher,findHostInstanceByFiber:gg,findFiberByHostInstance:f.findFiberByHostInstance||Pv,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")f=!1;else{var p=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(p.isDisabled||!p.supportsFiber)f=!0;else{try{cn=p.inject(f),qt=p}catch{}f=!!p.checkDCE}}return f},n.isAlreadyRendering=function(){return!1},n.observeVisibleRects=function(f,p,x,P){if(!se)throw Error(a(363));f=gv(f,p);var M=Mt(f,x,P).disconnect;return{disconnect:function(){M()}}},n.registerMutableSourceForHydration=function(f,p){var x=p._getVersion;x=x(p._source),f.mutableSourceEagerHydrationData==null?f.mutableSourceEagerHydrationData=[p,x]:f.mutableSourceEagerHydrationData.push(p,x)},n.runWithPriority=function(f,p){var x=Gt;try{return Gt=f,p()}finally{Gt=x}},n.shouldError=function(){return null},n.shouldSuspend=function(){return!1},n.updateContainer=function(f,p,x,P){var M=p.current,R=_i(),U=qr(M);return x=kv(x),p.context===null?p.context=x:p.pendingContext=x,p=_s(R,U),p.payload={element:f},P=P===void 0?null:P,P!==null&&(p.callback=P),f=dl(M,p,U),f!==null&&(jo(f,M,U,R),Dp(f,M,U)),U},n};(function(e){e.exports=IPe})(RPe);const DPe=S7(o7);var $3={},jPe={get exports(){return $3},set exports(e){$3=e}},vp={};/** + `)+f.join(" > ")}return null},n.getPublicRootInstance=function(f){if(f=f.current,!f.child)return null;switch(f.child.tag){case 5:return X(f.child.stateNode);default:return f.child.stateNode}},n.injectIntoDevTools=function(f){if(f={bundleType:f.bundleType,version:f.version,rendererPackageName:f.rendererPackageName,rendererConfig:f.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:s.ReactCurrentDispatcher,findHostInstanceByFiber:gg,findFiberByHostInstance:f.findFiberByHostInstance||Pv,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.2.0"},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")f=!1;else{var h=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(h.isDisabled||!h.supportsFiber)f=!0;else{try{cn=h.inject(f),qt=h}catch{}f=!!h.checkDCE}}return f},n.isAlreadyRendering=function(){return!1},n.observeVisibleRects=function(f,h,x,P){if(!se)throw Error(a(363));f=gv(f,h);var M=Mt(f,x,P).disconnect;return{disconnect:function(){M()}}},n.registerMutableSourceForHydration=function(f,h){var x=h._getVersion;x=x(h._source),f.mutableSourceEagerHydrationData==null?f.mutableSourceEagerHydrationData=[h,x]:f.mutableSourceEagerHydrationData.push(h,x)},n.runWithPriority=function(f,h){var x=Gt;try{return Gt=f,h()}finally{Gt=x}},n.shouldError=function(){return null},n.shouldSuspend=function(){return!1},n.updateContainer=function(f,h,x,P){var M=h.current,R=_i(),U=qr(M);return x=kv(x),h.context===null?h.context=x:h.pendingContext=x,h=_s(R,U),h.payload={element:f},P=P===void 0?null:P,P!==null&&(h.callback=P),f=dl(M,h,U),f!==null&&(jo(f,M,U,R),Dp(f,M,U)),U},n};(function(e){e.exports=DPe})(IPe);const jPe=S7(o7);var $3={},NPe={get exports(){return $3},set exports(e){$3=e}},vp={};/** * @license React * react-reconciler-constants.production.min.js * @@ -531,14 +531,14 @@ No matching component was found for: * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. - */vp.ConcurrentRoot=1;vp.ContinuousEventPriority=4;vp.DefaultEventPriority=16;vp.DiscreteEventPriority=1;vp.IdleEventPriority=536870912;vp.LegacyRoot=0;(function(e){e.exports=vp})(jPe);const xD={children:!0,ref:!0,key:!0,style:!0,forwardedRef:!0,unstable_applyCache:!0,unstable_applyDrawHitFromCache:!0};let SD=!1,wD=!1;const pP=".react-konva-event",NPe=`ReactKonva: You have a Konva node with draggable = true and position defined but no onDragMove or onDragEnd events are handled. + */vp.ConcurrentRoot=1;vp.ContinuousEventPriority=4;vp.DefaultEventPriority=16;vp.DiscreteEventPriority=1;vp.IdleEventPriority=536870912;vp.LegacyRoot=0;(function(e){e.exports=vp})(NPe);const xD={children:!0,ref:!0,key:!0,style:!0,forwardedRef:!0,unstable_applyCache:!0,unstable_applyDrawHitFromCache:!0};let SD=!1,wD=!1;const pP=".react-konva-event",$Pe=`ReactKonva: You have a Konva node with draggable = true and position defined but no onDragMove or onDragEnd events are handled. Position of a node will be changed during drag&drop, so you should update state of the react app as well. Consider to add onDragMove or onDragEnd events. For more info see: https://github.com/konvajs/react-konva/issues/256 -`,$Pe=`ReactKonva: You are using "zIndex" attribute for a Konva node. +`,FPe=`ReactKonva: You are using "zIndex" attribute for a Konva node. react-konva may get confused with ordering. Just define correct order of elements in your render function of a component. For more info see: https://github.com/konvajs/react-konva/issues/194 -`,FPe={};function w4(e,t,n=FPe){if(!SD&&"zIndex"in t&&(console.warn($Pe),SD=!0),!wD&&t.draggable){var r=t.x!==void 0||t.y!==void 0,i=t.onDragEnd||t.onDragMove;r&&!i&&(console.warn(NPe),wD=!0)}for(var o in n)if(!xD[o]){var a=o.slice(0,2)==="on",s=n[o]!==t[o];if(a&&s){var l=o.substr(2).toLowerCase();l.substr(0,7)==="content"&&(l="content"+l.substr(7,1).toUpperCase()+l.substr(8)),e.off(l,n[o])}var u=!t.hasOwnProperty(o);u&&e.setAttr(o,void 0)}var d=t._useStrictMode,h={},m=!1;const y={};for(var o in t)if(!xD[o]){var a=o.slice(0,2)==="on",b=n[o]!==t[o];if(a&&b){var l=o.substr(2).toLowerCase();l.substr(0,7)==="content"&&(l="content"+l.substr(7,1).toUpperCase()+l.substr(8)),t[o]&&(y[l]=t[o])}!a&&(t[o]!==n[o]||d&&t[o]!==e.getAttr(o))&&(m=!0,h[o]=t[o])}m&&(e.setAttrs(h),hf(e));for(var l in y)e.on(l+pP,y[l])}function hf(e){if(!ft.autoDrawEnabled){var t=e.getLayer()||e.getStage();t&&t.batchDraw()}}const mq={},BPe={};Qh.Node.prototype._applyProps=w4;function zPe(e,t){if(typeof t=="string"){console.error(`Do not use plain text as child of Konva.Node. You are using text: ${t}`);return}e.add(t),hf(e)}function HPe(e,t,n){let r=Qh[e];r||(console.error(`Konva has no node with the type ${e}. Group will be used instead. If you use minimal version of react-konva, just import required nodes into Konva: "import "konva/lib/shapes/${e}" If you want to render DOM elements as part of canvas tree take a look into this demo: https://konvajs.github.io/docs/react/DOM_Portal.html`),r=Qh.Group);const i={},o={};for(var a in t){var s=a.slice(0,2)==="on";s?o[a]=t[a]:i[a]=t[a]}const l=new r(i);return w4(l,o),l}function WPe(e,t,n){console.error(`Text components are not supported for now in ReactKonva. Your text is: "${e}"`)}function UPe(e,t,n){return!1}function VPe(e){return e}function GPe(){return null}function qPe(){return null}function KPe(e,t,n,r){return BPe}function YPe(){}function XPe(e){}function ZPe(e,t){return!1}function QPe(){return mq}function JPe(){return mq}const eTe=setTimeout,tTe=clearTimeout,nTe=-1;function rTe(e,t){return!1}const iTe=!1,oTe=!0,aTe=!0;function sTe(e,t){t.parent===e?t.moveToTop():e.add(t),hf(e)}function lTe(e,t){t.parent===e?t.moveToTop():e.add(t),hf(e)}function vq(e,t,n){t._remove(),e.add(t),t.setZIndex(n.getZIndex()),hf(e)}function uTe(e,t,n){vq(e,t,n)}function cTe(e,t){t.destroy(),t.off(pP),hf(e)}function dTe(e,t){t.destroy(),t.off(pP),hf(e)}function fTe(e,t,n){console.error(`Text components are not yet supported in ReactKonva. You text is: "${n}"`)}function hTe(e,t,n){}function pTe(e,t,n,r,i){w4(e,i,r)}function gTe(e){e.hide(),hf(e)}function mTe(e){}function vTe(e,t){(t.visible==null||t.visible)&&e.show()}function yTe(e,t){}function bTe(e){}function xTe(){}const STe=()=>$3.DefaultEventPriority,wTe=Object.freeze(Object.defineProperty({__proto__:null,appendChild:sTe,appendChildToContainer:lTe,appendInitialChild:zPe,cancelTimeout:tTe,clearContainer:bTe,commitMount:hTe,commitTextUpdate:fTe,commitUpdate:pTe,createInstance:HPe,createTextInstance:WPe,detachDeletedInstance:xTe,finalizeInitialChildren:UPe,getChildHostContext:JPe,getCurrentEventPriority:STe,getPublicInstance:VPe,getRootHostContext:QPe,hideInstance:gTe,hideTextInstance:mTe,idlePriority:Th.unstable_IdlePriority,insertBefore:vq,insertInContainerBefore:uTe,isPrimaryRenderer:iTe,noTimeout:nTe,now:Th.unstable_now,prepareForCommit:GPe,preparePortalMount:qPe,prepareUpdate:KPe,removeChild:cTe,removeChildFromContainer:dTe,resetAfterCommit:YPe,resetTextContent:XPe,run:Th.unstable_runWithPriority,scheduleTimeout:eTe,shouldDeprioritizeSubtree:ZPe,shouldSetTextContent:rTe,supportsMutation:aTe,unhideInstance:vTe,unhideTextInstance:yTe,warnsIfNotActing:oTe},Symbol.toStringTag,{value:"Module"}));var CTe=Object.defineProperty,_Te=Object.defineProperties,kTe=Object.getOwnPropertyDescriptors,CD=Object.getOwnPropertySymbols,ETe=Object.prototype.hasOwnProperty,PTe=Object.prototype.propertyIsEnumerable,_D=(e,t,n)=>t in e?CTe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,kD=(e,t)=>{for(var n in t||(t={}))ETe.call(t,n)&&_D(e,n,t[n]);if(CD)for(var n of CD(t))PTe.call(t,n)&&_D(e,n,t[n]);return e},TTe=(e,t)=>_Te(e,kTe(t));function yq(e,t,n){if(!e)return;if(n(e)===!0)return e;let r=t?e.return:e.child;for(;r;){const i=yq(r,t,n);if(i)return i;r=t?null:r.sibling}}function bq(e){try{return Object.defineProperties(e,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return e}}const gP=bq(S.createContext(null));class xq extends S.Component{render(){return S.createElement(gP.Provider,{value:this._reactInternals},this.props.children)}}const{ReactCurrentOwner:MTe,ReactCurrentDispatcher:LTe}=S.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function ATe(){const e=S.useContext(gP);if(!e)throw new Error("its-fine: useFiber must be called within a !");const t=S.useId();return S.useMemo(()=>{var r;return(r=MTe.current)!=null?r:yq(e,!1,i=>{let o=i.memoizedState;for(;o;){if(o.memoizedState===t)return!0;o=o.next}})},[e,t])}function OTe(){var e,t;const n=ATe(),[r]=S.useState(()=>new Map);r.clear();let i=n;for(;i;){const o=(e=i.type)==null?void 0:e._context;o&&o!==gP&&!r.has(o)&&r.set(o,(t=LTe.current)==null?void 0:t.readContext(bq(o))),i=i.return}return S.useMemo(()=>Array.from(r.keys()).reduce((o,a)=>s=>S.createElement(o,null,S.createElement(a.Provider,TTe(kD({},s),{value:r.get(a)}))),o=>S.createElement(xq,kD({},o))),[r])}function RTe(e){const t=Ke.useRef();return Ke.useLayoutEffect(()=>{t.current=e}),t.current}const ITe=e=>{const t=Ke.useRef(),n=Ke.useRef(),r=Ke.useRef(),i=RTe(e),o=OTe(),a=s=>{const{forwardedRef:l}=e;l&&(typeof l=="function"?l(s):l.current=s)};return Ke.useLayoutEffect(()=>(n.current=new Qh.Stage({width:e.width,height:e.height,container:t.current}),a(n.current),r.current=w1.createContainer(n.current,$3.LegacyRoot,!1,null),w1.updateContainer(Ke.createElement(o,{},e.children),r.current),()=>{Qh.isBrowser&&(a(null),w1.updateContainer(null,r.current,null),n.current.destroy())}),[]),Ke.useLayoutEffect(()=>{a(n.current),w4(n.current,e,i),w1.updateContainer(Ke.createElement(o,{},e.children),r.current,null)}),Ke.createElement("div",{ref:t,accessKey:e.accessKey,className:e.className,role:e.role,style:e.style,tabIndex:e.tabIndex,title:e.title})},n1="Layer",uc="Group",cc="Rect",ah="Circle",F3="Line",Sq="Image",DTe="Transformer",w1=DPe(wTe);w1.injectIntoDevTools({findHostInstanceByFiber:()=>null,bundleType:0,version:Ke.version,rendererPackageName:"react-konva"});const jTe=Ke.forwardRef((e,t)=>Ke.createElement(xq,{},Ke.createElement(ITe,{...e,forwardedRef:t}))),NTe=lt([rn,Lr],(e,t)=>{const{tool:n,isMovingBoundingBox:r}=e;return{tool:n,isStaging:t,isMovingBoundingBox:r}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),$Te=()=>{const e=Te(),{tool:t,isStaging:n,isMovingBoundingBox:r}=le(NTe);return{handleDragStart:S.useCallback(()=>{(t==="move"||n)&&!r&&e(S3(!0))},[e,r,n,t]),handleDragMove:S.useCallback(i=>{if(!((t==="move"||n)&&!r))return;const o={x:i.target.x(),y:i.target.y()};e(XW(o))},[e,r,n,t]),handleDragEnd:S.useCallback(()=>{(t==="move"||n)&&!r&&e(S3(!1))},[e,r,n,t])}},FTe=lt([rn,Br,Lr],(e,t,n)=>{const{cursorPosition:r,shouldLockBoundingBox:i,shouldShowBoundingBox:o,tool:a,isMaskEnabled:s,shouldSnapToGrid:l}=e;return{activeTabName:t,isCursorOnCanvas:Boolean(r),shouldLockBoundingBox:i,shouldShowBoundingBox:o,tool:a,isStaging:n,isMaskEnabled:s,shouldSnapToGrid:l}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),BTe=()=>{const e=Te(),{activeTabName:t,shouldShowBoundingBox:n,tool:r,isStaging:i,isMaskEnabled:o,shouldSnapToGrid:a}=le(FTe),s=S.useRef(null),l=jV(),u=()=>e(pE());Je(["shift+c"],()=>{u()},{enabled:()=>!i,preventDefault:!0},[]);const d=()=>e(h2(!o));Je(["h"],()=>{d()},{enabled:()=>!i,preventDefault:!0},[o]),Je(["n"],()=>{e(C3(!a))},{enabled:!0,preventDefault:!0},[a]),Je("esc",()=>{e(u3e())},{enabled:()=>!0,preventDefault:!0}),Je("shift+h",()=>{e(m3e(!n))},{enabled:()=>!i,preventDefault:!0},[t,n]),Je(["space"],h=>{h.repeat||(l==null||l.container().focus(),r!=="move"&&(s.current=r,e(Jl("move"))),r==="move"&&s.current&&s.current!=="move"&&(e(Jl(s.current)),s.current="move"))},{keyup:!0,keydown:!0,preventDefault:!0},[r,s])},mP=e=>{const t=e.getPointerPosition(),n=e.getAbsoluteTransform().copy();if(!t||!n)return;const r=n.invert().point(t);return{x:r.x,y:r.y}},wq=()=>{const e=Te(),t=Qs(),n=jV();return{updateColorUnderCursor:()=>{if(!n||!t)return;const r=n.getPointerPosition();if(!r)return;const i=$g.pixelRatio,[o,a,s,l]=t.getContext().getImageData(r.x*i,r.y*i,1,1).data;e(h3e({r:o,g:a,b:s,a:l}))},commitColorUnderCursor:()=>{e(n3e())}}},zTe=lt([Br,rn,Lr],(e,t,n)=>{const{tool:r}=t;return{tool:r,activeTabName:e,isStaging:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),HTe=e=>{const t=Te(),{tool:n,isStaging:r}=le(zTe),{commitColorUnderCursor:i}=wq();return S.useCallback(o=>{if(!e.current)return;if(e.current.container().focus(),n==="move"||r){t(S3(!0));return}if(n==="colorPicker"){i();return}const a=mP(e.current);a&&(o.evt.preventDefault(),t(zW(!0)),t(t3e([a.x,a.y])))},[e,n,r,t,i])},WTe=lt([Br,rn,Lr],(e,t,n)=>{const{tool:r,isDrawing:i}=t;return{tool:r,isDrawing:i,activeTabName:e,isStaging:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),UTe=(e,t,n)=>{const r=Te(),{isDrawing:i,tool:o,isStaging:a}=le(WTe),{updateColorUnderCursor:s}=wq();return S.useCallback(()=>{if(!e.current)return;const l=mP(e.current);if(l){if(r(p3e(l)),n.current=l,o==="colorPicker"){s();return}!i||o==="move"||a||(t.current=!0,r($W([l.x,l.y])))}},[t,r,i,a,n,e,o,s])},VTe=()=>{const e=Te();return S.useCallback(()=>{e(o3e())},[e])},GTe=lt([Br,rn,Lr],(e,t,n)=>{const{tool:r,isDrawing:i}=t;return{tool:r,isDrawing:i,activeTabName:e,isStaging:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),qTe=(e,t)=>{const n=Te(),{tool:r,isDrawing:i,isStaging:o}=le(GTe);return S.useCallback(()=>{if(r==="move"||o){n(S3(!1));return}if(!t.current&&i&&e.current){const a=mP(e.current);if(!a)return;n($W([a.x,a.y]))}else t.current=!1;n(zW(!1))},[t,n,i,o,e,r])},KTe=lt([rn],e=>{const{isMoveStageKeyHeld:t,stageScale:n}=e;return{isMoveStageKeyHeld:t,stageScale:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),YTe=e=>{const t=Te(),{isMoveStageKeyHeld:n,stageScale:r}=le(KTe);return S.useCallback(i=>{if(!e.current||n)return;i.evt.preventDefault();const o=e.current.getPointerPosition();if(!o)return;const a={x:(o.x-e.current.x())/r,y:(o.y-e.current.y())/r};let s=i.evt.deltaY;i.evt.ctrlKey&&(s=-s);const l=Pe.clamp(r*USe**s,VSe,GSe),u={x:o.x-a.x*l,y:o.y-a.y*l};t(y3e(l)),t(XW(u))},[e,n,r,t])},XTe=lt(rn,e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n,stageDimensions:r,stageScale:i,shouldDarkenOutsideBoundingBox:o,stageCoordinates:a}=e;return{boundingBoxCoordinates:t,boundingBoxDimensions:n,shouldDarkenOutsideBoundingBox:o,stageCoordinates:a,stageDimensions:r,stageScale:i}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),ZTe=()=>{const{boundingBoxCoordinates:e,boundingBoxDimensions:t,shouldDarkenOutsideBoundingBox:n,stageCoordinates:r,stageDimensions:i,stageScale:o}=le(XTe);return g.jsxs(uc,{children:[g.jsx(cc,{offsetX:r.x/o,offsetY:r.y/o,height:i.height/o,width:i.width/o,fill:"rgba(0,0,0,0.4)",listening:!1,visible:n}),g.jsx(cc,{x:e.x,y:e.y,width:t.width,height:t.height,fill:"rgb(255,255,255)",listening:!1,visible:n,globalCompositeOperation:"destination-out"})]})},QTe=lt([rn],e=>{const{stageScale:t,stageCoordinates:n,stageDimensions:r}=e;return{stageScale:t,stageCoordinates:n,stageDimensions:r}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),JTe={dark:"rgba(255, 255, 255, 0.2)",green:"rgba(255, 255, 255, 0.2)",light:"rgba(0, 0, 0, 0.2)"},eMe=()=>{const{colorMode:e}=Qy(),{stageScale:t,stageCoordinates:n,stageDimensions:r}=le(QTe),[i,o]=S.useState([]),a=S.useCallback(s=>s/t,[t]);return S.useLayoutEffect(()=>{const s=JTe[e],{width:l,height:u}=r,{x:d,y:h}=n,m={x1:0,y1:0,x2:l,y2:u,offset:{x:a(d),y:a(h)}},y={x:Math.ceil(a(d)/64)*64,y:Math.ceil(a(h)/64)*64},b={x1:-y.x,y1:-y.y,x2:a(l)-y.x+64,y2:a(u)-y.y+64},E={x1:Math.min(m.x1,b.x1),y1:Math.min(m.y1,b.y1),x2:Math.max(m.x2,b.x2),y2:Math.max(m.y2,b.y2)},_=E.x2-E.x1,k=E.y2-E.y1,T=Math.round(_/64)+1,L=Math.round(k/64)+1,O=Pe.range(0,T).map(I=>g.jsx(F3,{x:E.x1+I*64,y:E.y1,points:[0,0,0,k],stroke:s,strokeWidth:1},`x_${I}`)),D=Pe.range(0,L).map(I=>g.jsx(F3,{x:E.x1,y:E.y1+I*64,points:[0,0,_,0],stroke:s,strokeWidth:1},`y_${I}`));o(O.concat(D))},[t,n,r,e,a]),g.jsx(uc,{children:i})},tMe=lt([e=>e.gallery],e=>e.intermediateImage?e.intermediateImage:null,{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),nMe=e=>{const{...t}=e,n=le(tMe),[r,i]=S.useState(null);if(S.useEffect(()=>{if(!n)return;const u=new Image;u.onload=()=>{i(u)},u.src=n.url},[n]),!(n!=null&&n.boundingBox))return null;const{boundingBox:{x:o,y:a,width:s,height:l}}=n;return r?g.jsx(Sq,{x:o,y:a,width:s,height:l,image:r,listening:!1,...t}):null},zh=e=>{const{r:t,g:n,b:r,a:i}=e;return`rgba(${t}, ${n}, ${r}, ${i})`},rMe=lt(rn,e=>{const{maskColor:t,stageCoordinates:n,stageDimensions:r,stageScale:i}=e;return{stageCoordinates:n,stageDimensions:r,stageScale:i,maskColorString:zh(t)}}),ED=e=>`data:image/svg+xml;utf8, +`,BPe={};function w4(e,t,n=BPe){if(!SD&&"zIndex"in t&&(console.warn(FPe),SD=!0),!wD&&t.draggable){var r=t.x!==void 0||t.y!==void 0,i=t.onDragEnd||t.onDragMove;r&&!i&&(console.warn($Pe),wD=!0)}for(var o in n)if(!xD[o]){var a=o.slice(0,2)==="on",s=n[o]!==t[o];if(a&&s){var l=o.substr(2).toLowerCase();l.substr(0,7)==="content"&&(l="content"+l.substr(7,1).toUpperCase()+l.substr(8)),e.off(l,n[o])}var u=!t.hasOwnProperty(o);u&&e.setAttr(o,void 0)}var d=t._useStrictMode,p={},m=!1;const y={};for(var o in t)if(!xD[o]){var a=o.slice(0,2)==="on",b=n[o]!==t[o];if(a&&b){var l=o.substr(2).toLowerCase();l.substr(0,7)==="content"&&(l="content"+l.substr(7,1).toUpperCase()+l.substr(8)),t[o]&&(y[l]=t[o])}!a&&(t[o]!==n[o]||d&&t[o]!==e.getAttr(o))&&(m=!0,p[o]=t[o])}m&&(e.setAttrs(p),hf(e));for(var l in y)e.on(l+pP,y[l])}function hf(e){if(!ft.autoDrawEnabled){var t=e.getLayer()||e.getStage();t&&t.batchDraw()}}const vq={},zPe={};Qh.Node.prototype._applyProps=w4;function HPe(e,t){if(typeof t=="string"){console.error(`Do not use plain text as child of Konva.Node. You are using text: ${t}`);return}e.add(t),hf(e)}function WPe(e,t,n){let r=Qh[e];r||(console.error(`Konva has no node with the type ${e}. Group will be used instead. If you use minimal version of react-konva, just import required nodes into Konva: "import "konva/lib/shapes/${e}" If you want to render DOM elements as part of canvas tree take a look into this demo: https://konvajs.github.io/docs/react/DOM_Portal.html`),r=Qh.Group);const i={},o={};for(var a in t){var s=a.slice(0,2)==="on";s?o[a]=t[a]:i[a]=t[a]}const l=new r(i);return w4(l,o),l}function UPe(e,t,n){console.error(`Text components are not supported for now in ReactKonva. Your text is: "${e}"`)}function VPe(e,t,n){return!1}function GPe(e){return e}function qPe(){return null}function KPe(){return null}function YPe(e,t,n,r){return zPe}function XPe(){}function ZPe(e){}function QPe(e,t){return!1}function JPe(){return vq}function eTe(){return vq}const tTe=setTimeout,nTe=clearTimeout,rTe=-1;function iTe(e,t){return!1}const oTe=!1,aTe=!0,sTe=!0;function lTe(e,t){t.parent===e?t.moveToTop():e.add(t),hf(e)}function uTe(e,t){t.parent===e?t.moveToTop():e.add(t),hf(e)}function yq(e,t,n){t._remove(),e.add(t),t.setZIndex(n.getZIndex()),hf(e)}function cTe(e,t,n){yq(e,t,n)}function dTe(e,t){t.destroy(),t.off(pP),hf(e)}function fTe(e,t){t.destroy(),t.off(pP),hf(e)}function hTe(e,t,n){console.error(`Text components are not yet supported in ReactKonva. You text is: "${n}"`)}function pTe(e,t,n){}function gTe(e,t,n,r,i){w4(e,i,r)}function mTe(e){e.hide(),hf(e)}function vTe(e){}function yTe(e,t){(t.visible==null||t.visible)&&e.show()}function bTe(e,t){}function xTe(e){}function STe(){}const wTe=()=>$3.DefaultEventPriority,CTe=Object.freeze(Object.defineProperty({__proto__:null,appendChild:lTe,appendChildToContainer:uTe,appendInitialChild:HPe,cancelTimeout:nTe,clearContainer:xTe,commitMount:pTe,commitTextUpdate:hTe,commitUpdate:gTe,createInstance:WPe,createTextInstance:UPe,detachDeletedInstance:STe,finalizeInitialChildren:VPe,getChildHostContext:eTe,getCurrentEventPriority:wTe,getPublicInstance:GPe,getRootHostContext:JPe,hideInstance:mTe,hideTextInstance:vTe,idlePriority:Th.unstable_IdlePriority,insertBefore:yq,insertInContainerBefore:cTe,isPrimaryRenderer:oTe,noTimeout:rTe,now:Th.unstable_now,prepareForCommit:qPe,preparePortalMount:KPe,prepareUpdate:YPe,removeChild:dTe,removeChildFromContainer:fTe,resetAfterCommit:XPe,resetTextContent:ZPe,run:Th.unstable_runWithPriority,scheduleTimeout:tTe,shouldDeprioritizeSubtree:QPe,shouldSetTextContent:iTe,supportsMutation:sTe,unhideInstance:yTe,unhideTextInstance:bTe,warnsIfNotActing:aTe},Symbol.toStringTag,{value:"Module"}));var _Te=Object.defineProperty,kTe=Object.defineProperties,ETe=Object.getOwnPropertyDescriptors,CD=Object.getOwnPropertySymbols,PTe=Object.prototype.hasOwnProperty,TTe=Object.prototype.propertyIsEnumerable,_D=(e,t,n)=>t in e?_Te(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,kD=(e,t)=>{for(var n in t||(t={}))PTe.call(t,n)&&_D(e,n,t[n]);if(CD)for(var n of CD(t))TTe.call(t,n)&&_D(e,n,t[n]);return e},MTe=(e,t)=>kTe(e,ETe(t));function bq(e,t,n){if(!e)return;if(n(e)===!0)return e;let r=t?e.return:e.child;for(;r;){const i=bq(r,t,n);if(i)return i;r=t?null:r.sibling}}function xq(e){try{return Object.defineProperties(e,{_currentRenderer:{get(){return null},set(){}},_currentRenderer2:{get(){return null},set(){}}})}catch{return e}}const gP=xq(S.createContext(null));class Sq extends S.Component{render(){return S.createElement(gP.Provider,{value:this._reactInternals},this.props.children)}}const{ReactCurrentOwner:LTe,ReactCurrentDispatcher:ATe}=S.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function OTe(){const e=S.useContext(gP);if(!e)throw new Error("its-fine: useFiber must be called within a !");const t=S.useId();return S.useMemo(()=>{var r;return(r=LTe.current)!=null?r:bq(e,!1,i=>{let o=i.memoizedState;for(;o;){if(o.memoizedState===t)return!0;o=o.next}})},[e,t])}function RTe(){var e,t;const n=OTe(),[r]=S.useState(()=>new Map);r.clear();let i=n;for(;i;){const o=(e=i.type)==null?void 0:e._context;o&&o!==gP&&!r.has(o)&&r.set(o,(t=ATe.current)==null?void 0:t.readContext(xq(o))),i=i.return}return S.useMemo(()=>Array.from(r.keys()).reduce((o,a)=>s=>S.createElement(o,null,S.createElement(a.Provider,MTe(kD({},s),{value:r.get(a)}))),o=>S.createElement(Sq,kD({},o))),[r])}function ITe(e){const t=Ke.useRef();return Ke.useLayoutEffect(()=>{t.current=e}),t.current}const DTe=e=>{const t=Ke.useRef(),n=Ke.useRef(),r=Ke.useRef(),i=ITe(e),o=RTe(),a=s=>{const{forwardedRef:l}=e;l&&(typeof l=="function"?l(s):l.current=s)};return Ke.useLayoutEffect(()=>(n.current=new Qh.Stage({width:e.width,height:e.height,container:t.current}),a(n.current),r.current=w1.createContainer(n.current,$3.LegacyRoot,!1,null),w1.updateContainer(Ke.createElement(o,{},e.children),r.current),()=>{Qh.isBrowser&&(a(null),w1.updateContainer(null,r.current,null),n.current.destroy())}),[]),Ke.useLayoutEffect(()=>{a(n.current),w4(n.current,e,i),w1.updateContainer(Ke.createElement(o,{},e.children),r.current,null)}),Ke.createElement("div",{ref:t,accessKey:e.accessKey,className:e.className,role:e.role,style:e.style,tabIndex:e.tabIndex,title:e.title})},n1="Layer",uc="Group",cc="Rect",ah="Circle",F3="Line",wq="Image",jTe="Transformer",w1=jPe(CTe);w1.injectIntoDevTools({findHostInstanceByFiber:()=>null,bundleType:0,version:Ke.version,rendererPackageName:"react-konva"});const NTe=Ke.forwardRef((e,t)=>Ke.createElement(Sq,{},Ke.createElement(DTe,{...e,forwardedRef:t}))),$Te=lt([rn,Lr],(e,t)=>{const{tool:n,isMovingBoundingBox:r}=e;return{tool:n,isStaging:t,isMovingBoundingBox:r}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),FTe=()=>{const e=Te(),{tool:t,isStaging:n,isMovingBoundingBox:r}=le($Te);return{handleDragStart:S.useCallback(()=>{(t==="move"||n)&&!r&&e(S3(!0))},[e,r,n,t]),handleDragMove:S.useCallback(i=>{if(!((t==="move"||n)&&!r))return;const o={x:i.target.x(),y:i.target.y()};e(XW(o))},[e,r,n,t]),handleDragEnd:S.useCallback(()=>{(t==="move"||n)&&!r&&e(S3(!1))},[e,r,n,t])}},BTe=lt([rn,Br,Lr],(e,t,n)=>{const{cursorPosition:r,shouldLockBoundingBox:i,shouldShowBoundingBox:o,tool:a,isMaskEnabled:s,shouldSnapToGrid:l}=e;return{activeTabName:t,isCursorOnCanvas:Boolean(r),shouldLockBoundingBox:i,shouldShowBoundingBox:o,tool:a,isStaging:n,isMaskEnabled:s,shouldSnapToGrid:l}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),zTe=()=>{const e=Te(),{activeTabName:t,shouldShowBoundingBox:n,tool:r,isStaging:i,isMaskEnabled:o,shouldSnapToGrid:a}=le(BTe),s=S.useRef(null),l=NV(),u=()=>e(pE());Qe(["shift+c"],()=>{u()},{enabled:()=>!i,preventDefault:!0},[]);const d=()=>e(h2(!o));Qe(["h"],()=>{d()},{enabled:()=>!i,preventDefault:!0},[o]),Qe(["n"],()=>{e(C3(!a))},{enabled:!0,preventDefault:!0},[a]),Qe("esc",()=>{e(c3e())},{enabled:()=>!0,preventDefault:!0}),Qe("shift+h",()=>{e(v3e(!n))},{enabled:()=>!i,preventDefault:!0},[t,n]),Qe(["space"],p=>{p.repeat||(l==null||l.container().focus(),r!=="move"&&(s.current=r,e(Jl("move"))),r==="move"&&s.current&&s.current!=="move"&&(e(Jl(s.current)),s.current="move"))},{keyup:!0,keydown:!0,preventDefault:!0},[r,s])},mP=e=>{const t=e.getPointerPosition(),n=e.getAbsoluteTransform().copy();if(!t||!n)return;const r=n.invert().point(t);return{x:r.x,y:r.y}},Cq=()=>{const e=Te(),t=Qs(),n=NV();return{updateColorUnderCursor:()=>{if(!n||!t)return;const r=n.getPointerPosition();if(!r)return;const i=$g.pixelRatio,[o,a,s,l]=t.getContext().getImageData(r.x*i,r.y*i,1,1).data;e(p3e({r:o,g:a,b:s,a:l}))},commitColorUnderCursor:()=>{e(r3e())}}},HTe=lt([Br,rn,Lr],(e,t,n)=>{const{tool:r}=t;return{tool:r,activeTabName:e,isStaging:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),WTe=e=>{const t=Te(),{tool:n,isStaging:r}=le(HTe),{commitColorUnderCursor:i}=Cq();return S.useCallback(o=>{if(!e.current)return;if(e.current.container().focus(),n==="move"||r){t(S3(!0));return}if(n==="colorPicker"){i();return}const a=mP(e.current);a&&(o.evt.preventDefault(),t(zW(!0)),t(n3e([a.x,a.y])))},[e,n,r,t,i])},UTe=lt([Br,rn,Lr],(e,t,n)=>{const{tool:r,isDrawing:i}=t;return{tool:r,isDrawing:i,activeTabName:e,isStaging:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),VTe=(e,t,n)=>{const r=Te(),{isDrawing:i,tool:o,isStaging:a}=le(UTe),{updateColorUnderCursor:s}=Cq();return S.useCallback(()=>{if(!e.current)return;const l=mP(e.current);if(l){if(r(g3e(l)),n.current=l,o==="colorPicker"){s();return}!i||o==="move"||a||(t.current=!0,r($W([l.x,l.y])))}},[t,r,i,a,n,e,o,s])},GTe=()=>{const e=Te();return S.useCallback(()=>{e(a3e())},[e])},qTe=lt([Br,rn,Lr],(e,t,n)=>{const{tool:r,isDrawing:i}=t;return{tool:r,isDrawing:i,activeTabName:e,isStaging:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),KTe=(e,t)=>{const n=Te(),{tool:r,isDrawing:i,isStaging:o}=le(qTe);return S.useCallback(()=>{if(r==="move"||o){n(S3(!1));return}if(!t.current&&i&&e.current){const a=mP(e.current);if(!a)return;n($W([a.x,a.y]))}else t.current=!1;n(zW(!1))},[t,n,i,o,e,r])},YTe=lt([rn],e=>{const{isMoveStageKeyHeld:t,stageScale:n}=e;return{isMoveStageKeyHeld:t,stageScale:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),XTe=e=>{const t=Te(),{isMoveStageKeyHeld:n,stageScale:r}=le(YTe);return S.useCallback(i=>{if(!e.current||n)return;i.evt.preventDefault();const o=e.current.getPointerPosition();if(!o)return;const a={x:(o.x-e.current.x())/r,y:(o.y-e.current.y())/r};let s=i.evt.deltaY;i.evt.ctrlKey&&(s=-s);const l=Ce.clamp(r*VSe**s,GSe,qSe),u={x:o.x-a.x*l,y:o.y-a.y*l};t(b3e(l)),t(XW(u))},[e,n,r,t])},ZTe=lt(rn,e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n,stageDimensions:r,stageScale:i,shouldDarkenOutsideBoundingBox:o,stageCoordinates:a}=e;return{boundingBoxCoordinates:t,boundingBoxDimensions:n,shouldDarkenOutsideBoundingBox:o,stageCoordinates:a,stageDimensions:r,stageScale:i}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),QTe=()=>{const{boundingBoxCoordinates:e,boundingBoxDimensions:t,shouldDarkenOutsideBoundingBox:n,stageCoordinates:r,stageDimensions:i,stageScale:o}=le(ZTe);return g.jsxs(uc,{children:[g.jsx(cc,{offsetX:r.x/o,offsetY:r.y/o,height:i.height/o,width:i.width/o,fill:"rgba(0,0,0,0.4)",listening:!1,visible:n}),g.jsx(cc,{x:e.x,y:e.y,width:t.width,height:t.height,fill:"rgb(255,255,255)",listening:!1,visible:n,globalCompositeOperation:"destination-out"})]})},JTe=lt([rn],e=>{const{stageScale:t,stageCoordinates:n,stageDimensions:r}=e;return{stageScale:t,stageCoordinates:n,stageDimensions:r}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),eMe={dark:"rgba(255, 255, 255, 0.2)",green:"rgba(255, 255, 255, 0.2)",light:"rgba(0, 0, 0, 0.2)"},tMe=()=>{const{colorMode:e}=Qy(),{stageScale:t,stageCoordinates:n,stageDimensions:r}=le(JTe),[i,o]=S.useState([]),a=S.useCallback(s=>s/t,[t]);return S.useLayoutEffect(()=>{const s=eMe[e],{width:l,height:u}=r,{x:d,y:p}=n,m={x1:0,y1:0,x2:l,y2:u,offset:{x:a(d),y:a(p)}},y={x:Math.ceil(a(d)/64)*64,y:Math.ceil(a(p)/64)*64},b={x1:-y.x,y1:-y.y,x2:a(l)-y.x+64,y2:a(u)-y.y+64},E={x1:Math.min(m.x1,b.x1),y1:Math.min(m.y1,b.y1),x2:Math.max(m.x2,b.x2),y2:Math.max(m.y2,b.y2)},_=E.x2-E.x1,k=E.y2-E.y1,T=Math.round(_/64)+1,L=Math.round(k/64)+1,O=Ce.range(0,T).map(I=>g.jsx(F3,{x:E.x1+I*64,y:E.y1,points:[0,0,0,k],stroke:s,strokeWidth:1},`x_${I}`)),D=Ce.range(0,L).map(I=>g.jsx(F3,{x:E.x1,y:E.y1+I*64,points:[0,0,_,0],stroke:s,strokeWidth:1},`y_${I}`));o(O.concat(D))},[t,n,r,e,a]),g.jsx(uc,{children:i})},nMe=lt([e=>e.gallery],e=>e.intermediateImage?e.intermediateImage:null,{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),rMe=e=>{const{...t}=e,n=le(nMe),[r,i]=S.useState(null);if(S.useEffect(()=>{if(!n)return;const u=new Image;u.onload=()=>{i(u)},u.src=n.url},[n]),!(n!=null&&n.boundingBox))return null;const{boundingBox:{x:o,y:a,width:s,height:l}}=n;return r?g.jsx(wq,{x:o,y:a,width:s,height:l,image:r,listening:!1,...t}):null},zh=e=>{const{r:t,g:n,b:r,a:i}=e;return`rgba(${t}, ${n}, ${r}, ${i})`},iMe=lt(rn,e=>{const{maskColor:t,stageCoordinates:n,stageDimensions:r,stageScale:i}=e;return{stageCoordinates:n,stageDimensions:r,stageScale:i,maskColorString:zh(t)}}),ED=e=>`data:image/svg+xml;utf8, @@ -616,9 +616,9 @@ For more info see: https://github.com/konvajs/react-konva/issues/194 -`.replaceAll("black",e),iMe=e=>{const{...t}=e,{maskColorString:n,stageCoordinates:r,stageDimensions:i,stageScale:o}=le(rMe),[a,s]=S.useState(null),[l,u]=S.useState(0),d=S.useRef(null),h=S.useCallback(()=>{u(l+1),setTimeout(h,500)},[l]);return S.useEffect(()=>{if(a)return;const m=new Image;m.onload=()=>{s(m)},m.src=ED(n)},[a,n]),S.useEffect(()=>{a&&(a.src=ED(n))},[a,n]),S.useEffect(()=>{const m=setInterval(()=>u(y=>(y+1)%5),50);return()=>clearInterval(m)},[]),!a||!Pe.isNumber(r.x)||!Pe.isNumber(r.y)||!Pe.isNumber(o)||!Pe.isNumber(i.width)||!Pe.isNumber(i.height)?null:g.jsx(cc,{ref:d,offsetX:r.x/o,offsetY:r.y/o,height:i.height/o,width:i.width/o,fillPatternImage:a,fillPatternOffsetY:Pe.isNumber(l)?l:0,fillPatternRepeat:"repeat",fillPatternScale:{x:1/o,y:1/o},listening:!0,globalCompositeOperation:"source-in",...t})},oMe=lt([rn],e=>({objects:e.layerState.objects}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),aMe=e=>{const{...t}=e,{objects:n}=le(oMe);return g.jsx(uc,{listening:!1,...t,children:n.filter(hE).map((r,i)=>g.jsx(F3,{points:r.points,stroke:"rgb(0,0,0)",strokeWidth:r.strokeWidth*2,tension:0,lineCap:"round",lineJoin:"round",shadowForStrokeEnabled:!1,listening:!1,globalCompositeOperation:r.tool==="brush"?"source-over":"destination-out"},i))})};var sh=S,sMe=function(t,n,r){const i=sh.useRef("loading"),o=sh.useRef(),[a,s]=sh.useState(0),l=sh.useRef(),u=sh.useRef(),d=sh.useRef();return(l.current!==t||u.current!==n||d.current!==r)&&(i.current="loading",o.current=void 0,l.current=t,u.current=n,d.current=r),sh.useLayoutEffect(function(){if(!t)return;var h=document.createElement("img");function m(){i.current="loaded",o.current=h,s(Math.random())}function y(){i.current="failed",o.current=void 0,s(Math.random())}return h.addEventListener("load",m),h.addEventListener("error",y),n&&(h.crossOrigin=n),r&&(h.referrerpolicy=r),h.src=t,function(){h.removeEventListener("load",m),h.removeEventListener("error",y)}},[t,n,r]),[o.current,i.current]};const Cq=e=>{const{url:t,x:n,y:r}=e,[i]=sMe(t);return g.jsx(Sq,{x:n,y:r,image:i,listening:!1})},lMe=lt([rn],e=>{const{layerState:{objects:t}}=e;return{objects:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),uMe=()=>{const{objects:e}=le(lMe);return e?g.jsx(uc,{name:"outpainting-objects",listening:!1,children:e.map((t,n)=>{if(x3(t))return g.jsx(Cq,{x:t.x,y:t.y,url:t.image.url},n);if(YSe(t)){const r=g.jsx(F3,{points:t.points,stroke:t.color?zh(t.color):"rgb(0,0,0)",strokeWidth:t.strokeWidth*2,tension:0,lineCap:"round",lineJoin:"round",shadowForStrokeEnabled:!1,listening:!1,globalCompositeOperation:t.tool==="brush"?"source-over":"destination-out"},n);return t.clip?g.jsx(uc,{clipX:t.clip.x,clipY:t.clip.y,clipWidth:t.clip.width,clipHeight:t.clip.height,children:r},n):r}else{if(XSe(t))return g.jsx(cc,{x:t.x,y:t.y,width:t.width,height:t.height,fill:zh(t.color)},n);if(ZSe(t))return g.jsx(cc,{x:t.x,y:t.y,width:t.width,height:t.height,fill:"rgb(255, 255, 255)",globalCompositeOperation:"destination-out"},n)}})}):null},cMe=lt([rn],e=>{const{layerState:{stagingArea:{images:t,selectedImageIndex:n}},shouldShowStagingImage:r,shouldShowStagingOutline:i,boundingBoxCoordinates:{x:o,y:a},boundingBoxDimensions:{width:s,height:l}}=e;return{currentStagingAreaImage:t.length>0?t[n]:void 0,isOnFirstImage:n===0,isOnLastImage:n===t.length-1,shouldShowStagingImage:r,shouldShowStagingOutline:i,x:o,y:a,width:s,height:l}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),dMe=e=>{const{...t}=e,{currentStagingAreaImage:n,shouldShowStagingImage:r,shouldShowStagingOutline:i,x:o,y:a,width:s,height:l}=le(cMe);return g.jsxs(uc,{...t,children:[r&&n&&g.jsx(Cq,{url:n.image.url,x:o,y:a}),i&&g.jsxs(uc,{children:[g.jsx(cc,{x:o,y:a,width:s,height:l,strokeWidth:1,stroke:"white",strokeScaleEnabled:!1}),g.jsx(cc,{x:o,y:a,width:s,height:l,dash:[4,4],strokeWidth:1,stroke:"black",strokeScaleEnabled:!1})]})]})},fMe=lt([rn],e=>{const{layerState:{stagingArea:{images:t,selectedImageIndex:n}},shouldShowStagingOutline:r,shouldShowStagingImage:i}=e;return{currentStagingAreaImage:t.length>0?t[n]:void 0,isOnFirstImage:n===0,isOnLastImage:n===t.length-1,shouldShowStagingImage:i,shouldShowStagingOutline:r}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),hMe=()=>{const e=Te(),{isOnFirstImage:t,isOnLastImage:n,currentStagingAreaImage:r,shouldShowStagingImage:i}=le(fMe),{t:o}=De(),a=S.useCallback(()=>{e(XO(!0))},[e]),s=S.useCallback(()=>{e(XO(!1))},[e]);Je(["left"],()=>{l()},{enabled:()=>!0,preventDefault:!0}),Je(["right"],()=>{u()},{enabled:()=>!0,preventDefault:!0}),Je(["enter"],()=>{d()},{enabled:()=>!0,preventDefault:!0});const l=()=>e(s3e()),u=()=>e(a3e()),d=()=>e(r3e());return r?g.jsx(ke,{pos:"absolute",bottom:"1rem",w:"100%",align:"center",justify:"center",filter:"drop-shadow(0 0.5rem 1rem rgba(0,0,0))",onMouseOver:a,onMouseOut:s,children:g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{tooltip:`${o("unifiedCanvas.previous")} (Left)`,"aria-label":`${o("unifiedCanvas.previous")} (Left)`,icon:g.jsx(pke,{}),onClick:l,"data-selected":!0,isDisabled:t}),g.jsx(Ye,{tooltip:`${o("unifiedCanvas.next")} (Right)`,"aria-label":`${o("unifiedCanvas.next")} (Right)`,icon:g.jsx(gke,{}),onClick:u,"data-selected":!0,isDisabled:n}),g.jsx(Ye,{tooltip:`${o("unifiedCanvas.accept")} (Enter)`,"aria-label":`${o("unifiedCanvas.accept")} (Enter)`,icon:g.jsx(jE,{}),onClick:d,"data-selected":!0}),g.jsx(Ye,{tooltip:o("unifiedCanvas.showHide"),"aria-label":o("unifiedCanvas.showHide"),"data-alert":!i,icon:i?g.jsx(wke,{}):g.jsx(Ske,{}),onClick:()=>e(v3e(!i)),"data-selected":!0}),g.jsx(Ye,{tooltip:o("unifiedCanvas.saveToGallery"),"aria-label":o("unifiedCanvas.saveToGallery"),icon:g.jsx($E,{}),onClick:()=>e(m_e(r.image.url)),"data-selected":!0}),g.jsx(Ye,{tooltip:o("unifiedCanvas.discardAll"),"aria-label":o("unifiedCanvas.discardAll"),icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),onClick:()=>e(i3e()),"data-selected":!0,style:{backgroundColor:"var(--btn-delete-image)"},fontSize:20})]})}):null},cm=e=>Math.round(e*100)/100,pMe=lt([rn],e=>{const{cursorPosition:t}=e,{cursorX:n,cursorY:r}=t?{cursorX:t.x,cursorY:t.y}:{cursorX:-1,cursorY:-1};return{cursorCoordinatesString:`(${cm(n)}, ${cm(r)})`}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function gMe(){const{cursorCoordinatesString:e}=le(pMe),{t}=De();return g.jsx("div",{children:`${t("unifiedcanvas:cursorPosition")}: ${e}`})}const mMe=lt([rn],e=>{const{stageDimensions:{width:t,height:n},stageCoordinates:{x:r,y:i},boundingBoxDimensions:{width:o,height:a},scaledBoundingBoxDimensions:{width:s,height:l},boundingBoxCoordinates:{x:u,y:d},stageScale:h,shouldShowCanvasDebugInfo:m,layer:y,boundingBoxScaleMethod:b,shouldPreserveMaskedArea:w}=e;let E="inherit";return(b==="none"&&(o<512||a<512)||b==="manual"&&s*l<512*512)&&(E="var(--status-working-color)"),{activeLayerColor:y==="mask"?"var(--status-working-color)":"inherit",activeLayerString:y.charAt(0).toUpperCase()+y.slice(1),boundingBoxColor:E,boundingBoxCoordinatesString:`(${cm(u)}, ${cm(d)})`,boundingBoxDimensionsString:`${o}×${a}`,scaledBoundingBoxDimensionsString:`${s}×${l}`,canvasCoordinatesString:`${cm(r)}×${cm(i)}`,canvasDimensionsString:`${t}×${n}`,canvasScaleString:Math.round(h*100),shouldShowCanvasDebugInfo:m,shouldShowBoundingBox:b!=="auto",shouldShowScaledBoundingBox:b!=="none",shouldPreserveMaskedArea:w}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),vMe=()=>{const{activeLayerColor:e,activeLayerString:t,boundingBoxColor:n,boundingBoxCoordinatesString:r,boundingBoxDimensionsString:i,scaledBoundingBoxDimensionsString:o,shouldShowScaledBoundingBox:a,canvasCoordinatesString:s,canvasDimensionsString:l,canvasScaleString:u,shouldShowCanvasDebugInfo:d,shouldShowBoundingBox:h,shouldPreserveMaskedArea:m}=le(mMe),{t:y}=De();return g.jsxs("div",{className:"canvas-status-text",children:[g.jsx("div",{style:{color:e},children:`${y("unifiedCanvas.activeLayer")}: ${t}`}),g.jsx("div",{children:`${y("unifiedCanvas.canvasScale")}: ${u}%`}),m&&g.jsx("div",{style:{color:"var(--status-working-color)"},children:"Preserve Masked Area: On"}),h&&g.jsx("div",{style:{color:n},children:`${y("unifiedcanvas:boundingBox")}: ${i}`}),a&&g.jsx("div",{style:{color:n},children:`${y("unifiedcanvas:scaledBoundingBox")}: ${o}`}),d&&g.jsxs(g.Fragment,{children:[g.jsx("div",{children:`${y("unifiedcanvas:boundingBoxPosition")}: ${r}`}),g.jsx("div",{children:`${y("unifiedcanvas:canvasDimensions")}: ${l}`}),g.jsx("div",{children:`${y("unifiedcanvas:canvasPosition")}: ${s}`}),g.jsx(gMe,{})]})]})},yMe=lt(rn,e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n,stageScale:r,isDrawing:i,isTransformingBoundingBox:o,isMovingBoundingBox:a,tool:s,shouldSnapToGrid:l}=e;return{boundingBoxCoordinates:t,boundingBoxDimensions:n,isDrawing:i,isMovingBoundingBox:a,isTransformingBoundingBox:o,stageScale:r,shouldSnapToGrid:l,tool:s,hitStrokeWidth:20/r}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),bMe=e=>{const{...t}=e,n=Te(),{boundingBoxCoordinates:r,boundingBoxDimensions:i,isDrawing:o,isMovingBoundingBox:a,isTransformingBoundingBox:s,stageScale:l,shouldSnapToGrid:u,tool:d,hitStrokeWidth:h}=le(yMe),m=S.useRef(null),y=S.useRef(null),[b,w]=S.useState(!1);S.useEffect(()=>{var ne;!m.current||!y.current||(m.current.nodes([y.current]),(ne=m.current.getLayer())==null||ne.batchDraw())},[]);const E=64*l,_=S.useCallback(ne=>{if(!u){n(RC({x:Math.floor(ne.target.x()),y:Math.floor(ne.target.y())}));return}const z=ne.target.x(),$=ne.target.y(),V=Hl(z,64),X=Hl($,64);ne.target.x(V),ne.target.y(X),n(RC({x:V,y:X}))},[n,u]),k=S.useCallback(()=>{if(!y.current)return;const ne=y.current,z=ne.scaleX(),$=ne.scaleY(),V=Math.round(ne.width()*z),X=Math.round(ne.height()*$),Q=Math.round(ne.x()),G=Math.round(ne.y());n(g1({width:V,height:X})),n(RC({x:u?Cd(Q,64):Q,y:u?Cd(G,64):G})),ne.scaleX(1),ne.scaleY(1)},[n,u]),T=S.useCallback((ne,z,$)=>{const V=ne.x%E,X=ne.y%E;return{x:Cd(z.x,E)+V,y:Cd(z.y,E)+X}},[E]),L=()=>{n(DC(!0))},O=()=>{n(DC(!1)),n(IC(!1)),n(Qb(!1)),w(!1)},D=()=>{n(IC(!0))},I=()=>{n(DC(!1)),n(IC(!1)),n(Qb(!1)),w(!1)},N=()=>{w(!0)},W=()=>{!s&&!a&&w(!1)},B=()=>{n(Qb(!0))},K=()=>{n(Qb(!1))};return g.jsxs(uc,{...t,children:[g.jsx(cc,{height:i.height,width:i.width,x:r.x,y:r.y,onMouseEnter:B,onMouseOver:B,onMouseLeave:K,onMouseOut:K}),g.jsx(cc,{draggable:!0,fillEnabled:!1,height:i.height,hitStrokeWidth:h,listening:!o&&d==="move",onDragStart:D,onDragEnd:I,onDragMove:_,onMouseDown:D,onMouseOut:W,onMouseOver:N,onMouseEnter:N,onMouseUp:I,onTransform:k,onTransformEnd:O,ref:y,stroke:b?"rgba(255,255,255,0.7)":"white",strokeWidth:(b?8:1)/l,width:i.width,x:r.x,y:r.y}),g.jsx(DTe,{anchorCornerRadius:3,anchorDragBoundFunc:T,anchorFill:"rgba(212,216,234,1)",anchorSize:15,anchorStroke:"rgb(42,42,42)",borderDash:[4,4],borderEnabled:!0,borderStroke:"black",draggable:!1,enabledAnchors:d==="move"?void 0:[],flipEnabled:!1,ignoreStroke:!0,keepRatio:!1,listening:!o&&d==="move",onDragStart:D,onDragEnd:I,onMouseDown:L,onMouseUp:O,onTransformEnd:O,ref:m,rotateEnabled:!1})]})},xMe=lt(rn,e=>{const{cursorPosition:t,brushSize:n,colorPickerColor:r,maskColor:i,brushColor:o,tool:a,layer:s,shouldShowBrush:l,isMovingBoundingBox:u,isTransformingBoundingBox:d,stageScale:h,stageDimensions:m,boundingBoxCoordinates:y,boundingBoxDimensions:b,shouldRestrictStrokesToBox:w}=e,E=w?{clipX:y.x,clipY:y.y,clipWidth:b.width,clipHeight:b.height}:{};return{cursorPosition:t,brushX:t?t.x:m.width/2,brushY:t?t.y:m.height/2,radius:n/2,colorPickerOuterRadius:KO/h,colorPickerInnerRadius:(KO-pk+1)/h,maskColorString:zh({...i,a:.5}),brushColorString:zh(o),colorPickerColorString:zh(r),tool:a,layer:s,shouldShowBrush:l,shouldDrawBrushPreview:!(u||d||!t)&&l,strokeWidth:1.5/h,dotRadius:1.5/h,clip:E}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),SMe=e=>{const{...t}=e,{brushX:n,brushY:r,radius:i,maskColorString:o,tool:a,layer:s,shouldDrawBrushPreview:l,dotRadius:u,strokeWidth:d,brushColorString:h,colorPickerColorString:m,colorPickerInnerRadius:y,colorPickerOuterRadius:b,clip:w}=le(xMe);return l?g.jsxs(uc,{listening:!1,...w,...t,children:[a==="colorPicker"?g.jsxs(g.Fragment,{children:[g.jsx(ah,{x:n,y:r,radius:b,stroke:h,strokeWidth:pk,strokeScaleEnabled:!1}),g.jsx(ah,{x:n,y:r,radius:y,stroke:m,strokeWidth:pk,strokeScaleEnabled:!1})]}):g.jsxs(g.Fragment,{children:[g.jsx(ah,{x:n,y:r,radius:i,fill:s==="mask"?o:h,globalCompositeOperation:a==="eraser"?"destination-out":"source-out"}),g.jsx(ah,{x:n,y:r,radius:i,stroke:"rgba(255,255,255,0.4)",strokeWidth:d*2,strokeEnabled:!0,listening:!1}),g.jsx(ah,{x:n,y:r,radius:i,stroke:"rgba(0,0,0,1)",strokeWidth:d,strokeEnabled:!0,listening:!1})]}),g.jsx(ah,{x:n,y:r,radius:u*2,fill:"rgba(255,255,255,0.4)",listening:!1}),g.jsx(ah,{x:n,y:r,radius:u,fill:"rgba(0,0,0,1)",listening:!1})]}):null},wMe=lt([rn,Lr],(e,t)=>{const{isMaskEnabled:n,stageScale:r,shouldShowBoundingBox:i,isTransformingBoundingBox:o,isMouseOverBoundingBox:a,isMovingBoundingBox:s,stageDimensions:l,stageCoordinates:u,tool:d,isMovingStage:h,shouldShowIntermediates:m,shouldShowGrid:y,shouldRestrictStrokesToBox:b}=e;let w="none";return d==="move"||t?h?w="grabbing":w="grab":o?w=void 0:b&&!a&&(w="default"),{isMaskEnabled:n,isModifyingBoundingBox:o||s,shouldShowBoundingBox:i,shouldShowGrid:y,stageCoordinates:u,stageCursor:w,stageDimensions:l,stageScale:r,tool:d,isStaging:t,shouldShowIntermediates:m}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),_q=()=>{const{isMaskEnabled:e,isModifyingBoundingBox:t,shouldShowBoundingBox:n,shouldShowGrid:r,stageCoordinates:i,stageCursor:o,stageDimensions:a,stageScale:s,tool:l,isStaging:u,shouldShowIntermediates:d}=le(wMe);BTe();const h=S.useRef(null),m=S.useRef(null),y=S.useCallback(W=>{K6e(W),h.current=W},[]),b=S.useCallback(W=>{q6e(W),m.current=W},[]),w=S.useRef({x:0,y:0}),E=S.useRef(!1),_=YTe(h),k=HTe(h),T=qTe(h,E),L=UTe(h,E,w),O=VTe(),{handleDragStart:D,handleDragMove:I,handleDragEnd:N}=$Te();return g.jsx("div",{className:"inpainting-canvas-container",children:g.jsxs("div",{className:"inpainting-canvas-wrapper",children:[g.jsxs(jTe,{tabIndex:-1,ref:y,className:"inpainting-canvas-stage",style:{...o?{cursor:o}:{}},x:i.x,y:i.y,width:a.width,height:a.height,scale:{x:s,y:s},onTouchStart:k,onTouchMove:L,onTouchEnd:T,onMouseDown:k,onMouseLeave:O,onMouseMove:L,onMouseUp:T,onDragStart:D,onDragMove:I,onDragEnd:N,onContextMenu:W=>W.evt.preventDefault(),onWheel:_,draggable:(l==="move"||u)&&!t,children:[g.jsx(n1,{id:"grid",visible:r,children:g.jsx(eMe,{})}),g.jsx(n1,{id:"base",ref:b,listening:!1,imageSmoothingEnabled:!1,children:g.jsx(uMe,{})}),g.jsxs(n1,{id:"mask",visible:e,listening:!1,children:[g.jsx(aMe,{visible:!0,listening:!1}),g.jsx(iMe,{listening:!1})]}),g.jsx(n1,{children:g.jsx(ZTe,{})}),g.jsxs(n1,{id:"preview",imageSmoothingEnabled:!1,children:[!u&&g.jsx(SMe,{visible:l!=="move",listening:!1}),g.jsx(dMe,{visible:u}),d&&g.jsx(nMe,{}),g.jsx(bMe,{visible:n&&!u})]})]}),g.jsx(vMe,{}),g.jsx(hMe,{})]})})},CMe=lt(rn,sG,Br,(e,t,n)=>{const{doesCanvasNeedScaling:r,isCanvasInitialized:i}=e;return{doesCanvasNeedScaling:r,activeTabName:n,initialCanvasImage:t,isCanvasInitialized:i}}),kq=()=>{const e=Te(),{doesCanvasNeedScaling:t,activeTabName:n,initialCanvasImage:r,isCanvasInitialized:i}=le(CMe),o=S.useRef(null);return S.useLayoutEffect(()=>{window.setTimeout(()=>{if(!o.current)return;const{clientWidth:a,clientHeight:s}=o.current;e(f3e({width:a,height:s})),e(i?c3e():r4()),e(Li(!1))},0)},[e,r,t,n,i]),g.jsx("div",{ref:o,className:"inpainting-canvas-area",children:g.jsx(p0,{thickness:"2px",speed:"1s",size:"xl"})})},_Me=lt([rn,Br,hr],(e,t,n)=>{const{futureLayerStates:r}=e;return{canRedo:r.length>0&&!n.isProcessing,activeTabName:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function Eq(){const e=Te(),{canRedo:t,activeTabName:n}=le(_Me),{t:r}=De(),i=()=>{e(l3e())};return Je(["meta+shift+z","ctrl+shift+z","control+y","meta+y"],()=>{i()},{enabled:()=>t,preventDefault:!0},[n,t]),g.jsx(Ye,{"aria-label":`${r("unifiedCanvas.redo")} (Ctrl+Shift+Z)`,tooltip:`${r("unifiedCanvas.redo")} (Ctrl+Shift+Z)`,icon:g.jsx(Rke,{}),onClick:i,isDisabled:!t})}const kMe=lt([rn,Br,hr],(e,t,n)=>{const{pastLayerStates:r}=e;return{canUndo:r.length>0&&!n.isProcessing,activeTabName:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function Pq(){const e=Te(),{t}=De(),{canUndo:n,activeTabName:r}=le(kMe),i=()=>{e(b3e())};return Je(["meta+z","ctrl+z"],()=>{i()},{enabled:()=>n,preventDefault:!0},[r,n]),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.undo")} (Ctrl+Z)`,tooltip:`${t("unifiedCanvas.undo")} (Ctrl+Z)`,icon:g.jsx(Nke,{}),onClick:i,isDisabled:!n})}const EMe=(e,t,n)=>{const r=document.createElement("img");r.addEventListener("load",()=>{const i=document.createElement("canvas");i.width=t,i.height=n;const o=i.getContext("2d");o&&(o.drawImage(r,0,0),i.toBlob(a=>{a&&navigator.clipboard.write([new ClipboardItem({[a.type]:a})])}),i.remove(),r.remove())}),r.src=e},PMe=e=>{const t=document.createElement("a");t.href=e,t.download="",document.body.appendChild(t),t.click(),document.body.removeChild(t),t.remove()},TMe=(e,t,n,r)=>{const i=e.scale(),o=e.getClientRect({relativeTo:e.getParent()});e.scale({x:1/t,y:1/t});const{x:a,y:s,width:l,height:u}=e.getClientRect(),d=r?{x:r.x+n.x,y:r.y+n.y,width:r.width,height:r.height}:{x:a,y:s,width:l,height:u},h=e.toDataURL(d);return e.scale(i),{dataURL:h,boundingBox:{x:o.x,y:o.y,width:l,height:u}}},MMe={cropVisible:!1,cropToBoundingBox:!1,shouldSaveToGallery:!1,shouldDownload:!1,shouldCopy:!1,shouldSetAsInitialImage:!0},Td=(e=MMe)=>async(t,n)=>{const{cropVisible:r,cropToBoundingBox:i,shouldSaveToGallery:o,shouldDownload:a,shouldCopy:s,shouldSetAsInitialImage:l}=e;t(M4e("Exporting Image")),t(_d(!1));const u=n(),{stageScale:d,boundingBoxCoordinates:h,boundingBoxDimensions:m,stageCoordinates:y}=u.canvas,b=Qs();if(!b){t(wa(!1)),t(_d(!0));return}const{dataURL:w,boundingBox:E}=TMe(b,d,y,i?{...h,...m}:void 0);if(!w){t(wa(!1)),t(_d(!0));return}const _=new FormData;_.append("data",JSON.stringify({dataURL:w,filename:"merged_canvas.png",kind:o?"result":"temp",cropVisible:r}));const T=await(await fetch(`${window.location.origin}/upload`,{method:"POST",body:_})).json(),{url:L,width:O,height:D}=T,I={uuid:um(),category:o?"result":"user",...T};a&&(PMe(L),t($u({title:Et.t("toast.downloadImageStarted"),status:"success",duration:2500,isClosable:!0}))),s&&(EMe(L,O,D),t($u({title:Et.t("toast.imageCopied"),status:"success",duration:2500,isClosable:!0}))),o&&(t(sm({image:I,category:"result"})),t($u({title:Et.t("toast.imageSavedToGallery"),status:"success",duration:2500,isClosable:!0}))),l&&(t(g3e({kind:"image",layer:"base",...E,image:I})),t($u({title:Et.t("toast.canvasMerged"),status:"success",duration:2500,isClosable:!0}))),t(wa(!1)),t(hh(Et.t("common.statusConnected"))),t(_d(!0))};function LMe(){const e=le(Lr),t=Qs(),n=le(s=>s.system.isProcessing),r=le(s=>s.canvas.shouldCropToBoundingBoxOnSave),i=Te(),{t:o}=De();Je(["meta+c","ctrl+c"],()=>{a()},{enabled:()=>!e,preventDefault:!0},[t,n]);const a=()=>{i(Td({cropVisible:!r,cropToBoundingBox:r,shouldCopy:!0}))};return g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,tooltip:`${o("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,icon:g.jsx(e0,{}),onClick:a,isDisabled:e})}function AMe(){const e=Te(),{t}=De(),n=Qs(),r=le(Lr),i=le(s=>s.system.isProcessing),o=le(s=>s.canvas.shouldCropToBoundingBoxOnSave);Je(["shift+d"],()=>{a()},{enabled:()=>!r,preventDefault:!0},[n,i]);const a=()=>{e(Td({cropVisible:!o,cropToBoundingBox:o,shouldDownload:!0}))};return g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.downloadAsImage")} (Shift+D)`,tooltip:`${t("unifiedCanvas.downloadAsImage")} (Shift+D)`,icon:g.jsx(NE,{}),onClick:a,isDisabled:r})}function OMe(){const e=le(Lr),{openUploader:t}=OE(),{t:n}=De();return g.jsx(Ye,{"aria-label":n("common.upload"),tooltip:n("common.upload"),icon:g.jsx(h4,{}),onClick:t,isDisabled:e})}const RMe=lt([rn,Lr],(e,t)=>{const{layer:n,isMaskEnabled:r}=e;return{layer:n,isMaskEnabled:r,isStaging:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function IMe(){const e=Te(),{t}=De(),{layer:n,isMaskEnabled:r,isStaging:i}=le(RMe),o=()=>{e(w3(n==="mask"?"base":"mask"))};Je(["q"],()=>{o()},{enabled:()=>!i,preventDefault:!0},[n]);const a=s=>{const l=s.target.value;e(w3(l)),l==="mask"&&!r&&e(h2(!0))};return g.jsx(Jo,{tooltip:`${t("unifiedCanvas.layer")} (Q)`,tooltipProps:{hasArrow:!0,placement:"top"},value:n,validValues:IW,onChange:a,isDisabled:i})}function DMe(){const e=Te(),{t}=De(),n=Qs(),r=le(Lr),i=le(a=>a.system.isProcessing);Je(["shift+m"],()=>{o()},{enabled:()=>!r,preventDefault:!0},[n,i]);const o=()=>{e(Td({cropVisible:!1,shouldSetAsInitialImage:!0}))};return g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.mergeVisible")} (Shift+M)`,tooltip:`${t("unifiedCanvas.mergeVisible")} (Shift+M)`,icon:g.jsx(oG,{}),onClick:o,isDisabled:r})}function jMe(){const e=le(o=>o.canvas.tool),t=le(Lr),n=Te(),{t:r}=De();Je(["v"],()=>{i()},{enabled:()=>!t,preventDefault:!0},[]);const i=()=>n(Jl("move"));return g.jsx(Ye,{"aria-label":`${r("unifiedCanvas.move")} (V)`,tooltip:`${r("unifiedCanvas.move")} (V)`,icon:g.jsx(JV,{}),"data-selected":e==="move"||t,onClick:i})}function NMe(){const e=le(i=>i.ui.shouldPinParametersPanel),t=Te(),{t:n}=De(),r=()=>{t(Fh(!0)),e&&setTimeout(()=>t(Li(!0)),400)};return g.jsxs(ke,{flexDirection:"column",gap:"0.5rem",children:[g.jsx(Ye,{tooltip:`${n("parameters.showOptionsPanel")} (O)`,tooltipProps:{placement:"top"},"aria-label":n("parameters.showOptionsPanel"),onClick:r,children:g.jsx(FE,{})}),g.jsx(ke,{children:g.jsx(tP,{iconButton:!0})}),g.jsx(ke,{children:g.jsx(JE,{width:"100%",height:"40px",btnGroupWidth:"100%"})})]})}function $Me(){const e=Te(),{t}=De(),n=le(Lr),r=()=>{e(gE()),e(r4())};return g.jsx(Ye,{"aria-label":t("unifiedCanvas.clearCanvas"),tooltip:t("unifiedCanvas.clearCanvas"),icon:g.jsx(hp,{}),onClick:r,style:{backgroundColor:"var(--btn-delete-image)"},isDisabled:n})}function Tq(e,t,n=250){const[r,i]=S.useState(0);return S.useEffect(()=>{const o=setTimeout(()=>{r===1&&e(),i(0)},n);return r===2&&t(),()=>clearTimeout(o)},[r,e,t,n]),()=>i(o=>o+1)}function FMe(){const e=Qs(),t=Te(),{t:n}=De();Je(["r"],()=>{i()},{enabled:()=>!0,preventDefault:!0},[e]);const r=Tq(()=>i(!1),()=>i(!0)),i=(o=!1)=>{const a=Qs();if(!a)return;const s=a.getClientRect({skipTransform:!0});t(BW({contentRect:s,shouldScaleTo1:o}))};return g.jsx(Ye,{"aria-label":`${n("unifiedCanvas.resetView")} (R)`,tooltip:`${n("unifiedCanvas.resetView")} (R)`,icon:g.jsx(tG,{}),onClick:r})}function BMe(){const e=le(Lr),t=Qs(),n=le(s=>s.system.isProcessing),r=le(s=>s.canvas.shouldCropToBoundingBoxOnSave),i=Te(),{t:o}=De();Je(["shift+s"],()=>{a()},{enabled:()=>!e,preventDefault:!0},[t,n]);const a=()=>{i(Td({cropVisible:!r,cropToBoundingBox:r,shouldSaveToGallery:!0}))};return g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.saveToGallery")} (Shift+S)`,tooltip:`${o("unifiedCanvas.saveToGallery")} (Shift+S)`,icon:g.jsx($E,{}),onClick:a,isDisabled:e})}const zMe=lt([rn,Lr,hr],(e,t,n)=>{const{isProcessing:r}=n,{tool:i}=e;return{tool:i,isStaging:t,isProcessing:r}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),HMe=()=>{const e=Te(),{t}=De(),{tool:n,isStaging:r}=le(zMe);Je(["b"],()=>{i()},{enabled:()=>!r,preventDefault:!0},[]),Je(["e"],()=>{o()},{enabled:()=>!r,preventDefault:!0},[n]),Je(["c"],()=>{a()},{enabled:()=>!r,preventDefault:!0},[n]),Je(["shift+f"],()=>{s()},{enabled:()=>!r,preventDefault:!0}),Je(["delete","backspace"],()=>{l()},{enabled:()=>!r,preventDefault:!0});const i=()=>e(Jl("brush")),o=()=>e(Jl("eraser")),a=()=>e(Jl("colorPicker")),s=()=>e(NW()),l=()=>e(jW());return g.jsxs(ke,{flexDirection:"column",gap:"0.5rem",children:[g.jsxs(Gi,{children:[g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.brush")} (B)`,tooltip:`${t("unifiedCanvas.brush")} (B)`,icon:g.jsx(aG,{}),"data-selected":n==="brush"&&!r,onClick:i,isDisabled:r}),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.eraser")} (E)`,tooltip:`${t("unifiedCanvas.eraser")} (B)`,icon:g.jsx(nG,{}),"data-selected":n==="eraser"&&!r,isDisabled:r,onClick:o})]}),g.jsxs(Gi,{children:[g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.fillBoundingBox")} (Shift+F)`,tooltip:`${t("unifiedCanvas.fillBoundingBox")} (Shift+F)`,icon:g.jsx(iG,{}),isDisabled:r,onClick:s}),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,tooltip:`${t("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),isDisabled:r,onClick:l})]}),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.colorPicker")} (C)`,tooltip:`${t("unifiedCanvas.colorPicker")} (C)`,icon:g.jsx(rG,{}),"data-selected":n==="colorPicker"&&!r,isDisabled:r,onClick:a,width:"max-content"})]})},C4=Ze((e,t)=>{const{acceptButtonText:n="Accept",acceptCallback:r,cancelButtonText:i="Cancel",cancelCallback:o,children:a,title:s,triggerComponent:l}=e,{isOpen:u,onOpen:d,onClose:h}=Kd(),m=S.useRef(null),y=()=>{r(),h()},b=()=>{o&&o(),h()};return g.jsxs(g.Fragment,{children:[S.cloneElement(l,{onClick:d,ref:t}),g.jsx($H,{isOpen:u,leastDestructiveRef:m,onClose:h,children:g.jsx(oc,{children:g.jsxs(FH,{className:"modal",children:[g.jsx(op,{fontSize:"lg",fontWeight:"bold",children:s}),g.jsx(Zm,{children:a}),g.jsxs(zw,{children:[g.jsx(ss,{ref:m,onClick:b,className:"modal-close-btn",children:i}),g.jsx(ss,{colorScheme:"red",onClick:y,ml:3,children:n})]})]})})})]})}),Mq=()=>{const e=le(Lr),t=Te(),{t:n}=De(),r=()=>{t(v_e()),t(gE()),t(FW())};return g.jsxs(C4,{title:n("unifiedCanvas.emptyTempImageFolder"),acceptCallback:r,acceptButtonText:n("unifiedCanvas.emptyFolder"),triggerComponent:g.jsx(On,{leftIcon:g.jsx(hp,{}),size:"sm",isDisabled:e,children:n("unifiedCanvas.emptyTempImageFolder")}),children:[g.jsx("p",{children:n("unifiedCanvas.emptyTempImagesFolderMessage")}),g.jsx("br",{}),g.jsx("p",{children:n("unifiedCanvas.emptyTempImagesFolderConfirm")})]})},Lq=()=>{const e=le(Lr),t=Te(),{t:n}=De();return g.jsxs(C4,{title:n("unifiedCanvas.clearCanvasHistory"),acceptCallback:()=>t(FW()),acceptButtonText:n("unifiedCanvas.clearHistory"),triggerComponent:g.jsx(On,{size:"sm",leftIcon:g.jsx(hp,{}),isDisabled:e,children:n("unifiedCanvas.clearCanvasHistory")}),children:[g.jsx("p",{children:n("unifiedCanvas.clearCanvasHistoryMessage")}),g.jsx("br",{}),g.jsx("p",{children:n("unifiedCanvas.clearCanvasHistoryConfirm")})]})},WMe=lt([rn],e=>{const{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldShowCanvasDebugInfo:r,shouldShowIntermediates:i}=e;return{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldShowCanvasDebugInfo:r,shouldShowIntermediates:i}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),UMe=()=>{const e=Te(),{t}=De(),{shouldAutoSave:n,shouldCropToBoundingBoxOnSave:r,shouldShowCanvasDebugInfo:i,shouldShowIntermediates:o}=le(WMe);return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{tooltip:t("unifiedCanvas.canvasSettings"),tooltipProps:{placement:"bottom"},"aria-label":t("unifiedCanvas.canvasSettings"),icon:g.jsx(BE,{})}),children:g.jsxs(ke,{direction:"column",gap:"0.5rem",children:[g.jsx(Gn,{label:t("unifiedCanvas.showIntermediates"),isChecked:o,onChange:a=>e(YW(a.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.autoSaveToGallery"),isChecked:n,onChange:a=>e(WW(a.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.saveBoxRegionOnly"),isChecked:r,onChange:a=>e(UW(a.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.showCanvasDebugInfo"),isChecked:i,onChange:a=>e(qW(a.target.checked))}),g.jsx(Lq,{}),g.jsx(Mq,{})]})})},VMe=()=>{const e=le(t=>t.ui.shouldShowParametersPanel);return g.jsxs(ke,{flexDirection:"column",rowGap:"0.5rem",width:"6rem",children:[g.jsx(IMe,{}),g.jsx(HMe,{}),g.jsxs(ke,{gap:"0.5rem",children:[g.jsx(jMe,{}),g.jsx(FMe,{})]}),g.jsxs(ke,{columnGap:"0.5rem",children:[g.jsx(DMe,{}),g.jsx(BMe,{})]}),g.jsxs(ke,{columnGap:"0.5rem",children:[g.jsx(LMe,{}),g.jsx(AMe,{})]}),g.jsxs(ke,{gap:"0.5rem",children:[g.jsx(Pq,{}),g.jsx(Eq,{})]}),g.jsxs(ke,{gap:"0.5rem",children:[g.jsx(OMe,{}),g.jsx($Me,{})]}),g.jsx(UMe,{}),!e&&g.jsx(NMe,{})]})};function GMe(){const e=Te(),t=le(i=>i.canvas.brushSize),{t:n}=De(),r=le(Lr);return Je(["BracketLeft"],()=>{e(Lm(Math.max(t-5,5)))},{enabled:()=>!r,preventDefault:!0},[t]),Je(["BracketRight"],()=>{e(Lm(Math.min(t+5,500)))},{enabled:()=>!r,preventDefault:!0},[t]),g.jsx(Dn,{label:n("unifiedCanvas.brushSize"),value:t,withInput:!0,onChange:i=>e(Lm(i)),sliderNumberInputProps:{max:500},inputReadOnly:!1,width:"100px",isCompact:!0})}function _4(){return(_4=Object.assign||function(e){for(var t=1;t=0||(i[n]=e[n]);return i}function a7(e){var t=S.useRef(e),n=S.useRef(function(r){t.current&&t.current(r)});return t.current=e,n.current}var r0=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=1),e>n?n:e0:E.buttons>0)&&i.current?o(PD(i.current,E,s.current)):w(!1)},b=function(){return w(!1)};function w(E){var _=l.current,k=s7(i.current),T=E?k.addEventListener:k.removeEventListener;T(_?"touchmove":"mousemove",y),T(_?"touchend":"mouseup",b)}return[function(E){var _=E.nativeEvent,k=i.current;if(k&&(TD(_),!function(L,O){return O&&!X1(L)}(_,l.current)&&k)){if(X1(_)){l.current=!0;var T=_.changedTouches||[];T.length&&(s.current=T[0].identifier)}k.focus(),o(PD(k,_,s.current)),w(!0)}},function(E){var _=E.which||E.keyCode;_<37||_>40||(E.preventDefault(),a({left:_===39?.05:_===37?-.05:0,top:_===40?.05:_===38?-.05:0}))},w]},[a,o]),d=u[0],h=u[1],m=u[2];return S.useEffect(function(){return m},[m]),Ke.createElement("div",_4({},r,{onTouchStart:d,onMouseDown:d,className:"react-colorful__interactive",ref:i,onKeyDown:h,tabIndex:0,role:"slider"}))}),k4=function(e){return e.filter(Boolean).join(" ")},yP=function(e){var t=e.color,n=e.left,r=e.top,i=r===void 0?.5:r,o=k4(["react-colorful__pointer",e.className]);return Ke.createElement("div",{className:o,style:{top:100*i+"%",left:100*n+"%"}},Ke.createElement("div",{className:"react-colorful__pointer-fill",style:{backgroundColor:t}}))},Co=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=Math.pow(10,t)),Math.round(n*e)/n},Oq=function(e){var t=e.s,n=e.v,r=e.a,i=(200-t)*n/100;return{h:Co(e.h),s:Co(i>0&&i<200?t*n/100/(i<=100?i:200-i)*100:0),l:Co(i/2),a:Co(r,2)}},l7=function(e){var t=Oq(e);return"hsl("+t.h+", "+t.s+"%, "+t.l+"%)"},a6=function(e){var t=Oq(e);return"hsla("+t.h+", "+t.s+"%, "+t.l+"%, "+t.a+")"},qMe=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var o=Math.floor(t),a=r*(1-n),s=r*(1-(t-o)*n),l=r*(1-(1-t+o)*n),u=o%6;return{r:Co(255*[r,s,a,a,l,r][u]),g:Co(255*[l,r,r,s,a,a][u]),b:Co(255*[a,a,l,r,r,s][u]),a:Co(i,2)}},KMe=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,o=Math.max(t,n,r),a=o-Math.min(t,n,r),s=a?o===t?(n-r)/a:o===n?2+(r-t)/a:4+(t-n)/a:0;return{h:Co(60*(s<0?s+6:s)),s:Co(o?a/o*100:0),v:Co(o/255*100),a:i}},YMe=Ke.memo(function(e){var t=e.hue,n=e.onChange,r=k4(["react-colorful__hue",e.className]);return Ke.createElement("div",{className:r},Ke.createElement(vP,{onMove:function(i){n({h:360*i.left})},onKey:function(i){n({h:r0(t+360*i.left,0,360)})},"aria-label":"Hue","aria-valuenow":Co(t),"aria-valuemax":"360","aria-valuemin":"0"},Ke.createElement(yP,{className:"react-colorful__hue-pointer",left:t/360,color:l7({h:t,s:100,v:100,a:1})})))}),XMe=Ke.memo(function(e){var t=e.hsva,n=e.onChange,r={backgroundColor:l7({h:t.h,s:100,v:100,a:1})};return Ke.createElement("div",{className:"react-colorful__saturation",style:r},Ke.createElement(vP,{onMove:function(i){n({s:100*i.left,v:100-100*i.top})},onKey:function(i){n({s:r0(t.s+100*i.left,0,100),v:r0(t.v-100*i.top,0,100)})},"aria-label":"Color","aria-valuetext":"Saturation "+Co(t.s)+"%, Brightness "+Co(t.v)+"%"},Ke.createElement(yP,{className:"react-colorful__saturation-pointer",top:1-t.v/100,left:t.s/100,color:l7(t)})))}),Rq=function(e,t){if(e===t)return!0;for(var n in e)if(e[n]!==t[n])return!1;return!0};function ZMe(e,t,n){var r=a7(n),i=S.useState(function(){return e.toHsva(t)}),o=i[0],a=i[1],s=S.useRef({color:t,hsva:o});S.useEffect(function(){if(!e.equal(t,s.current.color)){var u=e.toHsva(t);s.current={hsva:u,color:t},a(u)}},[t,e]),S.useEffect(function(){var u;Rq(o,s.current.hsva)||e.equal(u=e.fromHsva(o),s.current.color)||(s.current={hsva:o,color:u},r(u))},[o,e,r]);var l=S.useCallback(function(u){a(function(d){return Object.assign({},d,u)})},[]);return[o,l]}var QMe=typeof window<"u"?S.useLayoutEffect:S.useEffect,JMe=function(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:void 0},MD=new Map,eLe=function(e){QMe(function(){var t=e.current?e.current.ownerDocument:document;if(t!==void 0&&!MD.has(t)){var n=t.createElement("style");n.innerHTML=`.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`,MD.set(t,n);var r=JMe();r&&n.setAttribute("nonce",r),t.head.appendChild(n)}},[])},tLe=function(e){var t=e.className,n=e.hsva,r=e.onChange,i={backgroundImage:"linear-gradient(90deg, "+a6(Object.assign({},n,{a:0}))+", "+a6(Object.assign({},n,{a:1}))+")"},o=k4(["react-colorful__alpha",t]),a=Co(100*n.a);return Ke.createElement("div",{className:o},Ke.createElement("div",{className:"react-colorful__alpha-gradient",style:i}),Ke.createElement(vP,{onMove:function(s){r({a:s.left})},onKey:function(s){r({a:r0(n.a+s.left)})},"aria-label":"Alpha","aria-valuetext":a+"%","aria-valuenow":a,"aria-valuemin":"0","aria-valuemax":"100"},Ke.createElement(yP,{className:"react-colorful__alpha-pointer",left:n.a,color:a6(n)})))},nLe=function(e){var t=e.className,n=e.colorModel,r=e.color,i=r===void 0?n.defaultColor:r,o=e.onChange,a=Aq(e,["className","colorModel","color","onChange"]),s=S.useRef(null);eLe(s);var l=ZMe(n,i,o),u=l[0],d=l[1],h=k4(["react-colorful",t]);return Ke.createElement("div",_4({},a,{ref:s,className:h}),Ke.createElement(XMe,{hsva:u,onChange:d}),Ke.createElement(YMe,{hue:u.h,onChange:d}),Ke.createElement(tLe,{hsva:u,onChange:d,className:"react-colorful__last-control"}))},rLe={defaultColor:{r:0,g:0,b:0,a:1},toHsva:KMe,fromHsva:qMe,equal:Rq},iLe=function(e){return Ke.createElement(nLe,_4({},e,{colorModel:rLe}))};const B3=e=>{const{styleClass:t,...n}=e;return g.jsx(iLe,{className:`invokeai__color-picker ${t}`,...n})},oLe=lt([rn,Lr],(e,t)=>{const{brushColor:n,maskColor:r,layer:i}=e;return{brushColor:n,maskColor:r,layer:i,isStaging:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function aLe(){const e=Te(),{brushColor:t,maskColor:n,layer:r,isStaging:i}=le(oLe),o=()=>{if(r==="base")return`rgba(${t.r},${t.g},${t.b},${t.a})`;if(r==="mask")return`rgba(${n.r},${n.g},${n.b},${n.a})`};return Je(["shift+BracketLeft"],()=>{e(Mm({...t,a:Pe.clamp(t.a-.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[t]),Je(["shift+BracketRight"],()=>{e(Mm({...t,a:Pe.clamp(t.a+.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[t]),g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(ao,{style:{width:"30px",height:"30px",minWidth:"30px",minHeight:"30px",borderRadius:"99999999px",backgroundColor:o(),cursor:"pointer"}}),children:g.jsxs(ke,{minWidth:"15rem",direction:"column",gap:"1rem",width:"100%",children:[r==="base"&&g.jsx(B3,{style:{width:"100%",paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:t,onChange:a=>e(Mm(a))}),r==="mask"&&g.jsx(B3,{style:{width:"100%",paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:n,onChange:a=>e(HW(a))})]})})}function Iq(){return g.jsxs(ke,{columnGap:"1rem",alignItems:"center",children:[g.jsx(GMe,{}),g.jsx(aLe,{})]})}function sLe(){const e=Te(),t=le(r=>r.canvas.shouldRestrictStrokesToBox),{t:n}=De();return g.jsx(Gn,{label:n("unifiedCanvas.betaLimitToBox"),isChecked:t,onChange:r=>e(ZW(r.target.checked))})}function lLe(){return g.jsxs(ke,{gap:"1rem",alignItems:"center",children:[g.jsx(Iq,{}),g.jsx(sLe,{})]})}function uLe(){const e=Te(),{t}=De(),n=()=>e(pE());return g.jsx(On,{size:"sm",leftIcon:g.jsx(hp,{}),onClick:n,tooltip:`${t("unifiedCanvas.clearMask")} (Shift+C)`,children:t("unifiedCanvas.betaClear")})}function cLe(){const e=le(i=>i.canvas.isMaskEnabled),t=Te(),{t:n}=De(),r=()=>t(h2(!e));return g.jsx(Gn,{label:`${n("unifiedCanvas.enableMask")} (H)`,isChecked:e,onChange:r})}function dLe(){const e=Te(),{t}=De(),n=le(r=>r.canvas.shouldPreserveMaskedArea);return g.jsx(Gn,{label:t("unifiedCanvas.betaPreserveMasked"),isChecked:n,onChange:r=>e(GW(r.target.checked))})}function fLe(){return g.jsxs(ke,{gap:"1rem",alignItems:"center",children:[g.jsx(Iq,{}),g.jsx(cLe,{}),g.jsx(dLe,{}),g.jsx(uLe,{})]})}function hLe(){const e=le(r=>r.canvas.shouldDarkenOutsideBoundingBox),t=Te(),{t:n}=De();return g.jsx(Gn,{label:n("unifiedCanvas.betaDarkenOutside"),isChecked:e,onChange:r=>t(VW(r.target.checked))})}function pLe(){const e=le(r=>r.canvas.shouldShowGrid),t=Te(),{t:n}=De();return g.jsx(Gn,{label:n("unifiedCanvas.showGrid"),isChecked:e,onChange:r=>t(KW(r.target.checked))})}function gLe(){const e=le(i=>i.canvas.shouldSnapToGrid),t=Te(),{t:n}=De(),r=i=>t(C3(i.target.checked));return g.jsx(Gn,{label:`${n("unifiedCanvas.snapToGrid")} (N)`,isChecked:e,onChange:r})}function mLe(){return g.jsxs(ke,{alignItems:"center",gap:"1rem",children:[g.jsx(pLe,{}),g.jsx(gLe,{}),g.jsx(hLe,{})]})}const vLe=lt([rn],e=>{const{tool:t,layer:n}=e;return{tool:t,layer:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function yLe(){const{tool:e,layer:t}=le(vLe);return g.jsxs(ke,{height:"2rem",minHeight:"2rem",maxHeight:"2rem",alignItems:"center",children:[t=="base"&&["brush","eraser","colorPicker"].includes(e)&&g.jsx(lLe,{}),t=="mask"&&["brush","eraser","colorPicker"].includes(e)&&g.jsx(fLe,{}),e=="move"&&g.jsx(mLe,{})]})}const bLe=lt([rn],e=>{const{doesCanvasNeedScaling:t}=e;return{doesCanvasNeedScaling:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),xLe=()=>{const e=Te(),{doesCanvasNeedScaling:t}=le(bLe);return S.useLayoutEffect(()=>{e(Li(!0));const n=Pe.debounce(()=>{e(Li(!0))},250);return window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[e]),g.jsx("div",{className:"workarea-single-view",children:g.jsxs(ke,{flexDirection:"row",width:"100%",height:"100%",columnGap:"1rem",padding:"1rem",children:[g.jsx(VMe,{}),g.jsxs(ke,{width:"100%",height:"100%",flexDirection:"column",rowGap:"1rem",children:[g.jsx(yLe,{}),t?g.jsx(kq,{}):g.jsx(_q,{})]})]})})},SLe=lt([rn,Lr],(e,t)=>{const{maskColor:n,layer:r,isMaskEnabled:i,shouldPreserveMaskedArea:o}=e;return{layer:r,maskColor:n,maskColorString:zh(n),isMaskEnabled:i,shouldPreserveMaskedArea:o,isStaging:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),wLe=()=>{const e=Te(),{t}=De(),{layer:n,maskColor:r,isMaskEnabled:i,shouldPreserveMaskedArea:o,isStaging:a}=le(SLe);Je(["q"],()=>{s()},{enabled:()=>!a,preventDefault:!0},[n]),Je(["shift+c"],()=>{l()},{enabled:()=>!a,preventDefault:!0},[]),Je(["h"],()=>{u()},{enabled:()=>!a,preventDefault:!0},[i]);const s=()=>{e(w3(n==="mask"?"base":"mask"))},l=()=>e(pE()),u=()=>e(h2(!i));return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Gi,{children:g.jsx(Ye,{"aria-label":t("unifiedCanvas.maskingOptions"),tooltip:t("unifiedCanvas.maskingOptions"),icon:g.jsx(Pke,{}),style:n==="mask"?{backgroundColor:"var(--accent-color)"}:{backgroundColor:"var(--btn-base-color)"},isDisabled:a})}),children:g.jsxs(ke,{direction:"column",gap:"0.5rem",children:[g.jsx(Gn,{label:`${t("unifiedCanvas.enableMask")} (H)`,isChecked:i,onChange:u}),g.jsx(Gn,{label:t("unifiedCanvas.preserveMaskedArea"),isChecked:o,onChange:d=>e(GW(d.target.checked))}),g.jsx(B3,{style:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:r,onChange:d=>e(HW(d))}),g.jsxs(On,{size:"sm",leftIcon:g.jsx(hp,{}),onClick:l,children:[t("unifiedCanvas.clearMask")," (Shift+C)"]})]})})},CLe=lt([rn],e=>{const{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldDarkenOutsideBoundingBox:r,shouldShowCanvasDebugInfo:i,shouldShowGrid:o,shouldShowIntermediates:a,shouldSnapToGrid:s,shouldRestrictStrokesToBox:l}=e;return{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldDarkenOutsideBoundingBox:r,shouldShowCanvasDebugInfo:i,shouldShowGrid:o,shouldShowIntermediates:a,shouldSnapToGrid:s,shouldRestrictStrokesToBox:l}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),_Le=()=>{const e=Te(),{t}=De(),{shouldAutoSave:n,shouldCropToBoundingBoxOnSave:r,shouldDarkenOutsideBoundingBox:i,shouldShowCanvasDebugInfo:o,shouldShowGrid:a,shouldShowIntermediates:s,shouldSnapToGrid:l,shouldRestrictStrokesToBox:u}=le(CLe);Je(["n"],()=>{e(C3(!l))},{enabled:!0,preventDefault:!0},[l]);const d=h=>e(C3(h.target.checked));return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{tooltip:t("unifiedCanvas.canvasSettings"),"aria-label":t("unifiedCanvas.canvasSettings"),icon:g.jsx(BE,{})}),children:g.jsxs(ke,{direction:"column",gap:"0.5rem",children:[g.jsx(Gn,{label:t("unifiedCanvas.showIntermediates"),isChecked:s,onChange:h=>e(YW(h.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.showGrid"),isChecked:a,onChange:h=>e(KW(h.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.snapToGrid"),isChecked:l,onChange:d}),g.jsx(Gn,{label:t("unifiedCanvas.darkenOutsideSelection"),isChecked:i,onChange:h=>e(VW(h.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.autoSaveToGallery"),isChecked:n,onChange:h=>e(WW(h.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.saveBoxRegionOnly"),isChecked:r,onChange:h=>e(UW(h.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.limitStrokesToBox"),isChecked:u,onChange:h=>e(ZW(h.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.showCanvasDebugInfo"),isChecked:o,onChange:h=>e(qW(h.target.checked))}),g.jsx(Lq,{}),g.jsx(Mq,{})]})})},kLe=lt([rn,Lr,hr],(e,t,n)=>{const{isProcessing:r}=n,{tool:i,brushColor:o,brushSize:a}=e;return{tool:i,isStaging:t,isProcessing:r,brushColor:o,brushSize:a}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),ELe=()=>{const e=Te(),{tool:t,brushColor:n,brushSize:r,isStaging:i}=le(kLe),{t:o}=De();Je(["b"],()=>{a()},{enabled:()=>!i,preventDefault:!0},[]),Je(["e"],()=>{s()},{enabled:()=>!i,preventDefault:!0},[t]),Je(["c"],()=>{l()},{enabled:()=>!i,preventDefault:!0},[t]),Je(["shift+f"],()=>{u()},{enabled:()=>!i,preventDefault:!0}),Je(["delete","backspace"],()=>{d()},{enabled:()=>!i,preventDefault:!0}),Je(["BracketLeft"],()=>{e(Lm(Math.max(r-5,5)))},{enabled:()=>!i,preventDefault:!0},[r]),Je(["BracketRight"],()=>{e(Lm(Math.min(r+5,500)))},{enabled:()=>!i,preventDefault:!0},[r]),Je(["shift+BracketLeft"],()=>{e(Mm({...n,a:Pe.clamp(n.a-.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[n]),Je(["shift+BracketRight"],()=>{e(Mm({...n,a:Pe.clamp(n.a+.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[n]);const a=()=>e(Jl("brush")),s=()=>e(Jl("eraser")),l=()=>e(Jl("colorPicker")),u=()=>e(NW()),d=()=>e(jW());return g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.brush")} (B)`,tooltip:`${o("unifiedCanvas.brush")} (B)`,icon:g.jsx(aG,{}),"data-selected":t==="brush"&&!i,onClick:a,isDisabled:i}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.eraser")} (E)`,tooltip:`${o("unifiedCanvas.eraser")} (E)`,icon:g.jsx(nG,{}),"data-selected":t==="eraser"&&!i,isDisabled:i,onClick:s}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.fillBoundingBox")} (Shift+F)`,tooltip:`${o("unifiedCanvas.fillBoundingBox")} (Shift+F)`,icon:g.jsx(iG,{}),isDisabled:i,onClick:u}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,tooltip:`${o("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),isDisabled:i,onClick:d}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.colorPicker")} (C)`,tooltip:`${o("unifiedCanvas.colorPicker")} (C)`,icon:g.jsx(rG,{}),"data-selected":t==="colorPicker"&&!i,isDisabled:i,onClick:l}),g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":o("unifiedCanvas.brushOptions"),tooltip:o("unifiedCanvas.brushOptions"),icon:g.jsx(FE,{})}),children:g.jsxs(ke,{minWidth:"15rem",direction:"column",gap:"1rem",width:"100%",children:[g.jsx(ke,{gap:"1rem",justifyContent:"space-between",children:g.jsx(Dn,{label:o("unifiedCanvas.brushSize"),value:r,withInput:!0,onChange:h=>e(Lm(h)),sliderNumberInputProps:{max:500},inputReadOnly:!1})}),g.jsx(B3,{style:{width:"100%",paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:n,onChange:h=>e(Mm(h))})]})})]})},PLe=lt([hr,rn,Lr],(e,t,n)=>{const{isProcessing:r}=e,{tool:i,shouldCropToBoundingBoxOnSave:o,layer:a,isMaskEnabled:s}=t;return{isProcessing:r,isStaging:n,isMaskEnabled:s,tool:i,layer:a,shouldCropToBoundingBoxOnSave:o}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),TLe=()=>{const e=Te(),{isProcessing:t,isStaging:n,isMaskEnabled:r,layer:i,tool:o,shouldCropToBoundingBoxOnSave:a}=le(PLe),s=Qs(),{t:l}=De(),{openUploader:u}=OE();Je(["v"],()=>{d()},{enabled:()=>!n,preventDefault:!0},[]),Je(["r"],()=>{m()},{enabled:()=>!0,preventDefault:!0},[s]),Je(["shift+m"],()=>{b()},{enabled:()=>!n,preventDefault:!0},[s,t]),Je(["shift+s"],()=>{w()},{enabled:()=>!n,preventDefault:!0},[s,t]),Je(["meta+c","ctrl+c"],()=>{E()},{enabled:()=>!n,preventDefault:!0},[s,t]),Je(["shift+d"],()=>{_()},{enabled:()=>!n,preventDefault:!0},[s,t]);const d=()=>e(Jl("move")),h=Tq(()=>m(!1),()=>m(!0)),m=(T=!1)=>{const L=Qs();if(!L)return;const O=L.getClientRect({skipTransform:!0});e(BW({contentRect:O,shouldScaleTo1:T}))},y=()=>{e(gE()),e(r4())},b=()=>{e(Td({cropVisible:!1,shouldSetAsInitialImage:!0}))},w=()=>{e(Td({cropVisible:!a,cropToBoundingBox:a,shouldSaveToGallery:!0}))},E=()=>{e(Td({cropVisible:!a,cropToBoundingBox:a,shouldCopy:!0}))},_=()=>{e(Td({cropVisible:!a,cropToBoundingBox:a,shouldDownload:!0}))},k=T=>{const L=T.target.value;e(w3(L)),L==="mask"&&!r&&e(h2(!0))};return g.jsxs("div",{className:"inpainting-settings",children:[g.jsx(Jo,{tooltip:`${l("unifiedCanvas.layer")} (Q)`,tooltipProps:{hasArrow:!0,placement:"top"},value:i,validValues:IW,onChange:k,isDisabled:n}),g.jsx(wLe,{}),g.jsx(ELe,{}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.move")} (V)`,tooltip:`${l("unifiedCanvas.move")} (V)`,icon:g.jsx(JV,{}),"data-selected":o==="move"||n,onClick:d}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.resetView")} (R)`,tooltip:`${l("unifiedCanvas.resetView")} (R)`,icon:g.jsx(tG,{}),onClick:h})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.mergeVisible")} (Shift+M)`,tooltip:`${l("unifiedCanvas.mergeVisible")} (Shift+M)`,icon:g.jsx(oG,{}),onClick:b,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.saveToGallery")} (Shift+S)`,tooltip:`${l("unifiedCanvas.saveToGallery")} (Shift+S)`,icon:g.jsx($E,{}),onClick:w,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,tooltip:`${l("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,icon:g.jsx(e0,{}),onClick:E,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.downloadAsImage")} (Shift+D)`,tooltip:`${l("unifiedCanvas.downloadAsImage")} (Shift+D)`,icon:g.jsx(NE,{}),onClick:_,isDisabled:n})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Pq,{}),g.jsx(Eq,{})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${l("common.upload")}`,tooltip:`${l("common.upload")}`,icon:g.jsx(h4,{}),onClick:u,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.clearCanvas")}`,tooltip:`${l("unifiedCanvas.clearCanvas")}`,icon:g.jsx(hp,{}),onClick:y,style:{backgroundColor:"var(--btn-delete-image)"},isDisabled:n})]}),g.jsx(Gi,{isAttached:!0,children:g.jsx(_Le,{})})]})},MLe=lt([rn],e=>{const{doesCanvasNeedScaling:t}=e;return{doesCanvasNeedScaling:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),LLe=()=>{const e=Te(),{doesCanvasNeedScaling:t}=le(MLe);return S.useLayoutEffect(()=>{e(Li(!0));const n=Pe.debounce(()=>{e(Li(!0))},250);return window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[e]),g.jsx("div",{className:"workarea-single-view",children:g.jsx("div",{className:"workarea-split-view-left",children:g.jsxs("div",{className:"inpainting-main-area",children:[g.jsx(TLe,{}),g.jsx("div",{className:"inpainting-canvas-area",children:t?g.jsx(kq,{}):g.jsx(_q,{})})]})})})},ALe=lt(rn,e=>{const{boundingBoxDimensions:t,boundingBoxScaleMethod:n}=e;return{boundingBoxDimensions:t,boundingBoxScale:n}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),OLe=()=>{const e=Te(),{boundingBoxDimensions:t}=le(ALe),{t:n}=De(),r=s=>{e(g1({...t,width:Math.floor(s)}))},i=s=>{e(g1({...t,height:Math.floor(s)}))},o=()=>{e(g1({...t,width:Math.floor(512)}))},a=()=>{e(g1({...t,height:Math.floor(512)}))};return g.jsxs(ke,{direction:"column",gap:2,children:[g.jsx(Dn,{label:n("parameters.width"),min:64,max:1024,step:64,value:t.width,onChange:r,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:o,sliderMarkRightOffset:-7}),g.jsx(Dn,{label:n("parameters.height"),min:64,max:1024,step:64,value:t.height,onChange:i,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:a,sliderMarkRightOffset:-7})]})},RLe=lt([eP,hr,rn],(e,t,n)=>{const{tileSize:r,infillMethod:i}=e,{infill_methods:o}=t,{boundingBoxScaleMethod:a,scaledBoundingBoxDimensions:s}=n;return{boundingBoxScale:a,scaledBoundingBoxDimensions:s,tileSize:r,infillMethod:i,availableInfillMethods:o,isManual:a==="manual"}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),ILe=()=>{const e=Te(),{tileSize:t,infillMethod:n,availableInfillMethods:r,boundingBoxScale:i,isManual:o,scaledBoundingBoxDimensions:a}=le(RLe),{t:s}=De(),l=y=>{e(Jb({...a,width:Math.floor(y)}))},u=y=>{e(Jb({...a,height:Math.floor(y)}))},d=()=>{e(Jb({...a,width:Math.floor(512)}))},h=()=>{e(Jb({...a,height:Math.floor(512)}))},m=y=>{e(d3e(y.target.value))};return g.jsxs(ke,{direction:"column",gap:4,children:[g.jsx(Jo,{label:s("parameters.scaleBeforeProcessing"),validValues:KSe,value:i,onChange:m}),g.jsx(Dn,{isInputDisabled:!o,isResetDisabled:!o,isSliderDisabled:!o,label:s("parameters.scaledWidth"),min:64,max:1024,step:64,value:a.width,onChange:l,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:d,sliderMarkRightOffset:-7}),g.jsx(Dn,{isInputDisabled:!o,isResetDisabled:!o,isSliderDisabled:!o,label:s("parameters.scaledHeight"),min:64,max:1024,step:64,value:a.height,onChange:u,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:h,sliderMarkRightOffset:-7}),g.jsx(Jo,{label:s("parameters.infillMethod"),value:n,validValues:r,onChange:y=>e(sU(y.target.value))}),g.jsx(Dn,{isInputDisabled:n!=="tile",isResetDisabled:n!=="tile",isSliderDisabled:n!=="tile",sliderMarkRightOffset:-4,label:s("parameters.tileSize"),min:16,max:64,sliderNumberInputProps:{max:256},value:t,onChange:y=>{e(rR(y))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{e(rR(32))}})]})};function DLe(){const e=Te(),t=le(r=>r.generation.seamBlur),{t:n}=De();return g.jsx(Dn,{sliderMarkRightOffset:-4,label:n("parameters.seamBlur"),min:0,max:64,sliderNumberInputProps:{max:512},value:t,onChange:r=>{e(JO(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{e(JO(16))}})}function jLe(){const e=Te(),{t}=De(),n=le(r=>r.generation.seamSize);return g.jsx(Dn,{sliderMarkRightOffset:-6,label:t("parameters.seamSize"),min:1,max:256,sliderNumberInputProps:{max:512},value:n,onChange:r=>{e(eR(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>e(eR(96))})}function NLe(){const{t:e}=De(),t=le(r=>r.generation.seamSteps),n=Te();return g.jsx(Dn,{sliderMarkRightOffset:-4,label:e("parameters.seamSteps"),min:1,max:100,sliderNumberInputProps:{max:999},value:t,onChange:r=>{n(tR(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{n(tR(30))}})}function $Le(){const e=Te(),{t}=De(),n=le(r=>r.generation.seamStrength);return g.jsx(Dn,{sliderMarkRightOffset:-7,label:t("parameters.seamStrength"),min:.01,max:.99,step:.01,value:n,onChange:r=>{e(nR(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{e(nR(.7))}})}const FLe=()=>g.jsxs(ke,{direction:"column",gap:2,children:[g.jsx(jLe,{}),g.jsx(DLe,{}),g.jsx($Le,{}),g.jsx(NLe,{})]});function BLe(){const{t:e}=De(),t={seed:{header:`${e("parameters.seed")}`,feature:oo.SEED,content:g.jsx(aP,{})},boundingBox:{header:`${e("parameters.boundingBoxHeader")}`,feature:oo.BOUNDING_BOX,content:g.jsx(OLe,{})},seamCorrection:{header:`${e("parameters.seamCorrectionHeader")}`,feature:oo.SEAM_CORRECTION,content:g.jsx(FLe,{})},infillAndScaling:{header:`${e("parameters.infillScalingHeader")}`,feature:oo.INFILL_AND_SCALING,content:g.jsx(ILe,{})},variations:{header:`${e("parameters.variations")}`,feature:oo.VARIATIONS,content:g.jsx(lP,{}),additionalHeaderComponents:g.jsx(sP,{})},symmetry:{header:`${e("parameters.symmetry")}`,content:g.jsx(iP,{}),additionalHeaderComponents:g.jsx(oP,{})}},n={unifiedCanvasImg2Img:{header:`${e("parameters.imageToImage")}`,feature:void 0,content:g.jsx(gq,{label:e("parameters.img2imgStrength"),styleClass:"main-settings-block image-to-image-strength-main-option"})}};return g.jsxs(hP,{children:[g.jsxs(ke,{flexDir:"column",rowGap:"0.5rem",children:[g.jsx(fP,{}),g.jsx(dP,{})]}),g.jsx(cP,{}),g.jsx(uP,{}),g.jsx(n0,{accordionInfo:n}),g.jsx(n0,{accordionInfo:t})]})}function zLe(){const e=le(t=>t.ui.shouldUseCanvasBetaLayout);return g.jsx(rP,{optionsPanel:g.jsx(BLe,{}),styleClass:"inpainting-workarea-overrides",children:e?g.jsx(xLe,{}):g.jsx(LLe,{})})}const Qa={txt2img:{title:g.jsx(R_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(OPe,{}),tooltip:"Text To Image"},img2img:{title:g.jsx(L_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(_Pe,{}),tooltip:"Image To Image"},unifiedCanvas:{title:g.jsx(D_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(zLe,{}),tooltip:"Unified Canvas"},nodes:{title:g.jsx(A_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(E_e,{}),tooltip:"Nodes"},postprocess:{title:g.jsx(O_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(P_e,{}),tooltip:"Post Processing"},training:{title:g.jsx(I_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(T_e,{}),tooltip:"Training"}};function HLe(){Qa.txt2img.tooltip=Et.t("common.text2img"),Qa.img2img.tooltip=Et.t("common.img2img"),Qa.unifiedCanvas.tooltip=Et.t("common.unifiedCanvas"),Qa.nodes.tooltip=Et.t("common.nodes"),Qa.postprocess.tooltip=Et.t("common.postProcessing"),Qa.training.tooltip=Et.t("common.training")}function WLe(){const e=le(k_e),t=le(u=>u.lightbox.isLightboxOpen),{shouldShowGallery:n,shouldShowParametersPanel:r,shouldPinGallery:i,shouldPinParametersPanel:o}=le(nP);M_e(HLe);const a=Te();Je("1",()=>{a(Wo(0))}),Je("2",()=>{a(Wo(1))}),Je("3",()=>{a(Wo(2))}),Je("4",()=>{a(Wo(3))}),Je("5",()=>{a(Wo(4))}),Je("6",()=>{a(Wo(5))}),Je("z",()=>{a(Om(!t))},[t]),Je("f",()=>{n||r?(a(Fh(!1)),a(Am(!1))):(a(Fh(!0)),a(Am(!0))),(i||o)&&setTimeout(()=>a(Li(!0)),400)},[n,r]);const s=()=>{const u=[];return Object.keys(Qa).forEach(d=>{u.push(g.jsx(si,{hasArrow:!0,label:Qa[d].tooltip,placement:"right",children:g.jsx(sW,{children:Qa[d].title})},d))}),u},l=()=>{const u=[];return Object.keys(Qa).forEach(d=>{u.push(g.jsx(oW,{className:"app-tabs-panel",children:Qa[d].workarea},d))}),u};return g.jsxs(iW,{isLazy:!0,className:"app-tabs",variant:"unstyled",defaultIndex:e,index:e,onChange:u=>{a(Wo(u))},children:[g.jsx("div",{className:"app-tabs-list",children:s()}),g.jsx(aW,{className:"app-tabs-panels",children:t?g.jsx(UEe,{}):l()})]})}var ULe=new Map([["aac","audio/aac"],["abw","application/x-abiword"],["arc","application/x-freearc"],["avif","image/avif"],["avi","video/x-msvideo"],["azw","application/vnd.amazon.ebook"],["bin","application/octet-stream"],["bmp","image/bmp"],["bz","application/x-bzip"],["bz2","application/x-bzip2"],["cda","application/x-cdf"],["csh","application/x-csh"],["css","text/css"],["csv","text/csv"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["eot","application/vnd.ms-fontobject"],["epub","application/epub+zip"],["gz","application/gzip"],["gif","image/gif"],["heic","image/heic"],["heif","image/heif"],["htm","text/html"],["html","text/html"],["ico","image/vnd.microsoft.icon"],["ics","text/calendar"],["jar","application/java-archive"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["js","text/javascript"],["json","application/json"],["jsonld","application/ld+json"],["mid","audio/midi"],["midi","audio/midi"],["mjs","text/javascript"],["mp3","audio/mpeg"],["mp4","video/mp4"],["mpeg","video/mpeg"],["mpkg","application/vnd.apple.installer+xml"],["odp","application/vnd.oasis.opendocument.presentation"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["odt","application/vnd.oasis.opendocument.text"],["oga","audio/ogg"],["ogv","video/ogg"],["ogx","application/ogg"],["opus","audio/opus"],["otf","font/otf"],["png","image/png"],["pdf","application/pdf"],["php","application/x-httpd-php"],["ppt","application/vnd.ms-powerpoint"],["pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"],["rar","application/vnd.rar"],["rtf","application/rtf"],["sh","application/x-sh"],["svg","image/svg+xml"],["swf","application/x-shockwave-flash"],["tar","application/x-tar"],["tif","image/tiff"],["tiff","image/tiff"],["ts","video/mp2t"],["ttf","font/ttf"],["txt","text/plain"],["vsd","application/vnd.visio"],["wav","audio/wav"],["weba","audio/webm"],["webm","video/webm"],["webp","image/webp"],["woff","font/woff"],["woff2","font/woff2"],["xhtml","application/xhtml+xml"],["xls","application/vnd.ms-excel"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xml","application/xml"],["xul","application/vnd.mozilla.xul+xml"],["zip","application/zip"],["7z","application/x-7z-compressed"],["mkv","video/x-matroska"],["mov","video/quicktime"],["msg","application/vnd.ms-outlook"]]);function C2(e,t){var n=VLe(e);if(typeof n.path!="string"){var r=e.webkitRelativePath;Object.defineProperty(n,"path",{value:typeof t=="string"?t:typeof r=="string"&&r.length>0?r:e.name,writable:!1,configurable:!1,enumerable:!0})}return n}function VLe(e){var t=e.name,n=t&&t.lastIndexOf(".")!==-1;if(n&&!e.type){var r=t.split(".").pop().toLowerCase(),i=ULe.get(r);i&&Object.defineProperty(e,"type",{value:i,writable:!1,configurable:!1,enumerable:!0})}return e}var GLe=[".DS_Store","Thumbs.db"];function qLe(e){return f0(this,void 0,void 0,function(){return h0(this,function(t){return z3(e)&&KLe(e.dataTransfer)?[2,QLe(e.dataTransfer,e.type)]:YLe(e)?[2,XLe(e)]:Array.isArray(e)&&e.every(function(n){return"getFile"in n&&typeof n.getFile=="function"})?[2,ZLe(e)]:[2,[]]})})}function KLe(e){return z3(e)}function YLe(e){return z3(e)&&z3(e.target)}function z3(e){return typeof e=="object"&&e!==null}function XLe(e){return u7(e.target.files).map(function(t){return C2(t)})}function ZLe(e){return f0(this,void 0,void 0,function(){var t;return h0(this,function(n){switch(n.label){case 0:return[4,Promise.all(e.map(function(r){return r.getFile()}))];case 1:return t=n.sent(),[2,t.map(function(r){return C2(r)})]}})})}function QLe(e,t){return f0(this,void 0,void 0,function(){var n,r;return h0(this,function(i){switch(i.label){case 0:return e.items?(n=u7(e.items).filter(function(o){return o.kind==="file"}),t!=="drop"?[2,n]:[4,Promise.all(n.map(JLe))]):[3,2];case 1:return r=i.sent(),[2,LD(Dq(r))];case 2:return[2,LD(u7(e.files).map(function(o){return C2(o)}))]}})})}function LD(e){return e.filter(function(t){return GLe.indexOf(t.name)===-1})}function u7(e){if(e===null)return[];for(var t=[],n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);nn)return[!1,DD(n)];if(e.sizen)return[!1,DD(n)]}return[!0,null]}function Sh(e){return e!=null}function gAe(e){var t=e.files,n=e.accept,r=e.minSize,i=e.maxSize,o=e.multiple,a=e.maxFiles,s=e.validator;return!o&&t.length>1||o&&a>=1&&t.length>a?!1:t.every(function(l){var u=Fq(l,n),d=zy(u,1),h=d[0],m=Bq(l,r,i),y=zy(m,1),b=y[0],w=s?s(l):null;return h&&b&&!w})}function H3(e){return typeof e.isPropagationStopped=="function"?e.isPropagationStopped():typeof e.cancelBubble<"u"?e.cancelBubble:!1}function kx(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,function(t){return t==="Files"||t==="application/x-moz-file"}):!!e.target&&!!e.target.files}function ND(e){e.preventDefault()}function mAe(e){return e.indexOf("MSIE")!==-1||e.indexOf("Trident/")!==-1}function vAe(e){return e.indexOf("Edge/")!==-1}function yAe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.navigator.userAgent;return mAe(e)||vAe(e)}function Ml(){for(var e=arguments.length,t=new Array(e),n=0;n1?i-1:0),a=1;ae.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function DAe(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,o;for(o=0;o=0)&&(n[i]=e[i]);return n}var bP=S.forwardRef(function(e,t){var n=e.children,r=W3(e,_Ae),i=Vq(r),o=i.open,a=W3(i,kAe);return S.useImperativeHandle(t,function(){return{open:o}},[o]),Ke.createElement(S.Fragment,null,n(_r(_r({},a),{},{open:o})))});bP.displayName="Dropzone";var Uq={disabled:!1,getFilesFromEvent:qLe,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!0,autoFocus:!1};bP.defaultProps=Uq;bP.propTypes={children:An.func,accept:An.objectOf(An.arrayOf(An.string)),multiple:An.bool,preventDropOnDocument:An.bool,noClick:An.bool,noKeyboard:An.bool,noDrag:An.bool,noDragEventsBubbling:An.bool,minSize:An.number,maxSize:An.number,maxFiles:An.number,disabled:An.bool,getFilesFromEvent:An.func,onFileDialogCancel:An.func,onFileDialogOpen:An.func,useFsAccessApi:An.bool,autoFocus:An.bool,onDragEnter:An.func,onDragLeave:An.func,onDragOver:An.func,onDrop:An.func,onDropAccepted:An.func,onDropRejected:An.func,onError:An.func,validator:An.func};var h7={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,acceptedFiles:[],fileRejections:[]};function Vq(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=_r(_r({},Uq),e),n=t.accept,r=t.disabled,i=t.getFilesFromEvent,o=t.maxSize,a=t.minSize,s=t.multiple,l=t.maxFiles,u=t.onDragEnter,d=t.onDragLeave,h=t.onDragOver,m=t.onDrop,y=t.onDropAccepted,b=t.onDropRejected,w=t.onFileDialogCancel,E=t.onFileDialogOpen,_=t.useFsAccessApi,k=t.autoFocus,T=t.preventDropOnDocument,L=t.noClick,O=t.noKeyboard,D=t.noDrag,I=t.noDragEventsBubbling,N=t.onError,W=t.validator,B=S.useMemo(function(){return SAe(n)},[n]),K=S.useMemo(function(){return xAe(n)},[n]),ne=S.useMemo(function(){return typeof E=="function"?E:FD},[E]),z=S.useMemo(function(){return typeof w=="function"?w:FD},[w]),$=S.useRef(null),V=S.useRef(null),X=S.useReducer(jAe,h7),Q=s6(X,2),G=Q[0],Y=Q[1],ee=G.isFocused,fe=G.isFileDialogActive,Ce=S.useRef(typeof window<"u"&&window.isSecureContext&&_&&bAe()),we=function(){!Ce.current&&fe&&setTimeout(function(){if(V.current){var je=V.current.files;je.length||(Y({type:"closeDialog"}),z())}},300)};S.useEffect(function(){return window.addEventListener("focus",we,!1),function(){window.removeEventListener("focus",we,!1)}},[V,fe,z,Ce]);var xe=S.useRef([]),Le=function(je){$.current&&$.current.contains(je.target)||(je.preventDefault(),xe.current=[])};S.useEffect(function(){return T&&(document.addEventListener("dragover",ND,!1),document.addEventListener("drop",Le,!1)),function(){T&&(document.removeEventListener("dragover",ND),document.removeEventListener("drop",Le))}},[$,T]),S.useEffect(function(){return!r&&k&&$.current&&$.current.focus(),function(){}},[$,k,r]);var Se=S.useCallback(function(ye){N?N(ye):console.error(ye)},[N]),Qe=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye),xe.current=[].concat(TAe(xe.current),[ye.target]),kx(ye)&&Promise.resolve(i(ye)).then(function(je){if(!(H3(ye)&&!I)){var vt=je.length,Mt=vt>0&&gAe({files:je,accept:B,minSize:a,maxSize:o,multiple:s,maxFiles:l,validator:W}),Me=vt>0&&!Mt;Y({isDragAccept:Mt,isDragReject:Me,isDragActive:!0,type:"setDraggedFiles"}),u&&u(ye)}}).catch(function(je){return Se(je)})},[i,u,Se,I,B,a,o,s,l,W]),Xe=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye);var je=kx(ye);if(je&&ye.dataTransfer)try{ye.dataTransfer.dropEffect="copy"}catch{}return je&&h&&h(ye),!1},[h,I]),tt=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye);var je=xe.current.filter(function(Mt){return $.current&&$.current.contains(Mt)}),vt=je.indexOf(ye.target);vt!==-1&&je.splice(vt,1),xe.current=je,!(je.length>0)&&(Y({type:"setDraggedFiles",isDragActive:!1,isDragAccept:!1,isDragReject:!1}),kx(ye)&&d&&d(ye))},[$,d,I]),yt=S.useCallback(function(ye,je){var vt=[],Mt=[];ye.forEach(function(Me){var Ct=Fq(Me,B),zt=s6(Ct,2),$n=zt[0],qe=zt[1],pt=Bq(Me,a,o),zr=s6(pt,2),rr=zr[0],Bn=zr[1],li=W?W(Me):null;if($n&&rr&&!li)vt.push(Me);else{var vs=[qe,Bn];li&&(vs=vs.concat(li)),Mt.push({file:Me,errors:vs.filter(function(tl){return tl})})}}),(!s&&vt.length>1||s&&l>=1&&vt.length>l)&&(vt.forEach(function(Me){Mt.push({file:Me,errors:[pAe]})}),vt.splice(0)),Y({acceptedFiles:vt,fileRejections:Mt,type:"setFiles"}),m&&m(vt,Mt,je),Mt.length>0&&b&&b(Mt,je),vt.length>0&&y&&y(vt,je)},[Y,s,B,a,o,l,m,y,b,W]),Be=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye),xe.current=[],kx(ye)&&Promise.resolve(i(ye)).then(function(je){H3(ye)&&!I||yt(je,ye)}).catch(function(je){return Se(je)}),Y({type:"reset"})},[i,yt,Se,I]),Ae=S.useCallback(function(){if(Ce.current){Y({type:"openDialog"}),ne();var ye={multiple:s,types:K};window.showOpenFilePicker(ye).then(function(je){return i(je)}).then(function(je){yt(je,null),Y({type:"closeDialog"})}).catch(function(je){wAe(je)?(z(je),Y({type:"closeDialog"})):CAe(je)?(Ce.current=!1,V.current?(V.current.value=null,V.current.click()):Se(new Error("Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided."))):Se(je)});return}V.current&&(Y({type:"openDialog"}),ne(),V.current.value=null,V.current.click())},[Y,ne,z,_,yt,Se,K,s]),bt=S.useCallback(function(ye){!$.current||!$.current.isEqualNode(ye.target)||(ye.key===" "||ye.key==="Enter"||ye.keyCode===32||ye.keyCode===13)&&(ye.preventDefault(),Ae())},[$,Ae]),Fe=S.useCallback(function(){Y({type:"focus"})},[]),at=S.useCallback(function(){Y({type:"blur"})},[]),jt=S.useCallback(function(){L||(yAe()?setTimeout(Ae,0):Ae())},[L,Ae]),mt=function(je){return r?null:je},Zt=function(je){return O?null:mt(je)},on=function(je){return D?null:mt(je)},se=function(je){I&&je.stopPropagation()},Ie=S.useMemo(function(){return function(){var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},je=ye.refKey,vt=je===void 0?"ref":je,Mt=ye.role,Me=ye.onKeyDown,Ct=ye.onFocus,zt=ye.onBlur,$n=ye.onClick,qe=ye.onDragEnter,pt=ye.onDragOver,zr=ye.onDragLeave,rr=ye.onDrop,Bn=W3(ye,EAe);return _r(_r(f7({onKeyDown:Zt(Ml(Me,bt)),onFocus:Zt(Ml(Ct,Fe)),onBlur:Zt(Ml(zt,at)),onClick:mt(Ml($n,jt)),onDragEnter:on(Ml(qe,Qe)),onDragOver:on(Ml(pt,Xe)),onDragLeave:on(Ml(zr,tt)),onDrop:on(Ml(rr,Be)),role:typeof Mt=="string"&&Mt!==""?Mt:"presentation"},vt,$),!r&&!O?{tabIndex:0}:{}),Bn)}},[$,bt,Fe,at,jt,Qe,Xe,tt,Be,O,D,r]),He=S.useCallback(function(ye){ye.stopPropagation()},[]),Ue=S.useMemo(function(){return function(){var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},je=ye.refKey,vt=je===void 0?"ref":je,Mt=ye.onChange,Me=ye.onClick,Ct=W3(ye,PAe),zt=f7({accept:B,multiple:s,type:"file",style:{display:"none"},onChange:mt(Ml(Mt,Be)),onClick:mt(Ml(Me,He)),tabIndex:-1},vt,V);return _r(_r({},zt),Ct)}},[V,n,s,Be,r]);return _r(_r({},G),{},{isFocused:ee&&!r,getRootProps:Ie,getInputProps:Ue,rootRef:$,inputRef:V,open:mt(Ae)})}function jAe(e,t){switch(t.type){case"focus":return _r(_r({},e),{},{isFocused:!0});case"blur":return _r(_r({},e),{},{isFocused:!1});case"openDialog":return _r(_r({},h7),{},{isFileDialogActive:!0});case"closeDialog":return _r(_r({},e),{},{isFileDialogActive:!1});case"setDraggedFiles":return _r(_r({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case"setFiles":return _r(_r({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections});case"reset":return _r({},h7);default:return e}}function FD(){}const NAe=e=>{const{isDragAccept:t,isDragReject:n,overlaySecondaryText:r,setIsHandlingUpload:i}=e;return Je("esc",()=>{i(!1)}),g.jsxs("div",{className:"dropzone-container",children:[t&&g.jsx("div",{className:"dropzone-overlay is-drag-accept",children:g.jsxs(jh,{size:"lg",children:["Upload Image",r]})}),n&&g.jsxs("div",{className:"dropzone-overlay is-drag-reject",children:[g.jsx(jh,{size:"lg",children:"Invalid Upload"}),g.jsx(jh,{size:"md",children:"Must be single JPEG or PNG image"})]})]})},$Ae=e=>{const{children:t}=e,n=Te(),r=le(Br),i=a2({}),{t:o}=De(),[a,s]=S.useState(!1),{setOpenUploader:l}=OE(),u=S.useCallback(T=>{s(!0);const L=T.errors.reduce((O,D)=>`${O} -${D.message}`,"");i({title:o("toast.uploadFailed"),description:L,status:"error",isClosable:!0})},[o,i]),d=S.useCallback(async T=>{n(TI({imageFile:T}))},[n]),h=S.useCallback((T,L)=>{L.forEach(O=>{u(O)}),T.forEach(O=>{d(O)})},[d,u]),{getRootProps:m,getInputProps:y,isDragAccept:b,isDragReject:w,isDragActive:E,open:_}=Vq({accept:{"image/png":[".png"],"image/jpeg":[".jpg",".jpeg",".png"]},noClick:!0,onDrop:h,onDragOver:()=>s(!0),maxFiles:1});l(_),S.useEffect(()=>{const T=L=>{var N;const O=(N=L.clipboardData)==null?void 0:N.items;if(!O)return;const D=[];for(const W of O)W.kind==="file"&&["image/png","image/jpg"].includes(W.type)&&D.push(W);if(!D.length)return;if(L.stopImmediatePropagation(),D.length>1){i({description:o("toast.uploadFailedMultipleImagesDesc"),status:"error",isClosable:!0});return}const I=D[0].getAsFile();if(!I){i({description:o("toast.uploadFailedUnableToLoadDesc"),status:"error",isClosable:!0});return}n(TI({imageFile:I}))};return document.addEventListener("paste",T),()=>{document.removeEventListener("paste",T)}},[o,n,i,r]);const k=["img2img","unifiedCanvas"].includes(r)?` to ${Qa[r].tooltip}`:"";return g.jsx(AE.Provider,{value:_,children:g.jsxs("div",{...m({style:{}}),onKeyDown:T=>{T.key},children:[g.jsx("input",{...y()}),t,E&&a&&g.jsx(NAe,{isDragAccept:b,isDragReject:w,overlaySecondaryText:k,setIsHandlingUpload:s})]})})},FAe=lt(hr,e=>e.log,{memoizeOptions:{resultEqualityCheck:(e,t)=>e.length===t.length}}),BAe=lt(hr,e=>({shouldShowLogViewer:e.shouldShowLogViewer,hasError:e.hasError,wasErrorSeen:e.wasErrorSeen}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),zAe=()=>{const e=Te(),t=le(FAe),{shouldShowLogViewer:n,hasError:r,wasErrorSeen:i}=le(BAe),[o,a]=S.useState(!0),s=S.useRef(null);S.useLayoutEffect(()=>{s.current!==null&&o&&(s.current.scrollTop=s.current.scrollHeight)},[o,t,n]);const l=()=>{e(DU()),e(FC(!n))};Je("`",()=>{e(FC(!n))},[n]),Je("esc",()=>{e(FC(!1))});const u=()=>{s.current&&o&&s.current.scrollTop{const{timestamp:m,message:y,level:b}=d;return g.jsxs("div",{className:`console-entry console-${b}-color`,children:[g.jsxs("p",{className:"console-timestamp",children:[m,":"]}),g.jsx("p",{className:"console-message",children:y})]},h)})})}),n&&g.jsx(si,{hasArrow:!0,label:o?"Autoscroll On":"Autoscroll Off",children:g.jsx(ls,{className:"console-autoscroll-icon-button","data-autoscroll-enabled":o,size:"sm","aria-label":"Toggle autoscroll",variant:"solid",icon:g.jsx(hke,{}),onClick:()=>a(!o)})}),g.jsx(si,{hasArrow:!0,label:n?"Hide Console":"Show Console",children:g.jsx(ls,{className:"console-toggle-icon-button","data-error-seen":r||!i,size:"sm",position:"fixed",variant:"solid","aria-label":"Toggle Log Viewer",icon:n?g.jsx(Tke,{}):g.jsx(eG,{}),onClick:l})})]})},HAe=lt(hr,e=>({isProcessing:e.isProcessing,currentStep:e.currentStep,totalSteps:e.totalSteps,currentStatusHasSteps:e.currentStatusHasSteps}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),WAe=()=>{const{isProcessing:e,currentStep:t,totalSteps:n,currentStatusHasSteps:r}=le(HAe),i=t?Math.round(t*100/n):0;return g.jsx(UH,{value:i,isIndeterminate:e&&!r,className:"progress-bar"})};function UAe(e){const{title:t,hotkey:n,description:r}=e;return g.jsxs("div",{className:"hotkey-modal-item",children:[g.jsxs("div",{className:"hotkey-info",children:[g.jsx("p",{className:"hotkey-title",children:t}),r&&g.jsx("p",{className:"hotkey-description",children:r})]}),g.jsx("div",{className:"hotkey-key",children:n})]})}function VAe({children:e}){const{isOpen:t,onOpen:n,onClose:r}=Kd(),{t:i}=De(),o=[{title:i("hotkeys.invoke.title"),desc:i("hotkeys.invoke.desc"),hotkey:"Ctrl+Enter"},{title:i("hotkeys.cancel.title"),desc:i("hotkeys.cancel.desc"),hotkey:"Shift+X"},{title:i("hotkeys.focusPrompt.title"),desc:i("hotkeys.focusPrompt.desc"),hotkey:"Alt+A"},{title:i("hotkeys.toggleOptions.title"),desc:i("hotkeys.toggleOptions.desc"),hotkey:"O"},{title:i("hotkeys.pinOptions.title"),desc:i("hotkeys.pinOptions.desc"),hotkey:"Shift+O"},{title:i("hotkeys.toggleViewer.title"),desc:i("hotkeys.toggleViewer.desc"),hotkey:"Z"},{title:i("hotkeys.toggleGallery.title"),desc:i("hotkeys.toggleGallery.desc"),hotkey:"G"},{title:i("hotkeys.maximizeWorkSpace.title"),desc:i("hotkeys.maximizeWorkSpace.desc"),hotkey:"F"},{title:i("hotkeys.changeTabs.title"),desc:i("hotkeys.changeTabs.desc"),hotkey:"1-5"},{title:i("hotkeys.consoleToggle.title"),desc:i("hotkeys.consoleToggle.desc"),hotkey:"`"}],a=[{title:i("hotkeys.setPrompt.title"),desc:i("hotkeys.setPrompt.desc"),hotkey:"P"},{title:i("hotkeys.setSeed.title"),desc:i("hotkeys.setSeed.desc"),hotkey:"S"},{title:i("hotkeys.setParameters.title"),desc:i("hotkeys.setParameters.desc"),hotkey:"A"},{title:i("hotkeys.restoreFaces.title"),desc:i("hotkeys.restoreFaces.desc"),hotkey:"Shift+R"},{title:i("hotkeys.upscale.title"),desc:i("hotkeys.upscale.desc"),hotkey:"Shift+U"},{title:i("hotkeys.showInfo.title"),desc:i("hotkeys.showInfo.desc"),hotkey:"I"},{title:i("hotkeys.sendToImageToImage.title"),desc:i("hotkeys.sendToImageToImage.desc"),hotkey:"Shift+I"},{title:i("hotkeys.deleteImage.title"),desc:i("hotkeys.deleteImage.desc"),hotkey:"Del"},{title:i("hotkeys.closePanels.title"),desc:i("hotkeys.closePanels.desc"),hotkey:"Esc"}],s=[{title:i("hotkeys.previousImage.title"),desc:i("hotkeys.previousImage.desc"),hotkey:"Arrow Left"},{title:i("hotkeys.nextImage.title"),desc:i("hotkeys.nextImage.desc"),hotkey:"Arrow Right"},{title:i("hotkeys.toggleGalleryPin.title"),desc:i("hotkeys.toggleGalleryPin.desc"),hotkey:"Shift+G"},{title:i("hotkeys.increaseGalleryThumbSize.title"),desc:i("hotkeys.increaseGalleryThumbSize.desc"),hotkey:"Shift+Up"},{title:i("hotkeys.decreaseGalleryThumbSize.title"),desc:i("hotkeys.decreaseGalleryThumbSize.desc"),hotkey:"Shift+Down"}],l=[{title:i("hotkeys.selectBrush.title"),desc:i("hotkeys.selectBrush.desc"),hotkey:"B"},{title:i("hotkeys.selectEraser.title"),desc:i("hotkeys.selectEraser.desc"),hotkey:"E"},{title:i("hotkeys.decreaseBrushSize.title"),desc:i("hotkeys.decreaseBrushSize.desc"),hotkey:"["},{title:i("hotkeys.increaseBrushSize.title"),desc:i("hotkeys.increaseBrushSize.desc"),hotkey:"]"},{title:i("hotkeys.decreaseBrushOpacity.title"),desc:i("hotkeys.decreaseBrushOpacity.desc"),hotkey:"Shift + ["},{title:i("hotkeys.increaseBrushOpacity.title"),desc:i("hotkeys.increaseBrushOpacity.desc"),hotkey:"Shift + ]"},{title:i("hotkeys.moveTool.title"),desc:i("hotkeys.moveTool.desc"),hotkey:"V"},{title:i("hotkeys.fillBoundingBox.title"),desc:i("hotkeys.fillBoundingBox.desc"),hotkey:"Shift + F"},{title:i("hotkeys.eraseBoundingBox.title"),desc:i("hotkeys.eraseBoundingBox.desc"),hotkey:"Delete / Backspace"},{title:i("hotkeys.colorPicker.title"),desc:i("hotkeys.colorPicker.desc"),hotkey:"C"},{title:i("hotkeys.toggleSnap.title"),desc:i("hotkeys.toggleSnap.desc"),hotkey:"N"},{title:i("hotkeys.quickToggleMove.title"),desc:i("hotkeys.quickToggleMove.desc"),hotkey:"Hold Space"},{title:i("hotkeys.toggleLayer.title"),desc:i("hotkeys.toggleLayer.desc"),hotkey:"Q"},{title:i("hotkeys.clearMask.title"),desc:i("hotkeys.clearMask.desc"),hotkey:"Shift+C"},{title:i("hotkeys.hideMask.title"),desc:i("hotkeys.hideMask.desc"),hotkey:"H"},{title:i("hotkeys.showHideBoundingBox.title"),desc:i("hotkeys.showHideBoundingBox.desc"),hotkey:"Shift+H"},{title:i("hotkeys.mergeVisible.title"),desc:i("hotkeys.mergeVisible.desc"),hotkey:"Shift+M"},{title:i("hotkeys.saveToGallery.title"),desc:i("hotkeys.saveToGallery.desc"),hotkey:"Shift+S"},{title:i("hotkeys.copyToClipboard.title"),desc:i("hotkeys.copyToClipboard.desc"),hotkey:"Ctrl+C"},{title:i("hotkeys.downloadImage.title"),desc:i("hotkeys.downloadImage.desc"),hotkey:"Shift+D"},{title:i("hotkeys.undoStroke.title"),desc:i("hotkeys.undoStroke.desc"),hotkey:"Ctrl+Z"},{title:i("hotkeys.redoStroke.title"),desc:i("hotkeys.redoStroke.desc"),hotkey:"Ctrl+Shift+Z, Ctrl+Y"},{title:i("hotkeys.resetView.title"),desc:i("hotkeys.resetView.desc"),hotkey:"R"},{title:i("hotkeys.previousStagingImage.title"),desc:i("hotkeys.previousStagingImage.desc"),hotkey:"Arrow Left"},{title:i("hotkeys.nextStagingImage.title"),desc:i("hotkeys.nextStagingImage.desc"),hotkey:"Arrow Right"},{title:i("hotkeys.acceptStagingImage.title"),desc:i("hotkeys.acceptStagingImage.desc"),hotkey:"Enter"}],u=d=>{const h=[];return d.forEach((m,y)=>{h.push(g.jsx(UAe,{title:m.title,description:m.desc,hotkey:m.hotkey},y))}),g.jsx("div",{className:"hotkey-modal-category",children:h})};return g.jsxs(g.Fragment,{children:[S.cloneElement(e,{onClick:n}),g.jsxs(Yd,{isOpen:t,onClose:r,children:[g.jsx(oc,{}),g.jsxs(Xd,{className:" modal hotkeys-modal",children:[g.jsx(m0,{className:"modal-close-btn"}),g.jsx("h1",{children:"Keyboard Shorcuts"}),g.jsx("div",{className:"hotkeys-modal-items",children:g.jsxs(c8,{allowMultiple:!0,children:[g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.appHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(o)})]}),g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.generalHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(a)})]}),g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.galleryHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(s)})]}),g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.unifiedCanvasHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(l)})]})]})})]})]})]})}var BD=Array.isArray,zD=Object.keys,GAe=Object.prototype.hasOwnProperty,qAe=typeof Element<"u";function p7(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){var n=BD(e),r=BD(t),i,o,a;if(n&&r){if(o=e.length,o!=t.length)return!1;for(i=o;i--!==0;)if(!p7(e[i],t[i]))return!1;return!0}if(n!=r)return!1;var s=e instanceof Date,l=t instanceof Date;if(s!=l)return!1;if(s&&l)return e.getTime()==t.getTime();var u=e instanceof RegExp,d=t instanceof RegExp;if(u!=d)return!1;if(u&&d)return e.toString()==t.toString();var h=zD(e);if(o=h.length,o!==zD(t).length)return!1;for(i=o;i--!==0;)if(!GAe.call(t,h[i]))return!1;if(qAe&&e instanceof Element&&t instanceof Element)return e===t;for(i=o;i--!==0;)if(a=h[i],!(a==="_owner"&&e.$$typeof)&&!p7(e[a],t[a]))return!1;return!0}return e!==e&&t!==t}var md=function(t,n){try{return p7(t,n)}catch(r){if(r.message&&r.message.match(/stack|recursion/i)||r.number===-2146828260)return console.warn("Warning: react-fast-compare does not handle circular references.",r.name,r.message),!1;throw r}},KAe=function(t){return YAe(t)&&!XAe(t)};function YAe(e){return!!e&&typeof e=="object"}function XAe(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||JAe(e)}var ZAe=typeof Symbol=="function"&&Symbol.for,QAe=ZAe?Symbol.for("react.element"):60103;function JAe(e){return e.$$typeof===QAe}function eOe(e){return Array.isArray(e)?[]:{}}function U3(e,t){return t.clone!==!1&&t.isMergeableObject(e)?Hy(eOe(e),e,t):e}function tOe(e,t,n){return e.concat(t).map(function(r){return U3(r,n)})}function nOe(e,t,n){var r={};return n.isMergeableObject(e)&&Object.keys(e).forEach(function(i){r[i]=U3(e[i],n)}),Object.keys(t).forEach(function(i){!n.isMergeableObject(t[i])||!e[i]?r[i]=U3(t[i],n):r[i]=Hy(e[i],t[i],n)}),r}function Hy(e,t,n){n=n||{},n.arrayMerge=n.arrayMerge||tOe,n.isMergeableObject=n.isMergeableObject||KAe;var r=Array.isArray(t),i=Array.isArray(e),o=r===i;return o?r?n.arrayMerge(e,t,n):nOe(e,t,n):U3(t,n)}Hy.all=function(t,n){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(r,i){return Hy(r,i,n)},{})};var g7=Hy,rOe=typeof global=="object"&&global&&global.Object===Object&&global;const Gq=rOe;var iOe=typeof self=="object"&&self&&self.Object===Object&&self,oOe=Gq||iOe||Function("return this")();const du=oOe;var aOe=du.Symbol;const tf=aOe;var qq=Object.prototype,sOe=qq.hasOwnProperty,lOe=qq.toString,r1=tf?tf.toStringTag:void 0;function uOe(e){var t=sOe.call(e,r1),n=e[r1];try{e[r1]=void 0;var r=!0}catch{}var i=lOe.call(e);return r&&(t?e[r1]=n:delete e[r1]),i}var cOe=Object.prototype,dOe=cOe.toString;function fOe(e){return dOe.call(e)}var hOe="[object Null]",pOe="[object Undefined]",HD=tf?tf.toStringTag:void 0;function yp(e){return e==null?e===void 0?pOe:hOe:HD&&HD in Object(e)?uOe(e):fOe(e)}function Kq(e,t){return function(n){return e(t(n))}}var gOe=Kq(Object.getPrototypeOf,Object);const xP=gOe;function bp(e){return e!=null&&typeof e=="object"}var mOe="[object Object]",vOe=Function.prototype,yOe=Object.prototype,Yq=vOe.toString,bOe=yOe.hasOwnProperty,xOe=Yq.call(Object);function WD(e){if(!bp(e)||yp(e)!=mOe)return!1;var t=xP(e);if(t===null)return!0;var n=bOe.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&Yq.call(n)==xOe}function SOe(){this.__data__=[],this.size=0}function Xq(e,t){return e===t||e!==e&&t!==t}function E4(e,t){for(var n=e.length;n--;)if(Xq(e[n][0],t))return n;return-1}var wOe=Array.prototype,COe=wOe.splice;function _Oe(e){var t=this.__data__,n=E4(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():COe.call(t,n,1),--this.size,!0}function kOe(e){var t=this.__data__,n=E4(t,e);return n<0?void 0:t[n][1]}function EOe(e){return E4(this.__data__,e)>-1}function POe(e,t){var n=this.__data__,r=E4(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function yc(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t-1&&e%1==0&&e-1&&e%1==0&&e<=IRe}var DRe="[object Arguments]",jRe="[object Array]",NRe="[object Boolean]",$Re="[object Date]",FRe="[object Error]",BRe="[object Function]",zRe="[object Map]",HRe="[object Number]",WRe="[object Object]",URe="[object RegExp]",VRe="[object Set]",GRe="[object String]",qRe="[object WeakMap]",KRe="[object ArrayBuffer]",YRe="[object DataView]",XRe="[object Float32Array]",ZRe="[object Float64Array]",QRe="[object Int8Array]",JRe="[object Int16Array]",eIe="[object Int32Array]",tIe="[object Uint8Array]",nIe="[object Uint8ClampedArray]",rIe="[object Uint16Array]",iIe="[object Uint32Array]",ar={};ar[XRe]=ar[ZRe]=ar[QRe]=ar[JRe]=ar[eIe]=ar[tIe]=ar[nIe]=ar[rIe]=ar[iIe]=!0;ar[DRe]=ar[jRe]=ar[KRe]=ar[NRe]=ar[YRe]=ar[$Re]=ar[FRe]=ar[BRe]=ar[zRe]=ar[HRe]=ar[WRe]=ar[URe]=ar[VRe]=ar[GRe]=ar[qRe]=!1;function oIe(e){return bp(e)&&rK(e.length)&&!!ar[yp(e)]}function SP(e){return function(t){return e(t)}}var iK=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Z1=iK&&typeof module=="object"&&module&&!module.nodeType&&module,aIe=Z1&&Z1.exports===iK,u6=aIe&&Gq.process,sIe=function(){try{var e=Z1&&Z1.require&&Z1.require("util").types;return e||u6&&u6.binding&&u6.binding("util")}catch{}}();const i0=sIe;var YD=i0&&i0.isTypedArray,lIe=YD?SP(YD):oIe;const uIe=lIe;var cIe=Object.prototype,dIe=cIe.hasOwnProperty;function oK(e,t){var n=k2(e),r=!n&&kRe(e),i=!n&&!r&&nK(e),o=!n&&!r&&!i&&uIe(e),a=n||r||i||o,s=a?xRe(e.length,String):[],l=s.length;for(var u in e)(t||dIe.call(e,u))&&!(a&&(u=="length"||i&&(u=="offset"||u=="parent")||o&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||RRe(u,l)))&&s.push(u);return s}var fIe=Object.prototype;function wP(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||fIe;return e===n}var hIe=Kq(Object.keys,Object);const pIe=hIe;var gIe=Object.prototype,mIe=gIe.hasOwnProperty;function vIe(e){if(!wP(e))return pIe(e);var t=[];for(var n in Object(e))mIe.call(e,n)&&n!="constructor"&&t.push(n);return t}function aK(e){return e!=null&&rK(e.length)&&!Zq(e)}function CP(e){return aK(e)?oK(e):vIe(e)}function yIe(e,t){return e&&T4(t,CP(t),e)}function bIe(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var xIe=Object.prototype,SIe=xIe.hasOwnProperty;function wIe(e){if(!_2(e))return bIe(e);var t=wP(e),n=[];for(var r in e)r=="constructor"&&(t||!SIe.call(e,r))||n.push(r);return n}function _P(e){return aK(e)?oK(e,!0):wIe(e)}function CIe(e,t){return e&&T4(t,_P(t),e)}var sK=typeof exports=="object"&&exports&&!exports.nodeType&&exports,XD=sK&&typeof module=="object"&&module&&!module.nodeType&&module,_Ie=XD&&XD.exports===sK,ZD=_Ie?du.Buffer:void 0,QD=ZD?ZD.allocUnsafe:void 0;function kIe(e,t){if(t)return e.slice();var n=e.length,r=QD?QD(n):new e.constructor(n);return e.copy(r),r}function lK(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n=0)&&(n[i]=e[i]);return n}function pj(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var gj=function(t){return Array.isArray(t)&&t.length===0},Ho=function(t){return typeof t=="function"},M4=function(t){return t!==null&&typeof t=="object"},Cje=function(t){return String(Math.floor(Number(t)))===t},c6=function(t){return Object.prototype.toString.call(t)==="[object String]"},bK=function(t){return S.Children.count(t)===0},d6=function(t){return M4(t)&&Ho(t.then)};function Ui(e,t,n,r){r===void 0&&(r=0);for(var i=yK(t);e&&r=0?[]:{}}}return(o===0?e:i)[a[o]]===n?e:(n===void 0?delete i[a[o]]:i[a[o]]=n,o===0&&n===void 0&&delete r[a[o]],r)}function xK(e,t,n,r){n===void 0&&(n=new WeakMap),r===void 0&&(r={});for(var i=0,o=Object.keys(e);i0?Ie.map(function(Ue){return N(Ue,Ui(se,Ue))}):[Promise.resolve("DO_NOT_DELETE_YOU_WILL_BE_FIRED")];return Promise.all(He).then(function(Ue){return Ue.reduce(function(ye,je,vt){return je==="DO_NOT_DELETE_YOU_WILL_BE_FIRED"||je&&(ye=tu(ye,Ie[vt],je)),ye},{})})},[N]),B=S.useCallback(function(se){return Promise.all([W(se),m.validationSchema?I(se):{},m.validate?D(se):{}]).then(function(Ie){var He=Ie[0],Ue=Ie[1],ye=Ie[2],je=g7.all([He,Ue,ye],{arrayMerge:Mje});return je})},[m.validate,m.validationSchema,W,D,I]),K=qa(function(se){return se===void 0&&(se=L.values),O({type:"SET_ISVALIDATING",payload:!0}),B(se).then(function(Ie){return _.current&&(O({type:"SET_ISVALIDATING",payload:!1}),O({type:"SET_ERRORS",payload:Ie})),Ie})});S.useEffect(function(){a&&_.current===!0&&md(y.current,m.initialValues)&&K(y.current)},[a,K]);var ne=S.useCallback(function(se){var Ie=se&&se.values?se.values:y.current,He=se&&se.errors?se.errors:b.current?b.current:m.initialErrors||{},Ue=se&&se.touched?se.touched:w.current?w.current:m.initialTouched||{},ye=se&&se.status?se.status:E.current?E.current:m.initialStatus;y.current=Ie,b.current=He,w.current=Ue,E.current=ye;var je=function(){O({type:"RESET_FORM",payload:{isSubmitting:!!se&&!!se.isSubmitting,errors:He,touched:Ue,status:ye,values:Ie,isValidating:!!se&&!!se.isValidating,submitCount:se&&se.submitCount&&typeof se.submitCount=="number"?se.submitCount:0}})};if(m.onReset){var vt=m.onReset(L.values,Be);d6(vt)?vt.then(je):je()}else je()},[m.initialErrors,m.initialStatus,m.initialTouched]);S.useEffect(function(){_.current===!0&&!md(y.current,m.initialValues)&&(u&&(y.current=m.initialValues,ne()),a&&K(y.current))},[u,m.initialValues,ne,a,K]),S.useEffect(function(){u&&_.current===!0&&!md(b.current,m.initialErrors)&&(b.current=m.initialErrors||lh,O({type:"SET_ERRORS",payload:m.initialErrors||lh}))},[u,m.initialErrors]),S.useEffect(function(){u&&_.current===!0&&!md(w.current,m.initialTouched)&&(w.current=m.initialTouched||Ex,O({type:"SET_TOUCHED",payload:m.initialTouched||Ex}))},[u,m.initialTouched]),S.useEffect(function(){u&&_.current===!0&&!md(E.current,m.initialStatus)&&(E.current=m.initialStatus,O({type:"SET_STATUS",payload:m.initialStatus}))},[u,m.initialStatus,m.initialTouched]);var z=qa(function(se){if(k.current[se]&&Ho(k.current[se].validate)){var Ie=Ui(L.values,se),He=k.current[se].validate(Ie);return d6(He)?(O({type:"SET_ISVALIDATING",payload:!0}),He.then(function(Ue){return Ue}).then(function(Ue){O({type:"SET_FIELD_ERROR",payload:{field:se,value:Ue}}),O({type:"SET_ISVALIDATING",payload:!1})})):(O({type:"SET_FIELD_ERROR",payload:{field:se,value:He}}),Promise.resolve(He))}else if(m.validationSchema)return O({type:"SET_ISVALIDATING",payload:!0}),I(L.values,se).then(function(Ue){return Ue}).then(function(Ue){O({type:"SET_FIELD_ERROR",payload:{field:se,value:Ue[se]}}),O({type:"SET_ISVALIDATING",payload:!1})});return Promise.resolve()}),$=S.useCallback(function(se,Ie){var He=Ie.validate;k.current[se]={validate:He}},[]),V=S.useCallback(function(se){delete k.current[se]},[]),X=qa(function(se,Ie){O({type:"SET_TOUCHED",payload:se});var He=Ie===void 0?i:Ie;return He?K(L.values):Promise.resolve()}),Q=S.useCallback(function(se){O({type:"SET_ERRORS",payload:se})},[]),G=qa(function(se,Ie){var He=Ho(se)?se(L.values):se;O({type:"SET_VALUES",payload:He});var Ue=Ie===void 0?n:Ie;return Ue?K(He):Promise.resolve()}),Y=S.useCallback(function(se,Ie){O({type:"SET_FIELD_ERROR",payload:{field:se,value:Ie}})},[]),ee=qa(function(se,Ie,He){O({type:"SET_FIELD_VALUE",payload:{field:se,value:Ie}});var Ue=He===void 0?n:He;return Ue?K(tu(L.values,se,Ie)):Promise.resolve()}),fe=S.useCallback(function(se,Ie){var He=Ie,Ue=se,ye;if(!c6(se)){se.persist&&se.persist();var je=se.target?se.target:se.currentTarget,vt=je.type,Mt=je.name,Me=je.id,Ct=je.value,zt=je.checked,$n=je.outerHTML,qe=je.options,pt=je.multiple;He=Ie||Mt||Me,Ue=/number|range/.test(vt)?(ye=parseFloat(Ct),isNaN(ye)?"":ye):/checkbox/.test(vt)?Aje(Ui(L.values,He),zt,Ct):qe&&pt?Lje(qe):Ct}He&&ee(He,Ue)},[ee,L.values]),Ce=qa(function(se){if(c6(se))return function(Ie){return fe(Ie,se)};fe(se)}),we=qa(function(se,Ie,He){Ie===void 0&&(Ie=!0),O({type:"SET_FIELD_TOUCHED",payload:{field:se,value:Ie}});var Ue=He===void 0?i:He;return Ue?K(L.values):Promise.resolve()}),xe=S.useCallback(function(se,Ie){se.persist&&se.persist();var He=se.target,Ue=He.name,ye=He.id,je=He.outerHTML,vt=Ie||Ue||ye;we(vt,!0)},[we]),Le=qa(function(se){if(c6(se))return function(Ie){return xe(Ie,se)};xe(se)}),Se=S.useCallback(function(se){Ho(se)?O({type:"SET_FORMIK_STATE",payload:se}):O({type:"SET_FORMIK_STATE",payload:function(){return se}})},[]),Qe=S.useCallback(function(se){O({type:"SET_STATUS",payload:se})},[]),Xe=S.useCallback(function(se){O({type:"SET_ISSUBMITTING",payload:se})},[]),tt=qa(function(){return O({type:"SUBMIT_ATTEMPT"}),K().then(function(se){var Ie=se instanceof Error,He=!Ie&&Object.keys(se).length===0;if(He){var Ue;try{if(Ue=Ae(),Ue===void 0)return}catch(ye){throw ye}return Promise.resolve(Ue).then(function(ye){return _.current&&O({type:"SUBMIT_SUCCESS"}),ye}).catch(function(ye){if(_.current)throw O({type:"SUBMIT_FAILURE"}),ye})}else if(_.current&&(O({type:"SUBMIT_FAILURE"}),Ie))throw se})}),yt=qa(function(se){se&&se.preventDefault&&Ho(se.preventDefault)&&se.preventDefault(),se&&se.stopPropagation&&Ho(se.stopPropagation)&&se.stopPropagation(),tt().catch(function(Ie){console.warn("Warning: An unhandled error was caught from submitForm()",Ie)})}),Be={resetForm:ne,validateForm:K,validateField:z,setErrors:Q,setFieldError:Y,setFieldTouched:we,setFieldValue:ee,setStatus:Qe,setSubmitting:Xe,setTouched:X,setValues:G,setFormikState:Se,submitForm:tt},Ae=qa(function(){return d(L.values,Be)}),bt=qa(function(se){se&&se.preventDefault&&Ho(se.preventDefault)&&se.preventDefault(),se&&se.stopPropagation&&Ho(se.stopPropagation)&&se.stopPropagation(),ne()}),Fe=S.useCallback(function(se){return{value:Ui(L.values,se),error:Ui(L.errors,se),touched:!!Ui(L.touched,se),initialValue:Ui(y.current,se),initialTouched:!!Ui(w.current,se),initialError:Ui(b.current,se)}},[L.errors,L.touched,L.values]),at=S.useCallback(function(se){return{setValue:function(He,Ue){return ee(se,He,Ue)},setTouched:function(He,Ue){return we(se,He,Ue)},setError:function(He){return Y(se,He)}}},[ee,we,Y]),jt=S.useCallback(function(se){var Ie=M4(se),He=Ie?se.name:se,Ue=Ui(L.values,He),ye={name:He,value:Ue,onChange:Ce,onBlur:Le};if(Ie){var je=se.type,vt=se.value,Mt=se.as,Me=se.multiple;je==="checkbox"?vt===void 0?ye.checked=!!Ue:(ye.checked=!!(Array.isArray(Ue)&&~Ue.indexOf(vt)),ye.value=vt):je==="radio"?(ye.checked=Ue===vt,ye.value=vt):Mt==="select"&&Me&&(ye.value=ye.value||[],ye.multiple=!0)}return ye},[Le,Ce,L.values]),mt=S.useMemo(function(){return!md(y.current,L.values)},[y.current,L.values]),Zt=S.useMemo(function(){return typeof s<"u"?mt?L.errors&&Object.keys(L.errors).length===0:s!==!1&&Ho(s)?s(m):s:L.errors&&Object.keys(L.errors).length===0},[s,mt,L.errors,m]),on=Vn({},L,{initialValues:y.current,initialErrors:b.current,initialTouched:w.current,initialStatus:E.current,handleBlur:Le,handleChange:Ce,handleReset:bt,handleSubmit:yt,resetForm:ne,setErrors:Q,setFormikState:Se,setFieldTouched:we,setFieldValue:ee,setFieldError:Y,setStatus:Qe,setSubmitting:Xe,setTouched:X,setValues:G,submitForm:tt,validateForm:K,validateField:z,isValid:Zt,dirty:mt,unregisterField:V,registerField:$,getFieldProps:jt,getFieldMeta:Fe,getFieldHelpers:at,validateOnBlur:i,validateOnChange:n,validateOnMount:a});return on}function E2(e){var t=Eje(e),n=e.component,r=e.children,i=e.render,o=e.innerRef;return S.useImperativeHandle(o,function(){return t}),S.createElement(_je,{value:t},n?S.createElement(n,t):i?i(t):r?Ho(r)?r(t):bK(r)?null:S.Children.only(r):null)}function Pje(e){var t={};if(e.inner){if(e.inner.length===0)return tu(t,e.path,e.message);for(var i=e.inner,n=Array.isArray(i),r=0,i=n?i:i[Symbol.iterator]();;){var o;if(n){if(r>=i.length)break;o=i[r++]}else{if(r=i.next(),r.done)break;o=r.value}var a=o;Ui(t,a.path)||(t=tu(t,a.path,a.message))}}return t}function Tje(e,t,n,r){n===void 0&&(n=!1),r===void 0&&(r={});var i=x7(e);return t[n?"validateSync":"validate"](i,{abortEarly:!1,context:r})}function x7(e){var t=Array.isArray(e)?[]:{};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=String(n);Array.isArray(e[r])===!0?t[r]=e[r].map(function(i){return Array.isArray(i)===!0||WD(i)?x7(i):i!==""?i:void 0}):WD(e[r])?t[r]=x7(e[r]):t[r]=e[r]!==""?e[r]:void 0}return t}function Mje(e,t,n){var r=e.slice();return t.forEach(function(o,a){if(typeof r[a]>"u"){var s=n.clone!==!1,l=s&&n.isMergeableObject(o);r[a]=l?g7(Array.isArray(o)?[]:{},o,n):o}else n.isMergeableObject(o)?r[a]=g7(e[a],o,n):e.indexOf(o)===-1&&r.push(o)}),r}function Lje(e){return Array.from(e).filter(function(t){return t.selected}).map(function(t){return t.value})}function Aje(e,t,n){if(typeof e=="boolean")return Boolean(t);var r=[],i=!1,o=-1;if(Array.isArray(e))r=e,o=e.indexOf(n),i=o>=0;else if(!n||n=="true"||n=="false")return Boolean(t);return t&&n&&!i?r.concat(n):i?r.slice(0,o).concat(r.slice(o+1)):r}var Oje=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u"?S.useLayoutEffect:S.useEffect;function qa(e){var t=S.useRef(e);return Oje(function(){t.current=e}),S.useCallback(function(){for(var n=arguments.length,r=new Array(n),i=0;ir?i:r},0);return Array.from(Vn({},t,{length:n+1}))}else return[]},Nje=function(e){wje(t,e);function t(r){var i;return i=e.call(this,r)||this,i.updateArrayField=function(o,a,s){var l=i.props,u=l.name,d=l.formik.setFormikState;d(function(h){var m=typeof s=="function"?s:o,y=typeof a=="function"?a:o,b=tu(h.values,u,o(Ui(h.values,u))),w=s?m(Ui(h.errors,u)):void 0,E=a?y(Ui(h.touched,u)):void 0;return gj(w)&&(w=void 0),gj(E)&&(E=void 0),Vn({},h,{values:b,errors:s?tu(h.errors,u,w):h.errors,touched:a?tu(h.touched,u,E):h.touched})})},i.push=function(o){return i.updateArrayField(function(a){return[].concat(o0(a),[Sje(o)])},!1,!1)},i.handlePush=function(o){return function(){return i.push(o)}},i.swap=function(o,a){return i.updateArrayField(function(s){return Dje(s,o,a)},!0,!0)},i.handleSwap=function(o,a){return function(){return i.swap(o,a)}},i.move=function(o,a){return i.updateArrayField(function(s){return Ije(s,o,a)},!0,!0)},i.handleMove=function(o,a){return function(){return i.move(o,a)}},i.insert=function(o,a){return i.updateArrayField(function(s){return f6(s,o,a)},function(s){return f6(s,o,null)},function(s){return f6(s,o,null)})},i.handleInsert=function(o,a){return function(){return i.insert(o,a)}},i.replace=function(o,a){return i.updateArrayField(function(s){return jje(s,o,a)},!1,!1)},i.handleReplace=function(o,a){return function(){return i.replace(o,a)}},i.unshift=function(o){var a=-1;return i.updateArrayField(function(s){var l=s?[o].concat(s):[o];return a<0&&(a=l.length),l},function(s){var l=s?[null].concat(s):[null];return a<0&&(a=l.length),l},function(s){var l=s?[null].concat(s):[null];return a<0&&(a=l.length),l}),a},i.handleUnshift=function(o){return function(){return i.unshift(o)}},i.handleRemove=function(o){return function(){return i.remove(o)}},i.handlePop=function(){return function(){return i.pop()}},i.remove=i.remove.bind(pj(i)),i.pop=i.pop.bind(pj(i)),i}var n=t.prototype;return n.componentDidUpdate=function(i){this.props.validateOnChange&&this.props.formik.validateOnChange&&!md(Ui(i.formik.values,i.name),Ui(this.props.formik.values,this.props.name))&&this.props.formik.validateForm(this.props.formik.values)},n.remove=function(i){var o;return this.updateArrayField(function(a){var s=a?o0(a):[];return o||(o=s[i]),Ho(s.splice)&&s.splice(i,1),s},!0,!0),o},n.pop=function(){var i;return this.updateArrayField(function(o){var a=o;return i||(i=a&&a.pop&&a.pop()),a},!0,!0),i},n.render=function(){var i={push:this.push,pop:this.pop,swap:this.swap,move:this.move,insert:this.insert,replace:this.replace,unshift:this.unshift,remove:this.remove,handlePush:this.handlePush,handlePop:this.handlePop,handleSwap:this.handleSwap,handleMove:this.handleMove,handleInsert:this.handleInsert,handleReplace:this.handleReplace,handleUnshift:this.handleUnshift,handleRemove:this.handleRemove},o=this.props,a=o.component,s=o.render,l=o.children,u=o.name,d=o.formik,h=Ph(d,["validate","validationSchema"]),m=Vn({},i,{form:h,name:u});return a?S.createElement(a,m):s?s(m):l?typeof l=="function"?l(m):bK(l)?null:S.Children.only(l):null},t}(S.Component);Nje.defaultProps={validateOnChange:!0};function $je(e){const{model:t}=e,r=le(b=>b.system.model_list)[t],i=Te(),{t:o}=De(),a=le(b=>b.system.isProcessing),s=le(b=>b.system.isConnected),[l,u]=S.useState("same"),[d,h]=S.useState("");S.useEffect(()=>{u("same")},[t]);const m=()=>{u("same")},y=()=>{i(p_e({model_name:t,save_location:l,custom_location:l==="custom"&&d!==""?d:null}))};return g.jsxs(C4,{title:`${o("modelManager.convert")} ${t}`,acceptCallback:y,cancelCallback:m,acceptButtonText:`${o("modelManager.convert")}`,triggerComponent:g.jsxs(On,{size:"sm","aria-label":o("modelManager.convertToDiffusers"),isDisabled:r.status==="active"||a||!s,className:" modal-close-btn",marginRight:"2rem",children:["🧨 ",o("modelManager.convertToDiffusers")]}),motionPreset:"slideInBottom",children:[g.jsxs(ke,{flexDirection:"column",rowGap:4,children:[g.jsx(Dt,{children:o("modelManager.convertToDiffusersHelpText1")}),g.jsxs(tH,{children:[g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText2")}),g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText3")}),g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText4")}),g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText5")})]}),g.jsx(Dt,{children:o("modelManager.convertToDiffusersHelpText6")})]}),g.jsxs(ke,{flexDir:"column",gap:4,children:[g.jsxs(ke,{marginTop:"1rem",flexDir:"column",gap:2,children:[g.jsx(Dt,{fontWeight:"bold",children:o("modelManager.convertToDiffusersSaveLocation")}),g.jsx(Oy,{value:l,onChange:b=>u(b),children:g.jsxs(ke,{gap:4,children:[g.jsx(Vo,{value:"same",children:g.jsx(si,{label:"Save converted model in the same folder",children:o("modelManager.sameFolder")})}),g.jsx(Vo,{value:"root",children:g.jsx(si,{label:"Save converted model in the InvokeAI root folder",children:o("modelManager.invokeRoot")})}),g.jsx(Vo,{value:"custom",children:g.jsx(si,{label:"Save converted model in a custom folder",children:o("modelManager.custom")})})]})})]}),l==="custom"&&g.jsxs(ke,{flexDirection:"column",rowGap:2,children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"sm",color:"var(--text-color-secondary)",children:o("modelManager.customSaveLocation")}),g.jsx(qn,{value:d,onChange:b=>{b.target.value!==""&&h(b.target.value)},width:"25rem"})]})]})]})}const Fje=lt([hr],e=>{const{openModel:t,model_list:n}=e;return{model_list:n,openModel:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),mj=64,vj=2048;function Bje(){const{openModel:e,model_list:t}=le(Fje),n=le(l=>l.system.isProcessing),r=Te(),{t:i}=De(),[o,a]=S.useState({name:"",description:"",config:"configs/stable-diffusion/v1-inference.yaml",weights:"",vae:"",width:512,height:512,default:!1,format:"ckpt"});S.useEffect(()=>{var l,u,d,h,m,y,b;if(e){const w=Pe.pickBy(t,(E,_)=>Pe.isEqual(_,e));a({name:e,description:(l=w[e])==null?void 0:l.description,config:(u=w[e])==null?void 0:u.config,weights:(d=w[e])==null?void 0:d.weights,vae:(h=w[e])==null?void 0:h.vae,width:(m=w[e])==null?void 0:m.width,height:(y=w[e])==null?void 0:y.height,default:(b=w[e])==null?void 0:b.default,format:"ckpt"})}},[t,e]);const s=l=>{r(v2({...l,width:Number(l.width),height:Number(l.height)}))};return e?g.jsxs(ke,{flexDirection:"column",rowGap:"1rem",width:"100%",children:[g.jsxs(ke,{alignItems:"center",gap:4,justifyContent:"space-between",children:[g.jsx(Dt,{fontSize:"lg",fontWeight:"bold",children:e}),g.jsx($je,{model:e})]}),g.jsx(ke,{flexDirection:"column",maxHeight:window.innerHeight-270,overflowY:"scroll",paddingRight:"2rem",children:g.jsx(E2,{enableReinitialize:!0,initialValues:o,onSubmit:s,children:({handleSubmit:l,errors:u,touched:d})=>g.jsx("form",{onSubmit:l,children:g.jsxs(hn,{rowGap:"0.5rem",alignItems:"start",children:[g.jsxs(sn,{isInvalid:!!u.description&&d.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:i("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"lg"}),u.description&&d.description?g.jsx(lr,{children:u.description}):g.jsx(sr,{margin:0,children:i("modelManager.descriptionValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.config&&d.config,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:i("modelManager.config")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"config",name:"config",type:"text",width:"lg"}),u.config&&d.config?g.jsx(lr,{children:u.config}):g.jsx(sr,{margin:0,children:i("modelManager.configValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.weights&&d.weights,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:i("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"weights",name:"weights",type:"text",width:"lg"}),u.weights&&d.weights?g.jsx(lr,{children:u.weights}):g.jsx(sr,{margin:0,children:i("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.vae&&d.vae,children:[g.jsx(Sn,{htmlFor:"vae",fontSize:"sm",children:i("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae",name:"vae",type:"text",width:"lg"}),u.vae&&d.vae?g.jsx(lr,{children:u.vae}):g.jsx(sr,{margin:0,children:i("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(l2,{width:"100%",children:[g.jsxs(sn,{isInvalid:!!u.width&&d.width,children:[g.jsx(Sn,{htmlFor:"width",fontSize:"sm",children:i("modelManager.width")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"width",name:"width",children:({field:h,form:m})=>g.jsx(lc,{id:"width",name:"width",min:mj,max:vj,step:64,value:m.values.width,onChange:y=>m.setFieldValue(h.name,Number(y))})}),u.width&&d.width?g.jsx(lr,{children:u.width}):g.jsx(sr,{margin:0,children:i("modelManager.widthValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.height&&d.height,children:[g.jsx(Sn,{htmlFor:"height",fontSize:"sm",children:i("modelManager.height")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"height",name:"height",children:({field:h,form:m})=>g.jsx(lc,{id:"height",name:"height",min:mj,max:vj,step:64,value:m.values.height,onChange:y=>m.setFieldValue(h.name,Number(y))})}),u.height&&d.height?g.jsx(lr,{children:u.height}):g.jsx(sr,{margin:0,children:i("modelManager.heightValidationMsg")})]})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:i("modelManager.updateModel")})]})})})})]}):g.jsx(ke,{width:"100%",justifyContent:"center",alignItems:"center",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",children:g.jsx(Dt,{fontWeight:"bold",color:"var(--subtext-color-bright)",children:"Pick A Model To Edit"})})}const zje=lt([hr],e=>{const{openModel:t,model_list:n}=e;return{model_list:n,openModel:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function Hje(){const{openModel:e,model_list:t}=le(zje),n=le(l=>l.system.isProcessing),r=Te(),{t:i}=De(),[o,a]=S.useState({name:"",description:"",repo_id:"",path:"",vae:{repo_id:"",path:""},default:!1,format:"diffusers"});S.useEffect(()=>{var l,u,d,h,m,y,b,w,E,_,k,T,L,O,D,I;if(e){const N=Pe.pickBy(t,(W,B)=>Pe.isEqual(B,e));a({name:e,description:(l=N[e])==null?void 0:l.description,path:(u=N[e])!=null&&u.path&&((d=N[e])==null?void 0:d.path)!=="None"?(h=N[e])==null?void 0:h.path:"",repo_id:(m=N[e])!=null&&m.repo_id&&((y=N[e])==null?void 0:y.repo_id)!=="None"?(b=N[e])==null?void 0:b.repo_id:"",vae:{repo_id:(E=(w=N[e])==null?void 0:w.vae)!=null&&E.repo_id?(k=(_=N[e])==null?void 0:_.vae)==null?void 0:k.repo_id:"",path:(L=(T=N[e])==null?void 0:T.vae)!=null&&L.path?(D=(O=N[e])==null?void 0:O.vae)==null?void 0:D.path:""},default:(I=N[e])==null?void 0:I.default,format:"diffusers"})}},[t,e]);const s=l=>{const u=l;l.path===""&&delete u.path,l.repo_id===""&&delete u.repo_id,l.vae.path===""&&delete u.vae.path,l.vae.repo_id===""&&delete u.vae.repo_id,r(v2(l))};return e?g.jsxs(ke,{flexDirection:"column",rowGap:"1rem",width:"100%",children:[g.jsx(ke,{alignItems:"center",children:g.jsx(Dt,{fontSize:"lg",fontWeight:"bold",children:e})}),g.jsx(ke,{flexDirection:"column",maxHeight:window.innerHeight-270,overflowY:"scroll",paddingRight:"2rem",children:g.jsx(E2,{enableReinitialize:!0,initialValues:o,onSubmit:s,children:({handleSubmit:l,errors:u,touched:d})=>{var h,m,y,b,w,E,_,k,T,L;return g.jsx("form",{onSubmit:l,children:g.jsxs(hn,{rowGap:"0.5rem",alignItems:"start",children:[g.jsxs(sn,{isInvalid:!!u.description&&d.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:i("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"lg"}),u.description&&d.description?g.jsx(lr,{children:u.description}):g.jsx(sr,{margin:0,children:i("modelManager.descriptionValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.path&&d.path,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"path",fontSize:"sm",children:i("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"path",name:"path",type:"text",width:"lg"}),u.path&&d.path?g.jsx(lr,{children:u.path}):g.jsx(sr,{margin:0,children:i("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.repo_id&&d.repo_id,children:[g.jsx(Sn,{htmlFor:"repo_id",fontSize:"sm",children:i("modelManager.repo_id")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"repo_id",name:"repo_id",type:"text",width:"lg"}),u.repo_id&&d.repo_id?g.jsx(lr,{children:u.repo_id}):g.jsx(sr,{margin:0,children:i("modelManager.repoIDValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!((h=u.vae)!=null&&h.path)&&((m=d.vae)==null?void 0:m.path),children:[g.jsx(Sn,{htmlFor:"vae.path",fontSize:"sm",children:i("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.path",name:"vae.path",type:"text",width:"lg"}),(y=u.vae)!=null&&y.path&&((b=d.vae)!=null&&b.path)?g.jsx(lr,{children:(w=u.vae)==null?void 0:w.path}):g.jsx(sr,{margin:0,children:i("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!((E=u.vae)!=null&&E.repo_id)&&((_=d.vae)==null?void 0:_.repo_id),children:[g.jsx(Sn,{htmlFor:"vae.repo_id",fontSize:"sm",children:i("modelManager.vaeRepoID")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.repo_id",name:"vae.repo_id",type:"text",width:"lg"}),(k=u.vae)!=null&&k.repo_id&&((T=d.vae)!=null&&T.repo_id)?g.jsx(lr,{children:(L=u.vae)==null?void 0:L.repo_id}):g.jsx(sr,{margin:0,children:i("modelManager.vaeRepoIDValidationMsg")})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:i("modelManager.updateModel")})]})})}})})]}):g.jsx(ke,{width:"100%",justifyContent:"center",alignItems:"center",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",children:g.jsx(Dt,{fontWeight:"bold",color:"var(--subtext-color-bright)",children:"Pick A Model To Edit"})})}const wK=lt([hr],e=>{const{model_list:t}=e,n=[];return Pe.forEach(t,r=>{n.push(r.weights)}),n});function Wje(){const{t:e}=De();return g.jsx(ao,{position:"absolute",zIndex:2,right:4,top:4,fontSize:"0.7rem",fontWeight:"bold",backgroundColor:"var(--accent-color)",padding:"0.2rem 0.5rem",borderRadius:"0.2rem",alignItems:"center",children:e("modelManager.modelExists")})}function yj({model:e,modelsToAdd:t,setModelsToAdd:n}){const r=le(wK),i=o=>{t.includes(o.target.value)?n(Pe.remove(t,a=>a!==o.target.value)):n([...t,o.target.value])};return g.jsxs(ao,{position:"relative",children:[r.includes(e.location)?g.jsx(Wje,{}):null,g.jsx(Gn,{value:e.name,label:g.jsx(g.Fragment,{children:g.jsxs(hn,{alignItems:"start",children:[g.jsx("p",{style:{fontWeight:"bold"},children:e.name}),g.jsx("p",{style:{fontStyle:"italic"},children:e.location})]})}),isChecked:t.includes(e.name),isDisabled:r.includes(e.location),onChange:i,padding:"1rem",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",_checked:{backgroundColor:"var(--accent-color)",color:"var(--text-color)"},_disabled:{backgroundColor:"var(--background-color-secondary)"}})]})}function Uje(){const e=Te(),{t}=De(),n=le(T=>T.system.searchFolder),r=le(T=>T.system.foundModels),i=le(wK),o=le(T=>T.ui.shouldShowExistingModelsInSearch),a=le(T=>T.system.isProcessing),[s,l]=Ke.useState([]),[u,d]=Ke.useState("v1"),[h,m]=Ke.useState(""),y=()=>{e(jU(null)),e(NU(null)),l([])},b=T=>{e(EI(T.checkpointFolder))},w=()=>{l([]),r&&r.forEach(T=>{i.includes(T.location)||l(L=>[...L,T.name])})},E=()=>{l([])},_=()=>{const T=r==null?void 0:r.filter(O=>s.includes(O.name)),L={v1:"configs/stable-diffusion/v1-inference.yaml",v2:"configs/stable-diffusion/v2-inference-v.yaml",inpainting:"configs/stable-diffusion/v1-inpainting-inference.yaml",custom:h};T==null||T.forEach(O=>{const D={name:O.name,description:"",config:L[u],weights:O.location,vae:"",width:512,height:512,default:!1,format:"ckpt"};e(v2(D))}),l([])},k=()=>{const T=[],L=[];return r&&r.forEach((O,D)=>{i.includes(O.location)?L.push(g.jsx(yj,{model:O,modelsToAdd:s,setModelsToAdd:l},D)):T.push(g.jsx(yj,{model:O,modelsToAdd:s,setModelsToAdd:l},D))}),g.jsxs(g.Fragment,{children:[T,o&&L]})};return g.jsxs(g.Fragment,{children:[n?g.jsxs(ke,{flexDirection:"column",padding:"1rem",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",rowGap:"0.5rem",position:"relative",children:[g.jsx("p",{style:{fontWeight:"bold",fontSize:"0.8rem",backgroundColor:"var(--background-color-secondary)",padding:"0.2rem 1rem",width:"max-content",borderRadius:"0.2rem"},children:t("modelManager.checkpointFolder")}),g.jsx("p",{style:{fontWeight:"bold",fontSize:"0.8rem",maxWidth:"80%"},children:n}),g.jsx(Ye,{"aria-label":t("modelManager.scanAgain"),tooltip:t("modelManager.scanAgain"),icon:g.jsx(f4,{}),position:"absolute",right:16,fontSize:18,disabled:a,onClick:()=>e(EI(n))}),g.jsx(Ye,{"aria-label":t("modelManager.clearCheckpointFolder"),icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),position:"absolute",right:5,onClick:y})]}):g.jsx(E2,{initialValues:{checkpointFolder:""},onSubmit:T=>{b(T)},children:({handleSubmit:T})=>g.jsx("form",{onSubmit:T,children:g.jsxs(l2,{columnGap:"0.5rem",children:[g.jsx(sn,{isRequired:!0,width:"max-content",children:g.jsx(ur,{as:qn,id:"checkpointFolder",name:"checkpointFolder",type:"text",width:"lg",size:"md",label:t("modelManager.checkpointFolder")})}),g.jsx(Ye,{icon:g.jsx(r7e,{}),"aria-label":t("modelManager.findModels"),tooltip:t("modelManager.findModels"),type:"submit",disabled:a})]})})}),r&&g.jsxs(ke,{flexDirection:"column",rowGap:"1rem",children:[g.jsxs(ke,{justifyContent:"space-between",alignItems:"center",children:[g.jsxs("p",{children:[t("modelManager.modelsFound"),": ",r.length]}),g.jsxs("p",{children:[t("modelManager.selected"),": ",s.length]})]}),g.jsxs(ke,{columnGap:"0.5rem",justifyContent:"space-between",children:[g.jsxs(ke,{columnGap:"0.5rem",children:[g.jsx(On,{isDisabled:s.length===r.length,onClick:w,children:t("modelManager.selectAll")}),g.jsx(On,{isDisabled:s.length===0,onClick:E,children:t("modelManager.deselectAll")}),g.jsx(Gn,{label:t("modelManager.showExisting"),isChecked:o,onChange:()=>e(F4e(!o))})]}),g.jsx(On,{isDisabled:s.length===0,onClick:_,backgroundColor:s.length>0?"var(--accent-color) !important":"",children:t("modelManager.addSelected")})]}),g.jsxs(ke,{gap:4,backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",flexDirection:"column",children:[g.jsxs(ke,{gap:4,children:[g.jsx(Dt,{fontWeight:"bold",color:"var(--text-color-secondary)",children:"Pick Model Type:"}),g.jsx(Oy,{value:u,onChange:T=>d(T),defaultValue:"v1",name:"model_type",children:g.jsxs(ke,{gap:4,children:[g.jsx(Vo,{value:"v1",children:t("modelManager.v1")}),g.jsx(Vo,{value:"v2",children:t("modelManager.v2")}),g.jsx(Vo,{value:"inpainting",children:t("modelManager.inpainting")}),g.jsx(Vo,{value:"custom",children:t("modelManager.customConfig")})]})})]}),u==="custom"&&g.jsxs(ke,{flexDirection:"column",rowGap:2,children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"sm",color:"var(--text-color-secondary)",children:t("modelManager.pathToCustomConfig")}),g.jsx(qn,{value:h,onChange:T=>{T.target.value!==""&&m(T.target.value)},width:"42.5rem"})]})]}),g.jsxs(ke,{rowGap:"1rem",flexDirection:"column",maxHeight:"18rem",overflowY:"scroll",paddingRight:"1rem",paddingLeft:"0.2rem",borderRadius:"0.2rem",children:[r.length>0?s.length===0&&g.jsx(Dt,{fontWeight:"bold",fontSize:14,padding:"0.5rem",borderRadius:"0.2rem",margin:"0 0.5rem 0 1rem",textAlign:"center",backgroundColor:"var(--notice-color)",boxShadow:"0 0 200px 6px var(--notice-color)",marginTop:"1rem",width:"max-content",children:t("modelManager.selectAndAdd")}):g.jsx(Dt,{fontWeight:"bold",fontSize:14,padding:"0.5rem",borderRadius:"0.2rem",textAlign:"center",backgroundColor:"var(--status-bad-color)",children:t("modelManager.noModelsFound")}),k()]})]})]})}const bj=64,xj=2048;function Vje(){const e=Te(),{t}=De(),n=le(u=>u.system.isProcessing);function r(u){return/\s/.test(u)}function i(u){let d;return r(u)&&(d=t("modelManager.cannotUseSpaces")),d}const o={name:"",description:"",config:"configs/stable-diffusion/v1-inference.yaml",weights:"",vae:"",width:512,height:512,format:"ckpt",default:!1},a=u=>{e(v2(u)),e(Bh(null))},[s,l]=Ke.useState(!1);return g.jsxs(g.Fragment,{children:[g.jsx(Ye,{"aria-label":t("common.back"),tooltip:t("common.back"),onClick:()=>e(Bh(null)),width:"max-content",position:"absolute",zIndex:1,size:"sm",right:12,top:3,icon:g.jsx(UV,{})}),g.jsx(Uje,{}),g.jsx(Gn,{label:t("modelManager.addManually"),isChecked:s,onChange:()=>l(!s)}),s&&g.jsx(E2,{initialValues:o,onSubmit:a,children:({handleSubmit:u,errors:d,touched:h})=>g.jsx("form",{onSubmit:u,children:g.jsxs(hn,{rowGap:"0.5rem",children:[g.jsx(Dt,{fontSize:20,fontWeight:"bold",alignSelf:"start",children:t("modelManager.manual")}),g.jsxs(sn,{isInvalid:!!d.name&&h.name,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"name",fontSize:"sm",children:t("modelManager.name")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"name",name:"name",type:"text",validate:i,width:"2xl"}),d.name&&h.name?g.jsx(lr,{children:d.name}):g.jsx(sr,{margin:0,children:t("modelManager.nameValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.description&&h.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:t("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"2xl"}),d.description&&h.description?g.jsx(lr,{children:d.description}):g.jsx(sr,{margin:0,children:t("modelManager.descriptionValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.config&&h.config,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:t("modelManager.config")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"config",name:"config",type:"text",width:"2xl"}),d.config&&h.config?g.jsx(lr,{children:d.config}):g.jsx(sr,{margin:0,children:t("modelManager.configValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.weights&&h.weights,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:t("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"weights",name:"weights",type:"text",width:"2xl"}),d.weights&&h.weights?g.jsx(lr,{children:d.weights}):g.jsx(sr,{margin:0,children:t("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.vae&&h.vae,children:[g.jsx(Sn,{htmlFor:"vae",fontSize:"sm",children:t("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae",name:"vae",type:"text",width:"2xl"}),d.vae&&h.vae?g.jsx(lr,{children:d.vae}):g.jsx(sr,{margin:0,children:t("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(l2,{width:"100%",children:[g.jsxs(sn,{isInvalid:!!d.width&&h.width,children:[g.jsx(Sn,{htmlFor:"width",fontSize:"sm",children:t("modelManager.width")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"width",name:"width",children:({field:m,form:y})=>g.jsx(lc,{id:"width",name:"width",min:bj,max:xj,step:64,width:"90%",value:y.values.width,onChange:b=>y.setFieldValue(m.name,Number(b))})}),d.width&&h.width?g.jsx(lr,{children:d.width}):g.jsx(sr,{margin:0,children:t("modelManager.widthValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.height&&h.height,children:[g.jsx(Sn,{htmlFor:"height",fontSize:"sm",children:t("modelManager.height")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"height",name:"height",children:({field:m,form:y})=>g.jsx(lc,{id:"height",name:"height",min:bj,max:xj,width:"90%",step:64,value:y.values.height,onChange:b=>y.setFieldValue(m.name,Number(b))})}),d.height&&h.height?g.jsx(lr,{children:d.height}):g.jsx(sr,{margin:0,children:t("modelManager.heightValidationMsg")})]})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:t("modelManager.addModel")})]})})})]})}function Px({children:e}){return g.jsx(ke,{flexDirection:"column",backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.5rem",rowGap:"1rem",width:"100%",children:e})}function Gje(){const e=Te(),{t}=De(),n=le(s=>s.system.isProcessing);function r(s){return/\s/.test(s)}function i(s){let l;return r(s)&&(l=t("modelManager.cannotUseSpaces")),l}const o={name:"",description:"",repo_id:"",path:"",format:"diffusers",default:!1,vae:{repo_id:"",path:""}},a=s=>{const l=s;s.path===""&&delete l.path,s.repo_id===""&&delete l.repo_id,s.vae.path===""&&delete l.vae.path,s.vae.repo_id===""&&delete l.vae.repo_id,e(v2(l)),e(Bh(null))};return g.jsxs(ke,{children:[g.jsx(Ye,{"aria-label":t("common.back"),tooltip:t("common.back"),onClick:()=>e(Bh(null)),width:"max-content",position:"absolute",zIndex:1,size:"sm",right:12,top:3,icon:g.jsx(UV,{})}),g.jsx(E2,{initialValues:o,onSubmit:a,children:({handleSubmit:s,errors:l,touched:u})=>{var d,h,m,y,b,w,E,_,k,T;return g.jsx("form",{onSubmit:s,children:g.jsxs(hn,{rowGap:"0.5rem",children:[g.jsx(Px,{children:g.jsxs(sn,{isInvalid:!!l.name&&u.name,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"name",fontSize:"sm",children:t("modelManager.name")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"name",name:"name",type:"text",validate:i,width:"2xl",isRequired:!0}),l.name&&u.name?g.jsx(lr,{children:l.name}):g.jsx(sr,{margin:0,children:t("modelManager.nameValidationMsg")})]})]})}),g.jsx(Px,{children:g.jsxs(sn,{isInvalid:!!l.description&&u.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:t("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"2xl",isRequired:!0}),l.description&&u.description?g.jsx(lr,{children:l.description}):g.jsx(sr,{margin:0,children:t("modelManager.descriptionValidationMsg")})]})]})}),g.jsxs(Px,{children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"sm",children:t("modelManager.formMessageDiffusersModelLocation")}),g.jsx(Dt,{fontSize:"sm",fontStyle:"italic",color:"var(--text-color-secondary)",children:t("modelManager.formMessageDiffusersModelLocationDesc")}),g.jsxs(sn,{isInvalid:!!l.path&&u.path,children:[g.jsx(Sn,{htmlFor:"path",fontSize:"sm",children:t("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"path",name:"path",type:"text",width:"2xl"}),l.path&&u.path?g.jsx(lr,{children:l.path}):g.jsx(sr,{margin:0,children:t("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!l.repo_id&&u.repo_id,children:[g.jsx(Sn,{htmlFor:"repo_id",fontSize:"sm",children:t("modelManager.repo_id")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"repo_id",name:"repo_id",type:"text",width:"2xl"}),l.repo_id&&u.repo_id?g.jsx(lr,{children:l.repo_id}):g.jsx(sr,{margin:0,children:t("modelManager.repoIDValidationMsg")})]})]})]}),g.jsxs(Px,{children:[g.jsx(Dt,{fontWeight:"bold",children:t("modelManager.formMessageDiffusersVAELocation")}),g.jsx(Dt,{fontSize:"sm",fontStyle:"italic",color:"var(--text-color-secondary)",children:t("modelManager.formMessageDiffusersVAELocationDesc")}),g.jsxs(sn,{isInvalid:!!((d=l.vae)!=null&&d.path)&&((h=u.vae)==null?void 0:h.path),children:[g.jsx(Sn,{htmlFor:"vae.path",fontSize:"sm",children:t("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.path",name:"vae.path",type:"text",width:"2xl"}),(m=l.vae)!=null&&m.path&&((y=u.vae)!=null&&y.path)?g.jsx(lr,{children:(b=l.vae)==null?void 0:b.path}):g.jsx(sr,{margin:0,children:t("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!((w=l.vae)!=null&&w.repo_id)&&((E=u.vae)==null?void 0:E.repo_id),children:[g.jsx(Sn,{htmlFor:"vae.repo_id",fontSize:"sm",children:t("modelManager.vaeRepoID")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.repo_id",name:"vae.repo_id",type:"text",width:"2xl"}),(_=l.vae)!=null&&_.repo_id&&((k=u.vae)!=null&&k.repo_id)?g.jsx(lr,{children:(T=l.vae)==null?void 0:T.repo_id}):g.jsx(sr,{margin:0,children:t("modelManager.vaeRepoIDValidationMsg")})]})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:t("modelManager.addModel")})]})})}})]})}function Sj({text:e,onClick:t}){return g.jsx(ke,{position:"relative",width:"50%",height:"200px",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",justifyContent:"center",alignItems:"center",_hover:{cursor:"pointer",backgroundColor:"var(--accent-color)"},onClick:t,children:g.jsx(Dt,{fontWeight:"bold",children:e})})}function qje(){const{isOpen:e,onOpen:t,onClose:n}=Kd(),r=le(s=>s.ui.addNewModelUIOption),i=Te(),{t:o}=De(),a=()=>{n(),i(Bh(null))};return g.jsxs(g.Fragment,{children:[g.jsx(On,{"aria-label":o("modelManager.addNewModel"),tooltip:o("modelManager.addNewModel"),onClick:t,className:"modal-close-btn",size:"sm",children:g.jsxs(ke,{columnGap:"0.5rem",alignItems:"center",children:[g.jsx(y2,{}),o("modelManager.addNew")]})}),g.jsxs(Yd,{isOpen:e,onClose:a,size:"3xl",closeOnOverlayClick:!1,children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal add-model-modal",fontFamily:"Inter",margin:"auto",children:[g.jsx(op,{children:o("modelManager.addNewModel")}),g.jsx(m0,{marginTop:"0.3rem"}),g.jsxs(Zm,{className:"add-model-modal-body",children:[r==null&&g.jsxs(ke,{columnGap:"1rem",children:[g.jsx(Sj,{text:o("modelManager.addCheckpointModel"),onClick:()=>i(Bh("ckpt"))}),g.jsx(Sj,{text:o("modelManager.addDiffuserModel"),onClick:()=>i(Bh("diffusers"))})]}),r=="ckpt"&&g.jsx(Vje,{}),r=="diffusers"&&g.jsx(Gje,{})]})]})]})]})}function Tx(e){const{isProcessing:t,isConnected:n}=le(y=>y.system),r=le(y=>y.system.openModel),{t:i}=De(),o=Te(),{name:a,status:s,description:l}=e,u=()=>{o($V(a))},d=()=>{o(UR(a))},h=()=>{o(h_e(a)),o(UR(null))},m=()=>{switch(s){case"active":return"var(--status-good-color)";case"cached":return"var(--status-working-color)";case"not loaded":return"var(--text-color-secondary)"}};return g.jsxs(ke,{alignItems:"center",padding:"0.5rem 0.5rem",borderRadius:"0.2rem",backgroundColor:a===r?"var(--accent-color)":"",_hover:{backgroundColor:a===r?"var(--accent-color)":"var(--background-color)"},children:[g.jsx(ao,{onClick:d,cursor:"pointer",children:g.jsx(si,{label:l,hasArrow:!0,placement:"bottom",children:g.jsx(Dt,{fontWeight:"bold",children:a})})}),g.jsx(rH,{onClick:d,cursor:"pointer"}),g.jsxs(ke,{gap:2,alignItems:"center",children:[g.jsx(Dt,{color:m(),children:s}),g.jsx(ss,{size:"sm",onClick:u,isDisabled:s==="active"||t||!n,className:"modal-close-btn",children:i("modelManager.load")}),g.jsx(Ye,{icon:g.jsx(Wke,{}),size:"sm",onClick:d,"aria-label":"Modify Config",isDisabled:s==="active"||t||!n,className:" modal-close-btn"}),g.jsx(C4,{title:i("modelManager.deleteModel"),acceptCallback:h,acceptButtonText:i("modelManager.delete"),triggerComponent:g.jsx(Ye,{icon:g.jsx(Uke,{}),size:"sm","aria-label":i("modelManager.deleteConfig"),isDisabled:s==="active"||t||!n,className:" modal-close-btn",style:{backgroundColor:"var(--btn-delete-image)"}}),children:g.jsxs(ke,{rowGap:"1rem",flexDirection:"column",children:[g.jsx("p",{style:{fontWeight:"bold"},children:i("modelManager.deleteMsg1")}),g.jsx("p",{style:{color:"var(--text-color-secondary"},children:i("modelManager.deleteMsg2")})]})})]})]})}function Kje(){const e=Te(),{isOpen:t,onOpen:n,onClose:r}=Kd(),i=le(X_e),{t:o}=De(),[a,s]=S.useState(Object.keys(i)[0]),[l,u]=S.useState(Object.keys(i)[1]),[d,h]=S.useState("none"),[m,y]=S.useState(""),[b,w]=S.useState(.5),[E,_]=S.useState("weighted_sum"),[k,T]=S.useState("root"),[L,O]=S.useState(""),[D,I]=S.useState(!1),N=Object.keys(i).filter(z=>{if(z!==l&&z!==d)return z}),W=Object.keys(i).filter(z=>{if(z!==a&&z!==d)return z}),B=["none",...Object.keys(i).filter(z=>{if(z!==a&&z!==l)return z})],K=le(z=>z.system.isProcessing),ne=()=>{let z=[a,l,d];z=z.filter(V=>V!=="none");const $={models_to_merge:z,merged_model_name:m!==""?m:z.join("-"),alpha:b,interp:E,model_merge_save_path:k==="root"?null:L,force:D};e(g_e($))};return g.jsxs(g.Fragment,{children:[g.jsx(On,{onClick:n,className:"modal-close-btn",size:"sm",children:g.jsx(ke,{columnGap:"0.5rem",alignItems:"center",children:o("modelManager.mergeModels")})}),g.jsxs(Yd,{isOpen:t,onClose:r,size:"4xl",closeOnOverlayClick:!1,children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal",fontFamily:"Inter",margin:"auto",children:[g.jsx(op,{children:o("modelManager.mergeModels")}),g.jsx(m0,{}),g.jsxs(ke,{flexDirection:"column",padding:"1rem",rowGap:4,children:[g.jsxs(ke,{flexDirection:"column",marginBottom:"1rem",padding:"1rem",borderRadius:"0.3rem",backgroundColor:"var(--background-color)",rowGap:1,children:[g.jsx(Dt,{children:o("modelManager.modelMergeHeaderHelp1")}),g.jsx(Dt,{fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.modelMergeHeaderHelp2")})]}),g.jsxs(ke,{columnGap:4,children:[g.jsx(Jo,{label:o("modelManager.modelOne"),validValues:N,onChange:z=>s(z.target.value)}),g.jsx(Jo,{label:o("modelManager.modelTwo"),validValues:W,onChange:z=>u(z.target.value)}),g.jsx(Jo,{label:o("modelManager.modelThree"),validValues:B,onChange:z=>{z.target.value!=="none"?(h(z.target.value),_("add_difference")):(h("none"),_("weighted_sum"))}})]}),g.jsx(qn,{label:o("modelManager.mergedModelName"),value:m,onChange:z=>y(z.target.value)}),g.jsxs(ke,{flexDir:"column",backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",rowGap:2,children:[g.jsx(Dn,{label:o("modelManager.alpha"),min:.01,max:.99,step:.01,value:b,onChange:z=>w(z),withInput:!0,withReset:!0,handleReset:()=>w(.5),withSliderMarks:!0,sliderMarkRightOffset:-7}),g.jsx(Dt,{fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.modelMergeAlphaHelp")})]}),g.jsxs(ke,{columnGap:4,backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.interpolationType")}),g.jsx(Oy,{value:E,onChange:z=>_(z),children:g.jsx(ke,{columnGap:4,children:d==="none"?g.jsxs(g.Fragment,{children:[g.jsx(Vo,{value:"weighted_sum",children:"weighted_sum"}),g.jsx(Vo,{value:"sigmoid",children:"sigmoid"}),g.jsx(Vo,{value:"inv_sigmoid",children:"inv_sigmoid"})]}):g.jsx(Vo,{value:"add_difference",children:g.jsx(si,{label:o("modelmanager:modelMergeInterpAddDifferenceHelp"),children:"add_difference"})})})})]}),g.jsxs(ke,{gap:4,flexDirection:"column",backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",children:[g.jsxs(ke,{columnGap:4,children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.mergedModelSaveLocation")}),g.jsx(Oy,{value:k,onChange:z=>T(z),children:g.jsxs(ke,{columnGap:4,children:[g.jsx(Vo,{value:"root",children:o("modelManager.invokeAIFolder")}),g.jsx(Vo,{value:"custom",children:o("modelManager.custom")})]})})]}),k==="custom"&&g.jsx(qn,{label:o("modelManager.mergedModelCustomSaveLocation"),value:L,onChange:z=>O(z.target.value)})]}),g.jsx(Gn,{label:o("modelManager.ignoreMismatch"),isChecked:D,onChange:z=>I(z.target.checked),fontWeight:"bold"}),g.jsx(On,{onClick:ne,isLoading:K,isDisabled:k==="custom"&&L==="",className:"modal modal-close-btn",children:o("modelManager.merge")})]})]})]})]})}const Yje=lt(hr,e=>Pe.map(e.model_list,(n,r)=>({name:r,...n})),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}});function h6({label:e,isActive:t,onClick:n}){return g.jsx(On,{onClick:n,isActive:t,_active:{backgroundColor:"var(--accent-color)",_hover:{backgroundColor:"var(--accent-color)"}},size:"sm",children:e})}const Xje=()=>{const e=le(Yje),[t,n]=Ke.useState(!1);Ke.useEffect(()=>{const m=setTimeout(()=>{n(!0)},200);return()=>clearTimeout(m)},[]);const[r,i]=S.useState(""),[o,a]=S.useState("all"),[s,l]=S.useTransition(),{t:u}=De(),d=m=>{l(()=>{i(m.target.value)})},h=S.useMemo(()=>{const m=[],y=[],b=[],w=[];return e.forEach((E,_)=>{E.name.toLowerCase().includes(r.toLowerCase())&&(b.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_)),E.format===o&&w.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_))),E.format!=="diffusers"?m.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_)):y.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_))}),r!==""?o==="all"?g.jsx(ao,{marginTop:"1rem",children:b}):g.jsx(ao,{marginTop:"1rem",children:w}):g.jsxs(ke,{flexDirection:"column",rowGap:"1.5rem",children:[o==="all"&&g.jsxs(g.Fragment,{children:[g.jsxs(ao,{children:[g.jsx(Dt,{fontWeight:"bold",backgroundColor:"var(--background-color)",padding:"0.5rem 1rem",borderRadius:"0.5rem",margin:"1rem 0",width:"max-content",fontSize:"14",children:u("modelManager.checkpointModels")}),m]}),g.jsxs(ao,{children:[g.jsx(Dt,{fontWeight:"bold",backgroundColor:"var(--background-color)",padding:"0.5rem 1rem",borderRadius:"0.5rem",marginBottom:"0.5rem",width:"max-content",fontSize:"14",children:u("modelManager.diffusersModels")}),y]})]}),o==="ckpt"&&g.jsx(ke,{flexDirection:"column",marginTop:"1rem",children:m}),o==="diffusers"&&g.jsx(ke,{flexDirection:"column",marginTop:"1rem",children:y})]})},[e,r,u,o]);return g.jsxs(ke,{flexDirection:"column",rowGap:"2rem",width:"50%",minWidth:"50%",children:[g.jsxs(ke,{justifyContent:"space-between",children:[g.jsx(Dt,{fontSize:"1.4rem",fontWeight:"bold",children:u("modelManager.availableModels")}),g.jsxs(ke,{gap:2,children:[g.jsx(qje,{}),g.jsx(Kje,{})]})]}),g.jsx(qn,{onChange:d,label:u("modelManager.search")}),g.jsxs(ke,{flexDirection:"column",gap:1,maxHeight:window.innerHeight-360,overflow:"scroll",paddingRight:"1rem",children:[g.jsxs(ke,{columnGap:"0.5rem",children:[g.jsx(h6,{label:u("modelManager.allModels"),onClick:()=>a("all"),isActive:o==="all"}),g.jsx(h6,{label:u("modelManager.checkpointModels"),onClick:()=>a("ckpt"),isActive:o==="ckpt"}),g.jsx(h6,{label:u("modelManager.diffusersModels"),onClick:()=>a("diffusers"),isActive:o==="diffusers"})]}),t?h:g.jsx(ke,{width:"100%",minHeight:"30rem",justifyContent:"center",alignItems:"center",children:g.jsx(p0,{})})]})]})};function Zje({children:e}){const{isOpen:t,onOpen:n,onClose:r}=Kd(),i=le(s=>s.system.model_list),o=le(s=>s.system.openModel),{t:a}=De();return g.jsxs(g.Fragment,{children:[S.cloneElement(e,{onClick:n}),g.jsxs(Yd,{isOpen:t,onClose:r,size:"6xl",children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal",fontFamily:"Inter",children:[g.jsx(m0,{className:"modal-close-btn"}),g.jsx(op,{fontWeight:"bold",children:a("modelManager.modelManager")}),g.jsxs(ke,{padding:"0 1.5rem 1.5rem 1.5rem",width:"100%",columnGap:"2rem",children:[g.jsx(Xje,{}),o&&i[o].format==="diffusers"?g.jsx(Hje,{}):g.jsx(Bje,{})]})]})]})]})}const Qje=lt([hr],e=>{const{isProcessing:t,model_list:n}=e;return{models:Pe.map(n,(i,o)=>o),isProcessing:t}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),Jje=()=>{const e=Te(),{models:t,isProcessing:n}=le(Qje),r=le(VV),i=o=>{e($V(o.target.value))};return g.jsx(ke,{style:{paddingLeft:"0.3rem"},children:g.jsx(Jo,{style:{fontSize:"0.8rem"},tooltip:r.description,isDisabled:n,value:r.name,validValues:t,onChange:i})})},eNe=lt([hr,fp],(e,t)=>{const{shouldDisplayInProgressType:n,shouldConfirmOnDelete:r,shouldDisplayGuides:i,model_list:o,saveIntermediatesInterval:a,enableImageDebugging:s}=e,{shouldUseCanvasBetaLayout:l,shouldUseSliders:u}=t;return{shouldDisplayInProgressType:n,shouldConfirmOnDelete:r,shouldDisplayGuides:i,models:Pe.map(o,(d,h)=>h),saveIntermediatesInterval:a,enableImageDebugging:s,shouldUseCanvasBetaLayout:l,shouldUseSliders:u}},{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),tNe=({children:e})=>{const t=Te(),{t:n}=De(),r=le(T=>T.generation.steps),{isOpen:i,onOpen:o,onClose:a}=Kd(),{isOpen:s,onOpen:l,onClose:u}=Kd(),{shouldDisplayInProgressType:d,shouldConfirmOnDelete:h,shouldDisplayGuides:m,saveIntermediatesInterval:y,enableImageDebugging:b,shouldUseCanvasBetaLayout:w,shouldUseSliders:E}=le(eNe),_=()=>{zV.purge().then(()=>{a(),l()})},k=T=>{T>r&&(T=r),T<1&&(T=1),t(k4e(T))};return g.jsxs(g.Fragment,{children:[S.cloneElement(e,{onClick:o}),g.jsxs(Yd,{isOpen:i,onClose:a,size:"lg",children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal settings-modal",children:[g.jsx(op,{className:"settings-modal-header",children:n("common.settingsLabel")}),g.jsx(m0,{className:"modal-close-btn"}),g.jsxs(Zm,{className:"settings-modal-content",children:[g.jsxs("div",{className:"settings-modal-items",children:[g.jsxs("div",{className:"settings-modal-item",style:{gridAutoFlow:"row",rowGap:"0.5rem"},children:[g.jsx(Jo,{label:n("settings.displayInProgress"),validValues:D5e,value:d,onChange:T=>t(m4e(T.target.value))}),d==="full-res"&&g.jsx(lc,{label:n("settings.saveSteps"),min:1,max:r,step:1,onChange:k,value:y,width:"auto",textAlign:"center"})]}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.confirmOnDelete"),isChecked:h,onChange:T=>t(IU(T.target.checked))}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.displayHelpIcons"),isChecked:m,onChange:T=>t(x4e(T.target.checked))}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.useCanvasBeta"),isChecked:w,onChange:T=>t($4e(T.target.checked))}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.useSlidersForAll"),isChecked:E,onChange:T=>t(B4e(T.target.checked))})]}),g.jsxs("div",{className:"settings-modal-items",children:[g.jsx("h2",{style:{fontWeight:"bold"},children:"Developer"}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.enableImageDebugging"),isChecked:b,onChange:T=>t(E4e(T.target.checked))})]}),g.jsxs("div",{className:"settings-modal-reset",children:[g.jsx(jh,{size:"md",children:n("settings.resetWebUI")}),g.jsx(ss,{colorScheme:"red",onClick:_,children:n("settings.resetWebUI")}),g.jsx(Dt,{children:n("settings.resetWebUIDesc1")}),g.jsx(Dt,{children:n("settings.resetWebUIDesc2")})]})]}),g.jsx(zw,{children:g.jsx(ss,{onClick:a,className:"modal-close-btn",children:n("common.close")})})]})]}),g.jsxs(Yd,{closeOnOverlayClick:!1,isOpen:s,onClose:u,isCentered:!0,children:[g.jsx(oc,{bg:"blackAlpha.300",backdropFilter:"blur(40px)"}),g.jsx(Xd,{children:g.jsx(Zm,{pb:6,pt:6,children:g.jsx(ke,{justifyContent:"center",children:g.jsx(Dt,{fontSize:"lg",children:g.jsx(Dt,{children:n("settings.resetComplete")})})})})})]})]})},nNe=lt(hr,e=>({isConnected:e.isConnected,isProcessing:e.isProcessing,currentIteration:e.currentIteration,totalIterations:e.totalIterations,currentStatus:e.currentStatus,hasError:e.hasError,wasErrorSeen:e.wasErrorSeen}),{memoizeOptions:{resultEqualityCheck:Pe.isEqual}}),rNe=()=>{const{isConnected:e,isProcessing:t,currentIteration:n,totalIterations:r,currentStatus:i,hasError:o,wasErrorSeen:a}=le(nNe),s=Te(),{t:l}=De();let u;e&&!o?u="status-good":u="status-bad";let d=i;[l("common.statusGenerating"),l("common.statusPreparing"),l("common.statusSavingImage"),l("common.statusRestoringFaces"),l("common.statusUpscaling")].includes(d)&&(u="status-working"),d&&t&&r>1&&(d=`${l(d)} (${n}/${r})`);const m=o&&!a?"Click to clear, check logs for details":void 0,y=o&&!a?"pointer":"initial",b=()=>{(o||!a)&&s(DU())};return g.jsx(si,{label:m,children:g.jsx(Dt,{cursor:y,onClick:b,className:`status ${u}`,children:l(d)})})};function iNe(){const{t:e}=De(),{setColorMode:t,colorMode:n}=Qy(),r=Te(),i=le(l=>l.ui.currentTheme),o={dark:e("common.darkTheme"),light:e("common.lightTheme"),green:e("common.greenTheme")};S.useEffect(()=>{n!==i&&t(i)},[t,n,i]);const a=l=>{r(R4e(l))},s=()=>{const l=[];return Object.keys(o).forEach(u=>{l.push(g.jsx(On,{style:{width:"6rem"},leftIcon:i===u?g.jsx(jE,{}):void 0,size:"sm",onClick:()=>a(u),children:o[u]},u))}),l};return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":e("common.themeLabel"),size:"sm",variant:"link","data-variant":"link",fontSize:20,icon:g.jsx(Mke,{})}),children:g.jsx(hn,{align:"stretch",children:s()})})}function oNe(){const{t:e,i18n:t}=De(),n={ar:e("common.langArabic",{lng:"ar"}),nl:e("common.langDutch",{lng:"nl"}),en:e("common.langEnglish",{lng:"en"}),fr:e("common.langFrench",{lng:"fr"}),de:e("common.langGerman",{lng:"de"}),it:e("common.langItalian",{lng:"it"}),ja:e("common.langJapanese",{lng:"ja"}),pl:e("common.langPolish",{lng:"pl"}),pt_Br:e("common.langBrPortuguese",{lng:"pt_Br"}),ru:e("common.langRussian",{lng:"ru"}),zh_Cn:e("common.langSimplifiedChinese",{lng:"zh_Cn"}),es:e("common.langSpanish",{lng:"es"}),uk:e("common.langUkranian",{lng:"ua"})},r=()=>{const i=[];return Object.keys(n).forEach(o=>{i.push(g.jsx(On,{"data-selected":localStorage.getItem("i18nextLng")===o,onClick:()=>t.changeLanguage(o),className:"modal-close-btn lang-select-btn","aria-label":n[o],size:"sm",minWidth:"200px",children:n[o]},o))}),i};return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":e("common.languagePickerLabel"),tooltip:e("common.languagePickerLabel"),icon:g.jsx(Eke,{}),size:"sm",variant:"link","data-variant":"link",fontSize:26}),children:g.jsx(hn,{children:r()})})}const aNe=()=>{const{t:e}=De(),t=le(n=>n.system.app_version);return g.jsxs("div",{className:"site-header",children:[g.jsxs("div",{className:"site-header-left-side",children:[g.jsx("img",{src:pq,alt:"invoke-ai-logo"}),g.jsxs(ke,{alignItems:"center",columnGap:"0.6rem",children:[g.jsxs(Dt,{fontSize:"1.4rem",children:["invoke ",g.jsx("strong",{children:"ai"})]}),g.jsx(Dt,{fontWeight:"bold",color:"var(--text-color-secondary)",marginTop:"0.2rem",children:t})]})]}),g.jsxs("div",{className:"site-header-right-side",children:[g.jsx(rNe,{}),g.jsx(Jje,{}),g.jsx(Zje,{children:g.jsx(Ye,{"aria-label":e("modelManager.modelManager"),tooltip:e("modelManager.modelManager"),size:"sm",variant:"link","data-variant":"link",fontSize:20,icon:g.jsx(yke,{})})}),g.jsx(VAe,{children:g.jsx(Ye,{"aria-label":e("common.hotkeysLabel"),tooltip:e("common.hotkeysLabel"),size:"sm",variant:"link","data-variant":"link",fontSize:20,icon:g.jsx(kke,{})})}),g.jsx(iNe,{}),g.jsx(oNe,{}),g.jsx(Ye,{"aria-label":e("common.reportBugLabel"),tooltip:e("common.reportBugLabel"),variant:"link","data-variant":"link",fontSize:20,size:"sm",icon:g.jsx(Nh,{isExternal:!0,href:"http://github.com/invoke-ai/InvokeAI/issues",children:g.jsx(vke,{})})}),g.jsx(Ye,{"aria-label":e("common.githubLabel"),tooltip:e("common.githubLabel"),variant:"link","data-variant":"link",fontSize:20,size:"sm",icon:g.jsx(Nh,{isExternal:!0,href:"http://github.com/invoke-ai/InvokeAI",children:g.jsx(fke,{})})}),g.jsx(Ye,{"aria-label":e("common.discordLabel"),tooltip:e("common.discordLabel"),variant:"link","data-variant":"link",fontSize:20,size:"sm",icon:g.jsx(Nh,{isExternal:!0,href:"https://discord.gg/ZmtBAhwWhy",children:g.jsx(dke,{})})}),g.jsx(tNe,{children:g.jsx(Ye,{"aria-label":e("common.settingsLabel"),tooltip:e("common.settingsLabel"),variant:"link","data-variant":"link",fontSize:22,size:"sm",icon:g.jsx(o7e,{})})})]})]})};function sNe(){async function e(n=""){return await fetch(n,{method:"GET",cache:"no-cache"})}const t=()=>{const n=document.location;e(n+"/flaskwebgui-keep-server-alive").then(i=>i)};(!{}.NODE_ENV||{}.NODE_ENV==="production")&&document.addEventListener("DOMContentLoaded",()=>{t(),setInterval(t,3e3)})}const lNe=()=>{const e=Te(),t=le(Y_e),n=a2();S.useEffect(()=>{t.forEach(r=>{n(r)}),t.length>0&&e(T4e())},[e,n,t])},uNe=()=>{const e=Te(),{shouldShowGalleryButton:t,shouldPinGallery:n}=le(nP),r=()=>{e(Am(!0)),n&&e(Li(!0))};return t?g.jsx(Ye,{tooltip:"Show Gallery (G)",tooltipProps:{placement:"top"},"aria-label":"Show Gallery",styleClass:"floating-show-hide-button right show-hide-button-gallery",onClick:r,children:g.jsx(pG,{})}):null};sNe();const cNe=()=>(lNe(),g.jsxs("div",{className:"App",children:[g.jsxs($Ae,{children:[g.jsx(WAe,{}),g.jsxs("div",{className:"app-content",children:[g.jsx(aNe,{}),g.jsx(WLe,{})]}),g.jsx("div",{className:"app-console",children:g.jsx(zAe,{})})]}),g.jsx(qEe,{}),g.jsx(uNe,{})]})),wj=()=>g.jsx(ke,{width:"100vw",height:"100vh",alignItems:"center",justifyContent:"center",children:g.jsx(p0,{thickness:"2px",speed:"1s",emptyColor:"gray.200",color:"gray.400",size:"xl"})});const dNe=Bj({key:"invokeai-style-cache",prepend:!0});rk.createRoot(document.getElementById("root")).render(g.jsx(Ke.StrictMode,{children:g.jsx(pxe,{store:BV,children:g.jsx(gW,{loading:g.jsx(wj,{}),persistor:zV,children:g.jsx(uee,{value:dNe,children:g.jsx(Rge,{children:g.jsx(Ke.Suspense,{fallback:g.jsx(wj,{}),children:g.jsx(cNe,{})})})})})})})); +`.replaceAll("black",e),oMe=e=>{const{...t}=e,{maskColorString:n,stageCoordinates:r,stageDimensions:i,stageScale:o}=le(iMe),[a,s]=S.useState(null),[l,u]=S.useState(0),d=S.useRef(null),p=S.useCallback(()=>{u(l+1),setTimeout(p,500)},[l]);return S.useEffect(()=>{if(a)return;const m=new Image;m.onload=()=>{s(m)},m.src=ED(n)},[a,n]),S.useEffect(()=>{a&&(a.src=ED(n))},[a,n]),S.useEffect(()=>{const m=setInterval(()=>u(y=>(y+1)%5),50);return()=>clearInterval(m)},[]),!a||!Ce.isNumber(r.x)||!Ce.isNumber(r.y)||!Ce.isNumber(o)||!Ce.isNumber(i.width)||!Ce.isNumber(i.height)?null:g.jsx(cc,{ref:d,offsetX:r.x/o,offsetY:r.y/o,height:i.height/o,width:i.width/o,fillPatternImage:a,fillPatternOffsetY:Ce.isNumber(l)?l:0,fillPatternRepeat:"repeat",fillPatternScale:{x:1/o,y:1/o},listening:!0,globalCompositeOperation:"source-in",...t})},aMe=lt([rn],e=>({objects:e.layerState.objects}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),sMe=e=>{const{...t}=e,{objects:n}=le(aMe);return g.jsx(uc,{listening:!1,...t,children:n.filter(hE).map((r,i)=>g.jsx(F3,{points:r.points,stroke:"rgb(0,0,0)",strokeWidth:r.strokeWidth*2,tension:0,lineCap:"round",lineJoin:"round",shadowForStrokeEnabled:!1,listening:!1,globalCompositeOperation:r.tool==="brush"?"source-over":"destination-out"},i))})};var sh=S,lMe=function(t,n,r){const i=sh.useRef("loading"),o=sh.useRef(),[a,s]=sh.useState(0),l=sh.useRef(),u=sh.useRef(),d=sh.useRef();return(l.current!==t||u.current!==n||d.current!==r)&&(i.current="loading",o.current=void 0,l.current=t,u.current=n,d.current=r),sh.useLayoutEffect(function(){if(!t)return;var p=document.createElement("img");function m(){i.current="loaded",o.current=p,s(Math.random())}function y(){i.current="failed",o.current=void 0,s(Math.random())}return p.addEventListener("load",m),p.addEventListener("error",y),n&&(p.crossOrigin=n),r&&(p.referrerpolicy=r),p.src=t,function(){p.removeEventListener("load",m),p.removeEventListener("error",y)}},[t,n,r]),[o.current,i.current]};const _q=e=>{const{url:t,x:n,y:r}=e,[i]=lMe(t);return g.jsx(wq,{x:n,y:r,image:i,listening:!1})},uMe=lt([rn],e=>{const{layerState:{objects:t}}=e;return{objects:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),cMe=()=>{const{objects:e}=le(uMe);return e?g.jsx(uc,{name:"outpainting-objects",listening:!1,children:e.map((t,n)=>{if(x3(t))return g.jsx(_q,{x:t.x,y:t.y,url:t.image.url},n);if(XSe(t)){const r=g.jsx(F3,{points:t.points,stroke:t.color?zh(t.color):"rgb(0,0,0)",strokeWidth:t.strokeWidth*2,tension:0,lineCap:"round",lineJoin:"round",shadowForStrokeEnabled:!1,listening:!1,globalCompositeOperation:t.tool==="brush"?"source-over":"destination-out"},n);return t.clip?g.jsx(uc,{clipX:t.clip.x,clipY:t.clip.y,clipWidth:t.clip.width,clipHeight:t.clip.height,children:r},n):r}else{if(ZSe(t))return g.jsx(cc,{x:t.x,y:t.y,width:t.width,height:t.height,fill:zh(t.color)},n);if(QSe(t))return g.jsx(cc,{x:t.x,y:t.y,width:t.width,height:t.height,fill:"rgb(255, 255, 255)",globalCompositeOperation:"destination-out"},n)}})}):null},dMe=lt([rn],e=>{const{layerState:{stagingArea:{images:t,selectedImageIndex:n}},shouldShowStagingImage:r,shouldShowStagingOutline:i,boundingBoxCoordinates:{x:o,y:a},boundingBoxDimensions:{width:s,height:l}}=e;return{currentStagingAreaImage:t.length>0?t[n]:void 0,isOnFirstImage:n===0,isOnLastImage:n===t.length-1,shouldShowStagingImage:r,shouldShowStagingOutline:i,x:o,y:a,width:s,height:l}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),fMe=e=>{const{...t}=e,{currentStagingAreaImage:n,shouldShowStagingImage:r,shouldShowStagingOutline:i,x:o,y:a,width:s,height:l}=le(dMe);return g.jsxs(uc,{...t,children:[r&&n&&g.jsx(_q,{url:n.image.url,x:o,y:a}),i&&g.jsxs(uc,{children:[g.jsx(cc,{x:o,y:a,width:s,height:l,strokeWidth:1,stroke:"white",strokeScaleEnabled:!1}),g.jsx(cc,{x:o,y:a,width:s,height:l,dash:[4,4],strokeWidth:1,stroke:"black",strokeScaleEnabled:!1})]})]})},hMe=lt([rn],e=>{const{layerState:{stagingArea:{images:t,selectedImageIndex:n}},shouldShowStagingOutline:r,shouldShowStagingImage:i}=e;return{currentStagingAreaImage:t.length>0?t[n]:void 0,isOnFirstImage:n===0,isOnLastImage:n===t.length-1,shouldShowStagingImage:i,shouldShowStagingOutline:r}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),pMe=()=>{const e=Te(),{isOnFirstImage:t,isOnLastImage:n,currentStagingAreaImage:r,shouldShowStagingImage:i}=le(hMe),{t:o}=De(),a=S.useCallback(()=>{e(XO(!0))},[e]),s=S.useCallback(()=>{e(XO(!1))},[e]);Qe(["left"],()=>{l()},{enabled:()=>!0,preventDefault:!0}),Qe(["right"],()=>{u()},{enabled:()=>!0,preventDefault:!0}),Qe(["enter"],()=>{d()},{enabled:()=>!0,preventDefault:!0});const l=()=>e(l3e()),u=()=>e(s3e()),d=()=>e(i3e());return r?g.jsx(Ee,{pos:"absolute",bottom:"1rem",w:"100%",align:"center",justify:"center",filter:"drop-shadow(0 0.5rem 1rem rgba(0,0,0))",onMouseOver:a,onMouseOut:s,children:g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{tooltip:`${o("unifiedCanvas.previous")} (Left)`,"aria-label":`${o("unifiedCanvas.previous")} (Left)`,icon:g.jsx(gke,{}),onClick:l,"data-selected":!0,isDisabled:t}),g.jsx(Ye,{tooltip:`${o("unifiedCanvas.next")} (Right)`,"aria-label":`${o("unifiedCanvas.next")} (Right)`,icon:g.jsx(mke,{}),onClick:u,"data-selected":!0,isDisabled:n}),g.jsx(Ye,{tooltip:`${o("unifiedCanvas.accept")} (Enter)`,"aria-label":`${o("unifiedCanvas.accept")} (Enter)`,icon:g.jsx(jE,{}),onClick:d,"data-selected":!0}),g.jsx(Ye,{tooltip:o("unifiedCanvas.showHide"),"aria-label":o("unifiedCanvas.showHide"),"data-alert":!i,icon:i?g.jsx(Cke,{}):g.jsx(wke,{}),onClick:()=>e(y3e(!i)),"data-selected":!0}),g.jsx(Ye,{tooltip:o("unifiedCanvas.saveToGallery"),"aria-label":o("unifiedCanvas.saveToGallery"),icon:g.jsx($E,{}),onClick:()=>e(v_e(r.image.url)),"data-selected":!0}),g.jsx(Ye,{tooltip:o("unifiedCanvas.discardAll"),"aria-label":o("unifiedCanvas.discardAll"),icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),onClick:()=>e(o3e()),"data-selected":!0,style:{backgroundColor:"var(--btn-delete-image)"},fontSize:20})]})}):null},cm=e=>Math.round(e*100)/100,gMe=lt([rn],e=>{const{cursorPosition:t}=e,{cursorX:n,cursorY:r}=t?{cursorX:t.x,cursorY:t.y}:{cursorX:-1,cursorY:-1};return{cursorCoordinatesString:`(${cm(n)}, ${cm(r)})`}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function mMe(){const{cursorCoordinatesString:e}=le(gMe),{t}=De();return g.jsx("div",{children:`${t("unifiedCanvas.cursorPosition")}: ${e}`})}const vMe=lt([rn],e=>{const{stageDimensions:{width:t,height:n},stageCoordinates:{x:r,y:i},boundingBoxDimensions:{width:o,height:a},scaledBoundingBoxDimensions:{width:s,height:l},boundingBoxCoordinates:{x:u,y:d},stageScale:p,shouldShowCanvasDebugInfo:m,layer:y,boundingBoxScaleMethod:b,shouldPreserveMaskedArea:w}=e;let E="inherit";return(b==="none"&&(o<512||a<512)||b==="manual"&&s*l<512*512)&&(E="var(--status-working-color)"),{activeLayerColor:y==="mask"?"var(--status-working-color)":"inherit",activeLayerString:y.charAt(0).toUpperCase()+y.slice(1),boundingBoxColor:E,boundingBoxCoordinatesString:`(${cm(u)}, ${cm(d)})`,boundingBoxDimensionsString:`${o}×${a}`,scaledBoundingBoxDimensionsString:`${s}×${l}`,canvasCoordinatesString:`${cm(r)}×${cm(i)}`,canvasDimensionsString:`${t}×${n}`,canvasScaleString:Math.round(p*100),shouldShowCanvasDebugInfo:m,shouldShowBoundingBox:b!=="auto",shouldShowScaledBoundingBox:b!=="none",shouldPreserveMaskedArea:w}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),yMe=()=>{const{activeLayerColor:e,activeLayerString:t,boundingBoxColor:n,boundingBoxCoordinatesString:r,boundingBoxDimensionsString:i,scaledBoundingBoxDimensionsString:o,shouldShowScaledBoundingBox:a,canvasCoordinatesString:s,canvasDimensionsString:l,canvasScaleString:u,shouldShowCanvasDebugInfo:d,shouldShowBoundingBox:p,shouldPreserveMaskedArea:m}=le(vMe),{t:y}=De();return g.jsxs("div",{className:"canvas-status-text",children:[g.jsx("div",{style:{color:e},children:`${y("unifiedCanvas.activeLayer")}: ${t}`}),g.jsx("div",{children:`${y("unifiedCanvas.canvasScale")}: ${u}%`}),m&&g.jsx("div",{style:{color:"var(--status-working-color)"},children:"Preserve Masked Area: On"}),p&&g.jsx("div",{style:{color:n},children:`${y("unifiedCanvas.boundingBox")}: ${i}`}),a&&g.jsx("div",{style:{color:n},children:`${y("unifiedCanvas.scaledBoundingBox")}: ${o}`}),d&&g.jsxs(g.Fragment,{children:[g.jsx("div",{children:`${y("unifiedCanvas.boundingBoxPosition")}: ${r}`}),g.jsx("div",{children:`${y("unifiedCanvas.canvasDimensions")}: ${l}`}),g.jsx("div",{children:`${y("unifiedCanvas.canvasPosition")}: ${s}`}),g.jsx(mMe,{})]})]})},bMe=lt(rn,e=>{const{boundingBoxCoordinates:t,boundingBoxDimensions:n,stageScale:r,isDrawing:i,isTransformingBoundingBox:o,isMovingBoundingBox:a,tool:s,shouldSnapToGrid:l}=e;return{boundingBoxCoordinates:t,boundingBoxDimensions:n,isDrawing:i,isMovingBoundingBox:a,isTransformingBoundingBox:o,stageScale:r,shouldSnapToGrid:l,tool:s,hitStrokeWidth:20/r}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),xMe=e=>{const{...t}=e,n=Te(),{boundingBoxCoordinates:r,boundingBoxDimensions:i,isDrawing:o,isMovingBoundingBox:a,isTransformingBoundingBox:s,stageScale:l,shouldSnapToGrid:u,tool:d,hitStrokeWidth:p}=le(bMe),m=S.useRef(null),y=S.useRef(null),[b,w]=S.useState(!1);S.useEffect(()=>{var ne;!m.current||!y.current||(m.current.nodes([y.current]),(ne=m.current.getLayer())==null||ne.batchDraw())},[]);const E=64*l,_=S.useCallback(ne=>{if(!u){n(RC({x:Math.floor(ne.target.x()),y:Math.floor(ne.target.y())}));return}const z=ne.target.x(),$=ne.target.y(),V=Hl(z,64),X=Hl($,64);ne.target.x(V),ne.target.y(X),n(RC({x:V,y:X}))},[n,u]),k=S.useCallback(()=>{if(!y.current)return;const ne=y.current,z=ne.scaleX(),$=ne.scaleY(),V=Math.round(ne.width()*z),X=Math.round(ne.height()*$),Q=Math.round(ne.x()),G=Math.round(ne.y());n(g1({width:V,height:X})),n(RC({x:u?Cd(Q,64):Q,y:u?Cd(G,64):G})),ne.scaleX(1),ne.scaleY(1)},[n,u]),T=S.useCallback((ne,z,$)=>{const V=ne.x%E,X=ne.y%E;return{x:Cd(z.x,E)+V,y:Cd(z.y,E)+X}},[E]),L=()=>{n(DC(!0))},O=()=>{n(DC(!1)),n(IC(!1)),n(Qb(!1)),w(!1)},D=()=>{n(IC(!0))},I=()=>{n(DC(!1)),n(IC(!1)),n(Qb(!1)),w(!1)},N=()=>{w(!0)},W=()=>{!s&&!a&&w(!1)},B=()=>{n(Qb(!0))},K=()=>{n(Qb(!1))};return g.jsxs(uc,{...t,children:[g.jsx(cc,{height:i.height,width:i.width,x:r.x,y:r.y,onMouseEnter:B,onMouseOver:B,onMouseLeave:K,onMouseOut:K}),g.jsx(cc,{draggable:!0,fillEnabled:!1,height:i.height,hitStrokeWidth:p,listening:!o&&d==="move",onDragStart:D,onDragEnd:I,onDragMove:_,onMouseDown:D,onMouseOut:W,onMouseOver:N,onMouseEnter:N,onMouseUp:I,onTransform:k,onTransformEnd:O,ref:y,stroke:b?"rgba(255,255,255,0.7)":"white",strokeWidth:(b?8:1)/l,width:i.width,x:r.x,y:r.y}),g.jsx(jTe,{anchorCornerRadius:3,anchorDragBoundFunc:T,anchorFill:"rgba(212,216,234,1)",anchorSize:15,anchorStroke:"rgb(42,42,42)",borderDash:[4,4],borderEnabled:!0,borderStroke:"black",draggable:!1,enabledAnchors:d==="move"?void 0:[],flipEnabled:!1,ignoreStroke:!0,keepRatio:!1,listening:!o&&d==="move",onDragStart:D,onDragEnd:I,onMouseDown:L,onMouseUp:O,onTransformEnd:O,ref:m,rotateEnabled:!1})]})},SMe=lt(rn,e=>{const{cursorPosition:t,brushSize:n,colorPickerColor:r,maskColor:i,brushColor:o,tool:a,layer:s,shouldShowBrush:l,isMovingBoundingBox:u,isTransformingBoundingBox:d,stageScale:p,stageDimensions:m,boundingBoxCoordinates:y,boundingBoxDimensions:b,shouldRestrictStrokesToBox:w}=e,E=w?{clipX:y.x,clipY:y.y,clipWidth:b.width,clipHeight:b.height}:{};return{cursorPosition:t,brushX:t?t.x:m.width/2,brushY:t?t.y:m.height/2,radius:n/2,colorPickerOuterRadius:KO/p,colorPickerInnerRadius:(KO-pk+1)/p,maskColorString:zh({...i,a:.5}),brushColorString:zh(o),colorPickerColorString:zh(r),tool:a,layer:s,shouldShowBrush:l,shouldDrawBrushPreview:!(u||d||!t)&&l,strokeWidth:1.5/p,dotRadius:1.5/p,clip:E}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),wMe=e=>{const{...t}=e,{brushX:n,brushY:r,radius:i,maskColorString:o,tool:a,layer:s,shouldDrawBrushPreview:l,dotRadius:u,strokeWidth:d,brushColorString:p,colorPickerColorString:m,colorPickerInnerRadius:y,colorPickerOuterRadius:b,clip:w}=le(SMe);return l?g.jsxs(uc,{listening:!1,...w,...t,children:[a==="colorPicker"?g.jsxs(g.Fragment,{children:[g.jsx(ah,{x:n,y:r,radius:b,stroke:p,strokeWidth:pk,strokeScaleEnabled:!1}),g.jsx(ah,{x:n,y:r,radius:y,stroke:m,strokeWidth:pk,strokeScaleEnabled:!1})]}):g.jsxs(g.Fragment,{children:[g.jsx(ah,{x:n,y:r,radius:i,fill:s==="mask"?o:p,globalCompositeOperation:a==="eraser"?"destination-out":"source-out"}),g.jsx(ah,{x:n,y:r,radius:i,stroke:"rgba(255,255,255,0.4)",strokeWidth:d*2,strokeEnabled:!0,listening:!1}),g.jsx(ah,{x:n,y:r,radius:i,stroke:"rgba(0,0,0,1)",strokeWidth:d,strokeEnabled:!0,listening:!1})]}),g.jsx(ah,{x:n,y:r,radius:u*2,fill:"rgba(255,255,255,0.4)",listening:!1}),g.jsx(ah,{x:n,y:r,radius:u,fill:"rgba(0,0,0,1)",listening:!1})]}):null},CMe=lt([rn,Lr],(e,t)=>{const{isMaskEnabled:n,stageScale:r,shouldShowBoundingBox:i,isTransformingBoundingBox:o,isMouseOverBoundingBox:a,isMovingBoundingBox:s,stageDimensions:l,stageCoordinates:u,tool:d,isMovingStage:p,shouldShowIntermediates:m,shouldShowGrid:y,shouldRestrictStrokesToBox:b}=e;let w="none";return d==="move"||t?p?w="grabbing":w="grab":o?w=void 0:b&&!a&&(w="default"),{isMaskEnabled:n,isModifyingBoundingBox:o||s,shouldShowBoundingBox:i,shouldShowGrid:y,stageCoordinates:u,stageCursor:w,stageDimensions:l,stageScale:r,tool:d,isStaging:t,shouldShowIntermediates:m}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),kq=()=>{const{isMaskEnabled:e,isModifyingBoundingBox:t,shouldShowBoundingBox:n,shouldShowGrid:r,stageCoordinates:i,stageCursor:o,stageDimensions:a,stageScale:s,tool:l,isStaging:u,shouldShowIntermediates:d}=le(CMe);zTe();const p=S.useRef(null),m=S.useRef(null),y=S.useCallback(W=>{Y6e(W),p.current=W},[]),b=S.useCallback(W=>{K6e(W),m.current=W},[]),w=S.useRef({x:0,y:0}),E=S.useRef(!1),_=XTe(p),k=WTe(p),T=KTe(p,E),L=VTe(p,E,w),O=GTe(),{handleDragStart:D,handleDragMove:I,handleDragEnd:N}=FTe();return g.jsx("div",{className:"inpainting-canvas-container",children:g.jsxs("div",{className:"inpainting-canvas-wrapper",children:[g.jsxs(NTe,{tabIndex:-1,ref:y,className:"inpainting-canvas-stage",style:{...o?{cursor:o}:{}},x:i.x,y:i.y,width:a.width,height:a.height,scale:{x:s,y:s},onTouchStart:k,onTouchMove:L,onTouchEnd:T,onMouseDown:k,onMouseLeave:O,onMouseMove:L,onMouseUp:T,onDragStart:D,onDragMove:I,onDragEnd:N,onContextMenu:W=>W.evt.preventDefault(),onWheel:_,draggable:(l==="move"||u)&&!t,children:[g.jsx(n1,{id:"grid",visible:r,children:g.jsx(tMe,{})}),g.jsx(n1,{id:"base",ref:b,listening:!1,imageSmoothingEnabled:!1,children:g.jsx(cMe,{})}),g.jsxs(n1,{id:"mask",visible:e,listening:!1,children:[g.jsx(sMe,{visible:!0,listening:!1}),g.jsx(oMe,{listening:!1})]}),g.jsx(n1,{children:g.jsx(QTe,{})}),g.jsxs(n1,{id:"preview",imageSmoothingEnabled:!1,children:[!u&&g.jsx(wMe,{visible:l!=="move",listening:!1}),g.jsx(fMe,{visible:u}),d&&g.jsx(rMe,{}),g.jsx(xMe,{visible:n&&!u})]})]}),g.jsx(yMe,{}),g.jsx(pMe,{})]})})},_Me=lt(rn,lG,Br,(e,t,n)=>{const{doesCanvasNeedScaling:r,isCanvasInitialized:i}=e;return{doesCanvasNeedScaling:r,activeTabName:n,initialCanvasImage:t,isCanvasInitialized:i}}),Eq=()=>{const e=Te(),{doesCanvasNeedScaling:t,activeTabName:n,initialCanvasImage:r,isCanvasInitialized:i}=le(_Me),o=S.useRef(null);return S.useLayoutEffect(()=>{window.setTimeout(()=>{if(!o.current)return;const{clientWidth:a,clientHeight:s}=o.current;e(h3e({width:a,height:s})),e(i?d3e():r4()),e(Li(!1))},0)},[e,r,t,n,i]),g.jsx("div",{ref:o,className:"inpainting-canvas-area",children:g.jsx(p0,{thickness:"2px",speed:"1s",size:"xl"})})},kMe=lt([rn,Br,hr],(e,t,n)=>{const{futureLayerStates:r}=e;return{canRedo:r.length>0&&!n.isProcessing,activeTabName:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function Pq(){const e=Te(),{canRedo:t,activeTabName:n}=le(kMe),{t:r}=De(),i=()=>{e(u3e())};return Qe(["meta+shift+z","ctrl+shift+z","control+y","meta+y"],()=>{i()},{enabled:()=>t,preventDefault:!0},[n,t]),g.jsx(Ye,{"aria-label":`${r("unifiedCanvas.redo")} (Ctrl+Shift+Z)`,tooltip:`${r("unifiedCanvas.redo")} (Ctrl+Shift+Z)`,icon:g.jsx(Ike,{}),onClick:i,isDisabled:!t})}const EMe=lt([rn,Br,hr],(e,t,n)=>{const{pastLayerStates:r}=e;return{canUndo:r.length>0&&!n.isProcessing,activeTabName:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function Tq(){const e=Te(),{t}=De(),{canUndo:n,activeTabName:r}=le(EMe),i=()=>{e(x3e())};return Qe(["meta+z","ctrl+z"],()=>{i()},{enabled:()=>n,preventDefault:!0},[r,n]),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.undo")} (Ctrl+Z)`,tooltip:`${t("unifiedCanvas.undo")} (Ctrl+Z)`,icon:g.jsx($ke,{}),onClick:i,isDisabled:!n})}const PMe=(e,t,n)=>{const r=document.createElement("img");r.addEventListener("load",()=>{const i=document.createElement("canvas");i.width=t,i.height=n;const o=i.getContext("2d");o&&(o.drawImage(r,0,0),i.toBlob(a=>{a&&navigator.clipboard.write([new ClipboardItem({[a.type]:a})])}),i.remove(),r.remove())}),r.src=e},TMe=e=>{const t=document.createElement("a");t.href=e,t.download="",document.body.appendChild(t),t.click(),document.body.removeChild(t),t.remove()},MMe=(e,t,n,r)=>{const i=e.scale(),o=e.getClientRect({relativeTo:e.getParent()});e.scale({x:1/t,y:1/t});const{x:a,y:s,width:l,height:u}=e.getClientRect(),d=r?{x:r.x+n.x,y:r.y+n.y,width:r.width,height:r.height}:{x:a,y:s,width:l,height:u},p=e.toDataURL(d);return e.scale(i),{dataURL:p,boundingBox:{x:o.x,y:o.y,width:l,height:u}}},LMe={cropVisible:!1,cropToBoundingBox:!1,shouldSaveToGallery:!1,shouldDownload:!1,shouldCopy:!1,shouldSetAsInitialImage:!0},Td=(e=LMe)=>async(t,n)=>{const{cropVisible:r,cropToBoundingBox:i,shouldSaveToGallery:o,shouldDownload:a,shouldCopy:s,shouldSetAsInitialImage:l}=e;t(L4e("Exporting Image")),t(_d(!1));const u=n(),{stageScale:d,boundingBoxCoordinates:p,boundingBoxDimensions:m,stageCoordinates:y}=u.canvas,b=Qs();if(!b){t(wa(!1)),t(_d(!0));return}const{dataURL:w,boundingBox:E}=MMe(b,d,y,i?{...p,...m}:void 0);if(!w){t(wa(!1)),t(_d(!0));return}const _=new FormData;_.append("data",JSON.stringify({dataURL:w,filename:"merged_canvas.png",kind:o?"result":"temp",cropVisible:r}));const T=await(await fetch(`${window.location.origin}/upload`,{method:"POST",body:_})).json(),{url:L,width:O,height:D}=T,I={uuid:um(),category:o?"result":"user",...T};a&&(TMe(L),t($u({title:Et.t("toast.downloadImageStarted"),status:"success",duration:2500,isClosable:!0}))),s&&(PMe(L,O,D),t($u({title:Et.t("toast.imageCopied"),status:"success",duration:2500,isClosable:!0}))),o&&(t(sm({image:I,category:"result"})),t($u({title:Et.t("toast.imageSavedToGallery"),status:"success",duration:2500,isClosable:!0}))),l&&(t(m3e({kind:"image",layer:"base",...E,image:I})),t($u({title:Et.t("toast.canvasMerged"),status:"success",duration:2500,isClosable:!0}))),t(wa(!1)),t(hh(Et.t("common.statusConnected"))),t(_d(!0))};function AMe(){const e=le(Lr),t=Qs(),n=le(s=>s.system.isProcessing),r=le(s=>s.canvas.shouldCropToBoundingBoxOnSave),i=Te(),{t:o}=De();Qe(["meta+c","ctrl+c"],()=>{a()},{enabled:()=>!e,preventDefault:!0},[t,n]);const a=()=>{i(Td({cropVisible:!r,cropToBoundingBox:r,shouldCopy:!0}))};return g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,tooltip:`${o("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,icon:g.jsx(e0,{}),onClick:a,isDisabled:e})}function OMe(){const e=Te(),{t}=De(),n=Qs(),r=le(Lr),i=le(s=>s.system.isProcessing),o=le(s=>s.canvas.shouldCropToBoundingBoxOnSave);Qe(["shift+d"],()=>{a()},{enabled:()=>!r,preventDefault:!0},[n,i]);const a=()=>{e(Td({cropVisible:!o,cropToBoundingBox:o,shouldDownload:!0}))};return g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.downloadAsImage")} (Shift+D)`,tooltip:`${t("unifiedCanvas.downloadAsImage")} (Shift+D)`,icon:g.jsx(NE,{}),onClick:a,isDisabled:r})}function RMe(){const e=le(Lr),{openUploader:t}=OE(),{t:n}=De();return g.jsx(Ye,{"aria-label":n("common.upload"),tooltip:n("common.upload"),icon:g.jsx(h4,{}),onClick:t,isDisabled:e})}const IMe=lt([rn,Lr],(e,t)=>{const{layer:n,isMaskEnabled:r}=e;return{layer:n,isMaskEnabled:r,isStaging:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function DMe(){const e=Te(),{t}=De(),{layer:n,isMaskEnabled:r,isStaging:i}=le(IMe),o=()=>{e(w3(n==="mask"?"base":"mask"))};Qe(["q"],()=>{o()},{enabled:()=>!i,preventDefault:!0},[n]);const a=s=>{const l=s.target.value;e(w3(l)),l==="mask"&&!r&&e(h2(!0))};return g.jsx(Jo,{tooltip:`${t("unifiedCanvas.layer")} (Q)`,tooltipProps:{hasArrow:!0,placement:"top"},value:n,validValues:IW,onChange:a,isDisabled:i})}function jMe(){const e=Te(),{t}=De(),n=Qs(),r=le(Lr),i=le(a=>a.system.isProcessing);Qe(["shift+m"],()=>{o()},{enabled:()=>!r,preventDefault:!0},[n,i]);const o=()=>{e(Td({cropVisible:!1,shouldSetAsInitialImage:!0}))};return g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.mergeVisible")} (Shift+M)`,tooltip:`${t("unifiedCanvas.mergeVisible")} (Shift+M)`,icon:g.jsx(aG,{}),onClick:o,isDisabled:r})}function NMe(){const e=le(o=>o.canvas.tool),t=le(Lr),n=Te(),{t:r}=De();Qe(["v"],()=>{i()},{enabled:()=>!t,preventDefault:!0},[]);const i=()=>n(Jl("move"));return g.jsx(Ye,{"aria-label":`${r("unifiedCanvas.move")} (V)`,tooltip:`${r("unifiedCanvas.move")} (V)`,icon:g.jsx(eG,{}),"data-selected":e==="move"||t,onClick:i})}function $Me(){const e=le(i=>i.ui.shouldPinParametersPanel),t=Te(),{t:n}=De(),r=()=>{t(Fh(!0)),e&&setTimeout(()=>t(Li(!0)),400)};return g.jsxs(Ee,{flexDirection:"column",gap:"0.5rem",children:[g.jsx(Ye,{tooltip:`${n("parameters.showOptionsPanel")} (O)`,tooltipProps:{placement:"top"},"aria-label":n("parameters.showOptionsPanel"),onClick:r,children:g.jsx(FE,{})}),g.jsx(Ee,{children:g.jsx(tP,{iconButton:!0})}),g.jsx(Ee,{children:g.jsx(JE,{width:"100%",height:"40px",btnGroupWidth:"100%"})})]})}function FMe(){const e=Te(),{t}=De(),n=le(Lr),r=()=>{e(gE()),e(r4())};return g.jsx(Ye,{"aria-label":t("unifiedCanvas.clearCanvas"),tooltip:t("unifiedCanvas.clearCanvas"),icon:g.jsx(hp,{}),onClick:r,style:{backgroundColor:"var(--btn-delete-image)"},isDisabled:n})}function Mq(e,t,n=250){const[r,i]=S.useState(0);return S.useEffect(()=>{const o=setTimeout(()=>{r===1&&e(),i(0)},n);return r===2&&t(),()=>clearTimeout(o)},[r,e,t,n]),()=>i(o=>o+1)}function BMe(){const e=Qs(),t=Te(),{t:n}=De();Qe(["r"],()=>{i()},{enabled:()=>!0,preventDefault:!0},[e]);const r=Mq(()=>i(!1),()=>i(!0)),i=(o=!1)=>{const a=Qs();if(!a)return;const s=a.getClientRect({skipTransform:!0});t(BW({contentRect:s,shouldScaleTo1:o}))};return g.jsx(Ye,{"aria-label":`${n("unifiedCanvas.resetView")} (R)`,tooltip:`${n("unifiedCanvas.resetView")} (R)`,icon:g.jsx(nG,{}),onClick:r})}function zMe(){const e=le(Lr),t=Qs(),n=le(s=>s.system.isProcessing),r=le(s=>s.canvas.shouldCropToBoundingBoxOnSave),i=Te(),{t:o}=De();Qe(["shift+s"],()=>{a()},{enabled:()=>!e,preventDefault:!0},[t,n]);const a=()=>{i(Td({cropVisible:!r,cropToBoundingBox:r,shouldSaveToGallery:!0}))};return g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.saveToGallery")} (Shift+S)`,tooltip:`${o("unifiedCanvas.saveToGallery")} (Shift+S)`,icon:g.jsx($E,{}),onClick:a,isDisabled:e})}const HMe=lt([rn,Lr,hr],(e,t,n)=>{const{isProcessing:r}=n,{tool:i}=e;return{tool:i,isStaging:t,isProcessing:r}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),WMe=()=>{const e=Te(),{t}=De(),{tool:n,isStaging:r}=le(HMe);Qe(["b"],()=>{i()},{enabled:()=>!r,preventDefault:!0},[]),Qe(["e"],()=>{o()},{enabled:()=>!r,preventDefault:!0},[n]),Qe(["c"],()=>{a()},{enabled:()=>!r,preventDefault:!0},[n]),Qe(["shift+f"],()=>{s()},{enabled:()=>!r,preventDefault:!0}),Qe(["delete","backspace"],()=>{l()},{enabled:()=>!r,preventDefault:!0});const i=()=>e(Jl("brush")),o=()=>e(Jl("eraser")),a=()=>e(Jl("colorPicker")),s=()=>e(NW()),l=()=>e(jW());return g.jsxs(Ee,{flexDirection:"column",gap:"0.5rem",children:[g.jsxs(Gi,{children:[g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.brush")} (B)`,tooltip:`${t("unifiedCanvas.brush")} (B)`,icon:g.jsx(sG,{}),"data-selected":n==="brush"&&!r,onClick:i,isDisabled:r}),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.eraser")} (E)`,tooltip:`${t("unifiedCanvas.eraser")} (B)`,icon:g.jsx(rG,{}),"data-selected":n==="eraser"&&!r,isDisabled:r,onClick:o})]}),g.jsxs(Gi,{children:[g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.fillBoundingBox")} (Shift+F)`,tooltip:`${t("unifiedCanvas.fillBoundingBox")} (Shift+F)`,icon:g.jsx(oG,{}),isDisabled:r,onClick:s}),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,tooltip:`${t("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),isDisabled:r,onClick:l})]}),g.jsx(Ye,{"aria-label":`${t("unifiedCanvas.colorPicker")} (C)`,tooltip:`${t("unifiedCanvas.colorPicker")} (C)`,icon:g.jsx(iG,{}),"data-selected":n==="colorPicker"&&!r,isDisabled:r,onClick:a,width:"max-content"})]})},C4=Ze((e,t)=>{const{acceptButtonText:n="Accept",acceptCallback:r,cancelButtonText:i="Cancel",cancelCallback:o,children:a,title:s,triggerComponent:l}=e,{isOpen:u,onOpen:d,onClose:p}=Kd(),m=S.useRef(null),y=()=>{r(),p()},b=()=>{o&&o(),p()};return g.jsxs(g.Fragment,{children:[S.cloneElement(l,{onClick:d,ref:t}),g.jsx($H,{isOpen:u,leastDestructiveRef:m,onClose:p,children:g.jsx(oc,{children:g.jsxs(FH,{className:"modal",children:[g.jsx(op,{fontSize:"lg",fontWeight:"bold",children:s}),g.jsx(Zm,{children:a}),g.jsxs(zw,{children:[g.jsx(ss,{ref:m,onClick:b,className:"modal-close-btn",children:i}),g.jsx(ss,{colorScheme:"red",onClick:y,ml:3,children:n})]})]})})})]})}),Lq=()=>{const e=le(Lr),t=Te(),{t:n}=De(),r=()=>{t(y_e()),t(gE()),t(FW())};return g.jsxs(C4,{title:n("unifiedCanvas.emptyTempImageFolder"),acceptCallback:r,acceptButtonText:n("unifiedCanvas.emptyFolder"),triggerComponent:g.jsx(On,{leftIcon:g.jsx(hp,{}),size:"sm",isDisabled:e,children:n("unifiedCanvas.emptyTempImageFolder")}),children:[g.jsx("p",{children:n("unifiedCanvas.emptyTempImagesFolderMessage")}),g.jsx("br",{}),g.jsx("p",{children:n("unifiedCanvas.emptyTempImagesFolderConfirm")})]})},Aq=()=>{const e=le(Lr),t=Te(),{t:n}=De();return g.jsxs(C4,{title:n("unifiedCanvas.clearCanvasHistory"),acceptCallback:()=>t(FW()),acceptButtonText:n("unifiedCanvas.clearHistory"),triggerComponent:g.jsx(On,{size:"sm",leftIcon:g.jsx(hp,{}),isDisabled:e,children:n("unifiedCanvas.clearCanvasHistory")}),children:[g.jsx("p",{children:n("unifiedCanvas.clearCanvasHistoryMessage")}),g.jsx("br",{}),g.jsx("p",{children:n("unifiedCanvas.clearCanvasHistoryConfirm")})]})},UMe=lt([rn],e=>{const{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldShowCanvasDebugInfo:r,shouldShowIntermediates:i}=e;return{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldShowCanvasDebugInfo:r,shouldShowIntermediates:i}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),VMe=()=>{const e=Te(),{t}=De(),{shouldAutoSave:n,shouldCropToBoundingBoxOnSave:r,shouldShowCanvasDebugInfo:i,shouldShowIntermediates:o}=le(UMe);return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{tooltip:t("unifiedCanvas.canvasSettings"),tooltipProps:{placement:"bottom"},"aria-label":t("unifiedCanvas.canvasSettings"),icon:g.jsx(BE,{})}),children:g.jsxs(Ee,{direction:"column",gap:"0.5rem",children:[g.jsx(Gn,{label:t("unifiedCanvas.showIntermediates"),isChecked:o,onChange:a=>e(YW(a.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.autoSaveToGallery"),isChecked:n,onChange:a=>e(WW(a.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.saveBoxRegionOnly"),isChecked:r,onChange:a=>e(UW(a.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.showCanvasDebugInfo"),isChecked:i,onChange:a=>e(qW(a.target.checked))}),g.jsx(Aq,{}),g.jsx(Lq,{})]})})},GMe=()=>{const e=le(t=>t.ui.shouldShowParametersPanel);return g.jsxs(Ee,{flexDirection:"column",rowGap:"0.5rem",width:"6rem",children:[g.jsx(DMe,{}),g.jsx(WMe,{}),g.jsxs(Ee,{gap:"0.5rem",children:[g.jsx(NMe,{}),g.jsx(BMe,{})]}),g.jsxs(Ee,{columnGap:"0.5rem",children:[g.jsx(jMe,{}),g.jsx(zMe,{})]}),g.jsxs(Ee,{columnGap:"0.5rem",children:[g.jsx(AMe,{}),g.jsx(OMe,{})]}),g.jsxs(Ee,{gap:"0.5rem",children:[g.jsx(Tq,{}),g.jsx(Pq,{})]}),g.jsxs(Ee,{gap:"0.5rem",children:[g.jsx(RMe,{}),g.jsx(FMe,{})]}),g.jsx(VMe,{}),!e&&g.jsx($Me,{})]})};function qMe(){const e=Te(),t=le(i=>i.canvas.brushSize),{t:n}=De(),r=le(Lr);return Qe(["BracketLeft"],()=>{e(Lm(Math.max(t-5,5)))},{enabled:()=>!r,preventDefault:!0},[t]),Qe(["BracketRight"],()=>{e(Lm(Math.min(t+5,500)))},{enabled:()=>!r,preventDefault:!0},[t]),g.jsx(Dn,{label:n("unifiedCanvas.brushSize"),value:t,withInput:!0,onChange:i=>e(Lm(i)),sliderNumberInputProps:{max:500},inputReadOnly:!1,width:"100px",isCompact:!0})}function _4(){return(_4=Object.assign||function(e){for(var t=1;t=0||(i[n]=e[n]);return i}function a7(e){var t=S.useRef(e),n=S.useRef(function(r){t.current&&t.current(r)});return t.current=e,n.current}var r0=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=1),e>n?n:e0:E.buttons>0)&&i.current?o(PD(i.current,E,s.current)):w(!1)},b=function(){return w(!1)};function w(E){var _=l.current,k=s7(i.current),T=E?k.addEventListener:k.removeEventListener;T(_?"touchmove":"mousemove",y),T(_?"touchend":"mouseup",b)}return[function(E){var _=E.nativeEvent,k=i.current;if(k&&(TD(_),!function(L,O){return O&&!X1(L)}(_,l.current)&&k)){if(X1(_)){l.current=!0;var T=_.changedTouches||[];T.length&&(s.current=T[0].identifier)}k.focus(),o(PD(k,_,s.current)),w(!0)}},function(E){var _=E.which||E.keyCode;_<37||_>40||(E.preventDefault(),a({left:_===39?.05:_===37?-.05:0,top:_===40?.05:_===38?-.05:0}))},w]},[a,o]),d=u[0],p=u[1],m=u[2];return S.useEffect(function(){return m},[m]),Ke.createElement("div",_4({},r,{onTouchStart:d,onMouseDown:d,className:"react-colorful__interactive",ref:i,onKeyDown:p,tabIndex:0,role:"slider"}))}),k4=function(e){return e.filter(Boolean).join(" ")},yP=function(e){var t=e.color,n=e.left,r=e.top,i=r===void 0?.5:r,o=k4(["react-colorful__pointer",e.className]);return Ke.createElement("div",{className:o,style:{top:100*i+"%",left:100*n+"%"}},Ke.createElement("div",{className:"react-colorful__pointer-fill",style:{backgroundColor:t}}))},Co=function(e,t,n){return t===void 0&&(t=0),n===void 0&&(n=Math.pow(10,t)),Math.round(n*e)/n},Rq=function(e){var t=e.s,n=e.v,r=e.a,i=(200-t)*n/100;return{h:Co(e.h),s:Co(i>0&&i<200?t*n/100/(i<=100?i:200-i)*100:0),l:Co(i/2),a:Co(r,2)}},l7=function(e){var t=Rq(e);return"hsl("+t.h+", "+t.s+"%, "+t.l+"%)"},a6=function(e){var t=Rq(e);return"hsla("+t.h+", "+t.s+"%, "+t.l+"%, "+t.a+")"},KMe=function(e){var t=e.h,n=e.s,r=e.v,i=e.a;t=t/360*6,n/=100,r/=100;var o=Math.floor(t),a=r*(1-n),s=r*(1-(t-o)*n),l=r*(1-(1-t+o)*n),u=o%6;return{r:Co(255*[r,s,a,a,l,r][u]),g:Co(255*[l,r,r,s,a,a][u]),b:Co(255*[a,a,l,r,r,s][u]),a:Co(i,2)}},YMe=function(e){var t=e.r,n=e.g,r=e.b,i=e.a,o=Math.max(t,n,r),a=o-Math.min(t,n,r),s=a?o===t?(n-r)/a:o===n?2+(r-t)/a:4+(t-n)/a:0;return{h:Co(60*(s<0?s+6:s)),s:Co(o?a/o*100:0),v:Co(o/255*100),a:i}},XMe=Ke.memo(function(e){var t=e.hue,n=e.onChange,r=k4(["react-colorful__hue",e.className]);return Ke.createElement("div",{className:r},Ke.createElement(vP,{onMove:function(i){n({h:360*i.left})},onKey:function(i){n({h:r0(t+360*i.left,0,360)})},"aria-label":"Hue","aria-valuenow":Co(t),"aria-valuemax":"360","aria-valuemin":"0"},Ke.createElement(yP,{className:"react-colorful__hue-pointer",left:t/360,color:l7({h:t,s:100,v:100,a:1})})))}),ZMe=Ke.memo(function(e){var t=e.hsva,n=e.onChange,r={backgroundColor:l7({h:t.h,s:100,v:100,a:1})};return Ke.createElement("div",{className:"react-colorful__saturation",style:r},Ke.createElement(vP,{onMove:function(i){n({s:100*i.left,v:100-100*i.top})},onKey:function(i){n({s:r0(t.s+100*i.left,0,100),v:r0(t.v-100*i.top,0,100)})},"aria-label":"Color","aria-valuetext":"Saturation "+Co(t.s)+"%, Brightness "+Co(t.v)+"%"},Ke.createElement(yP,{className:"react-colorful__saturation-pointer",top:1-t.v/100,left:t.s/100,color:l7(t)})))}),Iq=function(e,t){if(e===t)return!0;for(var n in e)if(e[n]!==t[n])return!1;return!0};function QMe(e,t,n){var r=a7(n),i=S.useState(function(){return e.toHsva(t)}),o=i[0],a=i[1],s=S.useRef({color:t,hsva:o});S.useEffect(function(){if(!e.equal(t,s.current.color)){var u=e.toHsva(t);s.current={hsva:u,color:t},a(u)}},[t,e]),S.useEffect(function(){var u;Iq(o,s.current.hsva)||e.equal(u=e.fromHsva(o),s.current.color)||(s.current={hsva:o,color:u},r(u))},[o,e,r]);var l=S.useCallback(function(u){a(function(d){return Object.assign({},d,u)})},[]);return[o,l]}var JMe=typeof window<"u"?S.useLayoutEffect:S.useEffect,eLe=function(){return typeof __webpack_nonce__<"u"?__webpack_nonce__:void 0},MD=new Map,tLe=function(e){JMe(function(){var t=e.current?e.current.ownerDocument:document;if(t!==void 0&&!MD.has(t)){var n=t.createElement("style");n.innerHTML=`.react-colorful{position:relative;display:flex;flex-direction:column;width:200px;height:200px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.react-colorful__saturation{position:relative;flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(0deg,#000,transparent),linear-gradient(90deg,#fff,hsla(0,0%,100%,0))}.react-colorful__alpha-gradient,.react-colorful__pointer-fill{content:"";position:absolute;left:0;top:0;right:0;bottom:0;pointer-events:none;border-radius:inherit}.react-colorful__alpha-gradient,.react-colorful__saturation{box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}.react-colorful__alpha,.react-colorful__hue{position:relative;height:24px}.react-colorful__hue{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red)}.react-colorful__last-control{border-radius:0 0 8px 8px}.react-colorful__interactive{position:absolute;left:0;top:0;right:0;bottom:0;border-radius:inherit;outline:none;touch-action:none}.react-colorful__pointer{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.react-colorful__interactive:focus .react-colorful__pointer{transform:translate(-50%,-50%) scale(1.1)}.react-colorful__alpha,.react-colorful__alpha-pointer{background-color:#fff;background-image:url('data:image/svg+xml;charset=utf-8,')}.react-colorful__saturation-pointer{z-index:3}.react-colorful__hue-pointer{z-index:2}`,MD.set(t,n);var r=eLe();r&&n.setAttribute("nonce",r),t.head.appendChild(n)}},[])},nLe=function(e){var t=e.className,n=e.hsva,r=e.onChange,i={backgroundImage:"linear-gradient(90deg, "+a6(Object.assign({},n,{a:0}))+", "+a6(Object.assign({},n,{a:1}))+")"},o=k4(["react-colorful__alpha",t]),a=Co(100*n.a);return Ke.createElement("div",{className:o},Ke.createElement("div",{className:"react-colorful__alpha-gradient",style:i}),Ke.createElement(vP,{onMove:function(s){r({a:s.left})},onKey:function(s){r({a:r0(n.a+s.left)})},"aria-label":"Alpha","aria-valuetext":a+"%","aria-valuenow":a,"aria-valuemin":"0","aria-valuemax":"100"},Ke.createElement(yP,{className:"react-colorful__alpha-pointer",left:n.a,color:a6(n)})))},rLe=function(e){var t=e.className,n=e.colorModel,r=e.color,i=r===void 0?n.defaultColor:r,o=e.onChange,a=Oq(e,["className","colorModel","color","onChange"]),s=S.useRef(null);tLe(s);var l=QMe(n,i,o),u=l[0],d=l[1],p=k4(["react-colorful",t]);return Ke.createElement("div",_4({},a,{ref:s,className:p}),Ke.createElement(ZMe,{hsva:u,onChange:d}),Ke.createElement(XMe,{hue:u.h,onChange:d}),Ke.createElement(nLe,{hsva:u,onChange:d,className:"react-colorful__last-control"}))},iLe={defaultColor:{r:0,g:0,b:0,a:1},toHsva:YMe,fromHsva:KMe,equal:Iq},oLe=function(e){return Ke.createElement(rLe,_4({},e,{colorModel:iLe}))};const B3=e=>{const{styleClass:t,...n}=e;return g.jsx(oLe,{className:`invokeai__color-picker ${t}`,...n})},aLe=lt([rn,Lr],(e,t)=>{const{brushColor:n,maskColor:r,layer:i}=e;return{brushColor:n,maskColor:r,layer:i,isStaging:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function sLe(){const e=Te(),{brushColor:t,maskColor:n,layer:r,isStaging:i}=le(aLe),o=()=>{if(r==="base")return`rgba(${t.r},${t.g},${t.b},${t.a})`;if(r==="mask")return`rgba(${n.r},${n.g},${n.b},${n.a})`};return Qe(["shift+BracketLeft"],()=>{e(Mm({...t,a:Ce.clamp(t.a-.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[t]),Qe(["shift+BracketRight"],()=>{e(Mm({...t,a:Ce.clamp(t.a+.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[t]),g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(ao,{style:{width:"30px",height:"30px",minWidth:"30px",minHeight:"30px",borderRadius:"99999999px",backgroundColor:o(),cursor:"pointer"}}),children:g.jsxs(Ee,{minWidth:"15rem",direction:"column",gap:"1rem",width:"100%",children:[r==="base"&&g.jsx(B3,{style:{width:"100%",paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:t,onChange:a=>e(Mm(a))}),r==="mask"&&g.jsx(B3,{style:{width:"100%",paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:n,onChange:a=>e(HW(a))})]})})}function Dq(){return g.jsxs(Ee,{columnGap:"1rem",alignItems:"center",children:[g.jsx(qMe,{}),g.jsx(sLe,{})]})}function lLe(){const e=Te(),t=le(r=>r.canvas.shouldRestrictStrokesToBox),{t:n}=De();return g.jsx(Gn,{label:n("unifiedCanvas.betaLimitToBox"),isChecked:t,onChange:r=>e(ZW(r.target.checked))})}function uLe(){return g.jsxs(Ee,{gap:"1rem",alignItems:"center",children:[g.jsx(Dq,{}),g.jsx(lLe,{})]})}function cLe(){const e=Te(),{t}=De(),n=()=>e(pE());return g.jsx(On,{size:"sm",leftIcon:g.jsx(hp,{}),onClick:n,tooltip:`${t("unifiedCanvas.clearMask")} (Shift+C)`,children:t("unifiedCanvas.betaClear")})}function dLe(){const e=le(i=>i.canvas.isMaskEnabled),t=Te(),{t:n}=De(),r=()=>t(h2(!e));return g.jsx(Gn,{label:`${n("unifiedCanvas.enableMask")} (H)`,isChecked:e,onChange:r})}function fLe(){const e=Te(),{t}=De(),n=le(r=>r.canvas.shouldPreserveMaskedArea);return g.jsx(Gn,{label:t("unifiedCanvas.betaPreserveMasked"),isChecked:n,onChange:r=>e(GW(r.target.checked))})}function hLe(){return g.jsxs(Ee,{gap:"1rem",alignItems:"center",children:[g.jsx(Dq,{}),g.jsx(dLe,{}),g.jsx(fLe,{}),g.jsx(cLe,{})]})}function pLe(){const e=le(r=>r.canvas.shouldDarkenOutsideBoundingBox),t=Te(),{t:n}=De();return g.jsx(Gn,{label:n("unifiedCanvas.betaDarkenOutside"),isChecked:e,onChange:r=>t(VW(r.target.checked))})}function gLe(){const e=le(r=>r.canvas.shouldShowGrid),t=Te(),{t:n}=De();return g.jsx(Gn,{label:n("unifiedCanvas.showGrid"),isChecked:e,onChange:r=>t(KW(r.target.checked))})}function mLe(){const e=le(i=>i.canvas.shouldSnapToGrid),t=Te(),{t:n}=De(),r=i=>t(C3(i.target.checked));return g.jsx(Gn,{label:`${n("unifiedCanvas.snapToGrid")} (N)`,isChecked:e,onChange:r})}function vLe(){return g.jsxs(Ee,{alignItems:"center",gap:"1rem",children:[g.jsx(gLe,{}),g.jsx(mLe,{}),g.jsx(pLe,{})]})}const yLe=lt([rn],e=>{const{tool:t,layer:n}=e;return{tool:t,layer:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function bLe(){const{tool:e,layer:t}=le(yLe);return g.jsxs(Ee,{height:"2rem",minHeight:"2rem",maxHeight:"2rem",alignItems:"center",children:[t=="base"&&["brush","eraser","colorPicker"].includes(e)&&g.jsx(uLe,{}),t=="mask"&&["brush","eraser","colorPicker"].includes(e)&&g.jsx(hLe,{}),e=="move"&&g.jsx(vLe,{})]})}const xLe=lt([rn],e=>{const{doesCanvasNeedScaling:t}=e;return{doesCanvasNeedScaling:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),SLe=()=>{const e=Te(),{doesCanvasNeedScaling:t}=le(xLe);return S.useLayoutEffect(()=>{e(Li(!0));const n=Ce.debounce(()=>{e(Li(!0))},250);return window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[e]),g.jsx("div",{className:"workarea-single-view",children:g.jsxs(Ee,{flexDirection:"row",width:"100%",height:"100%",columnGap:"1rem",padding:"1rem",children:[g.jsx(GMe,{}),g.jsxs(Ee,{width:"100%",height:"100%",flexDirection:"column",rowGap:"1rem",children:[g.jsx(bLe,{}),t?g.jsx(Eq,{}):g.jsx(kq,{})]})]})})},wLe=lt([rn,Lr],(e,t)=>{const{maskColor:n,layer:r,isMaskEnabled:i,shouldPreserveMaskedArea:o}=e;return{layer:r,maskColor:n,maskColorString:zh(n),isMaskEnabled:i,shouldPreserveMaskedArea:o,isStaging:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),CLe=()=>{const e=Te(),{t}=De(),{layer:n,maskColor:r,isMaskEnabled:i,shouldPreserveMaskedArea:o,isStaging:a}=le(wLe);Qe(["q"],()=>{s()},{enabled:()=>!a,preventDefault:!0},[n]),Qe(["shift+c"],()=>{l()},{enabled:()=>!a,preventDefault:!0},[]),Qe(["h"],()=>{u()},{enabled:()=>!a,preventDefault:!0},[i]);const s=()=>{e(w3(n==="mask"?"base":"mask"))},l=()=>e(pE()),u=()=>e(h2(!i));return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Gi,{children:g.jsx(Ye,{"aria-label":t("unifiedCanvas.maskingOptions"),tooltip:t("unifiedCanvas.maskingOptions"),icon:g.jsx(Tke,{}),style:n==="mask"?{backgroundColor:"var(--accent-color)"}:{backgroundColor:"var(--btn-base-color)"},isDisabled:a})}),children:g.jsxs(Ee,{direction:"column",gap:"0.5rem",children:[g.jsx(Gn,{label:`${t("unifiedCanvas.enableMask")} (H)`,isChecked:i,onChange:u}),g.jsx(Gn,{label:t("unifiedCanvas.preserveMaskedArea"),isChecked:o,onChange:d=>e(GW(d.target.checked))}),g.jsx(B3,{style:{paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:r,onChange:d=>e(HW(d))}),g.jsxs(On,{size:"sm",leftIcon:g.jsx(hp,{}),onClick:l,children:[t("unifiedCanvas.clearMask")," (Shift+C)"]})]})})},_Le=lt([rn],e=>{const{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldDarkenOutsideBoundingBox:r,shouldShowCanvasDebugInfo:i,shouldShowGrid:o,shouldShowIntermediates:a,shouldSnapToGrid:s,shouldRestrictStrokesToBox:l}=e;return{shouldAutoSave:t,shouldCropToBoundingBoxOnSave:n,shouldDarkenOutsideBoundingBox:r,shouldShowCanvasDebugInfo:i,shouldShowGrid:o,shouldShowIntermediates:a,shouldSnapToGrid:s,shouldRestrictStrokesToBox:l}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),kLe=()=>{const e=Te(),{t}=De(),{shouldAutoSave:n,shouldCropToBoundingBoxOnSave:r,shouldDarkenOutsideBoundingBox:i,shouldShowCanvasDebugInfo:o,shouldShowGrid:a,shouldShowIntermediates:s,shouldSnapToGrid:l,shouldRestrictStrokesToBox:u}=le(_Le);Qe(["n"],()=>{e(C3(!l))},{enabled:!0,preventDefault:!0},[l]);const d=p=>e(C3(p.target.checked));return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{tooltip:t("unifiedCanvas.canvasSettings"),"aria-label":t("unifiedCanvas.canvasSettings"),icon:g.jsx(BE,{})}),children:g.jsxs(Ee,{direction:"column",gap:"0.5rem",children:[g.jsx(Gn,{label:t("unifiedCanvas.showIntermediates"),isChecked:s,onChange:p=>e(YW(p.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.showGrid"),isChecked:a,onChange:p=>e(KW(p.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.snapToGrid"),isChecked:l,onChange:d}),g.jsx(Gn,{label:t("unifiedCanvas.darkenOutsideSelection"),isChecked:i,onChange:p=>e(VW(p.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.autoSaveToGallery"),isChecked:n,onChange:p=>e(WW(p.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.saveBoxRegionOnly"),isChecked:r,onChange:p=>e(UW(p.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.limitStrokesToBox"),isChecked:u,onChange:p=>e(ZW(p.target.checked))}),g.jsx(Gn,{label:t("unifiedCanvas.showCanvasDebugInfo"),isChecked:o,onChange:p=>e(qW(p.target.checked))}),g.jsx(Aq,{}),g.jsx(Lq,{})]})})},ELe=lt([rn,Lr,hr],(e,t,n)=>{const{isProcessing:r}=n,{tool:i,brushColor:o,brushSize:a}=e;return{tool:i,isStaging:t,isProcessing:r,brushColor:o,brushSize:a}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),PLe=()=>{const e=Te(),{tool:t,brushColor:n,brushSize:r,isStaging:i}=le(ELe),{t:o}=De();Qe(["b"],()=>{a()},{enabled:()=>!i,preventDefault:!0},[]),Qe(["e"],()=>{s()},{enabled:()=>!i,preventDefault:!0},[t]),Qe(["c"],()=>{l()},{enabled:()=>!i,preventDefault:!0},[t]),Qe(["shift+f"],()=>{u()},{enabled:()=>!i,preventDefault:!0}),Qe(["delete","backspace"],()=>{d()},{enabled:()=>!i,preventDefault:!0}),Qe(["BracketLeft"],()=>{e(Lm(Math.max(r-5,5)))},{enabled:()=>!i,preventDefault:!0},[r]),Qe(["BracketRight"],()=>{e(Lm(Math.min(r+5,500)))},{enabled:()=>!i,preventDefault:!0},[r]),Qe(["shift+BracketLeft"],()=>{e(Mm({...n,a:Ce.clamp(n.a-.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[n]),Qe(["shift+BracketRight"],()=>{e(Mm({...n,a:Ce.clamp(n.a+.05,.05,1)}))},{enabled:()=>!i,preventDefault:!0},[n]);const a=()=>e(Jl("brush")),s=()=>e(Jl("eraser")),l=()=>e(Jl("colorPicker")),u=()=>e(NW()),d=()=>e(jW());return g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.brush")} (B)`,tooltip:`${o("unifiedCanvas.brush")} (B)`,icon:g.jsx(sG,{}),"data-selected":t==="brush"&&!i,onClick:a,isDisabled:i}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.eraser")} (E)`,tooltip:`${o("unifiedCanvas.eraser")} (E)`,icon:g.jsx(rG,{}),"data-selected":t==="eraser"&&!i,isDisabled:i,onClick:s}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.fillBoundingBox")} (Shift+F)`,tooltip:`${o("unifiedCanvas.fillBoundingBox")} (Shift+F)`,icon:g.jsx(oG,{}),isDisabled:i,onClick:u}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,tooltip:`${o("unifiedCanvas.eraseBoundingBox")} (Del/Backspace)`,icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),isDisabled:i,onClick:d}),g.jsx(Ye,{"aria-label":`${o("unifiedCanvas.colorPicker")} (C)`,tooltip:`${o("unifiedCanvas.colorPicker")} (C)`,icon:g.jsx(iG,{}),"data-selected":t==="colorPicker"&&!i,isDisabled:i,onClick:l}),g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":o("unifiedCanvas.brushOptions"),tooltip:o("unifiedCanvas.brushOptions"),icon:g.jsx(FE,{})}),children:g.jsxs(Ee,{minWidth:"15rem",direction:"column",gap:"1rem",width:"100%",children:[g.jsx(Ee,{gap:"1rem",justifyContent:"space-between",children:g.jsx(Dn,{label:o("unifiedCanvas.brushSize"),value:r,withInput:!0,onChange:p=>e(Lm(p)),sliderNumberInputProps:{max:500},inputReadOnly:!1})}),g.jsx(B3,{style:{width:"100%",paddingTop:"0.5rem",paddingBottom:"0.5rem"},color:n,onChange:p=>e(Mm(p))})]})})]})},TLe=lt([hr,rn,Lr],(e,t,n)=>{const{isProcessing:r}=e,{tool:i,shouldCropToBoundingBoxOnSave:o,layer:a,isMaskEnabled:s}=t;return{isProcessing:r,isStaging:n,isMaskEnabled:s,tool:i,layer:a,shouldCropToBoundingBoxOnSave:o}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),MLe=()=>{const e=Te(),{isProcessing:t,isStaging:n,isMaskEnabled:r,layer:i,tool:o,shouldCropToBoundingBoxOnSave:a}=le(TLe),s=Qs(),{t:l}=De(),{openUploader:u}=OE();Qe(["v"],()=>{d()},{enabled:()=>!n,preventDefault:!0},[]),Qe(["r"],()=>{m()},{enabled:()=>!0,preventDefault:!0},[s]),Qe(["shift+m"],()=>{b()},{enabled:()=>!n,preventDefault:!0},[s,t]),Qe(["shift+s"],()=>{w()},{enabled:()=>!n,preventDefault:!0},[s,t]),Qe(["meta+c","ctrl+c"],()=>{E()},{enabled:()=>!n,preventDefault:!0},[s,t]),Qe(["shift+d"],()=>{_()},{enabled:()=>!n,preventDefault:!0},[s,t]);const d=()=>e(Jl("move")),p=Mq(()=>m(!1),()=>m(!0)),m=(T=!1)=>{const L=Qs();if(!L)return;const O=L.getClientRect({skipTransform:!0});e(BW({contentRect:O,shouldScaleTo1:T}))},y=()=>{e(gE()),e(r4())},b=()=>{e(Td({cropVisible:!1,shouldSetAsInitialImage:!0}))},w=()=>{e(Td({cropVisible:!a,cropToBoundingBox:a,shouldSaveToGallery:!0}))},E=()=>{e(Td({cropVisible:!a,cropToBoundingBox:a,shouldCopy:!0}))},_=()=>{e(Td({cropVisible:!a,cropToBoundingBox:a,shouldDownload:!0}))},k=T=>{const L=T.target.value;e(w3(L)),L==="mask"&&!r&&e(h2(!0))};return g.jsxs("div",{className:"inpainting-settings",children:[g.jsx(Jo,{tooltip:`${l("unifiedCanvas.layer")} (Q)`,tooltipProps:{hasArrow:!0,placement:"top"},value:i,validValues:IW,onChange:k,isDisabled:n}),g.jsx(CLe,{}),g.jsx(PLe,{}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.move")} (V)`,tooltip:`${l("unifiedCanvas.move")} (V)`,icon:g.jsx(eG,{}),"data-selected":o==="move"||n,onClick:d}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.resetView")} (R)`,tooltip:`${l("unifiedCanvas.resetView")} (R)`,icon:g.jsx(nG,{}),onClick:p})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.mergeVisible")} (Shift+M)`,tooltip:`${l("unifiedCanvas.mergeVisible")} (Shift+M)`,icon:g.jsx(aG,{}),onClick:b,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.saveToGallery")} (Shift+S)`,tooltip:`${l("unifiedCanvas.saveToGallery")} (Shift+S)`,icon:g.jsx($E,{}),onClick:w,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,tooltip:`${l("unifiedCanvas.copyToClipboard")} (Cmd/Ctrl+C)`,icon:g.jsx(e0,{}),onClick:E,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.downloadAsImage")} (Shift+D)`,tooltip:`${l("unifiedCanvas.downloadAsImage")} (Shift+D)`,icon:g.jsx(NE,{}),onClick:_,isDisabled:n})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Tq,{}),g.jsx(Pq,{})]}),g.jsxs(Gi,{isAttached:!0,children:[g.jsx(Ye,{"aria-label":`${l("common.upload")}`,tooltip:`${l("common.upload")}`,icon:g.jsx(h4,{}),onClick:u,isDisabled:n}),g.jsx(Ye,{"aria-label":`${l("unifiedCanvas.clearCanvas")}`,tooltip:`${l("unifiedCanvas.clearCanvas")}`,icon:g.jsx(hp,{}),onClick:y,style:{backgroundColor:"var(--btn-delete-image)"},isDisabled:n})]}),g.jsx(Gi,{isAttached:!0,children:g.jsx(kLe,{})})]})},LLe=lt([rn],e=>{const{doesCanvasNeedScaling:t}=e;return{doesCanvasNeedScaling:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),ALe=()=>{const e=Te(),{doesCanvasNeedScaling:t}=le(LLe);return S.useLayoutEffect(()=>{e(Li(!0));const n=Ce.debounce(()=>{e(Li(!0))},250);return window.addEventListener("resize",n),()=>window.removeEventListener("resize",n)},[e]),g.jsx("div",{className:"workarea-single-view",children:g.jsx("div",{className:"workarea-split-view-left",children:g.jsxs("div",{className:"inpainting-main-area",children:[g.jsx(MLe,{}),g.jsx("div",{className:"inpainting-canvas-area",children:t?g.jsx(Eq,{}):g.jsx(kq,{})})]})})})},OLe=lt(rn,e=>{const{boundingBoxDimensions:t,boundingBoxScaleMethod:n}=e;return{boundingBoxDimensions:t,boundingBoxScale:n}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),RLe=()=>{const e=Te(),{boundingBoxDimensions:t}=le(OLe),{t:n}=De(),r=s=>{e(g1({...t,width:Math.floor(s)}))},i=s=>{e(g1({...t,height:Math.floor(s)}))},o=()=>{e(g1({...t,width:Math.floor(512)}))},a=()=>{e(g1({...t,height:Math.floor(512)}))};return g.jsxs(Ee,{direction:"column",gap:2,children:[g.jsx(Dn,{label:n("parameters.width"),min:64,max:1024,step:64,value:t.width,onChange:r,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:o,sliderMarkRightOffset:-7}),g.jsx(Dn,{label:n("parameters.height"),min:64,max:1024,step:64,value:t.height,onChange:i,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:a,sliderMarkRightOffset:-7})]})},ILe=lt([eP,hr,rn],(e,t,n)=>{const{tileSize:r,infillMethod:i}=e,{infill_methods:o}=t,{boundingBoxScaleMethod:a,scaledBoundingBoxDimensions:s}=n;return{boundingBoxScale:a,scaledBoundingBoxDimensions:s,tileSize:r,infillMethod:i,availableInfillMethods:o,isManual:a==="manual"}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),DLe=()=>{const e=Te(),{tileSize:t,infillMethod:n,availableInfillMethods:r,boundingBoxScale:i,isManual:o,scaledBoundingBoxDimensions:a}=le(ILe),{t:s}=De(),l=y=>{e(Jb({...a,width:Math.floor(y)}))},u=y=>{e(Jb({...a,height:Math.floor(y)}))},d=()=>{e(Jb({...a,width:Math.floor(512)}))},p=()=>{e(Jb({...a,height:Math.floor(512)}))},m=y=>{e(f3e(y.target.value))};return g.jsxs(Ee,{direction:"column",gap:4,children:[g.jsx(Jo,{label:s("parameters.scaleBeforeProcessing"),validValues:YSe,value:i,onChange:m}),g.jsx(Dn,{isInputDisabled:!o,isResetDisabled:!o,isSliderDisabled:!o,label:s("parameters.scaledWidth"),min:64,max:1024,step:64,value:a.width,onChange:l,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:d,sliderMarkRightOffset:-7}),g.jsx(Dn,{isInputDisabled:!o,isResetDisabled:!o,isSliderDisabled:!o,label:s("parameters.scaledHeight"),min:64,max:1024,step:64,value:a.height,onChange:u,sliderNumberInputProps:{max:4096},withSliderMarks:!0,withInput:!0,inputReadOnly:!0,withReset:!0,handleReset:p,sliderMarkRightOffset:-7}),g.jsx(Jo,{label:s("parameters.infillMethod"),value:n,validValues:r,onChange:y=>e(lU(y.target.value))}),g.jsx(Dn,{isInputDisabled:n!=="tile",isResetDisabled:n!=="tile",isSliderDisabled:n!=="tile",sliderMarkRightOffset:-4,label:s("parameters.tileSize"),min:16,max:64,sliderNumberInputProps:{max:256},value:t,onChange:y=>{e(rR(y))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{e(rR(32))}})]})};function jLe(){const e=Te(),t=le(r=>r.generation.seamBlur),{t:n}=De();return g.jsx(Dn,{sliderMarkRightOffset:-4,label:n("parameters.seamBlur"),min:0,max:64,sliderNumberInputProps:{max:512},value:t,onChange:r=>{e(JO(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{e(JO(16))}})}function NLe(){const e=Te(),{t}=De(),n=le(r=>r.generation.seamSize);return g.jsx(Dn,{sliderMarkRightOffset:-6,label:t("parameters.seamSize"),min:1,max:256,sliderNumberInputProps:{max:512},value:n,onChange:r=>{e(eR(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>e(eR(96))})}function $Le(){const{t:e}=De(),t=le(r=>r.generation.seamSteps),n=Te();return g.jsx(Dn,{sliderMarkRightOffset:-4,label:e("parameters.seamSteps"),min:1,max:100,sliderNumberInputProps:{max:999},value:t,onChange:r=>{n(tR(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{n(tR(30))}})}function FLe(){const e=Te(),{t}=De(),n=le(r=>r.generation.seamStrength);return g.jsx(Dn,{sliderMarkRightOffset:-7,label:t("parameters.seamStrength"),min:.01,max:.99,step:.01,value:n,onChange:r=>{e(nR(r))},withInput:!0,withSliderMarks:!0,withReset:!0,handleReset:()=>{e(nR(.7))}})}const BLe=()=>g.jsxs(Ee,{direction:"column",gap:2,children:[g.jsx(NLe,{}),g.jsx(jLe,{}),g.jsx(FLe,{}),g.jsx($Le,{})]});function zLe(){const{t:e}=De(),t={seed:{header:`${e("parameters.seed")}`,feature:oo.SEED,content:g.jsx(aP,{})},boundingBox:{header:`${e("parameters.boundingBoxHeader")}`,feature:oo.BOUNDING_BOX,content:g.jsx(RLe,{})},seamCorrection:{header:`${e("parameters.seamCorrectionHeader")}`,feature:oo.SEAM_CORRECTION,content:g.jsx(BLe,{})},infillAndScaling:{header:`${e("parameters.infillScalingHeader")}`,feature:oo.INFILL_AND_SCALING,content:g.jsx(DLe,{})},variations:{header:`${e("parameters.variations")}`,feature:oo.VARIATIONS,content:g.jsx(lP,{}),additionalHeaderComponents:g.jsx(sP,{})},symmetry:{header:`${e("parameters.symmetry")}`,content:g.jsx(iP,{}),additionalHeaderComponents:g.jsx(oP,{})}},n={unifiedCanvasImg2Img:{header:`${e("parameters.imageToImage")}`,feature:void 0,content:g.jsx(mq,{label:e("parameters.img2imgStrength"),styleClass:"main-settings-block image-to-image-strength-main-option"})}};return g.jsxs(hP,{children:[g.jsxs(Ee,{flexDir:"column",rowGap:"0.5rem",children:[g.jsx(fP,{}),g.jsx(dP,{})]}),g.jsx(cP,{}),g.jsx(uP,{}),g.jsx(n0,{accordionInfo:n}),g.jsx(n0,{accordionInfo:t})]})}function HLe(){const e=le(t=>t.ui.shouldUseCanvasBetaLayout);return g.jsx(rP,{optionsPanel:g.jsx(zLe,{}),styleClass:"inpainting-workarea-overrides",children:e?g.jsx(SLe,{}):g.jsx(ALe,{})})}const Qa={txt2img:{title:g.jsx(I_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(RPe,{}),tooltip:"Text To Image"},img2img:{title:g.jsx(A_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(kPe,{}),tooltip:"Image To Image"},unifiedCanvas:{title:g.jsx(j_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(HLe,{}),tooltip:"Unified Canvas"},nodes:{title:g.jsx(O_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(P_e,{}),tooltip:"Nodes"},postprocess:{title:g.jsx(R_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(T_e,{}),tooltip:"Post Processing"},training:{title:g.jsx(D_e,{fill:"black",boxSize:"2.5rem"}),workarea:g.jsx(M_e,{}),tooltip:"Training"}};function WLe(){Qa.txt2img.tooltip=Et.t("common.text2img"),Qa.img2img.tooltip=Et.t("common.img2img"),Qa.unifiedCanvas.tooltip=Et.t("common.unifiedCanvas"),Qa.nodes.tooltip=Et.t("common.nodes"),Qa.postprocess.tooltip=Et.t("common.postProcessing"),Qa.training.tooltip=Et.t("common.training")}function ULe(){const e=le(E_e),t=le(u=>u.lightbox.isLightboxOpen),{shouldShowGallery:n,shouldShowParametersPanel:r,shouldPinGallery:i,shouldPinParametersPanel:o}=le(nP);L_e(WLe);const a=Te();Qe("1",()=>{a(Wo(0))}),Qe("2",()=>{a(Wo(1))}),Qe("3",()=>{a(Wo(2))}),Qe("4",()=>{a(Wo(3))}),Qe("5",()=>{a(Wo(4))}),Qe("6",()=>{a(Wo(5))}),Qe("z",()=>{a(Om(!t))},[t]),Qe("f",()=>{n||r?(a(Fh(!1)),a(Am(!1))):(a(Fh(!0)),a(Am(!0))),(i||o)&&setTimeout(()=>a(Li(!0)),400)},[n,r]);const s=()=>{const u=[];return Object.keys(Qa).forEach(d=>{u.push(g.jsx(si,{hasArrow:!0,label:Qa[d].tooltip,placement:"right",children:g.jsx(sW,{children:Qa[d].title})},d))}),u},l=()=>{const u=[];return Object.keys(Qa).forEach(d=>{u.push(g.jsx(oW,{className:"app-tabs-panel",children:Qa[d].workarea},d))}),u};return g.jsxs(iW,{isLazy:!0,className:"app-tabs",variant:"unstyled",defaultIndex:e,index:e,onChange:u=>{a(Wo(u))},children:[g.jsx("div",{className:"app-tabs-list",children:s()}),g.jsx(aW,{className:"app-tabs-panels",children:t?g.jsx(VEe,{}):l()})]})}var VLe=new Map([["aac","audio/aac"],["abw","application/x-abiword"],["arc","application/x-freearc"],["avif","image/avif"],["avi","video/x-msvideo"],["azw","application/vnd.amazon.ebook"],["bin","application/octet-stream"],["bmp","image/bmp"],["bz","application/x-bzip"],["bz2","application/x-bzip2"],["cda","application/x-cdf"],["csh","application/x-csh"],["css","text/css"],["csv","text/csv"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["eot","application/vnd.ms-fontobject"],["epub","application/epub+zip"],["gz","application/gzip"],["gif","image/gif"],["heic","image/heic"],["heif","image/heif"],["htm","text/html"],["html","text/html"],["ico","image/vnd.microsoft.icon"],["ics","text/calendar"],["jar","application/java-archive"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["js","text/javascript"],["json","application/json"],["jsonld","application/ld+json"],["mid","audio/midi"],["midi","audio/midi"],["mjs","text/javascript"],["mp3","audio/mpeg"],["mp4","video/mp4"],["mpeg","video/mpeg"],["mpkg","application/vnd.apple.installer+xml"],["odp","application/vnd.oasis.opendocument.presentation"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["odt","application/vnd.oasis.opendocument.text"],["oga","audio/ogg"],["ogv","video/ogg"],["ogx","application/ogg"],["opus","audio/opus"],["otf","font/otf"],["png","image/png"],["pdf","application/pdf"],["php","application/x-httpd-php"],["ppt","application/vnd.ms-powerpoint"],["pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"],["rar","application/vnd.rar"],["rtf","application/rtf"],["sh","application/x-sh"],["svg","image/svg+xml"],["swf","application/x-shockwave-flash"],["tar","application/x-tar"],["tif","image/tiff"],["tiff","image/tiff"],["ts","video/mp2t"],["ttf","font/ttf"],["txt","text/plain"],["vsd","application/vnd.visio"],["wav","audio/wav"],["weba","audio/webm"],["webm","video/webm"],["webp","image/webp"],["woff","font/woff"],["woff2","font/woff2"],["xhtml","application/xhtml+xml"],["xls","application/vnd.ms-excel"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xml","application/xml"],["xul","application/vnd.mozilla.xul+xml"],["zip","application/zip"],["7z","application/x-7z-compressed"],["mkv","video/x-matroska"],["mov","video/quicktime"],["msg","application/vnd.ms-outlook"]]);function C2(e,t){var n=GLe(e);if(typeof n.path!="string"){var r=e.webkitRelativePath;Object.defineProperty(n,"path",{value:typeof t=="string"?t:typeof r=="string"&&r.length>0?r:e.name,writable:!1,configurable:!1,enumerable:!0})}return n}function GLe(e){var t=e.name,n=t&&t.lastIndexOf(".")!==-1;if(n&&!e.type){var r=t.split(".").pop().toLowerCase(),i=VLe.get(r);i&&Object.defineProperty(e,"type",{value:i,writable:!1,configurable:!1,enumerable:!0})}return e}var qLe=[".DS_Store","Thumbs.db"];function KLe(e){return f0(this,void 0,void 0,function(){return h0(this,function(t){return z3(e)&&YLe(e.dataTransfer)?[2,JLe(e.dataTransfer,e.type)]:XLe(e)?[2,ZLe(e)]:Array.isArray(e)&&e.every(function(n){return"getFile"in n&&typeof n.getFile=="function"})?[2,QLe(e)]:[2,[]]})})}function YLe(e){return z3(e)}function XLe(e){return z3(e)&&z3(e.target)}function z3(e){return typeof e=="object"&&e!==null}function ZLe(e){return u7(e.target.files).map(function(t){return C2(t)})}function QLe(e){return f0(this,void 0,void 0,function(){var t;return h0(this,function(n){switch(n.label){case 0:return[4,Promise.all(e.map(function(r){return r.getFile()}))];case 1:return t=n.sent(),[2,t.map(function(r){return C2(r)})]}})})}function JLe(e,t){return f0(this,void 0,void 0,function(){var n,r;return h0(this,function(i){switch(i.label){case 0:return e.items?(n=u7(e.items).filter(function(o){return o.kind==="file"}),t!=="drop"?[2,n]:[4,Promise.all(n.map(eAe))]):[3,2];case 1:return r=i.sent(),[2,LD(jq(r))];case 2:return[2,LD(u7(e.files).map(function(o){return C2(o)}))]}})})}function LD(e){return e.filter(function(t){return qLe.indexOf(t.name)===-1})}function u7(e){if(e===null)return[];for(var t=[],n=0;ne.length)&&(t=e.length);for(var n=0,r=new Array(t);nn)return[!1,DD(n)];if(e.sizen)return[!1,DD(n)]}return[!0,null]}function Sh(e){return e!=null}function mAe(e){var t=e.files,n=e.accept,r=e.minSize,i=e.maxSize,o=e.multiple,a=e.maxFiles,s=e.validator;return!o&&t.length>1||o&&a>=1&&t.length>a?!1:t.every(function(l){var u=Bq(l,n),d=zy(u,1),p=d[0],m=zq(l,r,i),y=zy(m,1),b=y[0],w=s?s(l):null;return p&&b&&!w})}function H3(e){return typeof e.isPropagationStopped=="function"?e.isPropagationStopped():typeof e.cancelBubble<"u"?e.cancelBubble:!1}function kx(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,function(t){return t==="Files"||t==="application/x-moz-file"}):!!e.target&&!!e.target.files}function ND(e){e.preventDefault()}function vAe(e){return e.indexOf("MSIE")!==-1||e.indexOf("Trident/")!==-1}function yAe(e){return e.indexOf("Edge/")!==-1}function bAe(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.navigator.userAgent;return vAe(e)||yAe(e)}function Ml(){for(var e=arguments.length,t=new Array(e),n=0;n1?i-1:0),a=1;ae.length)&&(t=e.length);for(var n=0,r=new Array(t);n=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function jAe(e,t){if(e==null)return{};var n={},r=Object.keys(e),i,o;for(o=0;o=0)&&(n[i]=e[i]);return n}var bP=S.forwardRef(function(e,t){var n=e.children,r=W3(e,kAe),i=Gq(r),o=i.open,a=W3(i,EAe);return S.useImperativeHandle(t,function(){return{open:o}},[o]),Ke.createElement(S.Fragment,null,n(_r(_r({},a),{},{open:o})))});bP.displayName="Dropzone";var Vq={disabled:!1,getFilesFromEvent:KLe,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!0,autoFocus:!1};bP.defaultProps=Vq;bP.propTypes={children:An.func,accept:An.objectOf(An.arrayOf(An.string)),multiple:An.bool,preventDropOnDocument:An.bool,noClick:An.bool,noKeyboard:An.bool,noDrag:An.bool,noDragEventsBubbling:An.bool,minSize:An.number,maxSize:An.number,maxFiles:An.number,disabled:An.bool,getFilesFromEvent:An.func,onFileDialogCancel:An.func,onFileDialogOpen:An.func,useFsAccessApi:An.bool,autoFocus:An.bool,onDragEnter:An.func,onDragLeave:An.func,onDragOver:An.func,onDrop:An.func,onDropAccepted:An.func,onDropRejected:An.func,onError:An.func,validator:An.func};var h7={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,acceptedFiles:[],fileRejections:[]};function Gq(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=_r(_r({},Vq),e),n=t.accept,r=t.disabled,i=t.getFilesFromEvent,o=t.maxSize,a=t.minSize,s=t.multiple,l=t.maxFiles,u=t.onDragEnter,d=t.onDragLeave,p=t.onDragOver,m=t.onDrop,y=t.onDropAccepted,b=t.onDropRejected,w=t.onFileDialogCancel,E=t.onFileDialogOpen,_=t.useFsAccessApi,k=t.autoFocus,T=t.preventDropOnDocument,L=t.noClick,O=t.noKeyboard,D=t.noDrag,I=t.noDragEventsBubbling,N=t.onError,W=t.validator,B=S.useMemo(function(){return wAe(n)},[n]),K=S.useMemo(function(){return SAe(n)},[n]),ne=S.useMemo(function(){return typeof E=="function"?E:FD},[E]),z=S.useMemo(function(){return typeof w=="function"?w:FD},[w]),$=S.useRef(null),V=S.useRef(null),X=S.useReducer(NAe,h7),Q=s6(X,2),G=Q[0],Y=Q[1],ee=G.isFocused,fe=G.isFileDialogActive,_e=S.useRef(typeof window<"u"&&window.isSecureContext&&_&&xAe()),we=function(){!_e.current&&fe&&setTimeout(function(){if(V.current){var je=V.current.files;je.length||(Y({type:"closeDialog"}),z())}},300)};S.useEffect(function(){return window.addEventListener("focus",we,!1),function(){window.removeEventListener("focus",we,!1)}},[V,fe,z,_e]);var xe=S.useRef([]),Le=function(je){$.current&&$.current.contains(je.target)||(je.preventDefault(),xe.current=[])};S.useEffect(function(){return T&&(document.addEventListener("dragover",ND,!1),document.addEventListener("drop",Le,!1)),function(){T&&(document.removeEventListener("dragover",ND),document.removeEventListener("drop",Le))}},[$,T]),S.useEffect(function(){return!r&&k&&$.current&&$.current.focus(),function(){}},[$,k,r]);var Se=S.useCallback(function(ye){N?N(ye):console.error(ye)},[N]),Je=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye),xe.current=[].concat(MAe(xe.current),[ye.target]),kx(ye)&&Promise.resolve(i(ye)).then(function(je){if(!(H3(ye)&&!I)){var vt=je.length,Mt=vt>0&&mAe({files:je,accept:B,minSize:a,maxSize:o,multiple:s,maxFiles:l,validator:W}),Me=vt>0&&!Mt;Y({isDragAccept:Mt,isDragReject:Me,isDragActive:!0,type:"setDraggedFiles"}),u&&u(ye)}}).catch(function(je){return Se(je)})},[i,u,Se,I,B,a,o,s,l,W]),Xe=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye);var je=kx(ye);if(je&&ye.dataTransfer)try{ye.dataTransfer.dropEffect="copy"}catch{}return je&&p&&p(ye),!1},[p,I]),tt=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye);var je=xe.current.filter(function(Mt){return $.current&&$.current.contains(Mt)}),vt=je.indexOf(ye.target);vt!==-1&&je.splice(vt,1),xe.current=je,!(je.length>0)&&(Y({type:"setDraggedFiles",isDragActive:!1,isDragAccept:!1,isDragReject:!1}),kx(ye)&&d&&d(ye))},[$,d,I]),yt=S.useCallback(function(ye,je){var vt=[],Mt=[];ye.forEach(function(Me){var Ct=Bq(Me,B),zt=s6(Ct,2),$n=zt[0],qe=zt[1],pt=zq(Me,a,o),zr=s6(pt,2),rr=zr[0],Bn=zr[1],li=W?W(Me):null;if($n&&rr&&!li)vt.push(Me);else{var vs=[qe,Bn];li&&(vs=vs.concat(li)),Mt.push({file:Me,errors:vs.filter(function(tl){return tl})})}}),(!s&&vt.length>1||s&&l>=1&&vt.length>l)&&(vt.forEach(function(Me){Mt.push({file:Me,errors:[gAe]})}),vt.splice(0)),Y({acceptedFiles:vt,fileRejections:Mt,type:"setFiles"}),m&&m(vt,Mt,je),Mt.length>0&&b&&b(Mt,je),vt.length>0&&y&&y(vt,je)},[Y,s,B,a,o,l,m,y,b,W]),Be=S.useCallback(function(ye){ye.preventDefault(),ye.persist(),se(ye),xe.current=[],kx(ye)&&Promise.resolve(i(ye)).then(function(je){H3(ye)&&!I||yt(je,ye)}).catch(function(je){return Se(je)}),Y({type:"reset"})},[i,yt,Se,I]),Ae=S.useCallback(function(){if(_e.current){Y({type:"openDialog"}),ne();var ye={multiple:s,types:K};window.showOpenFilePicker(ye).then(function(je){return i(je)}).then(function(je){yt(je,null),Y({type:"closeDialog"})}).catch(function(je){CAe(je)?(z(je),Y({type:"closeDialog"})):_Ae(je)?(_e.current=!1,V.current?(V.current.value=null,V.current.click()):Se(new Error("Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no was provided."))):Se(je)});return}V.current&&(Y({type:"openDialog"}),ne(),V.current.value=null,V.current.click())},[Y,ne,z,_,yt,Se,K,s]),bt=S.useCallback(function(ye){!$.current||!$.current.isEqualNode(ye.target)||(ye.key===" "||ye.key==="Enter"||ye.keyCode===32||ye.keyCode===13)&&(ye.preventDefault(),Ae())},[$,Ae]),Fe=S.useCallback(function(){Y({type:"focus"})},[]),at=S.useCallback(function(){Y({type:"blur"})},[]),jt=S.useCallback(function(){L||(bAe()?setTimeout(Ae,0):Ae())},[L,Ae]),mt=function(je){return r?null:je},Zt=function(je){return O?null:mt(je)},on=function(je){return D?null:mt(je)},se=function(je){I&&je.stopPropagation()},Ie=S.useMemo(function(){return function(){var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},je=ye.refKey,vt=je===void 0?"ref":je,Mt=ye.role,Me=ye.onKeyDown,Ct=ye.onFocus,zt=ye.onBlur,$n=ye.onClick,qe=ye.onDragEnter,pt=ye.onDragOver,zr=ye.onDragLeave,rr=ye.onDrop,Bn=W3(ye,PAe);return _r(_r(f7({onKeyDown:Zt(Ml(Me,bt)),onFocus:Zt(Ml(Ct,Fe)),onBlur:Zt(Ml(zt,at)),onClick:mt(Ml($n,jt)),onDragEnter:on(Ml(qe,Je)),onDragOver:on(Ml(pt,Xe)),onDragLeave:on(Ml(zr,tt)),onDrop:on(Ml(rr,Be)),role:typeof Mt=="string"&&Mt!==""?Mt:"presentation"},vt,$),!r&&!O?{tabIndex:0}:{}),Bn)}},[$,bt,Fe,at,jt,Je,Xe,tt,Be,O,D,r]),He=S.useCallback(function(ye){ye.stopPropagation()},[]),Ue=S.useMemo(function(){return function(){var ye=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},je=ye.refKey,vt=je===void 0?"ref":je,Mt=ye.onChange,Me=ye.onClick,Ct=W3(ye,TAe),zt=f7({accept:B,multiple:s,type:"file",style:{display:"none"},onChange:mt(Ml(Mt,Be)),onClick:mt(Ml(Me,He)),tabIndex:-1},vt,V);return _r(_r({},zt),Ct)}},[V,n,s,Be,r]);return _r(_r({},G),{},{isFocused:ee&&!r,getRootProps:Ie,getInputProps:Ue,rootRef:$,inputRef:V,open:mt(Ae)})}function NAe(e,t){switch(t.type){case"focus":return _r(_r({},e),{},{isFocused:!0});case"blur":return _r(_r({},e),{},{isFocused:!1});case"openDialog":return _r(_r({},h7),{},{isFileDialogActive:!0});case"closeDialog":return _r(_r({},e),{},{isFileDialogActive:!1});case"setDraggedFiles":return _r(_r({},e),{},{isDragActive:t.isDragActive,isDragAccept:t.isDragAccept,isDragReject:t.isDragReject});case"setFiles":return _r(_r({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections});case"reset":return _r({},h7);default:return e}}function FD(){}const $Ae=e=>{const{isDragAccept:t,isDragReject:n,overlaySecondaryText:r,setIsHandlingUpload:i}=e;return Qe("esc",()=>{i(!1)}),g.jsxs("div",{className:"dropzone-container",children:[t&&g.jsx("div",{className:"dropzone-overlay is-drag-accept",children:g.jsxs(jh,{size:"lg",children:["Upload Image",r]})}),n&&g.jsxs("div",{className:"dropzone-overlay is-drag-reject",children:[g.jsx(jh,{size:"lg",children:"Invalid Upload"}),g.jsx(jh,{size:"md",children:"Must be single JPEG or PNG image"})]})]})},FAe=e=>{const{children:t}=e,n=Te(),r=le(Br),i=a2({}),{t:o}=De(),[a,s]=S.useState(!1),{setOpenUploader:l}=OE(),u=S.useCallback(T=>{s(!0);const L=T.errors.reduce((O,D)=>`${O} +${D.message}`,"");i({title:o("toast.uploadFailed"),description:L,status:"error",isClosable:!0})},[o,i]),d=S.useCallback(async T=>{n(TI({imageFile:T}))},[n]),p=S.useCallback((T,L)=>{L.forEach(O=>{u(O)}),T.forEach(O=>{d(O)})},[d,u]),{getRootProps:m,getInputProps:y,isDragAccept:b,isDragReject:w,isDragActive:E,open:_}=Gq({accept:{"image/png":[".png"],"image/jpeg":[".jpg",".jpeg",".png"]},noClick:!0,onDrop:p,onDragOver:()=>s(!0),maxFiles:1});l(_),S.useEffect(()=>{const T=L=>{var N;const O=(N=L.clipboardData)==null?void 0:N.items;if(!O)return;const D=[];for(const W of O)W.kind==="file"&&["image/png","image/jpg"].includes(W.type)&&D.push(W);if(!D.length)return;if(L.stopImmediatePropagation(),D.length>1){i({description:o("toast.uploadFailedMultipleImagesDesc"),status:"error",isClosable:!0});return}const I=D[0].getAsFile();if(!I){i({description:o("toast.uploadFailedUnableToLoadDesc"),status:"error",isClosable:!0});return}n(TI({imageFile:I}))};return document.addEventListener("paste",T),()=>{document.removeEventListener("paste",T)}},[o,n,i,r]);const k=["img2img","unifiedCanvas"].includes(r)?` to ${Qa[r].tooltip}`:"";return g.jsx(AE.Provider,{value:_,children:g.jsxs("div",{...m({style:{}}),onKeyDown:T=>{T.key},children:[g.jsx("input",{...y()}),t,E&&a&&g.jsx($Ae,{isDragAccept:b,isDragReject:w,overlaySecondaryText:k,setIsHandlingUpload:s})]})})},BAe=lt(hr,e=>e.log,{memoizeOptions:{resultEqualityCheck:(e,t)=>e.length===t.length}}),zAe=lt(hr,e=>({shouldShowLogViewer:e.shouldShowLogViewer,hasError:e.hasError,wasErrorSeen:e.wasErrorSeen}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),HAe=()=>{const e=Te(),t=le(BAe),{shouldShowLogViewer:n,hasError:r,wasErrorSeen:i}=le(zAe),[o,a]=S.useState(!0),s=S.useRef(null);S.useLayoutEffect(()=>{s.current!==null&&o&&(s.current.scrollTop=s.current.scrollHeight)},[o,t,n]);const l=()=>{e(jU()),e(FC(!n))};Qe("`",()=>{e(FC(!n))},[n]),Qe("esc",()=>{e(FC(!1))});const u=()=>{s.current&&o&&s.current.scrollTop{const{timestamp:m,message:y,level:b}=d;return g.jsxs("div",{className:`console-entry console-${b}-color`,children:[g.jsxs("p",{className:"console-timestamp",children:[m,":"]}),g.jsx("p",{className:"console-message",children:y})]},p)})})}),n&&g.jsx(si,{hasArrow:!0,label:o?"Autoscroll On":"Autoscroll Off",children:g.jsx(ls,{className:"console-autoscroll-icon-button","data-autoscroll-enabled":o,size:"sm","aria-label":"Toggle autoscroll",variant:"solid",icon:g.jsx(pke,{}),onClick:()=>a(!o)})}),g.jsx(si,{hasArrow:!0,label:n?"Hide Console":"Show Console",children:g.jsx(ls,{className:"console-toggle-icon-button","data-error-seen":r||!i,size:"sm",position:"fixed",variant:"solid","aria-label":"Toggle Log Viewer",icon:n?g.jsx(Mke,{}):g.jsx(tG,{}),onClick:l})})]})},WAe=lt(hr,e=>({isProcessing:e.isProcessing,currentStep:e.currentStep,totalSteps:e.totalSteps,currentStatusHasSteps:e.currentStatusHasSteps}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),UAe=()=>{const{isProcessing:e,currentStep:t,totalSteps:n,currentStatusHasSteps:r}=le(WAe),i=t?Math.round(t*100/n):0;return g.jsx(UH,{value:i,isIndeterminate:e&&!r,className:"progress-bar"})};function VAe(e){const{title:t,hotkey:n,description:r}=e;return g.jsxs("div",{className:"hotkey-modal-item",children:[g.jsxs("div",{className:"hotkey-info",children:[g.jsx("p",{className:"hotkey-title",children:t}),r&&g.jsx("p",{className:"hotkey-description",children:r})]}),g.jsx("div",{className:"hotkey-key",children:n})]})}function GAe({children:e}){const{isOpen:t,onOpen:n,onClose:r}=Kd(),{t:i}=De(),o=[{title:i("hotkeys.invoke.title"),desc:i("hotkeys.invoke.desc"),hotkey:"Ctrl+Enter"},{title:i("hotkeys.cancel.title"),desc:i("hotkeys.cancel.desc"),hotkey:"Shift+X"},{title:i("hotkeys.focusPrompt.title"),desc:i("hotkeys.focusPrompt.desc"),hotkey:"Alt+A"},{title:i("hotkeys.toggleOptions.title"),desc:i("hotkeys.toggleOptions.desc"),hotkey:"O"},{title:i("hotkeys.pinOptions.title"),desc:i("hotkeys.pinOptions.desc"),hotkey:"Shift+O"},{title:i("hotkeys.toggleViewer.title"),desc:i("hotkeys.toggleViewer.desc"),hotkey:"Z"},{title:i("hotkeys.toggleGallery.title"),desc:i("hotkeys.toggleGallery.desc"),hotkey:"G"},{title:i("hotkeys.maximizeWorkSpace.title"),desc:i("hotkeys.maximizeWorkSpace.desc"),hotkey:"F"},{title:i("hotkeys.changeTabs.title"),desc:i("hotkeys.changeTabs.desc"),hotkey:"1-5"},{title:i("hotkeys.consoleToggle.title"),desc:i("hotkeys.consoleToggle.desc"),hotkey:"`"}],a=[{title:i("hotkeys.setPrompt.title"),desc:i("hotkeys.setPrompt.desc"),hotkey:"P"},{title:i("hotkeys.setSeed.title"),desc:i("hotkeys.setSeed.desc"),hotkey:"S"},{title:i("hotkeys.setParameters.title"),desc:i("hotkeys.setParameters.desc"),hotkey:"A"},{title:i("hotkeys.restoreFaces.title"),desc:i("hotkeys.restoreFaces.desc"),hotkey:"Shift+R"},{title:i("hotkeys.upscale.title"),desc:i("hotkeys.upscale.desc"),hotkey:"Shift+U"},{title:i("hotkeys.showInfo.title"),desc:i("hotkeys.showInfo.desc"),hotkey:"I"},{title:i("hotkeys.sendToImageToImage.title"),desc:i("hotkeys.sendToImageToImage.desc"),hotkey:"Shift+I"},{title:i("hotkeys.deleteImage.title"),desc:i("hotkeys.deleteImage.desc"),hotkey:"Del"},{title:i("hotkeys.closePanels.title"),desc:i("hotkeys.closePanels.desc"),hotkey:"Esc"}],s=[{title:i("hotkeys.previousImage.title"),desc:i("hotkeys.previousImage.desc"),hotkey:"Arrow Left"},{title:i("hotkeys.nextImage.title"),desc:i("hotkeys.nextImage.desc"),hotkey:"Arrow Right"},{title:i("hotkeys.toggleGalleryPin.title"),desc:i("hotkeys.toggleGalleryPin.desc"),hotkey:"Shift+G"},{title:i("hotkeys.increaseGalleryThumbSize.title"),desc:i("hotkeys.increaseGalleryThumbSize.desc"),hotkey:"Shift+Up"},{title:i("hotkeys.decreaseGalleryThumbSize.title"),desc:i("hotkeys.decreaseGalleryThumbSize.desc"),hotkey:"Shift+Down"}],l=[{title:i("hotkeys.selectBrush.title"),desc:i("hotkeys.selectBrush.desc"),hotkey:"B"},{title:i("hotkeys.selectEraser.title"),desc:i("hotkeys.selectEraser.desc"),hotkey:"E"},{title:i("hotkeys.decreaseBrushSize.title"),desc:i("hotkeys.decreaseBrushSize.desc"),hotkey:"["},{title:i("hotkeys.increaseBrushSize.title"),desc:i("hotkeys.increaseBrushSize.desc"),hotkey:"]"},{title:i("hotkeys.decreaseBrushOpacity.title"),desc:i("hotkeys.decreaseBrushOpacity.desc"),hotkey:"Shift + ["},{title:i("hotkeys.increaseBrushOpacity.title"),desc:i("hotkeys.increaseBrushOpacity.desc"),hotkey:"Shift + ]"},{title:i("hotkeys.moveTool.title"),desc:i("hotkeys.moveTool.desc"),hotkey:"V"},{title:i("hotkeys.fillBoundingBox.title"),desc:i("hotkeys.fillBoundingBox.desc"),hotkey:"Shift + F"},{title:i("hotkeys.eraseBoundingBox.title"),desc:i("hotkeys.eraseBoundingBox.desc"),hotkey:"Delete / Backspace"},{title:i("hotkeys.colorPicker.title"),desc:i("hotkeys.colorPicker.desc"),hotkey:"C"},{title:i("hotkeys.toggleSnap.title"),desc:i("hotkeys.toggleSnap.desc"),hotkey:"N"},{title:i("hotkeys.quickToggleMove.title"),desc:i("hotkeys.quickToggleMove.desc"),hotkey:"Hold Space"},{title:i("hotkeys.toggleLayer.title"),desc:i("hotkeys.toggleLayer.desc"),hotkey:"Q"},{title:i("hotkeys.clearMask.title"),desc:i("hotkeys.clearMask.desc"),hotkey:"Shift+C"},{title:i("hotkeys.hideMask.title"),desc:i("hotkeys.hideMask.desc"),hotkey:"H"},{title:i("hotkeys.showHideBoundingBox.title"),desc:i("hotkeys.showHideBoundingBox.desc"),hotkey:"Shift+H"},{title:i("hotkeys.mergeVisible.title"),desc:i("hotkeys.mergeVisible.desc"),hotkey:"Shift+M"},{title:i("hotkeys.saveToGallery.title"),desc:i("hotkeys.saveToGallery.desc"),hotkey:"Shift+S"},{title:i("hotkeys.copyToClipboard.title"),desc:i("hotkeys.copyToClipboard.desc"),hotkey:"Ctrl+C"},{title:i("hotkeys.downloadImage.title"),desc:i("hotkeys.downloadImage.desc"),hotkey:"Shift+D"},{title:i("hotkeys.undoStroke.title"),desc:i("hotkeys.undoStroke.desc"),hotkey:"Ctrl+Z"},{title:i("hotkeys.redoStroke.title"),desc:i("hotkeys.redoStroke.desc"),hotkey:"Ctrl+Shift+Z, Ctrl+Y"},{title:i("hotkeys.resetView.title"),desc:i("hotkeys.resetView.desc"),hotkey:"R"},{title:i("hotkeys.previousStagingImage.title"),desc:i("hotkeys.previousStagingImage.desc"),hotkey:"Arrow Left"},{title:i("hotkeys.nextStagingImage.title"),desc:i("hotkeys.nextStagingImage.desc"),hotkey:"Arrow Right"},{title:i("hotkeys.acceptStagingImage.title"),desc:i("hotkeys.acceptStagingImage.desc"),hotkey:"Enter"}],u=d=>{const p=[];return d.forEach((m,y)=>{p.push(g.jsx(VAe,{title:m.title,description:m.desc,hotkey:m.hotkey},y))}),g.jsx("div",{className:"hotkey-modal-category",children:p})};return g.jsxs(g.Fragment,{children:[S.cloneElement(e,{onClick:n}),g.jsxs(Yd,{isOpen:t,onClose:r,children:[g.jsx(oc,{}),g.jsxs(Xd,{className:" modal hotkeys-modal",children:[g.jsx(m0,{className:"modal-close-btn"}),g.jsx("h1",{children:"Keyboard Shorcuts"}),g.jsx("div",{className:"hotkeys-modal-items",children:g.jsxs(c8,{allowMultiple:!0,children:[g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.appHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(o)})]}),g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.generalHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(a)})]}),g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.galleryHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(s)})]}),g.jsxs(rm,{children:[g.jsxs(tm,{className:"hotkeys-modal-button",children:[g.jsx("h2",{children:i("hotkeys.unifiedCanvasHotkeys")}),g.jsx(nm,{})]}),g.jsx(om,{children:u(l)})]})]})})]})]})]})}var BD=Array.isArray,zD=Object.keys,qAe=Object.prototype.hasOwnProperty,KAe=typeof Element<"u";function p7(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){var n=BD(e),r=BD(t),i,o,a;if(n&&r){if(o=e.length,o!=t.length)return!1;for(i=o;i--!==0;)if(!p7(e[i],t[i]))return!1;return!0}if(n!=r)return!1;var s=e instanceof Date,l=t instanceof Date;if(s!=l)return!1;if(s&&l)return e.getTime()==t.getTime();var u=e instanceof RegExp,d=t instanceof RegExp;if(u!=d)return!1;if(u&&d)return e.toString()==t.toString();var p=zD(e);if(o=p.length,o!==zD(t).length)return!1;for(i=o;i--!==0;)if(!qAe.call(t,p[i]))return!1;if(KAe&&e instanceof Element&&t instanceof Element)return e===t;for(i=o;i--!==0;)if(a=p[i],!(a==="_owner"&&e.$$typeof)&&!p7(e[a],t[a]))return!1;return!0}return e!==e&&t!==t}var md=function(t,n){try{return p7(t,n)}catch(r){if(r.message&&r.message.match(/stack|recursion/i)||r.number===-2146828260)return console.warn("Warning: react-fast-compare does not handle circular references.",r.name,r.message),!1;throw r}},YAe=function(t){return XAe(t)&&!ZAe(t)};function XAe(e){return!!e&&typeof e=="object"}function ZAe(e){var t=Object.prototype.toString.call(e);return t==="[object RegExp]"||t==="[object Date]"||eOe(e)}var QAe=typeof Symbol=="function"&&Symbol.for,JAe=QAe?Symbol.for("react.element"):60103;function eOe(e){return e.$$typeof===JAe}function tOe(e){return Array.isArray(e)?[]:{}}function U3(e,t){return t.clone!==!1&&t.isMergeableObject(e)?Hy(tOe(e),e,t):e}function nOe(e,t,n){return e.concat(t).map(function(r){return U3(r,n)})}function rOe(e,t,n){var r={};return n.isMergeableObject(e)&&Object.keys(e).forEach(function(i){r[i]=U3(e[i],n)}),Object.keys(t).forEach(function(i){!n.isMergeableObject(t[i])||!e[i]?r[i]=U3(t[i],n):r[i]=Hy(e[i],t[i],n)}),r}function Hy(e,t,n){n=n||{},n.arrayMerge=n.arrayMerge||nOe,n.isMergeableObject=n.isMergeableObject||YAe;var r=Array.isArray(t),i=Array.isArray(e),o=r===i;return o?r?n.arrayMerge(e,t,n):rOe(e,t,n):U3(t,n)}Hy.all=function(t,n){if(!Array.isArray(t))throw new Error("first argument should be an array");return t.reduce(function(r,i){return Hy(r,i,n)},{})};var g7=Hy,iOe=typeof global=="object"&&global&&global.Object===Object&&global;const qq=iOe;var oOe=typeof self=="object"&&self&&self.Object===Object&&self,aOe=qq||oOe||Function("return this")();const du=aOe;var sOe=du.Symbol;const tf=sOe;var Kq=Object.prototype,lOe=Kq.hasOwnProperty,uOe=Kq.toString,r1=tf?tf.toStringTag:void 0;function cOe(e){var t=lOe.call(e,r1),n=e[r1];try{e[r1]=void 0;var r=!0}catch{}var i=uOe.call(e);return r&&(t?e[r1]=n:delete e[r1]),i}var dOe=Object.prototype,fOe=dOe.toString;function hOe(e){return fOe.call(e)}var pOe="[object Null]",gOe="[object Undefined]",HD=tf?tf.toStringTag:void 0;function yp(e){return e==null?e===void 0?gOe:pOe:HD&&HD in Object(e)?cOe(e):hOe(e)}function Yq(e,t){return function(n){return e(t(n))}}var mOe=Yq(Object.getPrototypeOf,Object);const xP=mOe;function bp(e){return e!=null&&typeof e=="object"}var vOe="[object Object]",yOe=Function.prototype,bOe=Object.prototype,Xq=yOe.toString,xOe=bOe.hasOwnProperty,SOe=Xq.call(Object);function WD(e){if(!bp(e)||yp(e)!=vOe)return!1;var t=xP(e);if(t===null)return!0;var n=xOe.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&Xq.call(n)==SOe}function wOe(){this.__data__=[],this.size=0}function Zq(e,t){return e===t||e!==e&&t!==t}function E4(e,t){for(var n=e.length;n--;)if(Zq(e[n][0],t))return n;return-1}var COe=Array.prototype,_Oe=COe.splice;function kOe(e){var t=this.__data__,n=E4(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():_Oe.call(t,n,1),--this.size,!0}function EOe(e){var t=this.__data__,n=E4(t,e);return n<0?void 0:t[n][1]}function POe(e){return E4(this.__data__,e)>-1}function TOe(e,t){var n=this.__data__,r=E4(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}function yc(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t-1&&e%1==0&&e-1&&e%1==0&&e<=DRe}var jRe="[object Arguments]",NRe="[object Array]",$Re="[object Boolean]",FRe="[object Date]",BRe="[object Error]",zRe="[object Function]",HRe="[object Map]",WRe="[object Number]",URe="[object Object]",VRe="[object RegExp]",GRe="[object Set]",qRe="[object String]",KRe="[object WeakMap]",YRe="[object ArrayBuffer]",XRe="[object DataView]",ZRe="[object Float32Array]",QRe="[object Float64Array]",JRe="[object Int8Array]",eIe="[object Int16Array]",tIe="[object Int32Array]",nIe="[object Uint8Array]",rIe="[object Uint8ClampedArray]",iIe="[object Uint16Array]",oIe="[object Uint32Array]",ar={};ar[ZRe]=ar[QRe]=ar[JRe]=ar[eIe]=ar[tIe]=ar[nIe]=ar[rIe]=ar[iIe]=ar[oIe]=!0;ar[jRe]=ar[NRe]=ar[YRe]=ar[$Re]=ar[XRe]=ar[FRe]=ar[BRe]=ar[zRe]=ar[HRe]=ar[WRe]=ar[URe]=ar[VRe]=ar[GRe]=ar[qRe]=ar[KRe]=!1;function aIe(e){return bp(e)&&iK(e.length)&&!!ar[yp(e)]}function SP(e){return function(t){return e(t)}}var oK=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Z1=oK&&typeof module=="object"&&module&&!module.nodeType&&module,sIe=Z1&&Z1.exports===oK,u6=sIe&&qq.process,lIe=function(){try{var e=Z1&&Z1.require&&Z1.require("util").types;return e||u6&&u6.binding&&u6.binding("util")}catch{}}();const i0=lIe;var YD=i0&&i0.isTypedArray,uIe=YD?SP(YD):aIe;const cIe=uIe;var dIe=Object.prototype,fIe=dIe.hasOwnProperty;function aK(e,t){var n=k2(e),r=!n&&ERe(e),i=!n&&!r&&rK(e),o=!n&&!r&&!i&&cIe(e),a=n||r||i||o,s=a?SRe(e.length,String):[],l=s.length;for(var u in e)(t||fIe.call(e,u))&&!(a&&(u=="length"||i&&(u=="offset"||u=="parent")||o&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||IRe(u,l)))&&s.push(u);return s}var hIe=Object.prototype;function wP(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||hIe;return e===n}var pIe=Yq(Object.keys,Object);const gIe=pIe;var mIe=Object.prototype,vIe=mIe.hasOwnProperty;function yIe(e){if(!wP(e))return gIe(e);var t=[];for(var n in Object(e))vIe.call(e,n)&&n!="constructor"&&t.push(n);return t}function sK(e){return e!=null&&iK(e.length)&&!Qq(e)}function CP(e){return sK(e)?aK(e):yIe(e)}function bIe(e,t){return e&&T4(t,CP(t),e)}function xIe(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}var SIe=Object.prototype,wIe=SIe.hasOwnProperty;function CIe(e){if(!_2(e))return xIe(e);var t=wP(e),n=[];for(var r in e)r=="constructor"&&(t||!wIe.call(e,r))||n.push(r);return n}function _P(e){return sK(e)?aK(e,!0):CIe(e)}function _Ie(e,t){return e&&T4(t,_P(t),e)}var lK=typeof exports=="object"&&exports&&!exports.nodeType&&exports,XD=lK&&typeof module=="object"&&module&&!module.nodeType&&module,kIe=XD&&XD.exports===lK,ZD=kIe?du.Buffer:void 0,QD=ZD?ZD.allocUnsafe:void 0;function EIe(e,t){if(t)return e.slice();var n=e.length,r=QD?QD(n):new e.constructor(n);return e.copy(r),r}function uK(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n=0)&&(n[i]=e[i]);return n}function pj(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}var gj=function(t){return Array.isArray(t)&&t.length===0},Ho=function(t){return typeof t=="function"},M4=function(t){return t!==null&&typeof t=="object"},_je=function(t){return String(Math.floor(Number(t)))===t},c6=function(t){return Object.prototype.toString.call(t)==="[object String]"},xK=function(t){return S.Children.count(t)===0},d6=function(t){return M4(t)&&Ho(t.then)};function Ui(e,t,n,r){r===void 0&&(r=0);for(var i=bK(t);e&&r=0?[]:{}}}return(o===0?e:i)[a[o]]===n?e:(n===void 0?delete i[a[o]]:i[a[o]]=n,o===0&&n===void 0&&delete r[a[o]],r)}function SK(e,t,n,r){n===void 0&&(n=new WeakMap),r===void 0&&(r={});for(var i=0,o=Object.keys(e);i0?Ie.map(function(Ue){return N(Ue,Ui(se,Ue))}):[Promise.resolve("DO_NOT_DELETE_YOU_WILL_BE_FIRED")];return Promise.all(He).then(function(Ue){return Ue.reduce(function(ye,je,vt){return je==="DO_NOT_DELETE_YOU_WILL_BE_FIRED"||je&&(ye=tu(ye,Ie[vt],je)),ye},{})})},[N]),B=S.useCallback(function(se){return Promise.all([W(se),m.validationSchema?I(se):{},m.validate?D(se):{}]).then(function(Ie){var He=Ie[0],Ue=Ie[1],ye=Ie[2],je=g7.all([He,Ue,ye],{arrayMerge:Lje});return je})},[m.validate,m.validationSchema,W,D,I]),K=qa(function(se){return se===void 0&&(se=L.values),O({type:"SET_ISVALIDATING",payload:!0}),B(se).then(function(Ie){return _.current&&(O({type:"SET_ISVALIDATING",payload:!1}),O({type:"SET_ERRORS",payload:Ie})),Ie})});S.useEffect(function(){a&&_.current===!0&&md(y.current,m.initialValues)&&K(y.current)},[a,K]);var ne=S.useCallback(function(se){var Ie=se&&se.values?se.values:y.current,He=se&&se.errors?se.errors:b.current?b.current:m.initialErrors||{},Ue=se&&se.touched?se.touched:w.current?w.current:m.initialTouched||{},ye=se&&se.status?se.status:E.current?E.current:m.initialStatus;y.current=Ie,b.current=He,w.current=Ue,E.current=ye;var je=function(){O({type:"RESET_FORM",payload:{isSubmitting:!!se&&!!se.isSubmitting,errors:He,touched:Ue,status:ye,values:Ie,isValidating:!!se&&!!se.isValidating,submitCount:se&&se.submitCount&&typeof se.submitCount=="number"?se.submitCount:0}})};if(m.onReset){var vt=m.onReset(L.values,Be);d6(vt)?vt.then(je):je()}else je()},[m.initialErrors,m.initialStatus,m.initialTouched]);S.useEffect(function(){_.current===!0&&!md(y.current,m.initialValues)&&(u&&(y.current=m.initialValues,ne()),a&&K(y.current))},[u,m.initialValues,ne,a,K]),S.useEffect(function(){u&&_.current===!0&&!md(b.current,m.initialErrors)&&(b.current=m.initialErrors||lh,O({type:"SET_ERRORS",payload:m.initialErrors||lh}))},[u,m.initialErrors]),S.useEffect(function(){u&&_.current===!0&&!md(w.current,m.initialTouched)&&(w.current=m.initialTouched||Ex,O({type:"SET_TOUCHED",payload:m.initialTouched||Ex}))},[u,m.initialTouched]),S.useEffect(function(){u&&_.current===!0&&!md(E.current,m.initialStatus)&&(E.current=m.initialStatus,O({type:"SET_STATUS",payload:m.initialStatus}))},[u,m.initialStatus,m.initialTouched]);var z=qa(function(se){if(k.current[se]&&Ho(k.current[se].validate)){var Ie=Ui(L.values,se),He=k.current[se].validate(Ie);return d6(He)?(O({type:"SET_ISVALIDATING",payload:!0}),He.then(function(Ue){return Ue}).then(function(Ue){O({type:"SET_FIELD_ERROR",payload:{field:se,value:Ue}}),O({type:"SET_ISVALIDATING",payload:!1})})):(O({type:"SET_FIELD_ERROR",payload:{field:se,value:He}}),Promise.resolve(He))}else if(m.validationSchema)return O({type:"SET_ISVALIDATING",payload:!0}),I(L.values,se).then(function(Ue){return Ue}).then(function(Ue){O({type:"SET_FIELD_ERROR",payload:{field:se,value:Ue[se]}}),O({type:"SET_ISVALIDATING",payload:!1})});return Promise.resolve()}),$=S.useCallback(function(se,Ie){var He=Ie.validate;k.current[se]={validate:He}},[]),V=S.useCallback(function(se){delete k.current[se]},[]),X=qa(function(se,Ie){O({type:"SET_TOUCHED",payload:se});var He=Ie===void 0?i:Ie;return He?K(L.values):Promise.resolve()}),Q=S.useCallback(function(se){O({type:"SET_ERRORS",payload:se})},[]),G=qa(function(se,Ie){var He=Ho(se)?se(L.values):se;O({type:"SET_VALUES",payload:He});var Ue=Ie===void 0?n:Ie;return Ue?K(He):Promise.resolve()}),Y=S.useCallback(function(se,Ie){O({type:"SET_FIELD_ERROR",payload:{field:se,value:Ie}})},[]),ee=qa(function(se,Ie,He){O({type:"SET_FIELD_VALUE",payload:{field:se,value:Ie}});var Ue=He===void 0?n:He;return Ue?K(tu(L.values,se,Ie)):Promise.resolve()}),fe=S.useCallback(function(se,Ie){var He=Ie,Ue=se,ye;if(!c6(se)){se.persist&&se.persist();var je=se.target?se.target:se.currentTarget,vt=je.type,Mt=je.name,Me=je.id,Ct=je.value,zt=je.checked,$n=je.outerHTML,qe=je.options,pt=je.multiple;He=Ie||Mt||Me,Ue=/number|range/.test(vt)?(ye=parseFloat(Ct),isNaN(ye)?"":ye):/checkbox/.test(vt)?Oje(Ui(L.values,He),zt,Ct):qe&&pt?Aje(qe):Ct}He&&ee(He,Ue)},[ee,L.values]),_e=qa(function(se){if(c6(se))return function(Ie){return fe(Ie,se)};fe(se)}),we=qa(function(se,Ie,He){Ie===void 0&&(Ie=!0),O({type:"SET_FIELD_TOUCHED",payload:{field:se,value:Ie}});var Ue=He===void 0?i:He;return Ue?K(L.values):Promise.resolve()}),xe=S.useCallback(function(se,Ie){se.persist&&se.persist();var He=se.target,Ue=He.name,ye=He.id,je=He.outerHTML,vt=Ie||Ue||ye;we(vt,!0)},[we]),Le=qa(function(se){if(c6(se))return function(Ie){return xe(Ie,se)};xe(se)}),Se=S.useCallback(function(se){Ho(se)?O({type:"SET_FORMIK_STATE",payload:se}):O({type:"SET_FORMIK_STATE",payload:function(){return se}})},[]),Je=S.useCallback(function(se){O({type:"SET_STATUS",payload:se})},[]),Xe=S.useCallback(function(se){O({type:"SET_ISSUBMITTING",payload:se})},[]),tt=qa(function(){return O({type:"SUBMIT_ATTEMPT"}),K().then(function(se){var Ie=se instanceof Error,He=!Ie&&Object.keys(se).length===0;if(He){var Ue;try{if(Ue=Ae(),Ue===void 0)return}catch(ye){throw ye}return Promise.resolve(Ue).then(function(ye){return _.current&&O({type:"SUBMIT_SUCCESS"}),ye}).catch(function(ye){if(_.current)throw O({type:"SUBMIT_FAILURE"}),ye})}else if(_.current&&(O({type:"SUBMIT_FAILURE"}),Ie))throw se})}),yt=qa(function(se){se&&se.preventDefault&&Ho(se.preventDefault)&&se.preventDefault(),se&&se.stopPropagation&&Ho(se.stopPropagation)&&se.stopPropagation(),tt().catch(function(Ie){console.warn("Warning: An unhandled error was caught from submitForm()",Ie)})}),Be={resetForm:ne,validateForm:K,validateField:z,setErrors:Q,setFieldError:Y,setFieldTouched:we,setFieldValue:ee,setStatus:Je,setSubmitting:Xe,setTouched:X,setValues:G,setFormikState:Se,submitForm:tt},Ae=qa(function(){return d(L.values,Be)}),bt=qa(function(se){se&&se.preventDefault&&Ho(se.preventDefault)&&se.preventDefault(),se&&se.stopPropagation&&Ho(se.stopPropagation)&&se.stopPropagation(),ne()}),Fe=S.useCallback(function(se){return{value:Ui(L.values,se),error:Ui(L.errors,se),touched:!!Ui(L.touched,se),initialValue:Ui(y.current,se),initialTouched:!!Ui(w.current,se),initialError:Ui(b.current,se)}},[L.errors,L.touched,L.values]),at=S.useCallback(function(se){return{setValue:function(He,Ue){return ee(se,He,Ue)},setTouched:function(He,Ue){return we(se,He,Ue)},setError:function(He){return Y(se,He)}}},[ee,we,Y]),jt=S.useCallback(function(se){var Ie=M4(se),He=Ie?se.name:se,Ue=Ui(L.values,He),ye={name:He,value:Ue,onChange:_e,onBlur:Le};if(Ie){var je=se.type,vt=se.value,Mt=se.as,Me=se.multiple;je==="checkbox"?vt===void 0?ye.checked=!!Ue:(ye.checked=!!(Array.isArray(Ue)&&~Ue.indexOf(vt)),ye.value=vt):je==="radio"?(ye.checked=Ue===vt,ye.value=vt):Mt==="select"&&Me&&(ye.value=ye.value||[],ye.multiple=!0)}return ye},[Le,_e,L.values]),mt=S.useMemo(function(){return!md(y.current,L.values)},[y.current,L.values]),Zt=S.useMemo(function(){return typeof s<"u"?mt?L.errors&&Object.keys(L.errors).length===0:s!==!1&&Ho(s)?s(m):s:L.errors&&Object.keys(L.errors).length===0},[s,mt,L.errors,m]),on=Vn({},L,{initialValues:y.current,initialErrors:b.current,initialTouched:w.current,initialStatus:E.current,handleBlur:Le,handleChange:_e,handleReset:bt,handleSubmit:yt,resetForm:ne,setErrors:Q,setFormikState:Se,setFieldTouched:we,setFieldValue:ee,setFieldError:Y,setStatus:Je,setSubmitting:Xe,setTouched:X,setValues:G,submitForm:tt,validateForm:K,validateField:z,isValid:Zt,dirty:mt,unregisterField:V,registerField:$,getFieldProps:jt,getFieldMeta:Fe,getFieldHelpers:at,validateOnBlur:i,validateOnChange:n,validateOnMount:a});return on}function E2(e){var t=Pje(e),n=e.component,r=e.children,i=e.render,o=e.innerRef;return S.useImperativeHandle(o,function(){return t}),S.createElement(kje,{value:t},n?S.createElement(n,t):i?i(t):r?Ho(r)?r(t):xK(r)?null:S.Children.only(r):null)}function Tje(e){var t={};if(e.inner){if(e.inner.length===0)return tu(t,e.path,e.message);for(var i=e.inner,n=Array.isArray(i),r=0,i=n?i:i[Symbol.iterator]();;){var o;if(n){if(r>=i.length)break;o=i[r++]}else{if(r=i.next(),r.done)break;o=r.value}var a=o;Ui(t,a.path)||(t=tu(t,a.path,a.message))}}return t}function Mje(e,t,n,r){n===void 0&&(n=!1),r===void 0&&(r={});var i=x7(e);return t[n?"validateSync":"validate"](i,{abortEarly:!1,context:r})}function x7(e){var t=Array.isArray(e)?[]:{};for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){var r=String(n);Array.isArray(e[r])===!0?t[r]=e[r].map(function(i){return Array.isArray(i)===!0||WD(i)?x7(i):i!==""?i:void 0}):WD(e[r])?t[r]=x7(e[r]):t[r]=e[r]!==""?e[r]:void 0}return t}function Lje(e,t,n){var r=e.slice();return t.forEach(function(o,a){if(typeof r[a]>"u"){var s=n.clone!==!1,l=s&&n.isMergeableObject(o);r[a]=l?g7(Array.isArray(o)?[]:{},o,n):o}else n.isMergeableObject(o)?r[a]=g7(e[a],o,n):e.indexOf(o)===-1&&r.push(o)}),r}function Aje(e){return Array.from(e).filter(function(t){return t.selected}).map(function(t){return t.value})}function Oje(e,t,n){if(typeof e=="boolean")return Boolean(t);var r=[],i=!1,o=-1;if(Array.isArray(e))r=e,o=e.indexOf(n),i=o>=0;else if(!n||n=="true"||n=="false")return Boolean(t);return t&&n&&!i?r.concat(n):i?r.slice(0,o).concat(r.slice(o+1)):r}var Rje=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u"?S.useLayoutEffect:S.useEffect;function qa(e){var t=S.useRef(e);return Rje(function(){t.current=e}),S.useCallback(function(){for(var n=arguments.length,r=new Array(n),i=0;ir?i:r},0);return Array.from(Vn({},t,{length:n+1}))}else return[]},$je=function(e){Cje(t,e);function t(r){var i;return i=e.call(this,r)||this,i.updateArrayField=function(o,a,s){var l=i.props,u=l.name,d=l.formik.setFormikState;d(function(p){var m=typeof s=="function"?s:o,y=typeof a=="function"?a:o,b=tu(p.values,u,o(Ui(p.values,u))),w=s?m(Ui(p.errors,u)):void 0,E=a?y(Ui(p.touched,u)):void 0;return gj(w)&&(w=void 0),gj(E)&&(E=void 0),Vn({},p,{values:b,errors:s?tu(p.errors,u,w):p.errors,touched:a?tu(p.touched,u,E):p.touched})})},i.push=function(o){return i.updateArrayField(function(a){return[].concat(o0(a),[wje(o)])},!1,!1)},i.handlePush=function(o){return function(){return i.push(o)}},i.swap=function(o,a){return i.updateArrayField(function(s){return jje(s,o,a)},!0,!0)},i.handleSwap=function(o,a){return function(){return i.swap(o,a)}},i.move=function(o,a){return i.updateArrayField(function(s){return Dje(s,o,a)},!0,!0)},i.handleMove=function(o,a){return function(){return i.move(o,a)}},i.insert=function(o,a){return i.updateArrayField(function(s){return f6(s,o,a)},function(s){return f6(s,o,null)},function(s){return f6(s,o,null)})},i.handleInsert=function(o,a){return function(){return i.insert(o,a)}},i.replace=function(o,a){return i.updateArrayField(function(s){return Nje(s,o,a)},!1,!1)},i.handleReplace=function(o,a){return function(){return i.replace(o,a)}},i.unshift=function(o){var a=-1;return i.updateArrayField(function(s){var l=s?[o].concat(s):[o];return a<0&&(a=l.length),l},function(s){var l=s?[null].concat(s):[null];return a<0&&(a=l.length),l},function(s){var l=s?[null].concat(s):[null];return a<0&&(a=l.length),l}),a},i.handleUnshift=function(o){return function(){return i.unshift(o)}},i.handleRemove=function(o){return function(){return i.remove(o)}},i.handlePop=function(){return function(){return i.pop()}},i.remove=i.remove.bind(pj(i)),i.pop=i.pop.bind(pj(i)),i}var n=t.prototype;return n.componentDidUpdate=function(i){this.props.validateOnChange&&this.props.formik.validateOnChange&&!md(Ui(i.formik.values,i.name),Ui(this.props.formik.values,this.props.name))&&this.props.formik.validateForm(this.props.formik.values)},n.remove=function(i){var o;return this.updateArrayField(function(a){var s=a?o0(a):[];return o||(o=s[i]),Ho(s.splice)&&s.splice(i,1),s},!0,!0),o},n.pop=function(){var i;return this.updateArrayField(function(o){var a=o;return i||(i=a&&a.pop&&a.pop()),a},!0,!0),i},n.render=function(){var i={push:this.push,pop:this.pop,swap:this.swap,move:this.move,insert:this.insert,replace:this.replace,unshift:this.unshift,remove:this.remove,handlePush:this.handlePush,handlePop:this.handlePop,handleSwap:this.handleSwap,handleMove:this.handleMove,handleInsert:this.handleInsert,handleReplace:this.handleReplace,handleUnshift:this.handleUnshift,handleRemove:this.handleRemove},o=this.props,a=o.component,s=o.render,l=o.children,u=o.name,d=o.formik,p=Ph(d,["validate","validationSchema"]),m=Vn({},i,{form:p,name:u});return a?S.createElement(a,m):s?s(m):l?typeof l=="function"?l(m):xK(l)?null:S.Children.only(l):null},t}(S.Component);$je.defaultProps={validateOnChange:!0};function Fje(e){const{model:t}=e,r=le(b=>b.system.model_list)[t],i=Te(),{t:o}=De(),a=le(b=>b.system.isProcessing),s=le(b=>b.system.isConnected),[l,u]=S.useState("same"),[d,p]=S.useState("");S.useEffect(()=>{u("same")},[t]);const m=()=>{u("same")},y=()=>{i(g_e({model_name:t,save_location:l,custom_location:l==="custom"&&d!==""?d:null}))};return g.jsxs(C4,{title:`${o("modelManager.convert")} ${t}`,acceptCallback:y,cancelCallback:m,acceptButtonText:`${o("modelManager.convert")}`,triggerComponent:g.jsxs(On,{size:"sm","aria-label":o("modelManager.convertToDiffusers"),isDisabled:r.status==="active"||a||!s,className:" modal-close-btn",marginRight:"2rem",children:["🧨 ",o("modelManager.convertToDiffusers")]}),motionPreset:"slideInBottom",children:[g.jsxs(Ee,{flexDirection:"column",rowGap:4,children:[g.jsx(Dt,{children:o("modelManager.convertToDiffusersHelpText1")}),g.jsxs(tH,{children:[g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText2")}),g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText3")}),g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText4")}),g.jsx(f1,{children:o("modelManager.convertToDiffusersHelpText5")})]}),g.jsx(Dt,{children:o("modelManager.convertToDiffusersHelpText6")})]}),g.jsxs(Ee,{flexDir:"column",gap:4,children:[g.jsxs(Ee,{marginTop:"1rem",flexDir:"column",gap:2,children:[g.jsx(Dt,{fontWeight:"bold",children:o("modelManager.convertToDiffusersSaveLocation")}),g.jsx(Oy,{value:l,onChange:b=>u(b),children:g.jsxs(Ee,{gap:4,children:[g.jsx(Vo,{value:"same",children:g.jsx(si,{label:"Save converted model in the same folder",children:o("modelManager.sameFolder")})}),g.jsx(Vo,{value:"root",children:g.jsx(si,{label:"Save converted model in the InvokeAI root folder",children:o("modelManager.invokeRoot")})}),g.jsx(Vo,{value:"custom",children:g.jsx(si,{label:"Save converted model in a custom folder",children:o("modelManager.custom")})})]})})]}),l==="custom"&&g.jsxs(Ee,{flexDirection:"column",rowGap:2,children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"sm",color:"var(--text-color-secondary)",children:o("modelManager.customSaveLocation")}),g.jsx(qn,{value:d,onChange:b=>{b.target.value!==""&&p(b.target.value)},width:"25rem"})]})]})]})}const Bje=lt([hr],e=>{const{openModel:t,model_list:n}=e;return{model_list:n,openModel:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),mj=64,vj=2048;function zje(){const{openModel:e,model_list:t}=le(Bje),n=le(l=>l.system.isProcessing),r=Te(),{t:i}=De(),[o,a]=S.useState({name:"",description:"",config:"configs/stable-diffusion/v1-inference.yaml",weights:"",vae:"",width:512,height:512,default:!1,format:"ckpt"});S.useEffect(()=>{var l,u,d,p,m,y,b;if(e){const w=Ce.pickBy(t,(E,_)=>Ce.isEqual(_,e));a({name:e,description:(l=w[e])==null?void 0:l.description,config:(u=w[e])==null?void 0:u.config,weights:(d=w[e])==null?void 0:d.weights,vae:(p=w[e])==null?void 0:p.vae,width:(m=w[e])==null?void 0:m.width,height:(y=w[e])==null?void 0:y.height,default:(b=w[e])==null?void 0:b.default,format:"ckpt"})}},[t,e]);const s=l=>{r(v2({...l,width:Number(l.width),height:Number(l.height)}))};return e?g.jsxs(Ee,{flexDirection:"column",rowGap:"1rem",width:"100%",children:[g.jsxs(Ee,{alignItems:"center",gap:4,justifyContent:"space-between",children:[g.jsx(Dt,{fontSize:"lg",fontWeight:"bold",children:e}),g.jsx(Fje,{model:e})]}),g.jsx(Ee,{flexDirection:"column",maxHeight:window.innerHeight-270,overflowY:"scroll",paddingRight:"2rem",children:g.jsx(E2,{enableReinitialize:!0,initialValues:o,onSubmit:s,children:({handleSubmit:l,errors:u,touched:d})=>g.jsx("form",{onSubmit:l,children:g.jsxs(hn,{rowGap:"0.5rem",alignItems:"start",children:[g.jsxs(sn,{isInvalid:!!u.description&&d.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:i("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"lg"}),u.description&&d.description?g.jsx(lr,{children:u.description}):g.jsx(sr,{margin:0,children:i("modelManager.descriptionValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.config&&d.config,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:i("modelManager.config")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"config",name:"config",type:"text",width:"lg"}),u.config&&d.config?g.jsx(lr,{children:u.config}):g.jsx(sr,{margin:0,children:i("modelManager.configValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.weights&&d.weights,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:i("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"weights",name:"weights",type:"text",width:"lg"}),u.weights&&d.weights?g.jsx(lr,{children:u.weights}):g.jsx(sr,{margin:0,children:i("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.vae&&d.vae,children:[g.jsx(Sn,{htmlFor:"vae",fontSize:"sm",children:i("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae",name:"vae",type:"text",width:"lg"}),u.vae&&d.vae?g.jsx(lr,{children:u.vae}):g.jsx(sr,{margin:0,children:i("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(l2,{width:"100%",children:[g.jsxs(sn,{isInvalid:!!u.width&&d.width,children:[g.jsx(Sn,{htmlFor:"width",fontSize:"sm",children:i("modelManager.width")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"width",name:"width",children:({field:p,form:m})=>g.jsx(lc,{id:"width",name:"width",min:mj,max:vj,step:64,value:m.values.width,onChange:y=>m.setFieldValue(p.name,Number(y))})}),u.width&&d.width?g.jsx(lr,{children:u.width}):g.jsx(sr,{margin:0,children:i("modelManager.widthValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.height&&d.height,children:[g.jsx(Sn,{htmlFor:"height",fontSize:"sm",children:i("modelManager.height")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"height",name:"height",children:({field:p,form:m})=>g.jsx(lc,{id:"height",name:"height",min:mj,max:vj,step:64,value:m.values.height,onChange:y=>m.setFieldValue(p.name,Number(y))})}),u.height&&d.height?g.jsx(lr,{children:u.height}):g.jsx(sr,{margin:0,children:i("modelManager.heightValidationMsg")})]})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:i("modelManager.updateModel")})]})})})})]}):g.jsx(Ee,{width:"100%",justifyContent:"center",alignItems:"center",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",children:g.jsx(Dt,{fontWeight:"bold",color:"var(--subtext-color-bright)",children:"Pick A Model To Edit"})})}const Hje=lt([hr],e=>{const{openModel:t,model_list:n}=e;return{model_list:n,openModel:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function Wje(){const{openModel:e,model_list:t}=le(Hje),n=le(l=>l.system.isProcessing),r=Te(),{t:i}=De(),[o,a]=S.useState({name:"",description:"",repo_id:"",path:"",vae:{repo_id:"",path:""},default:!1,format:"diffusers"});S.useEffect(()=>{var l,u,d,p,m,y,b,w,E,_,k,T,L,O,D,I;if(e){const N=Ce.pickBy(t,(W,B)=>Ce.isEqual(B,e));a({name:e,description:(l=N[e])==null?void 0:l.description,path:(u=N[e])!=null&&u.path&&((d=N[e])==null?void 0:d.path)!=="None"?(p=N[e])==null?void 0:p.path:"",repo_id:(m=N[e])!=null&&m.repo_id&&((y=N[e])==null?void 0:y.repo_id)!=="None"?(b=N[e])==null?void 0:b.repo_id:"",vae:{repo_id:(E=(w=N[e])==null?void 0:w.vae)!=null&&E.repo_id?(k=(_=N[e])==null?void 0:_.vae)==null?void 0:k.repo_id:"",path:(L=(T=N[e])==null?void 0:T.vae)!=null&&L.path?(D=(O=N[e])==null?void 0:O.vae)==null?void 0:D.path:""},default:(I=N[e])==null?void 0:I.default,format:"diffusers"})}},[t,e]);const s=l=>{const u=l;l.path===""&&delete u.path,l.repo_id===""&&delete u.repo_id,l.vae.path===""&&delete u.vae.path,l.vae.repo_id===""&&delete u.vae.repo_id,r(v2(l))};return e?g.jsxs(Ee,{flexDirection:"column",rowGap:"1rem",width:"100%",children:[g.jsx(Ee,{alignItems:"center",children:g.jsx(Dt,{fontSize:"lg",fontWeight:"bold",children:e})}),g.jsx(Ee,{flexDirection:"column",maxHeight:window.innerHeight-270,overflowY:"scroll",paddingRight:"2rem",children:g.jsx(E2,{enableReinitialize:!0,initialValues:o,onSubmit:s,children:({handleSubmit:l,errors:u,touched:d})=>{var p,m,y,b,w,E,_,k,T,L;return g.jsx("form",{onSubmit:l,children:g.jsxs(hn,{rowGap:"0.5rem",alignItems:"start",children:[g.jsxs(sn,{isInvalid:!!u.description&&d.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:i("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"lg"}),u.description&&d.description?g.jsx(lr,{children:u.description}):g.jsx(sr,{margin:0,children:i("modelManager.descriptionValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.path&&d.path,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"path",fontSize:"sm",children:i("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"path",name:"path",type:"text",width:"lg"}),u.path&&d.path?g.jsx(lr,{children:u.path}):g.jsx(sr,{margin:0,children:i("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!u.repo_id&&d.repo_id,children:[g.jsx(Sn,{htmlFor:"repo_id",fontSize:"sm",children:i("modelManager.repo_id")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"repo_id",name:"repo_id",type:"text",width:"lg"}),u.repo_id&&d.repo_id?g.jsx(lr,{children:u.repo_id}):g.jsx(sr,{margin:0,children:i("modelManager.repoIDValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!((p=u.vae)!=null&&p.path)&&((m=d.vae)==null?void 0:m.path),children:[g.jsx(Sn,{htmlFor:"vae.path",fontSize:"sm",children:i("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.path",name:"vae.path",type:"text",width:"lg"}),(y=u.vae)!=null&&y.path&&((b=d.vae)!=null&&b.path)?g.jsx(lr,{children:(w=u.vae)==null?void 0:w.path}):g.jsx(sr,{margin:0,children:i("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!((E=u.vae)!=null&&E.repo_id)&&((_=d.vae)==null?void 0:_.repo_id),children:[g.jsx(Sn,{htmlFor:"vae.repo_id",fontSize:"sm",children:i("modelManager.vaeRepoID")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.repo_id",name:"vae.repo_id",type:"text",width:"lg"}),(k=u.vae)!=null&&k.repo_id&&((T=d.vae)!=null&&T.repo_id)?g.jsx(lr,{children:(L=u.vae)==null?void 0:L.repo_id}):g.jsx(sr,{margin:0,children:i("modelManager.vaeRepoIDValidationMsg")})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:i("modelManager.updateModel")})]})})}})})]}):g.jsx(Ee,{width:"100%",justifyContent:"center",alignItems:"center",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",children:g.jsx(Dt,{fontWeight:"bold",color:"var(--subtext-color-bright)",children:"Pick A Model To Edit"})})}const CK=lt([hr],e=>{const{model_list:t}=e,n=[];return Ce.forEach(t,r=>{n.push(r.weights)}),n});function Uje(){const{t:e}=De();return g.jsx(ao,{position:"absolute",zIndex:2,right:4,top:4,fontSize:"0.7rem",fontWeight:"bold",backgroundColor:"var(--accent-color)",padding:"0.2rem 0.5rem",borderRadius:"0.2rem",alignItems:"center",children:e("modelManager.modelExists")})}function yj({model:e,modelsToAdd:t,setModelsToAdd:n}){const r=le(CK),i=o=>{t.includes(o.target.value)?n(Ce.remove(t,a=>a!==o.target.value)):n([...t,o.target.value])};return g.jsxs(ao,{position:"relative",children:[r.includes(e.location)?g.jsx(Uje,{}):null,g.jsx(Gn,{value:e.name,label:g.jsx(g.Fragment,{children:g.jsxs(hn,{alignItems:"start",children:[g.jsx("p",{style:{fontWeight:"bold"},children:e.name}),g.jsx("p",{style:{fontStyle:"italic"},children:e.location})]})}),isChecked:t.includes(e.name),isDisabled:r.includes(e.location),onChange:i,padding:"1rem",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",_checked:{backgroundColor:"var(--accent-color)",color:"var(--text-color)"},_disabled:{backgroundColor:"var(--background-color-secondary)"}})]})}function Vje(){const e=Te(),{t}=De(),n=le(T=>T.system.searchFolder),r=le(T=>T.system.foundModels),i=le(CK),o=le(T=>T.ui.shouldShowExistingModelsInSearch),a=le(T=>T.system.isProcessing),[s,l]=Ke.useState([]),[u,d]=Ke.useState("v1"),[p,m]=Ke.useState(""),y=()=>{e(NU(null)),e($U(null)),l([])},b=T=>{e(EI(T.checkpointFolder))},w=()=>{l([]),r&&r.forEach(T=>{i.includes(T.location)||l(L=>[...L,T.name])})},E=()=>{l([])},_=()=>{const T=r==null?void 0:r.filter(O=>s.includes(O.name)),L={v1:"configs/stable-diffusion/v1-inference.yaml",v2:"configs/stable-diffusion/v2-inference-v.yaml",inpainting:"configs/stable-diffusion/v1-inpainting-inference.yaml",custom:p};T==null||T.forEach(O=>{const D={name:O.name,description:"",config:L[u],weights:O.location,vae:"",width:512,height:512,default:!1,format:"ckpt"};e(v2(D))}),l([])},k=()=>{const T=[],L=[];return r&&r.forEach((O,D)=>{i.includes(O.location)?L.push(g.jsx(yj,{model:O,modelsToAdd:s,setModelsToAdd:l},D)):T.push(g.jsx(yj,{model:O,modelsToAdd:s,setModelsToAdd:l},D))}),g.jsxs(g.Fragment,{children:[T,o&&L]})};return g.jsxs(g.Fragment,{children:[n?g.jsxs(Ee,{flexDirection:"column",padding:"1rem",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",rowGap:"0.5rem",position:"relative",children:[g.jsx("p",{style:{fontWeight:"bold",fontSize:"0.8rem",backgroundColor:"var(--background-color-secondary)",padding:"0.2rem 1rem",width:"max-content",borderRadius:"0.2rem"},children:t("modelManager.checkpointFolder")}),g.jsx("p",{style:{fontWeight:"bold",fontSize:"0.8rem",maxWidth:"80%"},children:n}),g.jsx(Ye,{"aria-label":t("modelManager.scanAgain"),tooltip:t("modelManager.scanAgain"),icon:g.jsx(f4,{}),position:"absolute",right:16,fontSize:18,disabled:a,onClick:()=>e(EI(n))}),g.jsx(Ye,{"aria-label":t("modelManager.clearCheckpointFolder"),icon:g.jsx(y2,{style:{transform:"rotate(45deg)"}}),position:"absolute",right:5,onClick:y})]}):g.jsx(E2,{initialValues:{checkpointFolder:""},onSubmit:T=>{b(T)},children:({handleSubmit:T})=>g.jsx("form",{onSubmit:T,children:g.jsxs(l2,{columnGap:"0.5rem",children:[g.jsx(sn,{isRequired:!0,width:"max-content",children:g.jsx(ur,{as:qn,id:"checkpointFolder",name:"checkpointFolder",type:"text",width:"lg",size:"md",label:t("modelManager.checkpointFolder")})}),g.jsx(Ye,{icon:g.jsx(i7e,{}),"aria-label":t("modelManager.findModels"),tooltip:t("modelManager.findModels"),type:"submit",disabled:a})]})})}),r&&g.jsxs(Ee,{flexDirection:"column",rowGap:"1rem",children:[g.jsxs(Ee,{justifyContent:"space-between",alignItems:"center",children:[g.jsxs("p",{children:[t("modelManager.modelsFound"),": ",r.length]}),g.jsxs("p",{children:[t("modelManager.selected"),": ",s.length]})]}),g.jsxs(Ee,{columnGap:"0.5rem",justifyContent:"space-between",children:[g.jsxs(Ee,{columnGap:"0.5rem",children:[g.jsx(On,{isDisabled:s.length===r.length,onClick:w,children:t("modelManager.selectAll")}),g.jsx(On,{isDisabled:s.length===0,onClick:E,children:t("modelManager.deselectAll")}),g.jsx(Gn,{label:t("modelManager.showExisting"),isChecked:o,onChange:()=>e(B4e(!o))})]}),g.jsx(On,{isDisabled:s.length===0,onClick:_,backgroundColor:s.length>0?"var(--accent-color) !important":"",children:t("modelManager.addSelected")})]}),g.jsxs(Ee,{gap:4,backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",flexDirection:"column",children:[g.jsxs(Ee,{gap:4,children:[g.jsx(Dt,{fontWeight:"bold",color:"var(--text-color-secondary)",children:"Pick Model Type:"}),g.jsx(Oy,{value:u,onChange:T=>d(T),defaultValue:"v1",name:"model_type",children:g.jsxs(Ee,{gap:4,children:[g.jsx(Vo,{value:"v1",children:t("modelManager.v1")}),g.jsx(Vo,{value:"v2",children:t("modelManager.v2")}),g.jsx(Vo,{value:"inpainting",children:t("modelManager.inpainting")}),g.jsx(Vo,{value:"custom",children:t("modelManager.customConfig")})]})})]}),u==="custom"&&g.jsxs(Ee,{flexDirection:"column",rowGap:2,children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"sm",color:"var(--text-color-secondary)",children:t("modelManager.pathToCustomConfig")}),g.jsx(qn,{value:p,onChange:T=>{T.target.value!==""&&m(T.target.value)},width:"42.5rem"})]})]}),g.jsxs(Ee,{rowGap:"1rem",flexDirection:"column",maxHeight:"18rem",overflowY:"scroll",paddingRight:"1rem",paddingLeft:"0.2rem",borderRadius:"0.2rem",children:[r.length>0?s.length===0&&g.jsx(Dt,{fontWeight:"bold",fontSize:14,padding:"0.5rem",borderRadius:"0.2rem",margin:"0 0.5rem 0 1rem",textAlign:"center",backgroundColor:"var(--notice-color)",boxShadow:"0 0 200px 6px var(--notice-color)",marginTop:"1rem",width:"max-content",children:t("modelManager.selectAndAdd")}):g.jsx(Dt,{fontWeight:"bold",fontSize:14,padding:"0.5rem",borderRadius:"0.2rem",textAlign:"center",backgroundColor:"var(--status-bad-color)",children:t("modelManager.noModelsFound")}),k()]})]})]})}const bj=64,xj=2048;function Gje(){const e=Te(),{t}=De(),n=le(u=>u.system.isProcessing);function r(u){return/\s/.test(u)}function i(u){let d;return r(u)&&(d=t("modelManager.cannotUseSpaces")),d}const o={name:"",description:"",config:"configs/stable-diffusion/v1-inference.yaml",weights:"",vae:"",width:512,height:512,format:"ckpt",default:!1},a=u=>{e(v2(u)),e(Bh(null))},[s,l]=Ke.useState(!1);return g.jsxs(g.Fragment,{children:[g.jsx(Ye,{"aria-label":t("common.back"),tooltip:t("common.back"),onClick:()=>e(Bh(null)),width:"max-content",position:"absolute",zIndex:1,size:"sm",right:12,top:3,icon:g.jsx(VV,{})}),g.jsx(Vje,{}),g.jsx(Gn,{label:t("modelManager.addManually"),isChecked:s,onChange:()=>l(!s)}),s&&g.jsx(E2,{initialValues:o,onSubmit:a,children:({handleSubmit:u,errors:d,touched:p})=>g.jsx("form",{onSubmit:u,children:g.jsxs(hn,{rowGap:"0.5rem",children:[g.jsx(Dt,{fontSize:20,fontWeight:"bold",alignSelf:"start",children:t("modelManager.manual")}),g.jsxs(sn,{isInvalid:!!d.name&&p.name,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"name",fontSize:"sm",children:t("modelManager.name")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"name",name:"name",type:"text",validate:i,width:"2xl"}),d.name&&p.name?g.jsx(lr,{children:d.name}):g.jsx(sr,{margin:0,children:t("modelManager.nameValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.description&&p.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:t("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"2xl"}),d.description&&p.description?g.jsx(lr,{children:d.description}):g.jsx(sr,{margin:0,children:t("modelManager.descriptionValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.config&&p.config,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:t("modelManager.config")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"config",name:"config",type:"text",width:"2xl"}),d.config&&p.config?g.jsx(lr,{children:d.config}):g.jsx(sr,{margin:0,children:t("modelManager.configValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.weights&&p.weights,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"config",fontSize:"sm",children:t("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"weights",name:"weights",type:"text",width:"2xl"}),d.weights&&p.weights?g.jsx(lr,{children:d.weights}):g.jsx(sr,{margin:0,children:t("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.vae&&p.vae,children:[g.jsx(Sn,{htmlFor:"vae",fontSize:"sm",children:t("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae",name:"vae",type:"text",width:"2xl"}),d.vae&&p.vae?g.jsx(lr,{children:d.vae}):g.jsx(sr,{margin:0,children:t("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(l2,{width:"100%",children:[g.jsxs(sn,{isInvalid:!!d.width&&p.width,children:[g.jsx(Sn,{htmlFor:"width",fontSize:"sm",children:t("modelManager.width")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"width",name:"width",children:({field:m,form:y})=>g.jsx(lc,{id:"width",name:"width",min:bj,max:xj,step:64,width:"90%",value:y.values.width,onChange:b=>y.setFieldValue(m.name,Number(b))})}),d.width&&p.width?g.jsx(lr,{children:d.width}):g.jsx(sr,{margin:0,children:t("modelManager.widthValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!d.height&&p.height,children:[g.jsx(Sn,{htmlFor:"height",fontSize:"sm",children:t("modelManager.height")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{id:"height",name:"height",children:({field:m,form:y})=>g.jsx(lc,{id:"height",name:"height",min:bj,max:xj,width:"90%",step:64,value:y.values.height,onChange:b=>y.setFieldValue(m.name,Number(b))})}),d.height&&p.height?g.jsx(lr,{children:d.height}):g.jsx(sr,{margin:0,children:t("modelManager.heightValidationMsg")})]})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:t("modelManager.addModel")})]})})})]})}function Px({children:e}){return g.jsx(Ee,{flexDirection:"column",backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.5rem",rowGap:"1rem",width:"100%",children:e})}function qje(){const e=Te(),{t}=De(),n=le(s=>s.system.isProcessing);function r(s){return/\s/.test(s)}function i(s){let l;return r(s)&&(l=t("modelManager.cannotUseSpaces")),l}const o={name:"",description:"",repo_id:"",path:"",format:"diffusers",default:!1,vae:{repo_id:"",path:""}},a=s=>{const l=s;s.path===""&&delete l.path,s.repo_id===""&&delete l.repo_id,s.vae.path===""&&delete l.vae.path,s.vae.repo_id===""&&delete l.vae.repo_id,e(v2(l)),e(Bh(null))};return g.jsxs(Ee,{children:[g.jsx(Ye,{"aria-label":t("common.back"),tooltip:t("common.back"),onClick:()=>e(Bh(null)),width:"max-content",position:"absolute",zIndex:1,size:"sm",right:12,top:3,icon:g.jsx(VV,{})}),g.jsx(E2,{initialValues:o,onSubmit:a,children:({handleSubmit:s,errors:l,touched:u})=>{var d,p,m,y,b,w,E,_,k,T;return g.jsx("form",{onSubmit:s,children:g.jsxs(hn,{rowGap:"0.5rem",children:[g.jsx(Px,{children:g.jsxs(sn,{isInvalid:!!l.name&&u.name,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"name",fontSize:"sm",children:t("modelManager.name")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"name",name:"name",type:"text",validate:i,width:"2xl",isRequired:!0}),l.name&&u.name?g.jsx(lr,{children:l.name}):g.jsx(sr,{margin:0,children:t("modelManager.nameValidationMsg")})]})]})}),g.jsx(Px,{children:g.jsxs(sn,{isInvalid:!!l.description&&u.description,isRequired:!0,children:[g.jsx(Sn,{htmlFor:"description",fontSize:"sm",children:t("modelManager.description")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"description",name:"description",type:"text",width:"2xl",isRequired:!0}),l.description&&u.description?g.jsx(lr,{children:l.description}):g.jsx(sr,{margin:0,children:t("modelManager.descriptionValidationMsg")})]})]})}),g.jsxs(Px,{children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"sm",children:t("modelManager.formMessageDiffusersModelLocation")}),g.jsx(Dt,{fontSize:"sm",fontStyle:"italic",color:"var(--text-color-secondary)",children:t("modelManager.formMessageDiffusersModelLocationDesc")}),g.jsxs(sn,{isInvalid:!!l.path&&u.path,children:[g.jsx(Sn,{htmlFor:"path",fontSize:"sm",children:t("modelManager.modelLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"path",name:"path",type:"text",width:"2xl"}),l.path&&u.path?g.jsx(lr,{children:l.path}):g.jsx(sr,{margin:0,children:t("modelManager.modelLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!l.repo_id&&u.repo_id,children:[g.jsx(Sn,{htmlFor:"repo_id",fontSize:"sm",children:t("modelManager.repo_id")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"repo_id",name:"repo_id",type:"text",width:"2xl"}),l.repo_id&&u.repo_id?g.jsx(lr,{children:l.repo_id}):g.jsx(sr,{margin:0,children:t("modelManager.repoIDValidationMsg")})]})]})]}),g.jsxs(Px,{children:[g.jsx(Dt,{fontWeight:"bold",children:t("modelManager.formMessageDiffusersVAELocation")}),g.jsx(Dt,{fontSize:"sm",fontStyle:"italic",color:"var(--text-color-secondary)",children:t("modelManager.formMessageDiffusersVAELocationDesc")}),g.jsxs(sn,{isInvalid:!!((d=l.vae)!=null&&d.path)&&((p=u.vae)==null?void 0:p.path),children:[g.jsx(Sn,{htmlFor:"vae.path",fontSize:"sm",children:t("modelManager.vaeLocation")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.path",name:"vae.path",type:"text",width:"2xl"}),(m=l.vae)!=null&&m.path&&((y=u.vae)!=null&&y.path)?g.jsx(lr,{children:(b=l.vae)==null?void 0:b.path}):g.jsx(sr,{margin:0,children:t("modelManager.vaeLocationValidationMsg")})]})]}),g.jsxs(sn,{isInvalid:!!((w=l.vae)!=null&&w.repo_id)&&((E=u.vae)==null?void 0:E.repo_id),children:[g.jsx(Sn,{htmlFor:"vae.repo_id",fontSize:"sm",children:t("modelManager.vaeRepoID")}),g.jsxs(hn,{alignItems:"start",children:[g.jsx(ur,{as:qn,id:"vae.repo_id",name:"vae.repo_id",type:"text",width:"2xl"}),(_=l.vae)!=null&&_.repo_id&&((k=u.vae)!=null&&k.repo_id)?g.jsx(lr,{children:(T=l.vae)==null?void 0:T.repo_id}):g.jsx(sr,{margin:0,children:t("modelManager.vaeRepoIDValidationMsg")})]})]})]}),g.jsx(On,{type:"submit",className:"modal-close-btn",isLoading:n,children:t("modelManager.addModel")})]})})}})]})}function Sj({text:e,onClick:t}){return g.jsx(Ee,{position:"relative",width:"50%",height:"200px",backgroundColor:"var(--background-color)",borderRadius:"0.5rem",justifyContent:"center",alignItems:"center",_hover:{cursor:"pointer",backgroundColor:"var(--accent-color)"},onClick:t,children:g.jsx(Dt,{fontWeight:"bold",children:e})})}function Kje(){const{isOpen:e,onOpen:t,onClose:n}=Kd(),r=le(s=>s.ui.addNewModelUIOption),i=Te(),{t:o}=De(),a=()=>{n(),i(Bh(null))};return g.jsxs(g.Fragment,{children:[g.jsx(On,{"aria-label":o("modelManager.addNewModel"),tooltip:o("modelManager.addNewModel"),onClick:t,className:"modal-close-btn",size:"sm",children:g.jsxs(Ee,{columnGap:"0.5rem",alignItems:"center",children:[g.jsx(y2,{}),o("modelManager.addNew")]})}),g.jsxs(Yd,{isOpen:e,onClose:a,size:"3xl",closeOnOverlayClick:!1,children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal add-model-modal",fontFamily:"Inter",margin:"auto",children:[g.jsx(op,{children:o("modelManager.addNewModel")}),g.jsx(m0,{marginTop:"0.3rem"}),g.jsxs(Zm,{className:"add-model-modal-body",children:[r==null&&g.jsxs(Ee,{columnGap:"1rem",children:[g.jsx(Sj,{text:o("modelManager.addCheckpointModel"),onClick:()=>i(Bh("ckpt"))}),g.jsx(Sj,{text:o("modelManager.addDiffuserModel"),onClick:()=>i(Bh("diffusers"))})]}),r=="ckpt"&&g.jsx(Gje,{}),r=="diffusers"&&g.jsx(qje,{})]})]})]})]})}function Tx(e){const{isProcessing:t,isConnected:n}=le(y=>y.system),r=le(y=>y.system.openModel),{t:i}=De(),o=Te(),{name:a,status:s,description:l}=e,u=()=>{o(FV(a))},d=()=>{o(UR(a))},p=()=>{o(p_e(a)),o(UR(null))},m=()=>{switch(s){case"active":return"var(--status-good-color)";case"cached":return"var(--status-working-color)";case"not loaded":return"var(--text-color-secondary)"}};return g.jsxs(Ee,{alignItems:"center",padding:"0.5rem 0.5rem",borderRadius:"0.2rem",backgroundColor:a===r?"var(--accent-color)":"",_hover:{backgroundColor:a===r?"var(--accent-color)":"var(--background-color)"},children:[g.jsx(ao,{onClick:d,cursor:"pointer",children:g.jsx(si,{label:l,hasArrow:!0,placement:"bottom",children:g.jsx(Dt,{fontWeight:"bold",children:a})})}),g.jsx(rH,{onClick:d,cursor:"pointer"}),g.jsxs(Ee,{gap:2,alignItems:"center",children:[g.jsx(Dt,{color:m(),children:s}),g.jsx(ss,{size:"sm",onClick:u,isDisabled:s==="active"||t||!n,className:"modal-close-btn",children:i("modelManager.load")}),g.jsx(Ye,{icon:g.jsx(Uke,{}),size:"sm",onClick:d,"aria-label":"Modify Config",isDisabled:s==="active"||t||!n,className:" modal-close-btn"}),g.jsx(C4,{title:i("modelManager.deleteModel"),acceptCallback:p,acceptButtonText:i("modelManager.delete"),triggerComponent:g.jsx(Ye,{icon:g.jsx(Vke,{}),size:"sm","aria-label":i("modelManager.deleteConfig"),isDisabled:s==="active"||t||!n,className:" modal-close-btn",style:{backgroundColor:"var(--btn-delete-image)"}}),children:g.jsxs(Ee,{rowGap:"1rem",flexDirection:"column",children:[g.jsx("p",{style:{fontWeight:"bold"},children:i("modelManager.deleteMsg1")}),g.jsx("p",{style:{color:"var(--text-color-secondary"},children:i("modelManager.deleteMsg2")})]})})]})]})}function Yje(){const e=Te(),{isOpen:t,onOpen:n,onClose:r}=Kd(),i=le(Z_e),{t:o}=De(),[a,s]=S.useState(Object.keys(i)[0]),[l,u]=S.useState(Object.keys(i)[1]),[d,p]=S.useState("none"),[m,y]=S.useState(""),[b,w]=S.useState(.5),[E,_]=S.useState("weighted_sum"),[k,T]=S.useState("root"),[L,O]=S.useState(""),[D,I]=S.useState(!1),N=Object.keys(i).filter(z=>z!==l&&z!==d),W=Object.keys(i).filter(z=>z!==a&&z!==d),B=[{key:o("modelManager.none"),value:"none"},...Object.keys(i).filter(z=>z!==a&&z!==l).map(z=>({key:z,value:z}))],K=le(z=>z.system.isProcessing),ne=()=>{let z=[a,l,d];z=z.filter(V=>V!=="none");const $={models_to_merge:z,merged_model_name:m!==""?m:z.join("-"),alpha:b,interp:E,model_merge_save_path:k==="root"?null:L,force:D};e(m_e($))};return g.jsxs(g.Fragment,{children:[g.jsx(On,{onClick:n,className:"modal-close-btn",size:"sm",children:g.jsx(Ee,{columnGap:"0.5rem",alignItems:"center",children:o("modelManager.mergeModels")})}),g.jsxs(Yd,{isOpen:t,onClose:r,size:"4xl",closeOnOverlayClick:!1,children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal",fontFamily:"Inter",margin:"auto",children:[g.jsx(op,{children:o("modelManager.mergeModels")}),g.jsx(m0,{}),g.jsxs(Ee,{flexDirection:"column",padding:"1rem",rowGap:4,children:[g.jsxs(Ee,{flexDirection:"column",marginBottom:"1rem",padding:"1rem",borderRadius:"0.3rem",backgroundColor:"var(--background-color)",rowGap:1,children:[g.jsx(Dt,{children:o("modelManager.modelMergeHeaderHelp1")}),g.jsx(Dt,{fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.modelMergeHeaderHelp2")})]}),g.jsxs(Ee,{columnGap:4,children:[g.jsx(Jo,{label:o("modelManager.modelOne"),validValues:N,onChange:z=>s(z.target.value)}),g.jsx(Jo,{label:o("modelManager.modelTwo"),validValues:W,onChange:z=>u(z.target.value)}),g.jsx(Jo,{label:o("modelManager.modelThree"),validValues:B,onChange:z=>{z.target.value!=="none"?(p(z.target.value),_("add_difference")):(p("none"),_("weighted_sum"))}})]}),g.jsx(qn,{label:o("modelManager.mergedModelName"),value:m,onChange:z=>y(z.target.value)}),g.jsxs(Ee,{flexDir:"column",backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",rowGap:2,children:[g.jsx(Dn,{label:o("modelManager.alpha"),min:.01,max:.99,step:.01,value:b,onChange:z=>w(z),withInput:!0,withReset:!0,handleReset:()=>w(.5),withSliderMarks:!0,sliderMarkRightOffset:-7}),g.jsx(Dt,{fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.modelMergeAlphaHelp")})]}),g.jsxs(Ee,{columnGap:4,backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.interpolationType")}),g.jsx(Oy,{value:E,onChange:z=>_(z),children:g.jsx(Ee,{columnGap:4,children:d==="none"?g.jsxs(g.Fragment,{children:[g.jsx(Vo,{value:"weighted_sum",children:o("modelManager.weightedSum")}),g.jsx(Vo,{value:"sigmoid",children:o("modelManager.sigmoid")}),g.jsx(Vo,{value:"inv_sigmoid",children:o("modelManager.inverseSigmoid")})]}):g.jsx(Vo,{value:"add_difference",children:g.jsx(si,{label:o("modelManager.modelMergeInterpAddDifferenceHelp"),children:o("modelManager.addDifference")})})})})]}),g.jsxs(Ee,{gap:4,flexDirection:"column",backgroundColor:"var(--background-color)",padding:"1rem 1rem",borderRadius:"0.2rem",children:[g.jsxs(Ee,{columnGap:4,children:[g.jsx(Dt,{fontWeight:"bold",fontSize:"0.9rem",color:"var(--text-color-secondary)",children:o("modelManager.mergedModelSaveLocation")}),g.jsx(Oy,{value:k,onChange:z=>T(z),children:g.jsxs(Ee,{columnGap:4,children:[g.jsx(Vo,{value:"root",children:o("modelManager.invokeAIFolder")}),g.jsx(Vo,{value:"custom",children:o("modelManager.custom")})]})})]}),k==="custom"&&g.jsx(qn,{label:o("modelManager.mergedModelCustomSaveLocation"),value:L,onChange:z=>O(z.target.value)})]}),g.jsx(Gn,{label:o("modelManager.ignoreMismatch"),isChecked:D,onChange:z=>I(z.target.checked),fontWeight:"bold"}),g.jsx(On,{onClick:ne,isLoading:K,isDisabled:k==="custom"&&L==="",className:"modal modal-close-btn",children:o("modelManager.merge")})]})]})]})]})}const Xje=lt(hr,e=>Ce.map(e.model_list,(n,r)=>({name:r,...n})),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}});function h6({label:e,isActive:t,onClick:n}){return g.jsx(On,{onClick:n,isActive:t,_active:{backgroundColor:"var(--accent-color)",_hover:{backgroundColor:"var(--accent-color)"}},size:"sm",children:e})}const Zje=()=>{const e=le(Xje),[t,n]=Ke.useState(!1);Ke.useEffect(()=>{const m=setTimeout(()=>{n(!0)},200);return()=>clearTimeout(m)},[]);const[r,i]=S.useState(""),[o,a]=S.useState("all"),[s,l]=S.useTransition(),{t:u}=De(),d=m=>{l(()=>{i(m.target.value)})},p=S.useMemo(()=>{const m=[],y=[],b=[],w=[];return e.forEach((E,_)=>{E.name.toLowerCase().includes(r.toLowerCase())&&(b.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_)),E.format===o&&w.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_))),E.format!=="diffusers"?m.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_)):y.push(g.jsx(Tx,{name:E.name,status:E.status,description:E.description},_))}),r!==""?o==="all"?g.jsx(ao,{marginTop:"1rem",children:b}):g.jsx(ao,{marginTop:"1rem",children:w}):g.jsxs(Ee,{flexDirection:"column",rowGap:"1.5rem",children:[o==="all"&&g.jsxs(g.Fragment,{children:[g.jsxs(ao,{children:[g.jsx(Dt,{fontWeight:"bold",backgroundColor:"var(--background-color)",padding:"0.5rem 1rem",borderRadius:"0.5rem",margin:"1rem 0",width:"max-content",fontSize:"14",children:u("modelManager.checkpointModels")}),m]}),g.jsxs(ao,{children:[g.jsx(Dt,{fontWeight:"bold",backgroundColor:"var(--background-color)",padding:"0.5rem 1rem",borderRadius:"0.5rem",marginBottom:"0.5rem",width:"max-content",fontSize:"14",children:u("modelManager.diffusersModels")}),y]})]}),o==="ckpt"&&g.jsx(Ee,{flexDirection:"column",marginTop:"1rem",children:m}),o==="diffusers"&&g.jsx(Ee,{flexDirection:"column",marginTop:"1rem",children:y})]})},[e,r,u,o]);return g.jsxs(Ee,{flexDirection:"column",rowGap:"2rem",width:"50%",minWidth:"50%",children:[g.jsxs(Ee,{justifyContent:"space-between",children:[g.jsx(Dt,{fontSize:"1.4rem",fontWeight:"bold",children:u("modelManager.availableModels")}),g.jsxs(Ee,{gap:2,children:[g.jsx(Kje,{}),g.jsx(Yje,{})]})]}),g.jsx(qn,{onChange:d,label:u("modelManager.search")}),g.jsxs(Ee,{flexDirection:"column",gap:1,maxHeight:window.innerHeight-360,overflow:"scroll",paddingRight:"1rem",children:[g.jsxs(Ee,{columnGap:"0.5rem",children:[g.jsx(h6,{label:u("modelManager.allModels"),onClick:()=>a("all"),isActive:o==="all"}),g.jsx(h6,{label:u("modelManager.checkpointModels"),onClick:()=>a("ckpt"),isActive:o==="ckpt"}),g.jsx(h6,{label:u("modelManager.diffusersModels"),onClick:()=>a("diffusers"),isActive:o==="diffusers"})]}),t?p:g.jsx(Ee,{width:"100%",minHeight:"30rem",justifyContent:"center",alignItems:"center",children:g.jsx(p0,{})})]})]})};function Qje({children:e}){const{isOpen:t,onOpen:n,onClose:r}=Kd(),i=le(s=>s.system.model_list),o=le(s=>s.system.openModel),{t:a}=De();return g.jsxs(g.Fragment,{children:[S.cloneElement(e,{onClick:n}),g.jsxs(Yd,{isOpen:t,onClose:r,size:"6xl",children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal",fontFamily:"Inter",children:[g.jsx(m0,{className:"modal-close-btn"}),g.jsx(op,{fontWeight:"bold",children:a("modelManager.modelManager")}),g.jsxs(Ee,{padding:"0 1.5rem 1.5rem 1.5rem",width:"100%",columnGap:"2rem",children:[g.jsx(Zje,{}),o&&i[o].format==="diffusers"?g.jsx(Wje,{}):g.jsx(zje,{})]})]})]})]})}const Jje=lt([hr],e=>{const{isProcessing:t,model_list:n}=e;return{models:Ce.map(n,(i,o)=>o),isProcessing:t}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),eNe=()=>{const e=Te(),{models:t,isProcessing:n}=le(Jje),r=le(GV),i=o=>{e(FV(o.target.value))};return g.jsx(Ee,{style:{paddingLeft:"0.3rem"},children:g.jsx(Jo,{style:{fontSize:"0.8rem"},tooltip:r.description,isDisabled:n,value:r.name,validValues:t,onChange:i})})},tNe=lt([hr,fp],(e,t)=>{const{shouldDisplayInProgressType:n,shouldConfirmOnDelete:r,shouldDisplayGuides:i,model_list:o,saveIntermediatesInterval:a,enableImageDebugging:s}=e,{shouldUseCanvasBetaLayout:l,shouldUseSliders:u}=t;return{shouldDisplayInProgressType:n,shouldConfirmOnDelete:r,shouldDisplayGuides:i,models:Ce.map(o,(d,p)=>p),saveIntermediatesInterval:a,enableImageDebugging:s,shouldUseCanvasBetaLayout:l,shouldUseSliders:u}},{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),nNe=({children:e})=>{const t=Te(),{t:n}=De(),r=le(T=>T.generation.steps),{isOpen:i,onOpen:o,onClose:a}=Kd(),{isOpen:s,onOpen:l,onClose:u}=Kd(),{shouldDisplayInProgressType:d,shouldConfirmOnDelete:p,shouldDisplayGuides:m,saveIntermediatesInterval:y,enableImageDebugging:b,shouldUseCanvasBetaLayout:w,shouldUseSliders:E}=le(tNe),_=()=>{HV.purge().then(()=>{a(),l()})},k=T=>{T>r&&(T=r),T<1&&(T=1),t(E4e(T))};return g.jsxs(g.Fragment,{children:[S.cloneElement(e,{onClick:o}),g.jsxs(Yd,{isOpen:i,onClose:a,size:"lg",children:[g.jsx(oc,{}),g.jsxs(Xd,{className:"modal settings-modal",children:[g.jsx(op,{className:"settings-modal-header",children:n("common.settingsLabel")}),g.jsx(m0,{className:"modal-close-btn"}),g.jsxs(Zm,{className:"settings-modal-content",children:[g.jsxs("div",{className:"settings-modal-items",children:[g.jsxs("div",{className:"settings-modal-item",style:{gridAutoFlow:"row",rowGap:"0.5rem"},children:[g.jsx(Jo,{label:n("settings.displayInProgress"),validValues:j5e,value:d,onChange:T=>t(v4e(T.target.value))}),d==="full-res"&&g.jsx(lc,{label:n("settings.saveSteps"),min:1,max:r,step:1,onChange:k,value:y,width:"auto",textAlign:"center"})]}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.confirmOnDelete"),isChecked:p,onChange:T=>t(DU(T.target.checked))}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.displayHelpIcons"),isChecked:m,onChange:T=>t(S4e(T.target.checked))}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.useCanvasBeta"),isChecked:w,onChange:T=>t(F4e(T.target.checked))}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.useSlidersForAll"),isChecked:E,onChange:T=>t(z4e(T.target.checked))})]}),g.jsxs("div",{className:"settings-modal-items",children:[g.jsx("h2",{style:{fontWeight:"bold"},children:"Developer"}),g.jsx(_a,{styleClass:"settings-modal-item",label:n("settings.enableImageDebugging"),isChecked:b,onChange:T=>t(P4e(T.target.checked))})]}),g.jsxs("div",{className:"settings-modal-reset",children:[g.jsx(jh,{size:"md",children:n("settings.resetWebUI")}),g.jsx(ss,{colorScheme:"red",onClick:_,children:n("settings.resetWebUI")}),g.jsx(Dt,{children:n("settings.resetWebUIDesc1")}),g.jsx(Dt,{children:n("settings.resetWebUIDesc2")})]})]}),g.jsx(zw,{children:g.jsx(ss,{onClick:a,className:"modal-close-btn",children:n("common.close")})})]})]}),g.jsxs(Yd,{closeOnOverlayClick:!1,isOpen:s,onClose:u,isCentered:!0,children:[g.jsx(oc,{bg:"blackAlpha.300",backdropFilter:"blur(40px)"}),g.jsx(Xd,{children:g.jsx(Zm,{pb:6,pt:6,children:g.jsx(Ee,{justifyContent:"center",children:g.jsx(Dt,{fontSize:"lg",children:g.jsx(Dt,{children:n("settings.resetComplete")})})})})})]})]})},rNe=lt(hr,e=>({isConnected:e.isConnected,isProcessing:e.isProcessing,currentIteration:e.currentIteration,totalIterations:e.totalIterations,currentStatus:e.currentStatus,hasError:e.hasError,wasErrorSeen:e.wasErrorSeen}),{memoizeOptions:{resultEqualityCheck:Ce.isEqual}}),iNe=()=>{const{isConnected:e,isProcessing:t,currentIteration:n,totalIterations:r,currentStatus:i,hasError:o,wasErrorSeen:a}=le(rNe),s=Te(),{t:l}=De();let u;e&&!o?u="status-good":u="status-bad";let d=i;[l("common.statusGenerating"),l("common.statusPreparing"),l("common.statusSavingImage"),l("common.statusRestoringFaces"),l("common.statusUpscaling")].includes(d)&&(u="status-working"),d&&t&&r>1&&(d=`${l(d)} (${n}/${r})`);const m=o&&!a?"Click to clear, check logs for details":void 0,y=o&&!a?"pointer":"initial",b=()=>{(o||!a)&&s(jU())};return g.jsx(si,{label:m,children:g.jsx(Dt,{cursor:y,onClick:b,className:`status ${u}`,children:l(d)})})};function oNe(){const{t:e}=De(),{setColorMode:t,colorMode:n}=Qy(),r=Te(),i=le(l=>l.ui.currentTheme),o={dark:e("common.darkTheme"),light:e("common.lightTheme"),green:e("common.greenTheme")};S.useEffect(()=>{n!==i&&t(i)},[t,n,i]);const a=l=>{r(I4e(l))},s=()=>{const l=[];return Object.keys(o).forEach(u=>{l.push(g.jsx(On,{style:{width:"6rem"},leftIcon:i===u?g.jsx(jE,{}):void 0,size:"sm",onClick:()=>a(u),children:o[u]},u))}),l};return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":e("common.themeLabel"),size:"sm",variant:"link","data-variant":"link",fontSize:20,icon:g.jsx(Lke,{})}),children:g.jsx(hn,{align:"stretch",children:s()})})}function aNe(){const{t:e,i18n:t}=De(),n={ar:e("common.langArabic",{lng:"ar"}),nl:e("common.langDutch",{lng:"nl"}),en:e("common.langEnglish",{lng:"en"}),fr:e("common.langFrench",{lng:"fr"}),de:e("common.langGerman",{lng:"de"}),it:e("common.langItalian",{lng:"it"}),ja:e("common.langJapanese",{lng:"ja"}),pl:e("common.langPolish",{lng:"pl"}),pt_Br:e("common.langBrPortuguese",{lng:"pt_Br"}),ru:e("common.langRussian",{lng:"ru"}),zh_Cn:e("common.langSimplifiedChinese",{lng:"zh_Cn"}),es:e("common.langSpanish",{lng:"es"}),uk:e("common.langUkranian",{lng:"ua"})},r=()=>{const i=[];return Object.keys(n).forEach(o=>{i.push(g.jsx(On,{"data-selected":localStorage.getItem("i18nextLng")===o,onClick:()=>t.changeLanguage(o),className:"modal-close-btn lang-select-btn","aria-label":n[o],size:"sm",minWidth:"200px",children:n[o]},o))}),i};return g.jsx(Ys,{trigger:"hover",triggerComponent:g.jsx(Ye,{"aria-label":e("common.languagePickerLabel"),tooltip:e("common.languagePickerLabel"),icon:g.jsx(Pke,{}),size:"sm",variant:"link","data-variant":"link",fontSize:26}),children:g.jsx(hn,{children:r()})})}const sNe=()=>{const{t:e}=De(),t=le(n=>n.system.app_version);return g.jsxs("div",{className:"site-header",children:[g.jsxs("div",{className:"site-header-left-side",children:[g.jsx("img",{src:gq,alt:"invoke-ai-logo"}),g.jsxs(Ee,{alignItems:"center",columnGap:"0.6rem",children:[g.jsxs(Dt,{fontSize:"1.4rem",children:["invoke ",g.jsx("strong",{children:"ai"})]}),g.jsx(Dt,{fontWeight:"bold",color:"var(--text-color-secondary)",marginTop:"0.2rem",children:t})]})]}),g.jsxs("div",{className:"site-header-right-side",children:[g.jsx(iNe,{}),g.jsx(eNe,{}),g.jsx(Qje,{children:g.jsx(Ye,{"aria-label":e("modelManager.modelManager"),tooltip:e("modelManager.modelManager"),size:"sm",variant:"link","data-variant":"link",fontSize:20,icon:g.jsx(bke,{})})}),g.jsx(GAe,{children:g.jsx(Ye,{"aria-label":e("common.hotkeysLabel"),tooltip:e("common.hotkeysLabel"),size:"sm",variant:"link","data-variant":"link",fontSize:20,icon:g.jsx(Eke,{})})}),g.jsx(oNe,{}),g.jsx(aNe,{}),g.jsx(Ye,{"aria-label":e("common.reportBugLabel"),tooltip:e("common.reportBugLabel"),variant:"link","data-variant":"link",fontSize:20,size:"sm",icon:g.jsx(Nh,{isExternal:!0,href:"http://github.com/invoke-ai/InvokeAI/issues",children:g.jsx(yke,{})})}),g.jsx(Ye,{"aria-label":e("common.githubLabel"),tooltip:e("common.githubLabel"),variant:"link","data-variant":"link",fontSize:20,size:"sm",icon:g.jsx(Nh,{isExternal:!0,href:"http://github.com/invoke-ai/InvokeAI",children:g.jsx(hke,{})})}),g.jsx(Ye,{"aria-label":e("common.discordLabel"),tooltip:e("common.discordLabel"),variant:"link","data-variant":"link",fontSize:20,size:"sm",icon:g.jsx(Nh,{isExternal:!0,href:"https://discord.gg/ZmtBAhwWhy",children:g.jsx(fke,{})})}),g.jsx(nNe,{children:g.jsx(Ye,{"aria-label":e("common.settingsLabel"),tooltip:e("common.settingsLabel"),variant:"link","data-variant":"link",fontSize:22,size:"sm",icon:g.jsx(a7e,{})})})]})]})};function lNe(){async function e(n=""){return await fetch(n,{method:"GET",cache:"no-cache"})}const t=()=>{const n=document.location;e(n+"/flaskwebgui-keep-server-alive").then(i=>i)};(!{}.NODE_ENV||{}.NODE_ENV==="production")&&document.addEventListener("DOMContentLoaded",()=>{t(),setInterval(t,3e3)})}const uNe=()=>{const e=Te(),t=le(X_e),n=a2();S.useEffect(()=>{t.forEach(r=>{n(r)}),t.length>0&&e(M4e())},[e,n,t])},cNe=()=>{const e=Te(),{shouldShowGalleryButton:t,shouldPinGallery:n}=le(nP),r=()=>{e(Am(!0)),n&&e(Li(!0))};return t?g.jsx(Ye,{tooltip:"Show Gallery (G)",tooltipProps:{placement:"top"},"aria-label":"Show Gallery",styleClass:"floating-show-hide-button right show-hide-button-gallery",onClick:r,children:g.jsx(gG,{})}):null};lNe();const dNe=()=>(uNe(),g.jsxs("div",{className:"App",children:[g.jsxs(FAe,{children:[g.jsx(UAe,{}),g.jsxs("div",{className:"app-content",children:[g.jsx(sNe,{}),g.jsx(ULe,{})]}),g.jsx("div",{className:"app-console",children:g.jsx(HAe,{})})]}),g.jsx(KEe,{}),g.jsx(cNe,{})]})),wj=()=>g.jsx(Ee,{width:"100vw",height:"100vh",alignItems:"center",justifyContent:"center",children:g.jsx(p0,{thickness:"2px",speed:"1s",emptyColor:"gray.200",color:"gray.400",size:"xl"})});const fNe=Bj({key:"invokeai-style-cache",prepend:!0});rk.createRoot(document.getElementById("root")).render(g.jsx(Ke.StrictMode,{children:g.jsx(gxe,{store:zV,children:g.jsx(gW,{loading:g.jsx(wj,{}),persistor:HV,children:g.jsx(cee,{value:fNe,children:g.jsx(Ige,{children:g.jsx(Ke.Suspense,{fallback:g.jsx(wj,{}),children:g.jsx(dNe,{})})})})})})})); diff --git a/invokeai/frontend/dist/index.html b/invokeai/frontend/dist/index.html index d37f30450b..c5fbd3e4fe 100644 --- a/invokeai/frontend/dist/index.html +++ b/invokeai/frontend/dist/index.html @@ -5,7 +5,7 @@ InvokeAI - A Stable Diffusion Toolkit - + diff --git a/invokeai/frontend/dist/locales/en.json b/invokeai/frontend/dist/locales/en.json index c9a3f48c47..b074e35060 100644 --- a/invokeai/frontend/dist/locales/en.json +++ b/invokeai/frontend/dist/locales/en.json @@ -63,7 +63,8 @@ "statusConvertingModel": "Converting Model", "statusModelConverted": "Model Converted", "statusMergingModels": "Merging Models", - "statusMergedModels": "Models Merged" + "statusMergedModels": "Models Merged", + "pinOptionsPanel": "Pin Options Panel" }, "gallery": { "generations": "Generations", @@ -393,7 +394,9 @@ "modelMergeInterpAddDifferenceHelp": "In this mode, Model 3 is first subtracted from Model 2. The resulting version is blended with Model 1 with the alpha rate set above.", "inverseSigmoid": "Inverse Sigmoid", "sigmoid": "Sigmoid", - "weightedSum": "Weighted Sum" + "weightedSum": "Weighted Sum", + "none": "none", + "addDifference": "Add Difference" }, "parameters": { "general": "General", diff --git a/invokeai/frontend/dist/locales/es.json b/invokeai/frontend/dist/locales/es.json index 2eff2e1e01..5081ab0799 100644 --- a/invokeai/frontend/dist/locales/es.json +++ b/invokeai/frontend/dist/locales/es.json @@ -15,7 +15,7 @@ "langSpanish": "Español", "nodesDesc": "Un sistema de generación de imágenes basado en nodos, actualmente se encuentra en desarrollo. Mantente pendiente a nuestras actualizaciones acerca de esta fabulosa funcionalidad.", "postProcessing": "Post-procesamiento", - "postProcessDesc1": "Invoke AI ofrece una gran variedad de funciones de post-procesamiento, El aumento de tamaño y Restauración de Rostros ya se encuentran disponibles en la interfaz web, puedes acceder desde el menú de Opciones Avanzadas en las pestañas de Texto a Imagen y de Imagen a Imagen. También puedes acceder a estas funciones directamente mediante el botón de acciones en el menú superior de la imagen actual o en el visualizador", + "postProcessDesc1": "Invoke AI ofrece una gran variedad de funciones de post-procesamiento, El aumento de tamaño y Restauración de Rostros ya se encuentran disponibles en la interfaz web, puedes acceder desde el menú de Opciones Avanzadas en las pestañas de Texto a Imagen y de Imagen a Imagen. También puedes acceder a estas funciones directamente mediante el botón de acciones en el menú superior de la imagen actual o en el visualizador.", "postProcessDesc2": "Una interfaz de usuario dedicada se lanzará pronto para facilitar flujos de trabajo de postprocesamiento más avanzado.", "postProcessDesc3": "La Interfaz de Línea de Comandos de Invoke AI ofrece muchas otras características, incluyendo -Embiggen-.", "training": "Entrenamiento", @@ -44,7 +44,26 @@ "statusUpscaling": "Aumentando Tamaño", "statusUpscalingESRGAN": "Restaurando Rostros(ESRGAN)", "statusLoadingModel": "Cargando Modelo", - "statusModelChanged": "Modelo cambiado" + "statusModelChanged": "Modelo cambiado", + "statusMergedModels": "Modelos combinados", + "githubLabel": "Github", + "discordLabel": "Discord", + "langEnglish": "Inglés", + "langDutch": "Holandés", + "langFrench": "Francés", + "langGerman": "Alemán", + "langItalian": "Italiano", + "langArabic": "Árabe", + "langJapanese": "Japones", + "langPolish": "Polaco", + "langBrPortuguese": "Portugués brasileño", + "langRussian": "Ruso", + "langSimplifiedChinese": "Chino simplificado", + "langUkranian": "Ucraniano", + "back": "Atrás", + "statusConvertingModel": "Convertir el modelo", + "statusModelConverted": "Modelo adaptado", + "statusMergingModels": "Fusionar modelos" }, "gallery": { "generations": "Generaciones", @@ -284,16 +303,16 @@ "nameValidationMsg": "Introduce un nombre para tu modelo", "description": "Descripción", "descriptionValidationMsg": "Introduce una descripción para tu modelo", - "config": "Config", - "configValidationMsg": "Ruta del archivo de configuración del modelo", + "config": "Configurar", + "configValidationMsg": "Ruta del archivo de configuración del modelo.", "modelLocation": "Ubicación del Modelo", - "modelLocationValidationMsg": "Ruta del archivo de modelo", + "modelLocationValidationMsg": "Ruta del archivo de modelo.", "vaeLocation": "Ubicación VAE", - "vaeLocationValidationMsg": "Ruta del archivo VAE", + "vaeLocationValidationMsg": "Ruta del archivo VAE.", "width": "Ancho", - "widthValidationMsg": "Ancho predeterminado de tu modelo", + "widthValidationMsg": "Ancho predeterminado de tu modelo.", "height": "Alto", - "heightValidationMsg": "Alto predeterminado de tu modelo", + "heightValidationMsg": "Alto predeterminado de tu modelo.", "addModel": "Añadir Modelo", "updateModel": "Actualizar Modelo", "availableModels": "Modelos disponibles", @@ -320,7 +339,61 @@ "deleteModel": "Eliminar Modelo", "deleteConfig": "Eliminar Configuración", "deleteMsg1": "¿Estás seguro de querer eliminar esta entrada de modelo de InvokeAI?", - "deleteMsg2": "El checkpoint del modelo no se eliminará de tu disco. Puedes volver a añadirlo si lo deseas." + "deleteMsg2": "El checkpoint del modelo no se eliminará de tu disco. Puedes volver a añadirlo si lo deseas.", + "safetensorModels": "SafeTensors", + "addDiffuserModel": "Añadir difusores", + "inpainting": "v1 Repintado", + "repoIDValidationMsg": "Repositorio en línea de tu modelo", + "checkpointModels": "Puntos de control", + "convertToDiffusersHelpText4": "Este proceso se realiza una sola vez. Puede tardar entre 30 y 60 segundos dependiendo de las especificaciones de tu ordenador.", + "diffusersModels": "Difusores", + "addCheckpointModel": "Agregar modelo de punto de control/Modelo Safetensor", + "vaeRepoID": "Identificador del repositorio de VAE", + "vaeRepoIDValidationMsg": "Repositorio en línea de tú VAE", + "formMessageDiffusersModelLocation": "Difusores Modelo Ubicación", + "formMessageDiffusersModelLocationDesc": "Por favor, introduzca al menos uno.", + "formMessageDiffusersVAELocation": "Ubicación VAE", + "formMessageDiffusersVAELocationDesc": "Si no se proporciona, InvokeAI buscará el archivo VAE dentro de la ubicación del modelo indicada anteriormente.", + "convert": "Convertir", + "convertToDiffusers": "Convertir en difusores", + "convertToDiffusersHelpText1": "Este modelo se convertirá al formato 🧨 Difusores.", + "convertToDiffusersHelpText2": "Este proceso sustituirá su entrada del Gestor de Modelos por la versión de Difusores del mismo modelo.", + "convertToDiffusersHelpText3": "Su archivo de puntos de control en el disco NO será borrado ni modificado de ninguna manera. Puede volver a añadir su punto de control al Gestor de Modelos si lo desea.", + "convertToDiffusersHelpText5": "Asegúrese de que dispone de suficiente espacio en disco. Los modelos suelen variar entre 4 GB y 7 GB de tamaño.", + "convertToDiffusersHelpText6": "¿Desea transformar este modelo?", + "convertToDiffusersSaveLocation": "Guardar ubicación", + "v1": "v1", + "v2": "v2", + "statusConverting": "Adaptar", + "modelConverted": "Modelo adaptado", + "sameFolder": "La misma carpeta", + "invokeRoot": "Carpeta InvokeAI", + "custom": "Personalizado", + "customSaveLocation": "Ubicación personalizada para guardar", + "merge": "Fusión", + "modelsMerged": "Modelos fusionados", + "mergeModels": "Combinar modelos", + "modelOne": "Modelo 1", + "modelTwo": "Modelo 2", + "modelThree": "Modelo 3", + "mergedModelName": "Nombre del modelo combinado", + "alpha": "Alfa", + "interpolationType": "Tipo de interpolación", + "mergedModelSaveLocation": "Guardar ubicación", + "mergedModelCustomSaveLocation": "Ruta personalizada", + "invokeAIFolder": "Invocar carpeta de la inteligencia artificial", + "modelMergeHeaderHelp2": "Sólo se pueden fusionar difusores. Si desea fusionar un modelo de punto de control, conviértalo primero en difusores.", + "modelMergeAlphaHelp": "Alfa controla la fuerza de mezcla de los modelos. Los valores alfa más bajos reducen la influencia del segundo modelo.", + "modelMergeInterpAddDifferenceHelp": "En este modo, el Modelo 3 se sustrae primero del Modelo 2. La versión resultante se mezcla con el Modelo 1 con la tasa alfa establecida anteriormente. La versión resultante se mezcla con el Modelo 1 con la tasa alfa establecida anteriormente.", + "ignoreMismatch": "Ignorar discrepancias entre modelos seleccionados", + "modelMergeHeaderHelp1": "Puede combinar hasta tres modelos diferentes para crear una mezcla que se adapte a sus necesidades.", + "inverseSigmoid": "Sigmoideo inverso", + "weightedSum": "Modelo de suma ponderada", + "sigmoid": "Función sigmoide", + "allModels": "Todos los modelos", + "repo_id": "Identificador del repositorio", + "pathToCustomConfig": "Ruta a la configuración personalizada", + "customConfig": "Configuración personalizada" }, "parameters": { "images": "Imágenes", @@ -380,7 +453,22 @@ "info": "Información", "deleteImage": "Eliminar Imagen", "initialImage": "Imagen Inicial", - "showOptionsPanel": "Mostrar panel de opciones" + "showOptionsPanel": "Mostrar panel de opciones", + "symmetry": "Simetría", + "vSymmetryStep": "Paso de simetría V", + "hSymmetryStep": "Paso de simetría H", + "cancel": { + "immediate": "Cancelar inmediatamente", + "schedule": "Cancelar tras la iteración actual", + "isScheduled": "Cancelando", + "setType": "Tipo de cancelación" + }, + "copyImage": "Copiar la imagen", + "general": "General", + "negativePrompts": "Preguntas negativas", + "imageToImage": "Imagen a imagen", + "denoisingStrength": "Intensidad de la eliminación del ruido", + "hiresStrength": "Alta resistencia" }, "settings": { "models": "Modelos", @@ -393,7 +481,8 @@ "resetWebUI": "Restablecer interfaz web", "resetWebUIDesc1": "Al restablecer la interfaz web, solo se restablece la caché local del navegador de sus imágenes y la configuración guardada. No se elimina ninguna imagen de su disco duro.", "resetWebUIDesc2": "Si las imágenes no se muestran en la galería o algo más no funciona, intente restablecer antes de reportar un incidente en GitHub.", - "resetComplete": "La interfaz web se ha restablecido. Actualice la página para recargarla." + "resetComplete": "La interfaz web se ha restablecido. Actualice la página para recargarla.", + "useSlidersForAll": "Utilice controles deslizantes para todas las opciones" }, "toast": { "tempFoldersEmptied": "Directorio temporal vaciado", @@ -431,12 +520,12 @@ "feature": { "prompt": "Este campo tomará todo el texto de entrada, incluidos tanto los términos de contenido como los estilísticos. Si bien se pueden incluir pesos en la solicitud, los comandos/parámetros estándar de línea de comandos no funcionarán.", "gallery": "Conforme se generan nuevas invocaciones, los archivos del directorio de salida se mostrarán aquí. Las generaciones tienen opciones adicionales para configurar nuevas generaciones.", - "other": "Estas opciones habilitarán modos de procesamiento alternativos para Invoke. El modo sin costuras funciona para generar patrones repetitivos en la salida. La optimización de alta resolución realiza un ciclo de generación de dos pasos y debe usarse en resoluciones más altas cuando desee una imagen/composición más coherente.", + "other": "Estas opciones habilitarán modos de procesamiento alternativos para Invoke. 'Seamless mosaico' creará patrones repetitivos en la salida. 'Alta resolución' es la generación en dos pasos con img2img: use esta configuración cuando desee una imagen más grande y más coherente sin artefactos. tomar más tiempo de lo habitual txt2img.", "seed": "Los valores de semilla proporcionan un conjunto inicial de ruido que guían el proceso de eliminación de ruido y se pueden aleatorizar o rellenar con una semilla de una invocación anterior. La función Umbral se puede usar para mitigar resultados indeseables a valores CFG más altos (intente entre 0-10), y Perlin se puede usar para agregar ruido Perlin al proceso de eliminación de ruido. Ambos sirven para agregar variación a sus salidas.", "variations": "Pruebe una variación con una cantidad entre 0 y 1 para cambiar la imagen de salida para la semilla establecida. Se encuentran variaciones interesantes en la semilla entre 0.1 y 0.3.", "upscale": "Usando ESRGAN, puede aumentar la resolución de salida sin requerir un ancho/alto más alto en la generación inicial.", "faceCorrection": "Usando GFPGAN o Codeformer, la corrección de rostros intentará identificar rostros en las salidas y corregir cualquier defecto/anormalidad. Los valores de fuerza más altos aplicarán una presión correctiva más fuerte en las salidas, lo que resultará en rostros más atractivos. Con Codeformer, una mayor fidelidad intentará preservar la imagen original, a expensas de la fuerza de corrección de rostros.", - "imageToImage": "Imagen a Imagen permite cargar una imagen inicial, que InvokeAI usará para guiar el proceso de generación, junto con una solicitud. Un valor más bajo para esta configuración se parecerá más a la imagen original. Se aceptan valores entre 0-1, y se recomienda un rango de .25-.75.", + "imageToImage": "Imagen a Imagen permite cargar una imagen inicial, que InvokeAI usará para guiar el proceso de generación, junto con una solicitud. Un valor más bajo para esta configuración se parecerá más a la imagen original. Se aceptan valores entre 0-1, y se recomienda un rango de .25-.75", "boundingBox": "La caja delimitadora es análoga a las configuraciones de Ancho y Alto para Texto a Imagen o Imagen a Imagen. Solo se procesará el área en la caja.", "seamCorrection": "Controla el manejo de parches visibles que pueden ocurrir cuando se pega una imagen generada de nuevo en el lienzo.", "infillAndScaling": "Administra los métodos de relleno (utilizados en áreas enmascaradas o borradas del lienzo) y la escala (útil para tamaños de caja delimitadora pequeños)." diff --git a/invokeai/frontend/dist/locales/pt_BR.json b/invokeai/frontend/dist/locales/pt_BR.json index 2380f92932..fdfe2270bf 100644 --- a/invokeai/frontend/dist/locales/pt_BR.json +++ b/invokeai/frontend/dist/locales/pt_BR.json @@ -44,7 +44,26 @@ "statusUpscaling": "Redimensinando", "statusUpscalingESRGAN": "Redimensinando (ESRGAN)", "statusLoadingModel": "Carregando Modelo", - "statusModelChanged": "Modelo Alterado" + "statusModelChanged": "Modelo Alterado", + "githubLabel": "Github", + "discordLabel": "Discord", + "langArabic": "Árabe", + "langEnglish": "Inglês", + "langDutch": "Holandês", + "langFrench": "Francês", + "langGerman": "Alemão", + "langItalian": "Italiano", + "langJapanese": "Japonês", + "langPolish": "Polonês", + "langSimplifiedChinese": "Chinês", + "langUkranian": "Ucraniano", + "back": "Voltar", + "statusConvertingModel": "Convertendo Modelo", + "statusModelConverted": "Modelo Convertido", + "statusMergingModels": "Mesclando Modelos", + "statusMergedModels": "Modelos Mesclados", + "langRussian": "Russo", + "langSpanish": "Espanhol" }, "gallery": { "generations": "Gerações", @@ -237,7 +256,7 @@ "desc": "Salva a tela atual na galeria" }, "copyToClipboard": { - "title": "Copiar Para a Área de Transferência ", + "title": "Copiar para a Área de Transferência", "desc": "Copia a tela atual para a área de transferência" }, "downloadImage": { @@ -284,7 +303,7 @@ "nameValidationMsg": "Insira um nome para o seu modelo", "description": "Descrição", "descriptionValidationMsg": "Adicione uma descrição para o seu modelo", - "config": "Config", + "config": "Configuração", "configValidationMsg": "Caminho para o arquivo de configuração do seu modelo.", "modelLocation": "Localização do modelo", "modelLocationValidationMsg": "Caminho para onde seu modelo está localizado.", @@ -317,7 +336,52 @@ "deleteModel": "Excluir modelo", "deleteConfig": "Excluir Config", "deleteMsg1": "Tem certeza de que deseja excluir esta entrada do modelo de InvokeAI?", - "deleteMsg2": "Isso não vai excluir o arquivo de modelo checkpoint do seu disco. Você pode lê-los, se desejar." + "deleteMsg2": "Isso não vai excluir o arquivo de modelo checkpoint do seu disco. Você pode lê-los, se desejar.", + "checkpointModels": "Checkpoints", + "diffusersModels": "Diffusers", + "safetensorModels": "SafeTensors", + "addCheckpointModel": "Adicionar Modelo de Checkpoint/Safetensor", + "addDiffuserModel": "Adicionar Diffusers", + "repo_id": "Repo ID", + "vaeRepoID": "VAE Repo ID", + "vaeRepoIDValidationMsg": "Repositório Online do seu VAE", + "scanAgain": "Digitalize Novamente", + "selectAndAdd": "Selecione e Adicione Modelos Listados Abaixo", + "noModelsFound": "Nenhum Modelo Encontrado", + "formMessageDiffusersModelLocation": "Localização dos Modelos Diffusers", + "formMessageDiffusersModelLocationDesc": "Por favor entre com ao menos um.", + "formMessageDiffusersVAELocation": "Localização do VAE", + "formMessageDiffusersVAELocationDesc": "Se não provido, InvokeAI irá procurar pelo arquivo VAE dentro do local do modelo.", + "convertToDiffusers": "Converter para Diffusers", + "convertToDiffusersHelpText1": "Este modelo será convertido para o formato 🧨 Diffusers.", + "convertToDiffusersHelpText5": "Por favor, certifique-se de que você tenha espaço suficiente em disco. Os modelos geralmente variam entre 4GB e 7GB de tamanho.", + "convertToDiffusersHelpText6": "Você deseja converter este modelo?", + "convertToDiffusersSaveLocation": "Local para Salvar", + "v1": "v1", + "v2": "v2", + "inpainting": "v1 Inpainting", + "customConfig": "Configuração personalizada", + "pathToCustomConfig": "Caminho para configuração personalizada", + "convertToDiffusersHelpText3": "Seu arquivo de ponto de verificação no disco NÃO será excluído ou modificado de forma alguma. Você pode adicionar seu ponto de verificação ao Gerenciador de modelos novamente, se desejar.", + "convertToDiffusersHelpText4": "Este é um processo único. Pode levar cerca de 30 a 60s, dependendo das especificações do seu computador.", + "merge": "Mesclar", + "modelsMerged": "Modelos mesclados", + "mergeModels": "Mesclar modelos", + "modelOne": "Modelo 1", + "modelTwo": "Modelo 2", + "modelThree": "Modelo 3", + "statusConverting": "Convertendo", + "modelConverted": "Modelo Convertido", + "sameFolder": "Mesma pasta", + "invokeRoot": "Pasta do InvokeAI", + "custom": "Personalizado", + "customSaveLocation": "Local de salvamento personalizado", + "mergedModelName": "Nome do modelo mesclado", + "alpha": "Alpha", + "allModels": "Todos os Modelos", + "repoIDValidationMsg": "Repositório Online do seu Modelo", + "convert": "Converter", + "convertToDiffusersHelpText2": "Este processo irá substituir sua entrada de Gerenciador de Modelos por uma versão Diffusers do mesmo modelo." }, "parameters": { "images": "Imagems", @@ -442,14 +506,14 @@ "move": "Mover", "resetView": "Resetar Visualização", "mergeVisible": "Fundir Visível", - "saveToGallery": "Save To Gallery", + "saveToGallery": "Salvar na Galeria", "copyToClipboard": "Copiar para a Área de Transferência", "downloadAsImage": "Baixar Como Imagem", "undo": "Desfazer", "redo": "Refazer", "clearCanvas": "Limpar Tela", "canvasSettings": "Configurações de Tela", - "showIntermediates": "Show Intermediates", + "showIntermediates": "Mostrar Intermediários", "showGrid": "Mostrar Grade", "snapToGrid": "Encaixar na Grade", "darkenOutsideSelection": "Escurecer Seleção Externa", diff --git a/invokeai/frontend/dist/locales/ro.json b/invokeai/frontend/dist/locales/ro.json new file mode 100644 index 0000000000..0967ef424b --- /dev/null +++ b/invokeai/frontend/dist/locales/ro.json @@ -0,0 +1 @@ +{} diff --git a/invokeai/frontend/stats.html b/invokeai/frontend/stats.html index 1e7823a4ff..5a4b5b764f 100644 --- a/invokeai/frontend/stats.html +++ b/invokeai/frontend/stats.html @@ -6157,7 +6157,7 @@ var drawChart = (function (exports) { + + + + + + + + + +
+ +
+ + + + + \ No newline at end of file diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/tests/nodes/__init__.py b/tests/nodes/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/tests/nodes/test_graph_execution_state.py b/tests/nodes/test_graph_execution_state.py new file mode 100644 index 0000000000..0a5dcc7734 --- /dev/null +++ b/tests/nodes/test_graph_execution_state.py @@ -0,0 +1,114 @@ +from .test_invoker import create_edge +from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTestInvocation, PromptCollectionTestInvocation +from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext +from ldm.invoke.app.services.invocation_services import InvocationServices +from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState +from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation +from ldm.invoke.app.invocations.upscale import UpscaleInvocation +import pytest + + +@pytest.fixture +def simple_graph(): + g = Graph() + g.add_node(PromptTestInvocation(id = "1", prompt = "Banana sushi")) + g.add_node(ImageTestInvocation(id = "2")) + g.add_edge(create_edge("1", "prompt", "2", "prompt")) + return g + +@pytest.fixture +def mock_services(): + # NOTE: none of these are actually called by the test invocations + return InvocationServices(generate = None, events = None, images = None) + +def invoke_next(g: GraphExecutionState, services: InvocationServices) -> tuple[BaseInvocation, BaseInvocationOutput]: + n = g.next() + if n is None: + return (None, None) + + print(f'invoking {n.id}: {type(n)}') + o = n.invoke(InvocationContext(services, "1")) + g.complete(n.id, o) + + return (n, o) + +def test_graph_state_executes_in_order(simple_graph, mock_services): + g = GraphExecutionState(graph = simple_graph) + + n1 = invoke_next(g, mock_services) + n2 = invoke_next(g, mock_services) + n3 = g.next() + + assert g.prepared_source_mapping[n1[0].id] == "1" + assert g.prepared_source_mapping[n2[0].id] == "2" + assert n3 is None + assert g.results[n1[0].id].prompt == n1[0].prompt + assert n2[0].prompt == n1[0].prompt + +def test_graph_is_complete(simple_graph, mock_services): + g = GraphExecutionState(graph = simple_graph) + n1 = invoke_next(g, mock_services) + n2 = invoke_next(g, mock_services) + n3 = g.next() + + assert g.is_complete() + +def test_graph_is_not_complete(simple_graph, mock_services): + g = GraphExecutionState(graph = simple_graph) + n1 = invoke_next(g, mock_services) + n2 = g.next() + + assert not g.is_complete() + +# TODO: test completion with iterators/subgraphs + +def test_graph_state_expands_iterator(mock_services): + graph = Graph() + test_prompts = ["Banana sushi", "Cat sushi"] + graph.add_node(PromptCollectionTestInvocation(id = "1", collection = list(test_prompts))) + graph.add_node(IterateInvocation(id = "2")) + graph.add_node(ImageTestInvocation(id = "3")) + graph.add_edge(create_edge("1", "collection", "2", "collection")) + graph.add_edge(create_edge("2", "item", "3", "prompt")) + + g = GraphExecutionState(graph = graph) + n1 = invoke_next(g, mock_services) + n2 = invoke_next(g, mock_services) + n3 = invoke_next(g, mock_services) + n4 = invoke_next(g, mock_services) + n5 = invoke_next(g, mock_services) + + assert g.prepared_source_mapping[n1[0].id] == "1" + assert g.prepared_source_mapping[n2[0].id] == "2" + assert g.prepared_source_mapping[n3[0].id] == "2" + assert g.prepared_source_mapping[n4[0].id] == "3" + assert g.prepared_source_mapping[n5[0].id] == "3" + + assert isinstance(n4[0], ImageTestInvocation) + assert isinstance(n5[0], ImageTestInvocation) + + prompts = [n4[0].prompt, n5[0].prompt] + assert sorted(prompts) == sorted(test_prompts) + +def test_graph_state_collects(mock_services): + graph = Graph() + test_prompts = ["Banana sushi", "Cat sushi"] + graph.add_node(PromptCollectionTestInvocation(id = "1", collection = list(test_prompts))) + graph.add_node(IterateInvocation(id = "2")) + graph.add_node(PromptTestInvocation(id = "3")) + graph.add_node(CollectInvocation(id = "4")) + graph.add_edge(create_edge("1", "collection", "2", "collection")) + graph.add_edge(create_edge("2", "item", "3", "prompt")) + graph.add_edge(create_edge("3", "prompt", "4", "item")) + + g = GraphExecutionState(graph = graph) + n1 = invoke_next(g, mock_services) + n2 = invoke_next(g, mock_services) + n3 = invoke_next(g, mock_services) + n4 = invoke_next(g, mock_services) + n5 = invoke_next(g, mock_services) + n6 = invoke_next(g, mock_services) + + assert isinstance(n6[0], CollectInvocation) + + assert sorted(g.results[n6[0].id].collection) == sorted(test_prompts) diff --git a/tests/nodes/test_invoker.py b/tests/nodes/test_invoker.py new file mode 100644 index 0000000000..a6d96f61c0 --- /dev/null +++ b/tests/nodes/test_invoker.py @@ -0,0 +1,85 @@ +from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTestInvocation, PromptCollectionTestInvocation, TestEventService, create_edge, wait_until +from ldm.invoke.app.services.processor import DefaultInvocationProcessor +from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory +from ldm.invoke.app.services.invocation_queue import MemoryInvocationQueue +from ldm.invoke.app.services.invoker import Invoker, InvokerServices +from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext +from ldm.invoke.app.services.invocation_services import InvocationServices +from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState +from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation +from ldm.invoke.app.invocations.upscale import UpscaleInvocation +import pytest + + +@pytest.fixture +def simple_graph(): + g = Graph() + g.add_node(PromptTestInvocation(id = "1", prompt = "Banana sushi")) + g.add_node(ImageTestInvocation(id = "2")) + g.add_edge(create_edge("1", "prompt", "2", "prompt")) + return g + +@pytest.fixture +def mock_services() -> InvocationServices: + # NOTE: none of these are actually called by the test invocations + return InvocationServices(generate = None, events = TestEventService(), images = None) + +@pytest.fixture() +def mock_invoker_services() -> InvokerServices: + return InvokerServices( + queue = MemoryInvocationQueue(), + graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = sqlite_memory, table_name = 'graph_executions'), + processor = DefaultInvocationProcessor() + ) + +@pytest.fixture() +def mock_invoker(mock_services: InvocationServices, mock_invoker_services: InvokerServices) -> Invoker: + return Invoker( + services = mock_services, + invoker_services = mock_invoker_services + ) + +def test_can_create_graph_state(mock_invoker: Invoker): + g = mock_invoker.create_execution_state() + mock_invoker.stop() + + assert g is not None + assert isinstance(g, GraphExecutionState) + +def test_can_create_graph_state_from_graph(mock_invoker: Invoker, simple_graph): + g = mock_invoker.create_execution_state(graph = simple_graph) + mock_invoker.stop() + + assert g is not None + assert isinstance(g, GraphExecutionState) + assert g.graph == simple_graph + +def test_can_invoke(mock_invoker: Invoker, simple_graph): + g = mock_invoker.create_execution_state(graph = simple_graph) + invocation_id = mock_invoker.invoke(g) + assert invocation_id is not None + + def has_executed_any(g: GraphExecutionState): + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + return len(g.executed) > 0 + + wait_until(lambda: has_executed_any(g), timeout = 5, interval = 1) + mock_invoker.stop() + + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + assert len(g.executed) > 0 + +def test_can_invoke_all(mock_invoker: Invoker, simple_graph): + g = mock_invoker.create_execution_state(graph = simple_graph) + invocation_id = mock_invoker.invoke(g, invoke_all = True) + assert invocation_id is not None + + def has_executed_all(g: GraphExecutionState): + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + return g.is_complete() + + wait_until(lambda: has_executed_all(g), timeout = 5, interval = 1) + mock_invoker.stop() + + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + assert g.is_complete() diff --git a/tests/nodes/test_node_graph.py b/tests/nodes/test_node_graph.py new file mode 100644 index 0000000000..1b5b341192 --- /dev/null +++ b/tests/nodes/test_node_graph.py @@ -0,0 +1,501 @@ +from ldm.invoke.app.invocations.image import * + +from .test_nodes import ListPassThroughInvocation, PromptTestInvocation +from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation +from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation +from ldm.invoke.app.invocations.upscale import UpscaleInvocation +import pytest + + +# Helpers +def create_edge(from_id: str, from_field: str, to_id: str, to_field: str) -> tuple[EdgeConnection, EdgeConnection]: + return (EdgeConnection(node_id = from_id, field = from_field), EdgeConnection(node_id = to_id, field = to_field)) + +# Tests +def test_connections_are_compatible(): + from_node = TextToImageInvocation(id = "1", prompt = "Banana sushi") + from_field = "image" + to_node = UpscaleInvocation(id = "2") + to_field = "image" + + result = are_connections_compatible(from_node, from_field, to_node, to_field) + + assert result == True + +def test_connections_are_incompatible(): + from_node = TextToImageInvocation(id = "1", prompt = "Banana sushi") + from_field = "image" + to_node = UpscaleInvocation(id = "2") + to_field = "strength" + + result = are_connections_compatible(from_node, from_field, to_node, to_field) + + assert result == False + +def test_connections_incompatible_with_invalid_fields(): + from_node = TextToImageInvocation(id = "1", prompt = "Banana sushi") + from_field = "invalid_field" + to_node = UpscaleInvocation(id = "2") + to_field = "image" + + # From field is invalid + result = are_connections_compatible(from_node, from_field, to_node, to_field) + assert result == False + + # To field is invalid + from_field = "image" + to_field = "invalid_field" + + result = are_connections_compatible(from_node, from_field, to_node, to_field) + assert result == False + +def test_graph_can_add_node(): + g = Graph() + n = TextToImageInvocation(id = "1", prompt = "Banana sushi") + g.add_node(n) + + assert n.id in g.nodes + +def test_graph_fails_to_add_node_with_duplicate_id(): + g = Graph() + n = TextToImageInvocation(id = "1", prompt = "Banana sushi") + g.add_node(n) + n2 = TextToImageInvocation(id = "1", prompt = "Banana sushi the second") + + with pytest.raises(NodeAlreadyInGraphError): + g.add_node(n2) + +def test_graph_updates_node(): + g = Graph() + n = TextToImageInvocation(id = "1", prompt = "Banana sushi") + g.add_node(n) + n2 = TextToImageInvocation(id = "2", prompt = "Banana sushi the second") + g.add_node(n2) + + nu = TextToImageInvocation(id = "1", prompt = "Banana sushi updated") + + g.update_node("1", nu) + + assert g.nodes["1"].prompt == "Banana sushi updated" + +def test_graph_fails_to_update_node_if_type_changes(): + g = Graph() + n = TextToImageInvocation(id = "1", prompt = "Banana sushi") + g.add_node(n) + n2 = UpscaleInvocation(id = "2") + g.add_node(n2) + + nu = UpscaleInvocation(id = "1") + + with pytest.raises(TypeError): + g.update_node("1", nu) + +def test_graph_allows_non_conflicting_id_change(): + g = Graph() + n = TextToImageInvocation(id = "1", prompt = "Banana sushi") + g.add_node(n) + n2 = UpscaleInvocation(id = "2") + g.add_node(n2) + e1 = create_edge(n.id,"image",n2.id,"image") + g.add_edge(e1) + + nu = TextToImageInvocation(id = "3", prompt = "Banana sushi") + g.update_node("1", nu) + + with pytest.raises(NodeNotFoundError): + g.get_node("1") + + assert g.get_node("3").prompt == "Banana sushi" + + assert len(g.edges) == 1 + assert (EdgeConnection(node_id = "3", field = "image"), EdgeConnection(node_id = "2", field = "image")) in g.edges + +def test_graph_fails_to_update_node_id_if_conflict(): + g = Graph() + n = TextToImageInvocation(id = "1", prompt = "Banana sushi") + g.add_node(n) + n2 = TextToImageInvocation(id = "2", prompt = "Banana sushi the second") + g.add_node(n2) + + nu = TextToImageInvocation(id = "2", prompt = "Banana sushi") + with pytest.raises(NodeAlreadyInGraphError): + g.update_node("1", nu) + +def test_graph_adds_edge(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + e = create_edge(n1.id,"image",n2.id,"image") + + g.add_edge(e) + + assert e in g.edges + +def test_graph_fails_to_add_edge_with_cycle(): + g = Graph() + n1 = UpscaleInvocation(id = "1") + g.add_node(n1) + e = create_edge(n1.id,"image",n1.id,"image") + with pytest.raises(InvalidEdgeError): + g.add_edge(e) + +def test_graph_fails_to_add_edge_with_long_cycle(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + n3 = UpscaleInvocation(id = "3") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + e1 = create_edge(n1.id,"image",n2.id,"image") + e2 = create_edge(n2.id,"image",n3.id,"image") + e3 = create_edge(n3.id,"image",n2.id,"image") + g.add_edge(e1) + g.add_edge(e2) + with pytest.raises(InvalidEdgeError): + g.add_edge(e3) + +def test_graph_fails_to_add_edge_with_missing_node_id(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + e1 = create_edge("1","image","3","image") + e2 = create_edge("3","image","1","image") + with pytest.raises(InvalidEdgeError): + g.add_edge(e1) + with pytest.raises(InvalidEdgeError): + g.add_edge(e2) + +def test_graph_fails_to_add_edge_when_destination_exists(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + n3 = UpscaleInvocation(id = "3") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + e1 = create_edge(n1.id,"image",n2.id,"image") + e2 = create_edge(n1.id,"image",n3.id,"image") + e3 = create_edge(n2.id,"image",n3.id,"image") + g.add_edge(e1) + g.add_edge(e2) + with pytest.raises(InvalidEdgeError): + g.add_edge(e3) + + +def test_graph_fails_to_add_edge_with_mismatched_types(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + e1 = create_edge("1","image","2","strength") + with pytest.raises(InvalidEdgeError): + g.add_edge(e1) + +def test_graph_connects_collector(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = TextToImageInvocation(id = "2", prompt = "Banana sushi 2") + n3 = CollectInvocation(id = "3") + n4 = ListPassThroughInvocation(id = "4") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + g.add_node(n4) + + e1 = create_edge("1","image","3","item") + e2 = create_edge("2","image","3","item") + e3 = create_edge("3","collection","4","collection") + g.add_edge(e1) + g.add_edge(e2) + g.add_edge(e3) + +# TODO: test that derived types mixed with base types are compatible + +def test_graph_collector_invalid_with_varying_input_types(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = PromptTestInvocation(id = "2", prompt = "banana sushi 2") + n3 = CollectInvocation(id = "3") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + + e1 = create_edge("1","image","3","item") + e2 = create_edge("2","prompt","3","item") + g.add_edge(e1) + + with pytest.raises(InvalidEdgeError): + g.add_edge(e2) + +def test_graph_collector_invalid_with_varying_input_output(): + g = Graph() + n1 = PromptTestInvocation(id = "1", prompt = "Banana sushi") + n2 = PromptTestInvocation(id = "2", prompt = "Banana sushi 2") + n3 = CollectInvocation(id = "3") + n4 = ListPassThroughInvocation(id = "4") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + g.add_node(n4) + + e1 = create_edge("1","prompt","3","item") + e2 = create_edge("2","prompt","3","item") + e3 = create_edge("3","collection","4","collection") + g.add_edge(e1) + g.add_edge(e2) + + with pytest.raises(InvalidEdgeError): + g.add_edge(e3) + +def test_graph_collector_invalid_with_non_list_output(): + g = Graph() + n1 = PromptTestInvocation(id = "1", prompt = "Banana sushi") + n2 = PromptTestInvocation(id = "2", prompt = "Banana sushi 2") + n3 = CollectInvocation(id = "3") + n4 = PromptTestInvocation(id = "4") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + g.add_node(n4) + + e1 = create_edge("1","prompt","3","item") + e2 = create_edge("2","prompt","3","item") + e3 = create_edge("3","collection","4","prompt") + g.add_edge(e1) + g.add_edge(e2) + + with pytest.raises(InvalidEdgeError): + g.add_edge(e3) + +def test_graph_connects_iterator(): + g = Graph() + n1 = ListPassThroughInvocation(id = "1") + n2 = IterateInvocation(id = "2") + n3 = ImageToImageInvocation(id = "3", prompt = "Banana sushi") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + + e1 = create_edge("1","collection","2","collection") + e2 = create_edge("2","item","3","image") + g.add_edge(e1) + g.add_edge(e2) + +# TODO: TEST INVALID ITERATOR SCENARIOS + +def test_graph_iterator_invalid_if_multiple_inputs(): + g = Graph() + n1 = ListPassThroughInvocation(id = "1") + n2 = IterateInvocation(id = "2") + n3 = ImageToImageInvocation(id = "3", prompt = "Banana sushi") + n4 = ListPassThroughInvocation(id = "4") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + g.add_node(n4) + + e1 = create_edge("1","collection","2","collection") + e2 = create_edge("2","item","3","image") + e3 = create_edge("4","collection","2","collection") + g.add_edge(e1) + g.add_edge(e2) + + with pytest.raises(InvalidEdgeError): + g.add_edge(e3) + +def test_graph_iterator_invalid_if_input_not_list(): + g = Graph() + n1 = TextToImageInvocation(id = "1", promopt = "Banana sushi") + n2 = IterateInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + + e1 = create_edge("1","collection","2","collection") + + with pytest.raises(InvalidEdgeError): + g.add_edge(e1) + +def test_graph_iterator_invalid_if_output_and_input_types_different(): + g = Graph() + n1 = ListPassThroughInvocation(id = "1") + n2 = IterateInvocation(id = "2") + n3 = PromptTestInvocation(id = "3", prompt = "Banana sushi") + g.add_node(n1) + g.add_node(n2) + g.add_node(n3) + + e1 = create_edge("1","collection","2","collection") + e2 = create_edge("2","item","3","prompt") + g.add_edge(e1) + + with pytest.raises(InvalidEdgeError): + g.add_edge(e2) + +def test_graph_validates(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + e1 = create_edge("1","image","2","image") + g.add_edge(e1) + + assert g.is_valid() == True + +def test_graph_invalid_if_edges_reference_missing_nodes(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + g.nodes[n1.id] = n1 + e1 = create_edge("1","image","2","image") + g.edges.append(e1) + + assert g.is_valid() == False + +def test_graph_invalid_if_subgraph_invalid(): + g = Graph() + n1 = GraphInvocation(id = "1") + n1.graph = Graph() + + n1_1 = TextToImageInvocation(id = "2", prompt = "Banana sushi") + n1.graph.nodes[n1_1.id] = n1_1 + e1 = create_edge("1","image","2","image") + n1.graph.edges.append(e1) + + g.nodes[n1.id] = n1 + + assert g.is_valid() == False + +def test_graph_invalid_if_has_cycle(): + g = Graph() + n1 = UpscaleInvocation(id = "1") + n2 = UpscaleInvocation(id = "2") + g.nodes[n1.id] = n1 + g.nodes[n2.id] = n2 + e1 = create_edge("1","image","2","image") + e2 = create_edge("2","image","1","image") + g.edges.append(e1) + g.edges.append(e2) + + assert g.is_valid() == False + +def test_graph_invalid_with_invalid_connection(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.nodes[n1.id] = n1 + g.nodes[n2.id] = n2 + e1 = create_edge("1","image","2","strength") + g.edges.append(e1) + + assert g.is_valid() == False + + +# TODO: Subgraph operations +def test_graph_gets_subgraph_node(): + g = Graph() + n1 = GraphInvocation(id = "1") + n1.graph = Graph() + n1.graph.add_node + + n1_1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n1.graph.add_node(n1_1) + + g.add_node(n1) + + result = g.get_node('1.1') + + assert result is not None + assert result.id == '1' + assert result == n1_1 + +def test_graph_fails_to_get_missing_subgraph_node(): + g = Graph() + n1 = GraphInvocation(id = "1") + n1.graph = Graph() + n1.graph.add_node + + n1_1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n1.graph.add_node(n1_1) + + g.add_node(n1) + + with pytest.raises(NodeNotFoundError): + result = g.get_node('1.2') + +def test_graph_fails_to_enumerate_non_subgraph_node(): + g = Graph() + n1 = GraphInvocation(id = "1") + n1.graph = Graph() + n1.graph.add_node + + n1_1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n1.graph.add_node(n1_1) + + g.add_node(n1) + + n2 = UpscaleInvocation(id = "2") + g.add_node(n2) + + with pytest.raises(NodeNotFoundError): + result = g.get_node('2.1') + +def test_graph_gets_networkx_graph(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + e = create_edge(n1.id,"image",n2.id,"image") + g.add_edge(e) + + nxg = g.nx_graph() + + assert '1' in nxg.nodes + assert '2' in nxg.nodes + assert ('1','2') in nxg.edges + + +# TODO: Graph serializes and deserializes +def test_graph_can_serialize(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + e = create_edge(n1.id,"image",n2.id,"image") + g.add_edge(e) + + # Not throwing on this line is sufficient + json = g.json() + +def test_graph_can_deserialize(): + g = Graph() + n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") + n2 = UpscaleInvocation(id = "2") + g.add_node(n1) + g.add_node(n2) + e = create_edge(n1.id,"image",n2.id,"image") + g.add_edge(e) + + json = g.json() + g2 = Graph.parse_raw(json) + + assert g2 is not None + assert g2.nodes['1'] is not None + assert g2.nodes['2'] is not None + assert len(g2.edges) == 1 + assert g2.edges[0][0].node_id == '1' + assert g2.edges[0][0].field == 'image' + assert g2.edges[0][1].node_id == '2' + assert g2.edges[0][1].field == 'image' + +def test_graph_can_generate_schema(): + # Not throwing on this line is sufficient + # NOTE: if this test fails, it's PROBABLY because a new invocation type is breaking schema generation + schema = Graph.schema_json(indent = 2) diff --git a/tests/nodes/test_nodes.py b/tests/nodes/test_nodes.py new file mode 100644 index 0000000000..fea2e75e95 --- /dev/null +++ b/tests/nodes/test_nodes.py @@ -0,0 +1,92 @@ +from typing import Any, Callable, Literal +from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext +from ldm.invoke.app.invocations.image import ImageField +from ldm.invoke.app.services.invocation_services import InvocationServices +from pydantic import Field +import pytest + +# Define test invocations before importing anything that uses invocations +class ListPassThroughInvocationOutput(BaseInvocationOutput): + type: Literal['test_list_output'] = 'test_list_output' + + collection: list[ImageField] = Field(default_factory=list) + +class ListPassThroughInvocation(BaseInvocation): + type: Literal['test_list'] = 'test_list' + + collection: list[ImageField] = Field(default_factory=list) + + def invoke(self, context: InvocationContext) -> ListPassThroughInvocationOutput: + return ListPassThroughInvocationOutput(collection = self.collection) + +class PromptTestInvocationOutput(BaseInvocationOutput): + type: Literal['test_prompt_output'] = 'test_prompt_output' + + prompt: str = Field(default = "") + +class PromptTestInvocation(BaseInvocation): + type: Literal['test_prompt'] = 'test_prompt' + + prompt: str = Field(default = "") + + def invoke(self, context: InvocationContext) -> PromptTestInvocationOutput: + return PromptTestInvocationOutput(prompt = self.prompt) + +class ImageTestInvocationOutput(BaseInvocationOutput): + type: Literal['test_image_output'] = 'test_image_output' + + image: ImageField = Field() + +class ImageTestInvocation(BaseInvocation): + type: Literal['test_image'] = 'test_image' + + prompt: str = Field(default = "") + + def invoke(self, context: InvocationContext) -> ImageTestInvocationOutput: + return ImageTestInvocationOutput(image=ImageField(image_name=self.id)) + +class PromptCollectionTestInvocationOutput(BaseInvocationOutput): + type: Literal['test_prompt_collection_output'] = 'test_prompt_collection_output' + collection: list[str] = Field(default_factory=list) + +class PromptCollectionTestInvocation(BaseInvocation): + type: Literal['test_prompt_collection'] = 'test_prompt_collection' + collection: list[str] = Field() + + def invoke(self, context: InvocationContext) -> PromptCollectionTestInvocationOutput: + return PromptCollectionTestInvocationOutput(collection=self.collection.copy()) + + +from ldm.invoke.app.services.events import EventServiceBase +from ldm.invoke.app.services.graph import EdgeConnection + +def create_edge(from_id: str, from_field: str, to_id: str, to_field: str) -> tuple[EdgeConnection, EdgeConnection]: + return (EdgeConnection(node_id = from_id, field = from_field), EdgeConnection(node_id = to_id, field = to_field)) + + +class TestEvent: + event_name: str + payload: Any + + def __init__(self, event_name: str, payload: Any): + self.event_name = event_name + self.payload = payload + +class TestEventService(EventServiceBase): + events: list + + def __init__(self): + super().__init__() + self.events = list() + + def dispatch(self, event_name: str, payload: Any) -> None: + pass + +def wait_until(condition: Callable[[], bool], timeout: int = 10, interval: float = 0.1) -> None: + import time + start_time = time.time() + while time.time() - start_time < timeout: + if condition(): + return + time.sleep(interval) + raise TimeoutError("Condition not met") \ No newline at end of file diff --git a/tests/nodes/test_sqlite.py b/tests/nodes/test_sqlite.py new file mode 100644 index 0000000000..e499bbce12 --- /dev/null +++ b/tests/nodes/test_sqlite.py @@ -0,0 +1,112 @@ +from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory +from pydantic import BaseModel, Field + + +class TestModel(BaseModel): + id: str = Field(description = "ID") + name: str = Field(description = "Name") + + +def test_sqlite_service_can_create_and_get(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + assert db.get('1') == TestModel(id = '1', name = 'Test') + +def test_sqlite_service_can_list(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + db.set(TestModel(id = '2', name = 'Test')) + db.set(TestModel(id = '3', name = 'Test')) + results = db.list() + assert results.page == 0 + assert results.pages == 1 + assert results.per_page == 10 + assert results.total == 3 + assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test'), TestModel(id = '3', name = 'Test')] + +def test_sqlite_service_can_delete(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + db.delete('1') + assert db.get('1') is None + +def test_sqlite_service_calls_set_callback(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + called = False + def on_changed(item: TestModel): + nonlocal called + called = True + db.on_changed(on_changed) + db.set(TestModel(id = '1', name = 'Test')) + assert called + +def test_sqlite_service_calls_delete_callback(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + called = False + def on_deleted(item_id: str): + nonlocal called + called = True + db.on_deleted(on_deleted) + db.set(TestModel(id = '1', name = 'Test')) + db.delete('1') + assert called + +def test_sqlite_service_can_list_with_pagination(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + db.set(TestModel(id = '2', name = 'Test')) + db.set(TestModel(id = '3', name = 'Test')) + results = db.list(page = 0, per_page = 2) + assert results.page == 0 + assert results.pages == 2 + assert results.per_page == 2 + assert results.total == 3 + assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test')] + +def test_sqlite_service_can_list_with_pagination_and_offset(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + db.set(TestModel(id = '2', name = 'Test')) + db.set(TestModel(id = '3', name = 'Test')) + results = db.list(page = 1, per_page = 2) + assert results.page == 1 + assert results.pages == 2 + assert results.per_page == 2 + assert results.total == 3 + assert results.items == [TestModel(id = '3', name = 'Test')] + +def test_sqlite_service_can_search(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + db.set(TestModel(id = '2', name = 'Test')) + db.set(TestModel(id = '3', name = 'Test')) + results = db.search(query = 'Test') + assert results.page == 0 + assert results.pages == 1 + assert results.per_page == 10 + assert results.total == 3 + assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test'), TestModel(id = '3', name = 'Test')] + +def test_sqlite_service_can_search_with_pagination(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + db.set(TestModel(id = '2', name = 'Test')) + db.set(TestModel(id = '3', name = 'Test')) + results = db.search(query = 'Test', page = 0, per_page = 2) + assert results.page == 0 + assert results.pages == 2 + assert results.per_page == 2 + assert results.total == 3 + assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test')] + +def test_sqlite_service_can_search_with_pagination_and_offset(): + db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') + db.set(TestModel(id = '1', name = 'Test')) + db.set(TestModel(id = '2', name = 'Test')) + db.set(TestModel(id = '3', name = 'Test')) + results = db.search(query = 'Test', page = 1, per_page = 2) + assert results.page == 1 + assert results.pages == 2 + assert results.per_page == 2 + assert results.total == 3 + assert results.items == [TestModel(id = '3', name = 'Test')] From 81fd2ee8c19f69d9ce0693810bfd52ec53a3f4ec Mon Sep 17 00:00:00 2001 From: Kyle Schouviller Date: Fri, 24 Feb 2023 20:11:28 -0800 Subject: [PATCH 71/81] [nodes] Removed InvokerServices, simplying service model --- ldm/invoke/app/api/dependencies.py | 19 ++++------ ldm/invoke/app/api/routers/sessions.py | 28 +++++++------- ldm/invoke/app/cli_app.py | 25 ++++++------- .../app/services/invocation_services.py | 15 +++++++- ldm/invoke/app/services/invoker.py | 37 +++++-------------- ldm/invoke/app/services/processor.py | 6 +-- tests/nodes/test_graph_execution_state.py | 14 +++++-- tests/nodes/test_invoker.py | 26 ++++++------- 8 files changed, 81 insertions(+), 89 deletions(-) diff --git a/ldm/invoke/app/api/dependencies.py b/ldm/invoke/app/api/dependencies.py index 60dd522803..08f362133e 100644 --- a/ldm/invoke/app/api/dependencies.py +++ b/ldm/invoke/app/api/dependencies.py @@ -13,7 +13,7 @@ from ...globals import Globals from ..services.image_storage import DiskImageStorage from ..services.invocation_queue import MemoryInvocationQueue from ..services.invocation_services import InvocationServices -from ..services.invoker import Invoker, InvokerServices +from ..services.invoker import Invoker from ..services.generate_initializer import get_generate from .events import FastAPIEventService @@ -60,22 +60,19 @@ class ApiDependencies: images = DiskImageStorage(output_folder) - services = InvocationServices( - generate = generate, - events = events, - images = images - ) - # TODO: build a file/path manager? db_location = os.path.join(output_folder, 'invokeai.db') - invoker_services = InvokerServices( - queue = MemoryInvocationQueue(), + services = InvocationServices( + generate = generate, + events = events, + images = images, + queue = MemoryInvocationQueue(), graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = db_location, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() + processor = DefaultInvocationProcessor() ) - ApiDependencies.invoker = Invoker(services, invoker_services) + ApiDependencies.invoker = Invoker(services) @staticmethod def shutdown(): diff --git a/ldm/invoke/app/api/routers/sessions.py b/ldm/invoke/app/api/routers/sessions.py index 77008ad6e4..beb13736c6 100644 --- a/ldm/invoke/app/api/routers/sessions.py +++ b/ldm/invoke/app/api/routers/sessions.py @@ -44,9 +44,9 @@ async def list_sessions( ) -> PaginatedResults[GraphExecutionState]: """Gets a list of sessions, optionally searching""" if filter == '': - result = ApiDependencies.invoker.invoker_services.graph_execution_manager.list(page, per_page) + result = ApiDependencies.invoker.services.graph_execution_manager.list(page, per_page) else: - result = ApiDependencies.invoker.invoker_services.graph_execution_manager.search(query, page, per_page) + result = ApiDependencies.invoker.services.graph_execution_manager.search(query, page, per_page) return result @@ -60,7 +60,7 @@ async def get_session( session_id: str = Path(description = "The id of the session to get") ) -> GraphExecutionState: """Gets a session""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) else: @@ -80,13 +80,13 @@ async def add_node( node: Annotated[Union[BaseInvocation.get_invocations()], Field(discriminator="type")] = Body(description = "The node to add") ) -> str: """Adds a node to the graph""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.add_node(node) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session.id except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -108,13 +108,13 @@ async def update_node( node: Annotated[Union[BaseInvocation.get_invocations()], Field(discriminator="type")] = Body(description = "The new node") ) -> GraphExecutionState: """Updates a node in the graph and removes all linked edges""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.update_node(node_path, node) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -135,13 +135,13 @@ async def delete_node( node_path: str = Path(description = "The path to the node to delete") ) -> GraphExecutionState: """Deletes a node in the graph and removes all linked edges""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.delete_node(node_path) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -162,13 +162,13 @@ async def add_edge( edge: tuple[EdgeConnection, EdgeConnection] = Body(description = "The edge to add") ) -> GraphExecutionState: """Adds an edge to the graph""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.add_edge(edge) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -193,14 +193,14 @@ async def delete_edge( to_field: str = Path(description = "The field of the node the edge is going to") ) -> GraphExecutionState: """Deletes an edge from the graph""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: edge = (EdgeConnection(node_id = from_node_id, field = from_field), EdgeConnection(node_id = to_node_id, field = to_field)) session.delete_edge(edge) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -221,7 +221,7 @@ async def invoke_session( all: bool = Query(default = False, description = "Whether or not to invoke all remaining invocations") ) -> None: """Invokes a session""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) diff --git a/ldm/invoke/app/cli_app.py b/ldm/invoke/app/cli_app.py index 6071afabb2..9081f3b083 100644 --- a/ldm/invoke/app/cli_app.py +++ b/ldm/invoke/app/cli_app.py @@ -20,7 +20,7 @@ from .services.image_storage import DiskImageStorage from .services.invocation_queue import MemoryInvocationQueue from .invocations.baseinvocation import BaseInvocation from .services.invocation_services import InvocationServices -from .services.invoker import Invoker, InvokerServices +from .services.invoker import Invoker from .invocations import * from ..args import Args from .services.events import EventServiceBase @@ -171,28 +171,25 @@ def invoke_cli(): output_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), '../../../outputs')) - services = InvocationServices( - generate = generate, - events = events, - images = DiskImageStorage(output_folder) - ) - # TODO: build a file/path manager? db_location = os.path.join(output_folder, 'invokeai.db') - invoker_services = InvokerServices( - queue = MemoryInvocationQueue(), + services = InvocationServices( + generate = generate, + events = events, + images = DiskImageStorage(output_folder), + queue = MemoryInvocationQueue(), graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = db_location, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() + processor = DefaultInvocationProcessor() ) - invoker = Invoker(services, invoker_services) + invoker = Invoker(services) session = invoker.create_execution_state() parser = get_invocation_parser() # Uncomment to print out previous sessions at startup - # print(invoker_services.session_manager.list()) + # print(services.session_manager.list()) # Defaults storage defaults: Dict[str, Any] = dict() @@ -213,7 +210,7 @@ def invoke_cli(): try: # Refresh the state of the session - session = invoker.invoker_services.graph_execution_manager.get(session.id) + session = invoker.services.graph_execution_manager.get(session.id) history = list(get_graph_execution_history(session)) # Split the command for piping @@ -289,7 +286,7 @@ def invoke_cli(): invoker.invoke(session, invoke_all = True) while not session.is_complete(): # Wait some time - session = invoker.invoker_services.graph_execution_manager.get(session.id) + session = invoker.services.graph_execution_manager.get(session.id) time.sleep(0.1) except InvalidArgs: diff --git a/ldm/invoke/app/services/invocation_services.py b/ldm/invoke/app/services/invocation_services.py index 9eb5309d3d..40a64e64e5 100644 --- a/ldm/invoke/app/services/invocation_services.py +++ b/ldm/invoke/app/services/invocation_services.py @@ -1,4 +1,6 @@ # Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) +from .invocation_queue import InvocationQueueABC +from .item_storage import ItemStorageABC from .image_storage import ImageStorageBase from .events import EventServiceBase from ....generate import Generate @@ -9,12 +11,23 @@ class InvocationServices(): generate: Generate # TODO: wrap Generate, or split it up from model? events: EventServiceBase images: ImageStorageBase + queue: InvocationQueueABC + + # NOTE: we must forward-declare any types that include invocations, since invocations can use services + graph_execution_manager: ItemStorageABC['GraphExecutionState'] + processor: 'InvocationProcessorABC' def __init__(self, generate: Generate, events: EventServiceBase, - images: ImageStorageBase + images: ImageStorageBase, + queue: InvocationQueueABC, + graph_execution_manager: ItemStorageABC['GraphExecutionState'], + processor: 'InvocationProcessorABC' ): self.generate = generate self.events = events self.images = images + self.queue = queue + self.graph_execution_manager = graph_execution_manager + self.processor = processor diff --git a/ldm/invoke/app/services/invoker.py b/ldm/invoke/app/services/invoker.py index 796f541781..4397a75021 100644 --- a/ldm/invoke/app/services/invoker.py +++ b/ldm/invoke/app/services/invoker.py @@ -9,34 +9,15 @@ from .invocation_services import InvocationServices from .invocation_queue import InvocationQueueABC, InvocationQueueItem -class InvokerServices: - """Services used by the Invoker for execution""" - - queue: InvocationQueueABC - graph_execution_manager: ItemStorageABC[GraphExecutionState] - processor: 'InvocationProcessorABC' - - def __init__(self, - queue: InvocationQueueABC, - graph_execution_manager: ItemStorageABC[GraphExecutionState], - processor: 'InvocationProcessorABC'): - self.queue = queue - self.graph_execution_manager = graph_execution_manager - self.processor = processor - - class Invoker: """The invoker, used to execute invocations""" services: InvocationServices - invoker_services: InvokerServices def __init__(self, - services: InvocationServices, # Services used by nodes to perform invocations - invoker_services: InvokerServices # Services used by the invoker for orchestration + services: InvocationServices ): self.services = services - self.invoker_services = invoker_services self._start() @@ -49,11 +30,11 @@ class Invoker: return None # Save the execution state - self.invoker_services.graph_execution_manager.set(graph_execution_state) + self.services.graph_execution_manager.set(graph_execution_state) # Queue the invocation print(f'queueing item {invocation.id}') - self.invoker_services.queue.put(InvocationQueueItem( + self.services.queue.put(InvocationQueueItem( #session_id = session.id, graph_execution_state_id = graph_execution_state.id, invocation_id = invocation.id, @@ -66,7 +47,7 @@ class Invoker: def create_execution_state(self, graph: Graph|None = None) -> GraphExecutionState: """Creates a new execution state for the given graph""" new_state = GraphExecutionState(graph = Graph() if graph is None else graph) - self.invoker_services.graph_execution_manager.set(new_state) + self.services.graph_execution_manager.set(new_state) return new_state @@ -86,8 +67,8 @@ class Invoker: def _start(self) -> None: """Starts the invoker. This is called automatically when the invoker is created.""" - for service in vars(self.invoker_services): - self.__start_service(getattr(self.invoker_services, service)) + for service in vars(self.services): + self.__start_service(getattr(self.services, service)) for service in vars(self.services): self.__start_service(getattr(self.services, service)) @@ -99,10 +80,10 @@ class Invoker: for service in vars(self.services): self.__stop_service(getattr(self.services, service)) - for service in vars(self.invoker_services): - self.__stop_service(getattr(self.invoker_services, service)) + for service in vars(self.services): + self.__stop_service(getattr(self.services, service)) - self.invoker_services.queue.put(None) + self.services.queue.put(None) class InvocationProcessorABC(ABC): diff --git a/ldm/invoke/app/services/processor.py b/ldm/invoke/app/services/processor.py index 9b51a6bcbc..9ea4349bbf 100644 --- a/ldm/invoke/app/services/processor.py +++ b/ldm/invoke/app/services/processor.py @@ -28,11 +28,11 @@ class DefaultInvocationProcessor(InvocationProcessorABC): def __process(self, stop_event: Event): try: while not stop_event.is_set(): - queue_item: InvocationQueueItem = self.__invoker.invoker_services.queue.get() + queue_item: InvocationQueueItem = self.__invoker.services.queue.get() if not queue_item: # Probably stopping continue - graph_execution_state = self.__invoker.invoker_services.graph_execution_manager.get(queue_item.graph_execution_state_id) + graph_execution_state = self.__invoker.services.graph_execution_manager.get(queue_item.graph_execution_state_id) invocation = graph_execution_state.execution_graph.get_node(queue_item.invocation_id) # Send starting event @@ -52,7 +52,7 @@ class DefaultInvocationProcessor(InvocationProcessorABC): graph_execution_state.complete(invocation.id, outputs) # Save the state changes - self.__invoker.invoker_services.graph_execution_manager.set(graph_execution_state) + self.__invoker.services.graph_execution_manager.set(graph_execution_state) # Send complete event self.__invoker.services.events.emit_invocation_complete( diff --git a/tests/nodes/test_graph_execution_state.py b/tests/nodes/test_graph_execution_state.py index 0a5dcc7734..980c262501 100644 --- a/tests/nodes/test_graph_execution_state.py +++ b/tests/nodes/test_graph_execution_state.py @@ -1,10 +1,11 @@ from .test_invoker import create_edge from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTestInvocation, PromptCollectionTestInvocation from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext +from ldm.invoke.app.services.processor import DefaultInvocationProcessor +from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory +from ldm.invoke.app.services.invocation_queue import MemoryInvocationQueue from ldm.invoke.app.services.invocation_services import InvocationServices from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState -from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation -from ldm.invoke.app.invocations.upscale import UpscaleInvocation import pytest @@ -19,7 +20,14 @@ def simple_graph(): @pytest.fixture def mock_services(): # NOTE: none of these are actually called by the test invocations - return InvocationServices(generate = None, events = None, images = None) + return InvocationServices( + generate = None, + events = None, + images = None, + queue = MemoryInvocationQueue(), + graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = sqlite_memory, table_name = 'graph_executions'), + processor = DefaultInvocationProcessor() + ) def invoke_next(g: GraphExecutionState, services: InvocationServices) -> tuple[BaseInvocation, BaseInvocationOutput]: n = g.next() diff --git a/tests/nodes/test_invoker.py b/tests/nodes/test_invoker.py index a6d96f61c0..e9109728d5 100644 --- a/tests/nodes/test_invoker.py +++ b/tests/nodes/test_invoker.py @@ -2,12 +2,10 @@ from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTe from ldm.invoke.app.services.processor import DefaultInvocationProcessor from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory from ldm.invoke.app.services.invocation_queue import MemoryInvocationQueue -from ldm.invoke.app.services.invoker import Invoker, InvokerServices +from ldm.invoke.app.services.invoker import Invoker from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext from ldm.invoke.app.services.invocation_services import InvocationServices from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState -from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation -from ldm.invoke.app.invocations.upscale import UpscaleInvocation import pytest @@ -22,21 +20,19 @@ def simple_graph(): @pytest.fixture def mock_services() -> InvocationServices: # NOTE: none of these are actually called by the test invocations - return InvocationServices(generate = None, events = TestEventService(), images = None) - -@pytest.fixture() -def mock_invoker_services() -> InvokerServices: - return InvokerServices( + return InvocationServices( + generate = None, + events = TestEventService(), + images = None, queue = MemoryInvocationQueue(), graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = sqlite_memory, table_name = 'graph_executions'), processor = DefaultInvocationProcessor() ) @pytest.fixture() -def mock_invoker(mock_services: InvocationServices, mock_invoker_services: InvokerServices) -> Invoker: +def mock_invoker(mock_services: InvocationServices) -> Invoker: return Invoker( - services = mock_services, - invoker_services = mock_invoker_services + services = mock_services ) def test_can_create_graph_state(mock_invoker: Invoker): @@ -60,13 +56,13 @@ def test_can_invoke(mock_invoker: Invoker, simple_graph): assert invocation_id is not None def has_executed_any(g: GraphExecutionState): - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + g = mock_invoker.services.graph_execution_manager.get(g.id) return len(g.executed) > 0 wait_until(lambda: has_executed_any(g), timeout = 5, interval = 1) mock_invoker.stop() - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + g = mock_invoker.services.graph_execution_manager.get(g.id) assert len(g.executed) > 0 def test_can_invoke_all(mock_invoker: Invoker, simple_graph): @@ -75,11 +71,11 @@ def test_can_invoke_all(mock_invoker: Invoker, simple_graph): assert invocation_id is not None def has_executed_all(g: GraphExecutionState): - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + g = mock_invoker.services.graph_execution_manager.get(g.id) return g.is_complete() wait_until(lambda: has_executed_all(g), timeout = 5, interval = 1) mock_invoker.stop() - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) + g = mock_invoker.services.graph_execution_manager.get(g.id) assert g.is_complete() From 1e7a6dc676c43c713a977a7d47b0d4748c61ea45 Mon Sep 17 00:00:00 2001 From: Kevin Turner <83819+keturn@users.noreply.github.com> Date: Sat, 25 Feb 2023 20:21:47 -0800 Subject: [PATCH 72/81] doc(invoke_ai_web_server): put docstrings inside their functions Documentation strings are the first thing inside the function body. https://docs.python.org/3/tutorial/controlflow.html#defining-functions --- invokeai/backend/invoke_ai_web_server.py | 63 ++++++++++-------------- 1 file changed, 25 insertions(+), 38 deletions(-) diff --git a/invokeai/backend/invoke_ai_web_server.py b/invokeai/backend/invoke_ai_web_server.py index 8ee93c68f4..90e228b92b 100644 --- a/invokeai/backend/invoke_ai_web_server.py +++ b/invokeai/backend/invoke_ai_web_server.py @@ -7,13 +7,15 @@ import mimetypes import os import shutil import traceback +from pathlib import Path from threading import Event from uuid import uuid4 import eventlet -from pathlib import Path +import invokeai.frontend.dist as frontend from PIL import Image from PIL.Image import Image as ImageType +from compel.prompt_parser import Blend from flask import Flask, redirect, send_from_directory, request, make_response from flask_socketio import SocketIO from werkzeug.utils import secure_filename @@ -22,18 +24,15 @@ from invokeai.backend.modules.get_canvas_generation_mode import ( get_canvas_generation_mode, ) from invokeai.backend.modules.parameters import parameters_to_command -import invokeai.frontend.dist as frontend from ldm.generate import Generate from ldm.invoke.args import Args, APP_ID, APP_VERSION, calculate_init_img_hash -from ldm.invoke.conditioning import get_tokens_for_prompt_object, get_prompt_structure, split_weighted_subprompts, \ - get_tokenizer +from ldm.invoke.conditioning import get_tokens_for_prompt_object, get_prompt_structure, get_tokenizer from ldm.invoke.generator.diffusers_pipeline import PipelineIntermediateState from ldm.invoke.generator.inpaint import infill_methods from ldm.invoke.globals import Globals, global_converted_ckpts_dir -from ldm.invoke.pngwriter import PngWriter, retrieve_metadata -from compel.prompt_parser import Blend from ldm.invoke.globals import global_models_dir from ldm.invoke.merge_diffusers import merge_diffusion_models +from ldm.invoke.pngwriter import PngWriter, retrieve_metadata # Loading Arguments opt = Args() @@ -1685,27 +1684,23 @@ class CanceledException(Exception): pass -""" -Returns a copy an image, cropped to a bounding box. -""" - - def copy_image_from_bounding_box( image: ImageType, x: int, y: int, width: int, height: int ) -> ImageType: + """ + Returns a copy an image, cropped to a bounding box. + """ with image as im: bounds = (x, y, x + width, y + height) im_cropped = im.crop(bounds) return im_cropped -""" -Converts a base64 image dataURL into an image. -The dataURL is split on the first commma. -""" - - def dataURL_to_image(dataURL: str) -> ImageType: + """ + Converts a base64 image dataURL into an image. + The dataURL is split on the first comma. + """ image = Image.open( io.BytesIO( base64.decodebytes( @@ -1719,12 +1714,10 @@ def dataURL_to_image(dataURL: str) -> ImageType: return image -""" -Converts an image into a base64 image dataURL. -""" - - def image_to_dataURL(image: ImageType) -> str: + """ + Converts an image into a base64 image dataURL. + """ buffered = io.BytesIO() image.save(buffered, format="PNG") image_base64 = "data:image/png;base64," + base64.b64encode( @@ -1733,13 +1726,11 @@ def image_to_dataURL(image: ImageType) -> str: return image_base64 -""" -Converts a base64 image dataURL into bytes. -The dataURL is split on the first commma. -""" - - def dataURL_to_bytes(dataURL: str) -> bytes: + """ + Converts a base64 image dataURL into bytes. + The dataURL is split on the first comma. + """ return base64.decodebytes( bytes( dataURL.split(",", 1)[1], @@ -1748,11 +1739,6 @@ def dataURL_to_bytes(dataURL: str) -> bytes: ) -""" -Pastes an image onto another with a bounding box. -""" - - def paste_image_into_bounding_box( recipient_image: ImageType, donor_image: ImageType, @@ -1761,23 +1747,24 @@ def paste_image_into_bounding_box( width: int, height: int, ) -> ImageType: + """ + Pastes an image onto another with a bounding box. + """ with recipient_image as im: bounds = (x, y, x + width, y + height) im.paste(donor_image, bounds) return recipient_image -""" -Saves a thumbnail of an image, returning its path. -""" - - def save_thumbnail( image: ImageType, filename: str, path: str, size: int = 256, ) -> str: + """ + Saves a thumbnail of an image, returning its path. + """ base_filename = os.path.splitext(filename)[0] thumbnail_path = os.path.join(path, base_filename + ".webp") From 3aab5e7e20132d739f44fc6c73899e440d95a6f0 Mon Sep 17 00:00:00 2001 From: mauwii Date: Sun, 26 Feb 2023 06:38:04 +0100 Subject: [PATCH 73/81] update .editorconfig - set `max_line_length = 88` for .py --- .editorconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/.editorconfig b/.editorconfig index fe9b4a61d1..28e2100bab 100644 --- a/.editorconfig +++ b/.editorconfig @@ -13,6 +13,7 @@ trim_trailing_whitespace = true # Python [*.py] indent_size = 4 +max_line_length = 88 # css [*.css] From 741464b0537bcb6f7adc05bd9eef59bc86305c03 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Sun, 26 Feb 2023 15:31:43 -0500 Subject: [PATCH 74/81] restore previous naming scheme for sd-2.x models: - stable-diffusion-2.1-base base model from stabilityai/stable-diffusion-2-1-base - stable-diffusion-2.1-768 768 pixel model from stabilityai/stable-diffusion-2-1-768 - sd-inpainting-2.0 512 pixel inpainting model from runwayml/stable-diffusion-inpainting --- invokeai/configs/INITIAL_MODELS.yaml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/invokeai/configs/INITIAL_MODELS.yaml b/invokeai/configs/INITIAL_MODELS.yaml index edc6285a38..361861506c 100644 --- a/invokeai/configs/INITIAL_MODELS.yaml +++ b/invokeai/configs/INITIAL_MODELS.yaml @@ -13,14 +13,19 @@ sd-inpainting-1.5: vae: repo_id: stabilityai/sd-vae-ft-mse recommended: True -stable-diffusion-2.1: +stable-diffusion-2.1-768: description: Stable Diffusion version 2.1 diffusers model, trained on 768 pixel images (5.21 GB) repo_id: stabilityai/stable-diffusion-2-1 format: diffusers recommended: True +stable-diffusion-2.1-base: + description: Stable Diffusion version 2.1 diffusers model, trained on 512 pixel images (5.21 GB) + repo_id: stabilityai/stable-diffusion-2-1-base + format: diffusers + recommended: False sd-inpainting-2.0: description: Stable Diffusion version 2.0 inpainting model (5.21 GB) - repo_id: stabilityai/stable-diffusion-2-1 + repo_id: stabilityai/stable-diffusion-2-inpainting format: diffusers recommended: False analog-diffusion-1.0: From 47c1be332237666ee4da25d29c6e77d166a79546 Mon Sep 17 00:00:00 2001 From: mauwii Date: Sun, 26 Feb 2023 21:53:38 +0100 Subject: [PATCH 75/81] Revert "doc(invoke_ai_web_server): put docstrings inside their functions" This reverts commit 1e7a6dc676c43c713a977a7d47b0d4748c61ea45. --- invokeai/backend/invoke_ai_web_server.py | 63 ++++++++++++++---------- 1 file changed, 38 insertions(+), 25 deletions(-) diff --git a/invokeai/backend/invoke_ai_web_server.py b/invokeai/backend/invoke_ai_web_server.py index 90e228b92b..8ee93c68f4 100644 --- a/invokeai/backend/invoke_ai_web_server.py +++ b/invokeai/backend/invoke_ai_web_server.py @@ -7,15 +7,13 @@ import mimetypes import os import shutil import traceback -from pathlib import Path from threading import Event from uuid import uuid4 import eventlet -import invokeai.frontend.dist as frontend +from pathlib import Path from PIL import Image from PIL.Image import Image as ImageType -from compel.prompt_parser import Blend from flask import Flask, redirect, send_from_directory, request, make_response from flask_socketio import SocketIO from werkzeug.utils import secure_filename @@ -24,15 +22,18 @@ from invokeai.backend.modules.get_canvas_generation_mode import ( get_canvas_generation_mode, ) from invokeai.backend.modules.parameters import parameters_to_command +import invokeai.frontend.dist as frontend from ldm.generate import Generate from ldm.invoke.args import Args, APP_ID, APP_VERSION, calculate_init_img_hash -from ldm.invoke.conditioning import get_tokens_for_prompt_object, get_prompt_structure, get_tokenizer +from ldm.invoke.conditioning import get_tokens_for_prompt_object, get_prompt_structure, split_weighted_subprompts, \ + get_tokenizer from ldm.invoke.generator.diffusers_pipeline import PipelineIntermediateState from ldm.invoke.generator.inpaint import infill_methods from ldm.invoke.globals import Globals, global_converted_ckpts_dir +from ldm.invoke.pngwriter import PngWriter, retrieve_metadata +from compel.prompt_parser import Blend from ldm.invoke.globals import global_models_dir from ldm.invoke.merge_diffusers import merge_diffusion_models -from ldm.invoke.pngwriter import PngWriter, retrieve_metadata # Loading Arguments opt = Args() @@ -1684,23 +1685,27 @@ class CanceledException(Exception): pass +""" +Returns a copy an image, cropped to a bounding box. +""" + + def copy_image_from_bounding_box( image: ImageType, x: int, y: int, width: int, height: int ) -> ImageType: - """ - Returns a copy an image, cropped to a bounding box. - """ with image as im: bounds = (x, y, x + width, y + height) im_cropped = im.crop(bounds) return im_cropped +""" +Converts a base64 image dataURL into an image. +The dataURL is split on the first commma. +""" + + def dataURL_to_image(dataURL: str) -> ImageType: - """ - Converts a base64 image dataURL into an image. - The dataURL is split on the first comma. - """ image = Image.open( io.BytesIO( base64.decodebytes( @@ -1714,10 +1719,12 @@ def dataURL_to_image(dataURL: str) -> ImageType: return image +""" +Converts an image into a base64 image dataURL. +""" + + def image_to_dataURL(image: ImageType) -> str: - """ - Converts an image into a base64 image dataURL. - """ buffered = io.BytesIO() image.save(buffered, format="PNG") image_base64 = "data:image/png;base64," + base64.b64encode( @@ -1726,11 +1733,13 @@ def image_to_dataURL(image: ImageType) -> str: return image_base64 +""" +Converts a base64 image dataURL into bytes. +The dataURL is split on the first commma. +""" + + def dataURL_to_bytes(dataURL: str) -> bytes: - """ - Converts a base64 image dataURL into bytes. - The dataURL is split on the first comma. - """ return base64.decodebytes( bytes( dataURL.split(",", 1)[1], @@ -1739,6 +1748,11 @@ def dataURL_to_bytes(dataURL: str) -> bytes: ) +""" +Pastes an image onto another with a bounding box. +""" + + def paste_image_into_bounding_box( recipient_image: ImageType, donor_image: ImageType, @@ -1747,24 +1761,23 @@ def paste_image_into_bounding_box( width: int, height: int, ) -> ImageType: - """ - Pastes an image onto another with a bounding box. - """ with recipient_image as im: bounds = (x, y, x + width, y + height) im.paste(donor_image, bounds) return recipient_image +""" +Saves a thumbnail of an image, returning its path. +""" + + def save_thumbnail( image: ImageType, filename: str, path: str, size: int = 256, ) -> str: - """ - Saves a thumbnail of an image, returning its path. - """ base_filename = os.path.splitext(filename)[0] thumbnail_path = os.path.join(path, base_filename + ".webp") From 2394f6458fc49a72cfd3c78e9048b3838a70a831 Mon Sep 17 00:00:00 2001 From: mauwii Date: Sun, 26 Feb 2023 21:54:06 +0100 Subject: [PATCH 76/81] Revert "[nodes] Removed InvokerServices, simplying service model" This reverts commit 81fd2ee8c19f69d9ce0693810bfd52ec53a3f4ec. --- ldm/invoke/app/api/dependencies.py | 19 ++++++---- ldm/invoke/app/api/routers/sessions.py | 28 +++++++------- ldm/invoke/app/cli_app.py | 25 +++++++------ .../app/services/invocation_services.py | 15 +------- ldm/invoke/app/services/invoker.py | 37 ++++++++++++++----- ldm/invoke/app/services/processor.py | 6 +-- tests/nodes/test_graph_execution_state.py | 14 ++----- tests/nodes/test_invoker.py | 26 +++++++------ 8 files changed, 89 insertions(+), 81 deletions(-) diff --git a/ldm/invoke/app/api/dependencies.py b/ldm/invoke/app/api/dependencies.py index 08f362133e..60dd522803 100644 --- a/ldm/invoke/app/api/dependencies.py +++ b/ldm/invoke/app/api/dependencies.py @@ -13,7 +13,7 @@ from ...globals import Globals from ..services.image_storage import DiskImageStorage from ..services.invocation_queue import MemoryInvocationQueue from ..services.invocation_services import InvocationServices -from ..services.invoker import Invoker +from ..services.invoker import Invoker, InvokerServices from ..services.generate_initializer import get_generate from .events import FastAPIEventService @@ -60,19 +60,22 @@ class ApiDependencies: images = DiskImageStorage(output_folder) - # TODO: build a file/path manager? - db_location = os.path.join(output_folder, 'invokeai.db') - services = InvocationServices( generate = generate, events = events, - images = images, - queue = MemoryInvocationQueue(), + images = images + ) + + # TODO: build a file/path manager? + db_location = os.path.join(output_folder, 'invokeai.db') + + invoker_services = InvokerServices( + queue = MemoryInvocationQueue(), graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = db_location, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() + processor = DefaultInvocationProcessor() ) - ApiDependencies.invoker = Invoker(services) + ApiDependencies.invoker = Invoker(services, invoker_services) @staticmethod def shutdown(): diff --git a/ldm/invoke/app/api/routers/sessions.py b/ldm/invoke/app/api/routers/sessions.py index beb13736c6..77008ad6e4 100644 --- a/ldm/invoke/app/api/routers/sessions.py +++ b/ldm/invoke/app/api/routers/sessions.py @@ -44,9 +44,9 @@ async def list_sessions( ) -> PaginatedResults[GraphExecutionState]: """Gets a list of sessions, optionally searching""" if filter == '': - result = ApiDependencies.invoker.services.graph_execution_manager.list(page, per_page) + result = ApiDependencies.invoker.invoker_services.graph_execution_manager.list(page, per_page) else: - result = ApiDependencies.invoker.services.graph_execution_manager.search(query, page, per_page) + result = ApiDependencies.invoker.invoker_services.graph_execution_manager.search(query, page, per_page) return result @@ -60,7 +60,7 @@ async def get_session( session_id: str = Path(description = "The id of the session to get") ) -> GraphExecutionState: """Gets a session""" - session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) else: @@ -80,13 +80,13 @@ async def add_node( node: Annotated[Union[BaseInvocation.get_invocations()], Field(discriminator="type")] = Body(description = "The node to add") ) -> str: """Adds a node to the graph""" - session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.add_node(node) - ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session.id except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -108,13 +108,13 @@ async def update_node( node: Annotated[Union[BaseInvocation.get_invocations()], Field(discriminator="type")] = Body(description = "The new node") ) -> GraphExecutionState: """Updates a node in the graph and removes all linked edges""" - session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.update_node(node_path, node) - ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -135,13 +135,13 @@ async def delete_node( node_path: str = Path(description = "The path to the node to delete") ) -> GraphExecutionState: """Deletes a node in the graph and removes all linked edges""" - session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.delete_node(node_path) - ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -162,13 +162,13 @@ async def add_edge( edge: tuple[EdgeConnection, EdgeConnection] = Body(description = "The edge to add") ) -> GraphExecutionState: """Adds an edge to the graph""" - session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: session.add_edge(edge) - ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -193,14 +193,14 @@ async def delete_edge( to_field: str = Path(description = "The field of the node the edge is going to") ) -> GraphExecutionState: """Deletes an edge from the graph""" - session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) try: edge = (EdgeConnection(node_id = from_node_id, field = from_field), EdgeConnection(node_id = to_node_id, field = to_field)) session.delete_edge(edge) - ApiDependencies.invoker.services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? + ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? return session except NodeAlreadyExecutedError: return Response(status_code = 400) @@ -221,7 +221,7 @@ async def invoke_session( all: bool = Query(default = False, description = "Whether or not to invoke all remaining invocations") ) -> None: """Invokes a session""" - session = ApiDependencies.invoker.services.graph_execution_manager.get(session_id) + session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) if session is None: return Response(status_code = 404) diff --git a/ldm/invoke/app/cli_app.py b/ldm/invoke/app/cli_app.py index 9081f3b083..6071afabb2 100644 --- a/ldm/invoke/app/cli_app.py +++ b/ldm/invoke/app/cli_app.py @@ -20,7 +20,7 @@ from .services.image_storage import DiskImageStorage from .services.invocation_queue import MemoryInvocationQueue from .invocations.baseinvocation import BaseInvocation from .services.invocation_services import InvocationServices -from .services.invoker import Invoker +from .services.invoker import Invoker, InvokerServices from .invocations import * from ..args import Args from .services.events import EventServiceBase @@ -171,25 +171,28 @@ def invoke_cli(): output_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), '../../../outputs')) + services = InvocationServices( + generate = generate, + events = events, + images = DiskImageStorage(output_folder) + ) + # TODO: build a file/path manager? db_location = os.path.join(output_folder, 'invokeai.db') - services = InvocationServices( - generate = generate, - events = events, - images = DiskImageStorage(output_folder), - queue = MemoryInvocationQueue(), + invoker_services = InvokerServices( + queue = MemoryInvocationQueue(), graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = db_location, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() + processor = DefaultInvocationProcessor() ) - invoker = Invoker(services) + invoker = Invoker(services, invoker_services) session = invoker.create_execution_state() parser = get_invocation_parser() # Uncomment to print out previous sessions at startup - # print(services.session_manager.list()) + # print(invoker_services.session_manager.list()) # Defaults storage defaults: Dict[str, Any] = dict() @@ -210,7 +213,7 @@ def invoke_cli(): try: # Refresh the state of the session - session = invoker.services.graph_execution_manager.get(session.id) + session = invoker.invoker_services.graph_execution_manager.get(session.id) history = list(get_graph_execution_history(session)) # Split the command for piping @@ -286,7 +289,7 @@ def invoke_cli(): invoker.invoke(session, invoke_all = True) while not session.is_complete(): # Wait some time - session = invoker.services.graph_execution_manager.get(session.id) + session = invoker.invoker_services.graph_execution_manager.get(session.id) time.sleep(0.1) except InvalidArgs: diff --git a/ldm/invoke/app/services/invocation_services.py b/ldm/invoke/app/services/invocation_services.py index 40a64e64e5..9eb5309d3d 100644 --- a/ldm/invoke/app/services/invocation_services.py +++ b/ldm/invoke/app/services/invocation_services.py @@ -1,6 +1,4 @@ # Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) -from .invocation_queue import InvocationQueueABC -from .item_storage import ItemStorageABC from .image_storage import ImageStorageBase from .events import EventServiceBase from ....generate import Generate @@ -11,23 +9,12 @@ class InvocationServices(): generate: Generate # TODO: wrap Generate, or split it up from model? events: EventServiceBase images: ImageStorageBase - queue: InvocationQueueABC - - # NOTE: we must forward-declare any types that include invocations, since invocations can use services - graph_execution_manager: ItemStorageABC['GraphExecutionState'] - processor: 'InvocationProcessorABC' def __init__(self, generate: Generate, events: EventServiceBase, - images: ImageStorageBase, - queue: InvocationQueueABC, - graph_execution_manager: ItemStorageABC['GraphExecutionState'], - processor: 'InvocationProcessorABC' + images: ImageStorageBase ): self.generate = generate self.events = events self.images = images - self.queue = queue - self.graph_execution_manager = graph_execution_manager - self.processor = processor diff --git a/ldm/invoke/app/services/invoker.py b/ldm/invoke/app/services/invoker.py index 4397a75021..796f541781 100644 --- a/ldm/invoke/app/services/invoker.py +++ b/ldm/invoke/app/services/invoker.py @@ -9,15 +9,34 @@ from .invocation_services import InvocationServices from .invocation_queue import InvocationQueueABC, InvocationQueueItem +class InvokerServices: + """Services used by the Invoker for execution""" + + queue: InvocationQueueABC + graph_execution_manager: ItemStorageABC[GraphExecutionState] + processor: 'InvocationProcessorABC' + + def __init__(self, + queue: InvocationQueueABC, + graph_execution_manager: ItemStorageABC[GraphExecutionState], + processor: 'InvocationProcessorABC'): + self.queue = queue + self.graph_execution_manager = graph_execution_manager + self.processor = processor + + class Invoker: """The invoker, used to execute invocations""" services: InvocationServices + invoker_services: InvokerServices def __init__(self, - services: InvocationServices + services: InvocationServices, # Services used by nodes to perform invocations + invoker_services: InvokerServices # Services used by the invoker for orchestration ): self.services = services + self.invoker_services = invoker_services self._start() @@ -30,11 +49,11 @@ class Invoker: return None # Save the execution state - self.services.graph_execution_manager.set(graph_execution_state) + self.invoker_services.graph_execution_manager.set(graph_execution_state) # Queue the invocation print(f'queueing item {invocation.id}') - self.services.queue.put(InvocationQueueItem( + self.invoker_services.queue.put(InvocationQueueItem( #session_id = session.id, graph_execution_state_id = graph_execution_state.id, invocation_id = invocation.id, @@ -47,7 +66,7 @@ class Invoker: def create_execution_state(self, graph: Graph|None = None) -> GraphExecutionState: """Creates a new execution state for the given graph""" new_state = GraphExecutionState(graph = Graph() if graph is None else graph) - self.services.graph_execution_manager.set(new_state) + self.invoker_services.graph_execution_manager.set(new_state) return new_state @@ -67,8 +86,8 @@ class Invoker: def _start(self) -> None: """Starts the invoker. This is called automatically when the invoker is created.""" - for service in vars(self.services): - self.__start_service(getattr(self.services, service)) + for service in vars(self.invoker_services): + self.__start_service(getattr(self.invoker_services, service)) for service in vars(self.services): self.__start_service(getattr(self.services, service)) @@ -80,10 +99,10 @@ class Invoker: for service in vars(self.services): self.__stop_service(getattr(self.services, service)) - for service in vars(self.services): - self.__stop_service(getattr(self.services, service)) + for service in vars(self.invoker_services): + self.__stop_service(getattr(self.invoker_services, service)) - self.services.queue.put(None) + self.invoker_services.queue.put(None) class InvocationProcessorABC(ABC): diff --git a/ldm/invoke/app/services/processor.py b/ldm/invoke/app/services/processor.py index 9ea4349bbf..9b51a6bcbc 100644 --- a/ldm/invoke/app/services/processor.py +++ b/ldm/invoke/app/services/processor.py @@ -28,11 +28,11 @@ class DefaultInvocationProcessor(InvocationProcessorABC): def __process(self, stop_event: Event): try: while not stop_event.is_set(): - queue_item: InvocationQueueItem = self.__invoker.services.queue.get() + queue_item: InvocationQueueItem = self.__invoker.invoker_services.queue.get() if not queue_item: # Probably stopping continue - graph_execution_state = self.__invoker.services.graph_execution_manager.get(queue_item.graph_execution_state_id) + graph_execution_state = self.__invoker.invoker_services.graph_execution_manager.get(queue_item.graph_execution_state_id) invocation = graph_execution_state.execution_graph.get_node(queue_item.invocation_id) # Send starting event @@ -52,7 +52,7 @@ class DefaultInvocationProcessor(InvocationProcessorABC): graph_execution_state.complete(invocation.id, outputs) # Save the state changes - self.__invoker.services.graph_execution_manager.set(graph_execution_state) + self.__invoker.invoker_services.graph_execution_manager.set(graph_execution_state) # Send complete event self.__invoker.services.events.emit_invocation_complete( diff --git a/tests/nodes/test_graph_execution_state.py b/tests/nodes/test_graph_execution_state.py index 980c262501..0a5dcc7734 100644 --- a/tests/nodes/test_graph_execution_state.py +++ b/tests/nodes/test_graph_execution_state.py @@ -1,11 +1,10 @@ from .test_invoker import create_edge from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTestInvocation, PromptCollectionTestInvocation from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext -from ldm.invoke.app.services.processor import DefaultInvocationProcessor -from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory -from ldm.invoke.app.services.invocation_queue import MemoryInvocationQueue from ldm.invoke.app.services.invocation_services import InvocationServices from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState +from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation +from ldm.invoke.app.invocations.upscale import UpscaleInvocation import pytest @@ -20,14 +19,7 @@ def simple_graph(): @pytest.fixture def mock_services(): # NOTE: none of these are actually called by the test invocations - return InvocationServices( - generate = None, - events = None, - images = None, - queue = MemoryInvocationQueue(), - graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = sqlite_memory, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() - ) + return InvocationServices(generate = None, events = None, images = None) def invoke_next(g: GraphExecutionState, services: InvocationServices) -> tuple[BaseInvocation, BaseInvocationOutput]: n = g.next() diff --git a/tests/nodes/test_invoker.py b/tests/nodes/test_invoker.py index e9109728d5..a6d96f61c0 100644 --- a/tests/nodes/test_invoker.py +++ b/tests/nodes/test_invoker.py @@ -2,10 +2,12 @@ from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTe from ldm.invoke.app.services.processor import DefaultInvocationProcessor from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory from ldm.invoke.app.services.invocation_queue import MemoryInvocationQueue -from ldm.invoke.app.services.invoker import Invoker +from ldm.invoke.app.services.invoker import Invoker, InvokerServices from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext from ldm.invoke.app.services.invocation_services import InvocationServices from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState +from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation +from ldm.invoke.app.invocations.upscale import UpscaleInvocation import pytest @@ -20,19 +22,21 @@ def simple_graph(): @pytest.fixture def mock_services() -> InvocationServices: # NOTE: none of these are actually called by the test invocations - return InvocationServices( - generate = None, - events = TestEventService(), - images = None, + return InvocationServices(generate = None, events = TestEventService(), images = None) + +@pytest.fixture() +def mock_invoker_services() -> InvokerServices: + return InvokerServices( queue = MemoryInvocationQueue(), graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = sqlite_memory, table_name = 'graph_executions'), processor = DefaultInvocationProcessor() ) @pytest.fixture() -def mock_invoker(mock_services: InvocationServices) -> Invoker: +def mock_invoker(mock_services: InvocationServices, mock_invoker_services: InvokerServices) -> Invoker: return Invoker( - services = mock_services + services = mock_services, + invoker_services = mock_invoker_services ) def test_can_create_graph_state(mock_invoker: Invoker): @@ -56,13 +60,13 @@ def test_can_invoke(mock_invoker: Invoker, simple_graph): assert invocation_id is not None def has_executed_any(g: GraphExecutionState): - g = mock_invoker.services.graph_execution_manager.get(g.id) + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) return len(g.executed) > 0 wait_until(lambda: has_executed_any(g), timeout = 5, interval = 1) mock_invoker.stop() - g = mock_invoker.services.graph_execution_manager.get(g.id) + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) assert len(g.executed) > 0 def test_can_invoke_all(mock_invoker: Invoker, simple_graph): @@ -71,11 +75,11 @@ def test_can_invoke_all(mock_invoker: Invoker, simple_graph): assert invocation_id is not None def has_executed_all(g: GraphExecutionState): - g = mock_invoker.services.graph_execution_manager.get(g.id) + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) return g.is_complete() wait_until(lambda: has_executed_all(g), timeout = 5, interval = 1) mock_invoker.stop() - g = mock_invoker.services.graph_execution_manager.get(g.id) + g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) assert g.is_complete() From 282ba201d2eaba7e37a162ab2ae07db8676af79b Mon Sep 17 00:00:00 2001 From: mauwii Date: Sun, 26 Feb 2023 21:54:13 +0100 Subject: [PATCH 77/81] Revert "parent 9eed1919c2071f9199996df747c8638c4a75e8fb" This reverts commit 357601e2d673786d42e920bb24d4a1cf55c66540. --- .coveragerc | 6 - .gitignore | 1 - .pytest.ini | 5 - docs/contributing/ARCHITECTURE.md | 93 -- docs/contributing/INVOCATIONS.md | 105 --- ldm/generate.py | 6 - ldm/invoke/app/api/dependencies.py | 83 -- ldm/invoke/app/api/events.py | 54 -- ldm/invoke/app/api/routers/images.py | 57 -- ldm/invoke/app/api/routers/sessions.py | 232 ----- ldm/invoke/app/api/sockets.py | 36 - ldm/invoke/app/api_app.py | 164 ---- ldm/invoke/app/cli_app.py | 306 ------- ldm/invoke/app/invocations/__init__.py | 8 - ldm/invoke/app/invocations/baseinvocation.py | 74 -- ldm/invoke/app/invocations/cv.py | 42 - ldm/invoke/app/invocations/generate.py | 160 ---- ldm/invoke/app/invocations/image.py | 219 ----- ldm/invoke/app/invocations/prompt.py | 9 - ldm/invoke/app/invocations/reconstruct.py | 36 - ldm/invoke/app/invocations/upscale.py | 38 - ldm/invoke/app/services/__init__.py | 0 ldm/invoke/app/services/events.py | 78 -- .../app/services/generate_initializer.py | 233 ----- ldm/invoke/app/services/graph.py | 797 ------------------ ldm/invoke/app/services/image_storage.py | 104 --- ldm/invoke/app/services/invocation_queue.py | 46 - .../app/services/invocation_services.py | 20 - ldm/invoke/app/services/invoker.py | 109 --- ldm/invoke/app/services/item_storage.py | 57 -- ldm/invoke/app/services/processor.py | 78 -- ldm/invoke/app/services/sqlite.py | 119 --- pyproject.toml | 5 - scripts/invoke-new.py | 20 - static/dream_web/test.html | 206 ----- tests/__init__.py | 0 tests/nodes/__init__.py | 0 tests/nodes/test_graph_execution_state.py | 114 --- tests/nodes/test_invoker.py | 85 -- tests/nodes/test_node_graph.py | 501 ----------- tests/nodes/test_nodes.py | 92 -- tests/nodes/test_sqlite.py | 112 --- 42 files changed, 4510 deletions(-) delete mode 100644 .coveragerc delete mode 100644 .pytest.ini delete mode 100644 docs/contributing/ARCHITECTURE.md delete mode 100644 docs/contributing/INVOCATIONS.md delete mode 100644 ldm/invoke/app/api/dependencies.py delete mode 100644 ldm/invoke/app/api/events.py delete mode 100644 ldm/invoke/app/api/routers/images.py delete mode 100644 ldm/invoke/app/api/routers/sessions.py delete mode 100644 ldm/invoke/app/api/sockets.py delete mode 100644 ldm/invoke/app/api_app.py delete mode 100644 ldm/invoke/app/cli_app.py delete mode 100644 ldm/invoke/app/invocations/__init__.py delete mode 100644 ldm/invoke/app/invocations/baseinvocation.py delete mode 100644 ldm/invoke/app/invocations/cv.py delete mode 100644 ldm/invoke/app/invocations/generate.py delete mode 100644 ldm/invoke/app/invocations/image.py delete mode 100644 ldm/invoke/app/invocations/prompt.py delete mode 100644 ldm/invoke/app/invocations/reconstruct.py delete mode 100644 ldm/invoke/app/invocations/upscale.py delete mode 100644 ldm/invoke/app/services/__init__.py delete mode 100644 ldm/invoke/app/services/events.py delete mode 100644 ldm/invoke/app/services/generate_initializer.py delete mode 100644 ldm/invoke/app/services/graph.py delete mode 100644 ldm/invoke/app/services/image_storage.py delete mode 100644 ldm/invoke/app/services/invocation_queue.py delete mode 100644 ldm/invoke/app/services/invocation_services.py delete mode 100644 ldm/invoke/app/services/invoker.py delete mode 100644 ldm/invoke/app/services/item_storage.py delete mode 100644 ldm/invoke/app/services/processor.py delete mode 100644 ldm/invoke/app/services/sqlite.py delete mode 100644 scripts/invoke-new.py delete mode 100644 static/dream_web/test.html delete mode 100644 tests/__init__.py delete mode 100644 tests/nodes/__init__.py delete mode 100644 tests/nodes/test_graph_execution_state.py delete mode 100644 tests/nodes/test_invoker.py delete mode 100644 tests/nodes/test_node_graph.py delete mode 100644 tests/nodes/test_nodes.py delete mode 100644 tests/nodes/test_sqlite.py diff --git a/.coveragerc b/.coveragerc deleted file mode 100644 index 8232fc4b93..0000000000 --- a/.coveragerc +++ /dev/null @@ -1,6 +0,0 @@ -[run] -omit='.env/*' -source='.' - -[report] -show_missing = true diff --git a/.gitignore b/.gitignore index 9b33e07164..9adb0be85a 100644 --- a/.gitignore +++ b/.gitignore @@ -68,7 +68,6 @@ htmlcov/ .cache nosetests.xml coverage.xml -cov.xml *.cover *.py,cover .hypothesis/ diff --git a/.pytest.ini b/.pytest.ini deleted file mode 100644 index 16ccfafe80..0000000000 --- a/.pytest.ini +++ /dev/null @@ -1,5 +0,0 @@ -[pytest] -DJANGO_SETTINGS_MODULE = webtas.settings -; python_files = tests.py test_*.py *_tests.py - -addopts = --cov=. --cov-config=.coveragerc --cov-report xml:cov.xml diff --git a/docs/contributing/ARCHITECTURE.md b/docs/contributing/ARCHITECTURE.md deleted file mode 100644 index d74df94492..0000000000 --- a/docs/contributing/ARCHITECTURE.md +++ /dev/null @@ -1,93 +0,0 @@ -# Invoke.AI Architecture - -```mermaid -flowchart TB - - subgraph apps[Applications] - webui[WebUI] - cli[CLI] - - subgraph webapi[Web API] - api[HTTP API] - sio[Socket.IO] - end - - end - - subgraph invoke[Invoke] - direction LR - invoker - services - sessions - invocations - end - - subgraph core[AI Core] - Generate - end - - webui --> webapi - webapi --> invoke - cli --> invoke - - invoker --> services & sessions - invocations --> services - sessions --> invocations - - services --> core - - %% Styles - classDef sg fill:#5028C8,font-weight:bold,stroke-width:2,color:#fff,stroke:#14141A - classDef default stroke-width:2px,stroke:#F6B314,color:#fff,fill:#14141A - - class apps,webapi,invoke,core sg - -``` - -## Applications - -Applications are built on top of the invoke framework. They should construct `invoker` and then interact through it. They should avoid interacting directly with core code in order to support a variety of configurations. - -### Web UI - -The Web UI is built on top of an HTTP API built with [FastAPI](https://fastapi.tiangolo.com/) and [Socket.IO](https://socket.io/). The frontend code is found in `/frontend` and the backend code is found in `/ldm/invoke/app/api_app.py` and `/ldm/invoke/app/api/`. The code is further organized as such: - -| Component | Description | -| --- | --- | -| api_app.py | Sets up the API app, annotates the OpenAPI spec with additional data, and runs the API | -| dependencies | Creates all invoker services and the invoker, and provides them to the API | -| events | An eventing system that could in the future be adapted to support horizontal scale-out | -| sockets | The Socket.IO interface - handles listening to and emitting session events (events are defined in the events service module) | -| routers | API definitions for different areas of API functionality | - -### CLI - -The CLI is built automatically from invocation metadata, and also supports invocation piping and auto-linking. Code is available in `/ldm/invoke/app/cli_app.py`. - -## Invoke - -The Invoke framework provides the interface to the underlying AI systems and is built with flexibility and extensibility in mind. There are four major concepts: invoker, sessions, invocations, and services. - -### Invoker - -The invoker (`/ldm/invoke/app/services/invoker.py`) is the primary interface through which applications interact with the framework. Its primary purpose is to create, manage, and invoke sessions. It also maintains two sets of services: -- **invocation services**, which are used by invocations to interact with core functionality. -- **invoker services**, which are used by the invoker to manage sessions and manage the invocation queue. - -### Sessions - -Invocations and links between them form a graph, which is maintained in a session. Sessions can be queued for invocation, which will execute their graph (either the next ready invocation, or all invocations). Sessions also maintain execution history for the graph (including storage of any outputs). An invocation may be added to a session at any time, and there is capability to add and entire graph at once, as well as to automatically link new invocations to previous invocations. Invocations can not be deleted or modified once added. - -The session graph does not support looping. This is left as an application problem to prevent additional complexity in the graph. - -### Invocations - -Invocations represent individual units of execution, with inputs and outputs. All invocations are located in `/ldm/invoke/app/invocations`, and are all automatically discovered and made available in the applications. These are the primary way to expose new functionality in Invoke.AI, and the [implementation guide](INVOCATIONS.md) explains how to add new invocations. - -### Services - -Services provide invocations access AI Core functionality and other necessary functionality (e.g. image storage). These are available in `/ldm/invoke/app/services`. As a general rule, new services should provide an interface as an abstract base class, and may provide a lightweight local implementation by default in their module. The goal for all services should be to enable the usage of different implementations (e.g. using cloud storage for image storage), but should not load any module dependencies unless that implementation has been used (i.e. don't import anything that won't be used, especially if it's expensive to import). - -## AI Core - -The AI Core is represented by the rest of the code base (i.e. the code outside of `/ldm/invoke/app/`). diff --git a/docs/contributing/INVOCATIONS.md b/docs/contributing/INVOCATIONS.md deleted file mode 100644 index c8a97c19e4..0000000000 --- a/docs/contributing/INVOCATIONS.md +++ /dev/null @@ -1,105 +0,0 @@ -# Invocations - -Invocations represent a single operation, its inputs, and its outputs. These operations and their outputs can be chained together to generate and modify images. - -## Creating a new invocation - -To create a new invocation, either find the appropriate module file in `/ldm/invoke/app/invocations` to add your invocation to, or create a new one in that folder. All invocations in that folder will be discovered and made available to the CLI and API automatically. Invocations make use of [typing](https://docs.python.org/3/library/typing.html) and [pydantic](https://pydantic-docs.helpmanual.io/) for validation and integration into the CLI and API. - -An invocation looks like this: - -```py -class UpscaleInvocation(BaseInvocation): - """Upscales an image.""" - type: Literal['upscale'] = 'upscale' - - # Inputs - image: Union[ImageField,None] = Field(description="The input image") - strength: float = Field(default=0.75, gt=0, le=1, description="The strength") - level: Literal[2,4] = Field(default=2, description = "The upscale level") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - results = context.services.generate.upscale_and_reconstruct( - image_list = [[image, 0]], - upscale = (self.level, self.strength), - strength = 0.0, # GFPGAN strength - save_original = False, - image_callback = None, - ) - - # Results are image and seed, unwrap for now - # TODO: can this return multiple results? - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, results[0][0]) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) -``` - -Each portion is important to implement correctly. - -### Class definition and type -```py -class UpscaleInvocation(BaseInvocation): - """Upscales an image.""" - type: Literal['upscale'] = 'upscale' -``` -All invocations must derive from `BaseInvocation`. They should have a docstring that declares what they do in a single, short line. They should also have a `type` with a type hint that's `Literal["command_name"]`, where `command_name` is what the user will type on the CLI or use in the API to create this invocation. The `command_name` must be unique. The `type` must be assigned to the value of the literal in the type hint. - -### Inputs -```py - # Inputs - image: Union[ImageField,None] = Field(description="The input image") - strength: float = Field(default=0.75, gt=0, le=1, description="The strength") - level: Literal[2,4] = Field(default=2, description="The upscale level") -``` -Inputs consist of three parts: a name, a type hint, and a `Field` with default, description, and validation information. For example: -| Part | Value | Description | -| ---- | ----- | ----------- | -| Name | `strength` | This field is referred to as `strength` | -| Type Hint | `float` | This field must be of type `float` | -| Field | `Field(default=0.75, gt=0, le=1, description="The strength")` | The default value is `0.75`, the value must be in the range (0,1], and help text will show "The strength" for this field. | - -Notice that `image` has type `Union[ImageField,None]`. The `Union` allows this field to be parsed with `None` as a value, which enables linking to previous invocations. All fields should either provide a default value or allow `None` as a value, so that they can be overwritten with a linked output from another invocation. - -The special type `ImageField` is also used here. All images are passed as `ImageField`, which protects them from pydantic validation errors (since images only ever come from links). - -Finally, note that for all linking, the `type` of the linked fields must match. If the `name` also matches, then the field can be **automatically linked** to a previous invocation by name and matching. - -### Invoke Function -```py - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - results = context.services.generate.upscale_and_reconstruct( - image_list = [[image, 0]], - upscale = (self.level, self.strength), - strength = 0.0, # GFPGAN strength - save_original = False, - image_callback = None, - ) - - # Results are image and seed, unwrap for now - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, results[0][0]) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) -``` -The `invoke` function is the last portion of an invocation. It is provided an `InvocationContext` which contains services to perform work as well as a `session_id` for use as needed. It should return a class with output values that derives from `BaseInvocationOutput`. - -Before being called, the invocation will have all of its fields set from defaults, inputs, and finally links (overriding in that order). - -Assume that this invocation may be running simultaneously with other invocations, may be running on another machine, or in other interesting scenarios. If you need functionality, please provide it as a service in the `InvocationServices` class, and make sure it can be overridden. - -### Outputs -```py -class ImageOutput(BaseInvocationOutput): - """Base class for invocations that output an image""" - type: Literal['image'] = 'image' - - image: ImageField = Field(default=None, description="The output image") -``` -Output classes look like an invocation class without the invoke method. Prefer to use an existing output class if available, and prefer to name inputs the same as outputs when possible, to promote automatic invocation linking. diff --git a/ldm/generate.py b/ldm/generate.py index 256f214b25..413a1e25cb 100644 --- a/ldm/generate.py +++ b/ldm/generate.py @@ -1030,8 +1030,6 @@ class Generate: image_callback=None, prefix=None, ): - - results = [] for r in image_list: image, seed = r try: @@ -1085,10 +1083,6 @@ class Generate: else: r[0] = image - results.append([image, seed]) - - return results - def apply_textmask( self, image_path: str, prompt: str, callback, threshold: float = 0.5 ): diff --git a/ldm/invoke/app/api/dependencies.py b/ldm/invoke/app/api/dependencies.py deleted file mode 100644 index 60dd522803..0000000000 --- a/ldm/invoke/app/api/dependencies.py +++ /dev/null @@ -1,83 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from argparse import Namespace -import os - -from ..services.processor import DefaultInvocationProcessor - -from ..services.graph import GraphExecutionState -from ..services.sqlite import SqliteItemStorage - -from ...globals import Globals - -from ..services.image_storage import DiskImageStorage -from ..services.invocation_queue import MemoryInvocationQueue -from ..services.invocation_services import InvocationServices -from ..services.invoker import Invoker, InvokerServices -from ..services.generate_initializer import get_generate -from .events import FastAPIEventService - - -# TODO: is there a better way to achieve this? -def check_internet()->bool: - ''' - Return true if the internet is reachable. - It does this by pinging huggingface.co. - ''' - import urllib.request - host = 'http://huggingface.co' - try: - urllib.request.urlopen(host,timeout=1) - return True - except: - return False - - -class ApiDependencies: - """Contains and initializes all dependencies for the API""" - invoker: Invoker = None - - @staticmethod - def initialize( - args, - config, - event_handler_id: int - ): - Globals.try_patchmatch = args.patchmatch - Globals.always_use_cpu = args.always_use_cpu - Globals.internet_available = args.internet_available and check_internet() - Globals.disable_xformers = not args.xformers - Globals.ckpt_convert = args.ckpt_convert - - # TODO: Use a logger - print(f'>> Internet connectivity is {Globals.internet_available}') - - generate = get_generate(args, config) - - events = FastAPIEventService(event_handler_id) - - output_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), '../../../../outputs')) - - images = DiskImageStorage(output_folder) - - services = InvocationServices( - generate = generate, - events = events, - images = images - ) - - # TODO: build a file/path manager? - db_location = os.path.join(output_folder, 'invokeai.db') - - invoker_services = InvokerServices( - queue = MemoryInvocationQueue(), - graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = db_location, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() - ) - - ApiDependencies.invoker = Invoker(services, invoker_services) - - @staticmethod - def shutdown(): - if ApiDependencies.invoker: - ApiDependencies.invoker.stop() diff --git a/ldm/invoke/app/api/events.py b/ldm/invoke/app/api/events.py deleted file mode 100644 index 701b48a316..0000000000 --- a/ldm/invoke/app/api/events.py +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -import asyncio -from queue import Empty, Queue -from typing import Any -from fastapi_events.dispatcher import dispatch -from ..services.events import EventServiceBase -import threading - -class FastAPIEventService(EventServiceBase): - event_handler_id: int - __queue: Queue - __stop_event: threading.Event - - def __init__(self, event_handler_id: int) -> None: - self.event_handler_id = event_handler_id - self.__queue = Queue() - self.__stop_event = threading.Event() - asyncio.create_task(self.__dispatch_from_queue(stop_event = self.__stop_event)) - - super().__init__() - - - def stop(self, *args, **kwargs): - self.__stop_event.set() - self.__queue.put(None) - - - def dispatch(self, event_name: str, payload: Any) -> None: - self.__queue.put(dict( - event_name = event_name, - payload = payload - )) - - - async def __dispatch_from_queue(self, stop_event: threading.Event): - """Get events on from the queue and dispatch them, from the correct thread""" - while not stop_event.is_set(): - try: - event = self.__queue.get(block = False) - if not event: # Probably stopping - continue - - dispatch( - event.get('event_name'), - payload = event.get('payload'), - middleware_id = self.event_handler_id) - - except Empty: - await asyncio.sleep(0.001) - pass - - except asyncio.CancelledError as e: - raise e # Raise a proper error diff --git a/ldm/invoke/app/api/routers/images.py b/ldm/invoke/app/api/routers/images.py deleted file mode 100644 index 1ae116e49d..0000000000 --- a/ldm/invoke/app/api/routers/images.py +++ /dev/null @@ -1,57 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from datetime import datetime, timezone -from fastapi import Path, UploadFile, Request -from fastapi.routing import APIRouter -from fastapi.responses import FileResponse, Response -from PIL import Image -from ...services.image_storage import ImageType -from ..dependencies import ApiDependencies - -images_router = APIRouter( - prefix = '/v1/images', - tags = ['images'] -) - - -@images_router.get('/{image_type}/{image_name}', - operation_id = 'get_image' - ) -async def get_image( - image_type: ImageType = Path(description = "The type of image to get"), - image_name: str = Path(description = "The name of the image to get") -): - """Gets a result""" - # TODO: This is not really secure at all. At least make sure only output results are served - filename = ApiDependencies.invoker.services.images.get_path(image_type, image_name) - return FileResponse(filename) - -@images_router.post('/uploads/', - operation_id = 'upload_image', - responses = { - 201: {'description': 'The image was uploaded successfully'}, - 404: {'description': 'Session not found'} - }) -async def upload_image( - file: UploadFile, - request: Request -): - if not file.content_type.startswith('image'): - return Response(status_code = 415) - - contents = await file.read() - try: - im = Image.open(contents) - except: - # Error opening the image - return Response(status_code = 415) - - filename = f'{str(int(datetime.now(timezone.utc).timestamp()))}.png' - ApiDependencies.invoker.services.images.save(ImageType.UPLOAD, filename, im) - - return Response( - status_code=201, - headers = { - 'Location': request.url_for('get_image', image_type=ImageType.UPLOAD, image_name=filename) - } - ) diff --git a/ldm/invoke/app/api/routers/sessions.py b/ldm/invoke/app/api/routers/sessions.py deleted file mode 100644 index 77008ad6e4..0000000000 --- a/ldm/invoke/app/api/routers/sessions.py +++ /dev/null @@ -1,232 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from typing import List, Optional, Union, Annotated -from fastapi import Query, Path, Body -from fastapi.routing import APIRouter -from fastapi.responses import Response -from pydantic.fields import Field - -from ...services.item_storage import PaginatedResults -from ..dependencies import ApiDependencies -from ...invocations.baseinvocation import BaseInvocation -from ...services.graph import EdgeConnection, Graph, GraphExecutionState, NodeAlreadyExecutedError -from ...invocations import * - -session_router = APIRouter( - prefix = '/v1/sessions', - tags = ['sessions'] -) - - -@session_router.post('/', - operation_id = 'create_session', - responses = { - 200: {"model": GraphExecutionState}, - 400: {'description': 'Invalid json'} - }) -async def create_session( - graph: Optional[Graph] = Body(default = None, description = "The graph to initialize the session with") -) -> GraphExecutionState: - """Creates a new session, optionally initializing it with an invocation graph""" - session = ApiDependencies.invoker.create_execution_state(graph) - return session - - -@session_router.get('/', - operation_id = 'list_sessions', - responses = { - 200: {"model": PaginatedResults[GraphExecutionState]} - }) -async def list_sessions( - page: int = Query(default = 0, description = "The page of results to get"), - per_page: int = Query(default = 10, description = "The number of results per page"), - query: str = Query(default = '', description = "The query string to search for") -) -> PaginatedResults[GraphExecutionState]: - """Gets a list of sessions, optionally searching""" - if filter == '': - result = ApiDependencies.invoker.invoker_services.graph_execution_manager.list(page, per_page) - else: - result = ApiDependencies.invoker.invoker_services.graph_execution_manager.search(query, page, per_page) - return result - - -@session_router.get('/{session_id}', - operation_id = 'get_session', - responses = { - 200: {"model": GraphExecutionState}, - 404: {'description': 'Session not found'} - }) -async def get_session( - session_id: str = Path(description = "The id of the session to get") -) -> GraphExecutionState: - """Gets a session""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) - if session is None: - return Response(status_code = 404) - else: - return session - - -@session_router.post('/{session_id}/nodes', - operation_id = 'add_node', - responses = { - 200: {"model": str}, - 400: {'description': 'Invalid node or link'}, - 404: {'description': 'Session not found'} - } -) -async def add_node( - session_id: str = Path(description = "The id of the session"), - node: Annotated[Union[BaseInvocation.get_invocations()], Field(discriminator="type")] = Body(description = "The node to add") -) -> str: - """Adds a node to the graph""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) - if session is None: - return Response(status_code = 404) - - try: - session.add_node(node) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? - return session.id - except NodeAlreadyExecutedError: - return Response(status_code = 400) - except IndexError: - return Response(status_code = 400) - - -@session_router.put('/{session_id}/nodes/{node_path}', - operation_id = 'update_node', - responses = { - 200: {"model": GraphExecutionState}, - 400: {'description': 'Invalid node or link'}, - 404: {'description': 'Session not found'} - } -) -async def update_node( - session_id: str = Path(description = "The id of the session"), - node_path: str = Path(description = "The path to the node in the graph"), - node: Annotated[Union[BaseInvocation.get_invocations()], Field(discriminator="type")] = Body(description = "The new node") -) -> GraphExecutionState: - """Updates a node in the graph and removes all linked edges""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) - if session is None: - return Response(status_code = 404) - - try: - session.update_node(node_path, node) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? - return session - except NodeAlreadyExecutedError: - return Response(status_code = 400) - except IndexError: - return Response(status_code = 400) - - -@session_router.delete('/{session_id}/nodes/{node_path}', - operation_id = 'delete_node', - responses = { - 200: {"model": GraphExecutionState}, - 400: {'description': 'Invalid node or link'}, - 404: {'description': 'Session not found'} - } -) -async def delete_node( - session_id: str = Path(description = "The id of the session"), - node_path: str = Path(description = "The path to the node to delete") -) -> GraphExecutionState: - """Deletes a node in the graph and removes all linked edges""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) - if session is None: - return Response(status_code = 404) - - try: - session.delete_node(node_path) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? - return session - except NodeAlreadyExecutedError: - return Response(status_code = 400) - except IndexError: - return Response(status_code = 400) - - -@session_router.post('/{session_id}/edges', - operation_id = 'add_edge', - responses = { - 200: {"model": GraphExecutionState}, - 400: {'description': 'Invalid node or link'}, - 404: {'description': 'Session not found'} - } -) -async def add_edge( - session_id: str = Path(description = "The id of the session"), - edge: tuple[EdgeConnection, EdgeConnection] = Body(description = "The edge to add") -) -> GraphExecutionState: - """Adds an edge to the graph""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) - if session is None: - return Response(status_code = 404) - - try: - session.add_edge(edge) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? - return session - except NodeAlreadyExecutedError: - return Response(status_code = 400) - except IndexError: - return Response(status_code = 400) - - -# TODO: the edge being in the path here is really ugly, find a better solution -@session_router.delete('/{session_id}/edges/{from_node_id}/{from_field}/{to_node_id}/{to_field}', - operation_id = 'delete_edge', - responses = { - 200: {"model": GraphExecutionState}, - 400: {'description': 'Invalid node or link'}, - 404: {'description': 'Session not found'} - } -) -async def delete_edge( - session_id: str = Path(description = "The id of the session"), - from_node_id: str = Path(description = "The id of the node the edge is coming from"), - from_field: str = Path(description = "The field of the node the edge is coming from"), - to_node_id: str = Path(description = "The id of the node the edge is going to"), - to_field: str = Path(description = "The field of the node the edge is going to") -) -> GraphExecutionState: - """Deletes an edge from the graph""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) - if session is None: - return Response(status_code = 404) - - try: - edge = (EdgeConnection(node_id = from_node_id, field = from_field), EdgeConnection(node_id = to_node_id, field = to_field)) - session.delete_edge(edge) - ApiDependencies.invoker.invoker_services.graph_execution_manager.set(session) # TODO: can this be done automatically, or add node through an API? - return session - except NodeAlreadyExecutedError: - return Response(status_code = 400) - except IndexError: - return Response(status_code = 400) - - -@session_router.put('/{session_id}/invoke', - operation_id = 'invoke_session', - responses = { - 200: {"model": None}, - 202: {'description': 'The invocation is queued'}, - 400: {'description': 'The session has no invocations ready to invoke'}, - 404: {'description': 'Session not found'} - }) -async def invoke_session( - session_id: str = Path(description = "The id of the session to invoke"), - all: bool = Query(default = False, description = "Whether or not to invoke all remaining invocations") -) -> None: - """Invokes a session""" - session = ApiDependencies.invoker.invoker_services.graph_execution_manager.get(session_id) - if session is None: - return Response(status_code = 404) - - if session.is_complete(): - return Response(status_code = 400) - - ApiDependencies.invoker.invoke(session, invoke_all = all) - return Response(status_code=202) diff --git a/ldm/invoke/app/api/sockets.py b/ldm/invoke/app/api/sockets.py deleted file mode 100644 index eb4d5403c0..0000000000 --- a/ldm/invoke/app/api/sockets.py +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from fastapi import FastAPI -from fastapi_socketio import SocketManager -from fastapi_events.handlers.local import local_handler -from fastapi_events.typing import Event -from ..services.events import EventServiceBase - -class SocketIO: - __sio: SocketManager - - def __init__(self, app: FastAPI): - self.__sio = SocketManager(app = app) - self.__sio.on('subscribe', handler=self._handle_sub) - self.__sio.on('unsubscribe', handler=self._handle_unsub) - - local_handler.register( - event_name = EventServiceBase.session_event, - _func=self._handle_session_event - ) - - async def _handle_session_event(self, event: Event): - await self.__sio.emit( - event = event[1]['event'], - data = event[1]['data'], - room = event[1]['data']['graph_execution_state_id'] - ) - - async def _handle_sub(self, sid, data, *args, **kwargs): - if 'session' in data: - self.__sio.enter_room(sid, data['session']) - - # @app.sio.on('unsubscribe') - async def _handle_unsub(self, sid, data, *args, **kwargs): - if 'session' in data: - self.__sio.leave_room(sid, data['session']) diff --git a/ldm/invoke/app/api_app.py b/ldm/invoke/app/api_app.py deleted file mode 100644 index db79b0d7e8..0000000000 --- a/ldm/invoke/app/api_app.py +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -import asyncio -from inspect import signature -from fastapi import FastAPI -from fastapi.openapi.utils import get_openapi -from fastapi.openapi.docs import get_swagger_ui_html, get_redoc_html -from fastapi.staticfiles import StaticFiles -from fastapi_events.middleware import EventHandlerASGIMiddleware -from fastapi_events.handlers.local import local_handler -from fastapi.middleware.cors import CORSMiddleware -from pydantic.schema import schema -import uvicorn -from .api.sockets import SocketIO -from .invocations import * -from .invocations.baseinvocation import BaseInvocation -from .api.routers import images, sessions -from .api.dependencies import ApiDependencies -from ..args import Args - -# Create the app -# TODO: create this all in a method so configuration/etc. can be passed in? -app = FastAPI( - title = "Invoke AI", - docs_url = None, - redoc_url = None -) - -# Add event handler -event_handler_id: int = id(app) -app.add_middleware( - EventHandlerASGIMiddleware, - handlers = [local_handler], # TODO: consider doing this in services to support different configurations - middleware_id = event_handler_id) - -# Add CORS -# TODO: use configuration for this -origins = [] -app.add_middleware( - CORSMiddleware, - allow_origins=origins, - allow_credentials=True, - allow_methods=["*"], - allow_headers=["*"], -) - -socket_io = SocketIO(app) - -config = {} - -# Add startup event to load dependencies -@app.on_event('startup') -async def startup_event(): - args = Args() - config = args.parse_args() - - ApiDependencies.initialize( - args = args, - config = config, - event_handler_id = event_handler_id - ) - -# Shut down threads -@app.on_event('shutdown') -async def shutdown_event(): - ApiDependencies.shutdown() - -# Include all routers -# TODO: REMOVE -# app.include_router( -# invocation.invocation_router, -# prefix = '/api') - -app.include_router( - sessions.session_router, - prefix = '/api' -) - -app.include_router( - images.images_router, - prefix = '/api' -) - -# Build a custom OpenAPI to include all outputs -# TODO: can outputs be included on metadata of invocation schemas somehow? -def custom_openapi(): - if app.openapi_schema: - return app.openapi_schema - openapi_schema = get_openapi( - title = app.title, - description = "An API for invoking AI image operations", - version = "1.0.0", - routes = app.routes - ) - - # Add all outputs - all_invocations = BaseInvocation.get_invocations() - output_types = set() - output_type_titles = dict() - for invoker in all_invocations: - output_type = signature(invoker.invoke).return_annotation - output_types.add(output_type) - - output_schemas = schema(output_types, ref_prefix="#/components/schemas/") - for schema_key, output_schema in output_schemas['definitions'].items(): - openapi_schema["components"]["schemas"][schema_key] = output_schema - - # TODO: note that we assume the schema_key here is the TYPE.__name__ - # This could break in some cases, figure out a better way to do it - output_type_titles[schema_key] = output_schema['title'] - - # Add a reference to the output type to additionalProperties of the invoker schema - for invoker in all_invocations: - invoker_name = invoker.__name__ - output_type = signature(invoker.invoke).return_annotation - output_type_title = output_type_titles[output_type.__name__] - invoker_schema = openapi_schema["components"]["schemas"][invoker_name] - outputs_ref = { '$ref': f'#/components/schemas/{output_type_title}' } - if 'additionalProperties' not in invoker_schema: - invoker_schema['additionalProperties'] = {} - - invoker_schema['additionalProperties']['outputs'] = outputs_ref - - app.openapi_schema = openapi_schema - return app.openapi_schema - -app.openapi = custom_openapi - -# Override API doc favicons -app.mount('/static', StaticFiles(directory='static/dream_web'), name='static') - -@app.get("/docs", include_in_schema=False) -def overridden_swagger(): - return get_swagger_ui_html( - openapi_url=app.openapi_url, - title=app.title, - swagger_favicon_url="/static/favicon.ico" - ) - -@app.get("/redoc", include_in_schema=False) -def overridden_redoc(): - return get_redoc_html( - openapi_url=app.openapi_url, - title=app.title, - redoc_favicon_url="/static/favicon.ico" - ) - -def invoke_api(): - # Start our own event loop for eventing usage - # TODO: determine if there's a better way to do this - loop = asyncio.new_event_loop() - config = uvicorn.Config( - app = app, - host = "0.0.0.0", - port = 9090, - loop = loop) - # Use access_log to turn off logging - - server = uvicorn.Server(config) - loop.run_until_complete(server.serve()) - - -if __name__ == "__main__": - invoke_api() diff --git a/ldm/invoke/app/cli_app.py b/ldm/invoke/app/cli_app.py deleted file mode 100644 index 6071afabb2..0000000000 --- a/ldm/invoke/app/cli_app.py +++ /dev/null @@ -1,306 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -import argparse -import shlex -import os -import time -from typing import Any, Dict, Iterable, Literal, Union, get_args, get_origin, get_type_hints -from pydantic import BaseModel -from pydantic.fields import Field - -from .services.processor import DefaultInvocationProcessor - -from .services.graph import EdgeConnection, GraphExecutionState - -from .services.sqlite import SqliteItemStorage - -from .invocations.image import ImageField -from .services.generate_initializer import get_generate -from .services.image_storage import DiskImageStorage -from .services.invocation_queue import MemoryInvocationQueue -from .invocations.baseinvocation import BaseInvocation -from .services.invocation_services import InvocationServices -from .services.invoker import Invoker, InvokerServices -from .invocations import * -from ..args import Args -from .services.events import EventServiceBase - - -class InvocationCommand(BaseModel): - invocation: Union[BaseInvocation.get_invocations()] = Field(discriminator="type") - - -class InvalidArgs(Exception): - pass - - -def get_invocation_parser() -> argparse.ArgumentParser: - - # Create invocation parser - parser = argparse.ArgumentParser() - def exit(*args, **kwargs): - raise InvalidArgs - parser.exit = exit - - subparsers = parser.add_subparsers(dest='type') - invocation_parsers = dict() - - # Add history parser - history_parser = subparsers.add_parser('history', help="Shows the invocation history") - history_parser.add_argument('count', nargs='?', default=5, type=int, help="The number of history entries to show") - - # Add default parser - default_parser = subparsers.add_parser('default', help="Define a default value for all inputs with a specified name") - default_parser.add_argument('input', type=str, help="The input field") - default_parser.add_argument('value', help="The default value") - - default_parser = subparsers.add_parser('reset_default', help="Resets a default value") - default_parser.add_argument('input', type=str, help="The input field") - - # Create subparsers for each invocation - invocations = BaseInvocation.get_all_subclasses() - for invocation in invocations: - hints = get_type_hints(invocation) - cmd_name = get_args(hints['type'])[0] - command_parser = subparsers.add_parser(cmd_name, help=invocation.__doc__) - invocation_parsers[cmd_name] = command_parser - - # Add linking capability - command_parser.add_argument('--link', '-l', action='append', nargs=3, - help="A link in the format 'dest_field source_node source_field'. source_node can be relative to history (e.g. -1)") - - command_parser.add_argument('--link_node', '-ln', action='append', - help="A link from all fields in the specified node. Node can be relative to history (e.g. -1)") - - # Convert all fields to arguments - fields = invocation.__fields__ - for name, field in fields.items(): - if name in ['id', 'type']: - continue - - if get_origin(field.type_) == Literal: - allowed_values = get_args(field.type_) - allowed_types = set() - for val in allowed_values: - allowed_types.add(type(val)) - allowed_types_list = list(allowed_types) - field_type = allowed_types_list[0] if len(allowed_types) == 1 else Union[allowed_types_list] - - command_parser.add_argument( - f"--{name}", - dest=name, - type=field_type, - default=field.default, - choices = allowed_values, - help=field.field_info.description - ) - else: - command_parser.add_argument( - f"--{name}", - dest=name, - type=field.type_, - default=field.default, - help=field.field_info.description - ) - - return parser - - -def get_invocation_command(invocation) -> str: - fields = invocation.__fields__.items() - type_hints = get_type_hints(type(invocation)) - command = [invocation.type] - for name,field in fields: - if name in ['id', 'type']: - continue - - # TODO: add links - - # Skip image fields when serializing command - type_hint = type_hints.get(name) or None - if type_hint is ImageField or ImageField in get_args(type_hint): - continue - - field_value = getattr(invocation, name) - field_default = field.default - if field_value != field_default: - if type_hint is str or str in get_args(type_hint): - command.append(f'--{name} "{field_value}"') - else: - command.append(f'--{name} {field_value}') - - return ' '.join(command) - - -def get_graph_execution_history(graph_execution_state: GraphExecutionState) -> Iterable[str]: - """Gets the history of fully-executed invocations for a graph execution""" - return (n for n in reversed(graph_execution_state.executed_history) if n in graph_execution_state.graph.nodes) - - -def generate_matching_edges(a: BaseInvocation, b: BaseInvocation) -> list[tuple[EdgeConnection, EdgeConnection]]: - """Generates all possible edges between two invocations""" - atype = type(a) - btype = type(b) - - aoutputtype = atype.get_output_type() - - afields = get_type_hints(aoutputtype) - bfields = get_type_hints(btype) - - matching_fields = set(afields.keys()).intersection(bfields.keys()) - - # Remove invalid fields - invalid_fields = set(['type', 'id']) - matching_fields = matching_fields.difference(invalid_fields) - - edges = [(EdgeConnection(node_id = a.id, field = field), EdgeConnection(node_id = b.id, field = field)) for field in matching_fields] - return edges - - -def invoke_cli(): - args = Args() - config = args.parse_args() - - generate = get_generate(args, config) - - # NOTE: load model on first use, uncomment to load at startup - # TODO: Make this a config option? - #generate.load_model() - - events = EventServiceBase() - - output_folder = os.path.abspath(os.path.join(os.path.dirname(__file__), '../../../outputs')) - - services = InvocationServices( - generate = generate, - events = events, - images = DiskImageStorage(output_folder) - ) - - # TODO: build a file/path manager? - db_location = os.path.join(output_folder, 'invokeai.db') - - invoker_services = InvokerServices( - queue = MemoryInvocationQueue(), - graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = db_location, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() - ) - - invoker = Invoker(services, invoker_services) - session = invoker.create_execution_state() - - parser = get_invocation_parser() - - # Uncomment to print out previous sessions at startup - # print(invoker_services.session_manager.list()) - - # Defaults storage - defaults: Dict[str, Any] = dict() - - while True: - try: - cmd_input = input("> ") - except KeyboardInterrupt: - # Ctrl-c exits - break - - if cmd_input in ['exit','q']: - break; - - if cmd_input in ['--help','help','h','?']: - parser.print_help() - continue - - try: - # Refresh the state of the session - session = invoker.invoker_services.graph_execution_manager.get(session.id) - history = list(get_graph_execution_history(session)) - - # Split the command for piping - cmds = cmd_input.split('|') - start_id = len(history) - current_id = start_id - new_invocations = list() - for cmd in cmds: - # Parse args to create invocation - args = vars(parser.parse_args(shlex.split(cmd.strip()))) - - # Check for special commands - # TODO: These might be better as Pydantic models, similar to the invocations - if args['type'] == 'history': - history_count = args['count'] or 5 - for i in range(min(history_count, len(history))): - entry_id = history[-1 - i] - entry = session.graph.get_node(entry_id) - print(f'{entry_id}: {get_invocation_command(entry.invocation)}') - continue - - if args['type'] == 'reset_default': - if args['input'] in defaults: - del defaults[args['input']] - continue - - if args['type'] == 'default': - field = args['input'] - field_value = args['value'] - defaults[field] = field_value - continue - - # Override defaults - for field_name,field_default in defaults.items(): - if field_name in args: - args[field_name] = field_default - - # Parse invocation - args['id'] = current_id - command = InvocationCommand(invocation = args) - - # Pipe previous command output (if there was a previous command) - edges = [] - if len(history) > 0 or current_id != start_id: - from_id = history[0] if current_id == start_id else str(current_id - 1) - from_node = next(filter(lambda n: n[0].id == from_id, new_invocations))[0] if current_id != start_id else session.graph.get_node(from_id) - matching_edges = generate_matching_edges(from_node, command.invocation) - edges.extend(matching_edges) - - # Parse provided links - if 'link_node' in args and args['link_node']: - for link in args['link_node']: - link_node = session.graph.get_node(link) - matching_edges = generate_matching_edges(link_node, command.invocation) - edges.extend(matching_edges) - - if 'link' in args and args['link']: - for link in args['link']: - edges.append((EdgeConnection(node_id = link[1], field = link[0]), EdgeConnection(node_id = command.invocation.id, field = link[2]))) - - new_invocations.append((command.invocation, edges)) - - current_id = current_id + 1 - - # Command line was parsed successfully - # Add the invocations to the session - for invocation in new_invocations: - session.add_node(invocation[0]) - for edge in invocation[1]: - session.add_edge(edge) - - # Execute all available invocations - invoker.invoke(session, invoke_all = True) - while not session.is_complete(): - # Wait some time - session = invoker.invoker_services.graph_execution_manager.get(session.id) - time.sleep(0.1) - - except InvalidArgs: - print('Invalid command, use "help" to list commands') - continue - - except SystemExit: - continue - - invoker.stop() - - -if __name__ == "__main__": - invoke_cli() diff --git a/ldm/invoke/app/invocations/__init__.py b/ldm/invoke/app/invocations/__init__.py deleted file mode 100644 index 6407a1cdee..0000000000 --- a/ldm/invoke/app/invocations/__init__.py +++ /dev/null @@ -1,8 +0,0 @@ -import os - -__all__ = [] - -dirname = os.path.dirname(os.path.abspath(__file__)) -for f in os.listdir(dirname): - if f != "__init__.py" and os.path.isfile("%s/%s" % (dirname, f)) and f[-3:] == ".py": - __all__.append(f[:-3]) diff --git a/ldm/invoke/app/invocations/baseinvocation.py b/ldm/invoke/app/invocations/baseinvocation.py deleted file mode 100644 index 1ad2d99112..0000000000 --- a/ldm/invoke/app/invocations/baseinvocation.py +++ /dev/null @@ -1,74 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from abc import ABC, abstractmethod -from inspect import signature -from typing import get_args, get_type_hints -from pydantic import BaseModel, Field -from ..services.invocation_services import InvocationServices - - -class InvocationContext: - services: InvocationServices - graph_execution_state_id: str - - def __init__(self, services: InvocationServices, graph_execution_state_id: str): - self.services = services - self.graph_execution_state_id = graph_execution_state_id - - -class BaseInvocationOutput(BaseModel): - """Base class for all invocation outputs""" - - # All outputs must include a type name like this: - # type: Literal['your_output_name'] - - @classmethod - def get_all_subclasses_tuple(cls): - subclasses = [] - toprocess = [cls] - while len(toprocess) > 0: - next = toprocess.pop(0) - next_subclasses = next.__subclasses__() - subclasses.extend(next_subclasses) - toprocess.extend(next_subclasses) - return tuple(subclasses) - - -class BaseInvocation(ABC, BaseModel): - """A node to process inputs and produce outputs. - May use dependency injection in __init__ to receive providers. - """ - - # All invocations must include a type name like this: - # type: Literal['your_output_name'] - - @classmethod - def get_all_subclasses(cls): - subclasses = [] - toprocess = [cls] - while len(toprocess) > 0: - next = toprocess.pop(0) - next_subclasses = next.__subclasses__() - subclasses.extend(next_subclasses) - toprocess.extend(next_subclasses) - return subclasses - - @classmethod - def get_invocations(cls): - return tuple(BaseInvocation.get_all_subclasses()) - - @classmethod - def get_invocations_map(cls): - # Get the type strings out of the literals and into a dictionary - return dict(map(lambda t: (get_args(get_type_hints(t)['type'])[0], t),BaseInvocation.get_all_subclasses())) - - @classmethod - def get_output_type(cls): - return signature(cls.invoke).return_annotation - - @abstractmethod - def invoke(self, context: InvocationContext) -> BaseInvocationOutput: - """Invoke with provided context and return outputs.""" - pass - - id: str = Field(description="The id of this node. Must be unique among all nodes.") diff --git a/ldm/invoke/app/invocations/cv.py b/ldm/invoke/app/invocations/cv.py deleted file mode 100644 index f950669736..0000000000 --- a/ldm/invoke/app/invocations/cv.py +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from typing import Literal -import numpy -from pydantic import Field -from PIL import Image, ImageOps -import cv2 as cv -from .image import ImageField, ImageOutput -from .baseinvocation import BaseInvocation, InvocationContext -from ..services.image_storage import ImageType - - -class CvInpaintInvocation(BaseInvocation): - """Simple inpaint using opencv.""" - type: Literal['cv_inpaint'] = 'cv_inpaint' - - # Inputs - image: ImageField = Field(default=None, description="The image to inpaint") - mask: ImageField = Field(default=None, description="The mask to use when inpainting") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - mask = context.services.images.get(self.mask.image_type, self.mask.image_name) - - # Convert to cv image/mask - # TODO: consider making these utility functions - cv_image = cv.cvtColor(numpy.array(image.convert('RGB')), cv.COLOR_RGB2BGR) - cv_mask = numpy.array(ImageOps.invert(mask)) - - # Inpaint - cv_inpainted = cv.inpaint(cv_image, cv_mask, 3, cv.INPAINT_TELEA) - - # Convert back to Pillow - # TODO: consider making a utility function - image_inpainted = Image.fromarray(cv.cvtColor(cv_inpainted, cv.COLOR_BGR2RGB)) - - image_type = ImageType.INTERMEDIATE - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, image_inpainted) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) diff --git a/ldm/invoke/app/invocations/generate.py b/ldm/invoke/app/invocations/generate.py deleted file mode 100644 index 60b656bf0c..0000000000 --- a/ldm/invoke/app/invocations/generate.py +++ /dev/null @@ -1,160 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from datetime import datetime, timezone -from typing import Any, Literal, Optional, Union -import numpy as np -from pydantic import Field -from PIL import Image -from skimage.exposure.histogram_matching import match_histograms -from .image import ImageField, ImageOutput -from .baseinvocation import BaseInvocation, InvocationContext -from ..services.image_storage import ImageType -from ..services.invocation_services import InvocationServices - - -SAMPLER_NAME_VALUES = Literal["ddim","plms","k_lms","k_dpm_2","k_dpm_2_a","k_euler","k_euler_a","k_heun"] - -# Text to image -class TextToImageInvocation(BaseInvocation): - """Generates an image using text2img.""" - type: Literal['txt2img'] = 'txt2img' - - # Inputs - # TODO: consider making prompt optional to enable providing prompt through a link - prompt: Optional[str] = Field(description="The prompt to generate an image from") - seed: int = Field(default=-1, ge=-1, le=np.iinfo(np.uint32).max, description="The seed to use (-1 for a random seed)") - steps: int = Field(default=10, gt=0, description="The number of steps to use to generate the image") - width: int = Field(default=512, multiple_of=64, gt=0, description="The width of the resulting image") - height: int = Field(default=512, multiple_of=64, gt=0, description="The height of the resulting image") - cfg_scale: float = Field(default=7.5, gt=0, description="The Classifier-Free Guidance, higher values may result in a result closer to the prompt") - sampler_name: SAMPLER_NAME_VALUES = Field(default="k_lms", description="The sampler to use") - seamless: bool = Field(default=False, description="Whether or not to generate an image that can tile without seams") - model: str = Field(default='', description="The model to use (currently ignored)") - progress_images: bool = Field(default=False, description="Whether or not to produce progress images during generation") - - # TODO: pass this an emitter method or something? or a session for dispatching? - def dispatch_progress(self, context: InvocationContext, sample: Any = None, step: int = 0) -> None: - context.services.events.emit_generator_progress( - context.graph_execution_state_id, self.id, step, float(step) / float(self.steps) - ) - - def invoke(self, context: InvocationContext) -> ImageOutput: - - def step_callback(sample, step = 0): - self.dispatch_progress(context, sample, step) - - # Handle invalid model parameter - # TODO: figure out if this can be done via a validator that uses the model_cache - # TODO: How to get the default model name now? - if self.model is None or self.model == '': - self.model = context.services.generate.model_name - - # Set the model (if already cached, this does nothing) - context.services.generate.set_model(self.model) - - results = context.services.generate.prompt2image( - prompt = self.prompt, - step_callback = step_callback, - **self.dict(exclude = {'prompt'}) # Shorthand for passing all of the parameters above manually - ) - - # Results are image and seed, unwrap for now and ignore the seed - # TODO: pre-seed? - # TODO: can this return multiple results? Should it? - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, results[0][0]) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) - - -class ImageToImageInvocation(TextToImageInvocation): - """Generates an image using img2img.""" - type: Literal['img2img'] = 'img2img' - - # Inputs - image: Union[ImageField,None] = Field(description="The input image") - strength: float = Field(default=0.75, gt=0, le=1, description="The strength of the original image") - fit: bool = Field(default=True, description="Whether or not the result should be fit to the aspect ratio of the input image") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = None if self.image is None else context.services.images.get(self.image.image_type, self.image.image_name) - mask = None - - def step_callback(sample, step = 0): - self.dispatch_progress(context, sample, step) - - # Handle invalid model parameter - # TODO: figure out if this can be done via a validator that uses the model_cache - # TODO: How to get the default model name now? - if self.model is None or self.model == '': - self.model = context.services.generate.model_name - - # Set the model (if already cached, this does nothing) - context.services.generate.set_model(self.model) - - results = context.services.generate.prompt2image( - prompt = self.prompt, - init_img = image, - init_mask = mask, - step_callback = step_callback, - **self.dict(exclude = {'prompt','image','mask'}) # Shorthand for passing all of the parameters above manually - ) - - result_image = results[0][0] - - # Results are image and seed, unwrap for now and ignore the seed - # TODO: pre-seed? - # TODO: can this return multiple results? Should it? - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, result_image) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) - - -class InpaintInvocation(ImageToImageInvocation): - """Generates an image using inpaint.""" - type: Literal['inpaint'] = 'inpaint' - - # Inputs - mask: Union[ImageField,None] = Field(description="The mask") - inpaint_replace: float = Field(default=0.0, ge=0.0, le=1.0, description="The amount by which to replace masked areas with latent noise") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = None if self.image is None else context.services.images.get(self.image.image_type, self.image.image_name) - mask = None if self.mask is None else context.services.images.get(self.mask.image_type, self.mask.image_name) - - def step_callback(sample, step = 0): - self.dispatch_progress(context, sample, step) - - # Handle invalid model parameter - # TODO: figure out if this can be done via a validator that uses the model_cache - # TODO: How to get the default model name now? - if self.model is None or self.model == '': - self.model = context.services.generate.model_name - - # Set the model (if already cached, this does nothing) - context.services.generate.set_model(self.model) - - results = context.services.generate.prompt2image( - prompt = self.prompt, - init_img = image, - init_mask = mask, - step_callback = step_callback, - **self.dict(exclude = {'prompt','image','mask'}) # Shorthand for passing all of the parameters above manually - ) - - result_image = results[0][0] - - # Results are image and seed, unwrap for now and ignore the seed - # TODO: pre-seed? - # TODO: can this return multiple results? Should it? - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, result_image) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) diff --git a/ldm/invoke/app/invocations/image.py b/ldm/invoke/app/invocations/image.py deleted file mode 100644 index cb326b1bb7..0000000000 --- a/ldm/invoke/app/invocations/image.py +++ /dev/null @@ -1,219 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from datetime import datetime, timezone -from typing import Literal, Optional -import numpy -from pydantic import Field, BaseModel -from PIL import Image, ImageOps, ImageFilter -from .baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext -from ..services.image_storage import ImageType -from ..services.invocation_services import InvocationServices - - -class ImageField(BaseModel): - """An image field used for passing image objects between invocations""" - image_type: str = Field(default=ImageType.RESULT, description="The type of the image") - image_name: Optional[str] = Field(default=None, description="The name of the image") - - -class ImageOutput(BaseInvocationOutput): - """Base class for invocations that output an image""" - type: Literal['image'] = 'image' - - image: ImageField = Field(default=None, description="The output image") - - -class MaskOutput(BaseInvocationOutput): - """Base class for invocations that output a mask""" - type: Literal['mask'] = 'mask' - - mask: ImageField = Field(default=None, description="The output mask") - - -# TODO: this isn't really necessary anymore -class LoadImageInvocation(BaseInvocation): - """Load an image from a filename and provide it as output.""" - type: Literal['load_image'] = 'load_image' - - # Inputs - image_type: ImageType = Field(description="The type of the image") - image_name: str = Field(description="The name of the image") - - def invoke(self, context: InvocationContext) -> ImageOutput: - return ImageOutput( - image = ImageField(image_type = self.image_type, image_name = self.image_name) - ) - - -class ShowImageInvocation(BaseInvocation): - """Displays a provided image, and passes it forward in the pipeline.""" - type: Literal['show_image'] = 'show_image' - - # Inputs - image: ImageField = Field(default=None, description="The image to show") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - if image: - image.show() - - # TODO: how to handle failure? - - return ImageOutput( - image = ImageField(image_type = self.image.image_type, image_name = self.image.image_name) - ) - - -class CropImageInvocation(BaseInvocation): - """Crops an image to a specified box. The box can be outside of the image.""" - type: Literal['crop'] = 'crop' - - # Inputs - image: ImageField = Field(default=None, description="The image to crop") - x: int = Field(default=0, description="The left x coordinate of the crop rectangle") - y: int = Field(default=0, description="The top y coordinate of the crop rectangle") - width: int = Field(default=512, gt=0, description="The width of the crop rectangle") - height: int = Field(default=512, gt=0, description="The height of the crop rectangle") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - - image_crop = Image.new(mode = 'RGBA', size = (self.width, self.height), color = (0, 0, 0, 0)) - image_crop.paste(image, (-self.x, -self.y)) - - image_type = ImageType.INTERMEDIATE - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, image_crop) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) - - -class PasteImageInvocation(BaseInvocation): - """Pastes an image into another image.""" - type: Literal['paste'] = 'paste' - - # Inputs - base_image: ImageField = Field(default=None, description="The base image") - image: ImageField = Field(default=None, description="The image to paste") - mask: Optional[ImageField] = Field(default=None, description="The mask to use when pasting") - x: int = Field(default=0, description="The left x coordinate at which to paste the image") - y: int = Field(default=0, description="The top y coordinate at which to paste the image") - - def invoke(self, context: InvocationContext) -> ImageOutput: - base_image = context.services.images.get(self.base_image.image_type, self.base_image.image_name) - image = context.services.images.get(self.image.image_type, self.image.image_name) - mask = None if self.mask is None else ImageOps.invert(services.images.get(self.mask.image_type, self.mask.image_name)) - # TODO: probably shouldn't invert mask here... should user be required to do it? - - min_x = min(0, self.x) - min_y = min(0, self.y) - max_x = max(base_image.width, image.width + self.x) - max_y = max(base_image.height, image.height + self.y) - - new_image = Image.new(mode = 'RGBA', size = (max_x - min_x, max_y - min_y), color = (0, 0, 0, 0)) - new_image.paste(base_image, (abs(min_x), abs(min_y))) - new_image.paste(image, (max(0, self.x), max(0, self.y)), mask = mask) - - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, new_image) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) - - -class MaskFromAlphaInvocation(BaseInvocation): - """Extracts the alpha channel of an image as a mask.""" - type: Literal['tomask'] = 'tomask' - - # Inputs - image: ImageField = Field(default=None, description="The image to create the mask from") - invert: bool = Field(default=False, description="Whether or not to invert the mask") - - def invoke(self, context: InvocationContext) -> MaskOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - - image_mask = image.split()[-1] - if self.invert: - image_mask = ImageOps.invert(image_mask) - - image_type = ImageType.INTERMEDIATE - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, image_mask) - return MaskOutput( - mask = ImageField(image_type = image_type, image_name = image_name) - ) - - -class BlurInvocation(BaseInvocation): - """Blurs an image""" - type: Literal['blur'] = 'blur' - - # Inputs - image: ImageField = Field(default=None, description="The image to blur") - radius: float = Field(default=8.0, ge=0, description="The blur radius") - blur_type: Literal['gaussian', 'box'] = Field(default='gaussian', description="The type of blur") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - - blur = ImageFilter.GaussianBlur(self.radius) if self.blur_type == 'gaussian' else ImageFilter.BoxBlur(self.radius) - blur_image = image.filter(blur) - - image_type = ImageType.INTERMEDIATE - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, blur_image) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) - - -class LerpInvocation(BaseInvocation): - """Linear interpolation of all pixels of an image""" - type: Literal['lerp'] = 'lerp' - - # Inputs - image: ImageField = Field(default=None, description="The image to lerp") - min: int = Field(default=0, ge=0, le=255, description="The minimum output value") - max: int = Field(default=255, ge=0, le=255, description="The maximum output value") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - - image_arr = numpy.asarray(image, dtype=numpy.float32) / 255 - image_arr = image_arr * (self.max - self.min) + self.max - - lerp_image = Image.fromarray(numpy.uint8(image_arr)) - - image_type = ImageType.INTERMEDIATE - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, lerp_image) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) - - -class InverseLerpInvocation(BaseInvocation): - """Inverse linear interpolation of all pixels of an image""" - type: Literal['ilerp'] = 'ilerp' - - # Inputs - image: ImageField = Field(default=None, description="The image to lerp") - min: int = Field(default=0, ge=0, le=255, description="The minimum input value") - max: int = Field(default=255, ge=0, le=255, description="The maximum input value") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - - image_arr = numpy.asarray(image, dtype=numpy.float32) - image_arr = numpy.minimum(numpy.maximum(image_arr - self.min, 0) / float(self.max - self.min), 1) * 255 - - ilerp_image = Image.fromarray(numpy.uint8(image_arr)) - - image_type = ImageType.INTERMEDIATE - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, ilerp_image) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) diff --git a/ldm/invoke/app/invocations/prompt.py b/ldm/invoke/app/invocations/prompt.py deleted file mode 100644 index 029cad9660..0000000000 --- a/ldm/invoke/app/invocations/prompt.py +++ /dev/null @@ -1,9 +0,0 @@ -from typing import Literal -from pydantic.fields import Field -from .baseinvocation import BaseInvocationOutput - -class PromptOutput(BaseInvocationOutput): - """Base class for invocations that output a prompt""" - type: Literal['prompt'] = 'prompt' - - prompt: str = Field(default=None, description="The output prompt") diff --git a/ldm/invoke/app/invocations/reconstruct.py b/ldm/invoke/app/invocations/reconstruct.py deleted file mode 100644 index 98201ce837..0000000000 --- a/ldm/invoke/app/invocations/reconstruct.py +++ /dev/null @@ -1,36 +0,0 @@ -from datetime import datetime, timezone -from typing import Literal, Union -from pydantic import Field -from .image import ImageField, ImageOutput -from .baseinvocation import BaseInvocation, InvocationContext -from ..services.image_storage import ImageType -from ..services.invocation_services import InvocationServices - - -class RestoreFaceInvocation(BaseInvocation): - """Restores faces in an image.""" - type: Literal['restore_face'] = 'restore_face' - - # Inputs - image: Union[ImageField,None] = Field(description="The input image") - strength: float = Field(default=0.75, gt=0, le=1, description="The strength of the restoration") - - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - results = context.services.generate.upscale_and_reconstruct( - image_list = [[image, 0]], - upscale = None, - strength = self.strength, # GFPGAN strength - save_original = False, - image_callback = None, - ) - - # Results are image and seed, unwrap for now - # TODO: can this return multiple results? - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, results[0][0]) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) diff --git a/ldm/invoke/app/invocations/upscale.py b/ldm/invoke/app/invocations/upscale.py deleted file mode 100644 index 1df8c44ea8..0000000000 --- a/ldm/invoke/app/invocations/upscale.py +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from datetime import datetime, timezone -from typing import Literal, Union -from pydantic import Field -from .image import ImageField, ImageOutput -from .baseinvocation import BaseInvocation, InvocationContext -from ..services.image_storage import ImageType -from ..services.invocation_services import InvocationServices - - -class UpscaleInvocation(BaseInvocation): - """Upscales an image.""" - type: Literal['upscale'] = 'upscale' - - # Inputs - image: Union[ImageField,None] = Field(description="The input image", default=None) - strength: float = Field(default=0.75, gt=0, le=1, description="The strength") - level: Literal[2,4] = Field(default=2, description = "The upscale level") - - def invoke(self, context: InvocationContext) -> ImageOutput: - image = context.services.images.get(self.image.image_type, self.image.image_name) - results = context.services.generate.upscale_and_reconstruct( - image_list = [[image, 0]], - upscale = (self.level, self.strength), - strength = 0.0, # GFPGAN strength - save_original = False, - image_callback = None, - ) - - # Results are image and seed, unwrap for now - # TODO: can this return multiple results? - image_type = ImageType.RESULT - image_name = context.services.images.create_name(context.graph_execution_state_id, self.id) - context.services.images.save(image_type, image_name, results[0][0]) - return ImageOutput( - image = ImageField(image_type = image_type, image_name = image_name) - ) diff --git a/ldm/invoke/app/services/__init__.py b/ldm/invoke/app/services/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/ldm/invoke/app/services/events.py b/ldm/invoke/app/services/events.py deleted file mode 100644 index 7b850b61ac..0000000000 --- a/ldm/invoke/app/services/events.py +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from typing import Any, Dict - - -class EventServiceBase: - session_event: str = 'session_event' - - """Basic event bus, to have an empty stand-in when not needed""" - def dispatch(self, event_name: str, payload: Any) -> None: - pass - - def __emit_session_event(self, - event_name: str, - payload: Dict) -> None: - self.dispatch( - event_name = EventServiceBase.session_event, - payload = dict( - event = event_name, - data = payload - ) - ) - - # Define events here for every event in the system. - # This will make them easier to integrate until we find a schema generator. - def emit_generator_progress(self, - graph_execution_state_id: str, - invocation_id: str, - step: int, - percent: float - ) -> None: - """Emitted when there is generation progress""" - self.__emit_session_event( - event_name = 'generator_progress', - payload = dict( - graph_execution_state_id = graph_execution_state_id, - invocation_id = invocation_id, - step = step, - percent = percent - ) - ) - - def emit_invocation_complete(self, - graph_execution_state_id: str, - invocation_id: str, - result: Dict - ) -> None: - """Emitted when an invocation has completed""" - self.__emit_session_event( - event_name = 'invocation_complete', - payload = dict( - graph_execution_state_id = graph_execution_state_id, - invocation_id = invocation_id, - result = result - ) - ) - - def emit_invocation_started(self, - graph_execution_state_id: str, - invocation_id: str - ) -> None: - """Emitted when an invocation has started""" - self.__emit_session_event( - event_name = 'invocation_started', - payload = dict( - graph_execution_state_id = graph_execution_state_id, - invocation_id = invocation_id - ) - ) - - def emit_graph_execution_complete(self, graph_execution_state_id: str) -> None: - """Emitted when a session has completed all invocations""" - self.__emit_session_event( - event_name = 'graph_execution_state_complete', - payload = dict( - graph_execution_state_id = graph_execution_state_id - ) - ) diff --git a/ldm/invoke/app/services/generate_initializer.py b/ldm/invoke/app/services/generate_initializer.py deleted file mode 100644 index 39c0fe491e..0000000000 --- a/ldm/invoke/app/services/generate_initializer.py +++ /dev/null @@ -1,233 +0,0 @@ -from argparse import Namespace -import os -import sys -import traceback - -from ...model_manager import ModelManager - -from ...globals import Globals -from ....generate import Generate -import ldm.invoke - - -# TODO: most of this code should be split into individual services as the Generate.py code is deprecated -def get_generate(args, config) -> Generate: - if not args.conf: - config_file = os.path.join(Globals.root,'configs','models.yaml') - if not os.path.exists(config_file): - report_model_error(args, FileNotFoundError(f"The file {config_file} could not be found.")) - - print(f'>> {ldm.invoke.__app_name__}, version {ldm.invoke.__version__}') - print(f'>> InvokeAI runtime directory is "{Globals.root}"') - - # these two lines prevent a horrible warning message from appearing - # when the frozen CLIP tokenizer is imported - import transformers # type: ignore - transformers.logging.set_verbosity_error() - import diffusers - diffusers.logging.set_verbosity_error() - - # Loading Face Restoration and ESRGAN Modules - gfpgan,codeformer,esrgan = load_face_restoration(args) - - # normalize the config directory relative to root - if not os.path.isabs(args.conf): - args.conf = os.path.normpath(os.path.join(Globals.root,args.conf)) - - if args.embeddings: - if not os.path.isabs(args.embedding_path): - embedding_path = os.path.normpath(os.path.join(Globals.root,args.embedding_path)) - else: - embedding_path = args.embedding_path - else: - embedding_path = None - - # migrate legacy models - ModelManager.migrate_models() - - # load the infile as a list of lines - if args.infile: - try: - if os.path.isfile(args.infile): - infile = open(args.infile, 'r', encoding='utf-8') - elif args.infile == '-': # stdin - infile = sys.stdin - else: - raise FileNotFoundError(f'{args.infile} not found.') - except (FileNotFoundError, IOError) as e: - print(f'{e}. Aborting.') - sys.exit(-1) - - # creating a Generate object: - try: - gen = Generate( - conf = args.conf, - model = args.model, - sampler_name = args.sampler_name, - embedding_path = embedding_path, - full_precision = args.full_precision, - precision = args.precision, - gfpgan = gfpgan, - codeformer = codeformer, - esrgan = esrgan, - free_gpu_mem = args.free_gpu_mem, - safety_checker = args.safety_checker, - max_loaded_models = args.max_loaded_models, - ) - except (FileNotFoundError, TypeError, AssertionError) as e: - report_model_error(opt,e) - except (IOError, KeyError) as e: - print(f'{e}. Aborting.') - sys.exit(-1) - - if args.seamless: - print(">> changed to seamless tiling mode") - - # preload the model - try: - gen.load_model() - except KeyError: - pass - except Exception as e: - report_model_error(args, e) - - # try to autoconvert new models - # autoimport new .ckpt files - if path := args.autoconvert: - gen.model_manager.autoconvert_weights( - conf_path=args.conf, - weights_directory=path, - ) - - return gen - - -def load_face_restoration(opt): - try: - gfpgan, codeformer, esrgan = None, None, None - if opt.restore or opt.esrgan: - from ldm.invoke.restoration import Restoration - restoration = Restoration() - if opt.restore: - gfpgan, codeformer = restoration.load_face_restore_models(opt.gfpgan_model_path) - else: - print('>> Face restoration disabled') - if opt.esrgan: - esrgan = restoration.load_esrgan(opt.esrgan_bg_tile) - else: - print('>> Upscaling disabled') - else: - print('>> Face restoration and upscaling disabled') - except (ModuleNotFoundError, ImportError): - print(traceback.format_exc(), file=sys.stderr) - print('>> You may need to install the ESRGAN and/or GFPGAN modules') - return gfpgan,codeformer,esrgan - - -def report_model_error(opt:Namespace, e:Exception): - print(f'** An error occurred while attempting to initialize the model: "{str(e)}"') - print('** This can be caused by a missing or corrupted models file, and can sometimes be fixed by (re)installing the models.') - yes_to_all = os.environ.get('INVOKE_MODEL_RECONFIGURE') - if yes_to_all: - print('** Reconfiguration is being forced by environment variable INVOKE_MODEL_RECONFIGURE') - else: - response = input('Do you want to run invokeai-configure script to select and/or reinstall models? [y] ') - if response.startswith(('n', 'N')): - return - - print('invokeai-configure is launching....\n') - - # Match arguments that were set on the CLI - # only the arguments accepted by the configuration script are parsed - root_dir = ["--root", opt.root_dir] if opt.root_dir is not None else [] - config = ["--config", opt.conf] if opt.conf is not None else [] - previous_args = sys.argv - sys.argv = [ 'invokeai-configure' ] - sys.argv.extend(root_dir) - sys.argv.extend(config) - if yes_to_all is not None: - for arg in yes_to_all.split(): - sys.argv.append(arg) - - from ldm.invoke.config import invokeai_configure - invokeai_configure.main() - # TODO: Figure out how to restart - # print('** InvokeAI will now restart') - # sys.argv = previous_args - # main() # would rather do a os.exec(), but doesn't exist? - # sys.exit(0) - - -# Temporary initializer for Generate until we migrate off of it -def old_get_generate(args, config) -> Generate: - # TODO: Remove the need for globals - from ldm.invoke.globals import Globals - - # alert - setting globals here - Globals.root = os.path.expanduser(args.root_dir or os.environ.get('INVOKEAI_ROOT') or os.path.abspath('.')) - Globals.try_patchmatch = args.patchmatch - - print(f'>> InvokeAI runtime directory is "{Globals.root}"') - - # these two lines prevent a horrible warning message from appearing - # when the frozen CLIP tokenizer is imported - import transformers - transformers.logging.set_verbosity_error() - - # Loading Face Restoration and ESRGAN Modules - gfpgan, codeformer, esrgan = None, None, None - try: - if config.restore or config.esrgan: - from ldm.invoke.restoration import Restoration - restoration = Restoration() - if config.restore: - gfpgan, codeformer = restoration.load_face_restore_models(config.gfpgan_model_path) - else: - print('>> Face restoration disabled') - if config.esrgan: - esrgan = restoration.load_esrgan(config.esrgan_bg_tile) - else: - print('>> Upscaling disabled') - else: - print('>> Face restoration and upscaling disabled') - except (ModuleNotFoundError, ImportError): - print(traceback.format_exc(), file=sys.stderr) - print('>> You may need to install the ESRGAN and/or GFPGAN modules') - - # normalize the config directory relative to root - if not os.path.isabs(config.conf): - config.conf = os.path.normpath(os.path.join(Globals.root,config.conf)) - - if config.embeddings: - if not os.path.isabs(config.embedding_path): - embedding_path = os.path.normpath(os.path.join(Globals.root,config.embedding_path)) - else: - embedding_path = None - - - # TODO: lazy-initialize this by wrapping it - try: - generate = Generate( - conf = config.conf, - model = config.model, - sampler_name = config.sampler_name, - embedding_path = embedding_path, - full_precision = config.full_precision, - precision = config.precision, - gfpgan = gfpgan, - codeformer = codeformer, - esrgan = esrgan, - free_gpu_mem = config.free_gpu_mem, - safety_checker = config.safety_checker, - max_loaded_models = config.max_loaded_models, - ) - except (FileNotFoundError, TypeError, AssertionError): - #emergency_model_reconfigure() # TODO? - sys.exit(-1) - except (IOError, KeyError) as e: - print(f'{e}. Aborting.') - sys.exit(-1) - - generate.free_gpu_mem = config.free_gpu_mem - - return generate diff --git a/ldm/invoke/app/services/graph.py b/ldm/invoke/app/services/graph.py deleted file mode 100644 index 8d1583fc8b..0000000000 --- a/ldm/invoke/app/services/graph.py +++ /dev/null @@ -1,797 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -import copy -import itertools -from types import NoneType -import uuid -import networkx as nx -from pydantic import BaseModel, validator -from pydantic.fields import Field -from typing import Any, Literal, Optional, Union, get_args, get_origin, get_type_hints, Annotated - -from .invocation_services import InvocationServices -from ..invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext -from ..invocations import * - - -class EdgeConnection(BaseModel): - node_id: str = Field(description="The id of the node for this edge connection") - field: str = Field(description="The field for this connection") - - def __eq__(self, other): - return (isinstance(other, self.__class__) and - getattr(other, 'node_id', None) == self.node_id and - getattr(other, 'field', None) == self.field) - - def __hash__(self): - return hash(f'{self.node_id}.{self.field}') - - -def get_output_field(node: BaseInvocation, field: str) -> Any: - node_type = type(node) - node_outputs = get_type_hints(node_type.get_output_type()) - node_output_field = node_outputs.get(field) or None - return node_output_field - - -def get_input_field(node: BaseInvocation, field: str) -> Any: - node_type = type(node) - node_inputs = get_type_hints(node_type) - node_input_field = node_inputs.get(field) or None - return node_input_field - - -def are_connection_types_compatible(from_type: Any, to_type: Any) -> bool: - if not from_type: - return False - if not to_type: - return False - - # TODO: this is pretty forgiving on generic types. Clean that up (need to handle optionals and such) - if from_type and to_type: - # Ports are compatible - if (from_type == to_type or - from_type == Any or - to_type == Any or - Any in get_args(from_type) or - Any in get_args(to_type)): - return True - - if from_type in get_args(to_type): - return True - - if to_type in get_args(from_type): - return True - - if not issubclass(from_type, to_type): - return False - else: - return False - - return True - - -def are_connections_compatible( - from_node: BaseInvocation, - from_field: str, - to_node: BaseInvocation, - to_field: str) -> bool: - """Determines if a connection between fields of two nodes is compatible.""" - - # TODO: handle iterators and collectors - from_node_field = get_output_field(from_node, from_field) - to_node_field = get_input_field(to_node, to_field) - - return are_connection_types_compatible(from_node_field, to_node_field) - - -class NodeAlreadyInGraphError(Exception): - pass - - -class InvalidEdgeError(Exception): - pass - -class NodeNotFoundError(Exception): - pass - -class NodeAlreadyExecutedError(Exception): - pass - - -# TODO: Create and use an Empty output? -class GraphInvocationOutput(BaseInvocationOutput): - type: Literal['graph_output'] = 'graph_output' - - -# TODO: Fill this out and move to invocations -class GraphInvocation(BaseInvocation): - type: Literal['graph'] = 'graph' - - # TODO: figure out how to create a default here - graph: 'Graph' = Field(description="The graph to run", default=None) - - def invoke(self, context: InvocationContext) -> GraphInvocationOutput: - """Invoke with provided services and return outputs.""" - return GraphInvocationOutput() - - -class IterateInvocationOutput(BaseInvocationOutput): - """Used to connect iteration outputs. Will be expanded to a specific output.""" - type: Literal['iterate_output'] = 'iterate_output' - - item: Any = Field(description="The item being iterated over") - - -# TODO: Fill this out and move to invocations -class IterateInvocation(BaseInvocation): - type: Literal['iterate'] = 'iterate' - - collection: list[Any] = Field(description="The list of items to iterate over", default_factory=list) - index: int = Field(description="The index, will be provided on executed iterators", default=0) - - def invoke(self, context: InvocationContext) -> IterateInvocationOutput: - """Produces the outputs as values""" - return IterateInvocationOutput(item = self.collection[self.index]) - - -class CollectInvocationOutput(BaseInvocationOutput): - type: Literal['collect_output'] = 'collect_output' - - collection: list[Any] = Field(description="The collection of input items") - - -class CollectInvocation(BaseInvocation): - """Collects values into a collection""" - type: Literal['collect'] = 'collect' - - item: Any = Field(description="The item to collect (all inputs must be of the same type)", default=None) - collection: list[Any] = Field(description="The collection, will be provided on execution", default_factory=list) - - def invoke(self, context: InvocationContext) -> CollectInvocationOutput: - """Invoke with provided services and return outputs.""" - return CollectInvocationOutput(collection = copy.copy(self.collection)) - - -InvocationsUnion = Union[BaseInvocation.get_invocations()] -InvocationOutputsUnion = Union[BaseInvocationOutput.get_all_subclasses_tuple()] - - -class Graph(BaseModel): - id: str = Field(description="The id of this graph", default_factory=uuid.uuid4) - # TODO: use a list (and never use dict in a BaseModel) because pydantic/fastapi hates me - nodes: dict[str, Annotated[InvocationsUnion, Field(discriminator="type")]] = Field(description="The nodes in this graph", default_factory=dict) - edges: list[tuple[EdgeConnection,EdgeConnection]] = Field(description="The connections between nodes and their fields in this graph", default_factory=list) - - def add_node(self, node: BaseInvocation) -> None: - """Adds a node to a graph - - :raises NodeAlreadyInGraphError: the node is already present in the graph. - """ - - if node.id in self.nodes: - raise NodeAlreadyInGraphError() - - self.nodes[node.id] = node - - - def _get_graph_and_node(self, node_path: str) -> tuple['Graph', str]: - """Returns the graph and node id for a node path.""" - # Materialized graphs may have nodes at the top level - if node_path in self.nodes: - return (self, node_path) - - node_id = node_path if '.' not in node_path else node_path[:node_path.index('.')] - if node_id not in self.nodes: - raise NodeNotFoundError(f'Node {node_path} not found in graph') - - node = self.nodes[node_id] - - if not isinstance(node, GraphInvocation): - # There's more node path left but this isn't a graph - failure - raise NodeNotFoundError('Node path terminated early at a non-graph node') - - return node.graph._get_graph_and_node(node_path[node_path.index('.')+1:]) - - - def delete_node(self, node_path: str) -> None: - """Deletes a node from a graph""" - - try: - graph, node_id = self._get_graph_and_node(node_path) - - # Delete edges for this node - input_edges = self._get_input_edges_and_graphs(node_path) - output_edges = self._get_output_edges_and_graphs(node_path) - - for edge_graph,_,edge in input_edges: - edge_graph.delete_edge(edge) - - for edge_graph,_,edge in output_edges: - edge_graph.delete_edge(edge) - - del graph.nodes[node_id] - - except NodeNotFoundError: - pass # Ignore, not doesn't exist (should this throw?) - - - def add_edge(self, edge: tuple[EdgeConnection, EdgeConnection]) -> None: - """Adds an edge to a graph - - :raises InvalidEdgeError: the provided edge is invalid. - """ - - if self._is_edge_valid(edge) and edge not in self.edges: - self.edges.append(edge) - else: - raise InvalidEdgeError() - - - def delete_edge(self, edge: tuple[EdgeConnection, EdgeConnection]) -> None: - """Deletes an edge from a graph""" - - try: - self.edges.remove(edge) - except KeyError: - pass - - - def is_valid(self) -> bool: - """Validates the graph.""" - - # Validate all subgraphs - for gn in (n for n in self.nodes.values() if isinstance(n, GraphInvocation)): - if not gn.graph.is_valid(): - return False - - # Validate all edges reference nodes in the graph - node_ids = set([e[0].node_id for e in self.edges]+[e[1].node_id for e in self.edges]) - if not all((self.has_node(node_id) for node_id in node_ids)): - return False - - # Validate there are no cycles - g = self.nx_graph_flat() - if not nx.is_directed_acyclic_graph(g): - return False - - # Validate all edge connections are valid - if not all((are_connections_compatible( - self.get_node(e[0].node_id), e[0].field, - self.get_node(e[1].node_id), e[1].field - ) for e in self.edges)): - return False - - # Validate all iterators - # TODO: may need to validate all iterators in subgraphs so edge connections in parent graphs will be available - if not all((self._is_iterator_connection_valid(n.id) for n in self.nodes.values() if isinstance(n, IterateInvocation))): - return False - - # Validate all collectors - # TODO: may need to validate all collectors in subgraphs so edge connections in parent graphs will be available - if not all((self._is_collector_connection_valid(n.id) for n in self.nodes.values() if isinstance(n, CollectInvocation))): - return False - - return True - - def _is_edge_valid(self, edge: tuple[EdgeConnection, EdgeConnection]) -> bool: - """Validates that a new edge doesn't create a cycle in the graph""" - - # Validate that the nodes exist (edges may contain node paths, so we can't just check for nodes directly) - try: - from_node = self.get_node(edge[0].node_id) - to_node = self.get_node(edge[1].node_id) - except NodeNotFoundError: - return False - - # Validate that an edge to this node+field doesn't already exist - input_edges = self._get_input_edges(edge[1].node_id, edge[1].field) - if len(input_edges) > 0 and not isinstance(to_node, CollectInvocation): - return False - - # Validate that no cycles would be created - g = self.nx_graph_flat() - g.add_edge(edge[0].node_id, edge[1].node_id) - if not nx.is_directed_acyclic_graph(g): - return False - - # Validate that the field types are compatible - if not are_connections_compatible(from_node, edge[0].field, to_node, edge[1].field): - return False - - # Validate if iterator output type matches iterator input type (if this edge results in both being set) - if isinstance(to_node, IterateInvocation) and edge[1].field == 'collection': - if not self._is_iterator_connection_valid(edge[1].node_id, new_input = edge[0]): - return False - - # Validate if iterator input type matches output type (if this edge results in both being set) - if isinstance(from_node, IterateInvocation) and edge[0].field == 'item': - if not self._is_iterator_connection_valid(edge[0].node_id, new_output = edge[1]): - return False - - # Validate if collector input type matches output type (if this edge results in both being set) - if isinstance(to_node, CollectInvocation) and edge[1].field == 'item': - if not self._is_collector_connection_valid(edge[1].node_id, new_input = edge[0]): - return False - - # Validate if collector output type matches input type (if this edge results in both being set) - if isinstance(from_node, CollectInvocation) and edge[0].field == 'collection': - if not self._is_collector_connection_valid(edge[0].node_id, new_output = edge[1]): - return False - - return True - - def has_node(self, node_path: str) -> bool: - """Determines whether or not a node exists in the graph.""" - try: - n = self.get_node(node_path) - if n is not None: - return True - else: - return False - except NodeNotFoundError: - return False - - def get_node(self, node_path: str) -> InvocationsUnion: - """Gets a node from the graph using a node path.""" - # Materialized graphs may have nodes at the top level - graph, node_id = self._get_graph_and_node(node_path) - return graph.nodes[node_id] - - - def _get_node_path(self, node_id: str, prefix: Optional[str] = None) -> str: - return node_id if prefix is None or prefix == '' else f'{prefix}.{node_id}' - - - def update_node(self, node_path: str, new_node: BaseInvocation) -> None: - """Updates a node in the graph.""" - graph, node_id = self._get_graph_and_node(node_path) - node = graph.nodes[node_id] - - # Ensure the node type matches the new node - if type(node) != type(new_node): - raise TypeError(f'Node {node_path} is type {type(node)} but new node is type {type(new_node)}') - - # Ensure the new id is either the same or is not in the graph - prefix = None if '.' not in node_path else node_path[:node_path.rindex('.')] - new_path = self._get_node_path(new_node.id, prefix = prefix) - if new_node.id != node.id and self.has_node(new_path): - raise NodeAlreadyInGraphError('Node with id {new_node.id} already exists in graph') - - # Set the new node in the graph - graph.nodes[new_node.id] = new_node - if new_node.id != node.id: - input_edges = self._get_input_edges_and_graphs(node_path) - output_edges = self._get_output_edges_and_graphs(node_path) - - # Delete node and all edges - graph.delete_node(node_path) - - # Create new edges for each input and output - for graph,_,edge in input_edges: - # Remove the graph prefix from the node path - new_graph_node_path = new_node.id if '.' not in edge[1].node_id else f'{edge[1].node_id[edge[1].node_id.rindex("."):]}.{new_node.id}' - graph.add_edge((edge[0], EdgeConnection(node_id = new_graph_node_path, field = edge[1].field))) - - for graph,_,edge in output_edges: - # Remove the graph prefix from the node path - new_graph_node_path = new_node.id if '.' not in edge[0].node_id else f'{edge[0].node_id[edge[0].node_id.rindex("."):]}.{new_node.id}' - graph.add_edge((EdgeConnection(node_id = new_graph_node_path, field = edge[0].field), edge[1])) - - - def _get_input_edges(self, node_path: str, field: Optional[str] = None) -> list[tuple[EdgeConnection,EdgeConnection]]: - """Gets all input edges for a node""" - edges = self._get_input_edges_and_graphs(node_path) - - # Filter to edges that match the field - filtered_edges = (e for e in edges if field is None or e[2][1].field == field) - - # Create full node paths for each edge - return [(EdgeConnection(node_id = self._get_node_path(e[0].node_id, prefix = prefix), field=e[0].field), EdgeConnection(node_id = self._get_node_path(e[1].node_id, prefix = prefix), field=e[1].field)) for _,prefix,e in filtered_edges] - - - def _get_input_edges_and_graphs(self, node_path: str, prefix: Optional[str] = None) -> list[tuple['Graph', str, tuple[EdgeConnection,EdgeConnection]]]: - """Gets all input edges for a node along with the graph they are in and the graph's path""" - edges = list() - - # Return any input edges that appear in this graph - edges.extend([(self, prefix, e) for e in self.edges if e[1].node_id == node_path]) - - node_id = node_path if '.' not in node_path else node_path[:node_path.index('.')] - node = self.nodes[node_id] - - if isinstance(node, GraphInvocation): - graph = node.graph - graph_path = node.id if prefix is None or prefix == '' else self._get_node_path(node.id, prefix = prefix) - graph_edges = graph._get_input_edges_and_graphs(node_path[(len(node_id)+1):], prefix=graph_path) - edges.extend(graph_edges) - - return edges - - - def _get_output_edges(self, node_path: str, field: str) -> list[tuple[EdgeConnection,EdgeConnection]]: - """Gets all output edges for a node""" - edges = self._get_output_edges_and_graphs(node_path) - - # Filter to edges that match the field - filtered_edges = (e for e in edges if e[2][0].field == field) - - # Create full node paths for each edge - return [(EdgeConnection(node_id = self._get_node_path(e[0].node_id, prefix = prefix), field=e[0].field), EdgeConnection(node_id = self._get_node_path(e[1].node_id, prefix = prefix), field=e[1].field)) for _,prefix,e in filtered_edges] - - - def _get_output_edges_and_graphs(self, node_path: str, prefix: Optional[str] = None) -> list[tuple['Graph', str, tuple[EdgeConnection,EdgeConnection]]]: - """Gets all output edges for a node along with the graph they are in and the graph's path""" - edges = list() - - # Return any input edges that appear in this graph - edges.extend([(self, prefix, e) for e in self.edges if e[0].node_id == node_path]) - - node_id = node_path if '.' not in node_path else node_path[:node_path.index('.')] - node = self.nodes[node_id] - - if isinstance(node, GraphInvocation): - graph = node.graph - graph_path = node.id if prefix is None or prefix == '' else self._get_node_path(node.id, prefix = prefix) - graph_edges = graph._get_output_edges_and_graphs(node_path[(len(node_id)+1):], prefix=graph_path) - edges.extend(graph_edges) - - return edges - - - def _is_iterator_connection_valid(self, node_path: str, new_input: Optional[EdgeConnection] = None, new_output: Optional[EdgeConnection] = None) -> bool: - inputs = list([e[0] for e in self._get_input_edges(node_path, 'collection')]) - outputs = list([e[1] for e in self._get_output_edges(node_path, 'item')]) - - if new_input is not None: - inputs.append(new_input) - if new_output is not None: - outputs.append(new_output) - - # Only one input is allowed for iterators - if len(inputs) > 1: - return False - - # Get input and output fields (the fields linked to the iterator's input/output) - input_field = get_output_field(self.get_node(inputs[0].node_id), inputs[0].field) - output_fields = list([get_input_field(self.get_node(e.node_id), e.field) for e in outputs]) - - # Input type must be a list - if get_origin(input_field) != list: - return False - - # Validate that all outputs match the input type - input_field_item_type = get_args(input_field)[0] - if not all((are_connection_types_compatible(input_field_item_type, f) for f in output_fields)): - return False - - return True - - def _is_collector_connection_valid(self, node_path: str, new_input: Optional[EdgeConnection] = None, new_output: Optional[EdgeConnection] = None) -> bool: - inputs = list([e[0] for e in self._get_input_edges(node_path, 'item')]) - outputs = list([e[1] for e in self._get_output_edges(node_path, 'collection')]) - - if new_input is not None: - inputs.append(new_input) - if new_output is not None: - outputs.append(new_output) - - # Get input and output fields (the fields linked to the iterator's input/output) - input_fields = list([get_output_field(self.get_node(e.node_id), e.field) for e in inputs]) - output_fields = list([get_input_field(self.get_node(e.node_id), e.field) for e in outputs]) - - # Validate that all inputs are derived from or match a single type - input_field_types = set([t for input_field in input_fields for t in ([input_field] if get_origin(input_field) == None else get_args(input_field)) if t != NoneType]) # Get unique types - type_tree = nx.DiGraph() - type_tree.add_nodes_from(input_field_types) - type_tree.add_edges_from([e for e in itertools.permutations(input_field_types, 2) if issubclass(e[1], e[0])]) - type_degrees = type_tree.in_degree(type_tree.nodes) - if sum((t[1] == 0 for t in type_degrees)) != 1: - return False # There is more than one root type - - # Get the input root type - input_root_type = next(t[0] for t in type_degrees if t[1] == 0) - - # Verify that all outputs are lists - if not all((get_origin(f) == list for f in output_fields)): - return False - - # Verify that all outputs match the input type (are a base class or the same class) - if not all((issubclass(input_root_type, get_args(f)[0]) for f in output_fields)): - return False - - return True - - def nx_graph(self) -> nx.DiGraph: - """Returns a NetworkX DiGraph representing the layout of this graph""" - # TODO: Cache this? - g = nx.DiGraph() - g.add_nodes_from([n for n in self.nodes.keys()]) - g.add_edges_from(set([(e[0].node_id, e[1].node_id) for e in self.edges])) - return g - - def nx_graph_flat(self, nx_graph: Optional[nx.DiGraph] = None, prefix: Optional[str] = None) -> nx.DiGraph: - """Returns a flattened NetworkX DiGraph, including all subgraphs (but not with iterations expanded)""" - g = nx_graph or nx.DiGraph() - - # Add all nodes from this graph except graph/iteration nodes - g.add_nodes_from([self._get_node_path(n.id, prefix) for n in self.nodes.values() if not isinstance(n, GraphInvocation) and not isinstance(n, IterateInvocation)]) - - # Expand graph nodes - for sgn in (gn for gn in self.nodes.values() if isinstance(gn, GraphInvocation)): - sgn.graph.nx_graph_flat(g, self._get_node_path(sgn.id, prefix)) - - # TODO: figure out if iteration nodes need to be expanded - - unique_edges = set([(e[0].node_id, e[1].node_id) for e in self.edges]) - g.add_edges_from([(self._get_node_path(e[0], prefix), self._get_node_path(e[1], prefix)) for e in unique_edges]) - return g - - -class GraphExecutionState(BaseModel): - """Tracks the state of a graph execution""" - id: str = Field(description="The id of the execution state", default_factory=uuid.uuid4) - - # TODO: Store a reference to the graph instead of the actual graph? - graph: Graph = Field(description="The graph being executed") - - # The graph of materialized nodes - execution_graph: Graph = Field(description="The expanded graph of activated and executed nodes", default_factory=Graph) - - # Nodes that have been executed - executed: set[str] = Field(description="The set of node ids that have been executed", default_factory=set) - executed_history: list[str] = Field(description="The list of node ids that have been executed, in order of execution", default_factory=list) - - # The results of executed nodes - results: dict[str, Annotated[InvocationOutputsUnion, Field(discriminator="type")]] = Field(description="The results of node executions", default_factory=dict) - - # Map of prepared/executed nodes to their original nodes - prepared_source_mapping: dict[str, str] = Field(description="The map of prepared nodes to original graph nodes", default_factory=dict) - - # Map of original nodes to prepared nodes - source_prepared_mapping: dict[str, set[str]] = Field(description="The map of original graph nodes to prepared nodes", default_factory=dict) - - def next(self) -> BaseInvocation | None: - """Gets the next node ready to execute.""" - - # TODO: enable multiple nodes to execute simultaneously by tracking currently executing nodes - # possibly with a timeout? - - # If there are no prepared nodes, prepare some nodes - next_node = self._get_next_node() - if next_node is None: - prepared_id = self._prepare() - - # TODO: prepare multiple nodes at once? - # while prepared_id is not None and not isinstance(self.graph.nodes[prepared_id], IterateInvocation): - # prepared_id = self._prepare() - - if prepared_id is not None: - next_node = self._get_next_node() - - # Get values from edges - if next_node is not None: - self._prepare_inputs(next_node) - - # If next is still none, there's no next node, return None - return next_node - - def complete(self, node_id: str, output: InvocationOutputsUnion): - """Marks a node as complete""" - - if node_id not in self.execution_graph.nodes: - return # TODO: log error? - - # Mark node as executed - self.executed.add(node_id) - self.results[node_id] = output - - # Check if source node is complete (all prepared nodes are complete) - source_node = self.prepared_source_mapping[node_id] - prepared_nodes = self.source_prepared_mapping[source_node] - - if all([n in self.executed for n in prepared_nodes]): - self.executed.add(source_node) - self.executed_history.append(source_node) - - def is_complete(self) -> bool: - """Returns true if the graph is complete""" - return all((k in self.executed for k in self.graph.nodes)) - - def _create_execution_node(self, node_path: str, iteration_node_map: list[tuple[str, str]]) -> list[str]: - """Prepares an iteration node and connects all edges, returning the new node id""" - - node = self.graph.get_node(node_path) - - self_iteration_count = -1 - - # If this is an iterator node, we must create a copy for each iteration - if isinstance(node, IterateInvocation): - # Get input collection edge (should error if there are no inputs) - input_collection_edge = next(iter(self.graph._get_input_edges(node_path, 'collection'))) - input_collection_prepared_node_id = next(n[1] for n in iteration_node_map if n[0] == input_collection_edge[0].node_id) - input_collection_prepared_node_output = self.results[input_collection_prepared_node_id] - input_collection = getattr(input_collection_prepared_node_output, input_collection_edge[0].field) - self_iteration_count = len(input_collection) - - new_nodes = list() - if self_iteration_count == 0: - # TODO: should this raise a warning? It might just happen if an empty collection is input, and should be valid. - return new_nodes - - # Get all input edges - input_edges = self.graph._get_input_edges(node_path) - - # Create new edges for this iteration - # For collect nodes, this may contain multiple inputs to the same field - new_edges = list() - for edge in input_edges: - for input_node_id in (n[1] for n in iteration_node_map if n[0] == edge[0].node_id): - new_edge = (EdgeConnection(node_id = input_node_id, field = edge[0].field), EdgeConnection(node_id = '', field = edge[1].field)) - new_edges.append(new_edge) - - # Create a new node (or one for each iteration of this iterator) - for i in (range(self_iteration_count) if self_iteration_count > 0 else [-1]): - # Create a new node - new_node = copy.deepcopy(node) - - # Create the node id (use a random uuid) - new_node.id = str(uuid.uuid4()) - - # Set the iteration index for iteration invocations - if isinstance(new_node, IterateInvocation): - new_node.index = i - - # Add to execution graph - self.execution_graph.add_node(new_node) - self.prepared_source_mapping[new_node.id] = node_path - if node_path not in self.source_prepared_mapping: - self.source_prepared_mapping[node_path] = set() - self.source_prepared_mapping[node_path].add(new_node.id) - - # Add new edges to execution graph - for edge in new_edges: - new_edge = (edge[0], EdgeConnection(node_id = new_node.id, field = edge[1].field)) - self.execution_graph.add_edge(new_edge) - - new_nodes.append(new_node.id) - - return new_nodes - - def _iterator_graph(self) -> nx.DiGraph: - """Gets a DiGraph with edges to collectors removed so an ancestor search produces all active iterators for any node""" - g = self.graph.nx_graph() - collectors = (n for n in self.graph.nodes if isinstance(self.graph.nodes[n], CollectInvocation)) - for c in collectors: - g.remove_edges_from(list(g.in_edges(c))) - return g - - - def _get_node_iterators(self, node_id: str) -> list[str]: - """Gets iterators for a node""" - g = self._iterator_graph() - iterators = [n for n in nx.ancestors(g, node_id) if isinstance(self.graph.nodes[n], IterateInvocation)] - return iterators - - - def _prepare(self) -> Optional[str]: - # Get flattened source graph - g = self.graph.nx_graph_flat() - - # Find next unprepared node where all source nodes are executed - sorted_nodes = nx.topological_sort(g) - next_node_id = next((n for n in sorted_nodes if n not in self.source_prepared_mapping and all((e[0] in self.executed for e in g.in_edges(n)))), None) - - if next_node_id == None: - return None - - # Get all parents of the next node - next_node_parents = [e[0] for e in g.in_edges(next_node_id)] - - # Create execution nodes - next_node = self.graph.get_node(next_node_id) - new_node_ids = list() - if isinstance(next_node, CollectInvocation): - # Collapse all iterator input mappings and create a single execution node for the collect invocation - all_iteration_mappings = list(itertools.chain(*(((s,p) for p in self.source_prepared_mapping[s]) for s in next_node_parents))) - #all_iteration_mappings = list(set(itertools.chain(*prepared_parent_mappings))) - create_results = self._create_execution_node(next_node_id, all_iteration_mappings) - if create_results is not None: - new_node_ids.extend(create_results) - else: # Iterators or normal nodes - # Get all iterator combinations for this node - # Will produce a list of lists of prepared iterator nodes, from which results can be iterated - iterator_nodes = self._get_node_iterators(next_node_id) - iterator_nodes_prepared = [list(self.source_prepared_mapping[n]) for n in iterator_nodes] - iterator_node_prepared_combinations = list(itertools.product(*iterator_nodes_prepared)) - - # Select the correct prepared parents for each iteration - # For every iterator, the parent must either not be a child of that iterator, or must match the prepared iteration for that iterator - # TODO: Handle a node mapping to none - eg = self.execution_graph.nx_graph_flat() - prepared_parent_mappings = [[(n,self._get_iteration_node(n, g, eg, it)) for n in next_node_parents] for it in iterator_node_prepared_combinations] - - # Create execution node for each iteration - for iteration_mappings in prepared_parent_mappings: - create_results = self._create_execution_node(next_node_id, iteration_mappings) - if create_results is not None: - new_node_ids.extend(create_results) - - return next(iter(new_node_ids), None) - - def _get_iteration_node(self, source_node_path: str, graph: nx.DiGraph, execution_graph: nx.DiGraph, prepared_iterator_nodes: list[str]) -> Optional[str]: - """Gets the prepared version of the specified source node that matches every iteration specified""" - prepared_nodes = self.source_prepared_mapping[source_node_path] - if len(prepared_nodes) == 1: - return next(iter(prepared_nodes)) - - # Check if the requested node is an iterator - prepared_iterator = next((n for n in prepared_nodes if n in prepared_iterator_nodes), None) - if prepared_iterator is not None: - return prepared_iterator - - # Filter to only iterator nodes that are a parent of the specified node, in tuple format (prepared, source) - iterator_source_node_mapping = [(n, self.prepared_source_mapping[n]) for n in prepared_iterator_nodes] - parent_iterators = [itn for itn in iterator_source_node_mapping if nx.has_path(graph, itn[1], source_node_path)] - - return next((n for n in prepared_nodes if all(pit for pit in parent_iterators if nx.has_path(execution_graph, pit[0], n))), None) - - def _get_next_node(self) -> Optional[BaseInvocation]: - g = self.execution_graph.nx_graph() - sorted_nodes = nx.topological_sort(g) - next_node = next((n for n in sorted_nodes if n not in self.executed), None) - if next_node is None: - return None - - return self.execution_graph.nodes[next_node] - - def _prepare_inputs(self, node: BaseInvocation): - input_edges = [e for e in self.execution_graph.edges if e[1].node_id == node.id] - if isinstance(node, CollectInvocation): - output_collection = [getattr(self.results[edge[0].node_id], edge[0].field) for edge in input_edges if edge[1].field == 'item'] - setattr(node, 'collection', output_collection) - else: - for edge in input_edges: - output_value = getattr(self.results[edge[0].node_id], edge[0].field) - setattr(node, edge[1].field, output_value) - - # TODO: Add API for modifying underlying graph that checks if the change will be valid given the current execution state - def _is_edge_valid(self, edge: tuple[EdgeConnection, EdgeConnection]) -> bool: - if not self._is_edge_valid(edge): - return False - - # Invalid if destination has already been prepared or executed - if edge[1].node_id in self.source_prepared_mapping: - return False - - # Otherwise, the edge is valid - return True - - def _is_node_updatable(self, node_id: str) -> bool: - # The node is updatable as long as it hasn't been prepared or executed - return node_id not in self.source_prepared_mapping - - def add_node(self, node: BaseInvocation) -> None: - self.graph.add_node(node) - - def update_node(self, node_path: str, new_node: BaseInvocation) -> None: - if not self._is_node_updatable(node_path): - raise NodeAlreadyExecutedError(f'Node {node_path} has already been prepared or executed and cannot be updated') - self.graph.update_node(node_path, new_node) - - def delete_node(self, node_path: str) -> None: - if not self._is_node_updatable(node_path): - raise NodeAlreadyExecutedError(f'Node {node_path} has already been prepared or executed and cannot be deleted') - self.graph.delete_node(node_path) - - def add_edge(self, edge: tuple[EdgeConnection, EdgeConnection]) -> None: - if not self._is_node_updatable(edge[1].node_id): - raise NodeAlreadyExecutedError(f'Destination node {edge[1].node_id} has already been prepared or executed and cannot be linked to') - self.graph.add_edge(edge) - - def delete_edge(self, edge: tuple[EdgeConnection, EdgeConnection]) -> None: - if not self._is_node_updatable(edge[1].node_id): - raise NodeAlreadyExecutedError(f'Destination node {edge[1].node_id} has already been prepared or executed and cannot have a source edge deleted') - self.graph.delete_edge(edge) - -GraphInvocation.update_forward_refs() diff --git a/ldm/invoke/app/services/image_storage.py b/ldm/invoke/app/services/image_storage.py deleted file mode 100644 index 03227d870b..0000000000 --- a/ldm/invoke/app/services/image_storage.py +++ /dev/null @@ -1,104 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from abc import ABC, abstractmethod -from enum import Enum -import datetime -import os -from pathlib import Path -from queue import Queue -from typing import Dict -from PIL.Image import Image -from ...pngwriter import PngWriter - - -class ImageType(str, Enum): - RESULT = 'results' - INTERMEDIATE = 'intermediates' - UPLOAD = 'uploads' - - -class ImageStorageBase(ABC): - """Responsible for storing and retrieving images.""" - - @abstractmethod - def get(self, image_type: ImageType, image_name: str) -> Image: - pass - - # TODO: make this a bit more flexible for e.g. cloud storage - @abstractmethod - def get_path(self, image_type: ImageType, image_name: str) -> str: - pass - - @abstractmethod - def save(self, image_type: ImageType, image_name: str, image: Image) -> None: - pass - - @abstractmethod - def delete(self, image_type: ImageType, image_name: str) -> None: - pass - - def create_name(self, context_id: str, node_id: str) -> str: - return f'{context_id}_{node_id}_{str(int(datetime.datetime.now(datetime.timezone.utc).timestamp()))}.png' - - -class DiskImageStorage(ImageStorageBase): - """Stores images on disk""" - __output_folder: str - __pngWriter: PngWriter - __cache_ids: Queue # TODO: this is an incredibly naive cache - __cache: Dict[str, Image] - __max_cache_size: int - - def __init__(self, output_folder: str): - self.__output_folder = output_folder - self.__pngWriter = PngWriter(output_folder) - self.__cache = dict() - self.__cache_ids = Queue() - self.__max_cache_size = 10 # TODO: get this from config - - Path(output_folder).mkdir(parents=True, exist_ok=True) - - # TODO: don't hard-code. get/save/delete should maybe take subpath? - for image_type in ImageType: - Path(os.path.join(output_folder, image_type)).mkdir(parents=True, exist_ok=True) - - def get(self, image_type: ImageType, image_name: str) -> Image: - image_path = self.get_path(image_type, image_name) - cache_item = self.__get_cache(image_path) - if cache_item: - return cache_item - - image = Image.open(image_path) - self.__set_cache(image_path, image) - return image - - # TODO: make this a bit more flexible for e.g. cloud storage - def get_path(self, image_type: ImageType, image_name: str) -> str: - path = os.path.join(self.__output_folder, image_type, image_name) - return path - - def save(self, image_type: ImageType, image_name: str, image: Image) -> None: - image_subpath = os.path.join(image_type, image_name) - self.__pngWriter.save_image_and_prompt_to_png(image, "", image_subpath, None) # TODO: just pass full path to png writer - - image_path = self.get_path(image_type, image_name) - self.__set_cache(image_path, image) - - def delete(self, image_type: ImageType, image_name: str) -> None: - image_path = self.get_path(image_type, image_name) - if os.path.exists(image_path): - os.remove(image_path) - - if image_path in self.__cache: - del self.__cache[image_path] - - def __get_cache(self, image_name: str) -> Image: - return None if image_name not in self.__cache else self.__cache[image_name] - - def __set_cache(self, image_name: str, image: Image): - if not image_name in self.__cache: - self.__cache[image_name] = image - self.__cache_ids.put(image_name) # TODO: this should refresh position for LRU cache - if len(self.__cache) > self.__max_cache_size: - cache_id = self.__cache_ids.get() - del self.__cache[cache_id] diff --git a/ldm/invoke/app/services/invocation_queue.py b/ldm/invoke/app/services/invocation_queue.py deleted file mode 100644 index 0a5b5ae3bb..0000000000 --- a/ldm/invoke/app/services/invocation_queue.py +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from abc import ABC, abstractmethod -from queue import Queue - - -# TODO: make this serializable -class InvocationQueueItem: - #session_id: str - graph_execution_state_id: str - invocation_id: str - invoke_all: bool - - def __init__(self, - #session_id: str, - graph_execution_state_id: str, - invocation_id: str, - invoke_all: bool = False): - #self.session_id = session_id - self.graph_execution_state_id = graph_execution_state_id - self.invocation_id = invocation_id - self.invoke_all = invoke_all - - -class InvocationQueueABC(ABC): - """Abstract base class for all invocation queues""" - @abstractmethod - def get(self) -> InvocationQueueItem: - pass - - @abstractmethod - def put(self, item: InvocationQueueItem|None) -> None: - pass - - -class MemoryInvocationQueue(InvocationQueueABC): - __queue: Queue - - def __init__(self): - self.__queue = Queue() - - def get(self) -> InvocationQueueItem: - return self.__queue.get() - - def put(self, item: InvocationQueueItem|None) -> None: - self.__queue.put(item) diff --git a/ldm/invoke/app/services/invocation_services.py b/ldm/invoke/app/services/invocation_services.py deleted file mode 100644 index 9eb5309d3d..0000000000 --- a/ldm/invoke/app/services/invocation_services.py +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) -from .image_storage import ImageStorageBase -from .events import EventServiceBase -from ....generate import Generate - - -class InvocationServices(): - """Services that can be used by invocations""" - generate: Generate # TODO: wrap Generate, or split it up from model? - events: EventServiceBase - images: ImageStorageBase - - def __init__(self, - generate: Generate, - events: EventServiceBase, - images: ImageStorageBase - ): - self.generate = generate - self.events = events - self.images = images diff --git a/ldm/invoke/app/services/invoker.py b/ldm/invoke/app/services/invoker.py deleted file mode 100644 index 796f541781..0000000000 --- a/ldm/invoke/app/services/invoker.py +++ /dev/null @@ -1,109 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -from abc import ABC -from threading import Event, Thread -from .graph import Graph, GraphExecutionState -from .item_storage import ItemStorageABC -from ..invocations.baseinvocation import InvocationContext -from .invocation_services import InvocationServices -from .invocation_queue import InvocationQueueABC, InvocationQueueItem - - -class InvokerServices: - """Services used by the Invoker for execution""" - - queue: InvocationQueueABC - graph_execution_manager: ItemStorageABC[GraphExecutionState] - processor: 'InvocationProcessorABC' - - def __init__(self, - queue: InvocationQueueABC, - graph_execution_manager: ItemStorageABC[GraphExecutionState], - processor: 'InvocationProcessorABC'): - self.queue = queue - self.graph_execution_manager = graph_execution_manager - self.processor = processor - - -class Invoker: - """The invoker, used to execute invocations""" - - services: InvocationServices - invoker_services: InvokerServices - - def __init__(self, - services: InvocationServices, # Services used by nodes to perform invocations - invoker_services: InvokerServices # Services used by the invoker for orchestration - ): - self.services = services - self.invoker_services = invoker_services - self._start() - - - def invoke(self, graph_execution_state: GraphExecutionState, invoke_all: bool = False) -> str|None: - """Determines the next node to invoke and returns the id of the invoked node, or None if there are no nodes to execute""" - - # Get the next invocation - invocation = graph_execution_state.next() - if not invocation: - return None - - # Save the execution state - self.invoker_services.graph_execution_manager.set(graph_execution_state) - - # Queue the invocation - print(f'queueing item {invocation.id}') - self.invoker_services.queue.put(InvocationQueueItem( - #session_id = session.id, - graph_execution_state_id = graph_execution_state.id, - invocation_id = invocation.id, - invoke_all = invoke_all - )) - - return invocation.id - - - def create_execution_state(self, graph: Graph|None = None) -> GraphExecutionState: - """Creates a new execution state for the given graph""" - new_state = GraphExecutionState(graph = Graph() if graph is None else graph) - self.invoker_services.graph_execution_manager.set(new_state) - return new_state - - - def __start_service(self, service) -> None: - # Call start() method on any services that have it - start_op = getattr(service, 'start', None) - if callable(start_op): - start_op(self) - - - def __stop_service(self, service) -> None: - # Call stop() method on any services that have it - stop_op = getattr(service, 'stop', None) - if callable(stop_op): - stop_op(self) - - - def _start(self) -> None: - """Starts the invoker. This is called automatically when the invoker is created.""" - for service in vars(self.invoker_services): - self.__start_service(getattr(self.invoker_services, service)) - - for service in vars(self.services): - self.__start_service(getattr(self.services, service)) - - - def stop(self) -> None: - """Stops the invoker. A new invoker will have to be created to execute further.""" - # First stop all services - for service in vars(self.services): - self.__stop_service(getattr(self.services, service)) - - for service in vars(self.invoker_services): - self.__stop_service(getattr(self.invoker_services, service)) - - self.invoker_services.queue.put(None) - - -class InvocationProcessorABC(ABC): - pass \ No newline at end of file diff --git a/ldm/invoke/app/services/item_storage.py b/ldm/invoke/app/services/item_storage.py deleted file mode 100644 index 738f06cb7e..0000000000 --- a/ldm/invoke/app/services/item_storage.py +++ /dev/null @@ -1,57 +0,0 @@ - -from typing import Callable, TypeVar, Generic -from pydantic import BaseModel, Field -from pydantic.generics import GenericModel -from abc import ABC, abstractmethod - -T = TypeVar('T', bound=BaseModel) - -class PaginatedResults(GenericModel, Generic[T]): - """Paginated results""" - items: list[T] = Field(description = "Items") - page: int = Field(description = "Current Page") - pages: int = Field(description = "Total number of pages") - per_page: int = Field(description = "Number of items per page") - total: int = Field(description = "Total number of items in result") - - -class ItemStorageABC(ABC, Generic[T]): - _on_changed_callbacks: list[Callable[[T], None]] - _on_deleted_callbacks: list[Callable[[str], None]] - - def __init__(self) -> None: - self._on_changed_callbacks = list() - self._on_deleted_callbacks = list() - - """Base item storage class""" - @abstractmethod - def get(self, item_id: str) -> T: - pass - - @abstractmethod - def set(self, item: T) -> None: - pass - - @abstractmethod - def list(self, page: int = 0, per_page: int = 10) -> PaginatedResults[T]: - pass - - @abstractmethod - def search(self, query: str, page: int = 0, per_page: int = 10) -> PaginatedResults[T]: - pass - - def on_changed(self, on_changed: Callable[[T], None]) -> None: - """Register a callback for when an item is changed""" - self._on_changed_callbacks.append(on_changed) - - def on_deleted(self, on_deleted: Callable[[str], None]) -> None: - """Register a callback for when an item is deleted""" - self._on_deleted_callbacks.append(on_deleted) - - def _on_changed(self, item: T) -> None: - for callback in self._on_changed_callbacks: - callback(item) - - def _on_deleted(self, item_id: str) -> None: - for callback in self._on_deleted_callbacks: - callback(item_id) diff --git a/ldm/invoke/app/services/processor.py b/ldm/invoke/app/services/processor.py deleted file mode 100644 index 9b51a6bcbc..0000000000 --- a/ldm/invoke/app/services/processor.py +++ /dev/null @@ -1,78 +0,0 @@ -from threading import Event, Thread -from ..invocations.baseinvocation import InvocationContext -from .invocation_queue import InvocationQueueItem -from .invoker import InvocationProcessorABC, Invoker - - -class DefaultInvocationProcessor(InvocationProcessorABC): - __invoker_thread: Thread - __stop_event: Event - __invoker: Invoker - - def start(self, invoker) -> None: - self.__invoker = invoker - self.__stop_event = Event() - self.__invoker_thread = Thread( - name = "invoker_processor", - target = self.__process, - kwargs = dict(stop_event = self.__stop_event) - ) - self.__invoker_thread.daemon = True # TODO: probably better to just not use threads? - self.__invoker_thread.start() - - - def stop(self, *args, **kwargs) -> None: - self.__stop_event.set() - - - def __process(self, stop_event: Event): - try: - while not stop_event.is_set(): - queue_item: InvocationQueueItem = self.__invoker.invoker_services.queue.get() - if not queue_item: # Probably stopping - continue - - graph_execution_state = self.__invoker.invoker_services.graph_execution_manager.get(queue_item.graph_execution_state_id) - invocation = graph_execution_state.execution_graph.get_node(queue_item.invocation_id) - - # Send starting event - self.__invoker.services.events.emit_invocation_started( - graph_execution_state_id = graph_execution_state.id, - invocation_id = invocation.id - ) - - # Invoke - try: - outputs = invocation.invoke(InvocationContext( - services = self.__invoker.services, - graph_execution_state_id = graph_execution_state.id - )) - - # Save outputs and history - graph_execution_state.complete(invocation.id, outputs) - - # Save the state changes - self.__invoker.invoker_services.graph_execution_manager.set(graph_execution_state) - - # Send complete event - self.__invoker.services.events.emit_invocation_complete( - graph_execution_state_id = graph_execution_state.id, - invocation_id = invocation.id, - result = outputs.dict() - ) - - # Queue any further commands if invoking all - is_complete = graph_execution_state.is_complete() - if queue_item.invoke_all and not is_complete: - self.__invoker.invoke(graph_execution_state, invoke_all = True) - elif is_complete: - self.__invoker.services.events.emit_graph_execution_complete(graph_execution_state.id) - except KeyboardInterrupt: - pass - except Exception as e: - # TODO: Log the error, mark the invocation as failed, and emit an event - print(f'Error invoking {invocation.id}: {e}') - pass - - except KeyboardInterrupt: - ... # Log something? diff --git a/ldm/invoke/app/services/sqlite.py b/ldm/invoke/app/services/sqlite.py deleted file mode 100644 index 8858bbd874..0000000000 --- a/ldm/invoke/app/services/sqlite.py +++ /dev/null @@ -1,119 +0,0 @@ -import sqlite3 -from threading import Lock -from typing import Generic, TypeVar, Union, get_args -from pydantic import BaseModel, parse_raw_as -from .item_storage import ItemStorageABC, PaginatedResults - -T = TypeVar('T', bound=BaseModel) - -sqlite_memory = ':memory:' - -class SqliteItemStorage(ItemStorageABC, Generic[T]): - _filename: str - _table_name: str - _conn: sqlite3.Connection - _cursor: sqlite3.Cursor - _id_field: str - _lock: Lock - - def __init__(self, filename: str, table_name: str, id_field: str = 'id'): - super().__init__() - - self._filename = filename - self._table_name = table_name - self._id_field = id_field # TODO: validate that T has this field - self._lock = Lock() - - self._conn = sqlite3.connect(self._filename, check_same_thread=False) # TODO: figure out a better threading solution - self._cursor = self._conn.cursor() - - self._create_table() - - def _create_table(self): - try: - self._lock.acquire() - self._cursor.execute(f'''CREATE TABLE IF NOT EXISTS {self._table_name} ( - item TEXT, - id TEXT GENERATED ALWAYS AS (json_extract(item, '$.{self._id_field}')) VIRTUAL NOT NULL);''') - self._cursor.execute(f'''CREATE UNIQUE INDEX IF NOT EXISTS {self._table_name}_id ON {self._table_name}(id);''') - finally: - self._lock.release() - - def _parse_item(self, item: str) -> T: - item_type = get_args(self.__orig_class__)[0] - return parse_raw_as(item_type, item) - - def set(self, item: T): - try: - self._lock.acquire() - self._cursor.execute(f'''INSERT OR REPLACE INTO {self._table_name} (item) VALUES (?);''', (item.json(),)) - finally: - self._lock.release() - self._on_changed(item) - - def get(self, id: str) -> Union[T, None]: - try: - self._lock.acquire() - self._cursor.execute(f'''SELECT item FROM {self._table_name} WHERE id = ?;''', (str(id),)) - result = self._cursor.fetchone() - finally: - self._lock.release() - - if not result: - return None - - return self._parse_item(result[0]) - - def delete(self, id: str): - try: - self._lock.acquire() - self._cursor.execute(f'''DELETE FROM {self._table_name} WHERE id = ?;''', (str(id),)) - finally: - self._lock.release() - self._on_deleted(id) - - def list(self, page: int = 0, per_page: int = 10) -> PaginatedResults[T]: - try: - self._lock.acquire() - self._cursor.execute(f'''SELECT item FROM {self._table_name} LIMIT ? OFFSET ?;''', (per_page, page * per_page)) - result = self._cursor.fetchall() - - items = list(map(lambda r: self._parse_item(r[0]), result)) - - self._cursor.execute(f'''SELECT count(*) FROM {self._table_name};''') - count = self._cursor.fetchone()[0] - finally: - self._lock.release() - - pageCount = int(count / per_page) + 1 - - return PaginatedResults[T]( - items = items, - page = page, - pages = pageCount, - per_page = per_page, - total = count - ) - - def search(self, query: str, page: int = 0, per_page: int = 10) -> PaginatedResults[T]: - try: - self._lock.acquire() - self._cursor.execute(f'''SELECT item FROM {self._table_name} WHERE item LIKE ? LIMIT ? OFFSET ?;''', (f'%{query}%', per_page, page * per_page)) - result = self._cursor.fetchall() - - items = list(map(lambda r: self._parse_item(r[0]), result)) - - self._cursor.execute(f'''SELECT count(*) FROM {self._table_name} WHERE item LIKE ?;''', (f'%{query}%',)) - count = self._cursor.fetchone()[0] - finally: - self._lock.release() - - pageCount = int(count / per_page) + 1 - - return PaginatedResults[T]( - items = items, - page = page, - pages = pageCount, - per_page = per_page, - total = count - ) diff --git a/pyproject.toml b/pyproject.toml index bfa36ff7d6..b544b9eb9c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,9 +39,6 @@ dependencies = [ "einops", "eventlet", "facexlib", - "fastapi==0.85.0", - "fastapi-events==0.6.0", - "fastapi-socketio==0.0.9", "flask==2.1.3", "flask_cors==3.0.10", "flask_socketio==5.3.0", @@ -63,7 +60,6 @@ dependencies = [ "pudb", "pypatchmatch", "pyreadline3", - "python-multipart==0.0.5", "pytorch-lightning==1.7.7", "realesrgan", "requests==2.28.2", @@ -78,7 +74,6 @@ dependencies = [ "torchmetrics", "torchvision>=0.14.1", "transformers~=4.25", - "uvicorn[standard]==0.20.0", "windows-curses; sys_platform=='win32'", ] description = "An implementation of Stable Diffusion which provides various new features and options to aid the image generation process" diff --git a/scripts/invoke-new.py b/scripts/invoke-new.py deleted file mode 100644 index 2bc5330a5c..0000000000 --- a/scripts/invoke-new.py +++ /dev/null @@ -1,20 +0,0 @@ -# Copyright (c) 2022 Kyle Schouviller (https://github.com/kyle0654) - -import os -import sys - -def main(): - # Change working directory to the repo root - os.chdir(os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))) - - if '--web' in sys.argv: - from ldm.invoke.app.api_app import invoke_api - invoke_api() - else: - # TODO: Parse some top-level args here. - from ldm.invoke.app.cli_app import invoke_cli - invoke_cli() - - -if __name__ == '__main__': - main() diff --git a/static/dream_web/test.html b/static/dream_web/test.html deleted file mode 100644 index e99abb3703..0000000000 --- a/static/dream_web/test.html +++ /dev/null @@ -1,206 +0,0 @@ - - - - InvokeAI Test - - - - - - - - - - - - - - - -
- -
- - - - - \ No newline at end of file diff --git a/tests/__init__.py b/tests/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tests/nodes/__init__.py b/tests/nodes/__init__.py deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/tests/nodes/test_graph_execution_state.py b/tests/nodes/test_graph_execution_state.py deleted file mode 100644 index 0a5dcc7734..0000000000 --- a/tests/nodes/test_graph_execution_state.py +++ /dev/null @@ -1,114 +0,0 @@ -from .test_invoker import create_edge -from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTestInvocation, PromptCollectionTestInvocation -from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext -from ldm.invoke.app.services.invocation_services import InvocationServices -from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState -from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation -from ldm.invoke.app.invocations.upscale import UpscaleInvocation -import pytest - - -@pytest.fixture -def simple_graph(): - g = Graph() - g.add_node(PromptTestInvocation(id = "1", prompt = "Banana sushi")) - g.add_node(ImageTestInvocation(id = "2")) - g.add_edge(create_edge("1", "prompt", "2", "prompt")) - return g - -@pytest.fixture -def mock_services(): - # NOTE: none of these are actually called by the test invocations - return InvocationServices(generate = None, events = None, images = None) - -def invoke_next(g: GraphExecutionState, services: InvocationServices) -> tuple[BaseInvocation, BaseInvocationOutput]: - n = g.next() - if n is None: - return (None, None) - - print(f'invoking {n.id}: {type(n)}') - o = n.invoke(InvocationContext(services, "1")) - g.complete(n.id, o) - - return (n, o) - -def test_graph_state_executes_in_order(simple_graph, mock_services): - g = GraphExecutionState(graph = simple_graph) - - n1 = invoke_next(g, mock_services) - n2 = invoke_next(g, mock_services) - n3 = g.next() - - assert g.prepared_source_mapping[n1[0].id] == "1" - assert g.prepared_source_mapping[n2[0].id] == "2" - assert n3 is None - assert g.results[n1[0].id].prompt == n1[0].prompt - assert n2[0].prompt == n1[0].prompt - -def test_graph_is_complete(simple_graph, mock_services): - g = GraphExecutionState(graph = simple_graph) - n1 = invoke_next(g, mock_services) - n2 = invoke_next(g, mock_services) - n3 = g.next() - - assert g.is_complete() - -def test_graph_is_not_complete(simple_graph, mock_services): - g = GraphExecutionState(graph = simple_graph) - n1 = invoke_next(g, mock_services) - n2 = g.next() - - assert not g.is_complete() - -# TODO: test completion with iterators/subgraphs - -def test_graph_state_expands_iterator(mock_services): - graph = Graph() - test_prompts = ["Banana sushi", "Cat sushi"] - graph.add_node(PromptCollectionTestInvocation(id = "1", collection = list(test_prompts))) - graph.add_node(IterateInvocation(id = "2")) - graph.add_node(ImageTestInvocation(id = "3")) - graph.add_edge(create_edge("1", "collection", "2", "collection")) - graph.add_edge(create_edge("2", "item", "3", "prompt")) - - g = GraphExecutionState(graph = graph) - n1 = invoke_next(g, mock_services) - n2 = invoke_next(g, mock_services) - n3 = invoke_next(g, mock_services) - n4 = invoke_next(g, mock_services) - n5 = invoke_next(g, mock_services) - - assert g.prepared_source_mapping[n1[0].id] == "1" - assert g.prepared_source_mapping[n2[0].id] == "2" - assert g.prepared_source_mapping[n3[0].id] == "2" - assert g.prepared_source_mapping[n4[0].id] == "3" - assert g.prepared_source_mapping[n5[0].id] == "3" - - assert isinstance(n4[0], ImageTestInvocation) - assert isinstance(n5[0], ImageTestInvocation) - - prompts = [n4[0].prompt, n5[0].prompt] - assert sorted(prompts) == sorted(test_prompts) - -def test_graph_state_collects(mock_services): - graph = Graph() - test_prompts = ["Banana sushi", "Cat sushi"] - graph.add_node(PromptCollectionTestInvocation(id = "1", collection = list(test_prompts))) - graph.add_node(IterateInvocation(id = "2")) - graph.add_node(PromptTestInvocation(id = "3")) - graph.add_node(CollectInvocation(id = "4")) - graph.add_edge(create_edge("1", "collection", "2", "collection")) - graph.add_edge(create_edge("2", "item", "3", "prompt")) - graph.add_edge(create_edge("3", "prompt", "4", "item")) - - g = GraphExecutionState(graph = graph) - n1 = invoke_next(g, mock_services) - n2 = invoke_next(g, mock_services) - n3 = invoke_next(g, mock_services) - n4 = invoke_next(g, mock_services) - n5 = invoke_next(g, mock_services) - n6 = invoke_next(g, mock_services) - - assert isinstance(n6[0], CollectInvocation) - - assert sorted(g.results[n6[0].id].collection) == sorted(test_prompts) diff --git a/tests/nodes/test_invoker.py b/tests/nodes/test_invoker.py deleted file mode 100644 index a6d96f61c0..0000000000 --- a/tests/nodes/test_invoker.py +++ /dev/null @@ -1,85 +0,0 @@ -from .test_nodes import ImageTestInvocation, ListPassThroughInvocation, PromptTestInvocation, PromptCollectionTestInvocation, TestEventService, create_edge, wait_until -from ldm.invoke.app.services.processor import DefaultInvocationProcessor -from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory -from ldm.invoke.app.services.invocation_queue import MemoryInvocationQueue -from ldm.invoke.app.services.invoker import Invoker, InvokerServices -from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext -from ldm.invoke.app.services.invocation_services import InvocationServices -from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation, GraphExecutionState -from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation -from ldm.invoke.app.invocations.upscale import UpscaleInvocation -import pytest - - -@pytest.fixture -def simple_graph(): - g = Graph() - g.add_node(PromptTestInvocation(id = "1", prompt = "Banana sushi")) - g.add_node(ImageTestInvocation(id = "2")) - g.add_edge(create_edge("1", "prompt", "2", "prompt")) - return g - -@pytest.fixture -def mock_services() -> InvocationServices: - # NOTE: none of these are actually called by the test invocations - return InvocationServices(generate = None, events = TestEventService(), images = None) - -@pytest.fixture() -def mock_invoker_services() -> InvokerServices: - return InvokerServices( - queue = MemoryInvocationQueue(), - graph_execution_manager = SqliteItemStorage[GraphExecutionState](filename = sqlite_memory, table_name = 'graph_executions'), - processor = DefaultInvocationProcessor() - ) - -@pytest.fixture() -def mock_invoker(mock_services: InvocationServices, mock_invoker_services: InvokerServices) -> Invoker: - return Invoker( - services = mock_services, - invoker_services = mock_invoker_services - ) - -def test_can_create_graph_state(mock_invoker: Invoker): - g = mock_invoker.create_execution_state() - mock_invoker.stop() - - assert g is not None - assert isinstance(g, GraphExecutionState) - -def test_can_create_graph_state_from_graph(mock_invoker: Invoker, simple_graph): - g = mock_invoker.create_execution_state(graph = simple_graph) - mock_invoker.stop() - - assert g is not None - assert isinstance(g, GraphExecutionState) - assert g.graph == simple_graph - -def test_can_invoke(mock_invoker: Invoker, simple_graph): - g = mock_invoker.create_execution_state(graph = simple_graph) - invocation_id = mock_invoker.invoke(g) - assert invocation_id is not None - - def has_executed_any(g: GraphExecutionState): - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) - return len(g.executed) > 0 - - wait_until(lambda: has_executed_any(g), timeout = 5, interval = 1) - mock_invoker.stop() - - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) - assert len(g.executed) > 0 - -def test_can_invoke_all(mock_invoker: Invoker, simple_graph): - g = mock_invoker.create_execution_state(graph = simple_graph) - invocation_id = mock_invoker.invoke(g, invoke_all = True) - assert invocation_id is not None - - def has_executed_all(g: GraphExecutionState): - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) - return g.is_complete() - - wait_until(lambda: has_executed_all(g), timeout = 5, interval = 1) - mock_invoker.stop() - - g = mock_invoker.invoker_services.graph_execution_manager.get(g.id) - assert g.is_complete() diff --git a/tests/nodes/test_node_graph.py b/tests/nodes/test_node_graph.py deleted file mode 100644 index 1b5b341192..0000000000 --- a/tests/nodes/test_node_graph.py +++ /dev/null @@ -1,501 +0,0 @@ -from ldm.invoke.app.invocations.image import * - -from .test_nodes import ListPassThroughInvocation, PromptTestInvocation -from ldm.invoke.app.services.graph import Graph, GraphInvocation, InvalidEdgeError, NodeAlreadyInGraphError, NodeNotFoundError, are_connections_compatible, EdgeConnection, CollectInvocation, IterateInvocation -from ldm.invoke.app.invocations.generate import ImageToImageInvocation, TextToImageInvocation -from ldm.invoke.app.invocations.upscale import UpscaleInvocation -import pytest - - -# Helpers -def create_edge(from_id: str, from_field: str, to_id: str, to_field: str) -> tuple[EdgeConnection, EdgeConnection]: - return (EdgeConnection(node_id = from_id, field = from_field), EdgeConnection(node_id = to_id, field = to_field)) - -# Tests -def test_connections_are_compatible(): - from_node = TextToImageInvocation(id = "1", prompt = "Banana sushi") - from_field = "image" - to_node = UpscaleInvocation(id = "2") - to_field = "image" - - result = are_connections_compatible(from_node, from_field, to_node, to_field) - - assert result == True - -def test_connections_are_incompatible(): - from_node = TextToImageInvocation(id = "1", prompt = "Banana sushi") - from_field = "image" - to_node = UpscaleInvocation(id = "2") - to_field = "strength" - - result = are_connections_compatible(from_node, from_field, to_node, to_field) - - assert result == False - -def test_connections_incompatible_with_invalid_fields(): - from_node = TextToImageInvocation(id = "1", prompt = "Banana sushi") - from_field = "invalid_field" - to_node = UpscaleInvocation(id = "2") - to_field = "image" - - # From field is invalid - result = are_connections_compatible(from_node, from_field, to_node, to_field) - assert result == False - - # To field is invalid - from_field = "image" - to_field = "invalid_field" - - result = are_connections_compatible(from_node, from_field, to_node, to_field) - assert result == False - -def test_graph_can_add_node(): - g = Graph() - n = TextToImageInvocation(id = "1", prompt = "Banana sushi") - g.add_node(n) - - assert n.id in g.nodes - -def test_graph_fails_to_add_node_with_duplicate_id(): - g = Graph() - n = TextToImageInvocation(id = "1", prompt = "Banana sushi") - g.add_node(n) - n2 = TextToImageInvocation(id = "1", prompt = "Banana sushi the second") - - with pytest.raises(NodeAlreadyInGraphError): - g.add_node(n2) - -def test_graph_updates_node(): - g = Graph() - n = TextToImageInvocation(id = "1", prompt = "Banana sushi") - g.add_node(n) - n2 = TextToImageInvocation(id = "2", prompt = "Banana sushi the second") - g.add_node(n2) - - nu = TextToImageInvocation(id = "1", prompt = "Banana sushi updated") - - g.update_node("1", nu) - - assert g.nodes["1"].prompt == "Banana sushi updated" - -def test_graph_fails_to_update_node_if_type_changes(): - g = Graph() - n = TextToImageInvocation(id = "1", prompt = "Banana sushi") - g.add_node(n) - n2 = UpscaleInvocation(id = "2") - g.add_node(n2) - - nu = UpscaleInvocation(id = "1") - - with pytest.raises(TypeError): - g.update_node("1", nu) - -def test_graph_allows_non_conflicting_id_change(): - g = Graph() - n = TextToImageInvocation(id = "1", prompt = "Banana sushi") - g.add_node(n) - n2 = UpscaleInvocation(id = "2") - g.add_node(n2) - e1 = create_edge(n.id,"image",n2.id,"image") - g.add_edge(e1) - - nu = TextToImageInvocation(id = "3", prompt = "Banana sushi") - g.update_node("1", nu) - - with pytest.raises(NodeNotFoundError): - g.get_node("1") - - assert g.get_node("3").prompt == "Banana sushi" - - assert len(g.edges) == 1 - assert (EdgeConnection(node_id = "3", field = "image"), EdgeConnection(node_id = "2", field = "image")) in g.edges - -def test_graph_fails_to_update_node_id_if_conflict(): - g = Graph() - n = TextToImageInvocation(id = "1", prompt = "Banana sushi") - g.add_node(n) - n2 = TextToImageInvocation(id = "2", prompt = "Banana sushi the second") - g.add_node(n2) - - nu = TextToImageInvocation(id = "2", prompt = "Banana sushi") - with pytest.raises(NodeAlreadyInGraphError): - g.update_node("1", nu) - -def test_graph_adds_edge(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - e = create_edge(n1.id,"image",n2.id,"image") - - g.add_edge(e) - - assert e in g.edges - -def test_graph_fails_to_add_edge_with_cycle(): - g = Graph() - n1 = UpscaleInvocation(id = "1") - g.add_node(n1) - e = create_edge(n1.id,"image",n1.id,"image") - with pytest.raises(InvalidEdgeError): - g.add_edge(e) - -def test_graph_fails_to_add_edge_with_long_cycle(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - n3 = UpscaleInvocation(id = "3") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - e1 = create_edge(n1.id,"image",n2.id,"image") - e2 = create_edge(n2.id,"image",n3.id,"image") - e3 = create_edge(n3.id,"image",n2.id,"image") - g.add_edge(e1) - g.add_edge(e2) - with pytest.raises(InvalidEdgeError): - g.add_edge(e3) - -def test_graph_fails_to_add_edge_with_missing_node_id(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - e1 = create_edge("1","image","3","image") - e2 = create_edge("3","image","1","image") - with pytest.raises(InvalidEdgeError): - g.add_edge(e1) - with pytest.raises(InvalidEdgeError): - g.add_edge(e2) - -def test_graph_fails_to_add_edge_when_destination_exists(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - n3 = UpscaleInvocation(id = "3") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - e1 = create_edge(n1.id,"image",n2.id,"image") - e2 = create_edge(n1.id,"image",n3.id,"image") - e3 = create_edge(n2.id,"image",n3.id,"image") - g.add_edge(e1) - g.add_edge(e2) - with pytest.raises(InvalidEdgeError): - g.add_edge(e3) - - -def test_graph_fails_to_add_edge_with_mismatched_types(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - e1 = create_edge("1","image","2","strength") - with pytest.raises(InvalidEdgeError): - g.add_edge(e1) - -def test_graph_connects_collector(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = TextToImageInvocation(id = "2", prompt = "Banana sushi 2") - n3 = CollectInvocation(id = "3") - n4 = ListPassThroughInvocation(id = "4") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - g.add_node(n4) - - e1 = create_edge("1","image","3","item") - e2 = create_edge("2","image","3","item") - e3 = create_edge("3","collection","4","collection") - g.add_edge(e1) - g.add_edge(e2) - g.add_edge(e3) - -# TODO: test that derived types mixed with base types are compatible - -def test_graph_collector_invalid_with_varying_input_types(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = PromptTestInvocation(id = "2", prompt = "banana sushi 2") - n3 = CollectInvocation(id = "3") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - - e1 = create_edge("1","image","3","item") - e2 = create_edge("2","prompt","3","item") - g.add_edge(e1) - - with pytest.raises(InvalidEdgeError): - g.add_edge(e2) - -def test_graph_collector_invalid_with_varying_input_output(): - g = Graph() - n1 = PromptTestInvocation(id = "1", prompt = "Banana sushi") - n2 = PromptTestInvocation(id = "2", prompt = "Banana sushi 2") - n3 = CollectInvocation(id = "3") - n4 = ListPassThroughInvocation(id = "4") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - g.add_node(n4) - - e1 = create_edge("1","prompt","3","item") - e2 = create_edge("2","prompt","3","item") - e3 = create_edge("3","collection","4","collection") - g.add_edge(e1) - g.add_edge(e2) - - with pytest.raises(InvalidEdgeError): - g.add_edge(e3) - -def test_graph_collector_invalid_with_non_list_output(): - g = Graph() - n1 = PromptTestInvocation(id = "1", prompt = "Banana sushi") - n2 = PromptTestInvocation(id = "2", prompt = "Banana sushi 2") - n3 = CollectInvocation(id = "3") - n4 = PromptTestInvocation(id = "4") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - g.add_node(n4) - - e1 = create_edge("1","prompt","3","item") - e2 = create_edge("2","prompt","3","item") - e3 = create_edge("3","collection","4","prompt") - g.add_edge(e1) - g.add_edge(e2) - - with pytest.raises(InvalidEdgeError): - g.add_edge(e3) - -def test_graph_connects_iterator(): - g = Graph() - n1 = ListPassThroughInvocation(id = "1") - n2 = IterateInvocation(id = "2") - n3 = ImageToImageInvocation(id = "3", prompt = "Banana sushi") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - - e1 = create_edge("1","collection","2","collection") - e2 = create_edge("2","item","3","image") - g.add_edge(e1) - g.add_edge(e2) - -# TODO: TEST INVALID ITERATOR SCENARIOS - -def test_graph_iterator_invalid_if_multiple_inputs(): - g = Graph() - n1 = ListPassThroughInvocation(id = "1") - n2 = IterateInvocation(id = "2") - n3 = ImageToImageInvocation(id = "3", prompt = "Banana sushi") - n4 = ListPassThroughInvocation(id = "4") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - g.add_node(n4) - - e1 = create_edge("1","collection","2","collection") - e2 = create_edge("2","item","3","image") - e3 = create_edge("4","collection","2","collection") - g.add_edge(e1) - g.add_edge(e2) - - with pytest.raises(InvalidEdgeError): - g.add_edge(e3) - -def test_graph_iterator_invalid_if_input_not_list(): - g = Graph() - n1 = TextToImageInvocation(id = "1", promopt = "Banana sushi") - n2 = IterateInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - - e1 = create_edge("1","collection","2","collection") - - with pytest.raises(InvalidEdgeError): - g.add_edge(e1) - -def test_graph_iterator_invalid_if_output_and_input_types_different(): - g = Graph() - n1 = ListPassThroughInvocation(id = "1") - n2 = IterateInvocation(id = "2") - n3 = PromptTestInvocation(id = "3", prompt = "Banana sushi") - g.add_node(n1) - g.add_node(n2) - g.add_node(n3) - - e1 = create_edge("1","collection","2","collection") - e2 = create_edge("2","item","3","prompt") - g.add_edge(e1) - - with pytest.raises(InvalidEdgeError): - g.add_edge(e2) - -def test_graph_validates(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - e1 = create_edge("1","image","2","image") - g.add_edge(e1) - - assert g.is_valid() == True - -def test_graph_invalid_if_edges_reference_missing_nodes(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - g.nodes[n1.id] = n1 - e1 = create_edge("1","image","2","image") - g.edges.append(e1) - - assert g.is_valid() == False - -def test_graph_invalid_if_subgraph_invalid(): - g = Graph() - n1 = GraphInvocation(id = "1") - n1.graph = Graph() - - n1_1 = TextToImageInvocation(id = "2", prompt = "Banana sushi") - n1.graph.nodes[n1_1.id] = n1_1 - e1 = create_edge("1","image","2","image") - n1.graph.edges.append(e1) - - g.nodes[n1.id] = n1 - - assert g.is_valid() == False - -def test_graph_invalid_if_has_cycle(): - g = Graph() - n1 = UpscaleInvocation(id = "1") - n2 = UpscaleInvocation(id = "2") - g.nodes[n1.id] = n1 - g.nodes[n2.id] = n2 - e1 = create_edge("1","image","2","image") - e2 = create_edge("2","image","1","image") - g.edges.append(e1) - g.edges.append(e2) - - assert g.is_valid() == False - -def test_graph_invalid_with_invalid_connection(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.nodes[n1.id] = n1 - g.nodes[n2.id] = n2 - e1 = create_edge("1","image","2","strength") - g.edges.append(e1) - - assert g.is_valid() == False - - -# TODO: Subgraph operations -def test_graph_gets_subgraph_node(): - g = Graph() - n1 = GraphInvocation(id = "1") - n1.graph = Graph() - n1.graph.add_node - - n1_1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n1.graph.add_node(n1_1) - - g.add_node(n1) - - result = g.get_node('1.1') - - assert result is not None - assert result.id == '1' - assert result == n1_1 - -def test_graph_fails_to_get_missing_subgraph_node(): - g = Graph() - n1 = GraphInvocation(id = "1") - n1.graph = Graph() - n1.graph.add_node - - n1_1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n1.graph.add_node(n1_1) - - g.add_node(n1) - - with pytest.raises(NodeNotFoundError): - result = g.get_node('1.2') - -def test_graph_fails_to_enumerate_non_subgraph_node(): - g = Graph() - n1 = GraphInvocation(id = "1") - n1.graph = Graph() - n1.graph.add_node - - n1_1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n1.graph.add_node(n1_1) - - g.add_node(n1) - - n2 = UpscaleInvocation(id = "2") - g.add_node(n2) - - with pytest.raises(NodeNotFoundError): - result = g.get_node('2.1') - -def test_graph_gets_networkx_graph(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - e = create_edge(n1.id,"image",n2.id,"image") - g.add_edge(e) - - nxg = g.nx_graph() - - assert '1' in nxg.nodes - assert '2' in nxg.nodes - assert ('1','2') in nxg.edges - - -# TODO: Graph serializes and deserializes -def test_graph_can_serialize(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - e = create_edge(n1.id,"image",n2.id,"image") - g.add_edge(e) - - # Not throwing on this line is sufficient - json = g.json() - -def test_graph_can_deserialize(): - g = Graph() - n1 = TextToImageInvocation(id = "1", prompt = "Banana sushi") - n2 = UpscaleInvocation(id = "2") - g.add_node(n1) - g.add_node(n2) - e = create_edge(n1.id,"image",n2.id,"image") - g.add_edge(e) - - json = g.json() - g2 = Graph.parse_raw(json) - - assert g2 is not None - assert g2.nodes['1'] is not None - assert g2.nodes['2'] is not None - assert len(g2.edges) == 1 - assert g2.edges[0][0].node_id == '1' - assert g2.edges[0][0].field == 'image' - assert g2.edges[0][1].node_id == '2' - assert g2.edges[0][1].field == 'image' - -def test_graph_can_generate_schema(): - # Not throwing on this line is sufficient - # NOTE: if this test fails, it's PROBABLY because a new invocation type is breaking schema generation - schema = Graph.schema_json(indent = 2) diff --git a/tests/nodes/test_nodes.py b/tests/nodes/test_nodes.py deleted file mode 100644 index fea2e75e95..0000000000 --- a/tests/nodes/test_nodes.py +++ /dev/null @@ -1,92 +0,0 @@ -from typing import Any, Callable, Literal -from ldm.invoke.app.invocations.baseinvocation import BaseInvocation, BaseInvocationOutput, InvocationContext -from ldm.invoke.app.invocations.image import ImageField -from ldm.invoke.app.services.invocation_services import InvocationServices -from pydantic import Field -import pytest - -# Define test invocations before importing anything that uses invocations -class ListPassThroughInvocationOutput(BaseInvocationOutput): - type: Literal['test_list_output'] = 'test_list_output' - - collection: list[ImageField] = Field(default_factory=list) - -class ListPassThroughInvocation(BaseInvocation): - type: Literal['test_list'] = 'test_list' - - collection: list[ImageField] = Field(default_factory=list) - - def invoke(self, context: InvocationContext) -> ListPassThroughInvocationOutput: - return ListPassThroughInvocationOutput(collection = self.collection) - -class PromptTestInvocationOutput(BaseInvocationOutput): - type: Literal['test_prompt_output'] = 'test_prompt_output' - - prompt: str = Field(default = "") - -class PromptTestInvocation(BaseInvocation): - type: Literal['test_prompt'] = 'test_prompt' - - prompt: str = Field(default = "") - - def invoke(self, context: InvocationContext) -> PromptTestInvocationOutput: - return PromptTestInvocationOutput(prompt = self.prompt) - -class ImageTestInvocationOutput(BaseInvocationOutput): - type: Literal['test_image_output'] = 'test_image_output' - - image: ImageField = Field() - -class ImageTestInvocation(BaseInvocation): - type: Literal['test_image'] = 'test_image' - - prompt: str = Field(default = "") - - def invoke(self, context: InvocationContext) -> ImageTestInvocationOutput: - return ImageTestInvocationOutput(image=ImageField(image_name=self.id)) - -class PromptCollectionTestInvocationOutput(BaseInvocationOutput): - type: Literal['test_prompt_collection_output'] = 'test_prompt_collection_output' - collection: list[str] = Field(default_factory=list) - -class PromptCollectionTestInvocation(BaseInvocation): - type: Literal['test_prompt_collection'] = 'test_prompt_collection' - collection: list[str] = Field() - - def invoke(self, context: InvocationContext) -> PromptCollectionTestInvocationOutput: - return PromptCollectionTestInvocationOutput(collection=self.collection.copy()) - - -from ldm.invoke.app.services.events import EventServiceBase -from ldm.invoke.app.services.graph import EdgeConnection - -def create_edge(from_id: str, from_field: str, to_id: str, to_field: str) -> tuple[EdgeConnection, EdgeConnection]: - return (EdgeConnection(node_id = from_id, field = from_field), EdgeConnection(node_id = to_id, field = to_field)) - - -class TestEvent: - event_name: str - payload: Any - - def __init__(self, event_name: str, payload: Any): - self.event_name = event_name - self.payload = payload - -class TestEventService(EventServiceBase): - events: list - - def __init__(self): - super().__init__() - self.events = list() - - def dispatch(self, event_name: str, payload: Any) -> None: - pass - -def wait_until(condition: Callable[[], bool], timeout: int = 10, interval: float = 0.1) -> None: - import time - start_time = time.time() - while time.time() - start_time < timeout: - if condition(): - return - time.sleep(interval) - raise TimeoutError("Condition not met") \ No newline at end of file diff --git a/tests/nodes/test_sqlite.py b/tests/nodes/test_sqlite.py deleted file mode 100644 index e499bbce12..0000000000 --- a/tests/nodes/test_sqlite.py +++ /dev/null @@ -1,112 +0,0 @@ -from ldm.invoke.app.services.sqlite import SqliteItemStorage, sqlite_memory -from pydantic import BaseModel, Field - - -class TestModel(BaseModel): - id: str = Field(description = "ID") - name: str = Field(description = "Name") - - -def test_sqlite_service_can_create_and_get(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - assert db.get('1') == TestModel(id = '1', name = 'Test') - -def test_sqlite_service_can_list(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - db.set(TestModel(id = '2', name = 'Test')) - db.set(TestModel(id = '3', name = 'Test')) - results = db.list() - assert results.page == 0 - assert results.pages == 1 - assert results.per_page == 10 - assert results.total == 3 - assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test'), TestModel(id = '3', name = 'Test')] - -def test_sqlite_service_can_delete(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - db.delete('1') - assert db.get('1') is None - -def test_sqlite_service_calls_set_callback(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - called = False - def on_changed(item: TestModel): - nonlocal called - called = True - db.on_changed(on_changed) - db.set(TestModel(id = '1', name = 'Test')) - assert called - -def test_sqlite_service_calls_delete_callback(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - called = False - def on_deleted(item_id: str): - nonlocal called - called = True - db.on_deleted(on_deleted) - db.set(TestModel(id = '1', name = 'Test')) - db.delete('1') - assert called - -def test_sqlite_service_can_list_with_pagination(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - db.set(TestModel(id = '2', name = 'Test')) - db.set(TestModel(id = '3', name = 'Test')) - results = db.list(page = 0, per_page = 2) - assert results.page == 0 - assert results.pages == 2 - assert results.per_page == 2 - assert results.total == 3 - assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test')] - -def test_sqlite_service_can_list_with_pagination_and_offset(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - db.set(TestModel(id = '2', name = 'Test')) - db.set(TestModel(id = '3', name = 'Test')) - results = db.list(page = 1, per_page = 2) - assert results.page == 1 - assert results.pages == 2 - assert results.per_page == 2 - assert results.total == 3 - assert results.items == [TestModel(id = '3', name = 'Test')] - -def test_sqlite_service_can_search(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - db.set(TestModel(id = '2', name = 'Test')) - db.set(TestModel(id = '3', name = 'Test')) - results = db.search(query = 'Test') - assert results.page == 0 - assert results.pages == 1 - assert results.per_page == 10 - assert results.total == 3 - assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test'), TestModel(id = '3', name = 'Test')] - -def test_sqlite_service_can_search_with_pagination(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - db.set(TestModel(id = '2', name = 'Test')) - db.set(TestModel(id = '3', name = 'Test')) - results = db.search(query = 'Test', page = 0, per_page = 2) - assert results.page == 0 - assert results.pages == 2 - assert results.per_page == 2 - assert results.total == 3 - assert results.items == [TestModel(id = '1', name = 'Test'), TestModel(id = '2', name = 'Test')] - -def test_sqlite_service_can_search_with_pagination_and_offset(): - db = SqliteItemStorage[TestModel](sqlite_memory, 'test', 'id') - db.set(TestModel(id = '1', name = 'Test')) - db.set(TestModel(id = '2', name = 'Test')) - db.set(TestModel(id = '3', name = 'Test')) - results = db.search(query = 'Test', page = 1, per_page = 2) - assert results.page == 1 - assert results.pages == 2 - assert results.per_page == 2 - assert results.total == 3 - assert results.items == [TestModel(id = '3', name = 'Test')] From 8dc56471efbd4c481335b8e671b07aad9d863100 Mon Sep 17 00:00:00 2001 From: mauwii Date: Sun, 26 Feb 2023 22:08:07 +0100 Subject: [PATCH 78/81] fix compel version in pyproject.toml --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index b544b9eb9c..a8aba32b90 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -32,7 +32,7 @@ dependencies = [ "albumentations", "click", "clip_anytorch", - "compel>=0.1.6", + "compel==0.1.7", "datasets", "diffusers[torch]~=0.13", "dnspython==2.2.1", From ecbb3854471766476807f976e96729dda1c6edc1 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Sun, 26 Feb 2023 16:11:07 -0500 Subject: [PATCH 79/81] bump version number --- ldm/invoke/_version.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ldm/invoke/_version.py b/ldm/invoke/_version.py index 323ba35167..d2a097c4ed 100644 --- a/ldm/invoke/_version.py +++ b/ldm/invoke/_version.py @@ -1 +1 @@ -__version__='2.3.1.post1' +__version__='2.3.1.post2' From 70283f7d8d6c6d707fe489abb60e03cda48edc7a Mon Sep 17 00:00:00 2001 From: mauwii Date: Sun, 26 Feb 2023 22:11:11 +0100 Subject: [PATCH 80/81] increase line_length to 120 --- .editorconfig | 2 +- .flake8 | 2 +- pyproject.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.editorconfig b/.editorconfig index 28e2100bab..0ded504342 100644 --- a/.editorconfig +++ b/.editorconfig @@ -13,7 +13,7 @@ trim_trailing_whitespace = true # Python [*.py] indent_size = 4 -max_line_length = 88 +max_line_length = 120 # css [*.css] diff --git a/.flake8 b/.flake8 index 81d8d82bfb..2159b9dcc6 100644 --- a/.flake8 +++ b/.flake8 @@ -1,5 +1,5 @@ [flake8] -max-line-length = 88 +max-line-length = 120 extend-ignore = # See https://github.com/PyCQA/pycodestyle/issues/373 E203, diff --git a/pyproject.toml b/pyproject.toml index a8aba32b90..6b866f80ae 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -161,7 +161,7 @@ target-version = ['py39'] atomic = true extend_skip_glob = ["scripts/orig_scripts/*"] filter_files = true -line_length = 88 +line_length = 120 profile = "black" py_version = 39 remove_redundant_aliases = true From e3a19d4f3e7c7567254b31438e73e9836377ba77 Mon Sep 17 00:00:00 2001 From: Lincoln Stein Date: Sun, 26 Feb 2023 23:02:18 -0500 Subject: [PATCH 81/81] quote output, embedding and autoscan directores in invokeai.init - this should prevent the errors that users are seeing with spaces in the file pathsa quot --- ldm/invoke/config/invokeai_configure.py | 4 ++-- ldm/invoke/config/model_install_backend.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ldm/invoke/config/invokeai_configure.py b/ldm/invoke/config/invokeai_configure.py index bb967fba37..bdcecc55b0 100755 --- a/ldm/invoke/config/invokeai_configure.py +++ b/ldm/invoke/config/invokeai_configure.py @@ -712,8 +712,8 @@ def write_opts(opts: Namespace, init_file: Path): out_file.write(line + "\n") out_file.write( f""" ---outdir={opts.outdir} ---embedding_path={opts.embedding_path} +--outdir="{opts.outdir}" +--embedding_path="{opts.embedding_path}" --precision={opts.precision} --max_loaded_models={int(opts.max_loaded_models)} --{'no-' if not opts.safety_checker else ''}nsfw_checker diff --git a/ldm/invoke/config/model_install_backend.py b/ldm/invoke/config/model_install_backend.py index 60abce8c8b..beab4f9b51 100644 --- a/ldm/invoke/config/model_install_backend.py +++ b/ldm/invoke/config/model_install_backend.py @@ -126,7 +126,7 @@ def install_requested_models( while line := input.readline(): if not line.startswith(argument): output.writelines([line]) - output.writelines([f'{argument} {directory}']) + output.writelines([f'{argument} "{directory}"']) os.replace(replacement,initfile) # -------------------------------------