diff --git a/crates/next-api/src/next_server_nft.rs b/crates/next-api/src/next_server_nft.rs index 587c550c9084..77b3150415b4 100644 --- a/crates/next-api/src/next_server_nft.rs +++ b/crates/next-api/src/next_server_nft.rs @@ -65,6 +65,39 @@ pub(crate) async fn require_hook_modules(project_path: FileSystemPath) -> Result )) } +/// The Pages renderer selected dynamically by `pages/module.compiled` in Turbopack production +/// builds. A Pages API endpoint can load the compiled module through a vendored context when an +/// external dependency imports `next/head`, but neither dynamic edge is visible in its module +/// graph. Include the renderer as an explicit Pages trace entry so that its runtime closure is +/// available when the endpoint initializes. +#[turbo_tasks::function] +pub(crate) async fn pages_renderer_modules(project_path: FileSystemPath) -> Result> { + let asset_context = Vc::upcast(externals_tracing_module_context( + get_tracing_compile_time_info(), + false, + )); + let next_resolve_origin = Vc::upcast(PlainResolveOrigin::new( + asset_context, + get_next_package(project_path).await?.join("_")?, + )); + + Ok(Vc::cell( + cjs_resolve( + next_resolve_origin, + Request::parse_string( + "next/dist/compiled/next-server/pages-turbo.runtime.prod.js".into(), + ), + CommonJsReferenceSubType::Undefined, + None, + ResolveErrorMode::Error, + ) + .await? + .primary_modules() + .await? + .to_vec(), + )) +} + #[turbo_tasks::task_input] #[derive(PartialEq, Eq, TraceRawVcs, Debug, Clone, Hash, Encode, Decode)] enum ServerNftType { @@ -74,18 +107,24 @@ enum ServerNftType { #[turbo_tasks::function] pub async fn next_server_nft_assets(project: Vc) -> Result> { - if *project.next_config().is_using_adapter().await? { + let is_standalone = *project.next_config().is_standalone().await?; + + if *project.next_config().is_using_adapter().await? && !is_standalone { // When using an adapter, `next-server.js.nft.json` / `next-minimal-server.js.nft.json` are // not needed: they exist for `output: 'standalone'` (see `copyTracedFiles`), while an // adapter assembles the deployment from the per-endpoint NFTs in build-complete.ts. What // those two files trace on top of the endpoints - the `styled-jsx` modules the require hook // needs at runtime - is part of every endpoint's trace via // `Project::additional_traced_modules`, so nothing is lost here. + // + // The exception is `output: 'standalone'` configured alongside an adapter: + // `copyTracedFiles` reads `next-server.js.nft.json` unconditionally whenever standalone + // output is requested (adapter or not), so suppressing the pair crashes the build + // (see #96646). return Ok(Vc::cell(vec![])); } let has_next_support = *project.ci_has_next_support().await?; - let is_standalone = *project.next_config().is_standalone().await?; let minimal = ResolvedVc::upcast( ServerNftJsonAsset::new(project, ServerNftType::Minimal) diff --git a/crates/next-api/src/project.rs b/crates/next-api/src/project.rs index 21ce6bf31772..ce5db197ca4f 100644 --- a/crates/next-api/src/project.rs +++ b/crates/next-api/src/project.rs @@ -102,7 +102,7 @@ use crate::{ entrypoints::Entrypoints, instrumentation::InstrumentationEndpoint, middleware::MiddlewareEndpoint, - next_server_nft::require_hook_modules, + next_server_nft::{pages_renderer_modules, require_hook_modules}, pages::PagesProject, route::{ Endpoint, EndpointGroup, EndpointGroupEntry, EndpointGroupKey, EndpointGroups, Endpoints, @@ -2854,15 +2854,17 @@ impl Project { )) } - /// [`Project::additional_traced_modules`] plus the modules - /// `next/dist/server/require-hook` resolves at runtime. Only the Pages Router needs the - /// latter, so this is the traced module list for pages endpoints, while other endpoints use - /// [`Project::additional_traced_modules`]. + /// [`Project::additional_traced_modules`] plus the modules the Pages Router resolves only at + /// runtime: the targets of `next/dist/server/require-hook` and the production Pages renderer. + /// Other endpoints use [`Project::additional_traced_modules`]. #[turbo_tasks::function] pub async fn pages_traced_modules(self: Vc) -> Result> { let hook_modules = require_hook_modules(self.project_path().owned().await?) .owned() .await?; + let renderer_modules = pages_renderer_modules(self.project_path().owned().await?) + .owned() + .await?; Ok(Vc::cell( self.additional_traced_modules() @@ -2870,6 +2872,7 @@ impl Project { .await? .into_iter() .chain(hook_modules) + .chain(renderer_modules) .collect(), )) } diff --git a/crates/next-custom-transforms/src/transforms/react_server_components.rs b/crates/next-custom-transforms/src/transforms/react_server_components.rs index f82d0af79e5a..187d628f02df 100644 --- a/crates/next-custom-transforms/src/transforms/react_server_components.rs +++ b/crates/next-custom-transforms/src/transforms/react_server_components.rs @@ -281,6 +281,24 @@ fn join_atoms(atoms: &[Atom]) -> String { .join(",") } +/// Returns whether `filepath` is a file inside `app_dir`. +/// +/// The App Router file conventions are matched by filename. The same filenames +/// are also valid Pages Router routes, where the conventions do not apply. +/// `pages/sitemap.js` is an ordinary page, not a sitemap. Gate App Router +/// checks on this function to keep them out of the Pages Router. +fn is_in_app_dir(app_dir: &Option, filepath: &str) -> bool { + let Some(app_dir) = app_dir.as_ref().and_then(|app_dir| app_dir.to_str()) else { + return false; + }; + + // The rest of the path must start with a separator. A plain prefix match + // would also accept a sibling directory such as `apparel` for `app`. + filepath + .strip_prefix(app_dir.trim_end_matches(['/', '\\'])) + .is_some_and(|rest| rest.starts_with(['/', '\\'])) +} + /// Consolidated place to parse, generate error messages for the RSC parsing /// errors. fn report_error(app_dir: &Option, filepath: &str, error_kind: RSCErrorKind) { @@ -315,18 +333,7 @@ fn report_error(app_dir: &Option, filepath: &str, error_kind: RSCErrorK (msg, vec![span]) } RSCErrorKind::NextRscErrClientImport((source, span)) => { - let is_app_dir = app_dir - .as_ref() - .map(|app_dir| { - if let Some(app_dir) = app_dir.as_os_str().to_str() { - filepath.starts_with(app_dir) - } else { - false - } - }) - .unwrap_or_default(); - - let msg = if !is_app_dir { + let msg = if !is_in_app_dir(app_dir, filepath) { format!("You're importing a module that depends on \"{source}\". This API is only available in Server Components in the App Router, but you are using it in the Pages Router.\nLearn more: https://nextjs.org/docs/app/building-your-application/rendering/server-components\n\n") } else { format!("You're importing a module that depends on \"{source}\" into a React Client Component module. This API is only available in Server Components but one of its parents is marked with \"use client\", so this module is also a Client Component.\nLearn more: https://nextjs.org/docs/app/building-your-application/rendering\n\n") @@ -842,11 +849,7 @@ impl ReactServerComponentValidator { let is_error_file = re.is_match(&self.filepath); - if is_error_file - && let Some(app_dir) = &self.app_dir - && let Some(app_dir) = app_dir.to_str() - && self.filepath.starts_with(app_dir) - { + if is_error_file && is_in_app_dir(&self.app_dir, &self.filepath) { let span = if let Some(first_item) = module.body.first() { first_item.span() } else { @@ -910,7 +913,8 @@ impl ReactServerComponentValidator { r"[\\/](page|layout|route|icon\d?|apple-icon\d?|opengraph-image\d?|twitter-image\d?|sitemap|robots|manifest)\.{ext_pattern}$", )) .unwrap(); - let is_app_entry = re.is_match(&self.filepath); + let is_app_entry = + re.is_match(&self.filepath) && is_in_app_dir(&self.app_dir, &self.filepath); if is_app_entry { let mut possibly_invalid_exports: FxIndexMap = diff --git a/crates/next-custom-transforms/tests/errors.rs b/crates/next-custom-transforms/tests/errors.rs index 7354be673f5b..98ad7abe9e2f 100644 --- a/crates/next-custom-transforms/tests/errors.rs +++ b/crates/next-custom-transforms/tests/errors.rs @@ -92,6 +92,7 @@ fn next_ssg_errors(input: PathBuf) { #[fixture("tests/errors/react-server-components/**/input.js")] #[fixture("tests/errors/react-server-components/**/page.js")] #[fixture("tests/errors/react-server-components/**/route.js")] +#[fixture("tests/errors/react-server-components/**/sitemap.js")] fn react_server_components_errors(input: PathBuf) { use next_custom_transforms::transforms::react_server_components::{Config, Options}; let is_react_server_layer = input.iter().any(|s| s.to_str() == Some("server-graph")); @@ -99,6 +100,10 @@ fn react_server_components_errors(input: PathBuf) { let use_cache_enabled = input.iter().any(|s| s.to_str() == Some("use-cache")); let taint_enabled = input.iter().any(|s| s.to_str() == Some("taint-enabled")); + // A path segment named `app-dir` marks the fixture as an App Router file. + // Everything up to and including that segment becomes `appDir`. A fixture + // without the segment compiles as a Pages Router file, so the checks that + // only apply inside `appDir` do not run for it. let app_dir = input .iter() .position(|s| s.to_str() == Some("app-dir")) diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/generate-metadata/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/generate-metadata/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/generate-metadata/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/generate-metadata/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/generate-metadata/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/generate-metadata/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/generate-metadata/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/generate-metadata/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/generate-metadata/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/generate-metadata/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/generate-metadata/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/generate-metadata/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-server-side-props/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-server-side-props/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-server-side-props/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-server-side-props/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-server-side-props/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-server-side-props/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-server-side-props/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-server-side-props/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-server-side-props/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-server-side-props/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-server-side-props/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-server-side-props/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-static-props/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-static-props/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-static-props/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-static-props/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-static-props/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-static-props/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-static-props/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-static-props/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-static-props/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-static-props/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/get-static-props/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/get-static-props/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/metadata/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/metadata/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/metadata/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/metadata/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/metadata/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/metadata/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/metadata/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/metadata/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/metadata/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/metadata/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/metadata/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/metadata/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/multiple/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/multiple/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/multiple/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/multiple/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/multiple/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/multiple/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/multiple/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/multiple/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/multiple/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/multiple/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/client-graph/multiple/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/app-dir/multiple/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-static-props/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/pages-sitemap/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-static-props/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/pages-sitemap/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-static-props/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/client-graph/pages-sitemap/sitemap.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-static-props/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/client-graph/pages-sitemap/sitemap.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/instant-with-cache-components/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/instant-with-cache-components/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/instant-with-cache-components/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/instant-with-cache-components/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/instant-with-cache-components/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/instant-with-cache-components/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/instant-with-cache-components/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/instant-with-cache-components/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/cache-components/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/cache-components/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/generate-metadata/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/generate-metadata/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/generate-metadata/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/generate-metadata/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/generate-metadata/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/generate-metadata/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/generate-metadata/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/generate-metadata/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-server-side-props/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-server-side-props/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-server-side-props/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-server-side-props/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-server-side-props/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-server-side-props/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-server-side-props/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-server-side-props/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-server-side-props/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-server-side-props/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-server-side-props/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-server-side-props/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/output.js new file mode 100644 index 000000000000..26b9fcd3f86b --- /dev/null +++ b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/output.js @@ -0,0 +1,4 @@ +export function getStaticProps() {} +export default function() { + return null; +} diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-static-props/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/get-static-props/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/page.js new file mode 100644 index 000000000000..2f629e3a152b --- /dev/null +++ b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/get-static-props/page.js @@ -0,0 +1,5 @@ +export function getStaticProps() {} + +export default function () { + return null +} diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/instant-requires-cache-components/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/instant-requires-cache-components/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/instant-requires-cache-components/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/instant-requires-cache-components/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/instant-requires-cache-components/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/instant-requires-cache-components/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/instant-requires-cache-components/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/instant-requires-cache-components/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/instant-requires-cache-components/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/instant-requires-cache-components/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/instant-requires-cache-components/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/instant-requires-cache-components/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata-conflict/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata-conflict/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata-conflict/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata-conflict/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata-conflict/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata-conflict/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata-conflict/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata-conflict/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata-conflict/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata-conflict/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata-conflict/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata-conflict/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/metadata/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/metadata/page.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/use-cache/output.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/use-cache/output.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/use-cache/output.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/use-cache/output.js diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/use-cache/output.stderr b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/use-cache/output.stderr similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/use-cache/output.stderr rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/use-cache/output.stderr diff --git a/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/use-cache/page.js b/crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/use-cache/page.js similarity index 100% rename from crates/next-custom-transforms/tests/errors/react-server-components/server-graph/use-cache/page.js rename to crates/next-custom-transforms/tests/errors/react-server-components/server-graph/app-dir/use-cache/page.js diff --git a/docs/01-app/02-guides/single-page-applications.mdx b/docs/01-app/02-guides/single-page-applications.mdx index 9e97ccad9545..6d1564c636ae 100644 --- a/docs/01-app/02-guides/single-page-applications.mdx +++ b/docs/01-app/02-guides/single-page-applications.mdx @@ -326,7 +326,7 @@ export function DeletePost({ id }) { For list-like state where each change should appear instantly, you can combine `useActionState` with `useOptimistic`. The example below is a to-do list: a pure reducer defines how each action changes the list, so the client and server share one copy of that logic: -```ts filename="app/reducer.ts" switcher +```ts filename="app/todos-reducer.ts" switcher export type Todo = { id: string; text: string; done: boolean } export type TodoAction = @@ -335,7 +335,7 @@ export type TodoAction = | { type: 'edit'; id: string; text: string } | { type: 'delete'; id: string } -export function applyAction(todos: Todo[], action: TodoAction): Todo[] { +export function todosReducer(todos: Todo[], action: TodoAction): Todo[] { switch (action.type) { case 'add': return [...todos, { id: action.id, text: action.text, done: false }] @@ -355,8 +355,8 @@ export function applyAction(todos: Todo[], action: TodoAction): Todo[] { } ``` -```js filename="app/reducer.js" switcher -export function applyAction(todos, action) { +```js filename="app/todos-reducer.js" switcher +export function todosReducer(todos, action) { switch (action.type) { case 'add': return [...todos, { id: action.id, text: action.text, done: false }] @@ -382,13 +382,13 @@ The Server Action applies the reducer, persists the result, and returns the next 'use server' import { db } from './db' -import { applyAction, type Todo, type TodoAction } from './reducer' +import { todosReducer, type Todo, type TodoAction } from './todos-reducer' -export async function todosReducer( +export async function saveTodos( todos: Todo[], action: TodoAction ): Promise { - const next = applyAction(todos, action) + const next = todosReducer(todos, action) await db.saveTodos(next) return next } @@ -398,10 +398,10 @@ export async function todosReducer( 'use server' import { db } from './db' -import { applyAction } from './reducer' +import { todosReducer } from './todos-reducer' -export async function todosReducer(todos, action) { - const next = applyAction(todos, action) +export async function saveTodos(todos, action) { + const next = todosReducer(todos, action) await db.saveTodos(next) return next } @@ -413,15 +413,12 @@ The client passes the same reducer to `useOptimistic`, so the optimistic update 'use client' import { useActionState, useOptimistic, startTransition } from 'react' -import { todosReducer } from './actions' -import { applyAction, type Todo, type TodoAction } from './reducer' +import { saveTodos } from './actions' +import { todosReducer, type Todo, type TodoAction } from './todos-reducer' export function TodoList({ initialTodos }: { initialTodos: Todo[] }) { - const [todos, dispatch, isPending] = useActionState( - todosReducer, - initialTodos - ) - const [optimisticTodos, addOptimistic] = useOptimistic(todos, applyAction) + const [todos, dispatch, isPending] = useActionState(saveTodos, initialTodos) + const [optimisticTodos, addOptimistic] = useOptimistic(todos, todosReducer) function runAction(action: TodoAction) { startTransition(() => { @@ -473,15 +470,12 @@ export function TodoList({ initialTodos }: { initialTodos: Todo[] }) { 'use client' import { useActionState, useOptimistic, startTransition } from 'react' -import { todosReducer } from './actions' -import { applyAction } from './reducer' +import { saveTodos } from './actions' +import { todosReducer } from './todos-reducer' export function TodoList({ initialTodos }) { - const [todos, dispatch, isPending] = useActionState( - todosReducer, - initialTodos - ) - const [optimisticTodos, addOptimistic] = useOptimistic(todos, applyAction) + const [todos, dispatch, isPending] = useActionState(saveTodos, initialTodos) + const [optimisticTodos, addOptimistic] = useOptimistic(todos, todosReducer) function runAction(action) { startTransition(() => { diff --git a/docs/01-app/03-api-reference/01-directives/use-cache-private.mdx b/docs/01-app/03-api-reference/01-directives/use-cache-private.mdx index 891ede15c877..928eac58dc86 100644 --- a/docs/01-app/03-api-reference/01-directives/use-cache-private.mdx +++ b/docs/01-app/03-api-reference/01-directives/use-cache-private.mdx @@ -49,8 +49,6 @@ export default nextConfig Then add `'use cache: private'` to your function along with a `cacheLife` configuration. -> **Good to know**: This directive is not available in Route Handlers. - ### Basic example In this example, we demonstrate that you can access cookies within a `'use cache: private'` scope: diff --git a/package.json b/package.json index 827173086d8c..9bb6a37cd756 100644 --- a/package.json +++ b/package.json @@ -174,7 +174,7 @@ "@vercel/blob": "2.3.2", "@vercel/devlow-bench": "workspace:*", "@vercel/kv": "3.0.0", - "@vercel/og": "0.11.1", + "@vercel/og": "1.0.1", "abort-controller": "3.0.0", "alex": "9.1.0", "async-sema": "3.0.1", @@ -277,7 +277,7 @@ "request-promise-core": "1.1.2", "resolve-from": "5.0.0", "sass": "1.54.0", - "satori": "0.25.0", + "satori": "0.29.0", "scheduler-builtin": "npm:scheduler@0.28.0-canary-22e4f993-20260811", "scheduler-experimental-builtin": "npm:scheduler@0.0.0-experimental-22e4f993-20260811", "seedrandom": "3.0.5", diff --git a/packages/next/src/build/adapter/build-complete.ts b/packages/next/src/build/adapter/build-complete.ts index 13aeda0dcf05..4d6e4cda620d 100644 --- a/packages/next/src/build/adapter/build-complete.ts +++ b/packages/next/src/build/adapter/build-complete.ts @@ -2437,6 +2437,37 @@ async function getSharedNodeAssets({ sharedTraceIgnores ) + // The require hook redirects shared-runtime imports from external packages + // to the Pages vendored contexts. Those contexts load module.compiled, whose + // runtime dependency is selected dynamically. Turbopack includes this via + // `Project::pages_traced_modules`; trace the Webpack runtime here. + const pagesRuntimePath = require.resolve( + 'next/dist/compiled/next-server/pages.runtime.prod.js' + ) + const pagesRuntimeTrace = await nodeFileTrace([pagesRuntimePath], { + base: outputFileTracingRoot, + ignore: sharedIgnoreFn, + moduleSyncCatchall: true, + }) + pagesRuntimeTrace.esmFileList.forEach((item) => + pagesRuntimeTrace.fileList.add(item) + ) + + for (const tracingRootRelativeFilePath of pagesRuntimeTrace.fileList) { + const absoluteFilePath = path.join( + outputFileTracingRoot, + tracingRootRelativeFilePath + ) + await pushAsset( + pagesSharedNodeAssets, + pagesSharedNodeAssetsHashes, + path.relative(repoRoot, absoluteFilePath), + absoluteFilePath, + bundler, + salt + ) + } + // These are modules that are necessary for bootstrapping node env const necessaryNodeDependencies = [ require.resolve('next/dist/server/node-environment'), diff --git a/packages/next/src/compiled/@vercel/og/index.edge.js b/packages/next/src/compiled/@vercel/og/index.edge.js index 629fd6190d23..962342eb3326 100644 --- a/packages/next/src/compiled/@vercel/og/index.edge.js +++ b/packages/next/src/compiled/@vercel/og/index.edge.js @@ -3648,7 +3648,7 @@ var $557adaaeb0c7885f$var$LineBreaker = class { }; $557adaaeb0c7885f$exports = $557adaaeb0c7885f$var$LineBreaker; -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/standalone.js +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/standalone.js var import_css_to_react_native = __toESM(require_css_to_react_native(), 1); var import_css_background_parser = __toESM(require_css_background_parser(), 1); var import_css_box_shadow = __toESM(require_css_box_shadow(), 1); @@ -3785,7 +3785,7 @@ var parseCSSColor = (str) => { }; var index_esm_default = parseCSSColor; -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/standalone.js +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/standalone.js var import_postcss_value_parser = __toESM(require_lib(), 1); var import_css_to_react_native2 = __toESM(require_css_to_react_native(), 1); var import_postcss_value_parser2 = __toESM(require_lib(), 1); @@ -3853,7 +3853,7 @@ function S(e) { return /(circle|ellipse|at)/.test(e) ? false : /^(rgba?|hwb|hsl|lab|lch|oklab|color|#|[a-zA-Z]+)/.test(e); } -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/standalone.js +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/standalone.js var import_css_to_react_native3 = __toESM(require_css_to_react_native(), 1); // node_modules/.pnpm/@shuding+opentype.js@1.4.0-beta.0/node_modules/@shuding/opentype.js/dist/opentype.module.js @@ -3960,13 +3960,13 @@ for (i = 0; i < 32768; ++i) { } var x2; var i; -var hMap = function(cd2, mb, r) { - var s = cd2.length; +var hMap = function(cd, mb, r) { + var s = cd.length; var i = 0; var l2 = new u16(mb); for (; i < s; ++i) { - if (cd2[i]) { - ++l2[cd2[i] - 1]; + if (cd[i]) { + ++l2[cd[i] - 1]; } } var le = new u16(mb); @@ -3978,10 +3978,10 @@ var hMap = function(cd2, mb, r) { co = new u16(1 << mb); var rvb = 15 - mb; for (i = 0; i < s; ++i) { - if (cd2[i]) { - var sv = i << 4 | cd2[i]; - var r_1 = mb - cd2[i]; - var v2 = le[cd2[i] - 1]++ << r_1; + if (cd[i]) { + var sv = i << 4 | cd[i]; + var r_1 = mb - cd[i]; + var v2 = le[cd[i] - 1]++ << r_1; for (var m2 = v2 | (1 << r_1) - 1; v2 <= m2; ++v2) { co[rev[v2] >>> rvb] = sv; } @@ -3990,8 +3990,8 @@ var hMap = function(cd2, mb, r) { } else { co = new u16(s); for (i = 0; i < s; ++i) { - if (cd2[i]) { - co[i] = rev[le[cd2[i] - 1]++] >>> 15 - cd2[i]; + if (cd[i]) { + co[i] = rev[le[cd[i] - 1]++] >>> 15 - cd[i]; } } } @@ -7446,17 +7446,17 @@ execGlyph = function(glyph, prepState) { var dx = Math.round(c2.dx * xScale); var dy = Math.round(c2.dy * yScale); var gz = state.gZone; - var cc2 = state.contours; - for (var pi = 0; pi < gz.length; pi++) { - var p = gz[pi]; + var cc = state.contours; + for (var pi2 = 0; pi2 < gz.length; pi2++) { + var p = gz[pi2]; p.xTouched = p.yTouched = false; p.xo = p.x = p.x + dx; p.yo = p.y = p.y + dy; } var gLen = gZone.length; gZone.push.apply(gZone, gz); - for (var j = 0; j < cc2.length; j++) { - contours.push(cc2[j] + gLen); + for (var j = 0; j < cc.length; j++) { + contours.push(cc[j] + gLen); } } if (glyph.instructions && !state.inhibitGridFit) { @@ -7493,7 +7493,7 @@ execComponent = function(glyph, state, xScale, yScale) { ); } var sp; - var np; + var np2; for (var i$1 = 0; i$1 < pLen; i$1++) { cp = gZone[i$1]; if (!sp) { @@ -7505,9 +7505,9 @@ execComponent = function(glyph, state, xScale, yScale) { sp.prevPointOnContour = cp; sp = void 0; } else { - np = gZone[i$1 + 1]; - cp.nextPointOnContour = np; - np.prevPointOnContour = cp; + np2 = gZone[i$1 + 1]; + cp.nextPointOnContour = np2; + np2.prevPointOnContour = cp; } } if (state.inhibitGridFit) { @@ -7689,16 +7689,16 @@ function ISECT(state) { var pa1i = stack.pop(); var pb0i = stack.pop(); var pb1i = stack.pop(); - var pi = stack.pop(); + var pi2 = stack.pop(); var z0 = state.z0; var z1 = state.z1; var pa0 = z0[pa0i]; var pa1 = z0[pa1i]; var pb0 = z1[pb0i]; var pb1 = z1[pb1i]; - var p = state.z2[pi]; + var p = state.z2[pi2]; if (exports.DEBUG) { - console.log("ISECT[], ", pa0i, pa1i, pb0i, pb1i, pi); + console.log("ISECT[], ", pa0i, pa1i, pb0i, pb1i, pi2); } var x1 = pa0.x; var y1 = pa0.y; @@ -7965,12 +7965,12 @@ function FDEF(state) { state.funcs[fn] = prog.slice(ipBegin + 1, ip); } function MDAP(round, state) { - var pi = state.stack.pop(); - var p = state.z0[pi]; + var pi2 = state.stack.pop(); + var p = state.z0[pi2]; var fv = state.fv; var pv = state.pv; if (exports.DEBUG) { - console.log(state.step, "MDAP[" + round + "]", pi); + console.log(state.step, "MDAP[" + round + "]", pi2); } var d2 = pv.distance(p, HPZero); if (round) { @@ -7978,14 +7978,14 @@ function MDAP(round, state) { } fv.setRelative(p, HPZero, d2, pv); fv.touch(p); - state.rp0 = state.rp1 = pi; + state.rp0 = state.rp1 = pi2; } function IUP(v2, state) { var z2 = state.z2; var pLen = z2.length - 2; var cp; var pp; - var np; + var np2; if (exports.DEBUG) { console.log(state.step, "IUP[" + v2.axis + "]"); } @@ -7998,11 +7998,11 @@ function IUP(v2, state) { if (pp === cp) { continue; } - np = cp.nextTouched(v2); - if (pp === np) { + np2 = cp.nextTouched(v2); + if (pp === np2) { v2.setRelative(cp, cp, v2.distance(pp, pp, false, true), v2, true); } - v2.interpolate(cp, pp, np, v2); + v2.interpolate(cp, pp, np2, v2); } } function SHP(a, state) { @@ -8014,8 +8014,8 @@ function SHP(a, state) { var loop = state.loop; var z2 = state.z2; while (loop--) { - var pi = stack.pop(); - var p = z2[pi]; + var pi2 = stack.pop(); + var p = z2[pi2]; var d2 = pv.distance(rp, rp, false, true); fv.setRelative(p, p, d2, pv); fv.touch(p); @@ -8023,7 +8023,7 @@ function SHP(a, state) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "SHP[" + (a ? "rp1" : "rp2") + "]", - pi + pi2 ); } } @@ -8035,11 +8035,11 @@ function SHC(a, state) { var rp = (a ? state.z0 : state.z1)[rpi]; var fv = state.fv; var pv = state.pv; - var ci2 = stack.pop(); - var sp = state.z2[state.contours[ci2]]; + var ci = stack.pop(); + var sp = state.z2[state.contours[ci]]; var p = sp; if (exports.DEBUG) { - console.log(state.step, "SHC[" + a + "]", ci2); + console.log(state.step, "SHC[" + a + "]", ci); } var d2 = pv.distance(rp, rp, false, true); do { @@ -8085,13 +8085,13 @@ function SHPIX(state) { var d2 = stack.pop() / 64; var z2 = state.z2; while (loop--) { - var pi = stack.pop(); - var p = z2[pi]; + var pi2 = stack.pop(); + var p = z2[pi2]; if (exports.DEBUG) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "SHPIX[]", - pi, + pi2, d2 ); } @@ -8111,13 +8111,13 @@ function IP(state) { var pv = state.dpv; var z2 = state.z2; while (loop--) { - var pi = stack.pop(); - var p = z2[pi]; + var pi2 = stack.pop(); + var p = z2[pi2]; if (exports.DEBUG) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "IP[]", - pi, + pi2, rp1i, "<->", rp2i @@ -8131,20 +8131,20 @@ function IP(state) { function MSIRP(a, state) { var stack = state.stack; var d2 = stack.pop() / 64; - var pi = stack.pop(); - var p = state.z1[pi]; + var pi2 = stack.pop(); + var p = state.z1[pi2]; var rp0 = state.z0[state.rp0]; var fv = state.fv; var pv = state.pv; fv.setRelative(p, rp0, d2, pv); fv.touch(p); if (exports.DEBUG) { - console.log(state.step, "MSIRP[" + a + "]", d2, pi); + console.log(state.step, "MSIRP[" + a + "]", d2, pi2); } state.rp1 = state.rp0; - state.rp2 = pi; + state.rp2 = pi2; if (a) { - state.rp0 = pi; + state.rp0 = pi2; } } function ALIGNRP(state) { @@ -8156,13 +8156,13 @@ function ALIGNRP(state) { var pv = state.pv; var z1 = state.z1; while (loop--) { - var pi = stack.pop(); - var p = z1[pi]; + var pi2 = stack.pop(); + var p = z1[pi2]; if (exports.DEBUG) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "ALIGNRP[]", - pi + pi2 ); } fv.setRelative(p, rp0, 0, pv); @@ -8179,8 +8179,8 @@ function RTDG(state) { function MIAP(round, state) { var stack = state.stack; var n = stack.pop(); - var pi = stack.pop(); - var p = state.z0[pi]; + var pi2 = stack.pop(); + var p = state.z0[pi2]; var fv = state.fv; var pv = state.pv; var cv = state.cvt[n]; @@ -8192,7 +8192,7 @@ function MIAP(round, state) { "(", cv, ")", - pi + pi2 ); } var d2 = pv.distance(p, HPZero); @@ -8208,7 +8208,7 @@ function MIAP(round, state) { p.yo = p.y; } fv.touch(p); - state.rp0 = state.rp1 = pi; + state.rp0 = state.rp1 = pi2; } function NPUSHB(state) { var prog = state.prog; @@ -8282,10 +8282,10 @@ function RCVT(state) { } function GC(a, state) { var stack = state.stack; - var pi = stack.pop(); - var p = state.z2[pi]; + var pi2 = stack.pop(); + var p = state.z2[pi2]; if (exports.DEBUG) { - console.log(state.step, "GC[" + a + "]", pi); + console.log(state.step, "GC[" + a + "]", pi2); } stack.push(state.dpv.distance(p, HPZero, a, false) * 64); } @@ -8439,7 +8439,7 @@ function DELTAP123(b, state) { console.log(state.step, "DELTAP[" + b + "]", n, stack); } for (var i = 0; i < n; i++) { - var pi = stack.pop(); + var pi2 = stack.pop(); var arg = stack.pop(); var appem = base + ((arg & 240) >> 4); if (appem !== ppem) { @@ -8450,9 +8450,9 @@ function DELTAP123(b, state) { mag++; } if (exports.DEBUG) { - console.log(state.step, "DELTAPFIX", pi, "by", mag * ds); + console.log(state.step, "DELTAPFIX", pi2, "by", mag * ds); } - var p = z0[pi]; + var p = z0[pi2]; fv.setRelative(p, p, mag * ds, pv); } } @@ -8815,10 +8815,10 @@ function PUSHW(n, state) { function MDRP_MIRP(indirect, setRp0, keepD, ro2, dt2, state) { var stack = state.stack; var cvte = indirect && stack.pop(); - var pi = stack.pop(); + var pi2 = stack.pop(); var rp0i = state.rp0; var rp = state.z0[rp0i]; - var p = state.z1[pi]; + var p = state.z1[pi2]; var md2 = state.minDis; var fv = state.fv; var pv = state.dpv; @@ -8848,7 +8848,7 @@ function MDRP_MIRP(indirect, setRp0, keepD, ro2, dt2, state) { state.step, (indirect ? "MIRP[" : "MDRP[") + (setRp0 ? "M" : "m") + (keepD ? ">" : "_") + (ro2 ? "R" : "_") + (dt2 === 0 ? "Gr" : dt2 === 1 ? "Bl" : dt2 === 2 ? "Wh" : "") + "]", indirect ? cvte + "(" + state.cvt[cvte] + "," + cv + ")" : "", - pi, + pi2, "(d =", od2, "->", @@ -8857,9 +8857,9 @@ function MDRP_MIRP(indirect, setRp0, keepD, ro2, dt2, state) { ); } state.rp1 = state.rp0; - state.rp2 = pi; + state.rp2 = pi2; if (setRp0) { - state.rp0 = pi; + state.rp0 = pi2; } } instructionTable = [ @@ -12983,87 +12983,87 @@ var opentype = /* @__PURE__ */ Object.freeze({ }); var opentype_module_default = opentype; -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/standalone.js -var lc = Object.create; +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/standalone.js +var hc = Object.create; var Nn = Object.defineProperty; -var fc = Object.getOwnPropertyDescriptor; -var cc = Object.getOwnPropertyNames; -var dc = Object.getPrototypeOf; -var pc = Object.prototype.hasOwnProperty; +var mc = Object.getOwnPropertyDescriptor; +var gc = Object.getOwnPropertyNames; +var bc = Object.getPrototypeOf; +var vc = Object.prototype.hasOwnProperty; var tr = (e, t) => () => (e && (t = e(e = 0)), t); -var U = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports); +var q = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports); var Wn = (e, t) => { for (var n in t) Nn(e, n, { get: t[n], enumerable: true }); }; -var na = (e, t, n, r) => { +var ia = (e, t, n, r) => { if (t && typeof t == "object" || typeof t == "function") - for (let i of cc(t)) - !pc.call(e, i) && i !== n && Nn(e, i, { get: () => t[i], enumerable: !(r = fc(t, i)) || r.enumerable }); + for (let i of gc(t)) + !vc.call(e, i) && i !== n && Nn(e, i, { get: () => t[i], enumerable: !(r = mc(t, i)) || r.enumerable }); return e; }; -var hc = (e, t, n) => (n = e != null ? lc(dc(e)) : {}, na(t || !e || !e.__esModule ? Nn(n, "default", { value: e, enumerable: true }) : n, e)); -var Fn = (e) => na(Nn({}, "__esModule", { value: true }), e); +var yc = (e, t, n) => (n = e != null ? hc(bc(e)) : {}, ia(t || !e || !e.__esModule ? Nn(n, "default", { value: e, enumerable: true }) : n, e)); +var Fn = (e) => ia(Nn({}, "__esModule", { value: true }), e); var Nt; -var va; var ya; +var xa; var Nr; -var Ii; +var Ci; var Wt; var br; -var Pc; -var qn; -var Ri; +var Lc; +var Un; +var Li; var vr; var yr; -var Ci; -var xa; -var Li; var Mi; -var wt; -var Ni; -var Ac; var wa; -var Un = tr(() => { +var Ni; +var Wi; +var wt; +var Fi; +var Mc; +var Sa; +var qn = tr(() => { Nt = function(e) { return e[e.Auto = 0] = "Auto", e[e.FlexStart = 1] = "FlexStart", e[e.Center = 2] = "Center", e[e.FlexEnd = 3] = "FlexEnd", e[e.Stretch = 4] = "Stretch", e[e.Baseline = 5] = "Baseline", e[e.SpaceBetween = 6] = "SpaceBetween", e[e.SpaceAround = 7] = "SpaceAround", e[e.SpaceEvenly = 8] = "SpaceEvenly", e; - }({}), va = function(e) { - return e[e.BorderBox = 0] = "BorderBox", e[e.ContentBox = 1] = "ContentBox", e; }({}), ya = function(e) { + return e[e.BorderBox = 0] = "BorderBox", e[e.ContentBox = 1] = "ContentBox", e; + }({}), xa = function(e) { return e[e.Width = 0] = "Width", e[e.Height = 1] = "Height", e; }({}), Nr = function(e) { return e[e.Inherit = 0] = "Inherit", e[e.LTR = 1] = "LTR", e[e.RTL = 2] = "RTL", e; - }({}), Ii = function(e) { + }({}), Ci = function(e) { return e[e.Flex = 0] = "Flex", e[e.None = 1] = "None", e[e.Contents = 2] = "Contents", e; }({}), Wt = function(e) { return e[e.Left = 0] = "Left", e[e.Top = 1] = "Top", e[e.Right = 2] = "Right", e[e.Bottom = 3] = "Bottom", e[e.Start = 4] = "Start", e[e.End = 5] = "End", e[e.Horizontal = 6] = "Horizontal", e[e.Vertical = 7] = "Vertical", e[e.All = 8] = "All", e; }({}), br = function(e) { return e[e.None = 0] = "None", e[e.StretchFlexBasis = 1] = "StretchFlexBasis", e[e.AbsolutePositionWithoutInsetsExcludesPadding = 2] = "AbsolutePositionWithoutInsetsExcludesPadding", e[e.AbsolutePercentAgainstInnerSize = 4] = "AbsolutePercentAgainstInnerSize", e[e.All = 2147483647] = "All", e[e.Classic = 2147483646] = "Classic", e; - }({}), Pc = function(e) { + }({}), Lc = function(e) { return e[e.WebFlexBasis = 0] = "WebFlexBasis", e; - }({}), qn = function(e) { + }({}), Un = function(e) { return e[e.Column = 0] = "Column", e[e.ColumnReverse = 1] = "ColumnReverse", e[e.Row = 2] = "Row", e[e.RowReverse = 3] = "RowReverse", e; - }({}), Ri = function(e) { + }({}), Li = function(e) { return e[e.Column = 0] = "Column", e[e.Row = 1] = "Row", e[e.All = 2] = "All", e; }({}), vr = function(e) { return e[e.FlexStart = 0] = "FlexStart", e[e.Center = 1] = "Center", e[e.FlexEnd = 2] = "FlexEnd", e[e.SpaceBetween = 3] = "SpaceBetween", e[e.SpaceAround = 4] = "SpaceAround", e[e.SpaceEvenly = 5] = "SpaceEvenly", e; }({}), yr = function(e) { return e[e.Error = 0] = "Error", e[e.Warn = 1] = "Warn", e[e.Info = 2] = "Info", e[e.Debug = 3] = "Debug", e[e.Verbose = 4] = "Verbose", e[e.Fatal = 5] = "Fatal", e; - }({}), Ci = function(e) { + }({}), Mi = function(e) { return e[e.Undefined = 0] = "Undefined", e[e.Exactly = 1] = "Exactly", e[e.AtMost = 2] = "AtMost", e; - }({}), xa = function(e) { + }({}), wa = function(e) { return e[e.Default = 0] = "Default", e[e.Text = 1] = "Text", e; - }({}), Li = function(e) { + }({}), Ni = function(e) { return e[e.Visible = 0] = "Visible", e[e.Hidden = 1] = "Hidden", e[e.Scroll = 2] = "Scroll", e; - }({}), Mi = function(e) { + }({}), Wi = function(e) { return e[e.Static = 0] = "Static", e[e.Relative = 1] = "Relative", e[e.Absolute = 2] = "Absolute", e; }({}), wt = function(e) { return e[e.Undefined = 0] = "Undefined", e[e.Point = 1] = "Point", e[e.Percent = 2] = "Percent", e[e.Auto = 3] = "Auto", e; - }({}), Ni = function(e) { + }({}), Fi = function(e) { return e[e.NoWrap = 0] = "NoWrap", e[e.Wrap = 1] = "Wrap", e[e.WrapReverse = 2] = "WrapReverse", e; - }({}), Ac = { ALIGN_AUTO: Nt.Auto, ALIGN_FLEX_START: Nt.FlexStart, ALIGN_CENTER: Nt.Center, ALIGN_FLEX_END: Nt.FlexEnd, ALIGN_STRETCH: Nt.Stretch, ALIGN_BASELINE: Nt.Baseline, ALIGN_SPACE_BETWEEN: Nt.SpaceBetween, ALIGN_SPACE_AROUND: Nt.SpaceAround, ALIGN_SPACE_EVENLY: Nt.SpaceEvenly, BOX_SIZING_BORDER_BOX: va.BorderBox, BOX_SIZING_CONTENT_BOX: va.ContentBox, DIMENSION_WIDTH: ya.Width, DIMENSION_HEIGHT: ya.Height, DIRECTION_INHERIT: Nr.Inherit, DIRECTION_LTR: Nr.LTR, DIRECTION_RTL: Nr.RTL, DISPLAY_FLEX: Ii.Flex, DISPLAY_NONE: Ii.None, DISPLAY_CONTENTS: Ii.Contents, EDGE_LEFT: Wt.Left, EDGE_TOP: Wt.Top, EDGE_RIGHT: Wt.Right, EDGE_BOTTOM: Wt.Bottom, EDGE_START: Wt.Start, EDGE_END: Wt.End, EDGE_HORIZONTAL: Wt.Horizontal, EDGE_VERTICAL: Wt.Vertical, EDGE_ALL: Wt.All, ERRATA_NONE: br.None, ERRATA_STRETCH_FLEX_BASIS: br.StretchFlexBasis, ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING: br.AbsolutePositionWithoutInsetsExcludesPadding, ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE: br.AbsolutePercentAgainstInnerSize, ERRATA_ALL: br.All, ERRATA_CLASSIC: br.Classic, EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS: Pc.WebFlexBasis, FLEX_DIRECTION_COLUMN: qn.Column, FLEX_DIRECTION_COLUMN_REVERSE: qn.ColumnReverse, FLEX_DIRECTION_ROW: qn.Row, FLEX_DIRECTION_ROW_REVERSE: qn.RowReverse, GUTTER_COLUMN: Ri.Column, GUTTER_ROW: Ri.Row, GUTTER_ALL: Ri.All, JUSTIFY_FLEX_START: vr.FlexStart, JUSTIFY_CENTER: vr.Center, JUSTIFY_FLEX_END: vr.FlexEnd, JUSTIFY_SPACE_BETWEEN: vr.SpaceBetween, JUSTIFY_SPACE_AROUND: vr.SpaceAround, JUSTIFY_SPACE_EVENLY: vr.SpaceEvenly, LOG_LEVEL_ERROR: yr.Error, LOG_LEVEL_WARN: yr.Warn, LOG_LEVEL_INFO: yr.Info, LOG_LEVEL_DEBUG: yr.Debug, LOG_LEVEL_VERBOSE: yr.Verbose, LOG_LEVEL_FATAL: yr.Fatal, MEASURE_MODE_UNDEFINED: Ci.Undefined, MEASURE_MODE_EXACTLY: Ci.Exactly, MEASURE_MODE_AT_MOST: Ci.AtMost, NODE_TYPE_DEFAULT: xa.Default, NODE_TYPE_TEXT: xa.Text, OVERFLOW_VISIBLE: Li.Visible, OVERFLOW_HIDDEN: Li.Hidden, OVERFLOW_SCROLL: Li.Scroll, POSITION_TYPE_STATIC: Mi.Static, POSITION_TYPE_RELATIVE: Mi.Relative, POSITION_TYPE_ABSOLUTE: Mi.Absolute, UNIT_UNDEFINED: wt.Undefined, UNIT_POINT: wt.Point, UNIT_PERCENT: wt.Percent, UNIT_AUTO: wt.Auto, WRAP_NO_WRAP: Ni.NoWrap, WRAP_WRAP: Ni.Wrap, WRAP_WRAP_REVERSE: Ni.WrapReverse }, wa = Ac; + }({}), Mc = { ALIGN_AUTO: Nt.Auto, ALIGN_FLEX_START: Nt.FlexStart, ALIGN_CENTER: Nt.Center, ALIGN_FLEX_END: Nt.FlexEnd, ALIGN_STRETCH: Nt.Stretch, ALIGN_BASELINE: Nt.Baseline, ALIGN_SPACE_BETWEEN: Nt.SpaceBetween, ALIGN_SPACE_AROUND: Nt.SpaceAround, ALIGN_SPACE_EVENLY: Nt.SpaceEvenly, BOX_SIZING_BORDER_BOX: ya.BorderBox, BOX_SIZING_CONTENT_BOX: ya.ContentBox, DIMENSION_WIDTH: xa.Width, DIMENSION_HEIGHT: xa.Height, DIRECTION_INHERIT: Nr.Inherit, DIRECTION_LTR: Nr.LTR, DIRECTION_RTL: Nr.RTL, DISPLAY_FLEX: Ci.Flex, DISPLAY_NONE: Ci.None, DISPLAY_CONTENTS: Ci.Contents, EDGE_LEFT: Wt.Left, EDGE_TOP: Wt.Top, EDGE_RIGHT: Wt.Right, EDGE_BOTTOM: Wt.Bottom, EDGE_START: Wt.Start, EDGE_END: Wt.End, EDGE_HORIZONTAL: Wt.Horizontal, EDGE_VERTICAL: Wt.Vertical, EDGE_ALL: Wt.All, ERRATA_NONE: br.None, ERRATA_STRETCH_FLEX_BASIS: br.StretchFlexBasis, ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING: br.AbsolutePositionWithoutInsetsExcludesPadding, ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE: br.AbsolutePercentAgainstInnerSize, ERRATA_ALL: br.All, ERRATA_CLASSIC: br.Classic, EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS: Lc.WebFlexBasis, FLEX_DIRECTION_COLUMN: Un.Column, FLEX_DIRECTION_COLUMN_REVERSE: Un.ColumnReverse, FLEX_DIRECTION_ROW: Un.Row, FLEX_DIRECTION_ROW_REVERSE: Un.RowReverse, GUTTER_COLUMN: Li.Column, GUTTER_ROW: Li.Row, GUTTER_ALL: Li.All, JUSTIFY_FLEX_START: vr.FlexStart, JUSTIFY_CENTER: vr.Center, JUSTIFY_FLEX_END: vr.FlexEnd, JUSTIFY_SPACE_BETWEEN: vr.SpaceBetween, JUSTIFY_SPACE_AROUND: vr.SpaceAround, JUSTIFY_SPACE_EVENLY: vr.SpaceEvenly, LOG_LEVEL_ERROR: yr.Error, LOG_LEVEL_WARN: yr.Warn, LOG_LEVEL_INFO: yr.Info, LOG_LEVEL_DEBUG: yr.Debug, LOG_LEVEL_VERBOSE: yr.Verbose, LOG_LEVEL_FATAL: yr.Fatal, MEASURE_MODE_UNDEFINED: Mi.Undefined, MEASURE_MODE_EXACTLY: Mi.Exactly, MEASURE_MODE_AT_MOST: Mi.AtMost, NODE_TYPE_DEFAULT: wa.Default, NODE_TYPE_TEXT: wa.Text, OVERFLOW_VISIBLE: Ni.Visible, OVERFLOW_HIDDEN: Ni.Hidden, OVERFLOW_SCROLL: Ni.Scroll, POSITION_TYPE_STATIC: Wi.Static, POSITION_TYPE_RELATIVE: Wi.Relative, POSITION_TYPE_ABSOLUTE: Wi.Absolute, UNIT_UNDEFINED: wt.Undefined, UNIT_POINT: wt.Point, UNIT_PERCENT: wt.Percent, UNIT_AUTO: wt.Auto, WRAP_NO_WRAP: Fi.NoWrap, WRAP_WRAP: Fi.Wrap, WRAP_WRAP_REVERSE: Fi.WrapReverse }, Sa = Mc; }); -function Wi(e) { +function Di(e) { function t(i, o, s) { let a = i[o]; i[o] = function() { @@ -13114,15 +13114,15 @@ function Wi(e) { }), t(e.Node.prototype, "calculateLayout", function(i) { let o = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : NaN, s = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : NaN, a = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : Nr.LTR; return i.call(this, o, s, a); - }), { Config: e.Config, Node: e.Node, ...wa }; + }), { Config: e.Config, Node: e.Node, ...Sa }; } -var Sa = tr(() => { - Un(); - Un(); +var _a2 = tr(() => { + qn(); + qn(); }); -var Ta = {}; -Wn(Ta, { default: () => Ic }); -function Ic(e) { +var Ea = {}; +Wn(Ea, { default: () => Nc }); +function Nc(e) { e = e || {}; var t; t || (t = typeof e < "u" ? e : {}); @@ -13131,7 +13131,7 @@ function Ic(e) { n = c2, r = d2; }); var i = Object.assign({}, t), o = ""; - typeof document < "u" && document.currentScript && (o = document.currentScript.src), _a2 && (o = _a2), o.indexOf("blob:") !== 0 ? o = o.substr(0, o.replace(/[?#].*/, "").lastIndexOf("/") + 1) : o = ""; + typeof document < "u" && document.currentScript && (o = document.currentScript.src), Ta && (o = Ta), o.indexOf("blob:") !== 0 ? o = o.substr(0, o.replace(/[?#].*/, "").lastIndexOf("/") + 1) : o = ""; var s = t.print || console.log.bind(console), a = t.printErr || console.warn.bind(console); Object.assign(t, i), i = null; var u2; @@ -13146,27 +13146,27 @@ function Ic(e) { if (!x2) break; if (x2 & 128) { - var E = c2[d2++] & 63; + var k = c2[d2++] & 63; if ((x2 & 224) == 192) - v2 += String.fromCharCode((x2 & 31) << 6 | E); + v2 += String.fromCharCode((x2 & 31) << 6 | k); else { var A = c2[d2++] & 63; - x2 = (x2 & 240) == 224 ? (x2 & 15) << 12 | E << 6 | A : (x2 & 7) << 18 | E << 12 | A << 6 | c2[d2++] & 63, 65536 > x2 ? v2 += String.fromCharCode(x2) : (x2 -= 65536, v2 += String.fromCharCode(55296 | x2 >> 10, 56320 | x2 & 1023)); + x2 = (x2 & 240) == 224 ? (x2 & 15) << 12 | k << 6 | A : (x2 & 7) << 18 | k << 12 | A << 6 | c2[d2++] & 63, 65536 > x2 ? v2 += String.fromCharCode(x2) : (x2 -= 65536, v2 += String.fromCharCode(55296 | x2 >> 10, 56320 | x2 & 1023)); } } else v2 += String.fromCharCode(x2); } return v2; } - var m2, b, y, T, k, P2, w2, S2, O; + var m2, b, y, T, E, P2, w2, S2, O; function I() { var c2 = l2.buffer; - m2 = c2, t.HEAP8 = b = new Int8Array(c2), t.HEAP16 = T = new Int16Array(c2), t.HEAP32 = P2 = new Int32Array(c2), t.HEAPU8 = y = new Uint8Array(c2), t.HEAPU16 = k = new Uint16Array(c2), t.HEAPU32 = w2 = new Uint32Array(c2), t.HEAPF32 = S2 = new Float32Array(c2), t.HEAPF64 = O = new Float64Array(c2); + m2 = c2, t.HEAP8 = b = new Int8Array(c2), t.HEAP16 = T = new Int16Array(c2), t.HEAP32 = P2 = new Int32Array(c2), t.HEAPU8 = y = new Uint8Array(c2), t.HEAPU16 = E = new Uint16Array(c2), t.HEAPU32 = w2 = new Uint32Array(c2), t.HEAPF32 = S2 = new Float32Array(c2), t.HEAPF64 = O = new Float64Array(c2); } - var F, q = [], V = [], de = []; + var F, U = [], V = [], de = []; function Ae() { var c2 = t.preRun.shift(); - q.unshift(c2); + U.unshift(c2); } var me = 0, ue = null, Ie = null; function Z(c2) { @@ -13175,19 +13175,19 @@ function Ic(e) { function ne(c2) { return c2.startsWith("data:application/octet-stream;base64,"); } - var ke = ""; - if (!ne(ke)) { - var ve = ke; - ke = t.locateFile ? t.locateFile(ve, o) : o + ve; + var Ee = ""; + if (!ne(Ee)) { + var ve = Ee; + Ee = t.locateFile ? t.locateFile(ve, o) : o + ve; } function Re() { - var c2 = ke; + var c2 = Ee; try { - if (c2 == ke && u2) + if (c2 == Ee && u2) return new Uint8Array(u2); if (ne(c2)) try { - var d2 = ac(c2.slice(37)), g2 = new Uint8Array(d2.length); + var d2 = dc(c2.slice(37)), g2 = new Uint8Array(d2.length); for (c2 = 0; c2 < d2.length; ++c2) g2[c2] = d2.charCodeAt(c2); var v2 = g2; @@ -13200,16 +13200,16 @@ function Ic(e) { if (x2) return x2; throw "both async and sync fetching of the wasm failed"; - } catch (E) { - Z(E); + } catch (k) { + Z(k); } } - function Ee() { + function ke() { return u2 || typeof fetch != "function" ? Promise.resolve().then(function() { return Re(); - }) : fetch(ke, { credentials: "same-origin" }).then(function(c2) { + }) : fetch(Ee, { credentials: "same-origin" }).then(function(c2) { if (!c2.ok) - throw "failed to load wasm binary file at '" + ke + "'"; + throw "failed to load wasm binary file at '" + Ee + "'"; return c2.arrayBuffer(); }).catch(function() { return Re(); @@ -13231,7 +13231,7 @@ function Ic(e) { return d2.apply(this, arguments); }; } - var le = [{}, { value: void 0 }, { value: null }, { value: true }, { value: false }], H = []; + var le = [{}, { value: void 0 }, { value: null }, { value: true }, { value: false }], Y = []; function J(c2) { var d2 = Error, g2 = Oe(c2, function(v2) { this.name = c2, this.message = v2, v2 = Error(v2).stack, v2 !== void 0 && (this.stack = this.toString() + ` @@ -13242,10 +13242,10 @@ function Ic(e) { }, g2; } var pe = void 0; - function G(c2) { + function z(c2) { throw new pe(c2); } - var Le = (c2) => (c2 || G("Cannot use deleted val. handle = " + c2), le[c2].value), De = (c2) => { + var Le = (c2) => (c2 || z("Cannot use deleted val. handle = " + c2), le[c2].value), De = (c2) => { switch (c2) { case void 0: return 1; @@ -13256,17 +13256,17 @@ function Ic(e) { case false: return 4; default: - var d2 = H.length ? H.pop() : le.length; + var d2 = Y.length ? Y.pop() : le.length; return le[d2] = { ga: 1, value: c2 }, d2; } - }, Ue = void 0, $e = void 0; + }, qe = void 0, Be = void 0; function ie(c2) { for (var d2 = ""; y[c2]; ) - d2 += $e[y[c2++]]; + d2 += Be[y[c2++]]; return d2; } var _t = []; - function $t() { + function Bt() { for (; _t.length; ) { var c2 = _t.pop(); c2.M.$ = false, c2.delete(); @@ -13274,19 +13274,19 @@ function Ic(e) { } var Tt = void 0, Ne = {}; function fr(c2, d2) { - for (d2 === void 0 && G("ptr should not be undefined"); c2.R; ) + for (d2 === void 0 && z("ptr should not be undefined"); c2.R; ) d2 = c2.ba(d2), c2 = c2.R; return d2; } - var kt = {}; + var Et = {}; function Pr(c2) { - c2 = Zs(c2); + c2 = ea(c2); var d2 = ie(c2); return Ct(c2), d2; } function Qt(c2, d2) { - var g2 = kt[c2]; - return g2 === void 0 && G(d2 + " has unknown type " + Pr(c2)), g2; + var g2 = Et[c2]; + return g2 === void 0 && z(d2 + " has unknown type " + Pr(c2)), g2; } function cr() { } @@ -13294,8 +13294,8 @@ function Ic(e) { function Kt(c2) { --c2.count.value, c2.count.value === 0 && (c2.T ? c2.U.W(c2.T) : c2.P.N.W(c2.O)); } - function Et(c2, d2, g2) { - return d2 === g2 ? c2 : g2.R === void 0 ? null : (c2 = Et(c2, d2, g2.R), c2 === null ? null : g2.na(c2)); + function kt(c2, d2, g2) { + return d2 === g2 ? c2 : g2.R === void 0 ? null : (c2 = kt(c2, d2, g2.R), c2 === null ? null : g2.na(c2)); } var pt = {}; function nt(c2, d2) { @@ -13319,13 +13319,13 @@ function Ic(e) { }, mt(c2)); } var Zt = {}; - function qt(c2) { + function Ut(c2) { for (; c2.length; ) { var d2 = c2.pop(); c2.pop()(d2); } } - function Ge(c2) { + function ze(c2) { return this.fromWireType(P2[c2 >> 2]); } var it = {}, Ze = {}; @@ -13338,14 +13338,14 @@ function Ic(e) { c2.forEach(function(R2) { Ze[R2] = d2; }); - var x2 = Array(d2.length), E = [], A = 0; + var x2 = Array(d2.length), k = [], A = 0; d2.forEach((R2, N) => { - kt.hasOwnProperty(R2) ? x2[N] = kt[R2] : (E.push(R2), it.hasOwnProperty(R2) || (it[R2] = []), it[R2].push(() => { - x2[N] = kt[R2], ++A, A === E.length && v2(x2); + Et.hasOwnProperty(R2) ? x2[N] = Et[R2] : (k.push(R2), it.hasOwnProperty(R2) || (it[R2] = []), it[R2].push(() => { + x2[N] = Et[R2], ++A, A === k.length && v2(x2); })); - }), E.length === 0 && v2(x2); + }), k.length === 0 && v2(x2); } - function Y(c2) { + function H(c2) { switch (c2) { case 1: return 0; @@ -13363,52 +13363,52 @@ function Ic(e) { if (!("argPackAdvance" in d2)) throw new TypeError("registerType registeredInstance requires argPackAdvance"); var v2 = d2.name; - if (c2 || G('type "' + v2 + '" must have a positive integer typeid pointer'), kt.hasOwnProperty(c2)) { + if (c2 || z('type "' + v2 + '" must have a positive integer typeid pointer'), Et.hasOwnProperty(c2)) { if (g2.ua) return; - G("Cannot register type '" + v2 + "' twice"); + z("Cannot register type '" + v2 + "' twice"); } - kt[c2] = d2, delete Ze[c2], it.hasOwnProperty(c2) && (d2 = it[c2], delete it[c2], d2.forEach((x2) => x2())); + Et[c2] = d2, delete Ze[c2], it.hasOwnProperty(c2) && (d2 = it[c2], delete it[c2], d2.forEach((x2) => x2())); } function fe(c2) { - G(c2.M.P.N.name + " instance already deleted"); + z(c2.M.P.N.name + " instance already deleted"); } - function K2() { + function Q() { } function ye(c2, d2, g2) { if (c2[d2].S === void 0) { var v2 = c2[d2]; c2[d2] = function() { - return c2[d2].S.hasOwnProperty(arguments.length) || G("Function '" + g2 + "' called with an invalid number of arguments (" + arguments.length + ") - expects one of (" + c2[d2].S + ")!"), c2[d2].S[arguments.length].apply(this, arguments); + return c2[d2].S.hasOwnProperty(arguments.length) || z("Function '" + g2 + "' called with an invalid number of arguments (" + arguments.length + ") - expects one of (" + c2[d2].S + ")!"), c2[d2].S[arguments.length].apply(this, arguments); }, c2[d2].S = [], c2[d2].S[v2.Z] = v2; } } function ae(c2, d2) { - t.hasOwnProperty(c2) ? (G("Cannot register public name '" + c2 + "' twice"), ye(t, c2, c2), t.hasOwnProperty(void 0) && G("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"), t[c2].S[void 0] = d2) : t[c2] = d2; + t.hasOwnProperty(c2) ? (z("Cannot register public name '" + c2 + "' twice"), ye(t, c2, c2), t.hasOwnProperty(void 0) && z("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"), t[c2].S[void 0] = d2) : t[c2] = d2; } - function xe(c2, d2, g2, v2, x2, E, A, R2) { - this.name = c2, this.constructor = d2, this.X = g2, this.W = v2, this.R = x2, this.pa = E, this.ba = A, this.na = R2, this.ja = []; + function xe(c2, d2, g2, v2, x2, k, A, R2) { + this.name = c2, this.constructor = d2, this.X = g2, this.W = v2, this.R = x2, this.pa = k, this.ba = A, this.na = R2, this.ja = []; } function ee(c2, d2, g2) { for (; d2 !== g2; ) - d2.ba || G("Expected null or instance of " + g2.name + ", got an instance of " + d2.name), c2 = d2.ba(c2), d2 = d2.R; + d2.ba || z("Expected null or instance of " + g2.name + ", got an instance of " + d2.name), c2 = d2.ba(c2), d2 = d2.R; return c2; } function te(c2, d2) { - return d2 === null ? (this.ea && G("null is not a valid " + this.name), 0) : (d2.M || G('Cannot pass "' + et2(d2) + '" as a ' + this.name), d2.M.O || G("Cannot pass deleted object as a pointer of type " + this.name), ee(d2.M.O, d2.M.P.N, this.N)); + return d2 === null ? (this.ea && z("null is not a valid " + this.name), 0) : (d2.M || z('Cannot pass "' + et2(d2) + '" as a ' + this.name), d2.M.O || z("Cannot pass deleted object as a pointer of type " + this.name), ee(d2.M.O, d2.M.P.N, this.N)); } function ot(c2, d2) { if (d2 === null) { - if (this.ea && G("null is not a valid " + this.name), this.da) { + if (this.ea && z("null is not a valid " + this.name), this.da) { var g2 = this.fa(); return c2 !== null && c2.push(this.W, g2), g2; } return 0; } - if (d2.M || G('Cannot pass "' + et2(d2) + '" as a ' + this.name), d2.M.O || G("Cannot pass deleted object as a pointer of type " + this.name), !this.ca && d2.M.P.ca && G("Cannot convert argument of type " + (d2.M.U ? d2.M.U.name : d2.M.P.name) + " to parameter type " + this.name), g2 = ee(d2.M.O, d2.M.P.N, this.N), this.da) - switch (d2.M.T === void 0 && G("Passing raw pointer to smart pointer is illegal"), this.Ba) { + if (d2.M || z('Cannot pass "' + et2(d2) + '" as a ' + this.name), d2.M.O || z("Cannot pass deleted object as a pointer of type " + this.name), !this.ca && d2.M.P.ca && z("Cannot convert argument of type " + (d2.M.U ? d2.M.U.name : d2.M.P.name) + " to parameter type " + this.name), g2 = ee(d2.M.O, d2.M.P.N, this.N), this.da) + switch (d2.M.T === void 0 && z("Passing raw pointer to smart pointer is illegal"), this.Ba) { case 0: - d2.M.U === this ? g2 = d2.M.T : G("Cannot convert argument of type " + (d2.M.U ? d2.M.U.name : d2.M.P.name) + " to parameter type " + this.name); + d2.M.U === this ? g2 = d2.M.T : z("Cannot convert argument of type " + (d2.M.U ? d2.M.U.name : d2.M.P.name) + " to parameter type " + this.name); break; case 1: g2 = d2.M.T; @@ -13424,17 +13424,17 @@ function Ic(e) { } break; default: - G("Unsupporting sharing policy"); + z("Unsupporting sharing policy"); } return g2; } - function Q(c2, d2) { - return d2 === null ? (this.ea && G("null is not a valid " + this.name), 0) : (d2.M || G('Cannot pass "' + et2(d2) + '" as a ' + this.name), d2.M.O || G("Cannot pass deleted object as a pointer of type " + this.name), d2.M.P.ca && G("Cannot convert argument of type " + d2.M.P.name + " to parameter type " + this.name), ee(d2.M.O, d2.M.P.N, this.N)); + function K2(c2, d2) { + return d2 === null ? (this.ea && z("null is not a valid " + this.name), 0) : (d2.M || z('Cannot pass "' + et2(d2) + '" as a ' + this.name), d2.M.O || z("Cannot pass deleted object as a pointer of type " + this.name), d2.M.P.ca && z("Cannot convert argument of type " + d2.M.P.name + " to parameter type " + this.name), ee(d2.M.O, d2.M.P.N, this.N)); } function We(c2, d2, g2, v2) { - this.name = c2, this.N = d2, this.ea = g2, this.ca = v2, this.da = false, this.W = this.xa = this.fa = this.ka = this.Ba = this.wa = void 0, d2.R !== void 0 ? this.toWireType = ot : (this.toWireType = v2 ? te : Q, this.V = null); + this.name = c2, this.N = d2, this.ea = g2, this.ca = v2, this.da = false, this.W = this.xa = this.fa = this.ka = this.Ba = this.wa = void 0, d2.R !== void 0 ? this.toWireType = ot : (this.toWireType = v2 ? te : K2, this.V = null); } - function ze(c2, d2) { + function Ge(c2, d2) { t.hasOwnProperty(c2) || Xe("Replacing nonexistant public symbol"), t[c2] = d2, t[c2].Z = void 0; } function Ar(c2, d2) { @@ -13451,35 +13451,35 @@ function Ic(e) { function Pe(c2, d2) { c2 = ie(c2); var g2 = c2.includes("j") ? Ar(c2, d2) : F.get(d2); - return typeof g2 != "function" && G("unknown function pointer with signature " + c2 + ": " + d2), g2; + return typeof g2 != "function" && z("unknown function pointer with signature " + c2 + ": " + d2), g2; } var er = void 0; - function qe(c2, d2) { - function g2(E) { - x2[E] || kt[E] || (Ze[E] ? Ze[E].forEach(g2) : (v2.push(E), x2[E] = true)); + function Ue(c2, d2) { + function g2(k) { + x2[k] || Et[k] || (Ze[k] ? Ze[k].forEach(g2) : (v2.push(k), x2[k] = true)); } var v2 = [], x2 = {}; throw d2.forEach(g2), new er(c2 + ": " + v2.map(Pr).join([", "])); } function Rt(c2, d2, g2, v2, x2) { - var E = d2.length; - 2 > E && G("argTypes array size mismatch! Must at least get return value and 'this' types!"); + var k = d2.length; + 2 > k && z("argTypes array size mismatch! Must at least get return value and 'this' types!"); var A = d2[1] !== null && g2 !== null, R2 = false; for (g2 = 1; g2 < d2.length; ++g2) if (d2[g2] !== null && d2[g2].V === void 0) { R2 = true; break; } - var N = d2[0].name !== "void", L = E - 2, D = Array(L), z = [], re = []; + var N = d2[0].name !== "void", L = k - 2, D = Array(L), G = [], re = []; return function() { - if (arguments.length !== L && G("function " + c2 + " called with " + arguments.length + " arguments, expected " + L + " args!"), re.length = 0, z.length = A ? 2 : 1, z[0] = x2, A) { + if (arguments.length !== L && z("function " + c2 + " called with " + arguments.length + " arguments, expected " + L + " args!"), re.length = 0, G.length = A ? 2 : 1, G[0] = x2, A) { var Ce = d2[1].toWireType(re, this); - z[1] = Ce; + G[1] = Ce; } for (var ce = 0; ce < L; ++ce) - D[ce] = d2[ce + 2].toWireType(re, arguments[ce]), z.push(D[ce]); - if (ce = v2.apply(null, z), R2) - qt(re); + D[ce] = d2[ce + 2].toWireType(re, arguments[ce]), G.push(D[ce]); + if (ce = v2.apply(null, G), R2) + Ut(re); else for (var rt = A ? 1 : 2; rt < d2.length; rt++) { var yt = rt === 1 ? Ce : D[rt - 2]; @@ -13494,7 +13494,7 @@ function Ic(e) { return g2; } function Te(c2) { - 4 < c2 && --le[c2].ga === 0 && (le[c2] = void 0, H.push(c2)); + 4 < c2 && --le[c2].ga === 0 && (le[c2] = void 0, Y.push(c2)); } function et2(c2) { if (c2 === null) @@ -13528,7 +13528,7 @@ function Ic(e) { return g2 ? function(v2) { return T[v2 >> 1]; } : function(v2) { - return k[v2 >> 1]; + return E[v2 >> 1]; }; case 2: return g2 ? function(v2) { @@ -13577,12 +13577,12 @@ function Ic(e) { var v2 = d2; g2 = v2 + g2 - 4; for (var x2 = 0; x2 < c2.length; ++x2) { - var E = c2.charCodeAt(x2); - if (55296 <= E && 57343 >= E) { + var k = c2.charCodeAt(x2); + if (55296 <= k && 57343 >= k) { var A = c2.charCodeAt(++x2); - E = 65536 + ((E & 1023) << 10) | A & 1023; + k = 65536 + ((k & 1023) << 10) | A & 1023; } - if (P2[d2 >> 2] = E, d2 += 4, d2 + 4 > g2) + if (P2[d2 >> 2] = k, d2 += 4, d2 + 4 > g2) break; } return P2[d2 >> 2] = 0, d2 - v2; @@ -13600,16 +13600,16 @@ function Ic(e) { return d2 === void 0 ? ie(c2) : d2; } var Cn = []; - function ic(c2) { + function lc(c2) { var d2 = Cn.length; return Cn.push(c2), d2; } - function oc(c2, d2) { + function fc(c2, d2) { for (var g2 = Array(c2), v2 = 0; v2 < c2; ++v2) g2[v2] = Qt(w2[d2 + 4 * v2 >> 2], "parameter " + v2); return g2; } - var Ks = [], sc = [null, [], []]; + var Js = [], cc = [null, [], []]; pe = t.BindingError = J("BindingError"), t.count_emval_handles = function() { for (var c2 = 0, d2 = 5; d2 < le.length; ++d2) le[d2] !== void 0 && ++c2; @@ -13619,20 +13619,20 @@ function Ic(e) { if (le[c2] !== void 0) return le[c2]; return null; - }, Ue = t.PureVirtualError = J("PureVirtualError"); - for (var Js = Array(256), Ln = 0; 256 > Ln; ++Ln) - Js[Ln] = String.fromCharCode(Ln); - $e = Js, t.getInheritedInstanceCount = function() { + }, qe = t.PureVirtualError = J("PureVirtualError"); + for (var Zs = Array(256), Ln = 0; 256 > Ln; ++Ln) + Zs[Ln] = String.fromCharCode(Ln); + Be = Zs, t.getInheritedInstanceCount = function() { return Object.keys(Ne).length; }, t.getLiveInheritedInstances = function() { var c2 = [], d2; for (d2 in Ne) Ne.hasOwnProperty(d2) && c2.push(Ne[d2]); return c2; - }, t.flushPendingDeletes = $t, t.setDelayFunction = function(c2) { - Tt = c2, _t.length && Tt && Tt($t); - }, Jt = t.InternalError = J("InternalError"), K2.prototype.isAliasOf = function(c2) { - if (!(this instanceof K2 && c2 instanceof K2)) + }, t.flushPendingDeletes = Bt, t.setDelayFunction = function(c2) { + Tt = c2, _t.length && Tt && Tt(Bt); + }, Jt = t.InternalError = J("InternalError"), Q.prototype.isAliasOf = function(c2) { + if (!(this instanceof Q && c2 instanceof Q)) return false; var d2 = this.M.P.N, g2 = this.M.O, v2 = c2.M.P.N; for (c2 = c2.M.O; d2.R; ) @@ -13640,22 +13640,22 @@ function Ic(e) { for (; v2.R; ) c2 = v2.ba(c2), v2 = v2.R; return d2 === v2 && g2 === c2; - }, K2.prototype.clone = function() { + }, Q.prototype.clone = function() { if (this.M.O || fe(this), this.M.aa) return this.M.count.value += 1, this; var c2 = mt, d2 = Object, g2 = d2.create, v2 = Object.getPrototypeOf(this), x2 = this.M; return c2 = c2(g2.call(d2, v2, { M: { value: { count: x2.count, $: x2.$, aa: x2.aa, O: x2.O, P: x2.P, T: x2.T, U: x2.U } } })), c2.M.count.value += 1, c2.M.$ = false, c2; - }, K2.prototype.delete = function() { - this.M.O || fe(this), this.M.$ && !this.M.aa && G("Object already scheduled for deletion"), cr(this), Kt(this.M), this.M.aa || (this.M.T = void 0, this.M.O = void 0); - }, K2.prototype.isDeleted = function() { + }, Q.prototype.delete = function() { + this.M.O || fe(this), this.M.$ && !this.M.aa && z("Object already scheduled for deletion"), cr(this), Kt(this.M), this.M.aa || (this.M.T = void 0, this.M.O = void 0); + }, Q.prototype.isDeleted = function() { return !this.M.O; - }, K2.prototype.deleteLater = function() { - return this.M.O || fe(this), this.M.$ && !this.M.aa && G("Object already scheduled for deletion"), _t.push(this), _t.length === 1 && Tt && Tt($t), this.M.$ = true, this; + }, Q.prototype.deleteLater = function() { + return this.M.O || fe(this), this.M.$ && !this.M.aa && z("Object already scheduled for deletion"), _t.push(this), _t.length === 1 && Tt && Tt(Bt), this.M.$ = true, this; }, We.prototype.qa = function(c2) { return this.ka && (c2 = this.ka(c2)), c2; }, We.prototype.ha = function(c2) { this.W && this.W(c2); - }, We.prototype.argPackAdvance = 8, We.prototype.readValueFromPointer = Ge, We.prototype.deleteObject = function(c2) { + }, We.prototype.argPackAdvance = 8, We.prototype.readValueFromPointer = ze, We.prototype.deleteObject = function(c2) { c2 !== null && c2.delete(); }, We.prototype.fromWireType = function(c2) { function d2() { @@ -13670,54 +13670,54 @@ function Ic(e) { if (v2 = this.N.pa(g2), v2 = pt[v2], !v2) return d2.call(this); v2 = this.ca ? v2.la : v2.pointerType; - var x2 = Et(g2, this.N, v2.N); + var x2 = kt(g2, this.N, v2.N); return x2 === null ? d2.call(this) : this.da ? ht(v2.N.X, { P: v2, O: x2, U: this, T: c2 }) : ht(v2.N.X, { P: v2, O: x2 }); }, er = t.UnboundTypeError = J("UnboundTypeError"); - var ac = typeof atob == "function" ? atob : function(c2) { + var dc = typeof atob == "function" ? atob : function(c2) { var d2 = "", g2 = 0; c2 = c2.replace(/[^A-Za-z0-9\+\/=]/g, ""); do { - var v2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)), x2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)), E = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)), A = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)); - v2 = v2 << 2 | x2 >> 4, x2 = (x2 & 15) << 4 | E >> 2; - var R2 = (E & 3) << 6 | A; - d2 += String.fromCharCode(v2), E !== 64 && (d2 += String.fromCharCode(x2)), A !== 64 && (d2 += String.fromCharCode(R2)); + var v2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)), x2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)), k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)), A = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(c2.charAt(g2++)); + v2 = v2 << 2 | x2 >> 4, x2 = (x2 & 15) << 4 | k >> 2; + var R2 = (k & 3) << 6 | A; + d2 += String.fromCharCode(v2), k !== 64 && (d2 += String.fromCharCode(x2)), A !== 64 && (d2 += String.fromCharCode(R2)); } while (g2 < c2.length); return d2; - }, uc = { l: function(c2, d2, g2, v2) { + }, pc = { l: function(c2, d2, g2, v2) { Z("Assertion failed: " + (c2 ? h2(y, c2) : "") + ", at: " + [d2 ? d2 ? h2(y, d2) : "" : "unknown filename", g2, v2 ? v2 ? h2(y, v2) : "" : "unknown function"]); }, q: function(c2, d2, g2) { c2 = ie(c2), d2 = Qt(d2, "wrapper"), g2 = Le(g2); - var v2 = [].slice, x2 = d2.N, E = x2.X, A = x2.R.X, R2 = x2.R.constructor; + var v2 = [].slice, x2 = d2.N, k = x2.X, A = x2.R.X, R2 = x2.R.constructor; c2 = Oe(c2, function() { x2.R.ja.forEach(function(L) { if (this[L] === A[L]) - throw new Ue("Pure virtual function " + L + " must be implemented in JavaScript"); - }.bind(this)), Object.defineProperty(this, "__parent", { value: E }), this.__construct.apply(this, v2.call(arguments)); - }), E.__construct = function() { - this === E && G("Pass correct 'this' to __construct"); + throw new qe("Pure virtual function " + L + " must be implemented in JavaScript"); + }.bind(this)), Object.defineProperty(this, "__parent", { value: k }), this.__construct.apply(this, v2.call(arguments)); + }), k.__construct = function() { + this === k && z("Pass correct 'this' to __construct"); var L = R2.implement.apply(void 0, [this].concat(v2.call(arguments))); cr(L); var D = L.M; - L.notifyOnDestruction(), D.aa = true, Object.defineProperties(this, { M: { value: D } }), mt(this), L = D.O, L = fr(x2, L), Ne.hasOwnProperty(L) ? G("Tried to register registered instance: " + L) : Ne[L] = this; - }, E.__destruct = function() { - this === E && G("Pass correct 'this' to __destruct"), cr(this); + L.notifyOnDestruction(), D.aa = true, Object.defineProperties(this, { M: { value: D } }), mt(this), L = D.O, L = fr(x2, L), Ne.hasOwnProperty(L) ? z("Tried to register registered instance: " + L) : Ne[L] = this; + }, k.__destruct = function() { + this === k && z("Pass correct 'this' to __destruct"), cr(this); var L = this.M.O; - L = fr(x2, L), Ne.hasOwnProperty(L) ? delete Ne[L] : G("Tried to unregister unregistered instance: " + L); - }, c2.prototype = Object.create(E); + L = fr(x2, L), Ne.hasOwnProperty(L) ? delete Ne[L] : z("Tried to unregister unregistered instance: " + L); + }, c2.prototype = Object.create(k); for (var N in g2) c2.prototype[N] = g2[N]; return De(c2); }, j: function(c2) { var d2 = Zt[c2]; delete Zt[c2]; - var g2 = d2.fa, v2 = d2.W, x2 = d2.ia, E = x2.map((A) => A.ta).concat(x2.map((A) => A.za)); - gt([c2], E, (A) => { + var g2 = d2.fa, v2 = d2.W, x2 = d2.ia, k = x2.map((A) => A.ta).concat(x2.map((A) => A.za)); + gt([c2], k, (A) => { var R2 = {}; return x2.forEach((N, L) => { - var D = A[L], z = N.ra, re = N.sa, Ce = A[L + x2.length], ce = N.ya, rt = N.Aa; - R2[N.oa] = { read: (yt) => D.fromWireType(z(re, yt)), write: (yt, Cr) => { + var D = A[L], G = N.ra, re = N.sa, Ce = A[L + x2.length], ce = N.ya, rt = N.Aa; + R2[N.oa] = { read: (yt) => D.fromWireType(G(re, yt)), write: (yt, Cr) => { var Lt = []; - ce(rt, yt, Ce.toWireType(Lt, Cr)), qt(Lt); + ce(rt, yt, Ce.toWireType(Lt, Cr)), Ut(Lt); } }; }), [{ name: d2.name, fromWireType: function(N) { var L = {}, D; @@ -13728,15 +13728,15 @@ function Ic(e) { for (var D in R2) if (!(D in L)) throw new TypeError('Missing field: "' + D + '"'); - var z = g2(); + var G = g2(); for (D in R2) - R2[D].write(z, L[D]); - return N !== null && N.push(v2, z), z; - }, argPackAdvance: 8, readValueFromPointer: Ge, V: v2 }]; + R2[D].write(G, L[D]); + return N !== null && N.push(v2, G), G; + }, argPackAdvance: 8, readValueFromPointer: ze, V: v2 }]; }); }, v: function() { }, B: function(c2, d2, g2, v2, x2) { - var E = Y(g2); + var k = H(g2); d2 = ie(d2), j(c2, { name: d2, fromWireType: function(A) { return !!A; }, toWireType: function(A, R2) { @@ -13750,50 +13750,50 @@ function Ic(e) { R2 = P2; else throw new TypeError("Unknown boolean type size: " + d2); - return this.fromWireType(R2[A >> E]); + return this.fromWireType(R2[A >> k]); }, V: null }); - }, f: function(c2, d2, g2, v2, x2, E, A, R2, N, L, D, z, re) { - D = ie(D), E = Pe(x2, E), R2 && (R2 = Pe(A, R2)), L && (L = Pe(N, L)), re = Pe(z, re); + }, f: function(c2, d2, g2, v2, x2, k, A, R2, N, L, D, G, re) { + D = ie(D), k = Pe(x2, k), R2 && (R2 = Pe(A, R2)), L && (L = Pe(N, L)), re = Pe(G, re); var Ce = Me(D); ae(Ce, function() { - qe("Cannot construct " + D + " due to unbound types", [v2]); + Ue("Cannot construct " + D + " due to unbound types", [v2]); }), gt([c2, d2, g2], v2 ? [v2] : [], function(ce) { if (ce = ce[0], v2) var rt = ce.N, yt = rt.X; else - yt = K2.prototype; + yt = Q.prototype; ce = Oe(Ce, function() { if (Object.getPrototypeOf(this) !== Cr) throw new pe("Use 'new' to construct " + D); if (Lt.Y === void 0) throw new pe(D + " has no accessible constructor"); - var ra = Lt.Y[arguments.length]; - if (ra === void 0) + var na = Lt.Y[arguments.length]; + if (na === void 0) throw new pe("Tried to invoke ctor of " + D + " with invalid number of parameters (" + arguments.length + ") - expected (" + Object.keys(Lt.Y).toString() + ") parameters instead!"); - return ra.apply(this, arguments); + return na.apply(this, arguments); }); var Cr = Object.create(yt, { constructor: { value: ce } }); ce.prototype = Cr; - var Lt = new xe(D, ce, Cr, re, rt, E, R2, L); + var Lt = new xe(D, ce, Cr, re, rt, k, R2, L); rt = new We(D, Lt, true, false), yt = new We(D + "*", Lt, false, false); - var ta = new We(D + " const*", Lt, false, true); - return pt[c2] = { pointerType: yt, la: ta }, ze(Ce, ce), [rt, yt, ta]; + var ra = new We(D + " const*", Lt, false, true); + return pt[c2] = { pointerType: yt, la: ra }, Ge(Ce, ce), [rt, yt, ra]; }); - }, d: function(c2, d2, g2, v2, x2, E, A) { + }, d: function(c2, d2, g2, v2, x2, k, A) { var R2 = we(g2, v2); - d2 = ie(d2), E = Pe(x2, E), gt([], [c2], function(N) { + d2 = ie(d2), k = Pe(x2, k), gt([], [c2], function(N) { function L() { - qe("Cannot call " + D + " due to unbound types", R2); + Ue("Cannot call " + D + " due to unbound types", R2); } N = N[0]; var D = N.name + "." + d2; d2.startsWith("@@") && (d2 = Symbol[d2.substring(2)]); - var z = N.N.constructor; - return z[d2] === void 0 ? (L.Z = g2 - 1, z[d2] = L) : (ye(z, d2, D), z[d2].S[g2 - 1] = L), gt([], R2, function(re) { - return re = Rt(D, [re[0], null].concat(re.slice(1)), null, E, A), z[d2].S === void 0 ? (re.Z = g2 - 1, z[d2] = re) : z[d2].S[g2 - 1] = re, []; + var G = N.N.constructor; + return G[d2] === void 0 ? (L.Z = g2 - 1, G[d2] = L) : (ye(G, d2, D), G[d2].S[g2 - 1] = L), gt([], R2, function(re) { + return re = Rt(D, [re[0], null].concat(re.slice(1)), null, k, A), G[d2].S === void 0 ? (re.Z = g2 - 1, G[d2] = re) : G[d2].S[g2 - 1] = re, []; }), []; }); - }, p: function(c2, d2, g2, v2, x2, E) { + }, p: function(c2, d2, g2, v2, x2, k) { 0 < d2 || Z(); var A = we(d2, g2); x2 = Pe(v2, x2), gt([], [c2], function(R2) { @@ -13802,23 +13802,23 @@ function Ic(e) { if (R2.N.Y === void 0 && (R2.N.Y = []), R2.N.Y[d2 - 1] !== void 0) throw new pe("Cannot register multiple constructors with identical number of parameters (" + (d2 - 1) + ") for class '" + R2.name + "'! Overload resolution is currently only performed using the parameter count, not actual type info!"); return R2.N.Y[d2 - 1] = () => { - qe("Cannot construct " + R2.name + " due to unbound types", A); + Ue("Cannot construct " + R2.name + " due to unbound types", A); }, gt([], A, function(L) { - return L.splice(1, 0, null), R2.N.Y[d2 - 1] = Rt(N, L, null, x2, E), []; + return L.splice(1, 0, null), R2.N.Y[d2 - 1] = Rt(N, L, null, x2, k), []; }), []; }); - }, a: function(c2, d2, g2, v2, x2, E, A, R2) { + }, a: function(c2, d2, g2, v2, x2, k, A, R2) { var N = we(g2, v2); - d2 = ie(d2), E = Pe(x2, E), gt([], [c2], function(L) { + d2 = ie(d2), k = Pe(x2, k), gt([], [c2], function(L) { function D() { - qe("Cannot call " + z + " due to unbound types", N); + Ue("Cannot call " + G + " due to unbound types", N); } L = L[0]; - var z = L.name + "." + d2; + var G = L.name + "." + d2; d2.startsWith("@@") && (d2 = Symbol[d2.substring(2)]), R2 && L.N.ja.push(d2); var re = L.N.X, Ce = re[d2]; - return Ce === void 0 || Ce.S === void 0 && Ce.className !== L.name && Ce.Z === g2 - 2 ? (D.Z = g2 - 2, D.className = L.name, re[d2] = D) : (ye(re, d2, z), re[d2].S[g2 - 2] = D), gt([], N, function(ce) { - return ce = Rt(z, ce, L, E, A), re[d2].S === void 0 ? (ce.Z = g2 - 2, re[d2] = ce) : re[d2].S[g2 - 2] = ce, []; + return Ce === void 0 || Ce.S === void 0 && Ce.className !== L.name && Ce.Z === g2 - 2 ? (D.Z = g2 - 2, D.className = L.name, re[d2] = D) : (ye(re, d2, G), re[d2].S[g2 - 2] = D), gt([], N, function(ce) { + return ce = Rt(G, ce, L, k, A), re[d2].S === void 0 ? (ce.Z = g2 - 2, re[d2] = ce) : re[d2].S[g2 - 2] = ce, []; }), []; }); }, A: function(c2, d2) { @@ -13827,30 +13827,30 @@ function Ic(e) { return Te(g2), v2; }, toWireType: function(g2, v2) { return De(v2); - }, argPackAdvance: 8, readValueFromPointer: Ge, V: null }); + }, argPackAdvance: 8, readValueFromPointer: ze, V: null }); }, n: function(c2, d2, g2) { - g2 = Y(g2), d2 = ie(d2), j(c2, { name: d2, fromWireType: function(v2) { + g2 = H(g2), d2 = ie(d2), j(c2, { name: d2, fromWireType: function(v2) { return v2; }, toWireType: function(v2, x2) { return x2; }, argPackAdvance: 8, readValueFromPointer: tt(d2, g2), V: null }); }, e: function(c2, d2, g2, v2, x2) { - d2 = ie(d2), x2 === -1 && (x2 = 4294967295), x2 = Y(g2); - var E = (R2) => R2; + d2 = ie(d2), x2 === -1 && (x2 = 4294967295), x2 = H(g2); + var k = (R2) => R2; if (v2 === 0) { var A = 32 - 8 * g2; - E = (R2) => R2 << A >>> A; + k = (R2) => R2 << A >>> A; } g2 = d2.includes("unsigned") ? function(R2, N) { return N >>> 0; } : function(R2, N) { return N; - }, j(c2, { name: d2, fromWireType: E, toWireType: g2, argPackAdvance: 8, readValueFromPointer: bt(d2, x2, v2 !== 0), V: null }); + }, j(c2, { name: d2, fromWireType: k, toWireType: g2, argPackAdvance: 8, readValueFromPointer: bt(d2, x2, v2 !== 0), V: null }); }, b: function(c2, d2, g2) { - function v2(E) { - E >>= 2; + function v2(k) { + k >>= 2; var A = w2; - return new x2(m2, A[E + 1], A[E]); + return new x2(m2, A[k + 1], A[k]); } var x2 = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array][d2]; g2 = ie(g2), j(c2, { name: g2, fromWireType: v2, argPackAdvance: 8, readValueFromPointer: v2 }, { ua: true }); @@ -13858,10 +13858,10 @@ function Ic(e) { d2 = ie(d2); var g2 = d2 === "std::string"; j(c2, { name: d2, fromWireType: function(v2) { - var x2 = w2[v2 >> 2], E = v2 + 4; + var x2 = w2[v2 >> 2], k = v2 + 4; if (g2) - for (var A = E, R2 = 0; R2 <= x2; ++R2) { - var N = E + R2; + for (var A = k, R2 = 0; R2 <= x2; ++R2) { + var N = k + R2; if (R2 == x2 || y[N] == 0) { if (A = A ? h2(y, A, N - A) : "", L === void 0) var L = A; @@ -13872,121 +13872,121 @@ function Ic(e) { } else { for (L = Array(x2), R2 = 0; R2 < x2; ++R2) - L[R2] = String.fromCharCode(y[E + R2]); + L[R2] = String.fromCharCode(y[k + R2]); L = L.join(""); } return Ct(v2), L; }, toWireType: function(v2, x2) { x2 instanceof ArrayBuffer && (x2 = new Uint8Array(x2)); - var E, A = typeof x2 == "string"; - if (A || x2 instanceof Uint8Array || x2 instanceof Uint8ClampedArray || x2 instanceof Int8Array || G("Cannot pass non-string to std::string"), g2 && A) { + var k, A = typeof x2 == "string"; + if (A || x2 instanceof Uint8Array || x2 instanceof Uint8ClampedArray || x2 instanceof Int8Array || z("Cannot pass non-string to std::string"), g2 && A) { var R2 = 0; - for (E = 0; E < x2.length; ++E) { - var N = x2.charCodeAt(E); - 127 >= N ? R2++ : 2047 >= N ? R2 += 2 : 55296 <= N && 57343 >= N ? (R2 += 4, ++E) : R2 += 3; + for (k = 0; k < x2.length; ++k) { + var N = x2.charCodeAt(k); + 127 >= N ? R2++ : 2047 >= N ? R2 += 2 : 55296 <= N && 57343 >= N ? (R2 += 4, ++k) : R2 += 3; } - E = R2; + k = R2; } else - E = x2.length; - if (R2 = _i(4 + E + 1), N = R2 + 4, w2[R2 >> 2] = E, g2 && A) { - if (A = N, N = E + 1, E = y, 0 < N) { + k = x2.length; + if (R2 = Ei(4 + k + 1), N = R2 + 4, w2[R2 >> 2] = k, g2 && A) { + if (A = N, N = k + 1, k = y, 0 < N) { N = A + N - 1; for (var L = 0; L < x2.length; ++L) { var D = x2.charCodeAt(L); if (55296 <= D && 57343 >= D) { - var z = x2.charCodeAt(++L); - D = 65536 + ((D & 1023) << 10) | z & 1023; + var G = x2.charCodeAt(++L); + D = 65536 + ((D & 1023) << 10) | G & 1023; } if (127 >= D) { if (A >= N) break; - E[A++] = D; + k[A++] = D; } else { if (2047 >= D) { if (A + 1 >= N) break; - E[A++] = 192 | D >> 6; + k[A++] = 192 | D >> 6; } else { if (65535 >= D) { if (A + 2 >= N) break; - E[A++] = 224 | D >> 12; + k[A++] = 224 | D >> 12; } else { if (A + 3 >= N) break; - E[A++] = 240 | D >> 18, E[A++] = 128 | D >> 12 & 63; + k[A++] = 240 | D >> 18, k[A++] = 128 | D >> 12 & 63; } - E[A++] = 128 | D >> 6 & 63; + k[A++] = 128 | D >> 6 & 63; } - E[A++] = 128 | D & 63; + k[A++] = 128 | D & 63; } } - E[A] = 0; + k[A] = 0; } } else if (A) - for (A = 0; A < E; ++A) - L = x2.charCodeAt(A), 255 < L && (Ct(N), G("String has UTF-16 code units that do not fit in 8 bits")), y[N + A] = L; + for (A = 0; A < k; ++A) + L = x2.charCodeAt(A), 255 < L && (Ct(N), z("String has UTF-16 code units that do not fit in 8 bits")), y[N + A] = L; else - for (A = 0; A < E; ++A) + for (A = 0; A < k; ++A) y[N + A] = x2[A]; return v2 !== null && v2.push(Ct, R2), R2; - }, argPackAdvance: 8, readValueFromPointer: Ge, V: function(v2) { + }, argPackAdvance: 8, readValueFromPointer: ze, V: function(v2) { Ct(v2); } }); }, i: function(c2, d2, g2) { if (g2 = ie(g2), d2 === 2) - var v2 = vt, x2 = je, E = st, A = () => k, R2 = 1; + var v2 = vt, x2 = je, k = st, A = () => E, R2 = 1; else - d2 === 4 && (v2 = Ir, x2 = pr, E = In, A = () => w2, R2 = 2); + d2 === 4 && (v2 = Ir, x2 = pr, k = In, A = () => w2, R2 = 2); j(c2, { name: g2, fromWireType: function(N) { - for (var L = w2[N >> 2], D = A(), z, re = N + 4, Ce = 0; Ce <= L; ++Ce) { + for (var L = w2[N >> 2], D = A(), G, re = N + 4, Ce = 0; Ce <= L; ++Ce) { var ce = N + 4 + Ce * d2; - (Ce == L || D[ce >> R2] == 0) && (re = v2(re, ce - re), z === void 0 ? z = re : (z += String.fromCharCode(0), z += re), re = ce + d2); + (Ce == L || D[ce >> R2] == 0) && (re = v2(re, ce - re), G === void 0 ? G = re : (G += String.fromCharCode(0), G += re), re = ce + d2); } - return Ct(N), z; + return Ct(N), G; }, toWireType: function(N, L) { - typeof L != "string" && G("Cannot pass non-string to C++ string type " + g2); - var D = E(L), z = _i(4 + D + d2); - return w2[z >> 2] = D >> R2, x2(L, z + 4, D + d2), N !== null && N.push(Ct, z), z; - }, argPackAdvance: 8, readValueFromPointer: Ge, V: function(N) { + typeof L != "string" && z("Cannot pass non-string to C++ string type " + g2); + var D = k(L), G = Ei(4 + D + d2); + return w2[G >> 2] = D >> R2, x2(L, G + 4, D + d2), N !== null && N.push(Ct, G), G; + }, argPackAdvance: 8, readValueFromPointer: ze, V: function(N) { Ct(N); } }); - }, k: function(c2, d2, g2, v2, x2, E) { - Zt[c2] = { name: ie(d2), fa: Pe(g2, v2), W: Pe(x2, E), ia: [] }; - }, h: function(c2, d2, g2, v2, x2, E, A, R2, N, L) { - Zt[c2].ia.push({ oa: ie(d2), ta: g2, ra: Pe(v2, x2), sa: E, za: A, ya: Pe(R2, N), Aa: L }); + }, k: function(c2, d2, g2, v2, x2, k) { + Zt[c2] = { name: ie(d2), fa: Pe(g2, v2), W: Pe(x2, k), ia: [] }; + }, h: function(c2, d2, g2, v2, x2, k, A, R2, N, L) { + Zt[c2].ia.push({ oa: ie(d2), ta: g2, ra: Pe(v2, x2), sa: k, za: A, ya: Pe(R2, N), Aa: L }); }, C: function(c2, d2) { d2 = ie(d2), j(c2, { va: true, name: d2, argPackAdvance: 0, fromWireType: function() { }, toWireType: function() { } }); }, s: function(c2, d2, g2, v2, x2) { c2 = Cn[c2], d2 = Le(d2), g2 = Rr(g2); - var E = []; - return w2[v2 >> 2] = De(E), c2(d2, g2, E, x2); + var k = []; + return w2[v2 >> 2] = De(k), c2(d2, g2, k, x2); }, t: function(c2, d2, g2, v2) { c2 = Cn[c2], d2 = Le(d2), g2 = Rr(g2), c2(d2, g2, null, v2); }, g: Te, m: function(c2, d2) { - var g2 = oc(c2, d2), v2 = g2[0]; + var g2 = fc(c2, d2), v2 = g2[0]; d2 = v2.name + "_$" + g2.slice(1).map(function(A) { return A.name; }).join("_") + "$"; - var x2 = Ks[d2]; + var x2 = Js[d2]; if (x2 !== void 0) return x2; - var E = Array(c2 - 1); - return x2 = ic((A, R2, N, L) => { - for (var D = 0, z = 0; z < c2 - 1; ++z) - E[z] = g2[z + 1].readValueFromPointer(L + D), D += g2[z + 1].argPackAdvance; - for (A = A[R2].apply(A, E), z = 0; z < c2 - 1; ++z) - g2[z + 1].ma && g2[z + 1].ma(E[z]); + var k = Array(c2 - 1); + return x2 = lc((A, R2, N, L) => { + for (var D = 0, G = 0; G < c2 - 1; ++G) + k[G] = g2[G + 1].readValueFromPointer(L + D), D += g2[G + 1].argPackAdvance; + for (A = A[R2].apply(A, k), G = 0; G < c2 - 1; ++G) + g2[G + 1].ma && g2[G + 1].ma(k[G]); if (!v2.va) return v2.toWireType(N, A); - }), Ks[d2] = x2; + }), Js[d2] = x2; }, D: function(c2) { 4 < c2 && (le[c2].ga += 1); }, r: function(c2) { var d2 = Le(c2); - qt(d2), Te(c2); + Ut(d2), Te(c2); }, c: function() { Z(""); }, x: function(c2, d2, g2) { @@ -14003,13 +14003,13 @@ function Ic(e) { e: { try { l2.grow(x2 - m2.byteLength + 65535 >>> 16), I(); - var E = 1; + var k = 1; break e; } catch { } - E = void 0; + k = void 0; } - if (E) + if (k) return true; } return false; @@ -14018,11 +14018,11 @@ function Ic(e) { }, u: function() { return 70; }, y: function(c2, d2, g2, v2) { - for (var x2 = 0, E = 0; E < g2; E++) { + for (var x2 = 0, k = 0; k < g2; k++) { var A = w2[d2 >> 2], R2 = w2[d2 + 4 >> 2]; d2 += 8; for (var N = 0; N < R2; N++) { - var L = y[A + N], D = sc[c2]; + var L = y[A + N], D = cc[c2]; L === 0 || L === 10 ? ((c2 === 1 ? s : a)(h2(D, 0)), D.length = 0) : D.push(L); } x2 += R2; @@ -14037,15 +14037,15 @@ function Ic(e) { c2(x2.instance); } function g2(x2) { - return Ee().then(function(E) { - return E instanceof WebAssembly.Instance ? E : WebAssembly.instantiate(E, v2); - }).then(function(E) { - return E; - }).then(x2, function(E) { - a("failed to asynchronously prepare wasm: " + E), Z(E); + return ke().then(function(k) { + return k instanceof WebAssembly.Instance ? k : WebAssembly.instantiate(k, v2); + }).then(function(k) { + return k; + }).then(x2, function(k) { + a("failed to asynchronously prepare wasm: " + k), Z(k); }); } - var v2 = { a: uc }; + var v2 = { a: pc }; if (me++, t.monitorRunDependencies && t.monitorRunDependencies(me), t.instantiateWasm) try { return t.instantiateWasm(v2, c2); @@ -14053,23 +14053,23 @@ function Ic(e) { a("Module.instantiateWasm callback failed with error: " + x2), r(x2); } return function() { - return u2 || typeof WebAssembly.instantiateStreaming != "function" || ne(ke) || typeof fetch != "function" ? g2(d2) : fetch(ke, { credentials: "same-origin" }).then(function(x2) { - return WebAssembly.instantiateStreaming(x2, v2).then(d2, function(E) { - return a("wasm streaming compile failed: " + E), a("falling back to ArrayBuffer instantiation"), g2(d2); + return u2 || typeof WebAssembly.instantiateStreaming != "function" || ne(Ee) || typeof fetch != "function" ? g2(d2) : fetch(Ee, { credentials: "same-origin" }).then(function(x2) { + return WebAssembly.instantiateStreaming(x2, v2).then(d2, function(k) { + return a("wasm streaming compile failed: " + k), a("falling back to ArrayBuffer instantiation"), g2(d2); }); }); }().catch(r), {}; })(), t.___wasm_call_ctors = function() { return (t.___wasm_call_ctors = t.asm.F).apply(null, arguments); }; - var Zs = t.___getTypeName = function() { - return (Zs = t.___getTypeName = t.asm.G).apply(null, arguments); + var ea = t.___getTypeName = function() { + return (ea = t.___getTypeName = t.asm.G).apply(null, arguments); }; t.__embind_initialize_bindings = function() { return (t.__embind_initialize_bindings = t.asm.H).apply(null, arguments); }; - var _i = t._malloc = function() { - return (_i = t._malloc = t.asm.I).apply(null, arguments); + var Ei = t._malloc = function() { + return (Ei = t._malloc = t.asm.I).apply(null, arguments); }, Ct = t._free = function() { return (Ct = t._free = t.asm.K).apply(null, arguments); }; @@ -14078,9 +14078,9 @@ function Ic(e) { }; var Mn; Ie = function c2() { - Mn || ea(), Mn || (Ie = c2); + Mn || ta(), Mn || (Ie = c2); }; - function ea() { + function ta() { function c2() { if (!Mn && (Mn = true, t.calledRun = true, !p)) { if (Ye(V), n(t), t.onRuntimeInitialized && t.onRuntimeInitialized(), t.postRun) @@ -14095,7 +14095,7 @@ function Ic(e) { if (t.preRun) for (typeof t.preRun == "function" && (t.preRun = [t.preRun]); t.preRun.length; ) Ae(); - Ye(q), 0 < me || (t.setStatus ? (t.setStatus("Running..."), setTimeout(function() { + Ye(U), 0 < me || (t.setStatus ? (t.setStatus("Running..."), setTimeout(function() { setTimeout(function() { t.setStatus(""); }, 1), c2(); @@ -14105,23 +14105,23 @@ function Ic(e) { if (t.preInit) for (typeof t.preInit == "function" && (t.preInit = [t.preInit]); 0 < t.preInit.length; ) t.preInit.pop()(); - return ea(), e.ready; + return ta(), e.ready; } -var _a2; +var Ta; var ka = tr(() => { - _a2 = ""; + Ta = ""; }); -async function Ea(e) { - let { default: t } = await Promise.resolve().then(() => (ka(), Ta)); - return Wi(await t(e)); +async function Oa(e) { + let { default: t } = await Promise.resolve().then(() => (ka(), Ea)); + return Di(await t(e)); } -var Oa = tr(() => { - Sa(); - Un(); +var Pa = tr(() => { + _a2(); + qn(); }); -var Di = {}; -Wn(Di, { getYoga: () => Nc, init: () => Mc }); -async function Lc(e, t) { +var Bi = {}; +Wn(Bi, { getYoga: () => Bc, init: () => $c }); +async function Dc(e, t) { let n; if (typeof e == "string" || typeof Request == "function" && e instanceof Request || typeof URL == "function" && e instanceof URL ? n = await fetch(e) : n = await e, typeof Response == "function" && n instanceof Response) { if (typeof WebAssembly.instantiateStreaming == "function") @@ -14136,31 +14136,31 @@ async function Lc(e, t) { let r = await WebAssembly.instantiate("buffer" in n ? n.buffer.slice(n.byteOffset, n.byteOffset + n.byteLength) : n, t); return r instanceof WebAssembly.Instance ? { instance: r, module: n } : r; } -function Mc(e) { - Rc({ instantiateWasm(t, n) { - return Lc(e, t).then(({ instance: r }) => { +function $c(e) { + Wc({ instantiateWasm(t, n) { + return Dc(e, t).then(({ instance: r }) => { n(r); - }).catch(Fi), {}; - } }).then(Pa).catch(Fi); -} -function Nc() { - return Cc; -} -var Rc; -var Pa; -var Fi; -var Cc; -var Bi = tr(() => { - Oa(); - Rc = Ea, Cc = new Promise((e, t) => { - Pa = e, Fi = t; + }).catch($i), {}; + } }).then(Aa).catch($i); +} +function Bc() { + return Fc; +} +var Wc; +var Aa; +var $i; +var Fc; +var Ui = tr(() => { + Pa(); + Wc = Oa, Fc = new Promise((e, t) => { + Aa = e, $i = t; }); }); -var lo = U((uo) => { +var fo = q((lo) => { "use strict"; - Object.defineProperty(uo, "__esModule", { value: true }); - Object.defineProperty(uo, "default", { enumerable: true, get: () => Vd }); - function Vd(e) { + Object.defineProperty(lo, "__esModule", { value: true }); + Object.defineProperty(lo, "default", { enumerable: true, get: () => ep }); + function ep(e) { if (e = `${e}`, e === "0") return "0"; if (/^[+-]?(\d+|\d*\.\d+)(e[+-]?\d+)?(%|\w+)?$/.test(e)) @@ -14169,28 +14169,28 @@ var lo = U((uo) => { return `calc(${e} * -1)`; } }); -var wu = U((fo) => { +var ku = q((co) => { "use strict"; - Object.defineProperty(fo, "__esModule", { value: true }); - Object.defineProperty(fo, "default", { enumerable: true, get: () => Hd }); - var Hd = ["preflight", "container", "accessibility", "pointerEvents", "visibility", "position", "inset", "isolation", "zIndex", "order", "gridColumn", "gridColumnStart", "gridColumnEnd", "gridRow", "gridRowStart", "gridRowEnd", "float", "clear", "margin", "boxSizing", "display", "aspectRatio", "height", "maxHeight", "minHeight", "width", "minWidth", "maxWidth", "flex", "flexShrink", "flexGrow", "flexBasis", "tableLayout", "borderCollapse", "borderSpacing", "transformOrigin", "translate", "rotate", "skew", "scale", "transform", "animation", "cursor", "touchAction", "userSelect", "resize", "scrollSnapType", "scrollSnapAlign", "scrollSnapStop", "scrollMargin", "scrollPadding", "listStylePosition", "listStyleType", "appearance", "columns", "breakBefore", "breakInside", "breakAfter", "gridAutoColumns", "gridAutoFlow", "gridAutoRows", "gridTemplateColumns", "gridTemplateRows", "flexDirection", "flexWrap", "placeContent", "placeItems", "alignContent", "alignItems", "justifyContent", "justifyItems", "gap", "space", "divideWidth", "divideStyle", "divideColor", "divideOpacity", "placeSelf", "alignSelf", "justifySelf", "overflow", "overscrollBehavior", "scrollBehavior", "textOverflow", "whitespace", "wordBreak", "borderRadius", "borderWidth", "borderStyle", "borderColor", "borderOpacity", "backgroundColor", "backgroundOpacity", "backgroundImage", "gradientColorStops", "boxDecorationBreak", "backgroundSize", "backgroundAttachment", "backgroundClip", "backgroundPosition", "backgroundRepeat", "backgroundOrigin", "fill", "stroke", "strokeWidth", "objectFit", "objectPosition", "padding", "textAlign", "textIndent", "verticalAlign", "fontFamily", "fontSize", "fontWeight", "textTransform", "fontStyle", "fontVariantNumeric", "lineHeight", "letterSpacing", "textColor", "textOpacity", "textDecoration", "textDecorationColor", "textDecorationStyle", "textDecorationThickness", "textUnderlineOffset", "fontSmoothing", "placeholderColor", "placeholderOpacity", "caretColor", "accentColor", "opacity", "backgroundBlendMode", "mixBlendMode", "boxShadow", "boxShadowColor", "outlineStyle", "outlineWidth", "outlineOffset", "outlineColor", "ringWidth", "ringColor", "ringOpacity", "ringOffsetWidth", "ringOffsetColor", "blur", "brightness", "contrast", "dropShadow", "grayscale", "hueRotate", "invert", "saturate", "sepia", "filter", "backdropBlur", "backdropBrightness", "backdropContrast", "backdropGrayscale", "backdropHueRotate", "backdropInvert", "backdropOpacity", "backdropSaturate", "backdropSepia", "backdropFilter", "transitionProperty", "transitionDelay", "transitionDuration", "transitionTimingFunction", "willChange", "content"]; + Object.defineProperty(co, "__esModule", { value: true }); + Object.defineProperty(co, "default", { enumerable: true, get: () => tp }); + var tp = ["preflight", "container", "accessibility", "pointerEvents", "visibility", "position", "inset", "isolation", "zIndex", "order", "gridColumn", "gridColumnStart", "gridColumnEnd", "gridRow", "gridRowStart", "gridRowEnd", "float", "clear", "margin", "boxSizing", "display", "aspectRatio", "height", "maxHeight", "minHeight", "width", "minWidth", "maxWidth", "flex", "flexShrink", "flexGrow", "flexBasis", "tableLayout", "borderCollapse", "borderSpacing", "transformOrigin", "translate", "rotate", "skew", "scale", "transform", "animation", "cursor", "touchAction", "userSelect", "resize", "scrollSnapType", "scrollSnapAlign", "scrollSnapStop", "scrollMargin", "scrollPadding", "listStylePosition", "listStyleType", "appearance", "columns", "breakBefore", "breakInside", "breakAfter", "gridAutoColumns", "gridAutoFlow", "gridAutoRows", "gridTemplateColumns", "gridTemplateRows", "flexDirection", "flexWrap", "placeContent", "placeItems", "alignContent", "alignItems", "justifyContent", "justifyItems", "gap", "space", "divideWidth", "divideStyle", "divideColor", "divideOpacity", "placeSelf", "alignSelf", "justifySelf", "overflow", "overscrollBehavior", "scrollBehavior", "textOverflow", "whitespace", "wordBreak", "borderRadius", "borderWidth", "borderStyle", "borderColor", "borderOpacity", "backgroundColor", "backgroundOpacity", "backgroundImage", "gradientColorStops", "boxDecorationBreak", "backgroundSize", "backgroundAttachment", "backgroundClip", "backgroundPosition", "backgroundRepeat", "backgroundOrigin", "fill", "stroke", "strokeWidth", "objectFit", "objectPosition", "padding", "textAlign", "textIndent", "verticalAlign", "fontFamily", "fontSize", "fontWeight", "textTransform", "fontStyle", "fontVariantNumeric", "lineHeight", "letterSpacing", "textColor", "textOpacity", "textDecoration", "textDecorationColor", "textDecorationStyle", "textDecorationThickness", "textUnderlineOffset", "fontSmoothing", "placeholderColor", "placeholderOpacity", "caretColor", "accentColor", "opacity", "backgroundBlendMode", "mixBlendMode", "boxShadow", "boxShadowColor", "outlineStyle", "outlineWidth", "outlineOffset", "outlineColor", "ringWidth", "ringColor", "ringOpacity", "ringOffsetWidth", "ringOffsetColor", "blur", "brightness", "contrast", "dropShadow", "grayscale", "hueRotate", "invert", "saturate", "sepia", "filter", "backdropBlur", "backdropBrightness", "backdropContrast", "backdropGrayscale", "backdropHueRotate", "backdropInvert", "backdropOpacity", "backdropSaturate", "backdropSepia", "backdropFilter", "transitionProperty", "transitionDelay", "transitionDuration", "transitionTimingFunction", "willChange", "content"]; }); -var Su = U((co) => { +var Ou = q((po) => { "use strict"; - Object.defineProperty(co, "__esModule", { value: true }); - Object.defineProperty(co, "default", { enumerable: true, get: () => Yd }); - function Yd(e, t) { + Object.defineProperty(po, "__esModule", { value: true }); + Object.defineProperty(po, "default", { enumerable: true, get: () => rp }); + function rp(e, t) { return e === void 0 ? t : Array.isArray(e) ? e : [...new Set(t.filter((r) => e !== false && e[r] !== false).concat(Object.keys(e).filter((r) => e[r] !== false)))]; } }); -var po = U((jx, _u) => { - _u.exports = { content: [], presets: [], darkMode: "media", theme: { screens: { sm: "640px", md: "768px", lg: "1024px", xl: "1280px", "2xl": "1536px" }, colors: ({ colors: e }) => ({ inherit: e.inherit, current: e.current, transparent: e.transparent, black: e.black, white: e.white, slate: e.slate, gray: e.gray, zinc: e.zinc, neutral: e.neutral, stone: e.stone, red: e.red, orange: e.orange, amber: e.amber, yellow: e.yellow, lime: e.lime, green: e.green, emerald: e.emerald, teal: e.teal, cyan: e.cyan, sky: e.sky, blue: e.blue, indigo: e.indigo, violet: e.violet, purple: e.purple, fuchsia: e.fuchsia, pink: e.pink, rose: e.rose }), columns: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", "3xs": "16rem", "2xs": "18rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem" }, spacing: { px: "1px", 0: "0px", 0.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", 11: "2.75rem", 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" }, animation: { none: "none", spin: "spin 1s linear infinite", ping: "ping 1s cubic-bezier(0, 0, 0.2, 1) infinite", pulse: "pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite", bounce: "bounce 1s infinite" }, aspectRatio: { auto: "auto", square: "1 / 1", video: "16 / 9" }, backdropBlur: ({ theme: e }) => e("blur"), backdropBrightness: ({ theme: e }) => e("brightness"), backdropContrast: ({ theme: e }) => e("contrast"), backdropGrayscale: ({ theme: e }) => e("grayscale"), backdropHueRotate: ({ theme: e }) => e("hueRotate"), backdropInvert: ({ theme: e }) => e("invert"), backdropOpacity: ({ theme: e }) => e("opacity"), backdropSaturate: ({ theme: e }) => e("saturate"), backdropSepia: ({ theme: e }) => e("sepia"), backgroundColor: ({ theme: e }) => e("colors"), backgroundImage: { none: "none", "gradient-to-t": "linear-gradient(to top, var(--tw-gradient-stops))", "gradient-to-tr": "linear-gradient(to top right, var(--tw-gradient-stops))", "gradient-to-r": "linear-gradient(to right, var(--tw-gradient-stops))", "gradient-to-br": "linear-gradient(to bottom right, var(--tw-gradient-stops))", "gradient-to-b": "linear-gradient(to bottom, var(--tw-gradient-stops))", "gradient-to-bl": "linear-gradient(to bottom left, var(--tw-gradient-stops))", "gradient-to-l": "linear-gradient(to left, var(--tw-gradient-stops))", "gradient-to-tl": "linear-gradient(to top left, var(--tw-gradient-stops))" }, backgroundOpacity: ({ theme: e }) => e("opacity"), backgroundPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, backgroundSize: { auto: "auto", cover: "cover", contain: "contain" }, blur: { 0: "0", none: "0", sm: "4px", DEFAULT: "8px", md: "12px", lg: "16px", xl: "24px", "2xl": "40px", "3xl": "64px" }, brightness: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5", 200: "2" }, borderColor: ({ theme: e }) => ({ ...e("colors"), DEFAULT: e("colors.gray.200", "currentColor") }), borderOpacity: ({ theme: e }) => e("opacity"), borderRadius: { none: "0px", sm: "0.125rem", DEFAULT: "0.25rem", md: "0.375rem", lg: "0.5rem", xl: "0.75rem", "2xl": "1rem", "3xl": "1.5rem", full: "9999px" }, borderSpacing: ({ theme: e }) => ({ ...e("spacing") }), borderWidth: { DEFAULT: "1px", 0: "0px", 2: "2px", 4: "4px", 8: "8px" }, boxShadow: { sm: "0 1px 2px 0 rgb(0 0 0 / 0.05)", DEFAULT: "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)", md: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)", lg: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)", xl: "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)", "2xl": "0 25px 50px -12px rgb(0 0 0 / 0.25)", inner: "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)", none: "none" }, boxShadowColor: ({ theme: e }) => e("colors"), caretColor: ({ theme: e }) => e("colors"), accentColor: ({ theme: e }) => ({ ...e("colors"), auto: "auto" }), contrast: { 0: "0", 50: ".5", 75: ".75", 100: "1", 125: "1.25", 150: "1.5", 200: "2" }, container: {}, content: { none: "none" }, cursor: { auto: "auto", default: "default", pointer: "pointer", wait: "wait", text: "text", move: "move", help: "help", "not-allowed": "not-allowed", none: "none", "context-menu": "context-menu", progress: "progress", cell: "cell", crosshair: "crosshair", "vertical-text": "vertical-text", alias: "alias", copy: "copy", "no-drop": "no-drop", grab: "grab", grabbing: "grabbing", "all-scroll": "all-scroll", "col-resize": "col-resize", "row-resize": "row-resize", "n-resize": "n-resize", "e-resize": "e-resize", "s-resize": "s-resize", "w-resize": "w-resize", "ne-resize": "ne-resize", "nw-resize": "nw-resize", "se-resize": "se-resize", "sw-resize": "sw-resize", "ew-resize": "ew-resize", "ns-resize": "ns-resize", "nesw-resize": "nesw-resize", "nwse-resize": "nwse-resize", "zoom-in": "zoom-in", "zoom-out": "zoom-out" }, divideColor: ({ theme: e }) => e("borderColor"), divideOpacity: ({ theme: e }) => e("borderOpacity"), divideWidth: ({ theme: e }) => e("borderWidth"), dropShadow: { sm: "0 1px 1px rgb(0 0 0 / 0.05)", DEFAULT: ["0 1px 2px rgb(0 0 0 / 0.1)", "0 1px 1px rgb(0 0 0 / 0.06)"], md: ["0 4px 3px rgb(0 0 0 / 0.07)", "0 2px 2px rgb(0 0 0 / 0.06)"], lg: ["0 10px 8px rgb(0 0 0 / 0.04)", "0 4px 3px rgb(0 0 0 / 0.1)"], xl: ["0 20px 13px rgb(0 0 0 / 0.03)", "0 8px 5px rgb(0 0 0 / 0.08)"], "2xl": "0 25px 25px rgb(0 0 0 / 0.15)", none: "0 0 #0000" }, fill: ({ theme: e }) => e("colors"), grayscale: { 0: "0", DEFAULT: "100%" }, hueRotate: { 0: "0deg", 15: "15deg", 30: "30deg", 60: "60deg", 90: "90deg", 180: "180deg" }, invert: { 0: "0", DEFAULT: "100%" }, flex: { 1: "1 1 0%", auto: "1 1 auto", initial: "0 1 auto", none: "none" }, flexBasis: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%" }), flexGrow: { 0: "0", DEFAULT: "1" }, flexShrink: { 0: "0", DEFAULT: "1" }, fontFamily: { sans: ["ui-sans-serif", "system-ui", "-apple-system", "BlinkMacSystemFont", '"Segoe UI"', "Roboto", '"Helvetica Neue"', "Arial", '"Noto Sans"', "sans-serif", '"Apple Color Emoji"', '"Segoe UI Emoji"', '"Segoe UI Symbol"', '"Noto Color Emoji"'], serif: ["ui-serif", "Georgia", "Cambria", '"Times New Roman"', "Times", "serif"], mono: ["ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", '"Liberation Mono"', '"Courier New"', "monospace"] }, fontSize: { xs: ["0.75rem", { lineHeight: "1rem" }], sm: ["0.875rem", { lineHeight: "1.25rem" }], base: ["1rem", { lineHeight: "1.5rem" }], lg: ["1.125rem", { lineHeight: "1.75rem" }], xl: ["1.25rem", { lineHeight: "1.75rem" }], "2xl": ["1.5rem", { lineHeight: "2rem" }], "3xl": ["1.875rem", { lineHeight: "2.25rem" }], "4xl": ["2.25rem", { lineHeight: "2.5rem" }], "5xl": ["3rem", { lineHeight: "1" }], "6xl": ["3.75rem", { lineHeight: "1" }], "7xl": ["4.5rem", { lineHeight: "1" }], "8xl": ["6rem", { lineHeight: "1" }], "9xl": ["8rem", { lineHeight: "1" }] }, fontWeight: { thin: "100", extralight: "200", light: "300", normal: "400", medium: "500", semibold: "600", bold: "700", extrabold: "800", black: "900" }, gap: ({ theme: e }) => e("spacing"), gradientColorStops: ({ theme: e }) => e("colors"), gridAutoColumns: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridAutoRows: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridColumn: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-7": "span 7 / span 7", "span-8": "span 8 / span 8", "span-9": "span 9 / span 9", "span-10": "span 10 / span 10", "span-11": "span 11 / span 11", "span-12": "span 12 / span 12", "span-full": "1 / -1" }, gridColumnEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridColumnStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridRow: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-full": "1 / -1" }, gridRowStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridRowEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridTemplateColumns: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))", 7: "repeat(7, minmax(0, 1fr))", 8: "repeat(8, minmax(0, 1fr))", 9: "repeat(9, minmax(0, 1fr))", 10: "repeat(10, minmax(0, 1fr))", 11: "repeat(11, minmax(0, 1fr))", 12: "repeat(12, minmax(0, 1fr))" }, gridTemplateRows: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))" }, height: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), inset: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), keyframes: { spin: { to: { transform: "rotate(360deg)" } }, ping: { "75%, 100%": { transform: "scale(2)", opacity: "0" } }, pulse: { "50%": { opacity: ".5" } }, bounce: { "0%, 100%": { transform: "translateY(-25%)", animationTimingFunction: "cubic-bezier(0.8,0,1,1)" }, "50%": { transform: "none", animationTimingFunction: "cubic-bezier(0,0,0.2,1)" } } }, letterSpacing: { tighter: "-0.05em", tight: "-0.025em", normal: "0em", wide: "0.025em", wider: "0.05em", widest: "0.1em" }, lineHeight: { none: "1", tight: "1.25", snug: "1.375", normal: "1.5", relaxed: "1.625", loose: "2", 3: ".75rem", 4: "1rem", 5: "1.25rem", 6: "1.5rem", 7: "1.75rem", 8: "2rem", 9: "2.25rem", 10: "2.5rem" }, listStyleType: { none: "none", disc: "disc", decimal: "decimal" }, margin: ({ theme: e }) => ({ auto: "auto", ...e("spacing") }), maxHeight: ({ theme: e }) => ({ ...e("spacing"), full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), maxWidth: ({ theme: e, breakpoints: t }) => ({ none: "none", 0: "0rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem", full: "100%", min: "min-content", max: "max-content", fit: "fit-content", prose: "65ch", ...t(e("screens")) }), minHeight: { 0: "0px", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }, minWidth: { 0: "0px", full: "100%", min: "min-content", max: "max-content", fit: "fit-content" }, objectPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, opacity: { 0: "0", 5: "0.05", 10: "0.1", 20: "0.2", 25: "0.25", 30: "0.3", 40: "0.4", 50: "0.5", 60: "0.6", 70: "0.7", 75: "0.75", 80: "0.8", 90: "0.9", 95: "0.95", 100: "1" }, order: { first: "-9999", last: "9999", none: "0", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12" }, padding: ({ theme: e }) => e("spacing"), placeholderColor: ({ theme: e }) => e("colors"), placeholderOpacity: ({ theme: e }) => e("opacity"), outlineColor: ({ theme: e }) => e("colors"), outlineOffset: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, outlineWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringColor: ({ theme: e }) => ({ DEFAULT: e("colors.blue.500", "#3b82f6"), ...e("colors") }), ringOffsetColor: ({ theme: e }) => e("colors"), ringOffsetWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringOpacity: ({ theme: e }) => ({ DEFAULT: "0.5", ...e("opacity") }), ringWidth: { DEFAULT: "3px", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, rotate: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg", 45: "45deg", 90: "90deg", 180: "180deg" }, saturate: { 0: "0", 50: ".5", 100: "1", 150: "1.5", 200: "2" }, scale: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5" }, scrollMargin: ({ theme: e }) => ({ ...e("spacing") }), scrollPadding: ({ theme: e }) => e("spacing"), sepia: { 0: "0", DEFAULT: "100%" }, skew: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg" }, space: ({ theme: e }) => ({ ...e("spacing") }), stroke: ({ theme: e }) => e("colors"), strokeWidth: { 0: "0", 1: "1", 2: "2" }, textColor: ({ theme: e }) => e("colors"), textDecorationColor: ({ theme: e }) => e("colors"), textDecorationThickness: { auto: "auto", "from-font": "from-font", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textUnderlineOffset: { auto: "auto", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textIndent: ({ theme: e }) => ({ ...e("spacing") }), textOpacity: ({ theme: e }) => e("opacity"), transformOrigin: { center: "center", top: "top", "top-right": "top right", right: "right", "bottom-right": "bottom right", bottom: "bottom", "bottom-left": "bottom left", left: "left", "top-left": "top left" }, transitionDelay: { 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionDuration: { DEFAULT: "150ms", 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionProperty: { none: "none", all: "all", DEFAULT: "color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter", colors: "color, background-color, border-color, text-decoration-color, fill, stroke", opacity: "opacity", shadow: "box-shadow", transform: "transform" }, transitionTimingFunction: { DEFAULT: "cubic-bezier(0.4, 0, 0.2, 1)", linear: "linear", in: "cubic-bezier(0.4, 0, 1, 1)", out: "cubic-bezier(0, 0, 0.2, 1)", "in-out": "cubic-bezier(0.4, 0, 0.2, 1)" }, translate: ({ theme: e }) => ({ ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), width: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%", screen: "100vw", min: "min-content", max: "max-content", fit: "fit-content" }), willChange: { auto: "auto", scroll: "scroll-position", contents: "contents", transform: "transform" }, zIndex: { auto: "auto", 0: "0", 10: "10", 20: "20", 30: "30", 40: "40", 50: "50" } }, variantOrder: ["first", "last", "odd", "even", "visited", "checked", "empty", "read-only", "group-hover", "group-focus", "focus-within", "hover", "focus", "focus-visible", "active", "disabled"], plugins: [] }; +var ho = q((n1, Pu) => { + Pu.exports = { content: [], presets: [], darkMode: "media", theme: { screens: { sm: "640px", md: "768px", lg: "1024px", xl: "1280px", "2xl": "1536px" }, colors: ({ colors: e }) => ({ inherit: e.inherit, current: e.current, transparent: e.transparent, black: e.black, white: e.white, slate: e.slate, gray: e.gray, zinc: e.zinc, neutral: e.neutral, stone: e.stone, red: e.red, orange: e.orange, amber: e.amber, yellow: e.yellow, lime: e.lime, green: e.green, emerald: e.emerald, teal: e.teal, cyan: e.cyan, sky: e.sky, blue: e.blue, indigo: e.indigo, violet: e.violet, purple: e.purple, fuchsia: e.fuchsia, pink: e.pink, rose: e.rose }), columns: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", "3xs": "16rem", "2xs": "18rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem" }, spacing: { px: "1px", 0: "0px", 0.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", 11: "2.75rem", 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" }, animation: { none: "none", spin: "spin 1s linear infinite", ping: "ping 1s cubic-bezier(0, 0, 0.2, 1) infinite", pulse: "pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite", bounce: "bounce 1s infinite" }, aspectRatio: { auto: "auto", square: "1 / 1", video: "16 / 9" }, backdropBlur: ({ theme: e }) => e("blur"), backdropBrightness: ({ theme: e }) => e("brightness"), backdropContrast: ({ theme: e }) => e("contrast"), backdropGrayscale: ({ theme: e }) => e("grayscale"), backdropHueRotate: ({ theme: e }) => e("hueRotate"), backdropInvert: ({ theme: e }) => e("invert"), backdropOpacity: ({ theme: e }) => e("opacity"), backdropSaturate: ({ theme: e }) => e("saturate"), backdropSepia: ({ theme: e }) => e("sepia"), backgroundColor: ({ theme: e }) => e("colors"), backgroundImage: { none: "none", "gradient-to-t": "linear-gradient(to top, var(--tw-gradient-stops))", "gradient-to-tr": "linear-gradient(to top right, var(--tw-gradient-stops))", "gradient-to-r": "linear-gradient(to right, var(--tw-gradient-stops))", "gradient-to-br": "linear-gradient(to bottom right, var(--tw-gradient-stops))", "gradient-to-b": "linear-gradient(to bottom, var(--tw-gradient-stops))", "gradient-to-bl": "linear-gradient(to bottom left, var(--tw-gradient-stops))", "gradient-to-l": "linear-gradient(to left, var(--tw-gradient-stops))", "gradient-to-tl": "linear-gradient(to top left, var(--tw-gradient-stops))" }, backgroundOpacity: ({ theme: e }) => e("opacity"), backgroundPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, backgroundSize: { auto: "auto", cover: "cover", contain: "contain" }, blur: { 0: "0", none: "0", sm: "4px", DEFAULT: "8px", md: "12px", lg: "16px", xl: "24px", "2xl": "40px", "3xl": "64px" }, brightness: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5", 200: "2" }, borderColor: ({ theme: e }) => ({ ...e("colors"), DEFAULT: e("colors.gray.200", "currentColor") }), borderOpacity: ({ theme: e }) => e("opacity"), borderRadius: { none: "0px", sm: "0.125rem", DEFAULT: "0.25rem", md: "0.375rem", lg: "0.5rem", xl: "0.75rem", "2xl": "1rem", "3xl": "1.5rem", full: "9999px" }, borderSpacing: ({ theme: e }) => ({ ...e("spacing") }), borderWidth: { DEFAULT: "1px", 0: "0px", 2: "2px", 4: "4px", 8: "8px" }, boxShadow: { sm: "0 1px 2px 0 rgb(0 0 0 / 0.05)", DEFAULT: "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)", md: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)", lg: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)", xl: "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)", "2xl": "0 25px 50px -12px rgb(0 0 0 / 0.25)", inner: "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)", none: "none" }, boxShadowColor: ({ theme: e }) => e("colors"), caretColor: ({ theme: e }) => e("colors"), accentColor: ({ theme: e }) => ({ ...e("colors"), auto: "auto" }), contrast: { 0: "0", 50: ".5", 75: ".75", 100: "1", 125: "1.25", 150: "1.5", 200: "2" }, container: {}, content: { none: "none" }, cursor: { auto: "auto", default: "default", pointer: "pointer", wait: "wait", text: "text", move: "move", help: "help", "not-allowed": "not-allowed", none: "none", "context-menu": "context-menu", progress: "progress", cell: "cell", crosshair: "crosshair", "vertical-text": "vertical-text", alias: "alias", copy: "copy", "no-drop": "no-drop", grab: "grab", grabbing: "grabbing", "all-scroll": "all-scroll", "col-resize": "col-resize", "row-resize": "row-resize", "n-resize": "n-resize", "e-resize": "e-resize", "s-resize": "s-resize", "w-resize": "w-resize", "ne-resize": "ne-resize", "nw-resize": "nw-resize", "se-resize": "se-resize", "sw-resize": "sw-resize", "ew-resize": "ew-resize", "ns-resize": "ns-resize", "nesw-resize": "nesw-resize", "nwse-resize": "nwse-resize", "zoom-in": "zoom-in", "zoom-out": "zoom-out" }, divideColor: ({ theme: e }) => e("borderColor"), divideOpacity: ({ theme: e }) => e("borderOpacity"), divideWidth: ({ theme: e }) => e("borderWidth"), dropShadow: { sm: "0 1px 1px rgb(0 0 0 / 0.05)", DEFAULT: ["0 1px 2px rgb(0 0 0 / 0.1)", "0 1px 1px rgb(0 0 0 / 0.06)"], md: ["0 4px 3px rgb(0 0 0 / 0.07)", "0 2px 2px rgb(0 0 0 / 0.06)"], lg: ["0 10px 8px rgb(0 0 0 / 0.04)", "0 4px 3px rgb(0 0 0 / 0.1)"], xl: ["0 20px 13px rgb(0 0 0 / 0.03)", "0 8px 5px rgb(0 0 0 / 0.08)"], "2xl": "0 25px 25px rgb(0 0 0 / 0.15)", none: "0 0 #0000" }, fill: ({ theme: e }) => e("colors"), grayscale: { 0: "0", DEFAULT: "100%" }, hueRotate: { 0: "0deg", 15: "15deg", 30: "30deg", 60: "60deg", 90: "90deg", 180: "180deg" }, invert: { 0: "0", DEFAULT: "100%" }, flex: { 1: "1 1 0%", auto: "1 1 auto", initial: "0 1 auto", none: "none" }, flexBasis: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%" }), flexGrow: { 0: "0", DEFAULT: "1" }, flexShrink: { 0: "0", DEFAULT: "1" }, fontFamily: { sans: ["ui-sans-serif", "system-ui", "-apple-system", "BlinkMacSystemFont", '"Segoe UI"', "Roboto", '"Helvetica Neue"', "Arial", '"Noto Sans"', "sans-serif", '"Apple Color Emoji"', '"Segoe UI Emoji"', '"Segoe UI Symbol"', '"Noto Color Emoji"'], serif: ["ui-serif", "Georgia", "Cambria", '"Times New Roman"', "Times", "serif"], mono: ["ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", '"Liberation Mono"', '"Courier New"', "monospace"] }, fontSize: { xs: ["0.75rem", { lineHeight: "1rem" }], sm: ["0.875rem", { lineHeight: "1.25rem" }], base: ["1rem", { lineHeight: "1.5rem" }], lg: ["1.125rem", { lineHeight: "1.75rem" }], xl: ["1.25rem", { lineHeight: "1.75rem" }], "2xl": ["1.5rem", { lineHeight: "2rem" }], "3xl": ["1.875rem", { lineHeight: "2.25rem" }], "4xl": ["2.25rem", { lineHeight: "2.5rem" }], "5xl": ["3rem", { lineHeight: "1" }], "6xl": ["3.75rem", { lineHeight: "1" }], "7xl": ["4.5rem", { lineHeight: "1" }], "8xl": ["6rem", { lineHeight: "1" }], "9xl": ["8rem", { lineHeight: "1" }] }, fontWeight: { thin: "100", extralight: "200", light: "300", normal: "400", medium: "500", semibold: "600", bold: "700", extrabold: "800", black: "900" }, gap: ({ theme: e }) => e("spacing"), gradientColorStops: ({ theme: e }) => e("colors"), gridAutoColumns: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridAutoRows: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridColumn: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-7": "span 7 / span 7", "span-8": "span 8 / span 8", "span-9": "span 9 / span 9", "span-10": "span 10 / span 10", "span-11": "span 11 / span 11", "span-12": "span 12 / span 12", "span-full": "1 / -1" }, gridColumnEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridColumnStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridRow: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-full": "1 / -1" }, gridRowStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridRowEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridTemplateColumns: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))", 7: "repeat(7, minmax(0, 1fr))", 8: "repeat(8, minmax(0, 1fr))", 9: "repeat(9, minmax(0, 1fr))", 10: "repeat(10, minmax(0, 1fr))", 11: "repeat(11, minmax(0, 1fr))", 12: "repeat(12, minmax(0, 1fr))" }, gridTemplateRows: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))" }, height: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), inset: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), keyframes: { spin: { to: { transform: "rotate(360deg)" } }, ping: { "75%, 100%": { transform: "scale(2)", opacity: "0" } }, pulse: { "50%": { opacity: ".5" } }, bounce: { "0%, 100%": { transform: "translateY(-25%)", animationTimingFunction: "cubic-bezier(0.8,0,1,1)" }, "50%": { transform: "none", animationTimingFunction: "cubic-bezier(0,0,0.2,1)" } } }, letterSpacing: { tighter: "-0.05em", tight: "-0.025em", normal: "0em", wide: "0.025em", wider: "0.05em", widest: "0.1em" }, lineHeight: { none: "1", tight: "1.25", snug: "1.375", normal: "1.5", relaxed: "1.625", loose: "2", 3: ".75rem", 4: "1rem", 5: "1.25rem", 6: "1.5rem", 7: "1.75rem", 8: "2rem", 9: "2.25rem", 10: "2.5rem" }, listStyleType: { none: "none", disc: "disc", decimal: "decimal" }, margin: ({ theme: e }) => ({ auto: "auto", ...e("spacing") }), maxHeight: ({ theme: e }) => ({ ...e("spacing"), full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), maxWidth: ({ theme: e, breakpoints: t }) => ({ none: "none", 0: "0rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem", full: "100%", min: "min-content", max: "max-content", fit: "fit-content", prose: "65ch", ...t(e("screens")) }), minHeight: { 0: "0px", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }, minWidth: { 0: "0px", full: "100%", min: "min-content", max: "max-content", fit: "fit-content" }, objectPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, opacity: { 0: "0", 5: "0.05", 10: "0.1", 20: "0.2", 25: "0.25", 30: "0.3", 40: "0.4", 50: "0.5", 60: "0.6", 70: "0.7", 75: "0.75", 80: "0.8", 90: "0.9", 95: "0.95", 100: "1" }, order: { first: "-9999", last: "9999", none: "0", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12" }, padding: ({ theme: e }) => e("spacing"), placeholderColor: ({ theme: e }) => e("colors"), placeholderOpacity: ({ theme: e }) => e("opacity"), outlineColor: ({ theme: e }) => e("colors"), outlineOffset: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, outlineWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringColor: ({ theme: e }) => ({ DEFAULT: e("colors.blue.500", "#3b82f6"), ...e("colors") }), ringOffsetColor: ({ theme: e }) => e("colors"), ringOffsetWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringOpacity: ({ theme: e }) => ({ DEFAULT: "0.5", ...e("opacity") }), ringWidth: { DEFAULT: "3px", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, rotate: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg", 45: "45deg", 90: "90deg", 180: "180deg" }, saturate: { 0: "0", 50: ".5", 100: "1", 150: "1.5", 200: "2" }, scale: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5" }, scrollMargin: ({ theme: e }) => ({ ...e("spacing") }), scrollPadding: ({ theme: e }) => e("spacing"), sepia: { 0: "0", DEFAULT: "100%" }, skew: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg" }, space: ({ theme: e }) => ({ ...e("spacing") }), stroke: ({ theme: e }) => e("colors"), strokeWidth: { 0: "0", 1: "1", 2: "2" }, textColor: ({ theme: e }) => e("colors"), textDecorationColor: ({ theme: e }) => e("colors"), textDecorationThickness: { auto: "auto", "from-font": "from-font", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textUnderlineOffset: { auto: "auto", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textIndent: ({ theme: e }) => ({ ...e("spacing") }), textOpacity: ({ theme: e }) => e("opacity"), transformOrigin: { center: "center", top: "top", "top-right": "top right", right: "right", "bottom-right": "bottom right", bottom: "bottom", "bottom-left": "bottom left", left: "left", "top-left": "top left" }, transitionDelay: { 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionDuration: { DEFAULT: "150ms", 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionProperty: { none: "none", all: "all", DEFAULT: "color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter", colors: "color, background-color, border-color, text-decoration-color, fill, stroke", opacity: "opacity", shadow: "box-shadow", transform: "transform" }, transitionTimingFunction: { DEFAULT: "cubic-bezier(0.4, 0, 0.2, 1)", linear: "linear", in: "cubic-bezier(0.4, 0, 1, 1)", out: "cubic-bezier(0, 0, 0.2, 1)", "in-out": "cubic-bezier(0.4, 0, 0.2, 1)" }, translate: ({ theme: e }) => ({ ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), width: ({ theme: e }) => ({ auto: "auto", ...e("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%", screen: "100vw", min: "min-content", max: "max-content", fit: "fit-content" }), willChange: { auto: "auto", scroll: "scroll-position", contents: "contents", transform: "transform" }, zIndex: { auto: "auto", 0: "0", 10: "10", 20: "20", 30: "30", 40: "40", 50: "50" } }, variantOrder: ["first", "last", "odd", "even", "visited", "checked", "empty", "read-only", "group-hover", "group-focus", "focus-within", "hover", "focus", "focus-visible", "active", "disabled"], plugins: [] }; }); -var ni = {}; -Wn(ni, { default: () => Xd }); -var Xd; -var ii = tr(() => { - Xd = { info(e, t) { +var oi = {}; +Wn(oi, { default: () => np }); +var np; +var si = tr(() => { + np = { info(e, t) { console.info(...Array.isArray(e) ? [e] : [t, e]); }, warn(e, t) { console.warn(...Array.isArray(e) ? [e] : [t, e]); @@ -14198,18 +14198,18 @@ var ii = tr(() => { console.error(...Array.isArray(e) ? [e] : [t, e]); } }; }); -var Tu = U((ho) => { +var Au = q((mo) => { "use strict"; - Object.defineProperty(ho, "__esModule", { value: true }); - Object.defineProperty(ho, "default", { enumerable: true, get: () => Jd }); - var Qd = Kd((ii(), Fn(ni))); - function Kd(e) { + Object.defineProperty(mo, "__esModule", { value: true }); + Object.defineProperty(mo, "default", { enumerable: true, get: () => sp }); + var ip = op((si(), Fn(oi))); + function op(e) { return e && e.__esModule ? e : { default: e }; } function Yr({ version: e, from: t, to: n }) { - Qd.default.warn(`${t}-color-renamed`, [`As of Tailwind CSS ${e}, \`${t}\` has been renamed to \`${n}\`.`, "Update your configuration file to silence this warning."]); + ip.default.warn(`${t}-color-renamed`, [`As of Tailwind CSS ${e}, \`${t}\` has been renamed to \`${n}\`.`, "Update your configuration file to silence this warning."]); } - var Jd = { inherit: "inherit", current: "currentColor", transparent: "transparent", black: "#000", white: "#fff", slate: { 50: "#f8fafc", 100: "#f1f5f9", 200: "#e2e8f0", 300: "#cbd5e1", 400: "#94a3b8", 500: "#64748b", 600: "#475569", 700: "#334155", 800: "#1e293b", 900: "#0f172a" }, gray: { 50: "#f9fafb", 100: "#f3f4f6", 200: "#e5e7eb", 300: "#d1d5db", 400: "#9ca3af", 500: "#6b7280", 600: "#4b5563", 700: "#374151", 800: "#1f2937", 900: "#111827" }, zinc: { 50: "#fafafa", 100: "#f4f4f5", 200: "#e4e4e7", 300: "#d4d4d8", 400: "#a1a1aa", 500: "#71717a", 600: "#52525b", 700: "#3f3f46", 800: "#27272a", 900: "#18181b" }, neutral: { 50: "#fafafa", 100: "#f5f5f5", 200: "#e5e5e5", 300: "#d4d4d4", 400: "#a3a3a3", 500: "#737373", 600: "#525252", 700: "#404040", 800: "#262626", 900: "#171717" }, stone: { 50: "#fafaf9", 100: "#f5f5f4", 200: "#e7e5e4", 300: "#d6d3d1", 400: "#a8a29e", 500: "#78716c", 600: "#57534e", 700: "#44403c", 800: "#292524", 900: "#1c1917" }, red: { 50: "#fef2f2", 100: "#fee2e2", 200: "#fecaca", 300: "#fca5a5", 400: "#f87171", 500: "#ef4444", 600: "#dc2626", 700: "#b91c1c", 800: "#991b1b", 900: "#7f1d1d" }, orange: { 50: "#fff7ed", 100: "#ffedd5", 200: "#fed7aa", 300: "#fdba74", 400: "#fb923c", 500: "#f97316", 600: "#ea580c", 700: "#c2410c", 800: "#9a3412", 900: "#7c2d12" }, amber: { 50: "#fffbeb", 100: "#fef3c7", 200: "#fde68a", 300: "#fcd34d", 400: "#fbbf24", 500: "#f59e0b", 600: "#d97706", 700: "#b45309", 800: "#92400e", 900: "#78350f" }, yellow: { 50: "#fefce8", 100: "#fef9c3", 200: "#fef08a", 300: "#fde047", 400: "#facc15", 500: "#eab308", 600: "#ca8a04", 700: "#a16207", 800: "#854d0e", 900: "#713f12" }, lime: { 50: "#f7fee7", 100: "#ecfccb", 200: "#d9f99d", 300: "#bef264", 400: "#a3e635", 500: "#84cc16", 600: "#65a30d", 700: "#4d7c0f", 800: "#3f6212", 900: "#365314" }, green: { 50: "#f0fdf4", 100: "#dcfce7", 200: "#bbf7d0", 300: "#86efac", 400: "#4ade80", 500: "#22c55e", 600: "#16a34a", 700: "#15803d", 800: "#166534", 900: "#14532d" }, emerald: { 50: "#ecfdf5", 100: "#d1fae5", 200: "#a7f3d0", 300: "#6ee7b7", 400: "#34d399", 500: "#10b981", 600: "#059669", 700: "#047857", 800: "#065f46", 900: "#064e3b" }, teal: { 50: "#f0fdfa", 100: "#ccfbf1", 200: "#99f6e4", 300: "#5eead4", 400: "#2dd4bf", 500: "#14b8a6", 600: "#0d9488", 700: "#0f766e", 800: "#115e59", 900: "#134e4a" }, cyan: { 50: "#ecfeff", 100: "#cffafe", 200: "#a5f3fc", 300: "#67e8f9", 400: "#22d3ee", 500: "#06b6d4", 600: "#0891b2", 700: "#0e7490", 800: "#155e75", 900: "#164e63" }, sky: { 50: "#f0f9ff", 100: "#e0f2fe", 200: "#bae6fd", 300: "#7dd3fc", 400: "#38bdf8", 500: "#0ea5e9", 600: "#0284c7", 700: "#0369a1", 800: "#075985", 900: "#0c4a6e" }, blue: { 50: "#eff6ff", 100: "#dbeafe", 200: "#bfdbfe", 300: "#93c5fd", 400: "#60a5fa", 500: "#3b82f6", 600: "#2563eb", 700: "#1d4ed8", 800: "#1e40af", 900: "#1e3a8a" }, indigo: { 50: "#eef2ff", 100: "#e0e7ff", 200: "#c7d2fe", 300: "#a5b4fc", 400: "#818cf8", 500: "#6366f1", 600: "#4f46e5", 700: "#4338ca", 800: "#3730a3", 900: "#312e81" }, violet: { 50: "#f5f3ff", 100: "#ede9fe", 200: "#ddd6fe", 300: "#c4b5fd", 400: "#a78bfa", 500: "#8b5cf6", 600: "#7c3aed", 700: "#6d28d9", 800: "#5b21b6", 900: "#4c1d95" }, purple: { 50: "#faf5ff", 100: "#f3e8ff", 200: "#e9d5ff", 300: "#d8b4fe", 400: "#c084fc", 500: "#a855f7", 600: "#9333ea", 700: "#7e22ce", 800: "#6b21a8", 900: "#581c87" }, fuchsia: { 50: "#fdf4ff", 100: "#fae8ff", 200: "#f5d0fe", 300: "#f0abfc", 400: "#e879f9", 500: "#d946ef", 600: "#c026d3", 700: "#a21caf", 800: "#86198f", 900: "#701a75" }, pink: { 50: "#fdf2f8", 100: "#fce7f3", 200: "#fbcfe8", 300: "#f9a8d4", 400: "#f472b6", 500: "#ec4899", 600: "#db2777", 700: "#be185d", 800: "#9d174d", 900: "#831843" }, rose: { 50: "#fff1f2", 100: "#ffe4e6", 200: "#fecdd3", 300: "#fda4af", 400: "#fb7185", 500: "#f43f5e", 600: "#e11d48", 700: "#be123c", 800: "#9f1239", 900: "#881337" }, get lightBlue() { + var sp = { inherit: "inherit", current: "currentColor", transparent: "transparent", black: "#000", white: "#fff", slate: { 50: "#f8fafc", 100: "#f1f5f9", 200: "#e2e8f0", 300: "#cbd5e1", 400: "#94a3b8", 500: "#64748b", 600: "#475569", 700: "#334155", 800: "#1e293b", 900: "#0f172a" }, gray: { 50: "#f9fafb", 100: "#f3f4f6", 200: "#e5e7eb", 300: "#d1d5db", 400: "#9ca3af", 500: "#6b7280", 600: "#4b5563", 700: "#374151", 800: "#1f2937", 900: "#111827" }, zinc: { 50: "#fafafa", 100: "#f4f4f5", 200: "#e4e4e7", 300: "#d4d4d8", 400: "#a1a1aa", 500: "#71717a", 600: "#52525b", 700: "#3f3f46", 800: "#27272a", 900: "#18181b" }, neutral: { 50: "#fafafa", 100: "#f5f5f5", 200: "#e5e5e5", 300: "#d4d4d4", 400: "#a3a3a3", 500: "#737373", 600: "#525252", 700: "#404040", 800: "#262626", 900: "#171717" }, stone: { 50: "#fafaf9", 100: "#f5f5f4", 200: "#e7e5e4", 300: "#d6d3d1", 400: "#a8a29e", 500: "#78716c", 600: "#57534e", 700: "#44403c", 800: "#292524", 900: "#1c1917" }, red: { 50: "#fef2f2", 100: "#fee2e2", 200: "#fecaca", 300: "#fca5a5", 400: "#f87171", 500: "#ef4444", 600: "#dc2626", 700: "#b91c1c", 800: "#991b1b", 900: "#7f1d1d" }, orange: { 50: "#fff7ed", 100: "#ffedd5", 200: "#fed7aa", 300: "#fdba74", 400: "#fb923c", 500: "#f97316", 600: "#ea580c", 700: "#c2410c", 800: "#9a3412", 900: "#7c2d12" }, amber: { 50: "#fffbeb", 100: "#fef3c7", 200: "#fde68a", 300: "#fcd34d", 400: "#fbbf24", 500: "#f59e0b", 600: "#d97706", 700: "#b45309", 800: "#92400e", 900: "#78350f" }, yellow: { 50: "#fefce8", 100: "#fef9c3", 200: "#fef08a", 300: "#fde047", 400: "#facc15", 500: "#eab308", 600: "#ca8a04", 700: "#a16207", 800: "#854d0e", 900: "#713f12" }, lime: { 50: "#f7fee7", 100: "#ecfccb", 200: "#d9f99d", 300: "#bef264", 400: "#a3e635", 500: "#84cc16", 600: "#65a30d", 700: "#4d7c0f", 800: "#3f6212", 900: "#365314" }, green: { 50: "#f0fdf4", 100: "#dcfce7", 200: "#bbf7d0", 300: "#86efac", 400: "#4ade80", 500: "#22c55e", 600: "#16a34a", 700: "#15803d", 800: "#166534", 900: "#14532d" }, emerald: { 50: "#ecfdf5", 100: "#d1fae5", 200: "#a7f3d0", 300: "#6ee7b7", 400: "#34d399", 500: "#10b981", 600: "#059669", 700: "#047857", 800: "#065f46", 900: "#064e3b" }, teal: { 50: "#f0fdfa", 100: "#ccfbf1", 200: "#99f6e4", 300: "#5eead4", 400: "#2dd4bf", 500: "#14b8a6", 600: "#0d9488", 700: "#0f766e", 800: "#115e59", 900: "#134e4a" }, cyan: { 50: "#ecfeff", 100: "#cffafe", 200: "#a5f3fc", 300: "#67e8f9", 400: "#22d3ee", 500: "#06b6d4", 600: "#0891b2", 700: "#0e7490", 800: "#155e75", 900: "#164e63" }, sky: { 50: "#f0f9ff", 100: "#e0f2fe", 200: "#bae6fd", 300: "#7dd3fc", 400: "#38bdf8", 500: "#0ea5e9", 600: "#0284c7", 700: "#0369a1", 800: "#075985", 900: "#0c4a6e" }, blue: { 50: "#eff6ff", 100: "#dbeafe", 200: "#bfdbfe", 300: "#93c5fd", 400: "#60a5fa", 500: "#3b82f6", 600: "#2563eb", 700: "#1d4ed8", 800: "#1e40af", 900: "#1e3a8a" }, indigo: { 50: "#eef2ff", 100: "#e0e7ff", 200: "#c7d2fe", 300: "#a5b4fc", 400: "#818cf8", 500: "#6366f1", 600: "#4f46e5", 700: "#4338ca", 800: "#3730a3", 900: "#312e81" }, violet: { 50: "#f5f3ff", 100: "#ede9fe", 200: "#ddd6fe", 300: "#c4b5fd", 400: "#a78bfa", 500: "#8b5cf6", 600: "#7c3aed", 700: "#6d28d9", 800: "#5b21b6", 900: "#4c1d95" }, purple: { 50: "#faf5ff", 100: "#f3e8ff", 200: "#e9d5ff", 300: "#d8b4fe", 400: "#c084fc", 500: "#a855f7", 600: "#9333ea", 700: "#7e22ce", 800: "#6b21a8", 900: "#581c87" }, fuchsia: { 50: "#fdf4ff", 100: "#fae8ff", 200: "#f5d0fe", 300: "#f0abfc", 400: "#e879f9", 500: "#d946ef", 600: "#c026d3", 700: "#a21caf", 800: "#86198f", 900: "#701a75" }, pink: { 50: "#fdf2f8", 100: "#fce7f3", 200: "#fbcfe8", 300: "#f9a8d4", 400: "#f472b6", 500: "#ec4899", 600: "#db2777", 700: "#be185d", 800: "#9d174d", 900: "#831843" }, rose: { 50: "#fff1f2", 100: "#ffe4e6", 200: "#fecdd3", 300: "#fda4af", 400: "#fb7185", 500: "#f43f5e", 600: "#e11d48", 700: "#be123c", 800: "#9f1239", 900: "#881337" }, get lightBlue() { return Yr({ version: "v2.2", from: "lightBlue", to: "sky" }), this.sky; }, get warmGray() { return Yr({ version: "v3.0", from: "warmGray", to: "stone" }), this.stone; @@ -14221,11 +14221,11 @@ var Tu = U((ho) => { return Yr({ version: "v3.0", from: "blueGray", to: "slate" }), this.slate; } }; }); -var ku = U((mo) => { +var Iu = q((go) => { "use strict"; - Object.defineProperty(mo, "__esModule", { value: true }); - Object.defineProperty(mo, "defaults", { enumerable: true, get: () => Zd }); - function Zd(e, ...t) { + Object.defineProperty(go, "__esModule", { value: true }); + Object.defineProperty(go, "defaults", { enumerable: true, get: () => ap }); + function ap(e, ...t) { for (let i of t) { for (let o in i) { var n; @@ -14239,11 +14239,11 @@ var ku = U((mo) => { return e; } }); -var Eu = U((go) => { +var Ru = q((bo) => { "use strict"; - Object.defineProperty(go, "__esModule", { value: true }); - Object.defineProperty(go, "toPath", { enumerable: true, get: () => ep }); - function ep(e) { + Object.defineProperty(bo, "__esModule", { value: true }); + Object.defineProperty(bo, "toPath", { enumerable: true, get: () => up }); + function up(e) { if (Array.isArray(e)) return e; let t = e.split("[").length - 1, n = e.split("]").length - 1; @@ -14252,25 +14252,25 @@ var Eu = U((go) => { return e.split(/\.(?![^\[]*\])|[\[\]]/g).filter(Boolean); } }); -var Pu = U((bo) => { +var Lu = q((vo) => { "use strict"; - Object.defineProperty(bo, "__esModule", { value: true }); - Object.defineProperty(bo, "normalizeConfig", { enumerable: true, get: () => rp }); - var Xr = tp((ii(), Fn(ni))); - function Ou(e) { + Object.defineProperty(vo, "__esModule", { value: true }); + Object.defineProperty(vo, "normalizeConfig", { enumerable: true, get: () => fp }); + var Xr = lp((si(), Fn(oi))); + function Cu(e) { if (typeof WeakMap != "function") return null; var t = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); - return (Ou = function(r) { + return (Cu = function(r) { return r ? n : t; })(e); } - function tp(e, t) { + function lp(e, t) { if (!t && e && e.__esModule) return e; if (e === null || typeof e != "object" && typeof e != "function") return { default: e }; - var n = Ou(t); + var n = Cu(t); if (n && n.has(e)) return n.get(e); var r = {}, i = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -14281,7 +14281,7 @@ var Pu = U((bo) => { } return r.default = e, n && n.set(e, r), r; } - function rp(e) { + function fp(e) { if ((() => { if (e.purge || !e.content || !Array.isArray(e.content) && !(typeof e.content == "object" && e.content !== null)) return false; @@ -14357,30 +14357,30 @@ var Pu = U((bo) => { return e; } }); -var Au = U((vo) => { +var Mu = q((yo) => { "use strict"; - Object.defineProperty(vo, "__esModule", { value: true }); - Object.defineProperty(vo, "default", { enumerable: true, get: () => np }); - function np(e) { + Object.defineProperty(yo, "__esModule", { value: true }); + Object.defineProperty(yo, "default", { enumerable: true, get: () => cp }); + function cp(e) { if (Object.prototype.toString.call(e) !== "[object Object]") return false; let t = Object.getPrototypeOf(e); return t === null || t === Object.prototype; } }); -var Iu = U((xo) => { +var Nu = q((wo) => { "use strict"; - Object.defineProperty(xo, "__esModule", { value: true }); - Object.defineProperty(xo, "cloneDeep", { enumerable: true, get: () => yo }); - function yo(e) { - return Array.isArray(e) ? e.map((t) => yo(t)) : typeof e == "object" && e !== null ? Object.fromEntries(Object.entries(e).map(([t, n]) => [t, yo(n)])) : e; + Object.defineProperty(wo, "__esModule", { value: true }); + Object.defineProperty(wo, "cloneDeep", { enumerable: true, get: () => xo }); + function xo(e) { + return Array.isArray(e) ? e.map((t) => xo(t)) : typeof e == "object" && e !== null ? Object.fromEntries(Object.entries(e).map(([t, n]) => [t, xo(n)])) : e; } }); -var wo = U((oi, Ru) => { +var So = q((ai, Wu) => { "use strict"; - oi.__esModule = true; - oi.default = sp; - function ip(e) { + ai.__esModule = true; + ai.default = hp; + function dp(e) { for (var t = e.toLowerCase(), n = "", r = false, i = 0; i < 6 && t[i] !== void 0; i++) { var o = t.charCodeAt(i), s = o >= 97 && o <= 102 || o >= 48 && o <= 57; if (r = o === 32, !s) @@ -14392,14 +14392,14 @@ var wo = U((oi, Ru) => { return u2 || a === 0 || a > 1114111 ? ["\uFFFD", n.length + (r ? 1 : 0)] : [String.fromCodePoint(a), n.length + (r ? 1 : 0)]; } } - var op = /\\/; - function sp(e) { - var t = op.test(e); + var pp = /\\/; + function hp(e) { + var t = pp.test(e); if (!t) return e; for (var n = "", r = 0; r < e.length; r++) { if (e[r] === "\\") { - var i = ip(e.slice(r + 1, r + 7)); + var i = dp(e.slice(r + 1, r + 7)); if (i !== void 0) { n += i[0], r += i[1]; continue; @@ -14415,13 +14415,13 @@ var wo = U((oi, Ru) => { } return n; } - Ru.exports = oi.default; + Wu.exports = ai.default; }); -var Lu = U((si, Cu) => { +var Du = q((ui, Fu) => { "use strict"; - si.__esModule = true; - si.default = ap; - function ap(e) { + ui.__esModule = true; + ui.default = mp; + function mp(e) { for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r]; for (; n.length > 0; ) { @@ -14432,13 +14432,13 @@ var Lu = U((si, Cu) => { } return e; } - Cu.exports = si.default; + Fu.exports = ui.default; }); -var Nu = U((ai, Mu) => { +var Bu = q((li, $u) => { "use strict"; - ai.__esModule = true; - ai.default = up; - function up(e) { + li.__esModule = true; + li.default = gp; + function gp(e) { for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r]; for (; n.length > 0; ) { @@ -14446,13 +14446,13 @@ var Nu = U((ai, Mu) => { e[i] || (e[i] = {}), e = e[i]; } } - Mu.exports = ai.default; + $u.exports = li.default; }); -var Fu = U((ui, Wu) => { +var qu = q((fi, Uu) => { "use strict"; - ui.__esModule = true; - ui.default = lp; - function lp(e) { + fi.__esModule = true; + fi.default = bp; + function bp(e) { for (var t = "", n = e.indexOf("/*"), r = 0; n >= 0; ) { t = t + e.slice(r, n); var i = e.indexOf("*/", n + 2); @@ -14462,39 +14462,39 @@ var Fu = U((ui, Wu) => { } return t = t + e.slice(r), t; } - Wu.exports = ui.default; + Uu.exports = fi.default; }); -var Qr = U((Pt) => { +var Qr = q((Pt) => { "use strict"; Pt.__esModule = true; Pt.stripComments = Pt.ensureObject = Pt.getProp = Pt.unesc = void 0; - var fp = li(wo()); - Pt.unesc = fp.default; - var cp = li(Lu()); - Pt.getProp = cp.default; - var dp = li(Nu()); - Pt.ensureObject = dp.default; - var pp = li(Fu()); - Pt.stripComments = pp.default; - function li(e) { + var vp = ci(So()); + Pt.unesc = vp.default; + var yp = ci(Du()); + Pt.getProp = yp.default; + var xp = ci(Bu()); + Pt.ensureObject = xp.default; + var wp = ci(qu()); + Pt.stripComments = wp.default; + function ci(e) { return e && e.__esModule ? e : { default: e }; } }); -var Ft = U((Kr, $u) => { +var Ft = q((Kr, ju) => { "use strict"; Kr.__esModule = true; Kr.default = void 0; - var Du = Qr(); - function Bu(e, t) { + var zu = Qr(); + function Gu(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(e, r.key, r); } } - function hp(e, t, n) { - return t && Bu(e.prototype, t), n && Bu(e, n), e; + function Sp(e, t, n) { + return t && Gu(e.prototype, t), n && Gu(e, n), e; } - var mp = function e(t, n) { + var _p = function e(t, n) { if (typeof t != "object" || t === null) return t; var r = new t.constructor(); @@ -14506,7 +14506,7 @@ var Ft = U((Kr, $u) => { }) : r[i] = e(o, r); } return r; - }, gp = function() { + }, Tp = function() { function e(n) { n === void 0 && (n = {}), Object.assign(this, n), this.spaces = this.spaces || {}, this.spaces.before = this.spaces.before || "", this.spaces.after = this.spaces.after || ""; } @@ -14526,7 +14526,7 @@ var Ft = U((Kr, $u) => { return this.parent.at(this.parent.index(this) - 1); }, t.clone = function(r) { r === void 0 && (r = {}); - var i = mp(this); + var i = _p(this); for (var o in r) i[o] = r[o]; return i; @@ -14547,69 +14547,69 @@ var Ft = U((Kr, $u) => { return String(this.stringifyProperty("value")); }, t.toString = function() { return [this.rawSpaceBefore, this.valueToString(), this.rawSpaceAfter].join(""); - }, hp(e, [{ key: "rawSpaceBefore", get: function() { + }, Sp(e, [{ key: "rawSpaceBefore", get: function() { var r = this.raws && this.raws.spaces && this.raws.spaces.before; return r === void 0 && (r = this.spaces && this.spaces.before), r || ""; }, set: function(r) { - (0, Du.ensureObject)(this, "raws", "spaces"), this.raws.spaces.before = r; + (0, zu.ensureObject)(this, "raws", "spaces"), this.raws.spaces.before = r; } }, { key: "rawSpaceAfter", get: function() { var r = this.raws && this.raws.spaces && this.raws.spaces.after; return r === void 0 && (r = this.spaces.after), r || ""; }, set: function(r) { - (0, Du.ensureObject)(this, "raws", "spaces"), this.raws.spaces.after = r; + (0, zu.ensureObject)(this, "raws", "spaces"), this.raws.spaces.after = r; } }]), e; }(); - Kr.default = gp; - $u.exports = Kr.default; + Kr.default = Tp; + ju.exports = Kr.default; }); -var Be = U((ge) => { +var $e = q((ge) => { "use strict"; ge.__esModule = true; ge.UNIVERSAL = ge.ATTRIBUTE = ge.CLASS = ge.COMBINATOR = ge.COMMENT = ge.ID = ge.NESTING = ge.PSEUDO = ge.ROOT = ge.SELECTOR = ge.STRING = ge.TAG = void 0; - var bp = "tag"; - ge.TAG = bp; - var vp = "string"; - ge.STRING = vp; - var yp = "selector"; - ge.SELECTOR = yp; - var xp = "root"; - ge.ROOT = xp; - var wp = "pseudo"; - ge.PSEUDO = wp; - var Sp = "nesting"; - ge.NESTING = Sp; - var _p = "id"; - ge.ID = _p; - var Tp = "comment"; - ge.COMMENT = Tp; - var kp = "combinator"; - ge.COMBINATOR = kp; - var Ep = "class"; - ge.CLASS = Ep; - var Op = "attribute"; - ge.ATTRIBUTE = Op; - var Pp = "universal"; - ge.UNIVERSAL = Pp; + var Ep = "tag"; + ge.TAG = Ep; + var kp = "string"; + ge.STRING = kp; + var Op = "selector"; + ge.SELECTOR = Op; + var Pp = "root"; + ge.ROOT = Pp; + var Ap = "pseudo"; + ge.PSEUDO = Ap; + var Ip = "nesting"; + ge.NESTING = Ip; + var Rp = "id"; + ge.ID = Rp; + var Cp = "comment"; + ge.COMMENT = Cp; + var Lp = "combinator"; + ge.COMBINATOR = Lp; + var Mp = "class"; + ge.CLASS = Mp; + var Np = "attribute"; + ge.ATTRIBUTE = Np; + var Wp = "universal"; + ge.UNIVERSAL = Wp; }); -var fi = U((Jr, zu) => { +var di = q((Jr, Xu) => { "use strict"; Jr.__esModule = true; Jr.default = void 0; - var Ap = Rp(Ft()), Dt = Ip(Be()); - function Gu() { + var Fp = $p(Ft()), Dt = Dp($e()); + function Yu() { if (typeof WeakMap != "function") return null; var e = /* @__PURE__ */ new WeakMap(); - return Gu = function() { + return Yu = function() { return e; }, e; } - function Ip(e) { + function Dp(e) { if (e && e.__esModule) return e; if (e === null || typeof e != "object" && typeof e != "function") return { default: e }; - var t = Gu(); + var t = Yu(); if (t && t.has(e)) return t.get(e); var n = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -14620,13 +14620,13 @@ var fi = U((Jr, zu) => { } return n.default = e, t && t.set(e, n), n; } - function Rp(e) { + function $p(e) { return e && e.__esModule ? e : { default: e }; } - function Cp(e, t) { + function Bp(e, t) { var n; if (typeof Symbol > "u" || e[Symbol.iterator] == null) { - if (Array.isArray(e) || (n = Lp(e)) || t && e && typeof e.length == "number") { + if (Array.isArray(e) || (n = Up(e)) || t && e && typeof e.length == "number") { n && (e = n); var r = 0; return function() { @@ -14638,42 +14638,42 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho } return n = e[Symbol.iterator](), n.next.bind(n); } - function Lp(e, t) { + function Up(e, t) { if (e) { if (typeof e == "string") - return qu(e, t); + return Vu(e, t); var n = Object.prototype.toString.call(e).slice(8, -1); if (n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set") return Array.from(e); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) - return qu(e, t); + return Vu(e, t); } } - function qu(e, t) { + function Vu(e, t) { (t == null || t > e.length) && (t = e.length); for (var n = 0, r = new Array(t); n < t; n++) r[n] = e[n]; return r; } - function Uu(e, t) { + function Hu(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(e, r.key, r); } } - function Mp(e, t, n) { - return t && Uu(e.prototype, t), n && Uu(e, n), e; + function qp(e, t, n) { + return t && Hu(e.prototype, t), n && Hu(e, n), e; } - function Np(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, So(e, t); + function zp(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, _o(e, t); } - function So(e, t) { - return So = Object.setPrototypeOf || function(r, i) { + function _o(e, t) { + return _o = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, So(e, t); + }, _o(e, t); } - var Wp = function(e) { - Np(t, e); + var Gp = function(e) { + zp(t, e); function t(r) { var i; return i = e.call(this, r) || this, i.nodes || (i.nodes = []), i; @@ -14694,7 +14694,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho o = this.indexes[s], o >= i && (this.indexes[s] = o - 1); return this; }, n.removeAll = function() { - for (var i = Cp(this.nodes), o; !(o = i()).done; ) { + for (var i = Bp(this.nodes), o; !(o = i()).done; ) { var s = o.value; s.parent = void 0; } @@ -14821,47 +14821,47 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho return this.nodes.sort(i); }, n.toString = function() { return this.map(String).join(""); - }, Mp(t, [{ key: "first", get: function() { + }, qp(t, [{ key: "first", get: function() { return this.at(0); } }, { key: "last", get: function() { return this.at(this.length - 1); } }, { key: "length", get: function() { return this.nodes.length; } }]), t; - }(Ap.default); - Jr.default = Wp; - zu.exports = Jr.default; + }(Fp.default); + Jr.default = Gp; + Xu.exports = Jr.default; }); -var To = U((Zr, Vu) => { +var Eo = q((Zr, Ku) => { "use strict"; Zr.__esModule = true; Zr.default = void 0; - var Fp = Bp(fi()), Dp = Be(); - function Bp(e) { + var jp = Hp(di()), Vp = $e(); + function Hp(e) { return e && e.__esModule ? e : { default: e }; } - function ju(e, t) { + function Qu(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(e, r.key, r); } } - function $p(e, t, n) { - return t && ju(e.prototype, t), n && ju(e, n), e; + function Yp(e, t, n) { + return t && Qu(e.prototype, t), n && Qu(e, n), e; } - function qp(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, _o(e, t); + function Xp(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, To(e, t); } - function _o(e, t) { - return _o = Object.setPrototypeOf || function(r, i) { + function To(e, t) { + return To = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, _o(e, t); + }, To(e, t); } - var Up = function(e) { - qp(t, e); + var Qp = function(e) { + Xp(t, e); function t(r) { var i; - return i = e.call(this, r) || this, i.type = Dp.ROOT, i; + return i = e.call(this, r) || this, i.type = Vp.ROOT, i; } var n = t.prototype; return n.toString = function() { @@ -14871,22 +14871,22 @@ var To = U((Zr, Vu) => { return this.trailingComma ? i + "," : i; }, n.error = function(i, o) { return this._error ? this._error(i, o) : new Error(i); - }, $p(t, [{ key: "errorGenerator", set: function(i) { + }, Yp(t, [{ key: "errorGenerator", set: function(i) { this._error = i; } }]), t; - }(Fp.default); - Zr.default = Up; - Vu.exports = Zr.default; + }(jp.default); + Zr.default = Qp; + Ku.exports = Zr.default; }); -var Eo = U((en, Hu) => { +var Oo = q((en, Ju) => { "use strict"; en.__esModule = true; en.default = void 0; - var Gp = jp(fi()), zp = Be(); - function jp(e) { + var Kp = Zp(di()), Jp = $e(); + function Zp(e) { return e && e.__esModule ? e : { default: e }; } - function Vp(e, t) { + function eh(e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, ko(e, t); } function ko(e, t) { @@ -14894,28 +14894,28 @@ var Eo = U((en, Hu) => { return r.__proto__ = i, r; }, ko(e, t); } - var Hp = function(e) { - Vp(t, e); + var th = function(e) { + eh(t, e); function t(n) { var r; - return r = e.call(this, n) || this, r.type = zp.SELECTOR, r; + return r = e.call(this, n) || this, r.type = Jp.SELECTOR, r; } return t; - }(Gp.default); - en.default = Hp; - Hu.exports = en.default; + }(Kp.default); + en.default = th; + Ju.exports = en.default; }); -var ci = U((e1, Yu) => { +var pi = q((d1, Zu) => { "use strict"; - var Yp = {}, Xp = Yp.hasOwnProperty, Qp = function(t, n) { + var rh = {}, nh = rh.hasOwnProperty, ih = function(t, n) { if (!t) return n; var r = {}; for (var i in n) - r[i] = Xp.call(t, i) ? t[i] : n[i]; + r[i] = nh.call(t, i) ? t[i] : n[i]; return r; - }, Kp = /[ -,\.\/:-@\[-\^`\{-~]/, Jp = /[ -,\.\/:-@\[\]\^`\{-~]/, Zp = /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g, Oo = function e(t, n) { - n = Qp(n, e.options), n.quotes != "single" && n.quotes != "double" && (n.quotes = "single"); + }, oh = /[ -,\.\/:-@\[-\^`\{-~]/, sh = /[ -,\.\/:-@\[\]\^`\{-~]/, ah = /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g, Po = function e(t, n) { + n = ih(n, e.options), n.quotes != "single" && n.quotes != "double" && (n.quotes = "single"); for (var r = n.quotes == "double" ? '"' : "'", i = n.isIdentifier, o = t.charAt(0), s = "", a = 0, u2 = t.length; a < u2; ) { var f = t.charAt(a++), l2 = f.charCodeAt(), p = void 0; if (l2 < 32 || l2 > 126) { @@ -14925,148 +14925,148 @@ var ci = U((e1, Yu) => { } p = "\\" + l2.toString(16).toUpperCase() + " "; } else - n.escapeEverything ? Kp.test(f) ? p = "\\" + f : p = "\\" + l2.toString(16).toUpperCase() + " " : /[\t\n\f\r\x0B]/.test(f) ? p = "\\" + l2.toString(16).toUpperCase() + " " : f == "\\" || !i && (f == '"' && r == f || f == "'" && r == f) || i && Jp.test(f) ? p = "\\" + f : p = f; + n.escapeEverything ? oh.test(f) ? p = "\\" + f : p = "\\" + l2.toString(16).toUpperCase() + " " : /[\t\n\f\r\x0B]/.test(f) ? p = "\\" + l2.toString(16).toUpperCase() + " " : f == "\\" || !i && (f == '"' && r == f || f == "'" && r == f) || i && sh.test(f) ? p = "\\" + f : p = f; s += p; } - return i && (/^-[-\d]/.test(s) ? s = "\\-" + s.slice(1) : /\d/.test(o) && (s = "\\3" + o + " " + s.slice(1))), s = s.replace(Zp, function(m2, b, y) { + return i && (/^-[-\d]/.test(s) ? s = "\\-" + s.slice(1) : /\d/.test(o) && (s = "\\3" + o + " " + s.slice(1))), s = s.replace(ah, function(m2, b, y) { return b && b.length % 2 ? m2 : (b || "") + y; }), !i && n.wrap ? r + s + r : s; }; - Oo.options = { escapeEverything: false, isIdentifier: false, quotes: "single", wrap: false }; - Oo.version = "3.0.0"; - Yu.exports = Oo; + Po.options = { escapeEverything: false, isIdentifier: false, quotes: "single", wrap: false }; + Po.version = "3.0.0"; + Zu.exports = Po; }); -var Ao = U((tn, Ku) => { +var Io = q((tn, rl) => { "use strict"; tn.__esModule = true; tn.default = void 0; - var eh = Qu(ci()), th = Qr(), rh = Qu(Ft()), nh = Be(); - function Qu(e) { + var uh = tl(pi()), lh = Qr(), fh = tl(Ft()), ch = $e(); + function tl(e) { return e && e.__esModule ? e : { default: e }; } - function Xu(e, t) { + function el(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(e, r.key, r); } } - function ih(e, t, n) { - return t && Xu(e.prototype, t), n && Xu(e, n), e; + function dh(e, t, n) { + return t && el(e.prototype, t), n && el(e, n), e; } - function oh(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Po(e, t); + function ph(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Ao(e, t); } - function Po(e, t) { - return Po = Object.setPrototypeOf || function(r, i) { + function Ao(e, t) { + return Ao = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Po(e, t); + }, Ao(e, t); } - var sh = function(e) { - oh(t, e); + var hh = function(e) { + ph(t, e); function t(r) { var i; - return i = e.call(this, r) || this, i.type = nh.CLASS, i._constructed = true, i; + return i = e.call(this, r) || this, i.type = ch.CLASS, i._constructed = true, i; } var n = t.prototype; return n.valueToString = function() { return "." + e.prototype.valueToString.call(this); - }, ih(t, [{ key: "value", get: function() { + }, dh(t, [{ key: "value", get: function() { return this._value; }, set: function(i) { if (this._constructed) { - var o = (0, eh.default)(i, { isIdentifier: true }); - o !== i ? ((0, th.ensureObject)(this, "raws"), this.raws.value = o) : this.raws && delete this.raws.value; + var o = (0, uh.default)(i, { isIdentifier: true }); + o !== i ? ((0, lh.ensureObject)(this, "raws"), this.raws.value = o) : this.raws && delete this.raws.value; } this._value = i; } }]), t; - }(rh.default); - tn.default = sh; - Ku.exports = tn.default; + }(fh.default); + tn.default = hh; + rl.exports = tn.default; }); -var Ro = U((rn, Ju) => { +var Co = q((rn, nl) => { "use strict"; rn.__esModule = true; rn.default = void 0; - var ah = lh(Ft()), uh = Be(); - function lh(e) { + var mh = bh(Ft()), gh = $e(); + function bh(e) { return e && e.__esModule ? e : { default: e }; } - function fh(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Io(e, t); + function vh(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Ro(e, t); } - function Io(e, t) { - return Io = Object.setPrototypeOf || function(r, i) { + function Ro(e, t) { + return Ro = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Io(e, t); + }, Ro(e, t); } - var ch = function(e) { - fh(t, e); + var yh = function(e) { + vh(t, e); function t(n) { var r; - return r = e.call(this, n) || this, r.type = uh.COMMENT, r; + return r = e.call(this, n) || this, r.type = gh.COMMENT, r; } return t; - }(ah.default); - rn.default = ch; - Ju.exports = rn.default; + }(mh.default); + rn.default = yh; + nl.exports = rn.default; }); -var Lo = U((nn, Zu) => { +var Mo = q((nn, il) => { "use strict"; nn.__esModule = true; nn.default = void 0; - var dh = hh(Ft()), ph = Be(); - function hh(e) { + var xh = Sh(Ft()), wh = $e(); + function Sh(e) { return e && e.__esModule ? e : { default: e }; } - function mh(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Co(e, t); + function _h(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Lo(e, t); } - function Co(e, t) { - return Co = Object.setPrototypeOf || function(r, i) { + function Lo(e, t) { + return Lo = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Co(e, t); + }, Lo(e, t); } - var gh = function(e) { - mh(t, e); + var Th = function(e) { + _h(t, e); function t(r) { var i; - return i = e.call(this, r) || this, i.type = ph.ID, i; + return i = e.call(this, r) || this, i.type = wh.ID, i; } var n = t.prototype; return n.valueToString = function() { return "#" + e.prototype.valueToString.call(this); }, t; - }(dh.default); - nn.default = gh; - Zu.exports = nn.default; + }(xh.default); + nn.default = Th; + il.exports = nn.default; }); -var di = U((on, rl) => { +var hi = q((on, al) => { "use strict"; on.__esModule = true; on.default = void 0; - var bh = tl(ci()), vh = Qr(), yh = tl(Ft()); - function tl(e) { + var Eh = sl(pi()), kh = Qr(), Oh = sl(Ft()); + function sl(e) { return e && e.__esModule ? e : { default: e }; } - function el(e, t) { + function ol(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(e, r.key, r); } } - function xh(e, t, n) { - return t && el(e.prototype, t), n && el(e, n), e; + function Ph(e, t, n) { + return t && ol(e.prototype, t), n && ol(e, n), e; } - function wh(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Mo(e, t); + function Ah(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, No(e, t); } - function Mo(e, t) { - return Mo = Object.setPrototypeOf || function(r, i) { + function No(e, t) { + return No = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Mo(e, t); + }, No(e, t); } - var Sh = function(e) { - wh(t, e); + var Ih = function(e) { + Ah(t, e); function t() { return e.apply(this, arguments) || this; } @@ -15075,15 +15075,15 @@ var di = U((on, rl) => { return this.namespace ? this.namespaceString + "|" + i : i; }, n.valueToString = function() { return this.qualifiedName(e.prototype.valueToString.call(this)); - }, xh(t, [{ key: "namespace", get: function() { + }, Ph(t, [{ key: "namespace", get: function() { return this._namespace; }, set: function(i) { if (i === true || i === "*" || i === "&") { this._namespace = i, this.raws && delete this.raws.namespace; return; } - var o = (0, bh.default)(i, { isIdentifier: true }); - this._namespace = i, o !== i ? ((0, vh.ensureObject)(this, "raws"), this.raws.namespace = o) : this.raws && delete this.raws.namespace; + var o = (0, Eh.default)(i, { isIdentifier: true }); + this._namespace = i, o !== i ? ((0, kh.ensureObject)(this, "raws"), this.raws.namespace = o) : this.raws && delete this.raws.namespace; } }, { key: "ns", get: function() { return this._namespace; }, set: function(i) { @@ -15095,73 +15095,73 @@ var di = U((on, rl) => { } else return ""; } }]), t; - }(yh.default); - on.default = Sh; - rl.exports = on.default; + }(Oh.default); + on.default = Ih; + al.exports = on.default; }); -var Wo = U((sn, nl) => { +var Fo = q((sn, ul) => { "use strict"; sn.__esModule = true; sn.default = void 0; - var _h = kh(di()), Th = Be(); - function kh(e) { + var Rh = Lh(hi()), Ch = $e(); + function Lh(e) { return e && e.__esModule ? e : { default: e }; } - function Eh(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, No(e, t); + function Mh(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Wo(e, t); } - function No(e, t) { - return No = Object.setPrototypeOf || function(r, i) { + function Wo(e, t) { + return Wo = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, No(e, t); + }, Wo(e, t); } - var Oh = function(e) { - Eh(t, e); + var Nh = function(e) { + Mh(t, e); function t(n) { var r; - return r = e.call(this, n) || this, r.type = Th.TAG, r; + return r = e.call(this, n) || this, r.type = Ch.TAG, r; } return t; - }(_h.default); - sn.default = Oh; - nl.exports = sn.default; + }(Rh.default); + sn.default = Nh; + ul.exports = sn.default; }); -var Do = U((an, il) => { +var $o = q((an, ll) => { "use strict"; an.__esModule = true; an.default = void 0; - var Ph = Ih(Ft()), Ah = Be(); - function Ih(e) { + var Wh = Dh(Ft()), Fh = $e(); + function Dh(e) { return e && e.__esModule ? e : { default: e }; } - function Rh(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Fo(e, t); + function $h(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Do(e, t); } - function Fo(e, t) { - return Fo = Object.setPrototypeOf || function(r, i) { + function Do(e, t) { + return Do = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Fo(e, t); + }, Do(e, t); } - var Ch = function(e) { - Rh(t, e); + var Bh = function(e) { + $h(t, e); function t(n) { var r; - return r = e.call(this, n) || this, r.type = Ah.STRING, r; + return r = e.call(this, n) || this, r.type = Fh.STRING, r; } return t; - }(Ph.default); - an.default = Ch; - il.exports = an.default; + }(Wh.default); + an.default = Bh; + ll.exports = an.default; }); -var $o = U((un, ol) => { +var Uo = q((un, fl2) => { "use strict"; un.__esModule = true; un.default = void 0; - var Lh = Nh(fi()), Mh = Be(); - function Nh(e) { + var Uh = zh(di()), qh = $e(); + function zh(e) { return e && e.__esModule ? e : { default: e }; } - function Wh(e, t) { + function Gh(e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Bo(e, t); } function Bo(e, t) { @@ -15169,47 +15169,47 @@ var $o = U((un, ol) => { return r.__proto__ = i, r; }, Bo(e, t); } - var Fh = function(e) { - Wh(t, e); + var jh = function(e) { + Gh(t, e); function t(r) { var i; - return i = e.call(this, r) || this, i.type = Mh.PSEUDO, i; + return i = e.call(this, r) || this, i.type = qh.PSEUDO, i; } var n = t.prototype; return n.toString = function() { var i = this.length ? "(" + this.map(String).join(",") + ")" : ""; return [this.rawSpaceBefore, this.stringifyProperty("value"), i, this.rawSpaceAfter].join(""); }, t; - }(Lh.default); - un.default = Fh; - ol.exports = un.default; + }(Uh.default); + un.default = jh; + fl2.exports = un.default; }); -var al = U((t1, sl) => { - sl.exports = function(t, n) { +var dl = q((p1, cl) => { + cl.exports = function(t, n) { return function(...r) { return console.warn(n), t(...r); }; }; }); -var Vo = U((cn) => { +var Ho = q((cn) => { "use strict"; cn.__esModule = true; - cn.unescapeValue = jo; + cn.unescapeValue = Vo; cn.default = void 0; - var ln = zo(ci()), Dh = zo(wo()), Bh = zo(di()), $h = Be(), qo; - function zo(e) { + var ln = jo(pi()), Vh = jo(So()), Hh = jo(hi()), Yh = $e(), qo; + function jo(e) { return e && e.__esModule ? e : { default: e }; } - function ul(e, t) { + function pl(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(e, r.key, r); } } - function qh(e, t, n) { - return t && ul(e.prototype, t), n && ul(e, n), e; + function Xh(e, t, n) { + return t && pl(e.prototype, t), n && pl(e, n), e; } - function Uh(e, t) { + function Qh(e, t) { e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Go(e, t); } function Go(e, t) { @@ -15217,26 +15217,26 @@ var Vo = U((cn) => { return r.__proto__ = i, r; }, Go(e, t); } - var fn = al(), Gh = /^('|")([^]*)\1$/, zh = fn(function() { - }, "Assigning an attribute a value containing characters that might need to be escaped is deprecated. Call attribute.setValue() instead."), jh = fn(function() { - }, "Assigning attr.quoted is deprecated and has no effect. Assign to attr.quoteMark instead."), Vh = fn(function() { + var fn = dl(), Kh = /^('|")([^]*)\1$/, Jh = fn(function() { + }, "Assigning an attribute a value containing characters that might need to be escaped is deprecated. Call attribute.setValue() instead."), Zh = fn(function() { + }, "Assigning attr.quoted is deprecated and has no effect. Assign to attr.quoteMark instead."), em = fn(function() { }, "Constructing an Attribute selector with a value without specifying quoteMark is deprecated. Note: The value should be unescaped now."); - function jo(e) { - var t = false, n = null, r = e, i = r.match(Gh); - return i && (n = i[1], r = i[2]), r = (0, Dh.default)(r), r !== e && (t = true), { deprecatedUsage: t, unescaped: r, quoteMark: n }; + function Vo(e) { + var t = false, n = null, r = e, i = r.match(Kh); + return i && (n = i[1], r = i[2]), r = (0, Vh.default)(r), r !== e && (t = true), { deprecatedUsage: t, unescaped: r, quoteMark: n }; } - function Hh(e) { + function tm(e) { if (e.quoteMark !== void 0 || e.value === void 0) return e; - Vh(); - var t = jo(e.value), n = t.quoteMark, r = t.unescaped; + em(); + var t = Vo(e.value), n = t.quoteMark, r = t.unescaped; return e.raws || (e.raws = {}), e.raws.value === void 0 && (e.raws.value = e.value), e.value = r, e.quoteMark = n, e; } - var pi = function(e) { - Uh(t, e); + var mi = function(e) { + Qh(t, e); function t(r) { var i; - return r === void 0 && (r = {}), i = e.call(this, Hh(r)) || this, i.type = $h.ATTRIBUTE, i.raws = i.raws || {}, Object.defineProperty(i.raws, "unquoted", { get: fn(function() { + return r === void 0 && (r = {}), i = e.call(this, tm(r)) || this, i.type = Yh.ATTRIBUTE, i.raws = i.raws || {}, Object.defineProperty(i.raws, "unquoted", { get: fn(function() { return i.value; }, "attr.raws.unquoted is deprecated. Call attr.value instead."), set: fn(function() { return i.value; @@ -15245,7 +15245,7 @@ var Vo = U((cn) => { var n = t.prototype; return n.getQuotedValue = function(i) { i === void 0 && (i = {}); - var o = this._determineQuoteMark(i), s = Uo[o], a = (0, ln.default)(this._value, s); + var o = this._determineQuoteMark(i), s = zo[o], a = (0, ln.default)(this._value, s); return a; }, n._determineQuoteMark = function(i) { return i.smart ? this.smartQuoteMark(i) : this.preferredQuoteMark(i); @@ -15259,7 +15259,7 @@ var Vo = U((cn) => { return t.NO_QUOTE; var f = this.preferredQuoteMark(i); if (f === t.NO_QUOTE) { - var l2 = this.quoteMark || i.quoteMark || t.DOUBLE_QUOTE, p = Uo[l2], h2 = (0, ln.default)(o, p); + var l2 = this.quoteMark || i.quoteMark || t.DOUBLE_QUOTE, p = zo[l2], h2 = (0, ln.default)(o, p); if (h2.length < u2.length) return l2; } @@ -15270,7 +15270,7 @@ var Vo = U((cn) => { var o = i.preferCurrentQuoteMark ? this.quoteMark : i.quoteMark; return o === void 0 && (o = i.preferCurrentQuoteMark ? i.quoteMark : this.quoteMark), o === void 0 && (o = t.DOUBLE_QUOTE), o; }, n._syncRawValue = function() { - var i = (0, ln.default)(this._value, Uo[this.quoteMark]); + var i = (0, ln.default)(this._value, zo[this.quoteMark]); i === this._value ? this.raws && delete this.raws.value : this.raws.value = i; }, n._handleEscapes = function(i, o) { if (this._constructed) { @@ -15281,7 +15281,7 @@ var Vo = U((cn) => { var o = { before: "", after: "" }, s = this.spaces[i] || {}, a = this.raws.spaces && this.raws.spaces[i] || {}; return Object.assign(o, s, a); }, n._stringFor = function(i, o, s) { - o === void 0 && (o = i), s === void 0 && (s = ll); + o === void 0 && (o = i), s === void 0 && (s = hl); var a = this._spacesFor(o); return s(this.stringifyProperty(i), a); }, n.offsetOf = function(i) { @@ -15308,13 +15308,13 @@ var Vo = U((cn) => { }, n.toString = function() { var i = this, o = [this.rawSpaceBefore, "["]; return o.push(this._stringFor("qualifiedAttribute", "attribute")), this.operator && (this.value || this.value === "") && (o.push(this._stringFor("operator")), o.push(this._stringFor("value")), o.push(this._stringFor("insensitiveFlag", "insensitive", function(s, a) { - return s.length > 0 && !i.quoted && a.before.length === 0 && !(i.spaces.value && i.spaces.value.after) && (a.before = " "), ll(s, a); + return s.length > 0 && !i.quoted && a.before.length === 0 && !(i.spaces.value && i.spaces.value.after) && (a.before = " "), hl(s, a); }))), o.push("]"), o.push(this.rawSpaceAfter), o.join(""); - }, qh(t, [{ key: "quoted", get: function() { + }, Xh(t, [{ key: "quoted", get: function() { var i = this.quoteMark; return i === "'" || i === '"'; }, set: function(i) { - jh(); + Zh(); } }, { key: "quoteMark", get: function() { return this._quoteMark; }, set: function(i) { @@ -15331,8 +15331,8 @@ var Vo = U((cn) => { return this._value; }, set: function(i) { if (this._constructed) { - var o = jo(i), s = o.deprecatedUsage, a = o.unescaped, u2 = o.quoteMark; - if (s && zh(), a === this._value && u2 === this._quoteMark) + var o = Vo(i), s = o.deprecatedUsage, a = o.unescaped, u2 = o.quoteMark; + if (s && Jh(), a === this._value && u2 === this._quoteMark) return; this._value = a, this._quoteMark = u2, this._syncRawValue(); } else @@ -15342,195 +15342,195 @@ var Vo = U((cn) => { }, set: function(i) { this._handleEscapes("attribute", i), this._attribute = i; } }]), t; - }(Bh.default); - cn.default = pi; - pi.NO_QUOTE = null; - pi.SINGLE_QUOTE = "'"; - pi.DOUBLE_QUOTE = '"'; - var Uo = (qo = { "'": { quotes: "single", wrap: true }, '"': { quotes: "double", wrap: true } }, qo[null] = { isIdentifier: true }, qo); - function ll(e, t) { + }(Hh.default); + cn.default = mi; + mi.NO_QUOTE = null; + mi.SINGLE_QUOTE = "'"; + mi.DOUBLE_QUOTE = '"'; + var zo = (qo = { "'": { quotes: "single", wrap: true }, '"': { quotes: "double", wrap: true } }, qo[null] = { isIdentifier: true }, qo); + function hl(e, t) { return "" + t.before + e + t.after; } }); -var Yo = U((dn, fl2) => { +var Xo = q((dn, ml) => { "use strict"; dn.__esModule = true; dn.default = void 0; - var Yh = Qh(di()), Xh = Be(); - function Qh(e) { + var rm = im(hi()), nm = $e(); + function im(e) { return e && e.__esModule ? e : { default: e }; } - function Kh(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Ho(e, t); + function om(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Yo(e, t); } - function Ho(e, t) { - return Ho = Object.setPrototypeOf || function(r, i) { + function Yo(e, t) { + return Yo = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Ho(e, t); + }, Yo(e, t); } - var Jh = function(e) { - Kh(t, e); + var sm = function(e) { + om(t, e); function t(n) { var r; - return r = e.call(this, n) || this, r.type = Xh.UNIVERSAL, r.value = "*", r; + return r = e.call(this, n) || this, r.type = nm.UNIVERSAL, r.value = "*", r; } return t; - }(Yh.default); - dn.default = Jh; - fl2.exports = dn.default; + }(rm.default); + dn.default = sm; + ml.exports = dn.default; }); -var Qo = U((pn, cl) => { +var Ko = q((pn, gl) => { "use strict"; pn.__esModule = true; pn.default = void 0; - var Zh = tm(Ft()), em = Be(); - function tm(e) { + var am = lm(Ft()), um = $e(); + function lm(e) { return e && e.__esModule ? e : { default: e }; } - function rm(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Xo(e, t); + function fm(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Qo(e, t); } - function Xo(e, t) { - return Xo = Object.setPrototypeOf || function(r, i) { + function Qo(e, t) { + return Qo = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Xo(e, t); + }, Qo(e, t); } - var nm = function(e) { - rm(t, e); + var cm = function(e) { + fm(t, e); function t(n) { var r; - return r = e.call(this, n) || this, r.type = em.COMBINATOR, r; + return r = e.call(this, n) || this, r.type = um.COMBINATOR, r; } return t; - }(Zh.default); - pn.default = nm; - cl.exports = pn.default; + }(am.default); + pn.default = cm; + gl.exports = pn.default; }); -var Jo = U((hn, dl) => { +var Zo = q((hn, bl) => { "use strict"; hn.__esModule = true; hn.default = void 0; - var im = sm(Ft()), om = Be(); - function sm(e) { + var dm = hm(Ft()), pm = $e(); + function hm(e) { return e && e.__esModule ? e : { default: e }; } - function am(e, t) { - e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Ko(e, t); + function mm(e, t) { + e.prototype = Object.create(t.prototype), e.prototype.constructor = e, Jo(e, t); } - function Ko(e, t) { - return Ko = Object.setPrototypeOf || function(r, i) { + function Jo(e, t) { + return Jo = Object.setPrototypeOf || function(r, i) { return r.__proto__ = i, r; - }, Ko(e, t); + }, Jo(e, t); } - var um = function(e) { - am(t, e); + var gm = function(e) { + mm(t, e); function t(n) { var r; - return r = e.call(this, n) || this, r.type = om.NESTING, r.value = "&", r; + return r = e.call(this, n) || this, r.type = pm.NESTING, r.value = "&", r; } return t; - }(im.default); - hn.default = um; - dl.exports = hn.default; + }(dm.default); + hn.default = gm; + bl.exports = hn.default; }); -var hl = U((hi, pl) => { +var yl = q((gi, vl) => { "use strict"; - hi.__esModule = true; - hi.default = lm; - function lm(e) { + gi.__esModule = true; + gi.default = bm; + function bm(e) { return e.sort(function(t, n) { return t - n; }); } - pl.exports = hi.default; + vl.exports = gi.default; }); -var Zo = U(($) => { +var es = q((B) => { "use strict"; - $.__esModule = true; - $.combinator = $.word = $.comment = $.str = $.tab = $.newline = $.feed = $.cr = $.backslash = $.bang = $.slash = $.doubleQuote = $.singleQuote = $.space = $.greaterThan = $.pipe = $.equals = $.plus = $.caret = $.tilde = $.dollar = $.closeSquare = $.openSquare = $.closeParenthesis = $.openParenthesis = $.semicolon = $.colon = $.comma = $.at = $.asterisk = $.ampersand = void 0; - var fm = 38; - $.ampersand = fm; - var cm = 42; - $.asterisk = cm; - var dm = 64; - $.at = dm; - var pm = 44; - $.comma = pm; - var hm = 58; - $.colon = hm; - var mm = 59; - $.semicolon = mm; - var gm = 40; - $.openParenthesis = gm; - var bm = 41; - $.closeParenthesis = bm; - var vm = 91; - $.openSquare = vm; - var ym = 93; - $.closeSquare = ym; - var xm = 36; - $.dollar = xm; - var wm = 126; - $.tilde = wm; - var Sm = 94; - $.caret = Sm; - var _m = 43; - $.plus = _m; - var Tm = 61; - $.equals = Tm; - var km = 124; - $.pipe = km; - var Em = 62; - $.greaterThan = Em; - var Om = 32; - $.space = Om; - var ml = 39; - $.singleQuote = ml; - var Pm = 34; - $.doubleQuote = Pm; - var Am = 47; - $.slash = Am; - var Im = 33; - $.bang = Im; - var Rm = 92; - $.backslash = Rm; - var Cm = 13; - $.cr = Cm; - var Lm = 12; - $.feed = Lm; - var Mm = 10; - $.newline = Mm; - var Nm = 9; - $.tab = Nm; - var Wm = ml; - $.str = Wm; - var Fm = -1; - $.comment = Fm; - var Dm = -2; - $.word = Dm; - var Bm = -3; - $.combinator = Bm; + B.__esModule = true; + B.combinator = B.word = B.comment = B.str = B.tab = B.newline = B.feed = B.cr = B.backslash = B.bang = B.slash = B.doubleQuote = B.singleQuote = B.space = B.greaterThan = B.pipe = B.equals = B.plus = B.caret = B.tilde = B.dollar = B.closeSquare = B.openSquare = B.closeParenthesis = B.openParenthesis = B.semicolon = B.colon = B.comma = B.at = B.asterisk = B.ampersand = void 0; + var vm = 38; + B.ampersand = vm; + var ym = 42; + B.asterisk = ym; + var xm = 64; + B.at = xm; + var wm = 44; + B.comma = wm; + var Sm = 58; + B.colon = Sm; + var _m = 59; + B.semicolon = _m; + var Tm = 40; + B.openParenthesis = Tm; + var Em = 41; + B.closeParenthesis = Em; + var km = 91; + B.openSquare = km; + var Om = 93; + B.closeSquare = Om; + var Pm = 36; + B.dollar = Pm; + var Am = 126; + B.tilde = Am; + var Im = 94; + B.caret = Im; + var Rm = 43; + B.plus = Rm; + var Cm = 61; + B.equals = Cm; + var Lm = 124; + B.pipe = Lm; + var Mm = 62; + B.greaterThan = Mm; + var Nm = 32; + B.space = Nm; + var xl = 39; + B.singleQuote = xl; + var Wm = 34; + B.doubleQuote = Wm; + var Fm = 47; + B.slash = Fm; + var Dm = 33; + B.bang = Dm; + var $m = 92; + B.backslash = $m; + var Bm = 13; + B.cr = Bm; + var Um = 12; + B.feed = Um; + var qm = 10; + B.newline = qm; + var zm = 9; + B.tab = zm; + var Gm = xl; + B.str = Gm; + var jm = -1; + B.comment = jm; + var Vm = -2; + B.word = Vm; + var Hm = -3; + B.combinator = Hm; }); -var vl = U((mn) => { +var _l = q((mn) => { "use strict"; mn.__esModule = true; - mn.default = Vm; + mn.default = e0; mn.FIELDS = void 0; - var W = $m(Zo()), Sr, he; - function bl() { + var W = Ym(es()), Sr, he; + function Sl() { if (typeof WeakMap != "function") return null; var e = /* @__PURE__ */ new WeakMap(); - return bl = function() { + return Sl = function() { return e; }, e; } - function $m(e) { + function Ym(e) { if (e && e.__esModule) return e; if (e === null || typeof e != "object" && typeof e != "function") return { default: e }; - var t = bl(); + var t = Sl(); if (t && t.has(e)) return t.get(e); var n = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -15541,39 +15541,39 @@ var vl = U((mn) => { } return n.default = e, t && t.set(e, n), n; } - var qm = (Sr = {}, Sr[W.tab] = true, Sr[W.newline] = true, Sr[W.cr] = true, Sr[W.feed] = true, Sr), Um = (he = {}, he[W.space] = true, he[W.tab] = true, he[W.newline] = true, he[W.cr] = true, he[W.feed] = true, he[W.ampersand] = true, he[W.asterisk] = true, he[W.bang] = true, he[W.comma] = true, he[W.colon] = true, he[W.semicolon] = true, he[W.openParenthesis] = true, he[W.closeParenthesis] = true, he[W.openSquare] = true, he[W.closeSquare] = true, he[W.singleQuote] = true, he[W.doubleQuote] = true, he[W.plus] = true, he[W.pipe] = true, he[W.tilde] = true, he[W.greaterThan] = true, he[W.equals] = true, he[W.dollar] = true, he[W.caret] = true, he[W.slash] = true, he), es = {}, gl = "0123456789abcdefABCDEF"; - for (mi = 0; mi < gl.length; mi++) - es[gl.charCodeAt(mi)] = true; - var mi; - function Gm(e, t) { + var Xm = (Sr = {}, Sr[W.tab] = true, Sr[W.newline] = true, Sr[W.cr] = true, Sr[W.feed] = true, Sr), Qm = (he = {}, he[W.space] = true, he[W.tab] = true, he[W.newline] = true, he[W.cr] = true, he[W.feed] = true, he[W.ampersand] = true, he[W.asterisk] = true, he[W.bang] = true, he[W.comma] = true, he[W.colon] = true, he[W.semicolon] = true, he[W.openParenthesis] = true, he[W.closeParenthesis] = true, he[W.openSquare] = true, he[W.closeSquare] = true, he[W.singleQuote] = true, he[W.doubleQuote] = true, he[W.plus] = true, he[W.pipe] = true, he[W.tilde] = true, he[W.greaterThan] = true, he[W.equals] = true, he[W.dollar] = true, he[W.caret] = true, he[W.slash] = true, he), ts = {}, wl = "0123456789abcdefABCDEF"; + for (bi = 0; bi < wl.length; bi++) + ts[wl.charCodeAt(bi)] = true; + var bi; + function Km(e, t) { var n = t, r; do { - if (r = e.charCodeAt(n), Um[r]) + if (r = e.charCodeAt(n), Qm[r]) return n - 1; - r === W.backslash ? n = zm(e, n) + 1 : n++; + r === W.backslash ? n = Jm(e, n) + 1 : n++; } while (n < e.length); return n - 1; } - function zm(e, t) { + function Jm(e, t) { var n = t, r = e.charCodeAt(n + 1); - if (!qm[r]) - if (es[r]) { + if (!Xm[r]) + if (ts[r]) { var i = 0; do n++, i++, r = e.charCodeAt(n + 1); - while (es[r] && i < 6); + while (ts[r] && i < 6); i < 6 && r === W.space && n++; } else n++; return n; } - var jm = { TYPE: 0, START_LINE: 1, START_COL: 2, END_LINE: 3, END_COL: 4, START_POS: 5, END_POS: 6 }; - mn.FIELDS = jm; - function Vm(e) { - var t = [], n = e.css.valueOf(), r = n, i = r.length, o = -1, s = 1, a = 0, u2 = 0, f, l2, p, h2, m2, b, y, T, k, P2, w2, S2, O; - function I(F, q) { + var Zm = { TYPE: 0, START_LINE: 1, START_COL: 2, END_LINE: 3, END_COL: 4, START_POS: 5, END_POS: 6 }; + mn.FIELDS = Zm; + function e0(e) { + var t = [], n = e.css.valueOf(), r = n, i = r.length, o = -1, s = 1, a = 0, u2 = 0, f, l2, p, h2, m2, b, y, T, E, P2, w2, S2, O; + function I(F, U) { if (e.safe) - n += q, k = n.length - 1; + n += U, E = n.length - 1; else throw e.error("Unclosed " + F, s, a - o, a); } @@ -15584,21 +15584,21 @@ var vl = U((mn) => { case W.newline: case W.cr: case W.feed: - k = a; + E = a; do - k += 1, f = n.charCodeAt(k), f === W.newline && (o = k, s += 1); + E += 1, f = n.charCodeAt(E), f === W.newline && (o = E, s += 1); while (f === W.space || f === W.newline || f === W.tab || f === W.cr || f === W.feed); - O = W.space, h2 = s, p = k - o - 1, u2 = k; + O = W.space, h2 = s, p = E - o - 1, u2 = E; break; case W.plus: case W.greaterThan: case W.tilde: case W.pipe: - k = a; + E = a; do - k += 1, f = n.charCodeAt(k); + E += 1, f = n.charCodeAt(E); while (f === W.plus || f === W.greaterThan || f === W.tilde || f === W.pipe); - O = W.combinator, h2 = s, p = a - o, u2 = k; + O = W.combinator, h2 = s, p = a - o, u2 = E; break; case W.asterisk: case W.ampersand: @@ -15613,20 +15613,20 @@ var vl = U((mn) => { case W.semicolon: case W.openParenthesis: case W.closeParenthesis: - k = a, O = f, h2 = s, p = a - o, u2 = k + 1; + E = a, O = f, h2 = s, p = a - o, u2 = E + 1; break; case W.singleQuote: case W.doubleQuote: - S2 = f === W.singleQuote ? "'" : '"', k = a; + S2 = f === W.singleQuote ? "'" : '"', E = a; do - for (m2 = false, k = n.indexOf(S2, k + 1), k === -1 && I("quote", S2), b = k; n.charCodeAt(b - 1) === W.backslash; ) + for (m2 = false, E = n.indexOf(S2, E + 1), E === -1 && I("quote", S2), b = E; n.charCodeAt(b - 1) === W.backslash; ) b -= 1, m2 = !m2; while (m2); - O = W.str, h2 = s, p = a - o, u2 = k + 1; + O = W.str, h2 = s, p = a - o, u2 = E + 1; break; default: - f === W.slash && n.charCodeAt(a + 1) === W.asterisk ? (k = n.indexOf("*/", a + 2) + 1, k === 0 && I("comment", "*/"), l2 = n.slice(a, k + 1), T = l2.split(` -`), y = T.length - 1, y > 0 ? (P2 = s + y, w2 = k - T[y].length) : (P2 = s, w2 = o), O = W.comment, s = P2, h2 = P2, p = k - w2) : f === W.slash ? (k = a, O = f, h2 = s, p = a - o, u2 = k + 1) : (k = Gm(n, a), O = W.word, h2 = s, p = k - o), u2 = k + 1; + f === W.slash && n.charCodeAt(a + 1) === W.asterisk ? (E = n.indexOf("*/", a + 2) + 1, E === 0 && I("comment", "*/"), l2 = n.slice(a, E + 1), T = l2.split(` +`), y = T.length - 1, y > 0 ? (P2 = s + y, w2 = E - T[y].length) : (P2 = s, w2 = o), O = W.comment, s = P2, h2 = P2, p = E - w2) : f === W.slash ? (E = a, O = f, h2 = s, p = a - o, u2 = E + 1) : (E = Km(n, a), O = W.word, h2 = s, p = E - o), u2 = E + 1; break; } t.push([O, s, a - o, h2, p, a, u2]), w2 && (o = w2, w2 = null), a = u2; @@ -15634,25 +15634,25 @@ var vl = U((mn) => { return t; } }); -var El = U((gn, kl) => { +var Rl = q((gn, Il) => { "use strict"; gn.__esModule = true; gn.default = void 0; - var Hm = ut(To()), ts = ut(Eo()), Ym = ut(Ao()), yl = ut(Ro()), Xm = ut(Lo()), Qm = ut(Wo()), rs = ut(Do()), Km = ut($o()), xl = gi(Vo()), Jm = ut(Yo()), ns = ut(Qo()), Zm = ut(Jo()), e0 = ut(hl()), C = gi(vl()), B = gi(Zo()), t0 = gi(Be()), Se = Qr(), ir, is; - function Tl() { + var t0 = ut(Eo()), rs = ut(Oo()), r0 = ut(Io()), Tl = ut(Co()), n0 = ut(Mo()), i0 = ut(Fo()), ns = ut($o()), o0 = ut(Uo()), El = vi(Ho()), s0 = ut(Xo()), is = ut(Ko()), a0 = ut(Zo()), u0 = ut(yl()), C = vi(_l()), $ = vi(es()), l0 = vi($e()), Se = Qr(), ir, os; + function Al() { if (typeof WeakMap != "function") return null; var e = /* @__PURE__ */ new WeakMap(); - return Tl = function() { + return Al = function() { return e; }, e; } - function gi(e) { + function vi(e) { if (e && e.__esModule) return e; if (e === null || typeof e != "object" && typeof e != "function") return { default: e }; - var t = Tl(); + var t = Al(); if (t && t.has(e)) return t.get(e); var n = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -15666,20 +15666,20 @@ var El = U((gn, kl) => { function ut(e) { return e && e.__esModule ? e : { default: e }; } - function wl(e, t) { + function kl(e, t) { for (var n = 0; n < t.length; n++) { var r = t[n]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(e, r.key, r); } } - function r0(e, t, n) { - return t && wl(e.prototype, t), n && wl(e, n), e; + function f0(e, t, n) { + return t && kl(e.prototype, t), n && kl(e, n), e; } - var as = (ir = {}, ir[B.space] = true, ir[B.cr] = true, ir[B.feed] = true, ir[B.newline] = true, ir[B.tab] = true, ir), n0 = Object.assign({}, as, (is = {}, is[B.comment] = true, is)); - function Sl(e) { + var us = (ir = {}, ir[$.space] = true, ir[$.cr] = true, ir[$.feed] = true, ir[$.newline] = true, ir[$.tab] = true, ir), c0 = Object.assign({}, us, (os = {}, os[$.comment] = true, os)); + function Ol(e) { return { line: e[C.FIELDS.START_LINE], column: e[C.FIELDS.START_COL] }; } - function _l(e) { + function Pl(e) { return { line: e[C.FIELDS.END_LINE], column: e[C.FIELDS.END_COL] }; } function or(e, t, n, r) { @@ -15688,7 +15688,7 @@ var El = U((gn, kl) => { function _r(e) { return or(e[C.FIELDS.START_LINE], e[C.FIELDS.START_COL], e[C.FIELDS.END_LINE], e[C.FIELDS.END_COL]); } - function os(e, t) { + function ss(e, t) { if (e) return or(e[C.FIELDS.START_LINE], e[C.FIELDS.START_COL], t[C.FIELDS.END_LINE], t[C.FIELDS.END_COL]); } @@ -15697,23 +15697,23 @@ var El = U((gn, kl) => { if (typeof n == "string") return n.indexOf("\\") !== -1 && ((0, Se.ensureObject)(e, "raws"), e[t] = (0, Se.unesc)(n), e.raws[t] === void 0 && (e.raws[t] = n)), e; } - function ss(e, t) { + function as(e, t) { for (var n = -1, r = []; (n = e.indexOf(t, n + 1)) !== -1; ) r.push(n); return r; } - function i0() { + function d0() { var e = Array.prototype.concat.apply([], arguments); return e.filter(function(t, n) { return n === e.indexOf(t); }); } - var o0 = function() { + var p0 = function() { function e(n, r) { r === void 0 && (r = {}), this.rule = n, this.options = Object.assign({ lossy: false, safe: false }, r), this.position = 0, this.css = typeof this.rule == "string" ? this.rule : this.rule.selector, this.tokens = (0, C.default)({ css: this.css, error: this._errorGenerator(), safe: this.options.safe }); - var i = os(this.tokens[0], this.tokens[this.tokens.length - 1]); - this.root = new Hm.default({ source: i }), this.root.errorGenerator = this._errorGenerator(); - var o = new ts.default({ source: { start: { line: 1, column: 1 } } }); + var i = ss(this.tokens[0], this.tokens[this.tokens.length - 1]); + this.root = new t0.default({ source: i }), this.root.errorGenerator = this._errorGenerator(); + var o = new rs.default({ source: { start: { line: 1, column: 1 } } }); this.root.append(o), this.current = o, this.loop(); } var t = e.prototype; @@ -15724,17 +15724,17 @@ var El = U((gn, kl) => { }; }, t.attribute = function() { var r = [], i = this.currToken; - for (this.position++; this.position < this.tokens.length && this.currToken[C.FIELDS.TYPE] !== B.closeSquare; ) + for (this.position++; this.position < this.tokens.length && this.currToken[C.FIELDS.TYPE] !== $.closeSquare; ) r.push(this.currToken), this.position++; - if (this.currToken[C.FIELDS.TYPE] !== B.closeSquare) + if (this.currToken[C.FIELDS.TYPE] !== $.closeSquare) return this.expected("closing square bracket", this.currToken[C.FIELDS.START_POS]); var o = r.length, s = { source: or(i[1], i[2], this.currToken[3], this.currToken[4]), sourceIndex: i[C.FIELDS.START_POS] }; - if (o === 1 && !~[B.word].indexOf(r[0][C.FIELDS.TYPE])) + if (o === 1 && !~[$.word].indexOf(r[0][C.FIELDS.TYPE])) return this.expected("attribute", r[0][C.FIELDS.START_POS]); for (var a = 0, u2 = "", f = "", l2 = null, p = false; a < o; ) { var h2 = r[a], m2 = this.content(h2), b = r[a + 1]; switch (h2[C.FIELDS.TYPE]) { - case B.space: + case $.space: if (p = true, this.options.lossy) break; if (l2) { @@ -15746,34 +15746,34 @@ var El = U((gn, kl) => { } else u2 = u2 + m2, f = f + m2; break; - case B.asterisk: - if (b[C.FIELDS.TYPE] === B.equals) + case $.asterisk: + if (b[C.FIELDS.TYPE] === $.equals) s.operator = m2, l2 = "operator"; else if ((!s.namespace || l2 === "namespace" && !p) && b) { u2 && ((0, Se.ensureObject)(s, "spaces", "attribute"), s.spaces.attribute.before = u2, u2 = ""), f && ((0, Se.ensureObject)(s, "raws", "spaces", "attribute"), s.raws.spaces.attribute.before = u2, f = ""), s.namespace = (s.namespace || "") + m2; - var k = (0, Se.getProp)(s, "raws", "namespace") || null; - k && (s.raws.namespace += m2), l2 = "namespace"; + var E = (0, Se.getProp)(s, "raws", "namespace") || null; + E && (s.raws.namespace += m2), l2 = "namespace"; } p = false; break; - case B.dollar: + case $.dollar: if (l2 === "value") { var P2 = (0, Se.getProp)(s, "raws", "value"); s.value += "$", P2 && (s.raws.value = P2 + "$"); break; } - case B.caret: - b[C.FIELDS.TYPE] === B.equals && (s.operator = m2, l2 = "operator"), p = false; + case $.caret: + b[C.FIELDS.TYPE] === $.equals && (s.operator = m2, l2 = "operator"), p = false; break; - case B.combinator: - if (m2 === "~" && b[C.FIELDS.TYPE] === B.equals && (s.operator = m2, l2 = "operator"), m2 !== "|") { + case $.combinator: + if (m2 === "~" && b[C.FIELDS.TYPE] === $.equals && (s.operator = m2, l2 = "operator"), m2 !== "|") { p = false; break; } - b[C.FIELDS.TYPE] === B.equals ? (s.operator = m2, l2 = "operator") : !s.namespace && !s.attribute && (s.namespace = true), p = false; + b[C.FIELDS.TYPE] === $.equals ? (s.operator = m2, l2 = "operator") : !s.namespace && !s.attribute && (s.namespace = true), p = false; break; - case B.word: - if (b && this.content(b) === "|" && r[a + 2] && r[a + 2][C.FIELDS.TYPE] !== B.equals && !s.operator && !s.namespace) + case $.word: + if (b && this.content(b) === "|" && r[a + 2] && r[a + 2][C.FIELDS.TYPE] !== $.equals && !s.operator && !s.namespace) s.namespace = m2, l2 = "namespace"; else if (!s.attribute || l2 === "attribute" && !p) { u2 && ((0, Se.ensureObject)(s, "spaces", "attribute"), s.spaces.attribute.before = u2, u2 = ""), f && ((0, Se.ensureObject)(s, "raws", "spaces", "attribute"), s.raws.spaces.attribute.before = f, f = ""), s.attribute = (s.attribute || "") + m2; @@ -15788,22 +15788,22 @@ var El = U((gn, kl) => { } p = false; break; - case B.str: + case $.str: if (!s.attribute || !s.operator) return this.error("Expected an attribute followed by an operator preceding the string.", { index: h2[C.FIELDS.START_POS] }); - var q = (0, xl.unescapeValue)(m2), V = q.unescaped, de = q.quoteMark; + var U = (0, El.unescapeValue)(m2), V = U.unescaped, de = U.quoteMark; s.value = V, s.quoteMark = de, l2 = "value", (0, Se.ensureObject)(s, "raws"), s.raws.value = m2, p = false; break; - case B.equals: + case $.equals: if (!s.attribute) return this.expected("attribute", h2[C.FIELDS.START_POS], m2); if (s.value) return this.error('Unexpected "=" found; an operator was already defined.', { index: h2[C.FIELDS.START_POS] }); s.operator = s.operator ? s.operator + m2 : m2, l2 = "operator", p = false; break; - case B.comment: + case $.comment: if (l2) - if (p || b && b[C.FIELDS.TYPE] === B.space || l2 === "insensitive") { + if (p || b && b[C.FIELDS.TYPE] === $.space || l2 === "insensitive") { var Ae = (0, Se.getProp)(s, "spaces", l2, "after") || "", me = (0, Se.getProp)(s, "raws", "spaces", l2, "after") || Ae; (0, Se.ensureObject)(s, "raws", "spaces", l2), s.raws.spaces[l2].after = me + m2; } else { @@ -15818,16 +15818,16 @@ var El = U((gn, kl) => { } a++; } - Tr(s, "attribute"), Tr(s, "namespace"), this.newNode(new xl.default(s)), this.position++; + Tr(s, "attribute"), Tr(s, "namespace"), this.newNode(new El.default(s)), this.position++; }, t.parseWhitespaceEquivalentTokens = function(r) { r < 0 && (r = this.tokens.length); var i = this.position, o = [], s = "", a = void 0; do - if (as[this.currToken[C.FIELDS.TYPE]]) + if (us[this.currToken[C.FIELDS.TYPE]]) this.options.lossy || (s += this.content()); - else if (this.currToken[C.FIELDS.TYPE] === B.comment) { + else if (this.currToken[C.FIELDS.TYPE] === $.comment) { var u2 = {}; - s && (u2.before = s, s = ""), a = new yl.default({ value: this.content(), source: _r(this.currToken), sourceIndex: this.currToken[C.FIELDS.START_POS], spaces: u2 }), o.push(a); + s && (u2.before = s, s = ""), a = new Tl.default({ value: this.content(), source: _r(this.currToken), sourceIndex: this.currToken[C.FIELDS.START_POS], spaces: u2 }), o.push(a); } while (++this.position < r); if (s) { @@ -15835,7 +15835,7 @@ var El = U((gn, kl) => { a.spaces.after = s; else if (!this.options.lossy) { var f = this.tokens[i], l2 = this.tokens[this.position - 1]; - o.push(new rs.default({ value: "", source: or(f[C.FIELDS.START_LINE], f[C.FIELDS.START_COL], l2[C.FIELDS.END_LINE], l2[C.FIELDS.END_COL]), sourceIndex: f[C.FIELDS.START_POS], spaces: { before: s, after: "" } })); + o.push(new ns.default({ value: "", source: or(f[C.FIELDS.START_LINE], f[C.FIELDS.START_COL], l2[C.FIELDS.END_LINE], l2[C.FIELDS.END_COL]), sourceIndex: f[C.FIELDS.START_POS], spaces: { before: s, after: "" } })); } } return o; @@ -15850,12 +15850,12 @@ var El = U((gn, kl) => { var u2 = { space: s, rawSpace: a }; return u2; }, t.isNamedCombinator = function(r) { - return r === void 0 && (r = this.position), this.tokens[r + 0] && this.tokens[r + 0][C.FIELDS.TYPE] === B.slash && this.tokens[r + 1] && this.tokens[r + 1][C.FIELDS.TYPE] === B.word && this.tokens[r + 2] && this.tokens[r + 2][C.FIELDS.TYPE] === B.slash; + return r === void 0 && (r = this.position), this.tokens[r + 0] && this.tokens[r + 0][C.FIELDS.TYPE] === $.slash && this.tokens[r + 1] && this.tokens[r + 1][C.FIELDS.TYPE] === $.word && this.tokens[r + 2] && this.tokens[r + 2][C.FIELDS.TYPE] === $.slash; }, t.namedCombinator = function() { if (this.isNamedCombinator()) { var r = this.content(this.tokens[this.position + 1]), i = (0, Se.unesc)(r).toLowerCase(), o = {}; i !== r && (o.value = "/" + r + "/"); - var s = new ns.default({ value: "/" + i + "/", source: or(this.currToken[C.FIELDS.START_LINE], this.currToken[C.FIELDS.START_COL], this.tokens[this.position + 2][C.FIELDS.END_LINE], this.tokens[this.position + 2][C.FIELDS.END_COL]), sourceIndex: this.currToken[C.FIELDS.START_POS], raws: o }); + var s = new is.default({ value: "/" + i + "/", source: or(this.currToken[C.FIELDS.START_LINE], this.currToken[C.FIELDS.START_COL], this.tokens[this.position + 2][C.FIELDS.END_LINE], this.tokens[this.position + 2][C.FIELDS.END_COL]), sourceIndex: this.currToken[C.FIELDS.START_POS], raws: o }); return this.position = this.position + 3, s; } else this.unexpected(); @@ -15864,7 +15864,7 @@ var El = U((gn, kl) => { if (this.content() === "|") return this.namespace(); var i = this.locateNextMeaningfulToken(this.position); - if (i < 0 || this.tokens[i][C.FIELDS.TYPE] === B.comma) { + if (i < 0 || this.tokens[i][C.FIELDS.TYPE] === $.comma) { var o = this.parseWhitespaceEquivalentTokens(i); if (o.length > 0) { var s = this.current.last; @@ -15881,29 +15881,29 @@ var El = U((gn, kl) => { var l2 = this.currToken, p = void 0; i > this.position && (p = this.parseWhitespaceEquivalentTokens(i)); var h2; - if (this.isNamedCombinator() ? h2 = this.namedCombinator() : this.currToken[C.FIELDS.TYPE] === B.combinator ? (h2 = new ns.default({ value: this.content(), source: _r(this.currToken), sourceIndex: this.currToken[C.FIELDS.START_POS] }), this.position++) : as[this.currToken[C.FIELDS.TYPE]] || p || this.unexpected(), h2) { + if (this.isNamedCombinator() ? h2 = this.namedCombinator() : this.currToken[C.FIELDS.TYPE] === $.combinator ? (h2 = new is.default({ value: this.content(), source: _r(this.currToken), sourceIndex: this.currToken[C.FIELDS.START_POS] }), this.position++) : us[this.currToken[C.FIELDS.TYPE]] || p || this.unexpected(), h2) { if (p) { var m2 = this.convertWhitespaceNodesToSpace(p), b = m2.space, y = m2.rawSpace; h2.spaces.before = b, h2.rawSpaceBefore = y; } } else { - var T = this.convertWhitespaceNodesToSpace(p, true), k = T.space, P2 = T.rawSpace; - P2 || (P2 = k); + var T = this.convertWhitespaceNodesToSpace(p, true), E = T.space, P2 = T.rawSpace; + P2 || (P2 = E); var w2 = {}, S2 = { spaces: {} }; - k.endsWith(" ") && P2.endsWith(" ") ? (w2.before = k.slice(0, k.length - 1), S2.spaces.before = P2.slice(0, P2.length - 1)) : k.startsWith(" ") && P2.startsWith(" ") ? (w2.after = k.slice(1), S2.spaces.after = P2.slice(1)) : S2.value = P2, h2 = new ns.default({ value: " ", source: os(l2, this.tokens[this.position - 1]), sourceIndex: l2[C.FIELDS.START_POS], spaces: w2, raws: S2 }); + E.endsWith(" ") && P2.endsWith(" ") ? (w2.before = E.slice(0, E.length - 1), S2.spaces.before = P2.slice(0, P2.length - 1)) : E.startsWith(" ") && P2.startsWith(" ") ? (w2.after = E.slice(1), S2.spaces.after = P2.slice(1)) : S2.value = P2, h2 = new is.default({ value: " ", source: ss(l2, this.tokens[this.position - 1]), sourceIndex: l2[C.FIELDS.START_POS], spaces: w2, raws: S2 }); } - return this.currToken && this.currToken[C.FIELDS.TYPE] === B.space && (h2.spaces.after = this.optionalSpace(this.content()), this.position++), this.newNode(h2); + return this.currToken && this.currToken[C.FIELDS.TYPE] === $.space && (h2.spaces.after = this.optionalSpace(this.content()), this.position++), this.newNode(h2); }, t.comma = function() { if (this.position === this.tokens.length - 1) { this.root.trailingComma = true, this.position++; return; } this.current._inferEndPosition(); - var r = new ts.default({ source: { start: Sl(this.tokens[this.position + 1]) } }); + var r = new rs.default({ source: { start: Ol(this.tokens[this.position + 1]) } }); this.current.parent.append(r), this.current = r, this.position++; }, t.comment = function() { var r = this.currToken; - this.newNode(new yl.default({ value: this.content(), source: _r(r), sourceIndex: r[C.FIELDS.START_POS] })), this.position++; + this.newNode(new Tl.default({ value: this.content(), source: _r(r), sourceIndex: r[C.FIELDS.START_POS] })), this.position++; }, t.error = function(r, i) { throw this.root.error(r, i); }, t.missingBackslash = function() { @@ -15916,9 +15916,9 @@ var El = U((gn, kl) => { return this.error("Unexpected '" + this.content() + "'. Escaping special characters with \\ may help.", this.currToken[C.FIELDS.START_POS]); }, t.namespace = function() { var r = this.prevToken && this.content(this.prevToken) || true; - if (this.nextToken[C.FIELDS.TYPE] === B.word) + if (this.nextToken[C.FIELDS.TYPE] === $.word) return this.position++, this.word(r); - if (this.nextToken[C.FIELDS.TYPE] === B.asterisk) + if (this.nextToken[C.FIELDS.TYPE] === $.asterisk) return this.position++, this.universal(r); }, t.nesting = function() { if (this.nextToken) { @@ -15929,80 +15929,80 @@ var El = U((gn, kl) => { } } var i = this.currToken; - this.newNode(new Zm.default({ value: this.content(), source: _r(i), sourceIndex: i[C.FIELDS.START_POS] })), this.position++; + this.newNode(new a0.default({ value: this.content(), source: _r(i), sourceIndex: i[C.FIELDS.START_POS] })), this.position++; }, t.parentheses = function() { var r = this.current.last, i = 1; - if (this.position++, r && r.type === t0.PSEUDO) { - var o = new ts.default({ source: { start: Sl(this.tokens[this.position - 1]) } }), s = this.current; + if (this.position++, r && r.type === l0.PSEUDO) { + var o = new rs.default({ source: { start: Ol(this.tokens[this.position - 1]) } }), s = this.current; for (r.append(o), this.current = o; this.position < this.tokens.length && i; ) - this.currToken[C.FIELDS.TYPE] === B.openParenthesis && i++, this.currToken[C.FIELDS.TYPE] === B.closeParenthesis && i--, i ? this.parse() : (this.current.source.end = _l(this.currToken), this.current.parent.source.end = _l(this.currToken), this.position++); + this.currToken[C.FIELDS.TYPE] === $.openParenthesis && i++, this.currToken[C.FIELDS.TYPE] === $.closeParenthesis && i--, i ? this.parse() : (this.current.source.end = Pl(this.currToken), this.current.parent.source.end = Pl(this.currToken), this.position++); this.current = s; } else { for (var a = this.currToken, u2 = "(", f; this.position < this.tokens.length && i; ) - this.currToken[C.FIELDS.TYPE] === B.openParenthesis && i++, this.currToken[C.FIELDS.TYPE] === B.closeParenthesis && i--, f = this.currToken, u2 += this.parseParenthesisToken(this.currToken), this.position++; - r ? r.appendToPropertyAndEscape("value", u2, u2) : this.newNode(new rs.default({ value: u2, source: or(a[C.FIELDS.START_LINE], a[C.FIELDS.START_COL], f[C.FIELDS.END_LINE], f[C.FIELDS.END_COL]), sourceIndex: a[C.FIELDS.START_POS] })); + this.currToken[C.FIELDS.TYPE] === $.openParenthesis && i++, this.currToken[C.FIELDS.TYPE] === $.closeParenthesis && i--, f = this.currToken, u2 += this.parseParenthesisToken(this.currToken), this.position++; + r ? r.appendToPropertyAndEscape("value", u2, u2) : this.newNode(new ns.default({ value: u2, source: or(a[C.FIELDS.START_LINE], a[C.FIELDS.START_COL], f[C.FIELDS.END_LINE], f[C.FIELDS.END_COL]), sourceIndex: a[C.FIELDS.START_POS] })); } if (i) return this.expected("closing parenthesis", this.currToken[C.FIELDS.START_POS]); }, t.pseudo = function() { - for (var r = this, i = "", o = this.currToken; this.currToken && this.currToken[C.FIELDS.TYPE] === B.colon; ) + for (var r = this, i = "", o = this.currToken; this.currToken && this.currToken[C.FIELDS.TYPE] === $.colon; ) i += this.content(), this.position++; if (!this.currToken) return this.expected(["pseudo-class", "pseudo-element"], this.position - 1); - if (this.currToken[C.FIELDS.TYPE] === B.word) + if (this.currToken[C.FIELDS.TYPE] === $.word) this.splitWord(false, function(s, a) { - i += s, r.newNode(new Km.default({ value: i, source: os(o, r.currToken), sourceIndex: o[C.FIELDS.START_POS] })), a > 1 && r.nextToken && r.nextToken[C.FIELDS.TYPE] === B.openParenthesis && r.error("Misplaced parenthesis.", { index: r.nextToken[C.FIELDS.START_POS] }); + i += s, r.newNode(new o0.default({ value: i, source: ss(o, r.currToken), sourceIndex: o[C.FIELDS.START_POS] })), a > 1 && r.nextToken && r.nextToken[C.FIELDS.TYPE] === $.openParenthesis && r.error("Misplaced parenthesis.", { index: r.nextToken[C.FIELDS.START_POS] }); }); else return this.expected(["pseudo-class", "pseudo-element"], this.currToken[C.FIELDS.START_POS]); }, t.space = function() { var r = this.content(); - this.position === 0 || this.prevToken[C.FIELDS.TYPE] === B.comma || this.prevToken[C.FIELDS.TYPE] === B.openParenthesis || this.current.nodes.every(function(i) { + this.position === 0 || this.prevToken[C.FIELDS.TYPE] === $.comma || this.prevToken[C.FIELDS.TYPE] === $.openParenthesis || this.current.nodes.every(function(i) { return i.type === "comment"; - }) ? (this.spaces = this.optionalSpace(r), this.position++) : this.position === this.tokens.length - 1 || this.nextToken[C.FIELDS.TYPE] === B.comma || this.nextToken[C.FIELDS.TYPE] === B.closeParenthesis ? (this.current.last.spaces.after = this.optionalSpace(r), this.position++) : this.combinator(); + }) ? (this.spaces = this.optionalSpace(r), this.position++) : this.position === this.tokens.length - 1 || this.nextToken[C.FIELDS.TYPE] === $.comma || this.nextToken[C.FIELDS.TYPE] === $.closeParenthesis ? (this.current.last.spaces.after = this.optionalSpace(r), this.position++) : this.combinator(); }, t.string = function() { var r = this.currToken; - this.newNode(new rs.default({ value: this.content(), source: _r(r), sourceIndex: r[C.FIELDS.START_POS] })), this.position++; + this.newNode(new ns.default({ value: this.content(), source: _r(r), sourceIndex: r[C.FIELDS.START_POS] })), this.position++; }, t.universal = function(r) { var i = this.nextToken; if (i && this.content(i) === "|") return this.position++, this.namespace(); var o = this.currToken; - this.newNode(new Jm.default({ value: this.content(), source: _r(o), sourceIndex: o[C.FIELDS.START_POS] }), r), this.position++; + this.newNode(new s0.default({ value: this.content(), source: _r(o), sourceIndex: o[C.FIELDS.START_POS] }), r), this.position++; }, t.splitWord = function(r, i) { - for (var o = this, s = this.nextToken, a = this.content(); s && ~[B.dollar, B.caret, B.equals, B.word].indexOf(s[C.FIELDS.TYPE]); ) { + for (var o = this, s = this.nextToken, a = this.content(); s && ~[$.dollar, $.caret, $.equals, $.word].indexOf(s[C.FIELDS.TYPE]); ) { this.position++; var u2 = this.content(); if (a += u2, u2.lastIndexOf("\\") === u2.length - 1) { var f = this.nextToken; - f && f[C.FIELDS.TYPE] === B.space && (a += this.requiredSpace(this.content(f)), this.position++); + f && f[C.FIELDS.TYPE] === $.space && (a += this.requiredSpace(this.content(f)), this.position++); } s = this.nextToken; } - var l2 = ss(a, ".").filter(function(b) { + var l2 = as(a, ".").filter(function(b) { var y = a[b - 1] === "\\", T = /^\d+\.\d+%$/.test(a); return !y && !T; - }), p = ss(a, "#").filter(function(b) { + }), p = as(a, "#").filter(function(b) { return a[b - 1] !== "\\"; - }), h2 = ss(a, "#{"); + }), h2 = as(a, "#{"); h2.length && (p = p.filter(function(b) { return !~h2.indexOf(b); })); - var m2 = (0, e0.default)(i0([0].concat(l2, p))); + var m2 = (0, u0.default)(d0([0].concat(l2, p))); m2.forEach(function(b, y) { - var T = m2[y + 1] || a.length, k = a.slice(b, T); + var T = m2[y + 1] || a.length, E = a.slice(b, T); if (y === 0 && i) - return i.call(o, k, m2.length); + return i.call(o, E, m2.length); var P2, w2 = o.currToken, S2 = w2[C.FIELDS.START_POS] + m2[y], O = or(w2[1], w2[2] + b, w2[3], w2[2] + (T - 1)); if (~l2.indexOf(b)) { - var I = { value: k.slice(1), source: O, sourceIndex: S2 }; - P2 = new Ym.default(Tr(I, "value")); + var I = { value: E.slice(1), source: O, sourceIndex: S2 }; + P2 = new r0.default(Tr(I, "value")); } else if (~p.indexOf(b)) { - var F = { value: k.slice(1), source: O, sourceIndex: S2 }; - P2 = new Xm.default(Tr(F, "value")); + var F = { value: E.slice(1), source: O, sourceIndex: S2 }; + P2 = new n0.default(Tr(F, "value")); } else { - var q = { value: k, source: O, sourceIndex: S2 }; - Tr(q, "value"), P2 = new Qm.default(q); + var U = { value: E, source: O, sourceIndex: S2 }; + Tr(U, "value"), P2 = new i0.default(U); } o.newNode(P2, r), r = null; }), this.position++; @@ -16015,49 +16015,49 @@ var El = U((gn, kl) => { return this.current._inferEndPosition(), this.root; }, t.parse = function(r) { switch (this.currToken[C.FIELDS.TYPE]) { - case B.space: + case $.space: this.space(); break; - case B.comment: + case $.comment: this.comment(); break; - case B.openParenthesis: + case $.openParenthesis: this.parentheses(); break; - case B.closeParenthesis: + case $.closeParenthesis: r && this.missingParenthesis(); break; - case B.openSquare: + case $.openSquare: this.attribute(); break; - case B.dollar: - case B.caret: - case B.equals: - case B.word: + case $.dollar: + case $.caret: + case $.equals: + case $.word: this.word(); break; - case B.colon: + case $.colon: this.pseudo(); break; - case B.comma: + case $.comma: this.comma(); break; - case B.asterisk: + case $.asterisk: this.universal(); break; - case B.ampersand: + case $.ampersand: this.nesting(); break; - case B.slash: - case B.combinator: + case $.slash: + case $.combinator: this.combinator(); break; - case B.str: + case $.str: this.string(); break; - case B.closeSquare: + case $.closeSquare: this.missingSquareBracket(); - case B.semicolon: + case $.semicolon: this.missingBackslash(); default: this.unexpected(); @@ -16077,7 +16077,7 @@ var El = U((gn, kl) => { return this.options.lossy ? i ? " " : "" : r; }, t.parseParenthesisToken = function(r) { var i = this.content(r); - return r[C.FIELDS.TYPE] === B.space ? this.requiredSpace(i) : i; + return r[C.FIELDS.TYPE] === $.space ? this.requiredSpace(i) : i; }, t.newNode = function(r, i) { return i && (/^ +$/.test(i) && (this.options.lossy || (this.spaces = (this.spaces || "") + i), i = true), r.namespace = i, Tr(r, "namespace")), this.spaces && (r.spaces.before = this.spaces, this.spaces = ""), this.current.append(r); }, t.content = function(r) { @@ -16085,13 +16085,13 @@ var El = U((gn, kl) => { }, t.locateNextMeaningfulToken = function(r) { r === void 0 && (r = this.position + 1); for (var i = r; i < this.tokens.length; ) - if (n0[this.tokens[i][C.FIELDS.TYPE]]) { + if (c0[this.tokens[i][C.FIELDS.TYPE]]) { i++; continue; } else return i; return -1; - }, r0(e, [{ key: "currToken", get: function() { + }, f0(e, [{ key: "currToken", get: function() { return this.tokens[this.position]; } }, { key: "nextToken", get: function() { return this.tokens[this.position + 1]; @@ -16099,18 +16099,18 @@ var El = U((gn, kl) => { return this.tokens[this.position - 1]; } }]), e; }(); - gn.default = o0; - kl.exports = gn.default; + gn.default = p0; + Il.exports = gn.default; }); -var Pl = U((bn, Ol) => { +var Ll = q((bn, Cl) => { "use strict"; bn.__esModule = true; bn.default = void 0; - var s0 = a0(El()); - function a0(e) { + var h0 = m0(Rl()); + function m0(e) { return e && e.__esModule ? e : { default: e }; } - var u0 = function() { + var g0 = function() { function e(n, r) { this.func = n || function() { }, this.funcRes = null, this.options = r; @@ -16126,7 +16126,7 @@ var Pl = U((bn, Ol) => { return i.lossless === false; }, t._root = function(r, i) { i === void 0 && (i = {}); - var o = new s0.default(r, this._parseOptions(i)); + var o = new h0.default(r, this._parseOptions(i)); return o.root; }, t._parseOptions = function(r) { return { lossy: this._isLossy(r) }; @@ -16172,154 +16172,154 @@ var Pl = U((bn, Ol) => { return o.string || o.root.toString(); }, e; }(); - bn.default = u0; - Ol.exports = bn.default; + bn.default = g0; + Cl.exports = bn.default; }); -var Al = U((be) => { +var Ml = q((be) => { "use strict"; be.__esModule = true; be.universal = be.tag = be.string = be.selector = be.root = be.pseudo = be.nesting = be.id = be.comment = be.combinator = be.className = be.attribute = void 0; - var l0 = lt(Vo()), f0 = lt(Ao()), c0 = lt(Qo()), d0 = lt(Ro()), p0 = lt(Lo()), h0 = lt(Jo()), m0 = lt($o()), g0 = lt(To()), b0 = lt(Eo()), v0 = lt(Do()), y0 = lt(Wo()), x0 = lt(Yo()); + var b0 = lt(Ho()), v0 = lt(Io()), y0 = lt(Ko()), x0 = lt(Co()), w0 = lt(Mo()), S0 = lt(Zo()), _0 = lt(Uo()), T0 = lt(Eo()), E0 = lt(Oo()), k0 = lt($o()), O0 = lt(Fo()), P0 = lt(Xo()); function lt(e) { return e && e.__esModule ? e : { default: e }; } - var w0 = function(t) { - return new l0.default(t); - }; - be.attribute = w0; - var S0 = function(t) { - return new f0.default(t); - }; - be.className = S0; - var _0 = function(t) { - return new c0.default(t); - }; - be.combinator = _0; - var T0 = function(t) { - return new d0.default(t); - }; - be.comment = T0; - var k0 = function(t) { - return new p0.default(t); - }; - be.id = k0; - var E0 = function(t) { - return new h0.default(t); - }; - be.nesting = E0; - var O0 = function(t) { - return new m0.default(t); - }; - be.pseudo = O0; - var P0 = function(t) { - return new g0.default(t); - }; - be.root = P0; var A0 = function(t) { return new b0.default(t); }; - be.selector = A0; + be.attribute = A0; var I0 = function(t) { return new v0.default(t); }; - be.string = I0; + be.className = I0; var R0 = function(t) { return new y0.default(t); }; - be.tag = R0; + be.combinator = R0; var C0 = function(t) { return new x0.default(t); }; - be.universal = C0; + be.comment = C0; + var L0 = function(t) { + return new w0.default(t); + }; + be.id = L0; + var M0 = function(t) { + return new S0.default(t); + }; + be.nesting = M0; + var N0 = function(t) { + return new _0.default(t); + }; + be.pseudo = N0; + var W0 = function(t) { + return new T0.default(t); + }; + be.root = W0; + var F0 = function(t) { + return new E0.default(t); + }; + be.selector = F0; + var D0 = function(t) { + return new k0.default(t); + }; + be.string = D0; + var $0 = function(t) { + return new O0.default(t); + }; + be.tag = $0; + var B0 = function(t) { + return new P0.default(t); + }; + be.universal = B0; }); -var Ll = U((oe) => { +var Dl = q((oe) => { "use strict"; oe.__esModule = true; - oe.isNode = us; - oe.isPseudoElement = Cl; - oe.isPseudoClass = G0; - oe.isContainer = z0; - oe.isNamespace = j0; + oe.isNode = ls; + oe.isPseudoElement = Fl; + oe.isPseudoClass = K0; + oe.isContainer = J0; + oe.isNamespace = Z0; oe.isUniversal = oe.isTag = oe.isString = oe.isSelector = oe.isRoot = oe.isPseudo = oe.isNesting = oe.isIdentifier = oe.isComment = oe.isCombinator = oe.isClassName = oe.isAttribute = void 0; - var _e = Be(), Qe, L0 = (Qe = {}, Qe[_e.ATTRIBUTE] = true, Qe[_e.CLASS] = true, Qe[_e.COMBINATOR] = true, Qe[_e.COMMENT] = true, Qe[_e.ID] = true, Qe[_e.NESTING] = true, Qe[_e.PSEUDO] = true, Qe[_e.ROOT] = true, Qe[_e.SELECTOR] = true, Qe[_e.STRING] = true, Qe[_e.TAG] = true, Qe[_e.UNIVERSAL] = true, Qe); - function us(e) { - return typeof e == "object" && L0[e.type]; + var _e = $e(), Qe, U0 = (Qe = {}, Qe[_e.ATTRIBUTE] = true, Qe[_e.CLASS] = true, Qe[_e.COMBINATOR] = true, Qe[_e.COMMENT] = true, Qe[_e.ID] = true, Qe[_e.NESTING] = true, Qe[_e.PSEUDO] = true, Qe[_e.ROOT] = true, Qe[_e.SELECTOR] = true, Qe[_e.STRING] = true, Qe[_e.TAG] = true, Qe[_e.UNIVERSAL] = true, Qe); + function ls(e) { + return typeof e == "object" && U0[e.type]; } function ft(e, t) { - return us(t) && t.type === e; - } - var Il = ft.bind(null, _e.ATTRIBUTE); - oe.isAttribute = Il; - var M0 = ft.bind(null, _e.CLASS); - oe.isClassName = M0; - var N0 = ft.bind(null, _e.COMBINATOR); - oe.isCombinator = N0; - var W0 = ft.bind(null, _e.COMMENT); - oe.isComment = W0; - var F0 = ft.bind(null, _e.ID); - oe.isIdentifier = F0; - var D0 = ft.bind(null, _e.NESTING); - oe.isNesting = D0; - var ls = ft.bind(null, _e.PSEUDO); - oe.isPseudo = ls; - var B0 = ft.bind(null, _e.ROOT); - oe.isRoot = B0; - var $0 = ft.bind(null, _e.SELECTOR); - oe.isSelector = $0; - var q0 = ft.bind(null, _e.STRING); - oe.isString = q0; - var Rl = ft.bind(null, _e.TAG); - oe.isTag = Rl; - var U0 = ft.bind(null, _e.UNIVERSAL); - oe.isUniversal = U0; - function Cl(e) { - return ls(e) && e.value && (e.value.startsWith("::") || e.value.toLowerCase() === ":before" || e.value.toLowerCase() === ":after" || e.value.toLowerCase() === ":first-letter" || e.value.toLowerCase() === ":first-line"); - } - function G0(e) { - return ls(e) && !Cl(e); - } - function z0(e) { - return !!(us(e) && e.walk); - } - function j0(e) { - return Il(e) || Rl(e); + return ls(t) && t.type === e; + } + var Nl = ft.bind(null, _e.ATTRIBUTE); + oe.isAttribute = Nl; + var q0 = ft.bind(null, _e.CLASS); + oe.isClassName = q0; + var z0 = ft.bind(null, _e.COMBINATOR); + oe.isCombinator = z0; + var G0 = ft.bind(null, _e.COMMENT); + oe.isComment = G0; + var j0 = ft.bind(null, _e.ID); + oe.isIdentifier = j0; + var V0 = ft.bind(null, _e.NESTING); + oe.isNesting = V0; + var fs = ft.bind(null, _e.PSEUDO); + oe.isPseudo = fs; + var H0 = ft.bind(null, _e.ROOT); + oe.isRoot = H0; + var Y0 = ft.bind(null, _e.SELECTOR); + oe.isSelector = Y0; + var X0 = ft.bind(null, _e.STRING); + oe.isString = X0; + var Wl = ft.bind(null, _e.TAG); + oe.isTag = Wl; + var Q0 = ft.bind(null, _e.UNIVERSAL); + oe.isUniversal = Q0; + function Fl(e) { + return fs(e) && e.value && (e.value.startsWith("::") || e.value.toLowerCase() === ":before" || e.value.toLowerCase() === ":after" || e.value.toLowerCase() === ":first-letter" || e.value.toLowerCase() === ":first-line"); + } + function K0(e) { + return fs(e) && !Fl(e); + } + function J0(e) { + return !!(ls(e) && e.walk); + } + function Z0(e) { + return Nl(e) || Wl(e); } }); -var Ml = U((St) => { +var $l = q((St) => { "use strict"; St.__esModule = true; - var fs = Be(); - Object.keys(fs).forEach(function(e) { - e === "default" || e === "__esModule" || e in St && St[e] === fs[e] || (St[e] = fs[e]); - }); - var cs = Al(); + var cs = $e(); Object.keys(cs).forEach(function(e) { e === "default" || e === "__esModule" || e in St && St[e] === cs[e] || (St[e] = cs[e]); }); - var ds = Ll(); + var ds = Ml(); Object.keys(ds).forEach(function(e) { e === "default" || e === "__esModule" || e in St && St[e] === ds[e] || (St[e] = ds[e]); }); + var ps = Dl(); + Object.keys(ps).forEach(function(e) { + e === "default" || e === "__esModule" || e in St && St[e] === ps[e] || (St[e] = ps[e]); + }); }); -var Fl = U((vn, Wl) => { +var ql = q((vn, Ul) => { "use strict"; vn.__esModule = true; vn.default = void 0; - var V0 = X0(Pl()), H0 = Y0(Ml()); - function Nl() { + var eg = ng(Ll()), tg = rg($l()); + function Bl() { if (typeof WeakMap != "function") return null; var e = /* @__PURE__ */ new WeakMap(); - return Nl = function() { + return Bl = function() { return e; }, e; } - function Y0(e) { + function rg(e) { if (e && e.__esModule) return e; if (e === null || typeof e != "object" && typeof e != "function") return { default: e }; - var t = Nl(); + var t = Bl(); if (t && t.has(e)) return t.get(e); var n = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -16330,142 +16330,142 @@ var Fl = U((vn, Wl) => { } return n.default = e, t && t.set(e, n), n; } - function X0(e) { + function ng(e) { return e && e.__esModule ? e : { default: e }; } - var ps = function(t) { - return new V0.default(t); + var hs = function(t) { + return new eg.default(t); }; - Object.assign(ps, H0); - delete ps.__esModule; - var Q0 = ps; - vn.default = Q0; - Wl.exports = vn.default; + Object.assign(hs, tg); + delete hs.__esModule; + var ig = hs; + vn.default = ig; + Ul.exports = vn.default; }); -var Dl = U((hs) => { +var zl = q((ms) => { "use strict"; - Object.defineProperty(hs, "__esModule", { value: true }); - Object.defineProperty(hs, "default", { enumerable: true, get: () => K0 }); - function K0(e) { + Object.defineProperty(ms, "__esModule", { value: true }); + Object.defineProperty(ms, "default", { enumerable: true, get: () => og }); + function og(e) { return e.replace(/\\,/g, "\\2c "); } }); -var $l = U((l1, Bl) => { +var jl = q((w1, Gl) => { "use strict"; - Bl.exports = { 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, 134, 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, 250, 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, 221], 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: [112, 128, 144], slategrey: [112, 128, 144], snow: [255, 250, 250], springgreen: [0, 255, 127], steelblue: [70, 130, 180], tan: [210, 180, 140], teal: [0, 128, 128], thistle: [216, 191, 216], 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, 50] }; + Gl.exports = { 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, 134, 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, 250, 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, 221], 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: [112, 128, 144], slategrey: [112, 128, 144], snow: [255, 250, 250], springgreen: [0, 255, 127], steelblue: [70, 130, 180], tan: [210, 180, 140], teal: [0, 128, 128], thistle: [216, 191, 216], 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, 50] }; }); -var gs = U((ms) => { +var bs = q((gs) => { "use strict"; - Object.defineProperty(ms, "__esModule", { value: true }); - function J0(e, t) { + Object.defineProperty(gs, "__esModule", { value: true }); + function sg(e, t) { for (var n in t) Object.defineProperty(e, n, { enumerable: true, get: t[n] }); } - J0(ms, { parseColor: () => ig, formatColor: () => og }); - var ql = Z0($l()); - function Z0(e) { + sg(gs, { parseColor: () => dg, formatColor: () => pg }); + var Vl = ag(jl()); + function ag(e) { return e && e.__esModule ? e : { default: e }; } - var eg = /^#([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i, tg = /^#([a-f\d])([a-f\d])([a-f\d])([a-f\d])?$/i, Vt = /(?:\d+|\d*\.\d+)%?/, bi = /(?:\s*,\s*|\s+)/, Ul = /\s*[,/]\s*/, Ht = /var\(--(?:[^ )]*?)\)/, rg = new RegExp(`^(rgb)a?\\(\\s*(${Vt.source}|${Ht.source})(?:${bi.source}(${Vt.source}|${Ht.source}))?(?:${bi.source}(${Vt.source}|${Ht.source}))?(?:${Ul.source}(${Vt.source}|${Ht.source}))?\\s*\\)$`), ng = new RegExp(`^(hsl)a?\\(\\s*((?:${Vt.source})(?:deg|rad|grad|turn)?|${Ht.source})(?:${bi.source}(${Vt.source}|${Ht.source}))?(?:${bi.source}(${Vt.source}|${Ht.source}))?(?:${Ul.source}(${Vt.source}|${Ht.source}))?\\s*\\)$`); - function ig(e, { loose: t = false } = {}) { + var ug = /^#([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i, lg = /^#([a-f\d])([a-f\d])([a-f\d])([a-f\d])?$/i, Vt = /(?:\d+|\d*\.\d+)%?/, yi = /(?:\s*,\s*|\s+)/, Hl = /\s*[,/]\s*/, Ht = /var\(--(?:[^ )]*?)\)/, fg = new RegExp(`^(rgb)a?\\(\\s*(${Vt.source}|${Ht.source})(?:${yi.source}(${Vt.source}|${Ht.source}))?(?:${yi.source}(${Vt.source}|${Ht.source}))?(?:${Hl.source}(${Vt.source}|${Ht.source}))?\\s*\\)$`), cg = new RegExp(`^(hsl)a?\\(\\s*((?:${Vt.source})(?:deg|rad|grad|turn)?|${Ht.source})(?:${yi.source}(${Vt.source}|${Ht.source}))?(?:${yi.source}(${Vt.source}|${Ht.source}))?(?:${Hl.source}(${Vt.source}|${Ht.source}))?\\s*\\)$`); + function dg(e, { loose: t = false } = {}) { var n, r; if (typeof e != "string") return null; if (e = e.trim(), e === "transparent") return { mode: "rgb", color: ["0", "0", "0"], alpha: "0" }; - if (e in ql.default) - return { mode: "rgb", color: ql.default[e].map((u2) => u2.toString()) }; - let i = e.replace(tg, (u2, f, l2, p, h2) => ["#", f, f, l2, l2, p, p, h2 ? h2 + h2 : ""].join("")).match(eg); + if (e in Vl.default) + return { mode: "rgb", color: Vl.default[e].map((u2) => u2.toString()) }; + let i = e.replace(lg, (u2, f, l2, p, h2) => ["#", f, f, l2, l2, p, p, h2 ? h2 + h2 : ""].join("")).match(ug); if (i !== null) return { mode: "rgb", color: [parseInt(i[1], 16), parseInt(i[2], 16), parseInt(i[3], 16)].map((u2) => u2.toString()), alpha: i[4] ? (parseInt(i[4], 16) / 255).toString() : void 0 }; var o; - let s = (o = e.match(rg)) !== null && o !== void 0 ? o : e.match(ng); + let s = (o = e.match(fg)) !== null && o !== void 0 ? o : e.match(cg); if (s === null) return null; let a = [s[2], s[3], s[4]].filter(Boolean).map((u2) => u2.toString()); return !t && a.length !== 3 || a.length < 3 && !a.some((u2) => /^var\(.*?\)$/.test(u2)) ? null : { mode: s[1], color: a, alpha: (n = s[5]) === null || n === void 0 || (r = n.toString) === null || r === void 0 ? void 0 : r.call(n) }; } - function og({ mode: e, color: t, alpha: n }) { + function pg({ mode: e, color: t, alpha: n }) { let r = n !== void 0; return `${e}(${t.join(" ")}${r ? ` / ${n}` : ""})`; } }); -var vs = U((bs) => { +var ys = q((vs) => { "use strict"; - Object.defineProperty(bs, "__esModule", { value: true }); - function sg(e, t) { + Object.defineProperty(vs, "__esModule", { value: true }); + function hg(e, t) { for (var n in t) Object.defineProperty(e, n, { enumerable: true, get: t[n] }); } - sg(bs, { withAlphaValue: () => ag, default: () => ug }); - var vi = gs(); - function ag(e, t, n) { + hg(vs, { withAlphaValue: () => mg, default: () => gg }); + var xi = bs(); + function mg(e, t, n) { if (typeof e == "function") return e({ opacityValue: t }); - let r = (0, vi.parseColor)(e, { loose: true }); - return r === null ? n : (0, vi.formatColor)({ ...r, alpha: t }); + let r = (0, xi.parseColor)(e, { loose: true }); + return r === null ? n : (0, xi.formatColor)({ ...r, alpha: t }); } - function ug({ color: e, property: t, variable: n }) { + function gg({ color: e, property: t, variable: n }) { let r = [].concat(t); if (typeof e == "function") return { [n]: "1", ...Object.fromEntries(r.map((o) => [o, e({ opacityVariable: n, opacityValue: `var(${n})` })])) }; - let i = (0, vi.parseColor)(e); - return i === null ? Object.fromEntries(r.map((o) => [o, e])) : i.alpha !== void 0 ? Object.fromEntries(r.map((o) => [o, e])) : { [n]: "1", ...Object.fromEntries(r.map((o) => [o, (0, vi.formatColor)({ ...i, alpha: `var(${n})` })])) }; + let i = (0, xi.parseColor)(e); + return i === null ? Object.fromEntries(r.map((o) => [o, e])) : i.alpha !== void 0 ? Object.fromEntries(r.map((o) => [o, e])) : { [n]: "1", ...Object.fromEntries(r.map((o) => [o, (0, xi.formatColor)({ ...i, alpha: `var(${n})` })])) }; } }); -var Hl = U((ys) => { +var Jl = q((xs) => { "use strict"; - Object.defineProperty(ys, "__esModule", { value: true }); - function lg(e, t) { + Object.defineProperty(xs, "__esModule", { value: true }); + function bg(e, t) { for (var n in t) Object.defineProperty(e, n, { enumerable: true, get: t[n] }); } - lg(ys, { pattern: () => cg, withoutCapturing: () => zl, any: () => jl, optional: () => dg, zeroOrMore: () => pg, nestedBrackets: () => Vl, escape: () => sr }); - var Gl = /[\\^$.*+?()[\]{}|]/g, fg = RegExp(Gl.source); + bg(xs, { pattern: () => yg, withoutCapturing: () => Xl, any: () => Ql, optional: () => xg, zeroOrMore: () => wg, nestedBrackets: () => Kl, escape: () => sr }); + var Yl = /[\\^$.*+?()[\]{}|]/g, vg = RegExp(Yl.source); function yn(e) { return e = Array.isArray(e) ? e : [e], e = e.map((t) => t instanceof RegExp ? t.source : t), e.join(""); } - function cg(e) { + function yg(e) { return new RegExp(yn(e), "g"); } - function zl(e) { + function Xl(e) { return new RegExp(`(?:${yn(e)})`, "g"); } - function jl(e) { + function Ql(e) { return `(?:${e.map(yn).join("|")})`; } - function dg(e) { + function xg(e) { return `(?:${yn(e)})?`; } - function pg(e) { + function wg(e) { return `(?:${yn(e)})*`; } - function Vl(e, t, n = 1) { - return zl([sr(e), /[^\s]*/, n === 1 ? `[^${sr(e)}${sr(t)}s]*` : jl([`[^${sr(e)}${sr(t)}s]*`, Vl(e, t, n - 1)]), /[^\s]*/, sr(t)]); + function Kl(e, t, n = 1) { + return Xl([sr(e), /[^\s]*/, n === 1 ? `[^${sr(e)}${sr(t)}s]*` : Ql([`[^${sr(e)}${sr(t)}s]*`, Kl(e, t, n - 1)]), /[^\s]*/, sr(t)]); } function sr(e) { - return e && fg.test(e) ? e.replace(Gl, "\\$&") : e || ""; + return e && vg.test(e) ? e.replace(Yl, "\\$&") : e || ""; } }); -var Xl = U((xs) => { +var ef = q((ws) => { "use strict"; - Object.defineProperty(xs, "__esModule", { value: true }); - Object.defineProperty(xs, "splitAtTopLevelOnly", { enumerable: true, get: () => gg }); - var hg = mg(Hl()); - function Yl(e) { + Object.defineProperty(ws, "__esModule", { value: true }); + Object.defineProperty(ws, "splitAtTopLevelOnly", { enumerable: true, get: () => Tg }); + var Sg = _g(Jl()); + function Zl(e) { if (typeof WeakMap != "function") return null; var t = /* @__PURE__ */ new WeakMap(), n = /* @__PURE__ */ new WeakMap(); - return (Yl = function(r) { + return (Zl = function(r) { return r ? n : t; })(e); } - function mg(e, t) { + function _g(e, t) { if (!t && e && e.__esModule) return e; if (e === null || typeof e != "object" && typeof e != "function") return { default: e }; - var n = Yl(t); + var n = Zl(t); if (n && n.has(e)) return n.get(e); var r = {}, i = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -16476,8 +16476,8 @@ var Xl = U((xs) => { } return r.default = e, n && n.set(e, r), r; } - function* gg(e, t) { - let n = new RegExp(`[(){}\\[\\]${hg.escape(t)}]`, "g"), r = 0, i = 0, o = false, s = 0, a = 0, u2 = t.length; + function* Tg(e, t) { + let n = new RegExp(`[(){}\\[\\]${Sg.escape(t)}]`, "g"), r = 0, i = 0, o = false, s = 0, a = 0, u2 = t.length; for (let f of e.matchAll(n)) { let l2 = f[0] === t[s], p = s === u2 - 1, h2 = l2 && p; f[0] === "(" && r++, f[0] === ")" && r--, f[0] === "[" && r++, f[0] === "]" && r--, f[0] === "{" && r++, f[0] === "}" && r--, l2 && r === 0 && (a === 0 && (a = f.index), s++), h2 && r === 0 && (o = true, yield e.substring(i, a), i = a + u2), s === u2 && (s = 0, a = 0); @@ -16485,217 +16485,217 @@ var Xl = U((xs) => { o ? yield e.substring(i) : yield e; } }); -var Kl = U((ws) => { +var rf = q((Ss) => { "use strict"; - Object.defineProperty(ws, "__esModule", { value: true }); - function bg(e, t) { + Object.defineProperty(Ss, "__esModule", { value: true }); + function Eg(e, t) { for (var n in t) Object.defineProperty(e, n, { enumerable: true, get: t[n] }); } - bg(ws, { parseBoxShadowValue: () => wg, formatBoxShadowValue: () => Sg }); - var vg = Xl(), yg = /* @__PURE__ */ new Set(["inset", "inherit", "initial", "revert", "unset"]), xg = /\ +(?![^(]*\))/g, Ql = /^-?(\d+|\.\d+)(.*?)$/g; - function wg(e) { - return Array.from((0, vg.splitAtTopLevelOnly)(e, ",")).map((n) => { - let r = n.trim(), i = { raw: r }, o = r.split(xg), s = /* @__PURE__ */ new Set(); + Eg(Ss, { parseBoxShadowValue: () => Ag, formatBoxShadowValue: () => Ig }); + var kg = ef(), Og = /* @__PURE__ */ new Set(["inset", "inherit", "initial", "revert", "unset"]), Pg = /\ +(?![^(]*\))/g, tf = /^-?(\d+|\.\d+)(.*?)$/g; + function Ag(e) { + return Array.from((0, kg.splitAtTopLevelOnly)(e, ",")).map((n) => { + let r = n.trim(), i = { raw: r }, o = r.split(Pg), s = /* @__PURE__ */ new Set(); for (let a of o) - Ql.lastIndex = 0, !s.has("KEYWORD") && yg.has(a) ? (i.keyword = a, s.add("KEYWORD")) : Ql.test(a) ? s.has("X") ? s.has("Y") ? s.has("BLUR") ? s.has("SPREAD") || (i.spread = a, s.add("SPREAD")) : (i.blur = a, s.add("BLUR")) : (i.y = a, s.add("Y")) : (i.x = a, s.add("X")) : i.color ? (i.unknown || (i.unknown = []), i.unknown.push(a)) : i.color = a; + tf.lastIndex = 0, !s.has("KEYWORD") && Og.has(a) ? (i.keyword = a, s.add("KEYWORD")) : tf.test(a) ? s.has("X") ? s.has("Y") ? s.has("BLUR") ? s.has("SPREAD") || (i.spread = a, s.add("SPREAD")) : (i.blur = a, s.add("BLUR")) : (i.y = a, s.add("Y")) : (i.x = a, s.add("X")) : i.color ? (i.unknown || (i.unknown = []), i.unknown.push(a)) : i.color = a; return i.valid = i.x !== void 0 && i.y !== void 0, i; }); } - function Sg(e) { + function Ig(e) { return e.map((t) => t.valid ? [t.keyword, t.x, t.y, t.blur, t.spread, t.color].filter(Boolean).join(" ") : t.raw).join(", "); } }); -var of = U((_s) => { +var ff = q((Ts) => { "use strict"; - Object.defineProperty(_s, "__esModule", { value: true }); - function _g(e, t) { + Object.defineProperty(Ts, "__esModule", { value: true }); + function Rg(e, t) { for (var n in t) Object.defineProperty(e, n, { enumerable: true, get: t[n] }); } - _g(_s, { normalize: () => Yt, url: () => ef, number: () => Eg, percentage: () => tf, length: () => rf, lineWidth: () => Ag, shadow: () => Ig, color: () => Rg, image: () => Cg, gradient: () => nf, position: () => Ng, familyName: () => Wg, genericName: () => Dg, absoluteSize: () => $g, relativeSize: () => Ug }); - var Tg = gs(), kg = Kl(), Ss = ["min", "max", "clamp", "calc"], Zl = /,(?![^(]*\))/g, yi = /_(?![^(]*\))/g; + Rg(Ts, { normalize: () => Yt, url: () => sf, number: () => Mg, percentage: () => af, length: () => uf, lineWidth: () => Fg, shadow: () => Dg, color: () => $g, image: () => Bg, gradient: () => lf, position: () => zg, familyName: () => Gg, genericName: () => Vg, absoluteSize: () => Yg, relativeSize: () => Qg }); + var Cg = bs(), Lg = rf(), _s = ["min", "max", "clamp", "calc"], of = /,(?![^(]*\))/g, wi = /_(?![^(]*\))/g; function Yt(e, t = true) { return e.includes("url(") ? e.split(/(url\(.*?\))/g).filter(Boolean).map((n) => /^url\(.*?\)$/.test(n) ? n : Yt(n, false)).join("") : (e = e.replace(/([^\\])_+/g, (n, r) => r + " ".repeat(n.length - 1)).replace(/^_/g, " ").replace(/\\_/g, "_"), t && (e = e.trim()), e = e.replace(/(calc|min|max|clamp)\(.+\)/g, (n) => n.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g, "$1 $2 ")), e); } - function ef(e) { + function sf(e) { return e.startsWith("url("); } - function Eg(e) { - return !isNaN(Number(e)) || Ss.some((t) => new RegExp(`^${t}\\(.+?`).test(e)); + function Mg(e) { + return !isNaN(Number(e)) || _s.some((t) => new RegExp(`^${t}\\(.+?`).test(e)); } - function tf(e) { - return e.split(yi).every((t) => /%$/g.test(t) || Ss.some((n) => new RegExp(`^${n}\\(.+?%`).test(t))); + function af(e) { + return e.split(wi).every((t) => /%$/g.test(t) || _s.some((n) => new RegExp(`^${n}\\(.+?%`).test(t))); } - var Og = ["cm", "mm", "Q", "in", "pc", "pt", "px", "em", "ex", "ch", "rem", "lh", "vw", "vh", "vmin", "vmax"], Jl = `(?:${Og.join("|")})`; - function rf(e) { - return e.split(yi).every((t) => t === "0" || new RegExp(`${Jl}$`).test(t) || Ss.some((n) => new RegExp(`^${n}\\(.+?${Jl}`).test(t))); + var Ng = ["cm", "mm", "Q", "in", "pc", "pt", "px", "em", "ex", "ch", "rem", "lh", "vw", "vh", "vmin", "vmax"], nf = `(?:${Ng.join("|")})`; + function uf(e) { + return e.split(wi).every((t) => t === "0" || new RegExp(`${nf}$`).test(t) || _s.some((n) => new RegExp(`^${n}\\(.+?${nf}`).test(t))); } - var Pg = /* @__PURE__ */ new Set(["thin", "medium", "thick"]); - function Ag(e) { - return Pg.has(e); + var Wg = /* @__PURE__ */ new Set(["thin", "medium", "thick"]); + function Fg(e) { + return Wg.has(e); } - function Ig(e) { - let t = (0, kg.parseBoxShadowValue)(Yt(e)); + function Dg(e) { + let t = (0, Lg.parseBoxShadowValue)(Yt(e)); for (let n of t) if (!n.valid) return false; return true; } - function Rg(e) { + function $g(e) { let t = 0; - return e.split(yi).every((r) => (r = Yt(r), r.startsWith("var(") ? true : (0, Tg.parseColor)(r, { loose: true }) !== null ? (t++, true) : false)) ? t > 0 : false; + return e.split(wi).every((r) => (r = Yt(r), r.startsWith("var(") ? true : (0, Cg.parseColor)(r, { loose: true }) !== null ? (t++, true) : false)) ? t > 0 : false; } - function Cg(e) { + function Bg(e) { let t = 0; - return e.split(Zl).every((r) => (r = Yt(r), r.startsWith("var(") ? true : ef(r) || nf(r) || ["element(", "image(", "cross-fade(", "image-set("].some((i) => r.startsWith(i)) ? (t++, true) : false)) ? t > 0 : false; + return e.split(of).every((r) => (r = Yt(r), r.startsWith("var(") ? true : sf(r) || lf(r) || ["element(", "image(", "cross-fade(", "image-set("].some((i) => r.startsWith(i)) ? (t++, true) : false)) ? t > 0 : false; } - var Lg = /* @__PURE__ */ new Set(["linear-gradient", "radial-gradient", "repeating-linear-gradient", "repeating-radial-gradient", "conic-gradient"]); - function nf(e) { + var Ug = /* @__PURE__ */ new Set(["linear-gradient", "radial-gradient", "repeating-linear-gradient", "repeating-radial-gradient", "conic-gradient"]); + function lf(e) { e = Yt(e); - for (let t of Lg) + for (let t of Ug) if (e.startsWith(`${t}(`)) return true; return false; } - var Mg = /* @__PURE__ */ new Set(["center", "top", "right", "bottom", "left"]); - function Ng(e) { + var qg = /* @__PURE__ */ new Set(["center", "top", "right", "bottom", "left"]); + function zg(e) { let t = 0; - return e.split(yi).every((r) => (r = Yt(r), r.startsWith("var(") ? true : Mg.has(r) || rf(r) || tf(r) ? (t++, true) : false)) ? t > 0 : false; + return e.split(wi).every((r) => (r = Yt(r), r.startsWith("var(") ? true : qg.has(r) || uf(r) || af(r) ? (t++, true) : false)) ? t > 0 : false; } - function Wg(e) { + function Gg(e) { let t = 0; - return e.split(Zl).every((r) => (r = Yt(r), r.startsWith("var(") ? true : r.includes(" ") && !/(['"])([^"']+)\1/g.test(r) || /^\d/g.test(r) ? false : (t++, true))) ? t > 0 : false; + return e.split(of).every((r) => (r = Yt(r), r.startsWith("var(") ? true : r.includes(" ") && !/(['"])([^"']+)\1/g.test(r) || /^\d/g.test(r) ? false : (t++, true))) ? t > 0 : false; } - var Fg = /* @__PURE__ */ new Set(["serif", "sans-serif", "monospace", "cursive", "fantasy", "system-ui", "ui-serif", "ui-sans-serif", "ui-monospace", "ui-rounded", "math", "emoji", "fangsong"]); - function Dg(e) { - return Fg.has(e); + var jg = /* @__PURE__ */ new Set(["serif", "sans-serif", "monospace", "cursive", "fantasy", "system-ui", "ui-serif", "ui-sans-serif", "ui-monospace", "ui-rounded", "math", "emoji", "fangsong"]); + function Vg(e) { + return jg.has(e); } - var Bg = /* @__PURE__ */ new Set(["xx-small", "x-small", "small", "medium", "large", "x-large", "x-large", "xxx-large"]); - function $g(e) { - return Bg.has(e); + var Hg = /* @__PURE__ */ new Set(["xx-small", "x-small", "small", "medium", "large", "x-large", "x-large", "xxx-large"]); + function Yg(e) { + return Hg.has(e); } - var qg = /* @__PURE__ */ new Set(["larger", "smaller"]); - function Ug(e) { - return qg.has(e); + var Xg = /* @__PURE__ */ new Set(["larger", "smaller"]); + function Qg(e) { + return Xg.has(e); } }); -var pf = U((Es) => { +var vf = q((Os) => { "use strict"; - Object.defineProperty(Es, "__esModule", { value: true }); - function Gg(e, t) { + Object.defineProperty(Os, "__esModule", { value: true }); + function Kg(e, t) { for (var n in t) Object.defineProperty(e, n, { enumerable: true, get: t[n] }); } - Gg(Es, { updateAllClasses: () => Vg, asValue: () => wn, parseColorFormat: () => Ts, asColor: () => ff, asLookupValue: () => cf, coerceValue: () => Qg }); - var zg = ks(Fl()), jg = ks(Dl()), sf = vs(), Ke = of(), af = ks(lo()); + Kg(Os, { updateAllClasses: () => eb, asValue: () => wn, parseColorFormat: () => Es, asColor: () => mf, asLookupValue: () => gf, coerceValue: () => ib }); + var Jg = ks(ql()), Zg = ks(zl()), cf = ys(), Ke = ff(), df = ks(fo()); function ks(e) { return e && e.__esModule ? e : { default: e }; } - function Vg(e, t) { - return (0, zg.default)((i) => { + function eb(e, t) { + return (0, Jg.default)((i) => { i.walkClasses((o) => { let s = t(o.value); - o.value = s, o.raws && o.raws.value && (o.raws.value = (0, jg.default)(o.raws.value)); + o.value = s, o.raws && o.raws.value && (o.raws.value = (0, Zg.default)(o.raws.value)); }); }).processSync(e); } - function lf(e, t) { + function hf(e, t) { if (!xn(e)) return; let n = e.slice(1, -1); if (t(n)) return (0, Ke.normalize)(n); } - function Hg(e, t = {}, n) { + function tb(e, t = {}, n) { let r = t[e]; if (r !== void 0) - return (0, af.default)(r); + return (0, df.default)(r); if (xn(e)) { - let i = lf(e, n); - return i === void 0 ? void 0 : (0, af.default)(i); + let i = hf(e, n); + return i === void 0 ? void 0 : (0, df.default)(i); } } function wn(e, t = {}, { validate: n = () => true } = {}) { var r; let i = (r = t.values) === null || r === void 0 ? void 0 : r[e]; - return i !== void 0 ? i : t.supportsNegativeValues && e.startsWith("-") ? Hg(e.slice(1), t.values, n) : lf(e, n); + return i !== void 0 ? i : t.supportsNegativeValues && e.startsWith("-") ? tb(e.slice(1), t.values, n) : hf(e, n); } function xn(e) { return e.startsWith("[") && e.endsWith("]"); } - function Yg(e) { + function rb(e) { let t = e.lastIndexOf("/"); return t === -1 || t === e.length - 1 ? [e] : [e.slice(0, t), e.slice(t + 1)]; } - function Ts(e) { + function Es(e) { if (typeof e == "string" && e.includes("")) { let t = e; return ({ opacityValue: n = 1 }) => t.replace("", n); } return e; } - function ff(e, t = {}, { tailwindConfig: n = {} } = {}) { + function mf(e, t = {}, { tailwindConfig: n = {} } = {}) { var r; if (((r = t.values) === null || r === void 0 ? void 0 : r[e]) !== void 0) { var i; - return Ts((i = t.values) === null || i === void 0 ? void 0 : i[e]); + return Es((i = t.values) === null || i === void 0 ? void 0 : i[e]); } - let [o, s] = Yg(e); + let [o, s] = rb(e); if (s !== void 0) { var a, u2, f, l2; let p = (l2 = (a = t.values) === null || a === void 0 ? void 0 : a[o]) !== null && l2 !== void 0 ? l2 : xn(o) ? o.slice(1, -1) : void 0; - return p === void 0 ? void 0 : (p = Ts(p), xn(s) ? (0, sf.withAlphaValue)(p, s.slice(1, -1)) : ((u2 = n.theme) === null || u2 === void 0 || (f = u2.opacity) === null || f === void 0 ? void 0 : f[s]) === void 0 ? void 0 : (0, sf.withAlphaValue)(p, n.theme.opacity[s])); + return p === void 0 ? void 0 : (p = Es(p), xn(s) ? (0, cf.withAlphaValue)(p, s.slice(1, -1)) : ((u2 = n.theme) === null || u2 === void 0 || (f = u2.opacity) === null || f === void 0 ? void 0 : f[s]) === void 0 ? void 0 : (0, cf.withAlphaValue)(p, n.theme.opacity[s])); } return wn(e, t, { validate: Ke.color }); } - function cf(e, t = {}) { + function gf(e, t = {}) { var n; return (n = t.values) === null || n === void 0 ? void 0 : n[e]; } function ct(e) { return (t, n) => wn(t, n, { validate: e }); } - var df = { any: wn, color: ff, url: ct(Ke.url), image: ct(Ke.image), length: ct(Ke.length), percentage: ct(Ke.percentage), position: ct(Ke.position), lookup: cf, "generic-name": ct(Ke.genericName), "family-name": ct(Ke.familyName), number: ct(Ke.number), "line-width": ct(Ke.lineWidth), "absolute-size": ct(Ke.absoluteSize), "relative-size": ct(Ke.relativeSize), shadow: ct(Ke.shadow) }, uf = Object.keys(df); - function Xg(e, t) { + var bf = { any: wn, color: mf, url: ct(Ke.url), image: ct(Ke.image), length: ct(Ke.length), percentage: ct(Ke.percentage), position: ct(Ke.position), lookup: gf, "generic-name": ct(Ke.genericName), "family-name": ct(Ke.familyName), number: ct(Ke.number), "line-width": ct(Ke.lineWidth), "absolute-size": ct(Ke.absoluteSize), "relative-size": ct(Ke.relativeSize), shadow: ct(Ke.shadow) }, pf = Object.keys(bf); + function nb(e, t) { let n = e.indexOf(t); return n === -1 ? [void 0, e] : [e.slice(0, n), e.slice(n + 1)]; } - function Qg(e, t, n, r) { + function ib(e, t, n, r) { if (xn(t)) { - let i = t.slice(1, -1), [o, s] = Xg(i, ":"); + let i = t.slice(1, -1), [o, s] = nb(i, ":"); if (!/^[\w-_]+$/g.test(o)) s = i; - else if (o !== void 0 && !uf.includes(o)) + else if (o !== void 0 && !pf.includes(o)) return []; - if (s.length > 0 && uf.includes(o)) + if (s.length > 0 && pf.includes(o)) return [wn(`[${s}]`, n), o]; } for (let i of [].concat(e)) { - let o = df[i](t, n, { tailwindConfig: r }); + let o = bf[i](t, n, { tailwindConfig: r }); if (o !== void 0) return [o, i]; } return []; } }); -var hf = U((Os) => { +var yf = q((Ps) => { "use strict"; - Object.defineProperty(Os, "__esModule", { value: true }); - Object.defineProperty(Os, "default", { enumerable: true, get: () => Kg }); - function Kg(e) { + Object.defineProperty(Ps, "__esModule", { value: true }); + Object.defineProperty(Ps, "default", { enumerable: true, get: () => ob }); + function ob(e) { return typeof e == "function" ? e({}) : e; } }); -var yf = U((As) => { +var Tf = q((Is) => { "use strict"; - Object.defineProperty(As, "__esModule", { value: true }); - Object.defineProperty(As, "default", { enumerable: true, get: () => bb }); - var Jg = ar(lo()), Zg = ar(wu()), eb = ar(Su()), tb = ar(po()), rb = ar(Tu()), bf = ku(), mf = Eu(), nb = Pu(), ib = ar(Au()), ob = Iu(), sb = pf(), ab = vs(), ub = ar(hf()); + Object.defineProperty(Is, "__esModule", { value: true }); + Object.defineProperty(Is, "default", { enumerable: true, get: () => Eb }); + var sb = ar(fo()), ab = ar(ku()), ub = ar(Ou()), lb = ar(ho()), fb = ar(Au()), Sf = Iu(), xf = Ru(), cb = Lu(), db = ar(Mu()), pb = Nu(), hb = vf(), mb = ys(), gb = ar(yf()); function ar(e) { return e && e.__esModule ? e : { default: e }; } - function kr(e) { + function Er(e) { return typeof e == "function"; } function Sn(e) { @@ -16710,24 +16710,24 @@ var yf = U((As) => { } return e; } - var Ps = { colors: rb.default, negative(e) { + var As = { colors: fb.default, negative(e) { return Object.keys(e).filter((t) => e[t] !== "0").reduce((t, n) => { - let r = (0, Jg.default)(e[n]); + let r = (0, sb.default)(e[n]); return r !== void 0 && (t[`-${n}`] = r), t; }, {}); }, breakpoints(e) { return Object.keys(e).filter((t) => typeof e[t] == "string").reduce((t, n) => ({ ...t, [`screen-${n}`]: e[n] }), {}); } }; - function lb(e, ...t) { - return kr(e) ? e(...t) : e; + function bb(e, ...t) { + return Er(e) ? e(...t) : e; } - function fb(e) { + function vb(e) { return e.reduce((t, { extend: n }) => _n(t, n, (r, i) => r === void 0 ? [i] : Array.isArray(r) ? [i, ...r] : [i, r]), {}); } - function cb(e) { - return { ...e.reduce((t, n) => (0, bf.defaults)(t, n), {}), extend: fb(e) }; + function yb(e) { + return { ...e.reduce((t, n) => (0, Sf.defaults)(t, n), {}), extend: vb(e) }; } - function gf(e, t) { + function wf(e, t) { if (Array.isArray(e) && Sn(e[0])) return e.concat(t); if (Array.isArray(t) && Sn(t[0]) && Sn(e)) @@ -16735,38 +16735,38 @@ var yf = U((As) => { if (Array.isArray(t)) return t; } - function db({ extend: e, ...t }) { - return _n(t, e, (n, r) => !kr(n) && !r.some(kr) ? _n({}, n, ...r, gf) : (i, o) => _n({}, ...[n, ...r].map((s) => lb(s, i, o)), gf)); + function xb({ extend: e, ...t }) { + return _n(t, e, (n, r) => !Er(n) && !r.some(Er) ? _n({}, n, ...r, wf) : (i, o) => _n({}, ...[n, ...r].map((s) => bb(s, i, o)), wf)); } - function* pb(e) { - let t = (0, mf.toPath)(e); + function* wb(e) { + let t = (0, xf.toPath)(e); if (t.length === 0 || (yield t, Array.isArray(e))) return; let n = /^(.*?)\s*\/\s*([^/]+)$/, r = e.match(n); if (r !== null) { - let [, i, o] = r, s = (0, mf.toPath)(i); + let [, i, o] = r, s = (0, xf.toPath)(i); s.alpha = o, yield s; } } - function hb(e) { + function Sb(e) { let t = (n, r) => { - for (let i of pb(n)) { + for (let i of wb(n)) { let o = 0, s = e; for (; s != null && o < i.length; ) - s = s[i[o++]], s = kr(s) && (i.alpha === void 0 || o <= i.length - 1) ? s(t, Ps) : s; + s = s[i[o++]], s = Er(s) && (i.alpha === void 0 || o <= i.length - 1) ? s(t, As) : s; if (s !== void 0) { if (i.alpha !== void 0) { - let a = (0, sb.parseColorFormat)(s); - return (0, ab.withAlphaValue)(a, i.alpha, (0, ub.default)(a)); + let a = (0, hb.parseColorFormat)(s); + return (0, mb.withAlphaValue)(a, i.alpha, (0, gb.default)(a)); } - return (0, ib.default)(s) ? (0, ob.cloneDeep)(s) : s; + return (0, db.default)(s) ? (0, pb.cloneDeep)(s) : s; } } return r; }; - return Object.assign(t, { theme: t, ...Ps }), Object.keys(e).reduce((n, r) => (n[r] = kr(e[r]) ? e[r](t, Ps) : e[r], n), {}); + return Object.assign(t, { theme: t, ...As }), Object.keys(e).reduce((n, r) => (n[r] = Er(e[r]) ? e[r](t, As) : e[r], n), {}); } - function vf(e) { + function _f(e) { let t = []; return e.forEach((n) => { t = [...t, n]; @@ -16775,186 +16775,186 @@ var yf = U((As) => { i.length !== 0 && i.forEach((o) => { o.__isOptionsFunction && (o = o()); var s; - t = [...t, ...vf([(s = o == null ? void 0 : o.config) !== null && s !== void 0 ? s : {}])]; + t = [...t, ..._f([(s = o == null ? void 0 : o.config) !== null && s !== void 0 ? s : {}])]; }); }), t; } - function mb(e) { - return [...e].reduceRight((n, r) => kr(r) ? r({ corePlugins: n }) : (0, eb.default)(r, n), Zg.default); + function _b2(e) { + return [...e].reduceRight((n, r) => Er(r) ? r({ corePlugins: n }) : (0, ub.default)(r, n), ab.default); } - function gb(e) { + function Tb(e) { return [...e].reduceRight((n, r) => [...n, ...r], []); } - function bb(e) { - let t = [...vf(e), { prefix: "", important: false, separator: ":", variantOrder: tb.default.variantOrder }]; + function Eb(e) { + let t = [..._f(e), { prefix: "", important: false, separator: ":", variantOrder: lb.default.variantOrder }]; var n, r; - return (0, nb.normalizeConfig)((0, bf.defaults)({ theme: hb(db(cb(t.map((i) => (n = i == null ? void 0 : i.theme) !== null && n !== void 0 ? n : {})))), corePlugins: mb(t.map((i) => i.corePlugins)), plugins: gb(e.map((i) => (r = i == null ? void 0 : i.plugins) !== null && r !== void 0 ? r : [])) }, ...t)); + return (0, cb.normalizeConfig)((0, Sf.defaults)({ theme: Sb(xb(yb(t.map((i) => (n = i == null ? void 0 : i.theme) !== null && n !== void 0 ? n : {})))), corePlugins: _b2(t.map((i) => i.corePlugins)), plugins: Tb(e.map((i) => (r = i == null ? void 0 : i.plugins) !== null && r !== void 0 ? r : [])) }, ...t)); } }); -var xf = {}; -Wn(xf, { default: () => vb }); -var vb; -var wf = tr(() => { - vb = { yellow: (e) => e }; +var Ef = {}; +Wn(Ef, { default: () => kb }); +var kb; +var kf = tr(() => { + kb = { yellow: (e) => e }; }); -var kf = U((Is) => { +var If = q((Rs) => { "use strict"; - Object.defineProperty(Is, "__esModule", { value: true }); - function yb(e, t) { + Object.defineProperty(Rs, "__esModule", { value: true }); + function Ob(e, t) { for (var n in t) Object.defineProperty(e, n, { enumerable: true, get: t[n] }); } - yb(Is, { flagEnabled: () => Sb, issueFlagNotices: () => _b2, default: () => Tb }); - var xb = Tf((wf(), Fn(xf))), wb = Tf((ii(), Fn(ni))); - function Tf(e) { + Ob(Rs, { flagEnabled: () => Ib, issueFlagNotices: () => Rb, default: () => Cb }); + var Pb = Af((kf(), Fn(Ef))), Ab = Af((si(), Fn(oi))); + function Af(e) { return e && e.__esModule ? e : { default: e }; } - var Sf = { optimizeUniversalDefaults: false }, Tn = { future: ["hoverOnlyWhenSupported", "respectDefaultRingColorOpacity"], experimental: ["optimizeUniversalDefaults", "matchVariant"] }; - function Sb(e, t) { + var Of = { optimizeUniversalDefaults: false }, Tn = { future: ["hoverOnlyWhenSupported", "respectDefaultRingColorOpacity"], experimental: ["optimizeUniversalDefaults", "matchVariant"] }; + function Ib(e, t) { if (Tn.future.includes(t)) { var n, r, i; - return e.future === "all" || ((i = (r = e == null || (n = e.future) === null || n === void 0 ? void 0 : n[t]) !== null && r !== void 0 ? r : Sf[t]) !== null && i !== void 0 ? i : false); + return e.future === "all" || ((i = (r = e == null || (n = e.future) === null || n === void 0 ? void 0 : n[t]) !== null && r !== void 0 ? r : Of[t]) !== null && i !== void 0 ? i : false); } if (Tn.experimental.includes(t)) { var o, s, a; - return e.experimental === "all" || ((a = (s = e == null || (o = e.experimental) === null || o === void 0 ? void 0 : o[t]) !== null && s !== void 0 ? s : Sf[t]) !== null && a !== void 0 ? a : false); + return e.experimental === "all" || ((a = (s = e == null || (o = e.experimental) === null || o === void 0 ? void 0 : o[t]) !== null && s !== void 0 ? s : Of[t]) !== null && a !== void 0 ? a : false); } return false; } - function _f(e) { + function Pf(e) { if (e.experimental === "all") return Tn.experimental; var t; return Object.keys((t = e == null ? void 0 : e.experimental) !== null && t !== void 0 ? t : {}).filter((n) => Tn.experimental.includes(n) && e.experimental[n]); } - function _b2(e) { - if (process.env.JEST_WORKER_ID === void 0 && _f(e).length > 0) { - let t = _f(e).map((n) => xb.default.yellow(n)).join(", "); - wb.default.warn("experimental-flags-enabled", [`You have enabled experimental features: ${t}`, "Experimental features in Tailwind CSS are not covered by semver, may introduce breaking changes, and can change at any time."]); + function Rb(e) { + if (process.env.JEST_WORKER_ID === void 0 && Pf(e).length > 0) { + let t = Pf(e).map((n) => Pb.default.yellow(n)).join(", "); + Ab.default.warn("experimental-flags-enabled", [`You have enabled experimental features: ${t}`, "Experimental features in Tailwind CSS are not covered by semver, may introduce breaking changes, and can change at any time."]); } } - var Tb = Tn; + var Cb = Tn; }); -var Of = U((Rs) => { +var Cf = q((Cs) => { "use strict"; - Object.defineProperty(Rs, "__esModule", { value: true }); - Object.defineProperty(Rs, "default", { enumerable: true, get: () => Ef }); - var kb = Ob(po()), Eb = kf(); - function Ob(e) { + Object.defineProperty(Cs, "__esModule", { value: true }); + Object.defineProperty(Cs, "default", { enumerable: true, get: () => Rf }); + var Lb = Nb(ho()), Mb = If(); + function Nb(e) { return e && e.__esModule ? e : { default: e }; } - function Ef(e) { + function Rf(e) { var t; - let n = ((t = e == null ? void 0 : e.presets) !== null && t !== void 0 ? t : [kb.default]).slice().reverse().flatMap((o) => Ef(typeof o == "function" ? o() : o)), r = { respectDefaultRingColorOpacity: { theme: { ringColor: { DEFAULT: "#3b82f67f" } } } }, i = Object.keys(r).filter((o) => (0, Eb.flagEnabled)(e, o)).map((o) => r[o]); + let n = ((t = e == null ? void 0 : e.presets) !== null && t !== void 0 ? t : [Lb.default]).slice().reverse().flatMap((o) => Rf(typeof o == "function" ? o() : o)), r = { respectDefaultRingColorOpacity: { theme: { ringColor: { DEFAULT: "#3b82f67f" } } } }, i = Object.keys(r).filter((o) => (0, Mb.flagEnabled)(e, o)).map((o) => r[o]); return [e, ...i, ...n]; } }); -var Af = U((Cs) => { +var Mf = q((Ls) => { "use strict"; - Object.defineProperty(Cs, "__esModule", { value: true }); - Object.defineProperty(Cs, "default", { enumerable: true, get: () => Ib }); - var Pb = Pf(yf()), Ab = Pf(Of()); - function Pf(e) { + Object.defineProperty(Ls, "__esModule", { value: true }); + Object.defineProperty(Ls, "default", { enumerable: true, get: () => Db }); + var Wb = Lf(Tf()), Fb = Lf(Cf()); + function Lf(e) { return e && e.__esModule ? e : { default: e }; } - function Ib(...e) { - let [, ...t] = (0, Ab.default)(e[0]); - return (0, Pb.default)([...e, ...t]); + function Db(...e) { + let [, ...t] = (0, Fb.default)(e[0]); + return (0, Wb.default)([...e, ...t]); } }); -var Rf = U((S1, If) => { - var Ls = Af(); - If.exports = (Ls.__esModule ? Ls : { default: Ls }).default; +var Wf = q((M1, Nf) => { + var Ms = Mf(); + Nf.exports = (Ms.__esModule ? Ms : { default: Ms }).default; }); var Lr = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports); -var mc = Lr((e, t) => { +var xc = Lr((e, t) => { t.exports = ["em", "ex", "ch", "rem", "vh", "vw", "vmin", "vmax", "px", "mm", "cm", "in", "pt", "pc", "mozmm"]; }); -var gc = Lr((e, t) => { +var wc = Lr((e, t) => { t.exports = ["deg", "grad", "rad", "turn"]; }); -var bc = Lr((e, t) => { +var Sc = Lr((e, t) => { t.exports = ["dpi", "dpcm", "dppx"]; }); -var vc = Lr((e, t) => { +var _c = Lr((e, t) => { t.exports = ["Hz", "kHz"]; }); -var yc = Lr((e, t) => { +var Tc = Lr((e, t) => { t.exports = ["s", "ms"]; }); -var xc = mc(); -var ia = gc(); -var oa = bc(); -var sa = vc(); -var aa = yc(); -function ki(e) { +var Ec = xc(); +var oa = wc(); +var sa = Sc(); +var aa = _c(); +var ua = Tc(); +function Oi(e) { if (/\.\D?$/.test(e)) throw new Error("The dot should be followed by a number"); if (/^[+-]{2}/.test(e)) throw new Error("Only one leading +/- is allowed"); - if (wc(e) > 1) + if (kc(e) > 1) throw new Error("Only one dot is allowed"); if (/%$/.test(e)) { - this.type = "percentage", this.value = Ti(e), this.unit = "%"; + this.type = "percentage", this.value = ki(e), this.unit = "%"; return; } - var t = _c(e); + var t = Pc(e); if (!t) { - this.type = "number", this.value = Ti(e); + this.type = "number", this.value = ki(e); return; } - this.type = kc(t), this.value = Ti(e.substr(0, e.length - t.length)), this.unit = t; + this.type = Ic(t), this.value = ki(e.substr(0, e.length - t.length)), this.unit = t; } -ki.prototype.valueOf = function() { +Oi.prototype.valueOf = function() { return this.value; }; -ki.prototype.toString = function() { +Oi.prototype.toString = function() { return this.value + (this.unit || ""); }; function xt(e) { - return new ki(e); + return new Oi(e); } -function wc(e) { +function kc(e) { var t = e.match(/\./g); return t ? t.length : 0; } -function Ti(e) { +function ki(e) { var t = parseFloat(e); if (isNaN(t)) throw new Error("Invalid number: " + e); return t; } -var Sc = [].concat(ia, sa, xc, oa, aa); -function _c(e) { +var Oc = [].concat(oa, aa, Ec, sa, ua); +function Pc(e) { var t = e.match(/\D+$/), n = t && t[0]; - if (n && Sc.indexOf(n) === -1) + if (n && Oc.indexOf(n) === -1) throw new Error("Invalid unit: " + n); return n; } -var Tc = Object.assign(Dn(ia, "angle"), Dn(sa, "frequency"), Dn(oa, "resolution"), Dn(aa, "time")); +var Ac = Object.assign(Dn(oa, "angle"), Dn(aa, "frequency"), Dn(sa, "resolution"), Dn(ua, "time")); function Dn(e, t) { return Object.fromEntries(e.map((n) => [n, t])); } -function kc(e) { - return Tc[e] || "length"; +function Ic(e) { + return Ac[e] || "length"; } function mr(e) { let t = typeof e; return !(t === "number" || t === "bigint" || t === "string" || t === "boolean"); } -function ua(e) { +function la(e) { return /^class\s/.test(e.toString()); } -function Pi(e) { +function Ii(e) { return e && e.$$typeof === Symbol.for("react.forward_ref"); } -function la(e) { - return typeof e == "function" || Pi(e); -} function fa(e) { - return "dangerouslySetInnerHTML" in e; + return typeof e == "function" || Ii(e); } function ca(e) { + return "dangerouslySetInnerHTML" in e; +} +function da(e) { let t = typeof e > "u" ? [] : [].concat(e).flat(1 / 0), n = []; for (let r = 0; r < t.length; r++) { let i = t[r]; @@ -16986,14 +16986,14 @@ function X(e, t, n, r, i = false) { } else { if (o.type === "angle") - return Ai(e); + return Ri(e); if (o.type === "percentage" && i) return o.value / 100 * n; } } catch { } } -function Ai(e) { +function Ri(e) { let t = new xt(e); switch (t.unit) { case "deg": @@ -17018,25 +17018,25 @@ function He(e, t, n, r) { } return i; } -var Ei; -var Oi; -var da = [32, 160, 4961, 65792, 65793, 4153, 4241, 10].map((e) => String.fromCodePoint(e)); +var Pi; +var Ai; +var pa = [32, 160, 4961, 65792, 65793, 4153, 4241, 10].map((e) => String.fromCodePoint(e)); var hr = /* @__PURE__ */ new Map(); -var Oc = 500; +var Cc = 500; function Ve(e, t, n) { let r = `${t}:${n || ""}:${e}`; if (hr.has(r)) return hr.get(r); - if (!Ei || !Oi) { + if (!Pi || !Ai) { if (!(typeof Intl < "u" && "Segmenter" in Intl)) throw new Error("Intl.Segmenter does not exist, please use import a polyfill."); - Ei = new Intl.Segmenter(n, { granularity: "word" }), Oi = new Intl.Segmenter(n, { granularity: "grapheme" }); + Pi = new Intl.Segmenter(n, { granularity: "word" }), Ai = new Intl.Segmenter(n, { granularity: "grapheme" }); } let i; if (t === "grapheme") - i = [...Oi.segment(e)].map((o) => o.segment); + i = [...Ai.segment(e)].map((o) => o.segment); else { - let o = [...Ei.segment(e)].map((u2) => u2.segment), s = [], a = 0; + let o = [...Pi.segment(e)].map((u2) => u2.segment), s = [], a = 0; for (; a < o.length; ) { let u2 = o[a]; if (u2 == "\xA0") { @@ -17047,7 +17047,7 @@ function Ve(e, t, n) { } i = s; } - if (hr.size >= Oc) { + if (hr.size >= Cc) { let o = hr.keys().next().value; hr.delete(o); } @@ -17059,7 +17059,7 @@ function M(e, t, n) { typeof o < "u" && (r += ` ${i}="${o}"`); return n ? `<${e}${r}>${n}` : `<${e}${r}/>`; } -function pa(e = 20) { +function ha(e = 20) { let t = /* @__PURE__ */ new Map(); function n(o) { let s = t.get(o); @@ -17083,13 +17083,13 @@ function pa(e = 20) { function gr(e) { return e ? e.split(/[, ]/).filter(Boolean).map(Number) : null; } -function Bn(e) { +function $n(e) { return typeof e == "string"; } -function ha(e) { +function ma(e) { return typeof e == "number"; } -function ma(e) { +function ga(e) { return typeof e > "u"; } function Mt(e, t) { @@ -17105,7 +17105,7 @@ function Mt(e, t) { } console.warn(`Invalid value "${e}"${typeof t == "string" ? ` for "${t}"` : ""}. Expected a number or a percentage value (e.g., "50%").`); } -function Ut(e, t) { +function qt(e, t) { if (typeof e == "number") return e; if (e === "auto") @@ -17120,7 +17120,7 @@ function Ut(e, t) { } console.warn(`Invalid value "${e}"${typeof t == "string" ? ` for "${t}"` : ""}. Expected a number, "auto", or a percentage value (e.g., "50%").`); } -function ga(e, t) { +function ba(e, t) { if (t === "break-all") return { words: Ve(e, "grapheme"), requiredBreaks: [] }; if (t === "keep-all") @@ -17132,28 +17132,68 @@ function ga(e, t) { } return { words: o, requiredBreaks: s }; } -var ba = (e) => e.replaceAll(/([A-Z])/g, (t, n) => `-${n.toLowerCase()}`); -function $n(e, t = ",") { +var va = (e) => e.replaceAll(/([A-Z])/g, (t, n) => `-${n.toLowerCase()}`); +function Bn(e, t = ",") { let n = [], r = 0, i = 0; t = new RegExp(t); for (let o = 0; o < e.length; o++) e[o] === "(" ? i++ : e[o] === ")" && i--, i === 0 && t.test(e[o]) && (n.push(e.slice(r, o).trim()), r = o + 1); return n.push(e.slice(r).trim()), n; } -function Wc(e) { - return Promise.resolve().then(() => (Bi(), Di)).then((t) => t.init(e)); +function Uc(e) { + return Promise.resolve().then(() => (Ui(), Bi)).then((t) => t.init(e)); } -function Gt() { - return Promise.resolve().then(() => (Bi(), Di)).then((e) => e.getYoga()); +function zt() { + return Promise.resolve().then(() => (Ui(), Bi)).then((e) => e.getYoga()); } -var Fc = "image/avif"; -var Dc = "image/webp"; -var Gn = "image/apng"; -var zn = "image/png"; -var jn = "image/jpeg"; -var Vn = "image/gif"; -var $i = "image/svg+xml"; +var Ia = Symbol.for("react.fragment"); +var qc = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; function Ra(e) { + let t = e.split(".").map((o) => Number.parseInt(o, 10)); + if (t.length !== 4 || t.some((o) => !Number.isInteger(o) || o < 0 || o > 255)) + return true; + let [n, r, i] = t; + return n === 0 || n === 10 || n === 100 && r >= 64 && r <= 127 || n === 127 || n === 169 && r === 254 || n === 172 && r >= 16 && r <= 31 || n === 192 && r === 0 && i === 0 || n === 192 && r === 168 || n === 198 && (r === 18 || r === 19) || n >= 224; +} +function zc(e) { + let t = e.match(/^(?:::ffff:|64:ff9b::|::)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/); + if (t) + return t[1]; + let n = e.match(/^(?:::ffff:|64:ff9b::|::)([0-9a-f]{1,4}):([0-9a-f]{1,4})$/); + if (n) { + let r = Number.parseInt(n[1], 16), i = Number.parseInt(n[2], 16); + return `${r >> 8 & 255}.${r & 255}.${i >> 8 & 255}.${i & 255}`; + } + return null; +} +function Gc(e) { + let t = zc(e); + return t ? Ra(t) : !!(e === "::" || e === "::1" || e.startsWith("fc") || e.startsWith("fd") || /^fe[89ab]/.test(e) || /^fe[c-f]/.test(e) || e.startsWith("ff") || /^2001:0?db8(?::|$)/.test(e)); +} +function jc(e) { + let t; + try { + t = new URL(e); + } catch { + return true; + } + if (t.protocol !== "http:" && t.protocol !== "https:") + return true; + let n = t.hostname.toLowerCase(); + return n.startsWith("[") && n.endsWith("]") && (n = n.slice(1, -1)), n === "localhost" || n.endsWith(".localhost") || n.endsWith(".local") ? true : qc.test(n) ? Ra(n) : n.includes(":") ? Gc(n) : false; +} +function Ca(e) { + if (jc(e)) + throw new Error(`Image source resolves to a blocked address (SSRF protection): ${e}`); +} +var Vc = "image/avif"; +var zn = "image/webp"; +var Gn = "image/apng"; +var jn = "image/png"; +var Vn = "image/jpeg"; +var Hn = "image/gif"; +var qi = "image/svg+xml"; +function Na(e) { let t = new DataView(e), n = 4, r = t.byteLength; for (; n < r; ) { let i = t.getUint16(n, false); @@ -17166,22 +17206,57 @@ function Ra(e) { } throw new TypeError("Invalid JPEG"); } -function Ca(e) { +function Wa(e) { + let t = new DataView(e), n = new Uint8Array(e); + if (t.byteLength < 20 || t.getUint32(0) !== 1380533830 || t.getUint32(8) !== 1464156752) + throw new TypeError("Invalid WebP"); + let r = t.getUint32(4, true) + 8; + if (r < 20 || r > t.byteLength) + throw new TypeError("Invalid WebP"); + let i = 12; + for (; i + 8 <= r; ) { + let o = t.getUint32(i), s = t.getUint32(i + 4, true), a = i + 8, u2 = a + s; + if (u2 > r) + throw new TypeError("Invalid WebP"); + if (o === 1448097824) { + if (s < 10 || n[a + 3] !== 157 || n[a + 4] !== 1 || n[a + 5] !== 42) + throw new TypeError("Invalid WebP"); + let f = t.getUint16(a + 6, true) & 16383, l2 = t.getUint16(a + 8, true) & 16383; + if (!f || !l2) + throw new TypeError("Invalid WebP"); + return [f, l2]; + } + if (o === 1448097868) { + if (s < 5 || n[a] !== 47) + throw new TypeError("Invalid WebP"); + let f = t.getUint32(a + 1, true); + return [(f & 16383) + 1, (f >>> 14 & 16383) + 1]; + } + if (o === 1448097880) { + if (s < 10) + throw new TypeError("Invalid WebP"); + return [n[a + 4] + (n[a + 5] << 8) + (n[a + 6] << 16) + 1, n[a + 7] + (n[a + 8] << 8) + (n[a + 9] << 16) + 1]; + } + i = u2 + s % 2; + } + throw new TypeError("Invalid WebP"); +} +function Fa(e) { let t = new Uint8Array(e.slice(6, 10)); return [t[0] | t[1] << 8, t[2] | t[3] << 8]; } -function La(e) { +function Da(e) { let t = new DataView(e); return [t.getUint16(18, false), t.getUint16(22, false)]; } -var Ot = pa(500); +var Ot = ha(500); var Wr = /* @__PURE__ */ new Map(); -var Bc = [zn, Gn, jn, Vn, $i]; -var $c = /]*>/i; -var qc = /viewBox=['"]([^'"]+)['"]/; -var Uc = /width=['"](\d*\.?\d+)['"]/; -var Gc = /height=['"](\d*\.?\d+)['"]/; -function zc(e) { +var Hc = [jn, Gn, Vn, Hn, qi, zn]; +var Yc = /]*>/i; +var Xc = /viewBox=['"]([^'"]+)['"]/; +var Qc = /width=['"](\d*\.?\d+)['"]/; +var Kc = /height=['"](\d*\.?\d+)['"]/; +function Jc(e) { let t = new Uint8Array(e), n = 32768, r = ""; for (let i = 0; i < t.length; i += n) { let o = t.subarray(i, Math.min(i + n, t.length)); @@ -17189,45 +17264,48 @@ function zc(e) { } return btoa(r); } -function jc(e) { +function Zc(e) { let t = atob(e), n = t.length, r = new Uint8Array(n); for (let i = 0; i < n; i++) r[i] = t.charCodeAt(i); return r.buffer; } -function Aa(e, t) { - let n = t.match($c); +function La(e, t) { + let n = t.match(Yc); if (!n) throw new Error(`Failed to parse SVG from ${e}`); - let r = n[0], i = qc.exec(r), o = Uc.exec(r), s = Gc.exec(r), a = i ? gr(i[1]) : null; + let r = n[0], i = Xc.exec(r), o = Qc.exec(r), s = Kc.exec(r), a = i ? gr(i[1]) : null; if (!a && (!o || !s)) throw new Error(`Failed to parse SVG from ${e}: missing "viewBox"`); let u2 = a ? [a[2], a[3]] : [+o[1], +s[1]], f = u2[0] / u2[1]; return o && s ? [+o[1], +s[1]] : o ? [+o[1], +o[1] / f] : s ? [+s[1] * f, +s[1]] : [u2[0], u2[1]]; } -function Ia(e) { - let t, n = Vc(new Uint8Array(e)); +function Ma(e) { + let t, n = ed(new Uint8Array(e)); switch (n) { - case zn: + case jn: case Gn: - t = La(e); + t = Da(e); + break; + case Hn: + t = Fa(e); break; case Vn: - t = Ca(e); + t = Na(e); break; - case jn: - t = Ra(e); + case zn: + t = Wa(e); break; } - if (!Bc.includes(n)) + if (!Hc.includes(n)) throw new Error(`Unsupported image type: ${n || "unknown"}`); - return [`data:${n};base64,${zc(e)}`, t]; + return [`data:${n};base64,${Jc(e)}`, t]; } async function xr(e) { if (!e) throw new Error("Image source is not provided."); if (typeof e == "object") { - let [i, o] = Ia(e); + let [i, o] = Ma(e); return [i, ...o]; } if ((e.startsWith('"') && e.endsWith('"') || e.startsWith("'") && e.endsWith("'")) && (e = e.slice(1, -1)), typeof window > "u" && !e.startsWith("http") && !e.startsWith("data:")) @@ -17240,21 +17318,24 @@ async function xr(e) { return console.warn("Image data URI resolved without size:" + e), [e]; } let { imageType: o, encodingType: s, dataString: a } = i; - if (o === $i) { - let u2 = s === "base64" ? atob(a) : decodeURIComponent(a.replace(/ /g, "%20")), f = s === "base64" ? e : `data:image/svg+xml;base64,${btoa(u2)}`, l2 = Aa(e, u2); + if (o === qi) { + let u2 = s === "base64" ? atob(a) : decodeURIComponent(a.replace(/ /g, "%20")), f = s === "base64" ? e : `data:image/svg+xml;base64,${btoa(u2)}`, l2 = La(e, u2); return Ot.set(e, [f, ...l2]), [f, ...l2]; } else if (s === "base64") { - let u2, f = jc(a); + let u2, f = Zc(a); switch (o) { - case zn: + case jn: case Gn: - u2 = La(f); + u2 = Da(f); + break; + case Hn: + u2 = Fa(f); break; case Vn: - u2 = Ca(f); + u2 = Na(f); break; - case jn: - u2 = Ra(f); + case zn: + u2 = Wa(f); break; } return Ot.set(e, [e, ...u2]), [e, ...u2]; @@ -17268,26 +17349,28 @@ async function xr(e) { let t = Ot.get(e); if (t) return t; - let n = e, r = fetch(n).then((i) => { + let n = e; + typeof window > "u" && Ca(n); + let r = fetch(n).then((i) => { let o = i.headers.get("content-type"); return o === "image/svg+xml" || o === "application/svg+xml" ? i.text() : i.arrayBuffer(); }).then((i) => { if (typeof i == "string") try { - let a = `data:image/svg+xml;base64,${btoa(i)}`, u2 = Aa(n, i); + let a = `data:image/svg+xml;base64,${btoa(i)}`, u2 = La(n, i); return [a, ...u2]; } catch (a) { throw new Error(`Failed to parse SVG image: ${a.message}`); } - let [o, s] = Ia(i); + let [o, s] = Ma(i); return [o, ...s]; }).then((i) => (Ot.set(n, i), i)).catch((i) => (console.error(`Can't load image ${n}: ` + i.message), Ot.set(n, []), [])); return Wr.set(n, r), r; } -function Vc(e) { - return [255, 216, 255].every((t, n) => e[n] === t) ? jn : [137, 80, 78, 71, 13, 10, 26, 10].every((t, n) => e[n] === t) ? Hc(e) ? Gn : zn : [71, 73, 70, 56].every((t, n) => e[n] === t) ? Vn : [82, 73, 70, 70, 0, 0, 0, 0, 87, 69, 66, 80].every((t, n) => !t || e[n] === t) ? Dc : [60, 63, 120, 109, 108].every((t, n) => e[n] === t) ? $i : [0, 0, 0, 0, 102, 116, 121, 112, 97, 118, 105, 102].every((t, n) => !t || e[n] === t) ? Fc : null; +function ed(e) { + return [255, 216, 255].every((t, n) => e[n] === t) ? Vn : [137, 80, 78, 71, 13, 10, 26, 10].every((t, n) => e[n] === t) ? td2(e) ? Gn : jn : [71, 73, 70, 56].every((t, n) => e[n] === t) ? Hn : [82, 73, 70, 70, 0, 0, 0, 0, 87, 69, 66, 80].every((t, n) => !t || e[n] === t) ? zn : [60, 63, 120, 109, 108].every((t, n) => e[n] === t) ? qi : [0, 0, 0, 0, 102, 116, 121, 112, 97, 118, 105, 102].every((t, n) => !t || e[n] === t) ? Vc : null; } -function Hc(e) { +function td2(e) { let t = new DataView(e.buffer), n, r, i = 8, o = false; for (; !o && n !== "IEND" && i < e.length; ) { r = t.getUint32(i); @@ -17296,22 +17379,22 @@ function Hc(e) { } return o; } -var qi = { accentHeight: "accent-height", alignmentBaseline: "alignment-baseline", arabicForm: "arabic-form", baselineShift: "baseline-shift", capHeight: "cap-height", clipPath: "clip-path", clipRule: "clip-rule", colorInterpolation: "color-interpolation", colorInterpolationFilters: "color-interpolation-filters", colorProfile: "color-profile", colorRendering: "color-rendering", dominantBaseline: "dominant-baseline", enableBackground: "enable-background", fillOpacity: "fill-opacity", fillRule: "fill-rule", floodColor: "flood-color", floodOpacity: "flood-opacity", fontFamily: "font-family", fontSize: "font-size", fontSizeAdjust: "font-size-adjust", fontStretch: "font-stretch", fontStyle: "font-style", fontVariant: "font-variant", fontWeight: "font-weight", glyphName: "glyph-name", glyphOrientationHorizontal: "glyph-orientation-horizontal", glyphOrientationVertical: "glyph-orientation-vertical", horizAdvX: "horiz-adv-x", horizOriginX: "horiz-origin-x", href: "href", imageRendering: "image-rendering", letterSpacing: "letter-spacing", lightingColor: "lighting-color", markerEnd: "marker-end", markerMid: "marker-mid", markerStart: "marker-start", overlinePosition: "overline-position", overlineThickness: "overline-thickness", paintOrder: "paint-order", panose1: "panose-1", pointerEvents: "pointer-events", renderingIntent: "rendering-intent", shapeRendering: "shape-rendering", stopColor: "stop-color", stopOpacity: "stop-opacity", strikethroughPosition: "strikethrough-position", strikethroughThickness: "strikethrough-thickness", strokeDasharray: "stroke-dasharray", strokeDashoffset: "stroke-dashoffset", strokeLinecap: "stroke-linecap", strokeLinejoin: "stroke-linejoin", strokeMiterlimit: "stroke-miterlimit", strokeOpacity: "stroke-opacity", strokeWidth: "stroke-width", textAnchor: "text-anchor", textDecoration: "text-decoration", textRendering: "text-rendering", underlinePosition: "underline-position", underlineThickness: "underline-thickness", unicodeBidi: "unicode-bidi", unicodeRange: "unicode-range", unitsPerEm: "units-per-em", vAlphabetic: "v-alphabetic", vHanging: "v-hanging", vIdeographic: "v-ideographic", vMathematical: "v-mathematical", vectorEffect: "vector-effect", vertAdvY: "vert-adv-y", vertOriginX: "vert-origin-x", vertOriginY: "vert-origin-y", wordSpacing: "word-spacing", writingMode: "writing-mode", xHeight: "x-height", xlinkActuate: "xlink:actuate", xlinkArcrole: "xlink:arcrole", xlinkHref: "xlink:href", xlinkRole: "xlink:role", xlinkShow: "xlink:show", xlinkTitle: "xlink:title", xlinkType: "xlink:type", xmlBase: "xml:base", xmlLang: "xml:lang", xmlSpace: "xml:space", xmlnsXlink: "xmlns:xlink" }; -var Yc = /[\r\n%#()<>?[\\\]^`{|}"']/g; -function Ui(e, t) { +var zi = { accentHeight: "accent-height", alignmentBaseline: "alignment-baseline", arabicForm: "arabic-form", baselineShift: "baseline-shift", capHeight: "cap-height", clipPath: "clip-path", clipRule: "clip-rule", colorInterpolation: "color-interpolation", colorInterpolationFilters: "color-interpolation-filters", colorProfile: "color-profile", colorRendering: "color-rendering", dominantBaseline: "dominant-baseline", enableBackground: "enable-background", fillOpacity: "fill-opacity", fillRule: "fill-rule", floodColor: "flood-color", floodOpacity: "flood-opacity", fontFamily: "font-family", fontSize: "font-size", fontSizeAdjust: "font-size-adjust", fontStretch: "font-stretch", fontStyle: "font-style", fontVariant: "font-variant", fontWeight: "font-weight", glyphName: "glyph-name", glyphOrientationHorizontal: "glyph-orientation-horizontal", glyphOrientationVertical: "glyph-orientation-vertical", horizAdvX: "horiz-adv-x", horizOriginX: "horiz-origin-x", href: "href", imageRendering: "image-rendering", letterSpacing: "letter-spacing", lightingColor: "lighting-color", markerEnd: "marker-end", markerMid: "marker-mid", markerStart: "marker-start", overlinePosition: "overline-position", overlineThickness: "overline-thickness", paintOrder: "paint-order", panose1: "panose-1", pointerEvents: "pointer-events", renderingIntent: "rendering-intent", shapeRendering: "shape-rendering", stopColor: "stop-color", stopOpacity: "stop-opacity", strikethroughPosition: "strikethrough-position", strikethroughThickness: "strikethrough-thickness", strokeDasharray: "stroke-dasharray", strokeDashoffset: "stroke-dashoffset", strokeLinecap: "stroke-linecap", strokeLinejoin: "stroke-linejoin", strokeMiterlimit: "stroke-miterlimit", strokeOpacity: "stroke-opacity", strokeWidth: "stroke-width", textAnchor: "text-anchor", textDecoration: "text-decoration", textRendering: "text-rendering", underlinePosition: "underline-position", underlineThickness: "underline-thickness", unicodeBidi: "unicode-bidi", unicodeRange: "unicode-range", unitsPerEm: "units-per-em", vAlphabetic: "v-alphabetic", vHanging: "v-hanging", vIdeographic: "v-ideographic", vMathematical: "v-mathematical", vectorEffect: "vector-effect", vertAdvY: "vert-adv-y", vertOriginX: "vert-origin-x", vertOriginY: "vert-origin-y", wordSpacing: "word-spacing", writingMode: "writing-mode", xHeight: "x-height", xlinkActuate: "xlink:actuate", xlinkArcrole: "xlink:arcrole", xlinkHref: "xlink:href", xlinkRole: "xlink:role", xlinkShow: "xlink:show", xlinkTitle: "xlink:title", xlinkType: "xlink:type", xmlBase: "xml:base", xmlLang: "xml:lang", xmlSpace: "xml:space", xmlnsXlink: "xmlns:xlink" }; +var rd = /[\r\n%#()<>?[\\\]^`{|}"']/g; +function Yn(e, t) { if (!e) return ""; if (Array.isArray(e)) - return e.map((f) => Ui(f, t)).join(""); + return e.map((f) => Yn(f, t)).join(""); if (typeof e != "object") return String(e); let n = e.type; if (n === "text") throw new Error(" nodes are not currently supported, please convert them to "); - let { children: r, style: i, ...o } = e.props || {}, s = (i == null ? void 0 : i.color) || t, a = `${Object.entries(o).map(([f, l2]) => (typeof l2 == "string" && l2.toLowerCase() === "currentcolor" && (l2 = s), (f === "href" || f === "xlinkHref") && n === "image" ? ` ${qi[f] || f}="${Ot.get(l2)[0]}"` : ` ${qi[f] || f}="${l2}"`)).join("")}`, u2 = i ? ` style="${Object.entries(i).map(([f, l2]) => `${ba(f)}:${l2}`).join(";")}"` : ""; - return `<${n}${a}${u2}>${Ui(r, s)}`; + let { children: r, style: i, ...o } = e.props || {}, s = (i == null ? void 0 : i.color) || t, a = `${Object.entries(o).map(([f, l2]) => (typeof l2 == "string" && l2.toLowerCase() === "currentcolor" && (l2 = s), (f === "href" || f === "xlinkHref") && n === "image" ? ` ${zi[f] || f}="${Ot.get(l2)[0]}"` : ` ${zi[f] || f}="${l2}"`)).join("")}`, u2 = i ? ` style="${Object.entries(i).map(([f, l2]) => `${va(f)}:${l2}`).join(";")}"` : ""; + return n === Ia ? Yn(r, s) : `<${n}${a}${u2}>${Yn(r, s)}`; } -async function Ma(e) { +async function $a(e) { let t = /* @__PURE__ */ new Set(), n = (r) => { if (r && mr(r)) { if (Array.isArray(r)) { @@ -17328,22 +17411,22 @@ async function Ma(e) { }; return n(e), Promise.all(Array.from(t).map((r) => xr(r))); } -async function Na(e, t) { +async function Ba(e, t) { let { viewBox: n, viewbox: r, width: i, height: o, className: s, style: a, children: u2, ...f } = e.props || {}; n ||= r, f.xmlns = "http://www.w3.org/2000/svg"; let l2 = (a == null ? void 0 : a.color) || t, p = gr(n), h2 = p ? p[3] / p[2] : null; - return i = i || h2 && o ? o / h2 : null, o = o || h2 && i ? i * h2 : null, f.width = i, f.height = o, n && (f.viewBox = n), `data:image/svg+xml;utf8,${` (typeof b == "string" && b.toLowerCase() === "currentcolor" && (b = l2), ` ${qi[m2] || m2}="${b}"`)).join("")}>${Ui(u2, l2)}`.replace(Yc, encodeURIComponent)}`; + return i = i || h2 && o ? o / h2 : null, o = o || h2 && i ? i * h2 : null, f.width = i, f.height = o, n && (f.viewBox = n), `data:image/svg+xml;utf8,${` (typeof b == "string" && b.toLowerCase() === "currentcolor" && (b = l2), ` ${zi[m2] || m2}="${b}"`)).join("")}>${Yn(u2, l2)}`.replace(rd, encodeURIComponent)}`; } var at = "flex"; -var Wa = { p: { display: at, marginTop: "1em", marginBottom: "1em" }, div: { display: at }, blockquote: { display: at, marginTop: "1em", marginBottom: "1em", marginLeft: 40, marginRight: 40 }, center: { display: at, textAlign: "center" }, hr: { display: at, marginTop: "0.5em", marginBottom: "0.5em", marginLeft: "auto", marginRight: "auto", borderWidth: 1, borderStyle: "solid" }, h1: { display: at, fontSize: "2em", marginTop: "0.67em", marginBottom: "0.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h2: { display: at, fontSize: "1.5em", marginTop: "0.83em", marginBottom: "0.83em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h3: { display: at, fontSize: "1.17em", marginTop: "1em", marginBottom: "1em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h4: { display: at, marginTop: "1.33em", marginBottom: "1.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h5: { display: at, fontSize: "0.83em", marginTop: "1.67em", marginBottom: "1.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h6: { display: at, fontSize: "0.67em", marginTop: "2.33em", marginBottom: "2.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, u: { textDecoration: "underline" }, strong: { fontWeight: "bold" }, b: { fontWeight: "bold" }, i: { fontStyle: "italic" }, em: { fontStyle: "italic" }, code: { fontFamily: "monospace" }, kbd: { fontFamily: "monospace" }, pre: { display: at, fontFamily: "monospace", whiteSpace: "pre", marginTop: "1em", marginBottom: "1em" }, mark: { backgroundColor: "yellow", color: "black" }, big: { fontSize: "larger" }, small: { fontSize: "smaller" }, s: { textDecoration: "line-through" } }; -var Xc = /* @__PURE__ */ new Set(["color", "font", "fontFamily", "fontSize", "fontStyle", "fontWeight", "letterSpacing", "lineHeight", "textAlign", "textIndent", "textTransform", "textShadowOffset", "textShadowColor", "textShadowRadius", "WebkitTextStrokeWidth", "WebkitTextStrokeColor", "textDecorationLine", "textDecorationStyle", "textDecorationColor", "textDecorationSkipInk", "whiteSpace", "transform", "wordBreak", "tabSize", "opacity", "filter", "_viewportWidth", "_viewportHeight", "_inheritedClipPathId", "_inheritedMaskId", "_inheritedBackgroundClipTextPath", "_inheritedBackgroundClipTextHasBackground"]); +var Ua = { p: { display: at, marginTop: "1em", marginBottom: "1em" }, div: { display: at }, blockquote: { display: at, marginTop: "1em", marginBottom: "1em", marginLeft: 40, marginRight: 40 }, center: { display: at, textAlign: "center" }, hr: { display: at, marginTop: "0.5em", marginBottom: "0.5em", marginLeft: "auto", marginRight: "auto", borderWidth: 1, borderStyle: "solid" }, h1: { display: at, fontSize: "2em", marginTop: "0.67em", marginBottom: "0.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h2: { display: at, fontSize: "1.5em", marginTop: "0.83em", marginBottom: "0.83em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h3: { display: at, fontSize: "1.17em", marginTop: "1em", marginBottom: "1em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h4: { display: at, marginTop: "1.33em", marginBottom: "1.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h5: { display: at, fontSize: "0.83em", marginTop: "1.67em", marginBottom: "1.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h6: { display: at, fontSize: "0.67em", marginTop: "2.33em", marginBottom: "2.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, u: { textDecoration: "underline" }, strong: { fontWeight: "bold" }, b: { fontWeight: "bold" }, i: { fontStyle: "italic" }, em: { fontStyle: "italic" }, code: { fontFamily: "monospace" }, kbd: { fontFamily: "monospace" }, pre: { display: at, fontFamily: "monospace", whiteSpace: "pre", marginTop: "1em", marginBottom: "1em" }, mark: { backgroundColor: "yellow", color: "black" }, big: { fontSize: "larger" }, small: { fontSize: "smaller" }, s: { textDecoration: "line-through" } }; +var nd = /* @__PURE__ */ new Set(["color", "font", "fontFamily", "fontSize", "fontStyle", "fontWeight", "letterSpacing", "lineHeight", "textAlign", "textIndent", "textTransform", "textShadowOffset", "textShadowColor", "textShadowRadius", "WebkitTextStrokeWidth", "WebkitTextStrokeColor", "textDecorationLine", "textDecorationStyle", "textDecorationColor", "textDecorationSkipInk", "whiteSpace", "transform", "wordBreak", "tabSize", "opacity", "filter", "_viewportWidth", "_viewportHeight", "_inheritedClipPathId", "_inheritedMaskId", "_inheritedBackgroundClipTextPath", "_inheritedBackgroundClipTextHasBackground"]); function Gi(e) { let t = {}; for (let n in e) - (Xc.has(n) || n.startsWith("--")) && (t[n] = e[n]); + (nd.has(n) || n.startsWith("--")) && (t[n] = e[n]); return t; } -function Kc(e, t) { +function od(e, t) { try { let n = new xt(e); switch (n.unit) { @@ -17362,7 +17445,7 @@ function Kc(e, t) { return {}; } } -function zi(e, t, n) { +function ji(e, t, n) { switch (e) { case "top": return { yRelative: 0 }; @@ -17375,12 +17458,12 @@ function zi(e, t, n) { case "center": return {}; default: { - let r = Kc(e, t); + let r = od(e, t); return r.absolute ? { [n ? "xAbsolute" : "yAbsolute"]: r.absolute } : r.relative ? { [n ? "xRelative" : "yRelative"]: r.relative } : {}; } } } -function ji(e, t) { +function Vi(e, t) { if (typeof e == "number") return { xAbsolute: e }; let n; @@ -17389,26 +17472,26 @@ function ji(e, t) { } catch { return {}; } - return n.length === 1 ? zi(n[0], t, true) : n.length === 2 ? ((n[0] === "top" || n[0] === "bottom" || n[1] === "left" || n[1] === "right") && n.reverse(), { ...zi(n[0], t, true), ...zi(n[1], t, false) }) : {}; + return n.length === 1 ? ji(n[0], t, true) : n.length === 2 ? ((n[0] === "top" || n[0] === "bottom" || n[1] === "left" || n[1] === "right") && n.reverse(), { ...ji(n[0], t, true), ...ji(n[1], t, false) }) : {}; } function Fr(e, t) { let n = (0, import_css_to_react_native2.getPropertyName)(`mask-${t}`); return e[n] || e[`WebkitM${n.substring(1)}`]; } -function Fa(e) { +function qa(e) { let t = e.maskImage || e.WebkitMaskImage, n = { position: Fr(e, "position") || "0% 0%", size: Fr(e, "size") || "100% 100%", repeat: Fr(e, "repeat") || "repeat", origin: Fr(e, "origin") || "border-box", clip: Fr(e, "origin") || "border-box" }; - return $n(t).filter((i) => i && i !== "none").reverse().map((i) => ({ image: i, ...n })); + return Bn(t).filter((i) => i && i !== "none").reverse().map((i) => ({ image: i, ...n })); } -function Ba(e) { +function Ga(e) { let t = {}, n = {}; for (let r in e) r.startsWith("--") ? t[r] = String(e[r]) : n[r] = e[r]; return { variables: t, remainingStyle: n }; } -function $a(e, t) { +function ja(e, t) { return { ...e, ...t }; } -function Br(e, t, n = /* @__PURE__ */ new Set()) { +function $r(e, t, n = /* @__PURE__ */ new Set()) { if (typeof e != "string" || !e.includes("var(")) return e; try { @@ -17416,7 +17499,7 @@ function Br(e, t, n = /* @__PURE__ */ new Set()) { if (r.walk((o) => { if (o.type === "function" && o.value === "var") { i = true; - let s = Zc(o); + let s = ad(o); if (!s) return; let { varName: a, fallback: u2 } = s; @@ -17428,10 +17511,10 @@ function Br(e, t, n = /* @__PURE__ */ new Set()) { if (f !== void 0) { let l2 = new Set(n); l2.add(a); - let p = Br(f, t, l2); + let p = $r(f, t, l2); Dr(o, String(p)); } else if (u2 !== void 0) { - let l2 = Br(u2, t, n); + let l2 = $r(u2, t, n); Dr(o, String(l2)); } else Dr(o, "initial"); @@ -17443,7 +17526,7 @@ function Br(e, t, n = /* @__PURE__ */ new Set()) { } return e; } -function Zc(e) { +function ad(e) { if (!e.nodes || e.nodes.length === 0) return null; let t, n = -1; @@ -17468,16 +17551,16 @@ function Zc(e) { function Dr(e, t) { e.type = "word", e.value = t, delete e.nodes; } -var id = /* @__PURE__ */ new Set(["flex", "flexGrow", "flexShrink", "flexBasis", "fontWeight", "lineHeight", "opacity", "scale", "scaleX", "scaleY"]); -var od = /* @__PURE__ */ new Set(["lineHeight"]); -function sd(e, t, n, r) { +var dd = /* @__PURE__ */ new Set(["flex", "flexGrow", "flexShrink", "flexBasis", "fontWeight", "lineHeight", "opacity", "scale", "scaleX", "scaleY"]); +var pd = /* @__PURE__ */ new Set(["lineHeight"]); +function hd(e, t, n, r) { return e === "textDecoration" && !n.includes(t.textDecorationColor) && (t.textDecorationColor = r), t; } function rr(e, t) { let n = Number(t); - return isNaN(n) ? t : id.has(e) ? od.has(e) ? n : String(t) : n + "px"; + return isNaN(n) ? t : dd.has(e) ? pd.has(e) ? n : String(t) : n + "px"; } -function ad(e, t, n) { +function md(e, t, n) { if (e === "zIndex") return console.warn("`z-index` is currently not supported."), { [e]: t }; if (e === "lineHeight") @@ -17522,7 +17605,7 @@ function ad(e, t, n) { return t = t.toString().trim(), /^(linear-gradient|radial-gradient|url|repeating-linear-gradient|repeating-radial-gradient)\(/.test(t) ? (0, import_css_to_react_native.getStylesForProperty)("backgroundImage", t, true) : (0, import_css_to_react_native.getStylesForProperty)("background", t, true); if (e === "textShadow") { t = t.toString().trim(); - let r = {}, i = $n(t); + let r = {}, i = Bn(t); for (let o of i) { let s = (0, import_css_to_react_native.getStylesForProperty)("textShadow", o, true); for (let a in s) @@ -17544,34 +17627,34 @@ function ad(e, t, n) { return { textDecorationSkipInk: r }; } } -function qa(e) { +function Va(e) { return e === "transform" ? " Only absolute lengths such as `10px` are supported." : ""; } -var Ua = /rgb\((\d+)\s+(\d+)\s+(\d+)\s*\/\s*([\.\d]+)\)/; -function za(e) { - if (typeof e == "string" && Ua.test(e.trim())) - return e.trim().replace(Ua, (t, n, r, i, o) => `rgba(${n}, ${r}, ${i}, ${o})`); +var Ha = /rgb\((\d+)\s+(\d+)\s+(\d+)\s*\/\s*([\.\d]+)\)/; +function Xa(e) { + if (typeof e == "string" && Ha.test(e.trim())) + return e.trim().replace(Ha, (t, n, r, i, o) => `rgba(${n}, ${r}, ${i}, ${o})`); if (typeof e == "object" && e !== null) { for (let t in e) - e[t] = za(e[t]); + e[t] = Xa(e[t]); return e; } return e; } -function Hn(e, t) { +function Xn(e, t) { let n = {}, r = {}; for (let u2 in t) u2.startsWith("--") && (r[u2] = String(t[u2])); let i = {}, o = e; if (e) { - let { variables: u2, remainingStyle: f } = Ba(e); + let { variables: u2, remainingStyle: f } = Ga(e); i = u2, o = f; } - let s = $a(r, i); + let s = ja(r, i); for (let u2 in s) n[u2] = s[u2]; if (o) { - let u2 = o.color ? Br(o.color, s) : void 0, f = ld(u2, t.color); + let u2 = o.color ? $r(o.color, s) : void 0, f = bd(u2, t.color); n.color = f; for (let l2 in o) { if (l2.startsWith("_")) { @@ -17580,14 +17663,14 @@ function Hn(e, t) { } if (l2 === "color") continue; - let p = (0, import_css_to_react_native.getPropertyName)(l2), h2 = Br(o[l2], s), m2 = cd(h2, f); + let p = (0, import_css_to_react_native.getPropertyName)(l2), h2 = $r(o[l2], s), m2 = yd(h2, f); try { - let b = ad(p, m2, f) || sd(p, (0, import_css_to_react_native.getStylesForProperty)(p, rr(p, m2), true), m2, f); + let b = md(p, m2, f) || hd(p, (0, import_css_to_react_native.getStylesForProperty)(p, rr(p, m2), true), m2, f); Object.assign(n, b); } catch (b) { throw new Error(b.message + (b.message.includes(m2) ? ` - ` + qa(p) : ` - in CSS rule \`${p}: ${m2}\`.${qa(p)}`)); + ` + Va(p) : ` + in CSS rule \`${p}: ${m2}\`.${Va(p)}`)); } } } @@ -17595,9 +17678,9 @@ function Hn(e, t) { let { backgrounds: u2 } = (0, import_css_background_parser.parseElementStyle)(n); n.backgroundImage = u2; } - (n.maskImage || n.WebkitMaskImage) && (n.maskImage = Fa(n)); - let a = ud(n.fontSize, t.fontSize); - typeof n.fontSize < "u" && (n.fontSize = a), n.transformOrigin && (n.transformOrigin = ji(n.transformOrigin, a)); + (n.maskImage || n.WebkitMaskImage) && (n.maskImage = qa(n)); + let a = gd(n.fontSize, t.fontSize); + typeof n.fontSize < "u" && (n.fontSize = a), n.transformOrigin && (n.transformOrigin = Vi(n.transformOrigin, a)); for (let u2 in n) { let f = n[u2]; if (u2 === "lineHeight") @@ -17608,7 +17691,7 @@ function Hn(e, t) { typeof l2 < "u" && (n[u2] = l2), f = n[u2]; } if (typeof f == "string" || typeof f == "object") { - let l2 = za(f); + let l2 = Xa(f); l2 && (n[u2] = l2), f = n[u2]; } } @@ -17630,7 +17713,7 @@ function Hn(e, t) { } return n; } -function ud(e, t) { +function gd(e, t) { if (typeof e == "number") return e; try { @@ -17645,24 +17728,24 @@ function ud(e, t) { return t; } } -function Ga(e) { +function Ya(e) { if (e.startsWith("hsl")) { let t = index_esm_default(e), [n, r, i] = t.values; return `hsl(${[n, `${r}%`, `${i}%`].concat(t.alpha === 1 ? [] : [t.alpha]).join(",")})`; } return e; } -function ld(e, t) { - return e && e.toLowerCase() !== "currentcolor" ? Ga(e) : Ga(t); +function bd(e, t) { + return e && e.toLowerCase() !== "currentcolor" ? Ya(e) : Ya(t); } -function fd2(e, t) { +function vd(e, t) { return e.replace(/currentcolor/gi, t); } -function cd(e, t) { - return Bn(e) && (e = fd2(e, t)), e; +function yd(e, t) { + return $n(e) && (e = vd(e, t)), e; } -async function Vi(e, t, n, r, i) { - let o = await Gt(), s = Object.assign({}, n, Hn(Wa[t], n), Hn(r, n)); +async function Hi(e, t, n, r, i) { + let o = await zt(), s = Object.assign({}, n, Xn(Ua[t], n), Xn(r, n)); if (t === "img") { let [a, u2, f] = await xr(i.src); if (u2 === void 0 && f === void 0) { @@ -17677,11 +17760,11 @@ async function Vi(e, t, n, r, i) { let a = i.viewBox || i.viewbox, u2 = gr(a), f = u2 ? u2[3] / u2[2] : null, { width: l2, height: p } = i; typeof l2 > "u" && p ? f == null ? l2 = 0 : typeof p == "string" && p.endsWith("%") ? l2 = parseInt(p) / f + "%" : (p = X(p, n.fontSize, 1, n), l2 = p / f) : typeof p > "u" && l2 ? f == null ? l2 = 0 : typeof l2 == "string" && l2.endsWith("%") ? p = parseInt(l2) * f + "%" : (l2 = X(l2, n.fontSize, 1, n), p = l2 * f) : (typeof l2 < "u" && (l2 = X(l2, n.fontSize, 1, n) || l2), typeof p < "u" && (p = X(p, n.fontSize, 1, n) || p), l2 ||= u2 == null ? void 0 : u2[2], p ||= u2 == null ? void 0 : u2[3]), !s.width && l2 && (s.width = l2), !s.height && p && (s.height = p); } - return e.setDisplay(He(s.display, { flex: o.DISPLAY_FLEX, block: o.DISPLAY_FLEX, contents: o.DISPLAY_CONTENTS, none: o.DISPLAY_NONE, "-webkit-box": o.DISPLAY_FLEX }, o.DISPLAY_FLEX, "display")), e.setAlignContent(He(s.alignContent, { stretch: o.ALIGN_STRETCH, center: o.ALIGN_CENTER, "flex-start": o.ALIGN_FLEX_START, "flex-end": o.ALIGN_FLEX_END, "space-between": o.ALIGN_SPACE_BETWEEN, "space-around": o.ALIGN_SPACE_AROUND, baseline: o.ALIGN_BASELINE, normal: o.ALIGN_AUTO }, o.ALIGN_AUTO, "alignContent")), e.setAlignItems(He(s.alignItems, { stretch: o.ALIGN_STRETCH, center: o.ALIGN_CENTER, "flex-start": o.ALIGN_FLEX_START, "flex-end": o.ALIGN_FLEX_END, baseline: o.ALIGN_BASELINE, normal: o.ALIGN_AUTO }, o.ALIGN_STRETCH, "alignItems")), e.setAlignSelf(He(s.alignSelf, { stretch: o.ALIGN_STRETCH, center: o.ALIGN_CENTER, "flex-start": o.ALIGN_FLEX_START, "flex-end": o.ALIGN_FLEX_END, baseline: o.ALIGN_BASELINE, normal: o.ALIGN_AUTO }, o.ALIGN_AUTO, "alignSelf")), e.setJustifyContent(He(s.justifyContent, { center: o.JUSTIFY_CENTER, "flex-start": o.JUSTIFY_FLEX_START, "flex-end": o.JUSTIFY_FLEX_END, "space-between": o.JUSTIFY_SPACE_BETWEEN, "space-around": o.JUSTIFY_SPACE_AROUND }, o.JUSTIFY_FLEX_START, "justifyContent")), e.setFlexDirection(He(s.flexDirection, { row: o.FLEX_DIRECTION_ROW, column: o.FLEX_DIRECTION_COLUMN, "row-reverse": o.FLEX_DIRECTION_ROW_REVERSE, "column-reverse": o.FLEX_DIRECTION_COLUMN_REVERSE }, o.FLEX_DIRECTION_ROW, "flexDirection")), e.setFlexWrap(He(s.flexWrap, { wrap: o.WRAP_WRAP, nowrap: o.WRAP_NO_WRAP, "wrap-reverse": o.WRAP_WRAP_REVERSE }, o.WRAP_NO_WRAP, "flexWrap")), typeof s.gap < "u" && e.setGap(o.GUTTER_ALL, s.gap), typeof s.rowGap < "u" && e.setGap(o.GUTTER_ROW, s.rowGap), typeof s.columnGap < "u" && e.setGap(o.GUTTER_COLUMN, s.columnGap), typeof s.flexBasis < "u" && e.setFlexBasis(Ut(s.flexBasis, "flexBasis")), e.setFlexGrow(typeof s.flexGrow > "u" ? 0 : s.flexGrow), e.setFlexShrink(typeof s.flexShrink > "u" ? 0 : s.flexShrink), typeof s.maxHeight < "u" && e.setMaxHeight(Mt(s.maxHeight, "maxHeight")), typeof s.maxWidth < "u" && e.setMaxWidth(Mt(s.maxWidth, "maxWidth")), typeof s.minHeight < "u" && e.setMinHeight(Mt(s.minHeight, "minHeight")), typeof s.minWidth < "u" && e.setMinWidth(Mt(s.minWidth, "minWidth")), e.setOverflow(He(s.overflow, { visible: o.OVERFLOW_VISIBLE, hidden: o.OVERFLOW_HIDDEN }, o.OVERFLOW_VISIBLE, "overflow")), e.setMargin(o.EDGE_TOP, Ut(s.marginTop || 0)), e.setMargin(o.EDGE_BOTTOM, Ut(s.marginBottom || 0)), e.setMargin(o.EDGE_LEFT, Ut(s.marginLeft || 0)), e.setMargin(o.EDGE_RIGHT, Ut(s.marginRight || 0)), e.setBorder(o.EDGE_TOP, s.borderTopWidth || 0), e.setBorder(o.EDGE_BOTTOM, s.borderBottomWidth || 0), e.setBorder(o.EDGE_LEFT, s.borderLeftWidth || 0), e.setBorder(o.EDGE_RIGHT, s.borderRightWidth || 0), e.setPadding(o.EDGE_TOP, s.paddingTop || 0), e.setPadding(o.EDGE_BOTTOM, s.paddingBottom || 0), e.setPadding(o.EDGE_LEFT, s.paddingLeft || 0), e.setPadding(o.EDGE_RIGHT, s.paddingRight || 0), e.setBoxSizing(He(s.boxSizing, { "border-box": o.BOX_SIZING_BORDER_BOX, "content-box": o.BOX_SIZING_CONTENT_BOX }, o.BOX_SIZING_BORDER_BOX, "boxSizing")), e.setPositionType(He(s.position, { absolute: o.POSITION_TYPE_ABSOLUTE, relative: o.POSITION_TYPE_RELATIVE, static: o.POSITION_TYPE_STATIC }, o.POSITION_TYPE_RELATIVE, "position")), typeof s.top < "u" && e.setPosition(o.EDGE_TOP, Mt(s.top, "top")), typeof s.bottom < "u" && e.setPosition(o.EDGE_BOTTOM, Mt(s.bottom, "bottom")), typeof s.left < "u" && e.setPosition(o.EDGE_LEFT, Mt(s.left, "left")), typeof s.right < "u" && e.setPosition(o.EDGE_RIGHT, Mt(s.right, "right")), typeof s.height < "u" ? e.setHeight(Ut(s.height, "height")) : e.setHeightAuto(), typeof s.width < "u" ? e.setWidth(Ut(s.width, "width")) : e.setWidthAuto(), [s, Gi(s)]; + return e.setDisplay(He(s.display, { flex: o.DISPLAY_FLEX, block: o.DISPLAY_FLEX, contents: o.DISPLAY_CONTENTS, none: o.DISPLAY_NONE, "-webkit-box": o.DISPLAY_FLEX }, o.DISPLAY_FLEX, "display")), e.setAlignContent(He(s.alignContent, { stretch: o.ALIGN_STRETCH, center: o.ALIGN_CENTER, "flex-start": o.ALIGN_FLEX_START, "flex-end": o.ALIGN_FLEX_END, "space-between": o.ALIGN_SPACE_BETWEEN, "space-around": o.ALIGN_SPACE_AROUND, baseline: o.ALIGN_BASELINE, normal: o.ALIGN_AUTO }, o.ALIGN_AUTO, "alignContent")), e.setAlignItems(He(s.alignItems, { stretch: o.ALIGN_STRETCH, center: o.ALIGN_CENTER, "flex-start": o.ALIGN_FLEX_START, "flex-end": o.ALIGN_FLEX_END, baseline: o.ALIGN_BASELINE, normal: o.ALIGN_AUTO }, o.ALIGN_STRETCH, "alignItems")), e.setAlignSelf(He(s.alignSelf, { stretch: o.ALIGN_STRETCH, center: o.ALIGN_CENTER, "flex-start": o.ALIGN_FLEX_START, "flex-end": o.ALIGN_FLEX_END, baseline: o.ALIGN_BASELINE, normal: o.ALIGN_AUTO }, o.ALIGN_AUTO, "alignSelf")), e.setJustifyContent(He(s.justifyContent, { center: o.JUSTIFY_CENTER, "flex-start": o.JUSTIFY_FLEX_START, "flex-end": o.JUSTIFY_FLEX_END, "space-between": o.JUSTIFY_SPACE_BETWEEN, "space-around": o.JUSTIFY_SPACE_AROUND }, o.JUSTIFY_FLEX_START, "justifyContent")), e.setFlexDirection(He(s.flexDirection, { row: o.FLEX_DIRECTION_ROW, column: o.FLEX_DIRECTION_COLUMN, "row-reverse": o.FLEX_DIRECTION_ROW_REVERSE, "column-reverse": o.FLEX_DIRECTION_COLUMN_REVERSE }, o.FLEX_DIRECTION_ROW, "flexDirection")), e.setFlexWrap(He(s.flexWrap, { wrap: o.WRAP_WRAP, nowrap: o.WRAP_NO_WRAP, "wrap-reverse": o.WRAP_WRAP_REVERSE }, o.WRAP_NO_WRAP, "flexWrap")), typeof s.gap < "u" && e.setGap(o.GUTTER_ALL, s.gap), typeof s.rowGap < "u" && e.setGap(o.GUTTER_ROW, s.rowGap), typeof s.columnGap < "u" && e.setGap(o.GUTTER_COLUMN, s.columnGap), typeof s.flexBasis < "u" && e.setFlexBasis(qt(s.flexBasis, "flexBasis")), e.setFlexGrow(typeof s.flexGrow > "u" ? 0 : s.flexGrow), e.setFlexShrink(typeof s.flexShrink > "u" ? 0 : s.flexShrink), typeof s.maxHeight < "u" && e.setMaxHeight(Mt(s.maxHeight, "maxHeight")), typeof s.maxWidth < "u" && e.setMaxWidth(Mt(s.maxWidth, "maxWidth")), typeof s.minHeight < "u" && e.setMinHeight(Mt(s.minHeight, "minHeight")), typeof s.minWidth < "u" && e.setMinWidth(Mt(s.minWidth, "minWidth")), e.setOverflow(He(s.overflow, { visible: o.OVERFLOW_VISIBLE, hidden: o.OVERFLOW_HIDDEN }, o.OVERFLOW_VISIBLE, "overflow")), e.setMargin(o.EDGE_TOP, qt(s.marginTop || 0)), e.setMargin(o.EDGE_BOTTOM, qt(s.marginBottom || 0)), e.setMargin(o.EDGE_LEFT, qt(s.marginLeft || 0)), e.setMargin(o.EDGE_RIGHT, qt(s.marginRight || 0)), e.setBorder(o.EDGE_TOP, s.borderTopWidth || 0), e.setBorder(o.EDGE_BOTTOM, s.borderBottomWidth || 0), e.setBorder(o.EDGE_LEFT, s.borderLeftWidth || 0), e.setBorder(o.EDGE_RIGHT, s.borderRightWidth || 0), e.setPadding(o.EDGE_TOP, s.paddingTop || 0), e.setPadding(o.EDGE_BOTTOM, s.paddingBottom || 0), e.setPadding(o.EDGE_LEFT, s.paddingLeft || 0), e.setPadding(o.EDGE_RIGHT, s.paddingRight || 0), e.setBoxSizing(He(s.boxSizing, { "border-box": o.BOX_SIZING_BORDER_BOX, "content-box": o.BOX_SIZING_CONTENT_BOX }, o.BOX_SIZING_BORDER_BOX, "boxSizing")), e.setPositionType(He(s.position, { absolute: o.POSITION_TYPE_ABSOLUTE, relative: o.POSITION_TYPE_RELATIVE, static: o.POSITION_TYPE_STATIC }, o.POSITION_TYPE_RELATIVE, "position")), typeof s.top < "u" && e.setPosition(o.EDGE_TOP, Mt(s.top, "top")), typeof s.bottom < "u" && e.setPosition(o.EDGE_BOTTOM, Mt(s.bottom, "bottom")), typeof s.left < "u" && e.setPosition(o.EDGE_LEFT, Mt(s.left, "left")), typeof s.right < "u" && e.setPosition(o.EDGE_RIGHT, Mt(s.right, "right")), typeof s.height < "u" ? e.setHeight(qt(s.height, "height")) : e.setHeightAuto(), typeof s.width < "u" ? e.setWidth(qt(s.width, "width")) : e.setWidthAuto(), [s, Gi(s)]; } -var ja = [1, 0, 0, 1, 0, 0]; -function dd(e, t, n) { - let r = [...ja]; +var Qa = [1, 0, 0, 1, 0, 0]; +function xd(e, t, n) { + let r = [...Qa]; for (let i of e) { let o = Object.keys(i)[0], s = i[o]; if (typeof s == "string") @@ -17691,7 +17774,7 @@ function dd(e, t, n) { s = parseFloat(s) / 100 * n, i[o] = s; else throw new Error(`Invalid transform: "${o}: ${s}".`); - let a = s, u2 = [...ja]; + let a = s, u2 = [...Qa]; switch (o) { case "translateX": u2[4] = a; @@ -17724,9 +17807,9 @@ function dd(e, t, n) { } e.splice(0, e.length), e.push(...r), e.__resolved = true; } -function $r({ left: e, top: t, width: n, height: r }, i, o, s) { +function Br({ left: e, top: t, width: n, height: r }, i, o, s) { let a; - i.__resolved || dd(i, n, r); + i.__resolved || xd(i, n, r); let u2 = i; if (o) a = u2; @@ -17736,26 +17819,26 @@ function $r({ left: e, top: t, width: n, height: r }, i, o, s) { } return `matrix(${a.map((f) => f.toFixed(2)).join(",")})`; } -function Ha({ left: e, top: t, width: n, height: r, isInheritingTransform: i }, o) { +function Ja({ left: e, top: t, width: n, height: r, isInheritingTransform: i }, o) { let s = "", a = 1; - return o.transform && (s = $r({ left: e, top: t, width: n, height: r }, o.transform, i, o.transformOrigin)), o.opacity !== void 0 && (a = +o.opacity), { matrix: s, opacity: a }; + return o.transform && (s = Br({ left: e, top: t, width: n, height: r }, o.transform, i, o.transformOrigin)), o.opacity !== void 0 && (a = +o.opacity), { matrix: s, opacity: a }; } -function Hi({ id: e, content: t, filter: n, left: r, top: i, width: o, height: s, matrix: a, opacity: u2, image: f, clipPathId: l2, debug: p, shape: h2, decorationShape: m2 }, b) { +function Yi({ id: e, content: t, filter: n, left: r, top: i, width: o, height: s, matrix: a, opacity: u2, image: f, clipPathId: l2, debug: p, shape: h2, decorationShape: m2 }, b) { let y = ""; if (p && (y = M("rect", { x: r, y: i - s, width: o, height: s, fill: "transparent", stroke: "#575eff", "stroke-width": 1, transform: a || void 0, "clip-path": l2 ? `url(#${l2})` : void 0 })), f) { - let k = { href: f, x: r, y: i, width: o, height: s, transform: a || void 0, "clip-path": l2 ? `url(#${l2})` : void 0, style: b.filter ? `filter:${b.filter}` : void 0 }; - return [(n ? `${n}` : "") + M("image", { ...k, opacity: u2 !== 1 ? u2 : void 0 }) + (m2 || "") + (n ? "" : "") + y, ""]; + let E = { href: f, x: r, y: i, width: o, height: s, transform: a || void 0, "clip-path": l2 ? `url(#${l2})` : void 0, style: b.filter ? `filter:${b.filter}` : void 0 }; + return [(n ? `${n}` : "") + M("image", { ...E, opacity: u2 !== 1 ? u2 : void 0 }) + (m2 || "") + (n ? "" : "") + y, ""]; } let T = { x: r, y: i, width: o, height: s, "font-weight": b.fontWeight, "font-style": b.fontStyle, "font-size": b.fontSize, "font-family": b.fontFamily, "letter-spacing": b.letterSpacing || void 0, transform: a || void 0, "clip-path": l2 ? `url(#${l2})` : void 0, style: b.filter ? `filter:${b.filter}` : void 0, "stroke-width": b.WebkitTextStrokeWidth ? `${b.WebkitTextStrokeWidth}px` : void 0, stroke: b.WebkitTextStrokeWidth ? b.WebkitTextStrokeColor : void 0, "stroke-linejoin": b.WebkitTextStrokeWidth ? "round" : void 0, "paint-order": b.WebkitTextStrokeWidth ? "stroke" : void 0 }; return [(n ? `${n}` : "") + M("text", { ...T, fill: b.color, opacity: u2 !== 1 ? u2 : void 0 }, (0, import_escape_html.default)(t)) + (m2 || "") + (n ? "" : "") + y, h2 ? M("text", T, (0, import_escape_html.default)(t)) : ""]; } -function pd(e, t, n) { +function wd(e, t, n) { return e.replace(/([MA])([0-9.-]+),([0-9.-]+)/g, function(r, i, o, s) { return i + (parseFloat(o) + t) + "," + (parseFloat(s) + n); }); } -var Yn = 1.1; -function Ya({ id: e, width: t, height: n }, r, i = false) { +var Qn = 1.1; +function Za({ id: e, width: t, height: n }, r, i = false) { if (!r.shadowColor || !r.shadowOffset || typeof r.shadowRadius > "u") return ""; let o = r.shadowColor.length, s = "", a = "", u2 = 0, f = t, l2 = 0, p = n; @@ -17768,23 +17851,23 @@ function Ya({ id: e, width: t, height: n }, r, i = false) { s += M("feDropShadow", { dx: r.shadowOffset[h2].width, dy: r.shadowOffset[h2].height, stdDeviation: r.shadowRadius[h2] / 2, "flood-color": r.shadowColor[h2], "flood-opacity": 1, ...o > 1 ? { in: "SourceGraphic", result: `satori_s-${e}-result-${h2}` } : {} }); o > 1 && (a = M("feMergeNode", { in: `satori_s-${e}-result-${h2}` }) + a); } - return M("filter", { id: `satori_s-${e}`, x: (u2 / t * 100 * Yn).toFixed(2) + "%", y: (l2 / n * 100 * Yn).toFixed(2) + "%", width: ((f - u2) / t * 100 * Yn).toFixed(2) + "%", height: ((p - l2) / n * 100 * Yn).toFixed(2) + "%" }, s + (a ? M("feMerge", {}, a) : "")); + return M("filter", { id: `satori_s-${e}`, x: (u2 / t * 100 * Qn).toFixed(2) + "%", y: (l2 / n * 100 * Qn).toFixed(2) + "%", width: ((f - u2) / t * 100 * Qn).toFixed(2) + "%", height: ((p - l2) / n * 100 * Qn).toFixed(2) + "%" }, s + (a ? M("feMerge", {}, a) : "")); } -function Xa({ width: e, height: t, shape: n, opacity: r, id: i }, o) { +function eu({ width: e, height: t, shape: n, opacity: r, id: i }, o) { if (!o.boxShadow) return null; let s = "", a = ""; for (let u2 = o.boxShadow.length - 1; u2 >= 0; u2--) { let f = "", l2 = o.boxShadow[u2]; l2.spreadRadius && l2.inset && (l2.spreadRadius = -l2.spreadRadius); - let p = l2.blurRadius * l2.blurRadius / 4 + (l2.spreadRadius || 0), h2 = Math.min(-p - (l2.inset ? l2.offsetX : 0), 0), m2 = Math.max(p + e - (l2.inset ? l2.offsetX : 0), e), b = Math.min(-p - (l2.inset ? l2.offsetY : 0), 0), y = Math.max(p + t - (l2.inset ? l2.offsetY : 0), t), T = `satori_s-${i}-${u2}`, k = `satori_ms-${i}-${u2}`, P2 = l2.spreadRadius ? n.replace('stroke-width="0"', `stroke-width="${l2.spreadRadius * 2}"`) : n; - f += M("mask", { id: k, maskUnits: "userSpaceOnUse" }, M("rect", { x: 0, y: 0, width: o._viewportWidth || "100%", height: o._viewportHeight || "100%", fill: l2.inset ? "#000" : "#fff" }) + P2.replace('fill="#fff"', l2.inset ? 'fill="#fff"' : 'fill="#000"').replace('stroke="#fff"', "")); - let w2 = P2.replace(/d="([^"]+)"/, (S2, O) => 'd="' + pd(O, l2.offsetX, l2.offsetY) + '"').replace(/x="([^"]+)"/, (S2, O) => 'x="' + (parseFloat(O) + l2.offsetX) + '"').replace(/y="([^"]+)"/, (S2, O) => 'y="' + (parseFloat(O) + l2.offsetY) + '"'); - l2.spreadRadius && l2.spreadRadius < 0 && (f += M("mask", { id: k + "-neg", maskUnits: "userSpaceOnUse" }, w2.replace('stroke="#fff"', 'stroke="#000"').replace(/stroke-width="[^"]+"/, `stroke-width="${-l2.spreadRadius * 2}"`))), l2.spreadRadius && l2.spreadRadius < 0 && (w2 = M("g", { mask: `url(#${k}-neg)` }, w2)), f += M("defs", {}, M("filter", { id: T, x: `${h2 / e * 100}%`, y: `${b / t * 100}%`, width: `${(m2 - h2) / e * 100}%`, height: `${(y - b) / t * 100}%` }, M("feGaussianBlur", { stdDeviation: l2.blurRadius / 2, result: "b" }) + M("feFlood", { "flood-color": l2.color, in: "SourceGraphic", result: "f" }) + M("feComposite", { in: "f", in2: "b", operator: l2.inset ? "out" : "in" }))) + M("g", { mask: `url(#${k})`, filter: `url(#${T})`, opacity: r }, w2), l2.inset ? a += f : s += f; + let p = l2.blurRadius * l2.blurRadius / 4 + (l2.spreadRadius || 0), h2 = Math.min(-p - (l2.inset ? l2.offsetX : 0), 0), m2 = Math.max(p + e - (l2.inset ? l2.offsetX : 0), e), b = Math.min(-p - (l2.inset ? l2.offsetY : 0), 0), y = Math.max(p + t - (l2.inset ? l2.offsetY : 0), t), T = `satori_s-${i}-${u2}`, E = `satori_ms-${i}-${u2}`, P2 = l2.spreadRadius ? n.replace('stroke-width="0"', `stroke-width="${l2.spreadRadius * 2}"`) : n; + f += M("mask", { id: E, maskUnits: "userSpaceOnUse" }, M("rect", { x: 0, y: 0, width: o._viewportWidth || "100%", height: o._viewportHeight || "100%", fill: l2.inset ? "#000" : "#fff" }) + P2.replace('fill="#fff"', l2.inset ? 'fill="#fff"' : 'fill="#000"').replace('stroke="#fff"', "")); + let w2 = P2.replace(/d="([^"]+)"/, (S2, O) => 'd="' + wd(O, l2.offsetX, l2.offsetY) + '"').replace(/x="([^"]+)"/, (S2, O) => 'x="' + (parseFloat(O) + l2.offsetX) + '"').replace(/y="([^"]+)"/, (S2, O) => 'y="' + (parseFloat(O) + l2.offsetY) + '"'); + l2.spreadRadius && l2.spreadRadius < 0 && (f += M("mask", { id: E + "-neg", maskUnits: "userSpaceOnUse" }, w2.replace('stroke="#fff"', 'stroke="#000"').replace(/stroke-width="[^"]+"/, `stroke-width="${-l2.spreadRadius * 2}"`))), l2.spreadRadius && l2.spreadRadius < 0 && (w2 = M("g", { mask: `url(#${E}-neg)` }, w2)), f += M("defs", {}, M("filter", { id: T, x: `${h2 / e * 100}%`, y: `${b / t * 100}%`, width: `${(m2 - h2) / e * 100}%`, height: `${(y - b) / t * 100}%` }, M("feGaussianBlur", { stdDeviation: l2.blurRadius / 2, result: "b" }) + M("feFlood", { "flood-color": l2.color, in: "SourceGraphic", result: "f" }) + M("feComposite", { in: "f", in2: "b", operator: l2.inset ? "out" : "in" }))) + M("g", { mask: `url(#${E})`, filter: `url(#${T})`, opacity: r }, w2), l2.inset ? a += f : s += f; } return [s, a]; } -function hd(e, t, n, r, i, o) { +function Sd(e, t, n, r, i, o) { let s = i / 2, a = Math.max(s, i * 1.25), u2 = []; for (let p of n) { if (p.y2 < o + s || p.y1 > r + s) @@ -17807,20 +17890,20 @@ function hd(e, t, n, r, i, o) { break; return l2 < t && f.push([l2, t]), f; } -function Yi({ width: e, left: t, top: n, ascender: r, clipPathId: i, matrix: o, glyphBoxes: s }, a) { +function Xi({ width: e, left: t, top: n, ascender: r, clipPathId: i, matrix: o, glyphBoxes: s }, a) { let { textDecorationColor: u2, textDecorationStyle: f, textDecorationLine: l2, textDecorationSkipInk: p, fontSize: h2, color: m2 } = a; if (!l2 || l2 === "none") return ""; - let b = Math.max(1, h2 * 0.1), y = l2 === "line-through" ? n + r * 0.7 : l2 === "underline" ? n + r * 1.1 : n, T = f === "dashed" ? `${b * 1.2} ${b * 2}` : f === "dotted" ? `0 ${b * 2}` : void 0, k = l2 === "underline" && (p || "auto") !== "none" && (s == null ? void 0 : s.length), P2 = n + r, w2 = k ? hd(t, t + e, s, y, b, P2) : [[t, t + e]], S2 = f === "double" ? w2.map(([O, I]) => M("line", { x1: O, y1: y + b + 1, x2: I, y2: y + b + 1, stroke: u2 || m2, "stroke-width": b, "stroke-dasharray": T, "stroke-linecap": f === "dotted" ? "round" : "square", transform: o })).join("") : ""; + let b = Math.max(1, h2 * 0.1), y = l2 === "line-through" ? n + r * 0.7 : l2 === "underline" ? n + r * 1.1 : n, T = f === "dashed" ? `${b * 1.2} ${b * 2}` : f === "dotted" ? `0 ${b * 2}` : void 0, E = l2 === "underline" && (p || "auto") !== "none" && (s == null ? void 0 : s.length), P2 = n + r, w2 = E ? Sd(t, t + e, s, y, b, P2) : [[t, t + e]], S2 = f === "double" ? w2.map(([O, I]) => M("line", { x1: O, y1: y + b + 1, x2: I, y2: y + b + 1, stroke: u2 || m2, "stroke-width": b, "stroke-dasharray": T, "stroke-linecap": f === "dotted" ? "round" : "square", transform: o })).join("") : ""; return (i ? `` : "") + w2.map(([O, I]) => M("line", { x1: O, y1: y, x2: I, y2: y, stroke: u2 || m2, "stroke-width": b, "stroke-dasharray": T, "stroke-linecap": f === "dotted" ? "round" : "square", transform: o })).join("") + S2 + (i ? "" : ""); } -function Xi(e) { +function Qi(e) { return e = e.replace("U+", "0x"), String.fromCodePoint(Number(e)); } -var nr = Xi("U+0020"); -var Qi = Xi("U+0009"); -var wr = Xi("U+2026"); -function Qa(e, t, n) { +var nr = Qi("U+0020"); +var Ki = Qi("U+0009"); +var wr = Qi("U+2026"); +function tu(e, t, n) { let { fontSize: r, letterSpacing: i } = n, o = /* @__PURE__ */ new Map(); function s(f) { let l2 = o.get(f); @@ -17837,33 +17920,33 @@ function Qa(e, t, n) { } return { measureGrapheme: s, measureGraphemeArray: a, measureText: u2 }; } -function Ka(e, t, n) { +function ru(e, t, n) { let { textTransform: r, whiteSpace: i, wordBreak: o } = t; - e = md(e, r, n); - let { content: s, shouldCollapseTabsAndSpaces: a, allowSoftWrap: u2 } = vd(e, i), { words: f, requiredBreaks: l2, allowBreakWord: p } = bd(s, o), [h2, m2] = gd(t, u2); + e = _d(e, r, n); + let { content: s, shouldCollapseTabsAndSpaces: a, allowSoftWrap: u2 } = kd(e, i), { words: f, requiredBreaks: l2, allowBreakWord: p } = Ed(s, o), [h2, m2] = Td(t, u2); return { words: f, requiredBreaks: l2, allowSoftWrap: u2, allowBreakWord: p, processedContent: s, shouldCollapseTabsAndSpaces: a, lineLimit: h2, blockEllipsis: m2 }; } -function md(e, t, n) { +function _d(e, t, n) { return t === "uppercase" ? e = e.toLocaleUpperCase(n) : t === "lowercase" ? e = e.toLocaleLowerCase(n) : t === "capitalize" && (e = Ve(e, "word", n).map((r) => Ve(r, "grapheme", n).map((i, o) => o === 0 ? i.toLocaleUpperCase(n) : i).join("")).join("")), e; } -function gd(e, t) { +function Td(e, t) { let { textOverflow: n, lineClamp: r, WebkitLineClamp: i, WebkitBoxOrient: o, overflow: s, display: a } = e; if (a === "block" && r) { - let [u2, f = wr] = yd(r); + let [u2, f = wr] = Od(r); if (u2) return [u2, f]; } - return n === "ellipsis" && a === "-webkit-box" && o === "vertical" && ha(i) && i > 0 ? [i, wr] : n === "ellipsis" && s === "hidden" && !t ? [1, wr] : [1 / 0]; + return n === "ellipsis" && a === "-webkit-box" && o === "vertical" && ma(i) && i > 0 ? [i, wr] : n === "ellipsis" && s === "hidden" && !t ? [1, wr] : [1 / 0]; } -function bd(e, t) { - let n = ["break-all", "break-word"].includes(t), { words: r, requiredBreaks: i } = ga(e, t); +function Ed(e, t) { + let n = ["break-all", "break-word"].includes(t), { words: r, requiredBreaks: i } = ba(e, t); return { words: r, requiredBreaks: i, allowBreakWord: n }; } -function vd(e, t) { +function kd(e, t) { let n = ["pre", "pre-wrap", "pre-line"].includes(t), r = ["normal", "nowrap", "pre-line"].includes(t), i = !["pre", "nowrap"].includes(t); return n || (e = e.replace(/\n/g, nr)), r && (e = e.replace(/([ ]|\t)+/g, nr).replace(/^[ ]|[ ]$/g, "")), { content: e, shouldCollapseTabsAndSpaces: r, allowSoftWrap: i }; } -function yd(e) { +function Od(e) { if (typeof e == "number") return [e]; let t = /^(\d+)\s*"(.*)"$/, n = /^(\d+)\s*'(.*)'$/, r = t.exec(e), i = n.exec(e); @@ -17876,17 +17959,17 @@ function yd(e) { } return []; } -var xd = /* @__PURE__ */ new Set([Qi]); -function wd(e) { - return xd.has(e); +var Pd = /* @__PURE__ */ new Set([Ki]); +function Ad(e) { + return Pd.has(e); } -function Ki(e) { +function Ji(e) { if (e === "transparent") return true; let t = index_esm_default(e); return t ? t.alpha === 0 : false; } -function Ja(e) { +function nu(e) { if (!e) return false; let t = index_esm_default(e); @@ -17895,113 +17978,113 @@ function Ja(e) { let [n, r, i, o] = t.values; return n === 255 && r === 255 && i === 255 && (o === void 0 || o === 1); } -async function* Ji(e, t) { - let n = await Gt(), { parentStyle: r, inheritedStyle: i, parent: o, font: s, id: a, isInheritingTransform: u2, debug: f, embedFont: l2, graphemeImages: p, locale: h2, canLoadAdditionalAssets: m2 } = t, { textAlign: b, textIndent: y = 0, lineHeight: T, textWrap: k, fontSize: P2, filter: w2, tabSize: S2 = 8, letterSpacing: O, _inheritedBackgroundClipTextPath: I, _inheritedBackgroundClipTextHasBackground: F, flexShrink: q } = r, { words: V, requiredBreaks: de, allowSoftWrap: Ae, allowBreakWord: me, processedContent: ue, shouldCollapseTabsAndSpaces: Ie, lineLimit: Z, blockEllipsis: ne } = Ka(e, r, h2), ke = Sd(n, b); - o.insertChild(ke, o.getChildCount()), ma(q) && o.setFlexShrink(1); - let ve = s.getEngine(P2, T, r, h2), Re = m2 ? Ve(ue, "grapheme").filter((Y) => !wd(Y) && !ve.has(Y)) : []; - yield Re.map((Y) => ({ word: Y, locale: h2 })), Re.length && (ve = s.getEngine(P2, T, r, h2)); - function Ee(Y) { - return !!(p && p[Y]); - } - let { measureGrapheme: Ye, measureGraphemeArray: Me, measureText: Oe } = Qa(ve, Ee, { fontSize: P2, letterSpacing: O }), le = Bn(S2) ? X(S2, P2, 1, r) : Ye(nr) * S2, H = (Y, j) => { - if (Y.length === 0) - return { originWidth: 0, endingSpacesWidth: 0, text: Y }; - let { index: fe, tabCount: K2 } = _d(Y), ye = 0; - if (K2 > 0) { - let xe = Y.slice(0, fe), ee = Y.slice(fe + K2), te = Oe(xe), ot = te + j; - ye = (le === 0 ? te : (Math.floor(ot / le) + K2) * le) + Oe(ee); +async function* Zi(e, t) { + let n = await zt(), { parentStyle: r, inheritedStyle: i, parent: o, font: s, id: a, isInheritingTransform: u2, debug: f, embedFont: l2, graphemeImages: p, locale: h2, canLoadAdditionalAssets: m2 } = t, { textAlign: b, textIndent: y = 0, lineHeight: T, textWrap: E, fontSize: P2, filter: w2, tabSize: S2 = 8, letterSpacing: O, _inheritedBackgroundClipTextPath: I, _inheritedBackgroundClipTextHasBackground: F, flexShrink: U } = r, { words: V, requiredBreaks: de, allowSoftWrap: Ae, allowBreakWord: me, processedContent: ue, shouldCollapseTabsAndSpaces: Ie, lineLimit: Z, blockEllipsis: ne } = ru(e, r, h2), Ee = Id(n, b); + o.insertChild(Ee, o.getChildCount()), ga(U) && o.setFlexShrink(1); + let ve = s.getEngine(P2, T, r, h2), Re = m2 ? Ve(ue, "grapheme").filter((H) => !Ad(H) && !ve.has(H)) : []; + yield Re.map((H) => ({ word: H, locale: h2 })), Re.length && (ve = s.getEngine(P2, T, r, h2)); + function ke(H) { + return !!(p && Object.prototype.hasOwnProperty.call(p, H) && p[H]); + } + let { measureGrapheme: Ye, measureGraphemeArray: Me, measureText: Oe } = tu(ve, ke, { fontSize: P2, letterSpacing: O }), le = $n(S2) ? X(S2, P2, 1, r) : Ye(nr) * S2, Y = (H, j) => { + if (H.length === 0) + return { originWidth: 0, endingSpacesWidth: 0, text: H }; + let { index: fe, tabCount: Q } = Rd(H), ye = 0; + if (Q > 0) { + let xe = H.slice(0, fe), ee = H.slice(fe + Q), te = Oe(xe), ot = te + j; + ye = (le === 0 ? te : (Math.floor(ot / le) + Q) * le) + Oe(ee); } else - ye = Oe(Y); - let ae = Y.trimEnd() === Y ? ye : Oe(Y.trimEnd()); - return { originWidth: ye, endingSpacesWidth: ye - ae, text: Y }; - }, J = [], pe = [], G = [], Le = [], De = []; - function Ue(Y) { - let j = 0, fe = 0, K2 = -1, ye = 0, ae = 0, xe = 0, ee = 0; - J = [], G = [0], Le = [], De = []; + ye = Oe(H); + let ae = H.trimEnd() === H ? ye : Oe(H.trimEnd()); + return { originWidth: ye, endingSpacesWidth: ye - ae, text: H }; + }, J = [], pe = [], z = [], Le = [], De = []; + function qe(H) { + let j = 0, fe = 0, Q = -1, ye = 0, ae = 0, xe = 0, ee = 0; + J = [], z = [0], Le = [], De = []; let te = 0, ot = 0; for (; te < V.length && j < Z; ) { - let Q = V[te], We = de[te], ze = 0, { originWidth: Ar, endingSpacesWidth: Pe, text: er } = H(Q, ae); - Q = er, ze = Ar; - let qe = Pe; - We && xe === 0 && (xe = ve.height(Q)); - let Rt = b === "justify", we = te && ae + ze > Y + qe && Ae; - if (me && ze > Y && (!ae || we || We)) { - let tt = Ve(Q, "grapheme"); - V.splice(te, 1, ...tt), ae > 0 && (J.push(ae - ot), pe.push(ee), j++, ye += xe, ae = 0, xe = 0, ee = 0, G.push(1), K2 = -1), ot = qe; + let K2 = V[te], We = de[te], Ge = 0, { originWidth: Ar, endingSpacesWidth: Pe, text: er } = Y(K2, ae); + K2 = er, Ge = Ar; + let Ue = Pe; + We && xe === 0 && (xe = ve.height(K2)); + let Rt = b === "justify", we = te && ae + Ge > H + Ue && Ae; + if (me && Ge > H && (!ae || we || We)) { + let tt = Ve(K2, "grapheme"); + V.splice(te, 1, ...tt), ae > 0 && (J.push(ae - ot), pe.push(ee), j++, ye += xe, ae = 0, xe = 0, ee = 0, z.push(1), Q = -1), ot = Ue; continue; } if (We || we) - Ie && Q === nr && (ze = 0), J.push(ae - ot), pe.push(ee), j++, ye += xe, ae = ze, xe = ze ? Math.round(ve.height(Q)) : 0, ee = ze ? Math.round(ve.baseline(Q)) : 0, G.push(1), K2 = -1, We || (fe = Math.max(fe, Y)); + Ie && K2 === nr && (Ge = 0), J.push(ae - ot), pe.push(ee), j++, ye += xe, ae = Ge, xe = Ge ? Math.round(ve.height(K2)) : 0, ee = Ge ? Math.round(ve.baseline(K2)) : 0, z.push(1), Q = -1, We || (fe = Math.max(fe, H)); else { - ae += ze; - let tt = Math.round(ve.height(Q)); - tt > xe && (xe = tt, ee = Math.round(ve.baseline(Q))), Rt && G[G.length - 1]++; + ae += Ge; + let tt = Math.round(ve.height(K2)); + tt > xe && (xe = tt, ee = Math.round(ve.baseline(K2))), Rt && z[z.length - 1]++; } - Rt && K2++, fe = Math.max(fe, ae); - let et2 = ae - ze; - if (ze === 0) - De.push({ y: ye, x: et2, width: 0, line: j, lineIndex: K2, isImage: false }); + Rt && Q++, fe = Math.max(fe, ae); + let et2 = ae - Ge; + if (Ge === 0) + De.push({ y: ye, x: et2, width: 0, line: j, lineIndex: Q, isImage: false }); else { - let tt = Ve(Q, "word"); + let tt = Ve(K2, "word"); for (let bt = 0; bt < tt.length; bt++) { let vt = tt[bt], je = 0, st = false; - Ee(vt) ? (je = P2, st = true) : !l2 && vt.length > 1 ? je = Oe(vt) : je = Ye(vt), Le.push(vt), De.push({ y: ye, x: et2, width: je, line: j, lineIndex: K2, isImage: st }), et2 += je; + ke(vt) ? (je = P2, st = true) : !l2 && vt.length > 1 ? je = Oe(vt) : je = Ye(vt), Le.push(vt), De.push({ y: ye, x: et2, width: je, line: j, lineIndex: Q, isImage: st }), et2 += je; } } - te++, ot = qe; + te++, ot = Ue; } return ae && (j < Z && (ye += xe), j++, J.push(ae), pe.push(ee)), { width: fe, height: ye }; } - let $e = { width: 0, height: 0 }; - ke.setMeasureFunc((Y) => { - let { width: j, height: fe } = Ue(Y); - if (k === "balance") { + let Be = { width: 0, height: 0 }; + Ee.setMeasureFunc((H) => { + let { width: j, height: fe } = qe(H); + if (E === "balance") { let ye = j / 2, ae = j, xe = j; for (; ye + 1 < ae; ) { xe = (ye + ae) / 2; - let { height: te } = Ue(xe); + let { height: te } = qe(xe); te > fe ? ye = xe : ae = xe; } - Ue(ae); + qe(ae); let ee = Math.ceil(ae); - return $e = { width: ee, height: fe }, { width: ee, height: fe }; + return Be = { width: ee, height: fe }, { width: ee, height: fe }; } - if (k === "pretty" && J[J.length - 1] < j / 3) { - let xe = j * 0.9, ee = Ue(xe); + if (E === "pretty" && J[J.length - 1] < j / 3) { + let xe = j * 0.9, ee = qe(xe); if (ee.height <= fe * 1.3) - return $e = { width: j, height: ee.height }, { width: j, height: ee.height }; + return Be = { width: j, height: ee.height }, { width: j, height: ee.height }; } - let K2 = Math.ceil(j); - return $e = { width: K2, height: fe }, { width: K2, height: fe }; + let Q = Math.ceil(j); + return Be = { width: Q, height: fe }, { width: Q, height: fe }; }); - let [ie, _t] = yield, $t = "", Tt = "", Ne = i._inheritedClipPathId, fr = i._inheritedMaskId, { left: kt, top: Pr, width: Qt, height: cr } = ke.getComputedLayout(), dr = typeof y == "string" ? X(y, P2, Qt, r, true) || 0 : y, Kt = o.getComputedWidth() - o.getComputedPadding(n.EDGE_LEFT) - o.getComputedPadding(n.EDGE_RIGHT) - o.getComputedBorder(n.EDGE_LEFT) - o.getComputedBorder(n.EDGE_RIGHT), Et = ie + kt, pt = _t + Pr, { matrix: nt, opacity: Jt } = Ha({ left: kt, top: Pr, width: Qt, height: cr, isInheritingTransform: u2 }, r), Xe = ""; + let [ie, _t] = yield, Bt = "", Tt = "", Ne = i._inheritedClipPathId, fr = i._inheritedMaskId, { left: Et, top: Pr, width: Qt, height: cr } = Ee.getComputedLayout(), dr = typeof y == "string" ? X(y, P2, Qt, r, true) || 0 : y, Kt = o.getComputedWidth() - o.getComputedPadding(n.EDGE_LEFT) - o.getComputedPadding(n.EDGE_RIGHT) - o.getComputedBorder(n.EDGE_LEFT) - o.getComputedBorder(n.EDGE_RIGHT), kt = ie + Et, pt = _t + Pr, { matrix: nt, opacity: Jt } = Ja({ left: Et, top: Pr, width: Qt, height: cr, isInheritingTransform: u2 }, r), Xe = ""; if (r.textShadowOffset) { - let { textShadowColor: Y, textShadowOffset: j, textShadowRadius: fe } = r; - Xe = Ya({ width: $e.width, height: $e.height, id: a }, { shadowColor: Y, shadowOffset: j, shadowRadius: fe }, Ki(r.color) || F && Ja(r.color)), Xe = M("defs", {}, Xe); + let { textShadowColor: H, textShadowOffset: j, textShadowRadius: fe } = r; + Xe = Za({ width: Be.width, height: Be.height, id: a }, { shadowColor: H, shadowOffset: j, shadowRadius: fe }, Ji(r.color) || F && nu(r.color)), Xe = M("defs", {}, Xe); } - let ht = "", mt = "", Zt = "", qt = -1, Ge = {}, it = {}, Ze = null, gt = 0; - for (let Y = 0; Y < Le.length; Y++) { - let j = De[Y], fe = De[Y + 1]; + let ht = "", mt = "", Zt = "", Ut = -1, ze = {}, it = {}, Ze = null, gt = 0; + for (let H = 0; H < Le.length; H++) { + let j = De[H], fe = De[H + 1]; if (!j) continue; - let K2 = Le[Y], ye = null, ae = false, xe = p ? p[K2] : null, ee = j.y, te = j.x, ot = j.width, Q = j.line, We = r.textDecorationLine === "underline" && (r.textDecorationSkipInk || "auto") !== "none"; - if (Q === qt) + let Q = Le[H], ye = null, ae = false, xe = p && Object.prototype.hasOwnProperty.call(p, Q) ? p[Q] : null, ee = j.y, te = j.x, ot = j.width, K2 = j.line, We = r.textDecorationLine === "underline" && (r.textDecorationSkipInk || "auto") !== "none"; + if (K2 === Ut) continue; - let ze = false; - if (Q === 0 && dr !== 0 && (te += dr), J.length > 1) { - let we = Qt - J[Q]; + let Ge = false; + if (K2 === 0 && dr !== 0 && (te += dr), J.length > 1) { + let we = Qt - J[K2]; if (b === "right" || b === "end") te += we; else if (b === "center") te += we / 2; - else if (b === "justify" && Q < J.length - 1) { - let Te = G[Q], et2 = Te > 1 ? we / (Te - 1) : 0; - te += et2 * j.lineIndex, ze = true; + else if (b === "justify" && K2 < J.length - 1) { + let Te = z[K2], et2 = Te > 1 ? we / (Te - 1) : 0; + te += et2 * j.lineIndex, Ge = true; } l2 && (te = Math.round(te)); } - let Ar = pe[Q], Pe = ve.baseline(K2), er = ve.height(K2), qe = Ar - Pe, Rt = (we) => !We || r.textDecorationLine !== "underline" ? void 0 : { underlineY: pt + we + qe + Pe + Pe * 0.1, strokeWidth: Math.max(1, P2 * 0.1) }; - if (Ge[Q] || (Ge[Q] = { left: te, top: pt + ee + qe, ascender: Pe, width: ze ? Qt : J[Q] }), Z !== 1 / 0) { + let Ar = pe[K2], Pe = ve.baseline(Q), er = ve.height(Q), Ue = Ar - Pe, Rt = (we) => !We || r.textDecorationLine !== "underline" ? void 0 : { underlineY: pt + we + Ue + Pe + Pe * 0.1, strokeWidth: Math.max(1, P2 * 0.1) }; + if (ze[K2] || (ze[K2] = { left: te, top: pt + ee + Ue, ascender: Pe, width: Ge ? Qt : J[K2] }), Z !== 1 / 0) { let vt = function(je, st) { let Ir = Ve(st, "grapheme", h2), pr = "", In = 0; for (let Rn of Ir) { @@ -18013,64 +18096,64 @@ async function* Ji(e, t) { return { subset: pr, resolvedWidth: In }; }, we = ne, Te = Ye(ne); Te > Kt && (we = wr, Te = Ye(we)); - let et2 = Ye(nr), tt = Q < J.length - 1; - if (Q + 1 === Z && (tt || J[Q] > Kt)) { + let et2 = Ye(nr), tt = K2 < J.length - 1; + if (K2 + 1 === Z && (tt || J[K2] > Kt)) { if (te + ot + Te + et2 > Kt) { - let { subset: je, resolvedWidth: st } = vt(te, K2); - K2 = je + we, qt = Q, Ge[Q].width = Math.max(0, st - Ge[Q].left), ae = true; - } else if (fe && fe.line !== Q) + let { subset: je, resolvedWidth: st } = vt(te, Q); + Q = je + we, Ut = K2, ze[K2].width = Math.max(0, st - ze[K2].left), ae = true; + } else if (fe && fe.line !== K2) if (b === "center") { - let { subset: je, resolvedWidth: st } = vt(te, K2); - K2 = je + we, qt = Q, Ge[Q].width = Math.max(0, st - Ge[Q].left), ae = true; + let { subset: je, resolvedWidth: st } = vt(te, Q); + Q = je + we, Ut = K2, ze[K2].width = Math.max(0, st - ze[K2].left), ae = true; } else { - let je = Le[Y + 1], { subset: st, resolvedWidth: Ir } = vt(ot + te, je); - K2 = K2 + st + we, qt = Q, Ge[Q].width = Math.max(0, Ir - Ge[Q].left), ae = true; + let je = Le[H + 1], { subset: st, resolvedWidth: Ir } = vt(ot + te, je); + Q = Q + st + we, Ut = K2, ze[K2].width = Math.max(0, Ir - ze[K2].left), ae = true; } } } if (xe) ee += 0; else if (l2) { - if (!K2.includes(Qi) && !da.includes(K2) && Le[Y + 1] && fe && !fe.isImage && ee === fe.y && !ae) { - Ze === null && (gt = te), Ze = Ze === null ? K2 : Ze + K2; + if (!Q.includes(Ki) && !pa.includes(Q) && Le[H + 1] && fe && !fe.isImage && ee === fe.y && !ae) { + Ze === null && (gt = te), Ze = Ze === null ? Q : Ze + Q; continue; } - let we = Ze === null ? K2 : Ze + K2, Te = Ze === null ? te : gt, et2 = j.width + te - Te, tt = Rt(ee), bt = ve.getSVG(we.replace(/(\t)+/g, ""), { fontSize: P2, left: Et + Te, top: pt + ee + Pe + qe, letterSpacing: O }, tt); - ye = bt.path, We && bt.boxes && bt.boxes.length && (it[Q] || (it[Q] = [])).push(...bt.boxes), Ze = null, f && (Zt += M("rect", { x: Et + Te, y: pt + ee + qe, width: et2, height: er, fill: "transparent", stroke: "#575eff", "stroke-width": 1, transform: nt || void 0, "clip-path": Ne ? `url(#${Ne})` : void 0 }) + M("line", { x1: Et + te, x2: Et + te + j.width, y1: pt + ee + qe + Pe, y2: pt + ee + qe + Pe, stroke: "#14c000", "stroke-width": 1, transform: nt || void 0, "clip-path": Ne ? `url(#${Ne})` : void 0 })); - } else if (ee += Pe + qe, We && !xe) { - let we = Rt(ee), Te = ve.getSVG(K2.replace(/(\t)+/g, ""), { fontSize: P2, left: Et + te, top: pt + ee, letterSpacing: O }, we); - Te.boxes && Te.boxes.length && (it[Q] || (it[Q] = [])).push(...Te.boxes); + let we = Ze === null ? Q : Ze + Q, Te = Ze === null ? te : gt, et2 = j.width + te - Te, tt = Rt(ee), bt = ve.getSVG(we.replace(/(\t)+/g, ""), { fontSize: P2, left: kt + Te, top: pt + ee + Pe + Ue, letterSpacing: O }, tt); + ye = bt.path, We && bt.boxes && bt.boxes.length && (it[K2] || (it[K2] = [])).push(...bt.boxes), Ze = null, f && (Zt += M("rect", { x: kt + Te, y: pt + ee + Ue, width: et2, height: er, fill: "transparent", stroke: "#575eff", "stroke-width": 1, transform: nt || void 0, "clip-path": Ne ? `url(#${Ne})` : void 0 }) + M("line", { x1: kt + te, x2: kt + te + j.width, y1: pt + ee + Ue + Pe, y2: pt + ee + Ue + Pe, stroke: "#14c000", "stroke-width": 1, transform: nt || void 0, "clip-path": Ne ? `url(#${Ne})` : void 0 })); + } else if (ee += Pe + Ue, We && !xe) { + let we = Rt(ee), Te = ve.getSVG(Q.replace(/(\t)+/g, ""), { fontSize: P2, left: kt + te, top: pt + ee, letterSpacing: O }, we); + Te.boxes && Te.boxes.length && (it[K2] || (it[K2] = [])).push(...Te.boxes); } if (ye !== null) mt += ye + " "; else { - let [we, Te] = Hi({ content: K2, filter: Xe, id: a, left: Et + te, top: pt + ee, width: ot, height: er, matrix: nt, opacity: Jt, image: xe, clipPathId: Ne, debug: f, shape: !!I }, r); - $t += we, Tt += Te; + let [we, Te] = Yi({ content: Q, filter: Xe, id: a, left: kt + te, top: pt + ee, width: ot, height: er, matrix: nt, opacity: Jt, image: xe, clipPathId: Ne, debug: f, shape: !!I }, r); + Bt += we, Tt += Te; } if (ae) break; } - if (r.textDecorationLine && (ht = Object.entries(Ge).map(([Y, j]) => { + if (r.textDecorationLine && (ht = Object.entries(ze).map(([H, j]) => { if (!j) return ""; - let fe = it[Y] || []; - return Yi({ left: Et + j.left, top: j.top, width: j.width, ascender: j.ascender, clipPathId: Ne, matrix: nt, glyphBoxes: fe }, r); + let fe = it[H] || []; + return Xi({ left: kt + j.left, top: j.top, width: j.width, ascender: j.ascender, clipPathId: Ne, matrix: nt, glyphBoxes: fe }, r); }).join("")), mt) { - let Y = (!Ki(r.color) || Xe) && Jt !== 0 ? `` + M("path", { fill: Xe && (Ki(r.color) || F && Ja(r.color)) ? "black" : r.color, d: mt, transform: nt || void 0, opacity: Jt !== 1 ? Jt : void 0, style: w2 ? `filter:${w2}` : void 0, "stroke-width": i.WebkitTextStrokeWidth ? `${i.WebkitTextStrokeWidth}px` : void 0, stroke: i.WebkitTextStrokeWidth ? i.WebkitTextStrokeColor : void 0, "stroke-linejoin": i.WebkitTextStrokeWidth ? "round" : void 0, "paint-order": i.WebkitTextStrokeWidth ? "stroke" : void 0 }) + "" : ""; - I && (Tt = M("path", { d: mt, transform: nt || void 0 })), $t += (Xe ? Xe + M("g", { filter: `url(#satori_s-${a})` }, Y + ht) : Y + ht) + Zt; + let H = (!Ji(r.color) || Xe) && Jt !== 0 ? `` + M("path", { fill: Xe && (Ji(r.color) || F && nu(r.color)) ? "black" : r.color, d: mt, transform: nt || void 0, opacity: Jt !== 1 ? Jt : void 0, style: w2 ? `filter:${w2}` : void 0, "stroke-width": i.WebkitTextStrokeWidth ? `${i.WebkitTextStrokeWidth}px` : void 0, stroke: i.WebkitTextStrokeWidth ? i.WebkitTextStrokeColor : void 0, "stroke-linejoin": i.WebkitTextStrokeWidth ? "round" : void 0, "paint-order": i.WebkitTextStrokeWidth ? "stroke" : void 0 }) + "" : ""; + I && (Tt = M("path", { d: mt, transform: nt || void 0 })), Bt += (Xe ? Xe + M("g", { filter: `url(#satori_s-${a})` }, H + ht) : H + ht) + Zt; } else - ht && ($t += Xe ? M("g", { filter: `url(#satori_s-${a})` }, ht) : ht); - return Tt && (r._inheritedBackgroundClipTextPath.value += Tt), $t; + ht && (Bt += Xe ? M("g", { filter: `url(#satori_s-${a})` }, ht) : ht); + return Tt && (r._inheritedBackgroundClipTextPath.value += Tt), Bt; } -function Sd(e, t) { +function Id(e, t) { let n = e.Node.create(); return n.setAlignItems(e.ALIGN_BASELINE), n.setJustifyContent(He(t, { left: e.JUSTIFY_FLEX_START, right: e.JUSTIFY_FLEX_END, center: e.JUSTIFY_CENTER, justify: e.JUSTIFY_SPACE_BETWEEN, start: e.JUSTIFY_FLEX_START, end: e.JUSTIFY_FLEX_END }, e.JUSTIFY_FLEX_START, "textAlign")), n; } -function _d(e) { +function Rd(e) { let t = /(\t)+/.exec(e); return t ? { index: t.index, tabCount: t[0].length } : { index: null, tabCount: 0 }; } -function Xn(e, t, n, r, i) { +function Kn(e, t, n, r, i) { let o = [], s = t.at(-1), a = s && s.offset && s.offset.unit === "%" && r ? +s.offset.value : 100; for (let p of t) { let { color: h2 } = p; @@ -18095,27 +18178,27 @@ function Xn(e, t, n, r, i) { return h2 ? h2.alpha === 0 ? { ...p, color: "rgba(0, 0, 0, 1)" } : { ...p, color: `rgba(255, 255, 255, ${h2.alpha})` } : p; }) : o; } -function eu({ id: e, width: t, height: n, repeatX: r, repeatY: i }, o, s, a, u2, f) { +function ou({ id: e, width: t, height: n, repeatX: r, repeatY: i }, o, s, a, u2, f) { let l2 = P(o), [p, h2] = s, m2 = o.startsWith("repeating"), b, y, T; if (l2.orientation.type === "directional") - b = Od(l2.orientation.value), y = Math.sqrt(Math.pow((b.x2 - b.x1) * p, 2) + Math.pow((b.y2 - b.y1) * h2, 2)); + b = Nd(l2.orientation.value), y = Math.sqrt(Math.pow((b.x2 - b.x1) * p, 2) + Math.pow((b.y2 - b.y1) * h2, 2)); else if (l2.orientation.type === "angular") { - let { length: O, ...I } = Pd(Ai(`${l2.orientation.value.value}${l2.orientation.value.unit}`) / 180 * Math.PI, p, h2); + let { length: O, ...I } = Wd(Ri(`${l2.orientation.value.value}${l2.orientation.value.unit}`) / 180 * Math.PI, p, h2); y = O, b = I; } - T = m2 ? Ad(l2.stops, y, b, u2) : b; - let k = Xn(m2 ? Ed(l2.stops, y) : y, l2.stops, u2, m2, f), P2 = `satori_bi${e}`, w2 = `satori_pattern_${e}`, S2 = M("pattern", { id: w2, x: a[0] / t, y: a[1] / n, width: r ? p / t : "1", height: i ? h2 / n : "1", patternUnits: "objectBoundingBox" }, M("linearGradient", { id: P2, ...T, spreadMethod: m2 ? "repeat" : "pad" }, k.map((O) => M("stop", { offset: (O.offset ?? 0) * 100 + "%", "stop-color": O.color })).join("")) + M("rect", { x: 0, y: 0, width: p, height: h2, fill: `url(#${P2})` })); + T = m2 ? Fd(l2.stops, y, b, u2) : b; + let E = Kn(m2 ? Md(l2.stops, y) : y, l2.stops, u2, m2, f), P2 = `satori_bi${e}`, w2 = `satori_pattern_${e}`, S2 = M("pattern", { id: w2, x: a[0] / t, y: a[1] / n, width: r ? p / t : "1", height: i ? h2 / n : "1", patternUnits: "objectBoundingBox" }, M("linearGradient", { id: P2, ...T, spreadMethod: m2 ? "repeat" : "pad" }, E.map((O) => M("stop", { offset: (O.offset ?? 0) * 100 + "%", "stop-color": O.color })).join("")) + M("rect", { x: 0, y: 0, width: p, height: h2, fill: `url(#${P2})` })); return [w2, S2]; } -function Ed(e, t) { +function Md(e, t) { let n = e[e.length - 1], { offset: r } = n; return r ? r.unit === "%" ? Number(r.value) / 100 * t : Number(r.value) : t; } -function Od(e) { +function Nd(e) { let t = 0, n = 0, r = 0, i = 0; return e.includes("top") ? n = 1 : e.includes("bottom") && (i = 1), e.includes("left") ? t = 1 : e.includes("right") && (r = 1), !t && !r && !n && !i && (n = 1), { x1: t, y1: n, x2: r, y2: i }; } -function Pd(e, t, n) { +function Wd(e, t, n) { let r = Math.pow(n / t, 2); e = (e % (Math.PI * 2) + Math.PI * 2) % (Math.PI * 2); let i, o, s, a, u2, f, l2, p, h2 = (m2) => { @@ -18137,28 +18220,28 @@ function Pd(e, t, n) { }; return h2(e), { x1: i / t, y1: o / n, x2: s / t, y2: a / n, length: u2 }; } -function Ad(e, t, n, r) { +function Fd(e, t, n, r) { let { x1: i, x2: o, y1: s, y2: a } = n, u2 = e[0].offset ? e[0].offset.unit === "%" ? Number(e[0].offset.value) / 100 : X(`${e[0].offset.value}${e[0].offset.unit}`, r.fontSize, t, r, true) / t : 0, f = e.at(-1).offset ? e.at(-1).offset.unit === "%" ? Number(e.at(-1).offset.value) / 100 : X(`${e.at(-1).offset.value}${e.at(-1).offset.unit}`, r.fontSize, t, r, true) / t : 1, l2 = (o - i) * u2 + i, p = (a - s) * u2 + s, h2 = (o - i) * f + i, m2 = (a - s) * f + s; return { x1: l2, y1: p, x2: h2, y2: m2 }; } -function ru({ id: e, width: t, height: n, repeatX: r, repeatY: i }, o, s, a, u2, f) { +function au({ id: e, width: t, height: n, repeatX: r, repeatY: i }, o, s, a, u2, f) { var ue; - let { shape: l2, stops: p, position: h2, size: m2, repeating: b } = K(o), [y, T] = s, k = y / 2, P2 = T / 2, w2 = Cd(h2.x, h2.y, y, T, u2.fontSize, u2); - k = w2.x, P2 = w2.y; - let S2 = Rd(t, p, b, u2), O = Xn(S2, p, u2, b, f), I = `satori_radial_${e}`, F = `satori_pattern_${e}`, q = `satori_mask_${e}`, V = Md(l2, m2, u2.fontSize, { x: k, y: P2 }, [y, T], u2, b), de = Ld(l2, u2.fontSize, p, [y, T], u2, b, V), Ae = M("pattern", { id: F, x: a[0] / t, y: a[1] / n, width: r ? y / t : "1", height: i ? T / n : "1", patternUnits: "objectBoundingBox" }, M("radialGradient", { id: I, ...de }, O.map((Ie) => M("stop", { offset: Ie.offset || 0, "stop-color": Ie.color })).join("")) + M("mask", { id: q }, M("rect", { x: 0, y: 0, width: y, height: T, fill: "#fff" })) + M("rect", { x: 0, y: 0, width: y, height: T, fill: ((ue = O.at(-1)) == null ? void 0 : ue.color) || "transparent" }) + M(l2, { cx: k, cy: P2, width: y, height: T, ...V, fill: `url(#${I})`, mask: `url(#${q})` })); + let { shape: l2, stops: p, position: h2, size: m2, repeating: b } = K(o), [y, T] = s, E = y / 2, P2 = T / 2, w2 = Bd(h2.x, h2.y, y, T, u2.fontSize, u2); + E = w2.x, P2 = w2.y; + let S2 = $d(t, p, b, u2), O = Kn(S2, p, u2, b, f), I = `satori_radial_${e}`, F = `satori_pattern_${e}`, U = `satori_mask_${e}`, V = qd(l2, m2, u2.fontSize, { x: E, y: P2 }, [y, T], u2, b), de = Ud(l2, u2.fontSize, p, [y, T], u2, b, V), Ae = M("pattern", { id: F, x: a[0] / t, y: a[1] / n, width: r ? y / t : "1", height: i ? T / n : "1", patternUnits: "objectBoundingBox" }, M("radialGradient", { id: I, ...de }, O.map((Ie) => M("stop", { offset: Ie.offset || 0, "stop-color": Ie.color })).join("")) + M("mask", { id: U }, M("rect", { x: 0, y: 0, width: y, height: T, fill: "#fff" })) + M("rect", { x: 0, y: 0, width: y, height: T, fill: ((ue = O.at(-1)) == null ? void 0 : ue.color) || "transparent" }) + M(l2, { cx: E, cy: P2, width: y, height: T, ...V, fill: `url(#${I})`, mask: `url(#${U})` })); return [F, Ae]; } -function Rd(e, t, n, r) { +function $d(e, t, n, r) { if (!n) return e; let i = t.at(-1); return !i || !i.offset || i.offset.unit === "%" ? e : X(`${i.offset.value}${i.offset.unit}`, +r.fontSize, e, r, true); } -function Cd(e, t, n, r, i, o) { +function Bd(e, t, n, r, i, o) { let s = { x: n / 2, y: r / 2 }; - return e.type === "keyword" ? Object.assign(s, tu(e.value, n, r, "x")) : s.x = X(`${e.value.value}${e.value.unit}`, i, n, o, true) ?? n / 2, t.type === "keyword" ? Object.assign(s, tu(t.value, n, r, "y")) : s.y = X(`${t.value.value}${t.value.unit}`, i, r, o, true) ?? r / 2, s; + return e.type === "keyword" ? Object.assign(s, su(e.value, n, r, "x")) : s.x = X(`${e.value.value}${e.value.unit}`, i, n, o, true) ?? n / 2, t.type === "keyword" ? Object.assign(s, su(t.value, n, r, "y")) : s.y = X(`${t.value.value}${t.value.unit}`, i, r, o, true) ?? r / 2, s; } -function tu(e, t, n, r) { +function su(e, t, n, r) { switch (e) { case "center": return { [r]: r === "x" ? t / 2 : n / 2 }; @@ -18172,19 +18255,19 @@ function tu(e, t, n, r) { return { y: n }; } } -function Ld(e, t, n, [r, i], o, s, a) { +function Ud(e, t, n, [r, i], o, s, a) { let { r: u2, rx: f, ratio: l2 = 1 } = a; if (!s) return { spreadMethod: "pad" }; let p = n.at(-1), h2 = e === "circle" ? u2 * 2 : f * 2; return { spreadMethod: "repeat", cx: "50%", cy: "50%", r: p.offset.unit === "%" ? `${Number(p.offset.value) * Math.min(i / r, 1) / l2}%` : Number(X(`${p.offset.value}${p.offset.unit}`, t, r, o, true) / h2) }; } -function Md(e, t, n, r, i, o, s) { +function qd(e, t, n, r, i, o, s) { let [a, u2] = i, { x: f, y: l2 } = r, p = {}, h2 = 0, m2 = 0; - if (Nd(t)) { + if (zd(t)) { if (t.some((b) => b.value.value.startsWith("-"))) throw new Error("disallow setting negative values to the size of the shape. Check https://w3c.github.io/csswg-drafts/css-images/#valdef-rg-size-length-0"); - return e === "circle" ? Object.assign(p, { r: Number(X(`${t[0].value.value}${t[0].value.unit}`, n, a, o, true)) }) : Object.assign(p, { rx: Number(X(`${t[0].value.value}${t[0].value.unit}`, n, a, o, true)), ry: Number(X(`${t[1].value.value}${t[1].value.unit}`, n, u2, o, true)) }), Qn(p, a, u2, f, l2, s, e), p; + return e === "circle" ? Object.assign(p, { r: Number(X(`${t[0].value.value}${t[0].value.unit}`, n, a, o, true)) }) : Object.assign(p, { rx: Number(X(`${t[0].value.value}${t[0].value.unit}`, n, a, o, true)), ry: Number(X(`${t[1].value.value}${t[1].value.unit}`, n, u2, o, true)) }), Jn(p, a, u2, f, l2, s, e), p; } switch (t[0].value) { case "farthest-corner": @@ -18194,23 +18277,23 @@ function Md(e, t, n, r, i, o, s) { h2 = Math.min(Math.abs(a - f), Math.abs(f)), m2 = Math.min(Math.abs(u2 - l2), Math.abs(l2)); break; case "farthest-side": - return e === "circle" ? p.r = Math.max(Math.abs(a - f), Math.abs(f), Math.abs(u2 - l2), Math.abs(l2)) : (p.rx = Math.max(Math.abs(a - f), Math.abs(f)), p.ry = Math.max(Math.abs(u2 - l2), Math.abs(l2))), Qn(p, a, u2, f, l2, s, e), p; + return e === "circle" ? p.r = Math.max(Math.abs(a - f), Math.abs(f), Math.abs(u2 - l2), Math.abs(l2)) : (p.rx = Math.max(Math.abs(a - f), Math.abs(f)), p.ry = Math.max(Math.abs(u2 - l2), Math.abs(l2))), Jn(p, a, u2, f, l2, s, e), p; case "closest-side": - return e === "circle" ? p.r = Math.min(Math.abs(a - f), Math.abs(f), Math.abs(u2 - l2), Math.abs(l2)) : (p.rx = Math.min(Math.abs(a - f), Math.abs(f)), p.ry = Math.min(Math.abs(u2 - l2), Math.abs(l2))), Qn(p, a, u2, f, l2, s, e), p; + return e === "circle" ? p.r = Math.min(Math.abs(a - f), Math.abs(f), Math.abs(u2 - l2), Math.abs(l2)) : (p.rx = Math.min(Math.abs(a - f), Math.abs(f)), p.ry = Math.min(Math.abs(u2 - l2), Math.abs(l2))), Jn(p, a, u2, f, l2, s, e), p; } - return e === "circle" ? p.r = Math.sqrt(h2 * h2 + m2 * m2) : Object.assign(p, nu(h2, m2)), Qn(p, a, u2, f, l2, s, e), p; + return e === "circle" ? p.r = Math.sqrt(h2 * h2 + m2 * m2) : Object.assign(p, uu(h2, m2)), Jn(p, a, u2, f, l2, s, e), p; } -function Qn(e, t, n, r, i, o, s) { +function Jn(e, t, n, r, i, o, s) { if (o) if (s === "ellipse") { - let a = Math.max(Math.abs(t - r), Math.abs(r)), u2 = Math.max(Math.abs(n - i), Math.abs(i)), { rx: f, ry: l2 } = nu(a, u2); + let a = Math.max(Math.abs(t - r), Math.abs(r)), u2 = Math.max(Math.abs(n - i), Math.abs(i)), { rx: f, ry: l2 } = uu(a, u2); e.ratio = Math.max(f / e.rx, l2 / e.ry), e.ratio > 1 && (e.rx *= e.ratio, e.ry *= e.ratio); } else { let a = Math.max(Math.abs(t - r), Math.abs(r)), u2 = Math.max(Math.abs(n - i), Math.abs(i)), f = Math.sqrt(a * a + u2 * u2); e.ratio = f / e.r, e.ratio > 1 && (e.r = f); } } -function nu(e, t) { +function uu(e, t) { let n = t !== 0 ? e / t : 1; if (e === 0) return { rx: 0, ry: 0 }; @@ -18219,13 +18302,13 @@ function nu(e, t) { return { ry: r, rx: r * n }; } } -function Nd(e) { +function zd(e) { return !e.some((t) => t.type === "keyword"); } -function eo(e, t) { +function to(e, t) { return typeof e == "string" && e.endsWith("%") ? t * parseFloat(e) / 100 : +e; } -function Wd(e, t, n, r, i) { +function Gd(e, t, n, r, i) { if (!r || !i) return [t, n]; if (e === "cover") { @@ -18239,17 +18322,17 @@ function Wd(e, t, n, r, i) { if (e === "auto" || e.includes("auto")) { let o = e.split(" "), s = o[0] || "auto", a = o[1] || o[0] || "auto", u2 = r, f = i; if (s === "auto" && a !== "auto") { - let l2 = eo(a, n); + let l2 = to(a, n); f = l2, u2 = r / i * l2; } else if (a === "auto" && s !== "auto") { - let l2 = eo(s, t); + let l2 = to(s, t); u2 = l2, f = i / r * l2; } return [u2, f]; } return [t, n]; } -function Zi(e, { x: t, y: n, defaultX: r, defaultY: i }) { +function eo(e, { x: t, y: n, defaultX: r, defaultY: i }) { return (e ? e.split(" ").map((o) => { try { let s = new xt(o); @@ -18257,64 +18340,64 @@ function Zi(e, { x: t, y: n, defaultX: r, defaultY: i }) { } catch { return null; } - }).filter((o) => o !== null) : [r, i]).map((o, s) => eo(o, [t, n][s])); + }).filter((o) => o !== null) : [r, i]).map((o, s) => to(o, [t, n][s])); } -async function qr({ id: e, width: t, height: n, left: r, top: i }, { image: o, size: s, position: a, repeat: u2 }, f, l2) { +async function Ur({ id: e, width: t, height: n, left: r, top: i }, { image: o, size: s, position: a, repeat: u2 }, f, l2) { u2 = u2 || "repeat", l2 = l2 || "background"; - let p = u2 === "repeat-x" || u2 === "repeat", h2 = u2 === "repeat-y" || u2 === "repeat", m2 = s && (s === "cover" || s === "contain" || s === "auto" || s.includes("auto")), b = o.startsWith("linear-gradient(") || o.startsWith("repeating-linear-gradient(") || o.startsWith("radial-gradient(") || o.startsWith("repeating-radial-gradient("), y = m2 && b ? [t, n] : m2 ? [0, 0] : Zi(s, { x: t, y: n, defaultX: t, defaultY: n }), T = Zi(a, { x: t, y: n, defaultX: 0, defaultY: 0 }); + let p = u2 === "repeat-x" || u2 === "repeat", h2 = u2 === "repeat-y" || u2 === "repeat", m2 = s && (s === "cover" || s === "contain" || s === "auto" || s.includes("auto")), b = o.startsWith("linear-gradient(") || o.startsWith("repeating-linear-gradient(") || o.startsWith("radial-gradient(") || o.startsWith("repeating-radial-gradient("), y = m2 && b ? [t, n] : m2 ? [0, 0] : eo(s, { x: t, y: n, defaultX: t, defaultY: n }), T = eo(a, { x: t, y: n, defaultX: 0, defaultY: 0 }); if (o.startsWith("linear-gradient(") || o.startsWith("repeating-linear-gradient(")) - return eu({ id: e, width: t, height: n, repeatX: p, repeatY: h2 }, o, y, T, f, l2); + return ou({ id: e, width: t, height: n, repeatX: p, repeatY: h2 }, o, y, T, f, l2); if (o.startsWith("radial-gradient(") || o.startsWith("repeating-radial-gradient(")) - return ru({ id: e, width: t, height: n, repeatX: p, repeatY: h2 }, o, y, T, f, l2); + return au({ id: e, width: t, height: n, repeatX: p, repeatY: h2 }, o, y, T, f, l2); if (o.startsWith("url(")) { - let [k, P2, w2] = await xr(o.slice(4, -1)), S2, O; + let [E, P2, w2] = await xr(o.slice(4, -1)), S2, O; if (m2) { - let [I, F] = Wd(s, t, n, P2, w2); + let [I, F] = Gd(s, t, n, P2, w2); S2 = I, O = F; } else { - let I = Zi(s, { x: t, y: n, defaultX: 0, defaultY: 0 }); + let I = eo(s, { x: t, y: n, defaultX: 0, defaultY: 0 }); S2 = l2 === "mask" ? P2 || I[0] : I[0] || P2, O = l2 === "mask" ? w2 || I[1] : I[1] || w2; } - return [`satori_bi${e}`, M("pattern", { id: `satori_bi${e}`, patternContentUnits: "userSpaceOnUse", patternUnits: "userSpaceOnUse", x: T[0] + r, y: T[1] + i, width: p ? S2 : "100%", height: h2 ? O : "100%" }, M("image", { x: 0, y: 0, width: S2, height: O, preserveAspectRatio: "none", href: k }))]; + return [`satori_bi${e}`, M("pattern", { id: `satori_bi${e}`, patternContentUnits: "userSpaceOnUse", patternUnits: "userSpaceOnUse", x: T[0] + r, y: T[1] + i, width: p ? S2 : "100%", height: h2 ? O : "100%" }, M("image", { x: 0, y: 0, width: S2, height: O, preserveAspectRatio: "none", href: E }))]; } if (index_esm_default(o)) { - let k = index_esm_default(o), [P2, w2, S2, O] = k.values, F = `rgba(${P2},${w2},${S2},${O !== void 0 ? O : 1})`; + let E = index_esm_default(o), [P2, w2, S2, O] = E.values, F = `rgba(${P2},${w2},${S2},${O !== void 0 ? O : 1})`; return [`satori_bi${e}`, M("pattern", { id: `satori_bi${e}`, patternContentUnits: "userSpaceOnUse", patternUnits: "userSpaceOnUse", x: r, y: i, width: t, height: n }, M("rect", { x: 0, y: 0, width: t, height: n, fill: F }))]; } throw new Error(`Invalid background image: "${o}"`); } -function Fd([e, t]) { +function jd([e, t]) { return Math.round(e * 1e3) === 0 && Math.round(t * 1e3) === 0 ? 0 : Math.round(e * t / Math.sqrt(e * e + t * t) * 1e3) / 1e3; } -function Kn(e, t, n) { +function Zn(e, t, n) { return n < e + t && (n / 2 < e && n / 2 < t ? e = t = n / 2 : n / 2 < e ? e = n - t : n / 2 < t && (t = n - e)), [e, t]; } -function Jn(e) { +function ei(e) { e[0] = e[1] = Math.min(e[0], e[1]); } -function Zn(e, t, n, r, i) { +function ti(e, t, n, r, i) { if (typeof e == "string") { let o = e.split(" ").map((a) => a.trim()), s = !o[1] && !o[0].endsWith("%"); return o[1] = o[1] || o[0], [s, [Math.min(X(o[0], r, t, i, true), t), Math.min(X(o[1], r, n, i, true), n)]]; } return typeof e == "number" ? [true, [Math.min(e, t), Math.min(e, n)]] : [true, void 0]; } -var ei = (e) => e && e[0] !== 0 && e[1] !== 0; -function ou({ id: e, borderRadiusPath: t, borderType: n, left: r, top: i, width: o, height: s }, a) { +var ri = (e) => e && e[0] !== 0 && e[1] !== 0; +function fu({ id: e, borderRadiusPath: t, borderType: n, left: r, top: i, width: o, height: s }, a) { let u2 = `satori_brc-${e}`; return [M("clipPath", { id: u2 }, M(n, { x: r, y: i, width: o, height: s, d: t || void 0 })), u2]; } function jt({ left: e, top: t, width: n, height: r }, i, o) { let { borderTopLeftRadius: s, borderTopRightRadius: a, borderBottomLeftRadius: u2, borderBottomRightRadius: f, fontSize: l2 } = i, p, h2, m2, b; - if ([p, s] = Zn(s, n, r, l2, i), [h2, a] = Zn(a, n, r, l2, i), [m2, u2] = Zn(u2, n, r, l2, i), [b, f] = Zn(f, n, r, l2, i), !o && !ei(s) && !ei(a) && !ei(u2) && !ei(f)) + if ([p, s] = ti(s, n, r, l2, i), [h2, a] = ti(a, n, r, l2, i), [m2, u2] = ti(u2, n, r, l2, i), [b, f] = ti(f, n, r, l2, i), !o && !ri(s) && !ri(a) && !ri(u2) && !ri(f)) return ""; - s ||= [0, 0], a ||= [0, 0], u2 ||= [0, 0], f ||= [0, 0], [s[0], a[0]] = Kn(s[0], a[0], n), [u2[0], f[0]] = Kn(u2[0], f[0], n), [s[1], u2[1]] = Kn(s[1], u2[1], r), [a[1], f[1]] = Kn(a[1], f[1], r), p && Jn(s), h2 && Jn(a), m2 && Jn(u2), b && Jn(f); + s ||= [0, 0], a ||= [0, 0], u2 ||= [0, 0], f ||= [0, 0], [s[0], a[0]] = Zn(s[0], a[0], n), [u2[0], f[0]] = Zn(u2[0], f[0], n), [s[1], u2[1]] = Zn(s[1], u2[1], r), [a[1], f[1]] = Zn(a[1], f[1], r), p && ei(s), h2 && ei(a), m2 && ei(u2), b && ei(f); let y = []; y[0] = [a, a], y[1] = [f, [-f[0], f[1]]], y[2] = [u2, [-u2[0], -u2[1]]], y[3] = [s, [s[0], -s[1]]]; - let T = `h${n - s[0] - a[0]} a${y[0][0]} 0 0 1 ${y[0][1]}`, k = `v${r - a[1] - f[1]} a${y[1][0]} 0 0 1 ${y[1][1]}`, P2 = `h${f[0] + u2[0] - n} a${y[2][0]} 0 0 1 ${y[2][1]}`, w2 = `v${u2[1] + s[1] - r} a${y[3][0]} 0 0 1 ${y[3][1]}`; + let T = `h${n - s[0] - a[0]} a${y[0][0]} 0 0 1 ${y[0][1]}`, E = `v${r - a[1] - f[1]} a${y[1][0]} 0 0 1 ${y[1][1]}`, P2 = `h${f[0] + u2[0] - n} a${y[2][0]} 0 0 1 ${y[2][1]}`, w2 = `v${u2[1] + s[1] - r} a${y[3][0]} 0 0 1 ${y[3][1]}`; if (o) { let O = function(me) { - let ue = Fd([s, a, f, u2][me]); + let ue = jd([s, a, f, u2][me]); return me === 0 ? [[e + s[0] - ue, t + s[1] - ue], [e + s[0], t]] : me === 1 ? [[e + n - a[0] + ue, t + a[1] - ue], [e + n, t + a[1]]] : me === 2 ? [[e + n - f[0] + ue, t + r - f[1] + ue], [e + n - f[0], t + r]] : [[e + u2[0] - ue, t + r - u2[1] + ue], [e, t + r - u2[1]]]; }, S2 = o.indexOf(false); if (!o.includes(true)) @@ -18324,36 +18407,36 @@ function jt({ left: e, top: t, width: n, height: r }, i, o) { else for (; !o[S2]; ) S2 = (S2 + 1) % 4; - let I = "", F = O(S2), q = `M${F[0]} A${y[(S2 + 3) % 4][0]} 0 0 1 ${F[1]}`, V = 0; + let I = "", F = O(S2), U = `M${F[0]} A${y[(S2 + 3) % 4][0]} 0 0 1 ${F[1]}`, V = 0; for (; V < 4 && o[(S2 + V) % 4]; V++) - I += q + " ", q = [T, k, P2, w2][(S2 + V) % 4]; + I += U + " ", U = [T, E, P2, w2][(S2 + V) % 4]; let de = (S2 + V) % 4; - I += q.split(" ")[0]; + I += U.split(" ")[0]; let Ae = O(de); return I += ` A${y[(de + 3) % 4][0]} 0 0 1 ${Ae[0]}`, I; } - return `M${e + s[0]},${t} ${T} ${k} ${P2} ${w2}`; + return `M${e + s[0]},${t} ${T} ${E} ${P2} ${w2}`; } -function su(e, t, n) { +function cu(e, t, n) { return n[e + "Width"] === n[t + "Width"] && n[e + "Style"] === n[t + "Style"] && n[e + "Color"] === n[t + "Color"]; } -function au({ id: e, currentClipPathId: t, borderPath: n, borderType: r, left: i, top: o, width: s, height: a }, u2) { +function du({ id: e, currentClipPathId: t, borderPath: n, borderType: r, left: i, top: o, width: s, height: a }, u2) { if (!(u2.borderTopWidth || u2.borderRightWidth || u2.borderBottomWidth || u2.borderLeftWidth)) return null; let l2 = `satori_bc-${e}`; return [M("clipPath", { id: l2, "clip-path": t ? `url(#${t})` : void 0 }, M(r, { x: i, y: o, width: s, height: a, d: n || void 0 })), l2]; } -function Ur({ left: e, top: t, width: n, height: r, props: i, asContentMask: o, maskBorderOnly: s }, a) { +function qr({ left: e, top: t, width: n, height: r, props: i, asContentMask: o, maskBorderOnly: s }, a) { let u2 = ["borderTop", "borderRight", "borderBottom", "borderLeft"]; if (!o && !u2.some((m2) => a[m2 + "Width"])) return ""; let f = "", l2 = 0; - for (; l2 > 0 && su(u2[l2], u2[(l2 + 3) % 4], a); ) + for (; l2 > 0 && cu(u2[l2], u2[(l2 + 3) % 4], a); ) l2 = (l2 + 3) % 4; let p = [false, false, false, false], h2 = []; for (let m2 = 0; m2 < 4; m2++) { - let b = (l2 + m2) % 4, y = (l2 + m2 + 1) % 4, T = u2[b], k = u2[y]; - if (p[b] = true, h2 = [a[T + "Width"], a[T + "Style"], a[T + "Color"], T], !su(T, k, a)) { + let b = (l2 + m2) % 4, y = (l2 + m2 + 1) % 4, T = u2[b], E = u2[y]; + if (p[b] = true, h2 = [a[T + "Width"], a[T + "Style"], a[T + "Color"], T], !cu(T, E, a)) { let P2 = (h2[0] || 0) + (o && !s && a[T.replace("border", "padding")] || 0); P2 && (f += M("path", { width: n, height: r, ...i, fill: "none", stroke: o ? "#000" : h2[2], "stroke-width": P2 * 2, "stroke-dasharray": !o && h2[1] === "dashed" ? P2 * 2 + " " + P2 : void 0, d: jt({ left: e, top: t, width: n, height: r }, a, p) })), p = [false, false, false, false]; } @@ -18364,104 +18447,104 @@ function Ur({ left: e, top: t, width: n, height: r, props: i, asContentMask: o, } return f; } -function to({ id: e, left: t, top: n, width: r, height: i, matrix: o, borderOnly: s }, a) { +function ro({ id: e, left: t, top: n, width: r, height: i, matrix: o, borderOnly: s }, a) { let u2 = (a.borderLeftWidth || 0) + (s ? 0 : a.paddingLeft || 0), f = (a.borderTopWidth || 0) + (s ? 0 : a.paddingTop || 0), l2 = (a.borderRightWidth || 0) + (s ? 0 : a.paddingRight || 0), p = (a.borderBottomWidth || 0) + (s ? 0 : a.paddingBottom || 0), h2 = { x: t + u2, y: n + f, width: r - u2 - l2, height: i - f - p }; - return M("mask", { id: e }, M("rect", { ...h2, fill: "#fff", transform: a.overflow === "hidden" && a.transform && o ? o : void 0, mask: a._inheritedMaskId ? `url(#${a._inheritedMaskId})` : void 0 }) + Ur({ left: t, top: n, width: r, height: i, props: { transform: o || void 0 }, asContentMask: true, maskBorderOnly: s }, a)); + return M("mask", { id: e }, M("rect", { ...h2, fill: "#fff", transform: a.overflow === "hidden" && a.transform && o ? o : void 0, mask: a._inheritedMaskId ? `url(#${a._inheritedMaskId})` : void 0 }) + qr({ left: t, top: n, width: r, height: i, props: { transform: o || void 0 }, asContentMask: true, maskBorderOnly: s }, a)); } -var Gr = { circle: /circle\((.+)\)/, ellipse: /ellipse\((.+)\)/, path: /path\((.+)\)/, polygon: /polygon\((.+)\)/, inset: /inset\((.+)\)/ }; -function cu({ width: e, height: t }, n, r) { +var zr = { circle: /circle\((.+)\)/, ellipse: /ellipse\((.+)\)/, path: /path\((.+)\)/, polygon: /polygon\((.+)\)/, inset: /inset\((.+)\)/ }; +function gu({ width: e, height: t }, n, r) { function i(f) { - let l2 = f.match(Gr.circle); + let l2 = f.match(zr.circle); if (!l2) return null; - let [, p] = l2, [h2, m2 = ""] = p.split("at").map((T) => T.trim()), { x: b, y } = fu(m2, e, t); + let [, p] = l2, [h2, m2 = ""] = p.split("at").map((T) => T.trim()), { x: b, y } = mu(m2, e, t); return { type: "circle", r: X(h2, r.fontSize, Math.sqrt(Math.pow(e, 2) + Math.pow(t, 2)) / Math.sqrt(2), r, true), cx: X(b, r.fontSize, e, r, true), cy: X(y, r.fontSize, t, r, true) }; } function o(f) { - let l2 = f.match(Gr.ellipse); + let l2 = f.match(zr.ellipse); if (!l2) return null; - let [, p] = l2, [h2, m2 = ""] = p.split("at").map((P2) => P2.trim()), [b, y] = h2.split(" "), { x: T, y: k } = fu(m2, e, t); - return { type: "ellipse", rx: X(b || "50%", r.fontSize, e, r, true), ry: X(y || "50%", r.fontSize, t, r, true), cx: X(T, r.fontSize, e, r, true), cy: X(k, r.fontSize, t, r, true) }; + let [, p] = l2, [h2, m2 = ""] = p.split("at").map((P2) => P2.trim()), [b, y] = h2.split(" "), { x: T, y: E } = mu(m2, e, t); + return { type: "ellipse", rx: X(b || "50%", r.fontSize, e, r, true), ry: X(y || "50%", r.fontSize, t, r, true), cx: X(T, r.fontSize, e, r, true), cy: X(E, r.fontSize, t, r, true) }; } function s(f) { - let l2 = f.match(Gr.path); + let l2 = f.match(zr.path); if (!l2) return null; - let [p, h2] = lu(l2[1]); + let [p, h2] = hu(l2[1]); return { type: "path", d: h2, "fill-rule": p }; } function a(f) { - let l2 = f.match(Gr.polygon); + let l2 = f.match(zr.polygon); if (!l2) return null; - let [p, h2] = lu(l2[1]); + let [p, h2] = hu(l2[1]); return { type: "polygon", "fill-rule": p, points: h2.split(",").map((m2) => m2.split(" ").map((b, y) => X(b, r.fontSize, y === 0 ? e : t, r, true)).join(" ")).join(",") }; } function u2(f) { - let l2 = f.match(Gr.inset); + let l2 = f.match(zr.inset); if (!l2) return null; - let [p, h2] = (l2[1].includes("round") ? l2[1] : `${l2[1].trim()} round 0`).split("round"), m2 = (0, import_css_to_react_native3.getStylesForProperty)("borderRadius", h2, true), b = Object.values(m2).map((S2) => String(S2)).map((S2, O) => X(S2, r.fontSize, O === 0 || O === 2 ? t : e, r, true) || 0), y = Object.values((0, import_css_to_react_native3.getStylesForProperty)("margin", p, true)).map((S2) => String(S2)).map((S2, O) => X(S2, r.fontSize, O === 0 || O === 2 ? t : e, r, true) || 0), T = y[3], k = y[0], P2 = e - (y[1] + y[3]), w2 = t - (y[0] + y[2]); - return b.some((S2) => S2 > 0) ? { type: "path", d: jt({ left: T, top: k, width: P2, height: w2 }, { ...n, ...m2 }) } : { type: "rect", x: T, y: k, width: P2, height: w2 }; + let [p, h2] = (l2[1].includes("round") ? l2[1] : `${l2[1].trim()} round 0`).split("round"), m2 = (0, import_css_to_react_native3.getStylesForProperty)("borderRadius", h2, true), b = Object.values(m2).map((S2) => String(S2)).map((S2, O) => X(S2, r.fontSize, O === 0 || O === 2 ? t : e, r, true) || 0), y = Object.values((0, import_css_to_react_native3.getStylesForProperty)("margin", p, true)).map((S2) => String(S2)).map((S2, O) => X(S2, r.fontSize, O === 0 || O === 2 ? t : e, r, true) || 0), T = y[3], E = y[0], P2 = e - (y[1] + y[3]), w2 = t - (y[0] + y[2]); + return b.some((S2) => S2 > 0) ? { type: "path", d: jt({ left: T, top: E, width: P2, height: w2 }, { ...n, ...m2 }) } : { type: "rect", x: T, y: E, width: P2, height: w2 }; } return { parseCircle: i, parseEllipse: o, parsePath: s, parsePolygon: a, parseInset: u2 }; } -function lu(e) { +function hu(e) { let [, t = "nonzero", n] = e.replace(/('|")/g, "").match(/^(nonzero|evenodd)?,?(.+)/) || []; return [t, n]; } -function fu(e, t, n) { +function mu(e, t, n) { let r = e.split(" "), i = { x: r[0] || "50%", y: r[1] || "50%" }; return r.forEach((o) => { o === "top" ? i.y = 0 : o === "bottom" ? i.y = n : o === "left" ? i.x = 0 : o === "right" ? i.x = t : o === "center" && (i.x = t / 2, i.y = n / 2); }), i; } -function ti(e) { +function ni(e) { return `satori_cp-${e}`; } -function du(e) { - return `url(#${ti(e)})`; +function bu(e) { + return `url(#${ni(e)})`; } -function pu(e, t, n) { +function vu(e, t, n) { if (t.clipPath === "none") return ""; - let r = cu(e, t, n), i = t.clipPath, o = { type: "" }; + let r = gu(e, t, n), i = t.clipPath, o = { type: "" }; for (let s of Object.keys(r)) if (o = r[s](i), o) break; if (o) { let { type: s, ...a } = o; - return M("clipPath", { id: ti(e.id), "clip-path": e.currentClipPath, transform: `translate(${e.left}, ${e.top})` }, M(s, a)); + return M("clipPath", { id: ni(e.id), "clip-path": e.currentClipPath, transform: `translate(${e.left}, ${e.top})` }, M(s, a)); } return ""; } -function ro({ left: e, top: t, width: n, height: r, path: i, matrix: o, id: s, currentClipPath: a, src: u2 }, f, l2) { - let p = "", h2 = f.clipPath && f.clipPath !== "none" ? pu({ left: e, top: t, width: n, height: r, path: i, id: s, matrix: o, currentClipPath: a, src: u2 }, f, l2) : ""; +function no({ left: e, top: t, width: n, height: r, path: i, matrix: o, id: s, currentClipPath: a, src: u2 }, f, l2) { + let p = "", h2 = f.clipPath && f.clipPath !== "none" ? vu({ left: e, top: t, width: n, height: r, path: i, id: s, matrix: o, currentClipPath: a, src: u2 }, f, l2) : ""; if (f.overflow !== "hidden" && !u2) p = ""; else { - let b = h2 ? `satori_ocp-${s}` : ti(s); + let b = h2 ? `satori_ocp-${s}` : ni(s); p = M("clipPath", { id: b, "clip-path": a }, M(i ? "path" : "rect", { x: e, y: t, width: n, height: r, d: i || void 0, transform: f.overflow === "hidden" && f.transform && o ? o : void 0 })); } - let m2 = to({ id: `satori_om-${s}`, left: e, top: t, width: n, height: r, matrix: o, borderOnly: !u2 }, f); + let m2 = ro({ id: `satori_om-${s}`, left: e, top: t, width: n, height: r, matrix: o, borderOnly: !u2 }, f); return h2 + p + m2; } -var Dd = (e) => `satori_mi-${e}`; -async function no(e, t, n) { +var Vd = (e) => `satori_mi-${e}`; +async function io(e, t, n) { if (!t.maskImage) return ["", ""]; let { left: r, top: i, width: o, height: s, id: a } = e, u2 = t.maskImage, f = u2.length; if (!f) return ["", ""]; - let l2 = Dd(a), p = ""; + let l2 = Vd(a), p = ""; for (let h2 = 0; h2 < f; h2++) { - let m2 = u2[h2], [b, y] = await qr({ id: `${l2}-${h2}`, left: r, top: i, width: o, height: s }, m2, n, "mask"); + let m2 = u2[h2], [b, y] = await Ur({ id: `${l2}-${h2}`, left: r, top: i, width: o, height: s }, m2, n, "mask"); p += y + M("rect", { x: r, y: i, width: o, height: s, fill: `url(#${b})` }); } return p = M("mask", { id: l2 }, p), [l2, p]; } -function Bd(e, t, n) { +function Hd(e, t, n) { let r = e.toLowerCase().trim().split(/\s+/), i = (u2, f) => ({ left: "0%", center: "50%", right: "100%", top: "0%", bottom: "100%" })[u2] || u2, o, s; if (r.length === 1) { let u2 = r[0]; @@ -18482,78 +18565,78 @@ function Bd(e, t, n) { }; return [a(o, t), a(s, n)]; } -async function zr({ id: e, left: t, top: n, width: r, height: i, isInheritingTransform: o, src: s, debug: a }, u2, f) { +async function Gr({ id: e, left: t, top: n, width: r, height: i, isInheritingTransform: o, src: s, debug: a }, u2, f) { if (u2.display === "none") return ""; let l2 = !!s, p = "rect", h2 = "", m2 = "", b = [], y = 1, T = ""; - u2.backgroundColor && b.push(u2.backgroundColor), u2.opacity !== void 0 && (y = +u2.opacity), u2.transform && (h2 = $r({ left: t, top: n, width: r, height: i }, u2.transform, o, u2.transformOrigin)); - let k = ""; + u2.backgroundColor && b.push(u2.backgroundColor), u2.opacity !== void 0 && (y = +u2.opacity), u2.transform && (h2 = Br({ left: t, top: n, width: r, height: i }, u2.transform, o, u2.transformOrigin)); + let E = ""; if (u2.backgroundImage) { let Z = []; for (let ne = 0; ne < u2.backgroundImage.length; ne++) { - let ke = u2.backgroundImage[ne], ve = await qr({ id: e + "_" + ne, width: r, height: i, left: t, top: n }, ke, f); + let Ee = u2.backgroundImage[ne], ve = await Ur({ id: e + "_" + ne, width: r, height: i, left: t, top: n }, Ee, f); ve && Z.unshift(ve); } for (let ne of Z) - b.push(`url(#${ne[0]})`), m2 += ne[1], ne[2] && (k += ne[2]); + b.push(`url(#${ne[0]})`), m2 += ne[1], ne[2] && (E += ne[2]); } - let [P2, w2] = await no({ id: e, left: t, top: n, width: r, height: i }, u2, f); + let [P2, w2] = await io({ id: e, left: t, top: n, width: r, height: i }, u2, f); m2 += w2; let S2 = P2 ? `url(#${P2})` : u2._inheritedMaskId ? `url(#${u2._inheritedMaskId})` : void 0, O = jt({ left: t, top: n, width: r, height: i }, u2); O && (p = "path"); let I = u2._inheritedClipPathId; a && (T = M("rect", { x: t, y: n, width: r, height: i, fill: "transparent", stroke: "#ff5757", "stroke-width": 1, transform: h2 || void 0, "clip-path": I ? `url(#${I})` : void 0 })); - let { backgroundClip: F, filter: q } = u2, V = F === "text" ? `url(#satori_bct-${e})` : I ? `url(#${I})` : u2.clipPath ? du(e) : void 0, de = ro({ left: t, top: n, width: r, height: i, path: O, id: e, matrix: h2, currentClipPath: V, src: s }, u2, f), Ae = b.map((Z) => M(p, { x: t, y: n, width: r, height: i, fill: Z, d: O || void 0, transform: h2 || void 0, "clip-path": u2.transform ? void 0 : V, style: q ? `filter:${q}` : void 0, mask: u2.transform ? void 0 : S2 })).join(""), me = au({ id: e, left: t, top: n, width: r, height: i, currentClipPathId: I, borderPath: O, borderType: p }, u2), ue; + let { backgroundClip: F, filter: U } = u2, V = F === "text" ? `url(#satori_bct-${e})` : I ? `url(#${I})` : u2.clipPath ? bu(e) : void 0, de = no({ left: t, top: n, width: r, height: i, path: O, id: e, matrix: h2, currentClipPath: V, src: s }, u2, f), Ae = b.map((Z) => M(p, { x: t, y: n, width: r, height: i, fill: Z, d: O || void 0, transform: h2 || void 0, "clip-path": u2.transform ? void 0 : V, style: U ? `filter:${U}` : void 0, mask: u2.transform ? void 0 : S2 })).join(""), me = du({ id: e, left: t, top: n, width: r, height: i, currentClipPathId: I, borderPath: O, borderType: p }, u2), ue; if (l2) { - let Z = (u2.borderLeftWidth || 0) + (u2.paddingLeft || 0), ne = (u2.borderTopWidth || 0) + (u2.paddingTop || 0), ke = (u2.borderRightWidth || 0) + (u2.paddingRight || 0), ve = (u2.borderBottomWidth || 0) + (u2.paddingBottom || 0), Re = r - Z - ke, Ee = i - ne - ve, Ye = (u2.objectPosition || "center").toString(), [Me, Oe] = Bd(Ye, Re, Ee), le = u2.__naturalWidth || Re, H = u2.__naturalHeight || Ee, J, pe = Re, G = Ee, Le = t + Z, De = n + ne; + let Z = (u2.borderLeftWidth || 0) + (u2.paddingLeft || 0), ne = (u2.borderTopWidth || 0) + (u2.paddingTop || 0), Ee = (u2.borderRightWidth || 0) + (u2.paddingRight || 0), ve = (u2.borderBottomWidth || 0) + (u2.paddingBottom || 0), Re = r - Z - Ee, ke = i - ne - ve, Ye = (u2.objectPosition || "center").toString(), [Me, Oe] = Hd(Ye, Re, ke), le = u2.__naturalWidth || Re, Y = u2.__naturalHeight || ke, J, pe = Re, z = ke, Le = t + Z, De = n + ne; if (u2.objectFit === "contain") { - let Ue = Re / le, $e = Ee / H, ie = Math.min(Ue, $e); - pe = le * ie, G = H * ie, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - G * Oe / Ee, J = "none"; + let qe = Re / le, Be = ke / Y, ie = Math.min(qe, Be); + pe = le * ie, z = Y * ie, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - z * Oe / ke, J = "none"; } else if (u2.objectFit === "cover") { - let Ue = Re / le, $e = Ee / H, ie = Math.max(Ue, $e); - pe = le * ie, G = H * ie, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - G * Oe / Ee, J = "none"; + let qe = Re / le, Be = ke / Y, ie = Math.max(qe, Be); + pe = le * ie, z = Y * ie, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - z * Oe / ke, J = "none"; } else if (u2.objectFit === "fill") J = "none"; else if (u2.objectFit === "scale-down") - if (le && H) { - let Ue = Re / le, $e = Ee / H, ie = Math.min(Ue, $e); + if (le && Y) { + let qe = Re / le, Be = ke / Y, ie = Math.min(qe, Be); if (ie >= 1) - pe = le, G = H, J = "none", Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - G * Oe / Ee; + pe = le, z = Y, J = "none", Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - z * Oe / ke; else { let _t = ie; - pe = le * _t, G = H * _t, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - G * Oe / Ee, J = "none"; + pe = le * _t, z = Y * _t, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - z * Oe / ke, J = "none"; } } else { - let Ue = Re / le, $e = Ee / H, ie = Math.min(Ue, $e); - pe = le * ie, G = H * ie, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - G * Oe / Ee, J = "none"; + let qe = Re / le, Be = ke / Y, ie = Math.min(qe, Be); + pe = le * ie, z = Y * ie, Le = t + Z + Me - pe * Me / Re, De = n + ne + Oe - z * Oe / ke, J = "none"; } else J = "none"; - u2.transform && (ue = ou({ id: e, borderRadiusPath: O, borderType: p, left: t, top: n, width: r, height: i }, u2)), Ae += M("image", { x: Le, y: De, width: pe, height: G, href: s, preserveAspectRatio: J, transform: h2 || void 0, style: q ? `filter:${q}` : void 0, "clip-path": u2.transform ? ue ? `url(#${ue[1]})` : void 0 : `url(#satori_cp-${e})`, mask: u2.transform ? void 0 : P2 ? `url(#${P2})` : `url(#satori_om-${e})` }); + u2.transform && (ue = fu({ id: e, borderRadiusPath: O, borderType: p, left: t, top: n, width: r, height: i }, u2)), Ae += M("image", { x: Le, y: De, width: pe, height: z, href: s, preserveAspectRatio: J, transform: h2 || void 0, style: U ? `filter:${U}` : void 0, "clip-path": u2.transform ? ue ? `url(#${ue[1]})` : void 0 : `url(#satori_cp-${e})`, mask: u2.transform ? void 0 : P2 ? `url(#${P2})` : `url(#satori_om-${e})` }); } if (me) { m2 += me[0]; let Z = me[1]; - Ae += Ur({ left: t, top: n, width: r, height: i, props: { transform: h2 || void 0, "clip-path": `url(#${Z})` } }, u2); - } - let Ie = Xa({ width: r, height: i, id: e, opacity: y, shape: M(p, { x: t, y: n, width: r, height: i, fill: "#fff", stroke: "#fff", "stroke-width": 0, d: O || void 0, transform: h2 || void 0, "clip-path": V, mask: S2 }) }, u2); - return (m2 ? M("defs", {}, m2) : "") + (Ie ? Ie[0] : "") + (ue ? ue[0] : "") + de + (y !== 1 ? `` : "") + (u2.transform && (V || S2) ? `` : "") + (k || Ae) + (u2.transform && (V || S2) ? "" : "") + (y !== 1 ? "" : "") + (Ie ? Ie[1] : "") + T; -} -var mu = String.raw; -var hu = mu`\p{Emoji}(?:\p{EMod}|[\u{E0020}-\u{E007E}]+\u{E007F}|\uFE0F?\u20E3?)`; -var gu = () => new RegExp(mu`\p{RI}{2}|(?![#*\d](?!\uFE0F?\u20E3))${hu}(?:\u200D${hu})*`, "gu"); -var $d = new RegExp(gu(), "u"); -var io = { emoji: $d, symbol: /\p{Symbol}/u, math: /\p{Math}/u }; -var oo = { "ja-JP": /\p{scx=Hira}|\p{scx=Kana}|\p{scx=Han}|[\u3000]|[\uFF00-\uFFEF]/u, "ko-KR": /\p{scx=Hangul}/u, "zh-CN": /\p{scx=Han}/u, "zh-TW": /\p{scx=Han}/u, "zh-HK": /\p{scx=Han}/u, "th-TH": /\p{scx=Thai}/u, "bn-IN": /\p{scx=Bengali}/u, "ar-AR": /\p{scx=Arabic}/u, "ta-IN": /\p{scx=Tamil}/u, "ml-IN": /\p{scx=Malayalam}/u, "he-IL": /\p{scx=Hebrew}/u, "te-IN": /\p{scx=Telugu}/u, devanagari: /\p{scx=Devanagari}/u, kannada: /\p{scx=Kannada}/u }; -var ri = Object.keys({ ...oo, ...io }); -function bu(e) { - return ri.includes(e); -} -function vu(e, t) { - for (let r of Object.keys(io)) - if (io[r].test(e)) + Ae += qr({ left: t, top: n, width: r, height: i, props: { transform: h2 || void 0, "clip-path": `url(#${Z})` } }, u2); + } + let Ie = eu({ width: r, height: i, id: e, opacity: y, shape: M(p, { x: t, y: n, width: r, height: i, fill: "#fff", stroke: "#fff", "stroke-width": 0, d: O || void 0, transform: h2 || void 0, "clip-path": V, mask: S2 }) }, u2); + return (m2 ? M("defs", {}, m2) : "") + (Ie ? Ie[0] : "") + (ue ? ue[0] : "") + de + (y !== 1 ? `` : "") + (u2.transform && (V || S2) ? `` : "") + (E || Ae) + (u2.transform && (V || S2) ? "" : "") + (y !== 1 ? "" : "") + (Ie ? Ie[1] : "") + T; +} +var xu = String.raw; +var yu = xu`\p{Emoji}(?:\p{EMod}|[\u{E0020}-\u{E007E}]+\u{E007F}|\uFE0F?\u20E3?)`; +var wu = () => new RegExp(xu`\p{RI}{2}|(?![#*\d](?!\uFE0F?\u20E3))${yu}(?:\u200D${yu})*`, "gu"); +var Yd = new RegExp(wu(), "u"); +var oo = { emoji: Yd, symbol: /\p{Symbol}/u, math: /\p{Math}/u }; +var so = { "ja-JP": /\p{scx=Hira}|\p{scx=Kana}|\p{scx=Han}|[\u3000]|[\uFF00-\uFFEF]/u, "ko-KR": /\p{scx=Hangul}/u, "zh-CN": /\p{scx=Han}/u, "zh-TW": /\p{scx=Han}/u, "zh-HK": /\p{scx=Han}/u, "th-TH": /\p{scx=Thai}/u, "bn-IN": /\p{scx=Bengali}/u, "ar-AR": /\p{scx=Arabic}/u, "ta-IN": /\p{scx=Tamil}/u, "ml-IN": /\p{scx=Malayalam}/u, "he-IL": /\p{scx=Hebrew}/u, "te-IN": /\p{scx=Telugu}/u, devanagari: /\p{scx=Devanagari}/u, kannada: /\p{scx=Kannada}/u }; +var ii = Object.keys({ ...so, ...oo }); +function Su(e) { + return ii.includes(e); +} +function _u(e, t) { + for (let r of Object.keys(oo)) + if (oo[r].test(e)) return [r]; - let n = Object.keys(oo).filter((r) => oo[r].test(e)); + let n = Object.keys(so).filter((r) => so[r].test(e)); if (n.length === 0) return ["unknown"]; if (t) { @@ -18562,77 +18645,77 @@ function vu(e, t) { } return n; } -function yu(e) { +function Tu(e) { if (e) - return ri.find((t) => t.toLowerCase().startsWith(e.toLowerCase())); + return ii.find((t) => t.toLowerCase().startsWith(e.toLowerCase())); } async function* jr(e, t) { var le; - let n = await Gt(), { id: r, inheritedStyle: i, parent: o, font: s, debug: a, locale: u2, embedFont: f = true, graphemeImages: l2, canLoadAdditionalAssets: p, getTwStyles: h2 } = t; + let n = await zt(), { id: r, inheritedStyle: i, parent: o, font: s, debug: a, locale: u2, embedFont: f = true, graphemeImages: l2, canLoadAdditionalAssets: p, getTwStyles: h2 } = t; if (e === null || typeof e > "u") return yield, yield, ""; - if (!mr(e) || la(e.type)) { - let H; + if (!mr(e) || fa(e.type)) { + let Y; if (!mr(e)) - H = Ji(String(e), t), yield (await H.next()).value; + Y = Zi(String(e), t), yield (await Y.next()).value; else { - if (ua(e.type)) + if (la(e.type)) throw new Error("Class component is not supported."); let pe; - Pi(e.type) ? pe = e.type.render : pe = e.type, H = jr(await pe(e.props), t), yield (await H.next()).value; + Ii(e.type) ? pe = e.type.render : pe = e.type, Y = jr(await pe(e.props), t), yield (await Y.next()).value; } - await H.next(); + await Y.next(); let J = yield; - return (await H.next(J)).value; + return (await Y.next(J)).value; } let { type: m2, props: b } = e, y = m2; - if (b && fa(b)) + if (b && ca(b)) throw new Error("dangerouslySetInnerHTML property is not supported. See documentation for more information https://github.com/vercel/satori#jsx."); - let { style: T, children: k, tw: P2, lang: w2 = u2 } = b || {}, S2 = yu(w2); + let { style: T, children: E, tw: P2, lang: w2 = u2 } = b || {}, S2 = Tu(w2); if (P2) { - let H = h2(P2, T); - T = Object.assign(H, T); + let Y = h2(P2, T); + T = Object.assign(Y, T); } let O = n.Node.create(); o.insertChild(O, o.getChildCount()); - let [I, F] = await Vi(O, y, i, T, b), q = I.transform === i.transform; - if (q || (I.transform.__parent = i.transform), (I.overflow === "hidden" || I.clipPath && I.clipPath !== "none") && (F._inheritedClipPathId = `satori_cp-${r}`, F._inheritedMaskId = `satori_om-${r}`), I.maskImage && (F._inheritedMaskId = `satori_mi-${r}`), I.backgroundClip === "text") { - let H = { value: "" }; - F._inheritedBackgroundClipTextPath = H, I._inheritedBackgroundClipTextPath = H, I.backgroundImage && (F._inheritedBackgroundClipTextHasBackground = "true", I._inheritedBackgroundClipTextHasBackground = "true"); - } - let V = ca(k), de = [], Ae = 0, me = []; - for (let H of V) { - let J = jr(H, { id: r + "-" + Ae++, parentStyle: I, inheritedStyle: F, isInheritingTransform: true, parent: O, font: s, embedFont: f, debug: a, graphemeImages: l2, canLoadAdditionalAssets: p, locale: S2, getTwStyles: h2, onNodeDetected: t.onNodeDetected }); + let [I, F] = await Hi(O, y, i, T, b), U = I.transform === i.transform; + if (U || (I.transform.__parent = i.transform), (I.overflow === "hidden" || I.clipPath && I.clipPath !== "none") && (F._inheritedClipPathId = `satori_cp-${r}`, F._inheritedMaskId = `satori_om-${r}`), I.maskImage && (F._inheritedMaskId = `satori_mi-${r}`), I.backgroundClip === "text") { + let Y = { value: "" }; + F._inheritedBackgroundClipTextPath = Y, I._inheritedBackgroundClipTextPath = Y, I.backgroundImage && (F._inheritedBackgroundClipTextHasBackground = "true", I._inheritedBackgroundClipTextHasBackground = "true"); + } + let V = da(E), de = [], Ae = 0, me = []; + for (let Y of V) { + let J = jr(Y, { id: r + "-" + Ae++, parentStyle: I, inheritedStyle: F, isInheritingTransform: true, parent: O, font: s, embedFont: f, debug: a, graphemeImages: l2, canLoadAdditionalAssets: p, locale: S2, getTwStyles: h2, onNodeDetected: t.onNodeDetected }); p ? me.push(...(await J.next()).value || []) : await J.next(), de.push(J); } yield me; - for (let H of de) - await H.next(); - let [ue, Ie] = yield, { left: Z, top: ne, width: ke, height: ve } = O.getComputedLayout(); + for (let Y of de) + await Y.next(); + let [ue, Ie] = yield, { left: Z, top: ne, width: Ee, height: ve } = O.getComputedLayout(); Z += ue, ne += Ie; - let Re = "", Ee = "", Ye = "", { children: Me, ...Oe } = b; - if ((le = t.onNodeDetected) == null || le.call(t, { left: Z, top: ne, width: ke, height: ve, type: y, props: Oe, key: e.key, textContent: mr(Me) ? void 0 : Me }), y === "img") { - let H = I.__src; - Ee = await zr({ id: r, left: Z, top: ne, width: ke, height: ve, src: H, isInheritingTransform: q, debug: a }, I, F); + let Re = "", ke = "", Ye = "", { children: Me, ...Oe } = b; + if ((le = t.onNodeDetected) == null || le.call(t, { left: Z, top: ne, width: Ee, height: ve, type: y, props: Oe, key: e.key, textContent: mr(Me) ? void 0 : Me }), y === "img") { + let Y = I.__src; + ke = await Gr({ id: r, left: Z, top: ne, width: Ee, height: ve, src: Y, isInheritingTransform: U, debug: a }, I, F); } else if (y === "svg") { - let H = I.color, J = await Na(e, H); - Ee = await zr({ id: r, left: Z, top: ne, width: ke, height: ve, src: J, isInheritingTransform: q, debug: a }, I, F); + let Y = I.color, J = await Ba(e, Y); + ke = await Gr({ id: r, left: Z, top: ne, width: Ee, height: ve, src: J, isInheritingTransform: U, debug: a }, I, F); } else { - let H = T == null ? void 0 : T.display; - if (y === "div" && k && typeof k != "string" && H !== "flex" && H !== "none" && H !== "contents") + let Y = T == null ? void 0 : T.display; + if (y === "div" && E && typeof E != "string" && Y !== "flex" && Y !== "none" && Y !== "contents") throw new Error('Expected
to have explicit "display: flex", "display: contents", or "display: none" if it has more than one child node.'); - Ee = await zr({ id: r, left: Z, top: ne, width: ke, height: ve, isInheritingTransform: q, debug: a }, I, F); + ke = await Gr({ id: r, left: Z, top: ne, width: Ee, height: ve, isInheritingTransform: U, debug: a }, I, F); } - for (let H of de) - Re += (await H.next([Z, ne])).value; - return I._inheritedBackgroundClipTextPath && (Ye += M("clipPath", { id: `satori_bct-${r}`, "clip-path": I._inheritedClipPathId ? `url(#${I._inheritedClipPathId})` : void 0 }, I._inheritedBackgroundClipTextPath.value)), Ye + Ee + Re; + for (let Y of de) + Re += (await Y.next([Z, ne])).value; + return I._inheritedBackgroundClipTextPath && (Ye += M("clipPath", { id: `satori_bct-${r}`, "clip-path": I._inheritedClipPathId ? `url(#${I._inheritedClipPathId})` : void 0 }, I._inheritedBackgroundClipTextPath.value)), Ye + ke + Re; } -var xu = "unknown"; -function qd(e) { +var Eu = "unknown"; +function Xd(e) { let t = [], n = [0, 0], r = [0, 0], i = (o, s) => { let a = o[0]; for (let u2 = 1; u2 <= s; u2++) { - let f = u2 / s, l2 = Ud(o, f); + let f = u2 / s, l2 = Qd(o, f); t.push({ from: a, to: l2 }), a = l2; } r = o[o.length - 1]; @@ -18659,7 +18742,7 @@ function qd(e) { } return t; } -function Ud(e, t) { +function Qd(e, t) { let n = e; for (; n.length > 1; ) { let r = []; @@ -18669,29 +18752,29 @@ function Ud(e, t) { } return n[0]; } -function Gd(e, t) { +function Kd(e, t) { if (!t) return []; - let n = t.strokeWidth, r = t.underlineY - n * 0.25, i = t.underlineY + n * 2.5, o = qd(e); + let n = t.strokeWidth, r = t.underlineY - n * 0.25, i = t.underlineY + n * 2.5, o = Xd(e); if (!o.length) return []; let s = i - r, a = Math.max(12, Math.ceil(s / 0.25)), u2 = s / a, f = r + u2 / 2, l2 = /* @__PURE__ */ new Set(); for (let w2 = 0; w2 < a; w2++) { let S2 = f + u2 * w2, O = []; for (let I of o) { - let [F, q] = I.from, [V, de] = I.to; - if (q === de) + let [F, U] = I.from, [V, de] = I.to; + if (U === de) continue; - let Ae = Math.min(q, de), me = Math.max(q, de); + let Ae = Math.min(U, de), me = Math.max(U, de); if (S2 < Ae || S2 >= me) continue; - let ue = (S2 - q) / (de - q), Ie = F + (V - F) * ue; + let ue = (S2 - U) / (de - U), Ie = F + (V - F) * ue; O.push(Ie); } if (O.length) { O.sort((I, F) => I - F); for (let I = 0; I < O.length - 1; I += 2) { - let F = Math.min(O[I], O[I + 1]), q = Math.max(O[I], O[I + 1]), V = Math.floor(F), de = Math.ceil(q); + let F = Math.min(O[I], O[I + 1]), U = Math.max(O[I], O[I + 1]), V = Math.floor(F), de = Math.ceil(U); for (let Ae = V; Ae < de; Ae++) l2.add(Ae); } @@ -18705,14 +18788,14 @@ function Gd(e, t) { S2 > b + 1 && (h2.push([m2, b + 1]), m2 = S2), b = S2; } h2.push([m2, b + 1]); - let y = [], T = n * 0.6, k = h2[0][0], P2 = h2[h2.length - 1][1]; + let y = [], T = n * 0.6, E = h2[0][0], P2 = h2[h2.length - 1][1]; for (let [w2, S2] of h2) { - let O = Math.min(w2, k) - T, I = Math.max(S2, P2) + T; + let O = Math.min(w2, E) - T, I = Math.max(S2, P2) + T; y.push({ x1: O, x2: I, y1: r, y2: i }); } return y; } -function zd(e, t, [n, r], [i, o]) { +function Jd(e, t, [n, r], [i, o]) { if (n !== i) return n ? !i || n === e ? -1 : i === e ? 1 : e === 400 && n === 500 || e === 500 && n === 400 ? -1 : e === 400 && i === 500 || e === 500 && i === 400 ? 1 : e < 400 ? n < e && i < e ? i - n : n < e ? -1 : i < e ? 1 : n - i : e < n && e < i ? n - i : e < n ? -1 : e < i ? 1 : i - n : 1; if (r !== o) { @@ -18723,7 +18806,7 @@ function zd(e, t, [n, r], [i, o]) { } return -1; } -var so = /* @__PURE__ */ new WeakMap(); +var ao = /* @__PURE__ */ new WeakMap(); var Hr = class { constructor(t) { this.fonts = /* @__PURE__ */ new Map(); @@ -18736,25 +18819,25 @@ var Hr = class { let i = [...this.fonts.get(t)], o = i[0]; for (let s = 1; s < i.length; s++) { let [, a, u2] = o, [, f, l2] = i[s]; - zd(n, r, [a, u2], [f, l2]) > 0 && (o = i[s]); + Jd(n, r, [a, u2], [f, l2]) > 0 && (o = i[s]); } return o[0]; } addFonts(t) { for (let n of t) { let { name: r, data: i, lang: o } = n; - if (o && !bu(o)) - throw new Error(`Invalid value for props \`lang\`: "${o}". The value must be one of the following: ${ri.join(", ")}.`); - let s = o ?? xu, a; - if (so.has(i)) - a = so.get(i); + if (o && !Su(o)) + throw new Error(`Invalid value for props \`lang\`: "${o}". The value must be one of the following: ${ii.join(", ")}.`); + let s = o ?? Eu, a; + if (ao.has(i)) + a = ao.get(i); else { a = opentype_module_default.parse("buffer" in i ? i.buffer.slice(i.byteOffset, i.byteOffset + i.byteLength) : i, { lowMemory: true }); let f = a.charToGlyphIndex; a.charToGlyphIndex = (l2) => { let p = f.call(a, l2); return p === 0 && a._trackBrokenChars && a._trackBrokenChars.push(l2), p; - }, so.set(i, a); + }, ao.set(i, a); } this.defaultFont || (this.defaultFont = a); let u2 = `${r.toLowerCase()}_${s}`; @@ -18782,7 +18865,7 @@ var Hr = class { for (let w2 of u2) if (!r.includes(w2)) if (s) { - let S2 = jd(w2); + let S2 = Zd(w2); S2 ? S2 === s ? f.push(this.get({ name: w2, weight: i, style: o })) : l2.push(this.get({ name: w2, weight: i, style: o })) : p.push(this.get({ name: w2, weight: i, style: o })); } else p.push(this.get({ name: w2, weight: i, style: o })); @@ -18793,7 +18876,7 @@ var Hr = class { let I = w2.charCodeAt(0); if (h2.has(I)) return h2.get(I); - let F = O.find((q, V) => !!q.charToGlyphIndex(w2) || S2 && V === O.length - 1); + let F = O.find((U, V) => !!U.charToGlyphIndex(w2) || S2 && V === O.length - 1); return F && h2.set(I, F), F; }, b = (w2, S2 = false) => { var I, F; @@ -18808,12 +18891,12 @@ var Hr = class { return b(w2, S2) - y(w2, S2) + F / w2.unitsPerEm * t; } else if (typeof n == "number") return t * n; - }, k = (w2) => m2(w2, false); + }, E = (w2) => m2(w2, false); return { has: (w2) => { if (w2 === ` `) return true; - let S2 = k(w2); + let S2 = E(w2); return S2 ? (S2._trackBrokenChars = [], S2.stringToGlyphs(w2), S2._trackBrokenChars.length ? (S2._trackBrokenChars = void 0, false) : true) : false; }, baseline: (w2, S2 = typeof w2 > "u" ? a[0] : m2(w2)) => { let O = b(S2), I = y(S2), F = O - I; @@ -18833,8 +18916,8 @@ var Hr = class { let p = l2.charToGlyph(f), h2 = t.unitsPerEm / l2.unitsPerEm, m2 = new opentype_module_default.Path(); m2.unitsPerEm = t.unitsPerEm, m2.commands = p.path.commands.map((y) => { let T = { ...y }; - for (let k in T) - typeof T[k] == "number" && (T[k] *= h2); + for (let E in T) + typeof T[E] == "number" && (T[E] *= h2); return T; }); let b = new opentype_module_default.Glyph({ ...p, advanceWidth: p.advanceWidth * h2, xMin: p.xMin * h2, xMax: p.xMax * h2, yMin: p.yMin * h2, yMax: p.yMax * h2, path: m2 }); @@ -18860,20 +18943,20 @@ var Hr = class { if (r === 0) return { path: "", boxes: [] }; let l2 = new opentype_module_default.Path(), p = [], h2 = { letterSpacing: s / r }, m2 = /* @__PURE__ */ new WeakMap(); - return u2.forEachGlyph(n.replace(/\n/g, ""), o, i, r, h2, function(b, y, T, k) { + return u2.forEachGlyph(n.replace(/\n/g, ""), o, i, r, h2, function(b, y, T, E) { let P2; if (!m2.has(b)) - P2 = b.getPath(y, T, k, h2), m2.set(b, [y, T, P2]); + P2 = b.getPath(y, T, E, h2), m2.set(b, [y, T, P2]); else { let [S2, O, I] = m2.get(b); P2 = new opentype_module_default.Path(), P2.commands = I.commands.map((F) => { - let q = { ...F }; - for (let V in q) - typeof q[V] == "number" && ((V === "x" || V === "x1" || V === "x2") && (q[V] += y - S2), (V === "y" || V === "y1" || V === "y2") && (q[V] += T - O)); - return q; + let U = { ...F }; + for (let V in U) + typeof U[V] == "number" && ((V === "x" || V === "x1" || V === "x2") && (U[V] += y - S2), (V === "y" || V === "y1" || V === "y2") && (U[V] += T - O)); + return U; }); } - let w2 = a ? Gd(P2.commands, a) : []; + let w2 = a ? Kd(P2.commands, a) : []; w2.length && p.push(...w2), l2.extend(P2); }), { path: l2.toPathData(1), boxes: p }; } finally { @@ -18881,37 +18964,37 @@ var Hr = class { } } }; -function jd(e) { +function Zd(e) { let t = e.split("_"), n = t[t.length - 1]; - return n === xu ? void 0 : n; + return n === Eu ? void 0 : n; } -function ao({ width: e, height: t, content: n }) { +function uo({ width: e, height: t, content: n }) { return M("svg", { width: e, height: t, viewBox: `0 0 ${e} ${t}`, xmlns: "http://www.w3.org/2000/svg" }, n); } -var ec2 = hc(Rf()); -var Rb = ["ios", "android", "windows", "macos", "web"]; -function Lf(e) { - return Rb.includes(e); +var oc = yc(Wf()); +var $b = ["ios", "android", "windows", "macos", "web"]; +function Df(e) { + return $b.includes(e); } -var Cb = ["portrait", "landscape"]; -function Mf(e) { - return Cb.includes(e); +var Bb = ["portrait", "landscape"]; +function $f(e) { + return Bb.includes(e); } -var Cf; +var Ff; (function(e) { e.fontSize = "fontSize", e.lineHeight = "lineHeight"; -})(Cf || (Cf = {})); +})(Ff || (Ff = {})); var se; (function(e) { e.rem = "rem", e.em = "em", e.px = "px", e.percent = "%", e.vw = "vw", e.vh = "vh", e.none = ""; })(se || (se = {})); -function Ms(e) { +function Ns(e) { return typeof e == "string"; } -function Ns(e) { +function Ws(e) { return typeof e == "object"; } -var Ws; +var Fs; function _(e) { return { kind: "complete", style: e }; } @@ -18944,15 +19027,15 @@ function Fe(e, t = {}) { return null; } } -function Bt(e, t, n = {}) { +function $t(e, t, n = {}) { let r = At(t, n); return r === null ? null : _({ [e]: r }); } -function xi(e, t, n) { +function Si(e, t, n) { let r = At(t); return r !== null && (n[e] = r), n; } -function Wf(e, t) { +function Uf(e, t) { let n = At(t); return n === null ? null : { [e]: n }; } @@ -18981,7 +19064,7 @@ function Xt(e, t, n = {}) { return null; } } -function Fs(e) { +function Ds(e) { let t = Fe(e); if (!t) return null; @@ -18995,27 +19078,27 @@ function Fs(e) { return null; } } -var Lb = { t: "Top", tr: "TopRight", tl: "TopLeft", b: "Bottom", br: "BottomRight", bl: "BottomLeft", l: "Left", r: "Right", x: "Horizontal", y: "Vertical" }; -function Ds(e) { - return Lb[e ?? ""] || "All"; +var Ub = { t: "Top", tr: "TopRight", tl: "TopLeft", b: "Bottom", br: "BottomRight", bl: "BottomLeft", l: "Left", r: "Right", x: "Horizontal", y: "Vertical" }; +function $s(e) { + return Ub[e ?? ""] || "All"; } function Bs(e) { let t = "All"; - return [e.replace(/^-(t|b|r|l|tr|tl|br|bl)(-|$)/, (r, i) => (t = Ds(i), "")), t]; + return [e.replace(/^-(t|b|r|l|tr|tl|br|bl)(-|$)/, (r, i) => (t = $s(i), "")), t]; } function ur(e, t = {}) { if (e.includes("/")) { - let n = Nf(e, { ...t, fractions: true }); + let n = Bf(e, { ...t, fractions: true }); if (n) return n; } - return e[0] === "[" && (e = e.slice(1, -1)), Nf(e, t); + return e[0] === "[" && (e = e.slice(1, -1)), Bf(e, t); } function dt(e, t, n = {}) { let r = ur(t, n); return r === null ? null : _({ [e]: r }); } -function Nf(e, t = {}) { +function Bf(e, t = {}) { if (e === "px") return 1; let n = Fe(e, t); @@ -19024,22 +19107,22 @@ function Nf(e, t = {}) { let [r, i] = n; return t.fractions && (i = se.percent, r *= 100), i === se.none && (r = r / 4, i = se.rem), Xt(r, i, t); } -function Mb(...e) { +function qb(...e) { console.warn(...e); } -function Nb(...e) { +function zb(...e) { } -var Je = typeof process > "u" || ((Ws = process == null ? void 0 : process.env) === null || Ws === void 0 ? void 0 : Ws.JEST_WORKER_ID) === void 0 ? Mb : Nb; -var Wb = [["aspect-square", _({ aspectRatio: 1 })], ["aspect-video", _({ aspectRatio: 16 / 9 })], ["items-center", _({ alignItems: "center" })], ["items-start", _({ alignItems: "flex-start" })], ["items-end", _({ alignItems: "flex-end" })], ["items-baseline", _({ alignItems: "baseline" })], ["items-stretch", _({ alignItems: "stretch" })], ["justify-start", _({ justifyContent: "flex-start" })], ["justify-end", _({ justifyContent: "flex-end" })], ["justify-center", _({ justifyContent: "center" })], ["justify-between", _({ justifyContent: "space-between" })], ["justify-around", _({ justifyContent: "space-around" })], ["justify-evenly", _({ justifyContent: "space-evenly" })], ["content-start", _({ alignContent: "flex-start" })], ["content-end", _({ alignContent: "flex-end" })], ["content-between", _({ alignContent: "space-between" })], ["content-around", _({ alignContent: "space-around" })], ["content-stretch", _({ alignContent: "stretch" })], ["content-center", _({ alignContent: "center" })], ["self-auto", _({ alignSelf: "auto" })], ["self-start", _({ alignSelf: "flex-start" })], ["self-end", _({ alignSelf: "flex-end" })], ["self-center", _({ alignSelf: "center" })], ["self-stretch", _({ alignSelf: "stretch" })], ["self-baseline", _({ alignSelf: "baseline" })], ["direction-inherit", _({ direction: "inherit" })], ["direction-ltr", _({ direction: "ltr" })], ["direction-rtl", _({ direction: "rtl" })], ["hidden", _({ display: "none" })], ["flex", _({ display: "flex" })], ["flex-row", _({ flexDirection: "row" })], ["flex-row-reverse", _({ flexDirection: "row-reverse" })], ["flex-col", _({ flexDirection: "column" })], ["flex-col-reverse", _({ flexDirection: "column-reverse" })], ["flex-wrap", _({ flexWrap: "wrap" })], ["flex-wrap-reverse", _({ flexWrap: "wrap-reverse" })], ["flex-nowrap", _({ flexWrap: "nowrap" })], ["flex-auto", _({ flexGrow: 1, flexShrink: 1, flexBasis: "auto" })], ["flex-initial", _({ flexGrow: 0, flexShrink: 1, flexBasis: "auto" })], ["flex-none", _({ flexGrow: 0, flexShrink: 0, flexBasis: "auto" })], ["overflow-hidden", _({ overflow: "hidden" })], ["overflow-visible", _({ overflow: "visible" })], ["overflow-scroll", _({ overflow: "scroll" })], ["absolute", _({ position: "absolute" })], ["relative", _({ position: "relative" })], ["italic", _({ fontStyle: "italic" })], ["not-italic", _({ fontStyle: "normal" })], ["oldstyle-nums", kn("oldstyle-nums")], ["small-caps", kn("small-caps")], ["lining-nums", kn("lining-nums")], ["tabular-nums", kn("tabular-nums")], ["proportional-nums", kn("proportional-nums")], ["font-thin", _({ fontWeight: "100" })], ["font-100", _({ fontWeight: "100" })], ["font-extralight", _({ fontWeight: "200" })], ["font-200", _({ fontWeight: "200" })], ["font-light", _({ fontWeight: "300" })], ["font-300", _({ fontWeight: "300" })], ["font-normal", _({ fontWeight: "normal" })], ["font-400", _({ fontWeight: "400" })], ["font-medium", _({ fontWeight: "500" })], ["font-500", _({ fontWeight: "500" })], ["font-semibold", _({ fontWeight: "600" })], ["font-600", _({ fontWeight: "600" })], ["font-bold", _({ fontWeight: "bold" })], ["font-700", _({ fontWeight: "700" })], ["font-extrabold", _({ fontWeight: "800" })], ["font-800", _({ fontWeight: "800" })], ["font-black", _({ fontWeight: "900" })], ["font-900", _({ fontWeight: "900" })], ["include-font-padding", _({ includeFontPadding: true })], ["remove-font-padding", _({ includeFontPadding: false })], ["max-w-none", _({ maxWidth: "99999%" })], ["text-left", _({ textAlign: "left" })], ["text-center", _({ textAlign: "center" })], ["text-right", _({ textAlign: "right" })], ["text-justify", _({ textAlign: "justify" })], ["text-auto", _({ textAlign: "auto" })], ["underline", _({ textDecorationLine: "underline" })], ["line-through", _({ textDecorationLine: "line-through" })], ["no-underline", _({ textDecorationLine: "none" })], ["uppercase", _({ textTransform: "uppercase" })], ["lowercase", _({ textTransform: "lowercase" })], ["capitalize", _({ textTransform: "capitalize" })], ["normal-case", _({ textTransform: "none" })], ["w-auto", _({ width: "auto" })], ["h-auto", _({ height: "auto" })], ["shadow-sm", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.025, elevation: 1 })], ["shadow", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.075, elevation: 2 })], ["shadow-md", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 3, shadowOpacity: 0.125, elevation: 3 })], ["shadow-lg", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.15, shadowRadius: 8, elevation: 8 })], ["shadow-xl", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.19, shadowRadius: 20, elevation: 12 })], ["shadow-2xl", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.25, shadowRadius: 30, elevation: 16 })], ["shadow-none", _({ shadowOffset: { width: 0, height: 0 }, shadowColor: "#000", shadowRadius: 0, shadowOpacity: 0, elevation: 0 })]]; -var $s = Wb; -function kn(e) { +var Je = typeof process > "u" || ((Fs = process == null ? void 0 : process.env) === null || Fs === void 0 ? void 0 : Fs.JEST_WORKER_ID) === void 0 ? qb : zb; +var Gb = [["aspect-square", _({ aspectRatio: 1 })], ["aspect-video", _({ aspectRatio: 16 / 9 })], ["items-center", _({ alignItems: "center" })], ["items-start", _({ alignItems: "flex-start" })], ["items-end", _({ alignItems: "flex-end" })], ["items-baseline", _({ alignItems: "baseline" })], ["items-stretch", _({ alignItems: "stretch" })], ["justify-start", _({ justifyContent: "flex-start" })], ["justify-end", _({ justifyContent: "flex-end" })], ["justify-center", _({ justifyContent: "center" })], ["justify-between", _({ justifyContent: "space-between" })], ["justify-around", _({ justifyContent: "space-around" })], ["justify-evenly", _({ justifyContent: "space-evenly" })], ["content-start", _({ alignContent: "flex-start" })], ["content-end", _({ alignContent: "flex-end" })], ["content-between", _({ alignContent: "space-between" })], ["content-around", _({ alignContent: "space-around" })], ["content-stretch", _({ alignContent: "stretch" })], ["content-center", _({ alignContent: "center" })], ["self-auto", _({ alignSelf: "auto" })], ["self-start", _({ alignSelf: "flex-start" })], ["self-end", _({ alignSelf: "flex-end" })], ["self-center", _({ alignSelf: "center" })], ["self-stretch", _({ alignSelf: "stretch" })], ["self-baseline", _({ alignSelf: "baseline" })], ["direction-inherit", _({ direction: "inherit" })], ["direction-ltr", _({ direction: "ltr" })], ["direction-rtl", _({ direction: "rtl" })], ["hidden", _({ display: "none" })], ["flex", _({ display: "flex" })], ["flex-row", _({ flexDirection: "row" })], ["flex-row-reverse", _({ flexDirection: "row-reverse" })], ["flex-col", _({ flexDirection: "column" })], ["flex-col-reverse", _({ flexDirection: "column-reverse" })], ["flex-wrap", _({ flexWrap: "wrap" })], ["flex-wrap-reverse", _({ flexWrap: "wrap-reverse" })], ["flex-nowrap", _({ flexWrap: "nowrap" })], ["flex-auto", _({ flexGrow: 1, flexShrink: 1, flexBasis: "auto" })], ["flex-initial", _({ flexGrow: 0, flexShrink: 1, flexBasis: "auto" })], ["flex-none", _({ flexGrow: 0, flexShrink: 0, flexBasis: "auto" })], ["overflow-hidden", _({ overflow: "hidden" })], ["overflow-visible", _({ overflow: "visible" })], ["overflow-scroll", _({ overflow: "scroll" })], ["absolute", _({ position: "absolute" })], ["relative", _({ position: "relative" })], ["italic", _({ fontStyle: "italic" })], ["not-italic", _({ fontStyle: "normal" })], ["oldstyle-nums", En("oldstyle-nums")], ["small-caps", En("small-caps")], ["lining-nums", En("lining-nums")], ["tabular-nums", En("tabular-nums")], ["proportional-nums", En("proportional-nums")], ["font-thin", _({ fontWeight: "100" })], ["font-100", _({ fontWeight: "100" })], ["font-extralight", _({ fontWeight: "200" })], ["font-200", _({ fontWeight: "200" })], ["font-light", _({ fontWeight: "300" })], ["font-300", _({ fontWeight: "300" })], ["font-normal", _({ fontWeight: "normal" })], ["font-400", _({ fontWeight: "400" })], ["font-medium", _({ fontWeight: "500" })], ["font-500", _({ fontWeight: "500" })], ["font-semibold", _({ fontWeight: "600" })], ["font-600", _({ fontWeight: "600" })], ["font-bold", _({ fontWeight: "bold" })], ["font-700", _({ fontWeight: "700" })], ["font-extrabold", _({ fontWeight: "800" })], ["font-800", _({ fontWeight: "800" })], ["font-black", _({ fontWeight: "900" })], ["font-900", _({ fontWeight: "900" })], ["include-font-padding", _({ includeFontPadding: true })], ["remove-font-padding", _({ includeFontPadding: false })], ["max-w-none", _({ maxWidth: "99999%" })], ["text-left", _({ textAlign: "left" })], ["text-center", _({ textAlign: "center" })], ["text-right", _({ textAlign: "right" })], ["text-justify", _({ textAlign: "justify" })], ["text-auto", _({ textAlign: "auto" })], ["underline", _({ textDecorationLine: "underline" })], ["line-through", _({ textDecorationLine: "line-through" })], ["no-underline", _({ textDecorationLine: "none" })], ["uppercase", _({ textTransform: "uppercase" })], ["lowercase", _({ textTransform: "lowercase" })], ["capitalize", _({ textTransform: "capitalize" })], ["normal-case", _({ textTransform: "none" })], ["w-auto", _({ width: "auto" })], ["h-auto", _({ height: "auto" })], ["shadow-sm", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.025, elevation: 1 })], ["shadow", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.075, elevation: 2 })], ["shadow-md", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 3, shadowOpacity: 0.125, elevation: 3 })], ["shadow-lg", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.15, shadowRadius: 8, elevation: 8 })], ["shadow-xl", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.19, shadowRadius: 20, elevation: 12 })], ["shadow-2xl", _({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.25, shadowRadius: 30, elevation: 16 })], ["shadow-none", _({ shadowOffset: { width: 0, height: 0 }, shadowColor: "#000", shadowRadius: 0, shadowOpacity: 0, elevation: 0 })]]; +var Us = Gb; +function En(e) { return { kind: "dependent", complete(t) { (!t.fontVariant || !Array.isArray(t.fontVariant)) && (t.fontVariant = []), t.fontVariant.push(e); } }; } -var En = class { +var kn = class { constructor(t) { - this.ir = new Map($s), this.styles = /* @__PURE__ */ new Map(), this.prefixes = /* @__PURE__ */ new Map(), this.ir = new Map([...$s, ...t ?? []]); + this.ir = new Map(Us), this.styles = /* @__PURE__ */ new Map(), this.prefixes = /* @__PURE__ */ new Map(), this.ir = new Map([...Us, ...t ?? []]); } getStyle(t) { return this.styles.get(t); @@ -19065,14 +19148,14 @@ function qs(e, t, n = {}) { if (!r) return dt("fontSize", e, n); if (typeof r == "string") - return Bt("fontSize", r); - let i = {}, [o, s] = r, a = Wf("fontSize", o); + return $t("fontSize", r); + let i = {}, [o, s] = r, a = Uf("fontSize", o); if (a && (i = a), typeof s == "string") - return _(xi("lineHeight", Ff(s, i), i)); + return _(Si("lineHeight", qf(s, i), i)); let { lineHeight: u2, letterSpacing: f } = s; - return u2 && xi("lineHeight", Ff(u2, i), i), f && xi("letterSpacing", f, i), _(i); + return u2 && Si("lineHeight", qf(u2, i), i), f && Si("letterSpacing", f, i), _(i); } -function Ff(e, t) { +function qf(e, t) { let n = Fe(e); if (n) { let [r, i] = n; @@ -19081,7 +19164,7 @@ function Ff(e, t) { } return e; } -function Us(e, t) { +function zs(e, t) { var n; let r = (n = t == null ? void 0 : t[e]) !== null && n !== void 0 ? n : e.startsWith("[") ? e.slice(1, -1) : e, i = Fe(r); if (!i) @@ -19106,22 +19189,22 @@ function Gs(e, t, n, r, i) { o = f; else { let l2 = ur(r); - return l2 && typeof l2 == "number" ? Df(l2, se.px, t, e) : null; + return l2 && typeof l2 == "number" ? zf(l2, se.px, t, e) : null; } } if (o === "auto") - return Bf(t, e, "auto"); + return Gf(t, e, "auto"); let s = Fe(o); if (!s) return null; let [a, u2] = s; - return n && (a = -a), Df(a, u2, t, e); + return n && (a = -a), zf(a, u2, t, e); } -function Df(e, t, n, r) { +function zf(e, t, n, r) { let i = Xt(e, t); - return i === null ? null : Bf(n, r, i); + return i === null ? null : Gf(n, r, i); } -function Bf(e, t, n) { +function Gf(e, t, n) { switch (e) { case "All": return { kind: "complete", style: { [`${t}Top`]: n, [`${t}Right`]: n, [`${t}Bottom`]: n, [`${t}Left`]: n } }; @@ -19138,13 +19221,13 @@ function Bf(e, t, n) { return null; } } -function zs(e) { +function js(e) { if (!e) return {}; let t = Object.entries(e).reduce((i, [o, s]) => { - let a = [0, 1 / 0, 0], u2 = typeof s == "string" ? { min: s } : s, f = u2.min ? Fs(u2.min) : 0; + let a = [0, 1 / 0, 0], u2 = typeof s == "string" ? { min: s } : s, f = u2.min ? Ds(u2.min) : 0; f === null ? Je(`invalid screen config value: ${o}->min: ${u2.min}`) : a[0] = f; - let l2 = u2.max ? Fs(u2.max) : 1 / 0; + let l2 = u2.max ? Ds(u2.max) : 1 / 0; return l2 === null ? Je(`invalid screen config value: ${o}->max: ${u2.max}`) : a[1] = l2, i[o] = a, i; }, {}), n = Object.values(t); n.sort((i, o) => { @@ -19154,7 +19237,7 @@ function zs(e) { let r = 0; return n.forEach((i) => i[2] = r++), t; } -function js(e, t) { +function Vs(e, t) { let n = t == null ? void 0 : t[e]; if (!n) return null; @@ -19169,16 +19252,16 @@ function lr(e, t, n) { let r; t.includes("/") && ([t = "", r] = t.split("/", 2)); let i = ""; - if (t.startsWith("[#") || t.startsWith("[rgb") ? i = t.slice(1, -1) : i = Uf(t, n), !i) + if (t.startsWith("[#") || t.startsWith("[rgb") ? i = t.slice(1, -1) : i = Hf(t, n), !i) return null; if (r) { let o = Number(r); if (!Number.isNaN(o)) - return i = $f(i, o / 100), _({ [wi[e].color]: i }); + return i = jf(i, o / 100), _({ [_i[e].color]: i }); } return { kind: "dependent", complete(o) { - let s = wi[e].opacity, a = o[s]; - typeof a == "number" && (i = $f(i, a)), o[wi[e].color] = i; + let s = _i[e].opacity, a = o[s]; + typeof a == "number" && (i = jf(i, a)), o[_i[e].color] = i; } }; } function On(e, t) { @@ -19186,48 +19269,48 @@ function On(e, t) { if (Number.isNaN(n)) return null; let r = n / 100; - return { kind: "complete", style: { [wi[e].opacity]: r } }; + return { kind: "complete", style: { [_i[e].opacity]: r } }; } -function $f(e, t) { - return e.startsWith("#") ? e = Fb(e) : e.startsWith("rgb(") && (e = e.replace(/^rgb\(/, "rgba(").replace(/\)$/, ", 1)")), e.replace(/, ?\d*\.?(\d+)\)$/, `, ${t})`); +function jf(e, t) { + return e.startsWith("#") ? e = jb(e) : e.startsWith("rgb(") && (e = e.replace(/^rgb\(/, "rgba(").replace(/\)$/, ", 1)")), e.replace(/, ?\d*\.?(\d+)\)$/, `, ${t})`); } -function qf(e) { +function Vf(e) { for (let t in e) t.startsWith("__opacity_") && delete e[t]; } -var wi = { bg: { opacity: "__opacity_bg", color: "backgroundColor" }, text: { opacity: "__opacity_text", color: "color" }, border: { opacity: "__opacity_border", color: "borderColor" }, borderTop: { opacity: "__opacity_border", color: "borderTopColor" }, borderBottom: { opacity: "__opacity_border", color: "borderBottomColor" }, borderLeft: { opacity: "__opacity_border", color: "borderLeftColor" }, borderRight: { opacity: "__opacity_border", color: "borderRightColor" }, shadow: { opacity: "__opacity_shadow", color: "shadowColor" }, tint: { opacity: "__opacity_tint", color: "tintColor" } }; -function Fb(e) { +var _i = { bg: { opacity: "__opacity_bg", color: "backgroundColor" }, text: { opacity: "__opacity_text", color: "color" }, border: { opacity: "__opacity_border", color: "borderColor" }, borderTop: { opacity: "__opacity_border", color: "borderTopColor" }, borderBottom: { opacity: "__opacity_border", color: "borderBottomColor" }, borderLeft: { opacity: "__opacity_border", color: "borderLeftColor" }, borderRight: { opacity: "__opacity_border", color: "borderRightColor" }, shadow: { opacity: "__opacity_shadow", color: "shadowColor" }, tint: { opacity: "__opacity_tint", color: "tintColor" } }; +function jb(e) { let t = e; - e = e.replace(Db, (s, a, u2, f) => a + a + u2 + u2 + f + f); - let n = Bb.exec(e); + e = e.replace(Vb, (s, a, u2, f) => a + a + u2 + u2 + f + f); + let n = Hb.exec(e); if (!n) return Je(`invalid config hex color value: ${t}`), "rgba(0, 0, 0, 1)"; let r = parseInt(n[1], 16), i = parseInt(n[2], 16), o = parseInt(n[3], 16); return `rgba(${r}, ${i}, ${o}, 1)`; } -function Uf(e, t) { +function Hf(e, t) { let n = t[e]; - if (Ms(n)) + if (Ns(n)) return n; - if (Ns(n) && Ms(n.DEFAULT)) + if (Ws(n) && Ns(n.DEFAULT)) return n.DEFAULT; let [r = "", ...i] = e.split("-"); for (; r !== e; ) { let o = t[r]; - if (Ns(o)) - return Uf(i.join("-"), o); + if (Ws(o)) + return Hf(i.join("-"), o); if (i.length === 0) return ""; r = `${r}-${i.shift()}`; } return ""; } -var Db = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; -var Bb = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i; -function zf(e, t) { +var Vb = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; +var Hb = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i; +function Xf(e, t) { let [n, r] = Bs(e); if (n.match(/^(-?(\d)+)?$/)) - return $b(n, r, t == null ? void 0 : t.borderWidth); + return Yb(n, r, t == null ? void 0 : t.borderWidth); if (n = n.replace(/^-/, ""), ["dashed", "solid", "dotted"].includes(n)) return _({ borderStyle: n }); let o = "border"; @@ -19253,7 +19336,7 @@ function zf(e, t) { let u2 = n.slice(1, -1), f = dt(a, u2); return typeof (f == null ? void 0 : f.style[a]) != "number" ? null : f; } -function $b(e, t, n) { +function Yb(e, t, n) { if (!n) return null; e = e.replace(/^-/, ""); @@ -19261,20 +19344,20 @@ function $b(e, t, n) { if (i === void 0) return null; let o = `border${t === "All" ? "" : t}Width`; - return Bt(o, i); + return $t(o, i); } -function jf(e, t) { +function Qf(e, t) { if (!t) return null; let [n, r] = Bs(e); n = n.replace(/^-/, ""), n === "" && (n = "DEFAULT"); let i = `border${r === "All" ? "" : r}Radius`, o = t[n]; if (o) - return Gf(Bt(i, o)); + return Yf($t(i, o)); let s = dt(i, n); - return typeof (s == null ? void 0 : s.style[i]) != "number" ? null : Gf(s); + return typeof (s == null ? void 0 : s.style[i]) != "number" ? null : Yf(s); } -function Gf(e) { +function Yf(e) { if ((e == null ? void 0 : e.kind) !== "complete") return e; let t = e.style.borderTopRadius; @@ -19286,19 +19369,19 @@ function Gf(e) { let i = e.style.borderRightRadius; return i !== void 0 && (e.style.borderBottomRightRadius = i, e.style.borderTopRightRadius = i, delete e.style.borderRightRadius), e; } -function Er(e, t, n, r) { +function kr(e, t, n, r) { let i = null; e === "inset" && (t = t.replace(/^(x|y)-/, (a, u2) => (i = u2 === "x" ? "x" : "y", ""))); let o = r == null ? void 0 : r[t]; if (o) { let a = At(o, { isNegative: n }); if (a !== null) - return Vf(e, i, a); + return Kf(e, i, a); } let s = ur(t, { isNegative: n }); - return s !== null ? Vf(e, i, s) : null; + return s !== null ? Kf(e, i, s) : null; } -function Vf(e, t, n) { +function Kf(e, t, n) { if (e !== "inset") return _({ [e]: n }); switch (t) { @@ -19316,7 +19399,7 @@ function Pn(e, t, n) { let i = t === "" ? "DEFAULT" : t, o = Number((r = n == null ? void 0 : n[i]) !== null && r !== void 0 ? r : t); return Number.isNaN(o) ? null : _({ [`flex${e}`]: o }); } -function Hf(e, t) { +function Jf(e, t) { var n, r; if (e = (t == null ? void 0 : t[e]) || e, ["min-content", "revert", "unset"].includes(e)) return null; @@ -19335,15 +19418,15 @@ function Hf(e, t) { } return null; } -function Vs(e, t, n = {}, r) { +function Hs(e, t, n = {}, r) { let i = r == null ? void 0 : r[t]; - return i !== void 0 ? Bt(e, i, n) : dt(e, t, n); + return i !== void 0 ? $t(e, i, n) : dt(e, t, n); } function An(e, t, n = {}, r) { let i = At(r == null ? void 0 : r[t], n); return i ? _({ [e]: i }) : (t === "screen" && (t = e.includes("Width") ? "100vw" : "100vh"), dt(e, t, n)); } -function Yf(e, t, n) { +function Zf(e, t, n) { let r = n == null ? void 0 : n[e]; if (r) { let i = Fe(r, { isNegative: t }); @@ -19351,7 +19434,7 @@ function Yf(e, t, n) { return null; let [o, s] = i; if (s === se.em) - return qb(o); + return Xb(o); if (s === se.percent) return Je("percentage-based letter-spacing configuration currently unsupported, switch to `em`s, or open an issue if you'd like to see support added."), null; let a = Xt(o, s, { isNegative: t }); @@ -19359,7 +19442,7 @@ function Yf(e, t, n) { } return dt("letterSpacing", e, { isNegative: t }); } -function qb(e) { +function Xb(e) { return { kind: "dependent", complete(t) { let n = t.fontSize; if (typeof n != "number" || Number.isNaN(n)) @@ -19367,7 +19450,7 @@ function qb(e) { t.letterSpacing = Math.round((e * n + Number.EPSILON) * 100) / 100; } }; } -function Xf(e, t) { +function ec2(e, t) { let n = t == null ? void 0 : t[e]; if (n) { let i = Fe(String(n)); @@ -19377,19 +19460,19 @@ function Xf(e, t) { let r = Fe(e); return r ? _({ opacity: r[0] / 100 }) : null; } -function Qf(e) { +function tc(e) { let t = parseInt(e, 10); return Number.isNaN(t) ? null : { kind: "complete", style: { shadowOpacity: t / 100 } }; } -function Kf(e) { +function rc(e) { if (e.includes("/")) { - let [n = "", r = ""] = e.split("/", 2), i = Hs(n), o = Hs(r); + let [n = "", r = ""] = e.split("/", 2), i = Ys(n), o = Ys(r); return i === null || o === null ? null : { kind: "complete", style: { shadowOffset: { width: i, height: o } } }; } - let t = Hs(e); + let t = Ys(e); return t === null ? null : { kind: "complete", style: { shadowOffset: { width: t, height: t } } }; } -function Hs(e) { +function Ys(e) { let t = ur(e); return typeof t == "number" ? t : null; } @@ -19399,19 +19482,19 @@ var Or = class { this.config = n, this.cache = r, this.position = 0, this.isNull = false, this.isNegative = false, this.context = {}, this.context.device = i; let h2 = t.trim().split(":"), m2 = []; h2.length === 1 ? this.string = t : (this.string = (s = h2.pop()) !== null && s !== void 0 ? s : "", m2 = h2), this.char = this.string[0]; - let b = zs((a = this.config.theme) === null || a === void 0 ? void 0 : a.screens); + let b = js((a = this.config.theme) === null || a === void 0 ? void 0 : a.screens); for (let y of m2) if (b[y]) { let T = (u2 = b[y]) === null || u2 === void 0 ? void 0 : u2[2]; T !== void 0 && (this.order = ((f = this.order) !== null && f !== void 0 ? f : 0) + T); - let k = (l2 = i.windowDimensions) === null || l2 === void 0 ? void 0 : l2.width; - if (k) { + let E = (l2 = i.windowDimensions) === null || l2 === void 0 ? void 0 : l2.width; + if (E) { let [P2, w2] = (p = b[y]) !== null && p !== void 0 ? p : [0, 0]; - (k <= P2 || k > w2) && (this.isNull = true); + (E <= P2 || E > w2) && (this.isNull = true); } else this.isNull = true; } else - Lf(y) ? this.isNull = y !== o : Mf(y) ? i.windowDimensions ? (i.windowDimensions.width > i.windowDimensions.height ? "landscape" : "portrait") !== y ? this.isNull = true : this.incrementOrder() : this.isNull = true : y === "retina" ? i.pixelDensity === 2 ? this.incrementOrder() : this.isNull = true : y === "dark" ? i.colorScheme !== "dark" ? this.isNull = true : this.incrementOrder() : this.handlePossibleArbitraryBreakpointPrefix(y) || (this.isNull = true); + Df(y) ? this.isNull = y !== o : $f(y) ? i.windowDimensions ? (i.windowDimensions.width > i.windowDimensions.height ? "landscape" : "portrait") !== y ? this.isNull = true : this.incrementOrder() : this.isNull = true : y === "retina" ? i.pixelDensity === 2 ? this.incrementOrder() : this.isNull = true : y === "dark" ? i.colorScheme !== "dark" ? this.isNull = true : this.incrementOrder() : this.handlePossibleArbitraryBreakpointPrefix(y) || (this.isNull = true); } parse() { if (this.isNull) @@ -19433,20 +19516,20 @@ var Or = class { if (u2) { let f = this.char === "m" ? "margin" : "padding"; this.advance(((n = (t = u2[0]) === null || t === void 0 ? void 0 : t.length) !== null && n !== void 0 ? n : 0) + 1); - let l2 = Ds(u2[1]), p = Gs(f, l2, this.isNegative, this.rest, (r = this.config.theme) === null || r === void 0 ? void 0 : r[f]); + let l2 = $s(u2[1]), p = Gs(f, l2, this.isNegative, this.rest, (r = this.config.theme) === null || r === void 0 ? void 0 : r[f]); if (p) return p; } } } - if (this.consumePeeked("h-") && (a = Vs("height", this.rest, this.context, s == null ? void 0 : s.height), a) || this.consumePeeked("w-") && (a = Vs("width", this.rest, this.context, s == null ? void 0 : s.width), a) || this.consumePeeked("min-w-") && (a = An("minWidth", this.rest, this.context, s == null ? void 0 : s.minWidth), a) || this.consumePeeked("min-h-") && (a = An("minHeight", this.rest, this.context, s == null ? void 0 : s.minHeight), a) || this.consumePeeked("max-w-") && (a = An("maxWidth", this.rest, this.context, s == null ? void 0 : s.maxWidth), a) || this.consumePeeked("max-h-") && (a = An("maxHeight", this.rest, this.context, s == null ? void 0 : s.maxHeight), a) || this.consumePeeked("leading-") && (a = Us(this.rest, s == null ? void 0 : s.lineHeight), a) || this.consumePeeked("text-") && (a = qs(this.rest, s == null ? void 0 : s.fontSize, this.context), a || (a = lr("text", this.rest, s == null ? void 0 : s.textColor), a) || this.consumePeeked("opacity-") && (a = On("text", this.rest), a)) || this.consumePeeked("font-") && (a = js(this.rest, s == null ? void 0 : s.fontFamily), a) || this.consumePeeked("aspect-") && (this.consumePeeked("ratio-") && Je("`aspect-ratio-{ratio}` is deprecated, use `aspect-{ratio}` instead"), a = Bt("aspectRatio", this.rest, { fractions: true }), a) || this.consumePeeked("tint-") && (a = lr("tint", this.rest, s == null ? void 0 : s.colors), a) || this.consumePeeked("bg-") && (a = lr("bg", this.rest, s == null ? void 0 : s.backgroundColor), a || this.consumePeeked("opacity-") && (a = On("bg", this.rest), a)) || this.consumePeeked("border") && (a = zf(this.rest, s), a || this.consumePeeked("-opacity-") && (a = On("border", this.rest), a)) || this.consumePeeked("rounded") && (a = jf(this.rest, s == null ? void 0 : s.borderRadius), a) || this.consumePeeked("bottom-") && (a = Er("bottom", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("top-") && (a = Er("top", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("left-") && (a = Er("left", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("right-") && (a = Er("right", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("inset-") && (a = Er("inset", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("flex-") && (this.consumePeeked("grow") ? a = Pn("Grow", this.rest, s == null ? void 0 : s.flexGrow) : this.consumePeeked("shrink") ? a = Pn("Shrink", this.rest, s == null ? void 0 : s.flexShrink) : a = Hf(this.rest, s == null ? void 0 : s.flex), a) || this.consumePeeked("grow") && (a = Pn("Grow", this.rest, s == null ? void 0 : s.flexGrow), a) || this.consumePeeked("shrink") && (a = Pn("Shrink", this.rest, s == null ? void 0 : s.flexShrink), a) || this.consumePeeked("shadow-color-opacity-") && (a = On("shadow", this.rest), a) || this.consumePeeked("shadow-opacity-") && (a = Qf(this.rest), a) || this.consumePeeked("shadow-offset-") && (a = Kf(this.rest), a) || this.consumePeeked("shadow-radius-") && (a = dt("shadowRadius", this.rest), a) || this.consumePeeked("shadow-") && (a = lr("shadow", this.rest, s == null ? void 0 : s.colors), a)) + if (this.consumePeeked("h-") && (a = Hs("height", this.rest, this.context, s == null ? void 0 : s.height), a) || this.consumePeeked("w-") && (a = Hs("width", this.rest, this.context, s == null ? void 0 : s.width), a) || this.consumePeeked("min-w-") && (a = An("minWidth", this.rest, this.context, s == null ? void 0 : s.minWidth), a) || this.consumePeeked("min-h-") && (a = An("minHeight", this.rest, this.context, s == null ? void 0 : s.minHeight), a) || this.consumePeeked("max-w-") && (a = An("maxWidth", this.rest, this.context, s == null ? void 0 : s.maxWidth), a) || this.consumePeeked("max-h-") && (a = An("maxHeight", this.rest, this.context, s == null ? void 0 : s.maxHeight), a) || this.consumePeeked("leading-") && (a = zs(this.rest, s == null ? void 0 : s.lineHeight), a) || this.consumePeeked("text-") && (a = qs(this.rest, s == null ? void 0 : s.fontSize, this.context), a || (a = lr("text", this.rest, s == null ? void 0 : s.textColor), a) || this.consumePeeked("opacity-") && (a = On("text", this.rest), a)) || this.consumePeeked("font-") && (a = Vs(this.rest, s == null ? void 0 : s.fontFamily), a) || this.consumePeeked("aspect-") && (this.consumePeeked("ratio-") && Je("`aspect-ratio-{ratio}` is deprecated, use `aspect-{ratio}` instead"), a = $t("aspectRatio", this.rest, { fractions: true }), a) || this.consumePeeked("tint-") && (a = lr("tint", this.rest, s == null ? void 0 : s.colors), a) || this.consumePeeked("bg-") && (a = lr("bg", this.rest, s == null ? void 0 : s.backgroundColor), a || this.consumePeeked("opacity-") && (a = On("bg", this.rest), a)) || this.consumePeeked("border") && (a = Xf(this.rest, s), a || this.consumePeeked("-opacity-") && (a = On("border", this.rest), a)) || this.consumePeeked("rounded") && (a = Qf(this.rest, s == null ? void 0 : s.borderRadius), a) || this.consumePeeked("bottom-") && (a = kr("bottom", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("top-") && (a = kr("top", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("left-") && (a = kr("left", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("right-") && (a = kr("right", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("inset-") && (a = kr("inset", this.rest, this.isNegative, s == null ? void 0 : s.inset), a) || this.consumePeeked("flex-") && (this.consumePeeked("grow") ? a = Pn("Grow", this.rest, s == null ? void 0 : s.flexGrow) : this.consumePeeked("shrink") ? a = Pn("Shrink", this.rest, s == null ? void 0 : s.flexShrink) : a = Jf(this.rest, s == null ? void 0 : s.flex), a) || this.consumePeeked("grow") && (a = Pn("Grow", this.rest, s == null ? void 0 : s.flexGrow), a) || this.consumePeeked("shrink") && (a = Pn("Shrink", this.rest, s == null ? void 0 : s.flexShrink), a) || this.consumePeeked("shadow-color-opacity-") && (a = On("shadow", this.rest), a) || this.consumePeeked("shadow-opacity-") && (a = tc(this.rest), a) || this.consumePeeked("shadow-offset-") && (a = rc(this.rest), a) || this.consumePeeked("shadow-radius-") && (a = dt("shadowRadius", this.rest), a) || this.consumePeeked("shadow-") && (a = lr("shadow", this.rest, s == null ? void 0 : s.colors), a)) return a; if (this.consumePeeked("elevation-")) { let u2 = parseInt(this.rest, 10); if (!Number.isNaN(u2)) return _({ elevation: u2 }); } - if (this.consumePeeked("opacity-") && (a = Xf(this.rest, s == null ? void 0 : s.opacity), a) || this.consumePeeked("tracking-") && (a = Yf(this.rest, this.isNegative, s == null ? void 0 : s.letterSpacing), a)) + if (this.consumePeeked("opacity-") && (a = ec2(this.rest, s == null ? void 0 : s.opacity), a) || this.consumePeeked("tracking-") && (a = Zf(this.rest, this.isNegative, s == null ? void 0 : s.letterSpacing), a)) return a; if (this.consumePeeked("z-")) { let u2 = Number((o = (i = s == null ? void 0 : s.zIndex) === null || i === void 0 ? void 0 : i[this.rest]) !== null && o !== void 0 ? o : this.rest); @@ -19490,40 +19573,40 @@ var Or = class { this.order = ((t = this.order) !== null && t !== void 0 ? t : 0) + 1; } }; -function Jf(e) { +function nc(e) { let t = [], n = null; return e.forEach((r) => { if (typeof r == "string") - t = [...t, ...Ys(r)]; + t = [...t, ...Xs(r)]; else if (Array.isArray(r)) - t = [...t, ...r.flatMap(Ys)]; + t = [...t, ...r.flatMap(Xs)]; else if (typeof r == "object" && r !== null) for (let [i, o] of Object.entries(r)) - typeof o == "boolean" ? t = [...t, ...o ? Ys(i) : []] : n ? n[i] = o : n = { [i]: o }; - }), [t.filter(Boolean).filter(Ub), n]; + typeof o == "boolean" ? t = [...t, ...o ? Xs(i) : []] : n ? n[i] = o : n = { [i]: o }; + }), [t.filter(Boolean).filter(Qb), n]; } -function Ys(e) { +function Xs(e) { return e.trim().split(/\s+/); } -function Ub(e, t, n) { +function Qb(e, t, n) { return n.indexOf(e) === t; } -function Zf(e) { +function ic(e) { var t; - return (t = e == null ? void 0 : e.reduce((n, r) => ({ ...n, ...Gb(r.handler) }), {})) !== null && t !== void 0 ? t : {}; + return (t = e == null ? void 0 : e.reduce((n, r) => ({ ...n, ...Kb(r.handler) }), {})) !== null && t !== void 0 ? t : {}; } -function Gb(e) { +function Kb(e) { let t = {}; return e({ addUtilities: (n) => { t = n; - }, ...zb }), t; + }, ...Jb }), t; } function It(e) { throw new Error(`tailwindcss plugin function argument object prop "${e}" not implemented`); } -var zb = { addComponents: It, addBase: It, addVariant: It, e: It, prefix: It, theme: It, variants: It, config: It, corePlugins: It, matchUtilities: It, postcss: null }; -function tc(e, t) { - let n = (0, ec2.default)(jb(e)), r = {}, i = Zf(n.plugins), o = {}, s = Object.entries(i).map(([b, y]) => typeof y == "string" ? (o[b] = y, [b, { kind: "null" }]) : [b, _(y)]).filter(([, b]) => b.kind !== "null"); +var Jb = { addComponents: It, addBase: It, addVariant: It, e: It, prefix: It, theme: It, variants: It, config: It, corePlugins: It, matchUtilities: It, postcss: null }; +function sc(e, t) { + let n = (0, oc.default)(Zb(e)), r = {}, i = ic(n.plugins), o = {}, s = Object.entries(i).map(([b, y]) => typeof y == "string" ? (o[b] = y, [b, { kind: "null" }]) : [b, _(y)]).filter(([, b]) => b.kind !== "null"); function a() { return [r.windowDimensions ? `w${r.windowDimensions.width}` : false, r.windowDimensions ? `h${r.windowDimensions.height}` : false, r.fontScale ? `fs${r.fontScale}` : false, r.colorScheme === "dark" ? "dark" : false, r.pixelDensity === 2 ? "retina" : false].filter(Boolean).join("--") || "default"; } @@ -19532,53 +19615,53 @@ function tc(e, t) { let b = f[u2]; if (b) return b; - let y = new En(s); + let y = new kn(s); return f[u2] = y, y; } function p(...b) { - let y = l2(), T = {}, k = [], P2 = [], [w2, S2] = Jf(b), O = w2.join(" "), I = y.getStyle(O); + let y = l2(), T = {}, E = [], P2 = [], [w2, S2] = nc(b), O = w2.join(" "), I = y.getStyle(O); if (I) return { ...I, ...S2 || {} }; for (let F of w2) { - let q = y.getIr(F); - if (!q && F in o) { + let U = y.getIr(F); + if (!U && F in o) { let de = p(o[F]); y.setIr(F, _(de)), T = { ...T, ...de }; continue; } - switch (q = new Or(F, n, y, r, t).parse(), q.kind) { + switch (U = new Or(F, n, y, r, t).parse(), U.kind) { case "complete": - T = { ...T, ...q.style }, y.setIr(F, q); + T = { ...T, ...U.style }, y.setIr(F, U); break; case "dependent": - k.push(q); + E.push(U); break; case "ordered": - P2.push(q); + P2.push(U); break; case "null": - y.setIr(F, q); + y.setIr(F, U); break; } } if (P2.length > 0) { - P2.sort((F, q) => F.order - q.order); + P2.sort((F, U) => F.order - U.order); for (let F of P2) switch (F.styleIr.kind) { case "complete": T = { ...T, ...F.styleIr.style }; break; case "dependent": - k.push(F.styleIr); + E.push(F.styleIr); break; } } - if (k.length > 0) { - for (let F of k) { - let q = F.complete(T); - q && Je(q); + if (E.length > 0) { + for (let F of E) { + let U = F.complete(T); + U && Je(U); } - qf(T); + Vf(T); } return O !== "" && y.setStyle(O, T), S2 && (T = { ...T, ...S2 }), T; } @@ -19588,15 +19671,15 @@ function tc(e, t) { } let m2 = (b, ...y) => { let T = ""; - return b.forEach((k, P2) => { + return b.forEach((E, P2) => { var w2; - T += k + ((w2 = y[P2]) !== null && w2 !== void 0 ? w2 : ""); + T += E + ((w2 = y[P2]) !== null && w2 !== void 0 ? w2 : ""); }), p(T); }; return m2.style = p, m2.color = h2, m2.prefixMatch = (...b) => { - let y = b.sort().join(":"), T = l2(), k = T.getPrefixMatch(y); - if (k !== void 0) - return k; + let y = b.sort().join(":"), T = l2(), E = T.getPrefixMatch(y); + if (E !== void 0) + return E; let S2 = new Or(`${y}:flex`, n, T, r, t).parse().kind !== "null"; return T.setPrefixMatch(y, S2), S2; }, m2.setWindowDimensions = (b) => { @@ -19609,70 +19692,70 @@ function tc(e, t) { r.colorScheme = b, u2 = a(); }, m2; } -function jb(e) { +function Zb(e) { return { ...e, content: ["_no_warnings_please"] }; } -var Hb = { handler: ({ addUtilities: e }) => { +var tv = { handler: ({ addUtilities: e }) => { e({ "shadow-sm": { boxShadow: "0 1px 2px 0 rgb(0 0 0 / 0.05)" }, shadow: { boxShadow: "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)" }, "shadow-md": { boxShadow: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)" }, "shadow-lg": { boxShadow: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)" }, "shadow-xl": { boxShadow: "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)" }, "shadow-2xl": { boxShadow: "0 25px 50px -12px rgb(0 0 0 / 0.25)" }, "shadow-inner": { boxShadow: "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)" }, "shadow-none": { boxShadow: "0 0 #0000" } }); } }; -function Yb(e) { - return tc({ ...e, plugins: [...(e == null ? void 0 : e.plugins) ?? [], Hb] }, "web"); +function rv(e) { + return sc({ ...e, plugins: [...(e == null ? void 0 : e.plugins) ?? [], tv] }, "web"); } -var Si; -function Xs({ width: e, height: t, config: n }) { - return Si || (Si = Yb(n)), Si.setWindowDimensions({ width: +e, height: +t }), Si; +var Ti; +function Qs({ width: e, height: t, config: n }) { + return Ti || (Ti = rv(n)), Ti.setWindowDimensions({ width: +e, height: +t }), Ti; } -var Qs = /* @__PURE__ */ new WeakMap(); -async function nc(e, t) { - let n = await Gt(); +var Ks = /* @__PURE__ */ new WeakMap(); +async function uc(e, t) { + let n = await zt(); if (!n || !n.Node) throw new Error("Satori is not initialized: expect `yoga` to be loaded, got " + n); t.fonts = t.fonts || []; let r; - Qs.has(t.fonts) ? r = Qs.get(t.fonts) : Qs.set(t.fonts, r = new Hr(t.fonts)); - let i = "width" in t ? t.width : void 0, o = "height" in t ? t.height : void 0, s = Xb(n, t.pointScaleFactor); + Ks.has(t.fonts) ? r = Ks.get(t.fonts) : Ks.set(t.fonts, r = new Hr(t.fonts)); + let i = "width" in t ? t.width : void 0, o = "height" in t ? t.height : void 0, s = nv(n, t.pointScaleFactor); i && s.setWidth(i), o && s.setHeight(o), s.setFlexDirection(n.FLEX_DIRECTION_ROW), s.setFlexWrap(n.WRAP_WRAP), s.setAlignContent(n.ALIGN_AUTO), s.setAlignItems(n.ALIGN_FLEX_START), s.setJustifyContent(n.JUSTIFY_FLEX_START), s.setOverflow(n.OVERFLOW_HIDDEN); - let a = { ...t.graphemeImages }, u2 = /* @__PURE__ */ new Set(); - Ot.clear(), Wr.clear(), await Ma(e); + let a = Object.assign(/* @__PURE__ */ Object.create(null), t.graphemeImages), u2 = /* @__PURE__ */ new Set(); + Ot.clear(), Wr.clear(), await $a(e); let f = jr(e, { id: "id", parentStyle: {}, inheritedStyle: { fontSize: 16, fontWeight: "normal", fontFamily: "serif", fontStyle: "normal", lineHeight: "normal", color: "black", opacity: 1, whiteSpace: "normal", _viewportWidth: i, _viewportHeight: o }, parent: s, font: r, embedFont: t.embedFont, debug: t.debug, graphemeImages: a, canLoadAdditionalAssets: !!t.loadAdditionalAsset, onNodeDetected: t.onNodeDetected, getTwStyles: (b, y) => { - let k = { ...Xs({ width: i, height: o, config: t.tailwindConfig })([b]) }; - return typeof k.lineHeight == "number" && (k.lineHeight = k.lineHeight / (+k.fontSize || y.fontSize || 16)), k.shadowColor && k.boxShadow && (k.boxShadow = k.boxShadow.replace(/rgba?\([^)]+\)/, k.shadowColor)), k; + let E = { ...Qs({ width: i, height: o, config: t.tailwindConfig })([b]) }; + return typeof E.lineHeight == "number" && (E.lineHeight = E.lineHeight / (+E.fontSize || y.fontSize || 16)), E.shadowColor && E.boxShadow && (E.boxShadow = E.boxShadow.replace(/rgba?\([^)]+\)/, E.shadowColor)), E; } }), l2 = (await f.next()).value; if (t.loadAdditionalAsset && l2.length) { - let b = Qb(l2), y = [], T = {}; - await Promise.all(Object.entries(b).flatMap(([k, P2]) => P2.map((w2) => { - let S2 = `${k}_${w2}`; - return u2.has(S2) ? null : (u2.add(S2), t.loadAdditionalAsset(k, w2).then((O) => { + let b = iv(l2), y = [], T = {}; + await Promise.all(Object.entries(b).flatMap(([E, P2]) => P2.map((w2) => { + let S2 = `${E}_${w2}`; + return u2.has(S2) ? null : (u2.add(S2), t.loadAdditionalAsset(E, w2).then((O) => { typeof O == "string" ? T[w2] = O : O && (Array.isArray(O) ? y.push(...O) : y.push(O)); })); }))), r.addFonts(y), Object.assign(a, T); } await f.next(), s.calculateLayout(i, o, n.DIRECTION_LTR); let p = (await f.next([0, 0])).value, h2 = s.getComputedWidth(), m2 = s.getComputedHeight(); - return s.freeRecursive(), ao({ width: h2, height: m2, content: p }); + return s.freeRecursive(), uo({ width: h2, height: m2, content: p }); } -function Xb(e, t) { +function nv(e, t) { if (t) { let n = e.Config.create(); return n.setPointScaleFactor(t), e.Node.createWithConfig(n); } else return e.Node.create(); } -function Qb(e) { +function iv(e) { let t = {}, n = {}; for (let { word: r, locale: i } of e) { - let o = vu(r, i).join("|"); + let o = _u(r, i).join("|"); n[o] = n[o] || "", n[o] += r; } return Object.keys(n).forEach((r) => { - t[r] = t[r] || [], r === "emoji" ? t[r].push(...rc(Ve(n[r], "grapheme"))) : (t[r][0] = t[r][0] || "", t[r][0] += rc(Ve(n[r], "grapheme", r === "unknown" ? void 0 : r)).join("")); + t[r] = t[r] || [], r === "emoji" ? t[r].push(...ac(Ve(n[r], "grapheme"))) : (t[r][0] = t[r][0] || "", t[r][0] += ac(Ve(n[r], "grapheme", r === "unknown" ? void 0 : r)).join("")); }), t; } -function rc(e) { +function ac(e) { return Array.from(new Set(e)); } -// node_modules/.pnpm/@resvg+resvg-wasm@2.4.0/node_modules/@resvg/resvg-wasm/index.mjs +// node_modules/.pnpm/@resvg+resvg-wasm@2.4.1/node_modules/@resvg/resvg-wasm/index.mjs var resvg_wasm_exports = {}; __export(resvg_wasm_exports, { Resvg: () => Resvg2, @@ -20432,7 +20515,7 @@ async function render(satori, resvg, sharp, opts, defaultFonts, element) { // src/index.edge.ts var initializedResvg = initWasm(resvg_wasm); -var initializeSatori = Wc(yoga_wasm); +var initializeSatori = Uc(yoga_wasm); var fallbackFont = fetch( new URL("./Geist-Regular.ttf", import.meta.url) ).then((res) => res.arrayBuffer()); @@ -20454,7 +20537,7 @@ var ImageResponse = class extends Response { } ]; const result2 = await render( - nc, + uc, resvg_wasm_exports, void 0, options, diff --git a/packages/next/src/compiled/@vercel/og/index.node.js b/packages/next/src/compiled/@vercel/og/index.node.js index 416de7e6420f..65b6b13e4583 100644 --- a/packages/next/src/compiled/@vercel/og/index.node.js +++ b/packages/next/src/compiled/@vercel/og/index.node.js @@ -87,7 +87,7 @@ var require_tiny_inflate = __commonJS({ sum += 1 << bits2[i]; } } - function tinf_build_fixed_trees(lt, dt) { + function tinf_build_fixed_trees(lt, dt2) { var i; for (i = 0; i < 7; ++i) lt.table[i] = 0; @@ -103,10 +103,10 @@ var require_tiny_inflate = __commonJS({ for (i = 0; i < 112; ++i) lt.trans[24 + 144 + 8 + i] = 144 + i; for (i = 0; i < 5; ++i) - dt.table[i] = 0; - dt.table[5] = 32; + dt2.table[i] = 0; + dt2.table[5] = 32; for (i = 0; i < 32; ++i) - dt.trans[i] = i; + dt2.trans[i] = i; } var offs = new Uint16Array(16); function tinf_build_tree(t, lengths2, off, num) { @@ -164,7 +164,7 @@ var require_tiny_inflate = __commonJS({ d2.bitcount -= len; return t.trans[sum + cur]; } - function tinf_decode_trees(d2, lt, dt) { + function tinf_decode_trees(d2, lt, dt2) { var hlit, hdist, hclen; var i, num, length; hlit = tinf_read_bits(d2, 5, 257); @@ -202,9 +202,9 @@ var require_tiny_inflate = __commonJS({ } } tinf_build_tree(lt, lengths, 0, hlit); - tinf_build_tree(dt, lengths, hlit, hdist); + tinf_build_tree(dt2, lengths, hlit, hdist); } - function tinf_inflate_block_data(d2, lt, dt) { + function tinf_inflate_block_data(d2, lt, dt2) { while (1) { var sym = tinf_decode_symbol(d2, lt); if (sym === 256) { @@ -217,7 +217,7 @@ var require_tiny_inflate = __commonJS({ var i; sym -= 257; length = tinf_read_bits(d2, length_bits[sym], length_base[sym]); - dist = tinf_decode_symbol(d2, dt); + dist = tinf_decode_symbol(d2, dt2); offs2 = d2.destLen - tinf_read_bits(d2, dist_bits[dist], dist_base[dist]); for (i = offs2; i < offs2 + length; ++i) { d2.dest[d2.destLen++] = d2.dest[i]; @@ -931,7 +931,7 @@ var require_camelize = __commonJS({ }, {}); } function camelCase(str) { - return str.replace(/[_.-](\w|$)/g, function(_, x2) { + return str.replace(/[_.-](\w|$)/g, function(_2, x2) { return x2.toUpperCase(); }); } @@ -3648,7 +3648,7 @@ var $557adaaeb0c7885f$var$LineBreaker = class { }; $557adaaeb0c7885f$exports = $557adaaeb0c7885f$var$LineBreaker; -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/index.js +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/index.js var import_css_to_react_native = __toESM(require_css_to_react_native(), 1); var import_css_background_parser = __toESM(require_css_background_parser(), 1); var import_css_box_shadow = __toESM(require_css_box_shadow(), 1); @@ -3785,7 +3785,7 @@ var parseCSSColor = (str) => { }; var index_esm_default = parseCSSColor; -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/index.js +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/index.js var import_postcss_value_parser = __toESM(require_lib(), 1); var import_css_to_react_native2 = __toESM(require_css_to_react_native(), 1); var import_postcss_value_parser2 = __toESM(require_lib(), 1); @@ -3853,7 +3853,7 @@ function S(e) { return /(circle|ellipse|at)/.test(e) ? false : /^(rgba?|hwb|hsl|lab|lch|oklab|color|#|[a-zA-Z]+)/.test(e); } -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/index.js +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/index.js var import_css_to_react_native3 = __toESM(require_css_to_react_native(), 1); // node_modules/.pnpm/@shuding+opentype.js@1.4.0-beta.0/node_modules/@shuding/opentype.js/dist/opentype.module.js @@ -3973,9 +3973,9 @@ var hMap = function(cd, mb, r) { for (i = 0; i < mb; ++i) { le[i] = le[i - 1] + l2[i - 1] << 1; } - var co2; + var co; if (r) { - co2 = new u16(1 << mb); + co = new u16(1 << mb); var rvb = 15 - mb; for (i = 0; i < s; ++i) { if (cd[i]) { @@ -3983,19 +3983,19 @@ var hMap = function(cd, mb, r) { var r_1 = mb - cd[i]; var v2 = le[cd[i] - 1]++ << r_1; for (var m2 = v2 | (1 << r_1) - 1; v2 <= m2; ++v2) { - co2[rev[v2] >>> rvb] = sv; + co[rev[v2] >>> rvb] = sv; } } } } else { - co2 = new u16(s); + co = new u16(s); for (i = 0; i < s; ++i) { if (cd[i]) { - co2[i] = rev[le[cd[i] - 1]++] >>> 15 - cd[i]; + co[i] = rev[le[cd[i] - 1]++] >>> 15 - cd[i]; } } } - return co2; + return co; }; var flt = new u8(288); for (i = 0; i < 144; ++i) { @@ -4094,14 +4094,14 @@ var inflt = function(dat, buf, st) { buf = new u8(sl2 * 3); } var cbuf = function(l3) { - var bl2 = buf.length; - if (l3 > bl2) { - var nbuf = new u8(Math.max(bl2 * 2, l3)); + var bl = buf.length; + if (l3 > bl) { + var nbuf = new u8(Math.max(bl * 2, l3)); nbuf.set(buf); buf = nbuf; } }; - var final = st.f || 0, pos = st.p || 0, bt = st.b || 0, lm = st.l, dm = st.d, lbt = st.m, dbt = st.n; + var final = st.f || 0, pos = st.p || 0, bt2 = st.b || 0, lm = st.l, dm = st.d, lbt = st.m, dbt = st.n; var tbts = sl2 * 8; do { if (!lm) { @@ -4117,10 +4117,10 @@ var inflt = function(dat, buf, st) { break; } if (noBuf) { - cbuf(bt + l2); + cbuf(bt2 + l2); } - buf.set(dat.subarray(s, t), bt); - st.b = bt += l2, st.p = pos = t * 8, st.f = final; + buf.set(dat.subarray(s, t), bt2); + st.b = bt2 += l2, st.p = pos = t * 8, st.f = final; continue; } else if (type == 1) { lm = flrm, dm = fdrm, lbt = 9, dbt = 5; @@ -4156,11 +4156,11 @@ var inflt = function(dat, buf, st) { } } } - var lt = ldt.subarray(0, hLit), dt = ldt.subarray(hLit); + var lt = ldt.subarray(0, hLit), dt2 = ldt.subarray(hLit); lbt = max(lt); - dbt = max(dt); + dbt = max(dt2); lm = hMap(lt, lbt, 1); - dm = hMap(dt, dbt, 1); + dm = hMap(dt2, dbt, 1); } else { err(1); } @@ -4172,7 +4172,7 @@ var inflt = function(dat, buf, st) { } } if (noBuf) { - cbuf(bt + 131072); + cbuf(bt2 + 131072); } var lms = (1 << lbt) - 1, dms = (1 << dbt) - 1; var lpos = pos; @@ -4189,7 +4189,7 @@ var inflt = function(dat, buf, st) { err(2); } if (sym < 256) { - buf[bt++] = sym; + buf[bt2++] = sym; } else if (sym == 256) { lpos = pos, lm = null; break; @@ -4205,10 +4205,10 @@ var inflt = function(dat, buf, st) { err(3); } pos += d2 & 15; - var dt = fd[dsym]; + var dt2 = fd[dsym]; if (dsym > 3) { var b = fdeb[dsym]; - dt += bits16(dat, pos) & (1 << b) - 1, pos += b; + dt2 += bits16(dat, pos) & (1 << b) - 1, pos += b; } if (pos > tbts) { if (noSt) { @@ -4217,24 +4217,24 @@ var inflt = function(dat, buf, st) { break; } if (noBuf) { - cbuf(bt + 131072); + cbuf(bt2 + 131072); } - var end = bt + add; - for (; bt < end; bt += 4) { - buf[bt] = buf[bt - dt]; - buf[bt + 1] = buf[bt + 1 - dt]; - buf[bt + 2] = buf[bt + 2 - dt]; - buf[bt + 3] = buf[bt + 3 - dt]; + var end = bt2 + add; + for (; bt2 < end; bt2 += 4) { + buf[bt2] = buf[bt2 - dt2]; + buf[bt2 + 1] = buf[bt2 + 1 - dt2]; + buf[bt2 + 2] = buf[bt2 + 2 - dt2]; + buf[bt2 + 3] = buf[bt2 + 3 - dt2]; } - bt = end; + bt2 = end; } } - st.l = lm, st.p = lpos, st.b = bt, st.f = final; + st.l = lm, st.p = lpos, st.b = bt2, st.f = final; if (lm) { final = 1, st.m = lbt, st.d = dm, st.n = dbt; } } while (!final); - return bt == buf.length ? buf : slc(buf, 0, bt); + return bt2 == buf.length ? buf : slc(buf, 0, bt2); }; var et = /* @__PURE__ */ new u8(0); function inflateSync(data, out) { @@ -5427,9 +5427,9 @@ Glyph.prototype.getContours = function() { var contours = []; var currentContour = []; for (var i = 0; i < this.points.length; i += 1) { - var pt = this.points[i]; - currentContour.push(pt); - if (pt.lastPointOfContour) { + var pt2 = this.points[i]; + currentContour.push(pt2); + if (pt2.lastPointOfContour) { contours.push(currentContour); currentContour = []; } @@ -6873,12 +6873,12 @@ function parseGlyph(glyph, data, start) { function transformPoints(points, transform) { var newPoints = []; for (var i = 0; i < points.length; i += 1) { - var pt = points[i]; + var pt2 = points[i]; var newPt = { - x: transform.xScale * pt.x + transform.scale01 * pt.y + transform.dx, - y: transform.scale10 * pt.x + transform.yScale * pt.y + transform.dy, - onCurve: pt.onCurve, - lastPointOfContour: pt.lastPointOfContour + x: transform.xScale * pt2.x + transform.scale01 * pt2.y + transform.dx, + y: transform.scale10 * pt2.x + transform.yScale * pt2.y + transform.dy, + onCurve: pt2.onCurve, + lastPointOfContour: pt2.lastPointOfContour }; newPoints.push(newPt); } @@ -6888,9 +6888,9 @@ function getContours(points) { var contours = []; var currentContour = []; for (var i = 0; i < points.length; i += 1) { - var pt = points[i]; - currentContour.push(pt); - if (pt.lastPointOfContour) { + var pt2 = points[i]; + currentContour.push(pt2); + if (pt2.lastPointOfContour) { contours.push(currentContour); currentContour = []; } @@ -7078,7 +7078,7 @@ var xUnitVector = { var doa2; var dm1; var dm2; - var dt; + var dt2; if (!pv || pv === this) { do1 = p.xo - rp1.xo; do2 = p.xo - rp2.xo; @@ -7086,12 +7086,12 @@ var xUnitVector = { dm2 = rp2.x - rp2.xo; doa1 = Math.abs(do1); doa2 = Math.abs(do2); - dt = doa1 + doa2; - if (dt === 0) { + dt2 = doa1 + doa2; + if (dt2 === 0) { p.x = p.xo + (dm1 + dm2) / 2; return; } - p.x = p.xo + (dm1 * doa2 + dm2 * doa1) / dt; + p.x = p.xo + (dm1 * doa2 + dm2 * doa1) / dt2; return; } do1 = pv.distance(p, rp1, true, true); @@ -7100,12 +7100,12 @@ var xUnitVector = { dm2 = pv.distance(rp2, rp2, false, true); doa1 = Math.abs(do1); doa2 = Math.abs(do2); - dt = doa1 + doa2; - if (dt === 0) { + dt2 = doa1 + doa2; + if (dt2 === 0) { xUnitVector.setRelative(p, p, (dm1 + dm2) / 2, pv, true); return; } - xUnitVector.setRelative(p, p, (dm1 * doa2 + dm2 * doa1) / dt, pv, true); + xUnitVector.setRelative(p, p, (dm1 * doa2 + dm2 * doa1) / dt2, pv, true); }, // Slope of line normal to this normalSlope: Number.NEGATIVE_INFINITY, @@ -7166,7 +7166,7 @@ var yUnitVector = { var doa2; var dm1; var dm2; - var dt; + var dt2; if (!pv || pv === this) { do1 = p.yo - rp1.yo; do2 = p.yo - rp2.yo; @@ -7174,12 +7174,12 @@ var yUnitVector = { dm2 = rp2.y - rp2.yo; doa1 = Math.abs(do1); doa2 = Math.abs(do2); - dt = doa1 + doa2; - if (dt === 0) { + dt2 = doa1 + doa2; + if (dt2 === 0) { p.y = p.yo + (dm1 + dm2) / 2; return; } - p.y = p.yo + (dm1 * doa2 + dm2 * doa1) / dt; + p.y = p.yo + (dm1 * doa2 + dm2 * doa1) / dt2; return; } do1 = pv.distance(p, rp1, true, true); @@ -7188,12 +7188,12 @@ var yUnitVector = { dm2 = pv.distance(rp2, rp2, false, true); doa1 = Math.abs(do1); doa2 = Math.abs(do2); - dt = doa1 + doa2; - if (dt === 0) { + dt2 = doa1 + doa2; + if (dt2 === 0) { yUnitVector.setRelative(p, p, (dm1 + dm2) / 2, pv, true); return; } - yUnitVector.setRelative(p, p, (dm1 * doa2 + dm2 * doa1) / dt, pv, true); + yUnitVector.setRelative(p, p, (dm1 * doa2 + dm2 * doa1) / dt2, pv, true); }, // Slope of line normal to this. normalSlope: 0, @@ -7253,19 +7253,19 @@ UnitVector.prototype.interpolate = function(p, rp1, rp2, pv) { var do2; var doa1; var doa2; - var dt; + var dt2; do1 = pv.distance(p, rp1, true, true); do2 = pv.distance(p, rp2, true, true); dm1 = pv.distance(rp1, rp1, false, true); dm2 = pv.distance(rp2, rp2, false, true); doa1 = Math.abs(do1); doa2 = Math.abs(do2); - dt = doa1 + doa2; - if (dt === 0) { + dt2 = doa1 + doa2; + if (dt2 === 0) { this.setRelative(p, p, (dm1 + dm2) / 2, pv, true); return; } - this.setRelative(p, p, (dm1 * doa2 + dm2 * doa1) / dt, pv, true); + this.setRelative(p, p, (dm1 * doa2 + dm2 * doa1) / dt2, pv, true); }; UnitVector.prototype.setRelative = function(p, rp, d2, pv, org) { pv = pv || this; @@ -7447,8 +7447,8 @@ execGlyph = function(glyph, prepState) { var dy = Math.round(c2.dy * yScale); var gz = state.gZone; var cc = state.contours; - for (var pi2 = 0; pi2 < gz.length; pi2++) { - var p = gz[pi2]; + for (var pi = 0; pi < gz.length; pi++) { + var p = gz[pi]; p.xTouched = p.yTouched = false; p.xo = p.x = p.x + dx; p.yo = p.y = p.y + dy; @@ -7689,16 +7689,16 @@ function ISECT(state) { var pa1i = stack.pop(); var pb0i = stack.pop(); var pb1i = stack.pop(); - var pi2 = stack.pop(); + var pi = stack.pop(); var z0 = state.z0; var z1 = state.z1; var pa0 = z0[pa0i]; var pa1 = z0[pa1i]; var pb0 = z1[pb0i]; var pb1 = z1[pb1i]; - var p = state.z2[pi2]; + var p = state.z2[pi]; if (exports.DEBUG) { - console.log("ISECT[], ", pa0i, pa1i, pb0i, pb1i, pi2); + console.log("ISECT[], ", pa0i, pa1i, pb0i, pb1i, pi); } var x1 = pa0.x; var y1 = pa0.y; @@ -7895,14 +7895,14 @@ function DEPTH(state) { } function LOOPCALL(state) { var stack = state.stack; - var fn2 = stack.pop(); + var fn = stack.pop(); var c2 = stack.pop(); if (exports.DEBUG) { - console.log(state.step, "LOOPCALL[]", fn2, c2); + console.log(state.step, "LOOPCALL[]", fn, c2); } var cip = state.ip; var cprog = state.prog; - state.prog = state.funcs[fn2]; + state.prog = state.funcs[fn]; for (var i = 0; i < c2; i++) { exec(state); if (exports.DEBUG) { @@ -7917,18 +7917,18 @@ function LOOPCALL(state) { state.prog = cprog; } function CALL(state) { - var fn2 = state.stack.pop(); + var fn = state.stack.pop(); if (exports.DEBUG) { - console.log(state.step, "CALL[]", fn2); + console.log(state.step, "CALL[]", fn); } var cip = state.ip; var cprog = state.prog; - state.prog = state.funcs[fn2]; + state.prog = state.funcs[fn]; exec(state); state.ip = cip; state.prog = cprog; if (exports.DEBUG) { - console.log(++state.step, "returning from", fn2); + console.log(++state.step, "returning from", fn); } } function CINDEX(state) { @@ -7954,23 +7954,23 @@ function FDEF(state) { var stack = state.stack; var prog = state.prog; var ip = state.ip; - var fn2 = stack.pop(); + var fn = stack.pop(); var ipBegin = ip; if (exports.DEBUG) { - console.log(state.step, "FDEF[]", fn2); + console.log(state.step, "FDEF[]", fn); } while (prog[++ip] !== 45) { } state.ip = ip; - state.funcs[fn2] = prog.slice(ipBegin + 1, ip); + state.funcs[fn] = prog.slice(ipBegin + 1, ip); } function MDAP(round, state) { - var pi2 = state.stack.pop(); - var p = state.z0[pi2]; + var pi = state.stack.pop(); + var p = state.z0[pi]; var fv = state.fv; var pv = state.pv; if (exports.DEBUG) { - console.log(state.step, "MDAP[" + round + "]", pi2); + console.log(state.step, "MDAP[" + round + "]", pi); } var d2 = pv.distance(p, HPZero); if (round) { @@ -7978,7 +7978,7 @@ function MDAP(round, state) { } fv.setRelative(p, HPZero, d2, pv); fv.touch(p); - state.rp0 = state.rp1 = pi2; + state.rp0 = state.rp1 = pi; } function IUP(v2, state) { var z2 = state.z2; @@ -8014,8 +8014,8 @@ function SHP(a, state) { var loop = state.loop; var z2 = state.z2; while (loop--) { - var pi2 = stack.pop(); - var p = z2[pi2]; + var pi = stack.pop(); + var p = z2[pi]; var d2 = pv.distance(rp, rp, false, true); fv.setRelative(p, p, d2, pv); fv.touch(p); @@ -8023,7 +8023,7 @@ function SHP(a, state) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "SHP[" + (a ? "rp1" : "rp2") + "]", - pi2 + pi ); } } @@ -8035,11 +8035,11 @@ function SHC(a, state) { var rp = (a ? state.z0 : state.z1)[rpi]; var fv = state.fv; var pv = state.pv; - var ci2 = stack.pop(); - var sp = state.z2[state.contours[ci2]]; + var ci = stack.pop(); + var sp = state.z2[state.contours[ci]]; var p = sp; if (exports.DEBUG) { - console.log(state.step, "SHC[" + a + "]", ci2); + console.log(state.step, "SHC[" + a + "]", ci); } var d2 = pv.distance(rp, rp, false, true); do { @@ -8085,13 +8085,13 @@ function SHPIX(state) { var d2 = stack.pop() / 64; var z2 = state.z2; while (loop--) { - var pi2 = stack.pop(); - var p = z2[pi2]; + var pi = stack.pop(); + var p = z2[pi]; if (exports.DEBUG) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "SHPIX[]", - pi2, + pi, d2 ); } @@ -8111,13 +8111,13 @@ function IP(state) { var pv = state.dpv; var z2 = state.z2; while (loop--) { - var pi2 = stack.pop(); - var p = z2[pi2]; + var pi = stack.pop(); + var p = z2[pi]; if (exports.DEBUG) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "IP[]", - pi2, + pi, rp1i, "<->", rp2i @@ -8131,20 +8131,20 @@ function IP(state) { function MSIRP(a, state) { var stack = state.stack; var d2 = stack.pop() / 64; - var pi2 = stack.pop(); - var p = state.z1[pi2]; + var pi = stack.pop(); + var p = state.z1[pi]; var rp0 = state.z0[state.rp0]; var fv = state.fv; var pv = state.pv; fv.setRelative(p, rp0, d2, pv); fv.touch(p); if (exports.DEBUG) { - console.log(state.step, "MSIRP[" + a + "]", d2, pi2); + console.log(state.step, "MSIRP[" + a + "]", d2, pi); } state.rp1 = state.rp0; - state.rp2 = pi2; + state.rp2 = pi; if (a) { - state.rp0 = pi2; + state.rp0 = pi; } } function ALIGNRP(state) { @@ -8156,13 +8156,13 @@ function ALIGNRP(state) { var pv = state.pv; var z1 = state.z1; while (loop--) { - var pi2 = stack.pop(); - var p = z1[pi2]; + var pi = stack.pop(); + var p = z1[pi]; if (exports.DEBUG) { console.log( state.step, (state.loop > 1 ? "loop " + (state.loop - loop) + ": " : "") + "ALIGNRP[]", - pi2 + pi ); } fv.setRelative(p, rp0, 0, pv); @@ -8179,8 +8179,8 @@ function RTDG(state) { function MIAP(round, state) { var stack = state.stack; var n = stack.pop(); - var pi2 = stack.pop(); - var p = state.z0[pi2]; + var pi = stack.pop(); + var p = state.z0[pi]; var fv = state.fv; var pv = state.pv; var cv = state.cvt[n]; @@ -8192,7 +8192,7 @@ function MIAP(round, state) { "(", cv, ")", - pi2 + pi ); } var d2 = pv.distance(p, HPZero); @@ -8208,7 +8208,7 @@ function MIAP(round, state) { p.yo = p.y; } fv.touch(p); - state.rp0 = state.rp1 = pi2; + state.rp0 = state.rp1 = pi; } function NPUSHB(state) { var prog = state.prog; @@ -8232,11 +8232,11 @@ function NPUSHW(state) { console.log(state.step, "NPUSHW[]", n); } for (var i = 0; i < n; i++) { - var w2 = prog[++ip] << 8 | prog[++ip]; - if (w2 & 32768) { - w2 = -((w2 ^ 65535) + 1); + var w3 = prog[++ip] << 8 | prog[++ip]; + if (w3 & 32768) { + w3 = -((w3 ^ 65535) + 1); } - stack.push(w2); + stack.push(w3); } state.ip = ip; } @@ -8282,10 +8282,10 @@ function RCVT(state) { } function GC(a, state) { var stack = state.stack; - var pi2 = stack.pop(); - var p = state.z2[pi2]; + var pi = stack.pop(); + var p = state.z2[pi]; if (exports.DEBUG) { - console.log(state.step, "GC[" + a + "]", pi2); + console.log(state.step, "GC[" + a + "]", pi); } stack.push(state.dpv.distance(p, HPZero, a, false) * 64); } @@ -8439,7 +8439,7 @@ function DELTAP123(b, state) { console.log(state.step, "DELTAP[" + b + "]", n, stack); } for (var i = 0; i < n; i++) { - var pi2 = stack.pop(); + var pi = stack.pop(); var arg = stack.pop(); var appem = base + ((arg & 240) >> 4); if (appem !== ppem) { @@ -8450,9 +8450,9 @@ function DELTAP123(b, state) { mag++; } if (exports.DEBUG) { - console.log(state.step, "DELTAPFIX", pi2, "by", mag * ds2); + console.log(state.step, "DELTAPFIX", pi, "by", mag * ds2); } - var p = z0[pi2]; + var p = z0[pi]; fv.setRelative(p, p, mag * ds2, pv); } } @@ -8540,7 +8540,7 @@ function CEILING(state) { } stack.push(Math.ceil(n / 64) * 64); } -function ROUND(dt, state) { +function ROUND(dt2, state) { var stack = state.stack; var n = stack.pop(); if (exports.DEBUG) { @@ -8804,21 +8804,21 @@ function PUSHW(n, state) { console.log(state.ip, "PUSHW[" + n + "]"); } for (var i = 0; i < n; i++) { - var w2 = prog[++ip] << 8 | prog[++ip]; - if (w2 & 32768) { - w2 = -((w2 ^ 65535) + 1); + var w3 = prog[++ip] << 8 | prog[++ip]; + if (w3 & 32768) { + w3 = -((w3 ^ 65535) + 1); } - stack.push(w2); + stack.push(w3); } state.ip = ip; } -function MDRP_MIRP(indirect, setRp0, keepD, ro, dt, state) { +function MDRP_MIRP(indirect, setRp0, keepD, ro, dt2, state) { var stack = state.stack; var cvte = indirect && stack.pop(); - var pi2 = stack.pop(); + var pi = stack.pop(); var rp0i = state.rp0; var rp = state.z0[rp0i]; - var p = state.z1[pi2]; + var p = state.z1[pi]; var md = state.minDis; var fv = state.fv; var pv = state.dpv; @@ -8846,9 +8846,9 @@ function MDRP_MIRP(indirect, setRp0, keepD, ro, dt, state) { if (exports.DEBUG) { console.log( state.step, - (indirect ? "MIRP[" : "MDRP[") + (setRp0 ? "M" : "m") + (keepD ? ">" : "_") + (ro ? "R" : "_") + (dt === 0 ? "Gr" : dt === 1 ? "Bl" : dt === 2 ? "Wh" : "") + "]", + (indirect ? "MIRP[" : "MDRP[") + (setRp0 ? "M" : "m") + (keepD ? ">" : "_") + (ro ? "R" : "_") + (dt2 === 0 ? "Gr" : dt2 === 1 ? "Bl" : dt2 === 2 ? "Wh" : "") + "]", indirect ? cvte + "(" + state.cvt[cvte] + "," + cv + ")" : "", - pi2, + pi, "(d =", od, "->", @@ -8857,9 +8857,9 @@ function MDRP_MIRP(indirect, setRp0, keepD, ro, dt, state) { ); } state.rp1 = state.rp0; - state.rp2 = pi2; + state.rp2 = pi; if (setRp0) { - state.rp0 = pi2; + state.rp0 = pi; } } instructionTable = [ @@ -12983,110 +12983,110 @@ var opentype = /* @__PURE__ */ Object.freeze({ }); var opentype_module_default = opentype; -// node_modules/.pnpm/satori@0.25.0/node_modules/satori/dist/index.js -var cI = Object.create; -var Kr = Object.defineProperty; -var fI = Object.getOwnPropertyDescriptor; -var BI = Object.getOwnPropertyNames; -var EI = Object.getPrototypeOf; -var QI = Object.prototype.hasOwnProperty; -var Xe = (A, e) => () => (A && (e = A(A = 0)), e); -var K2 = (A, e) => () => (e || A((e = { exports: {} }).exports, e), e.exports); -var kt = (A, e) => { +// node_modules/.pnpm/satori@0.29.0/node_modules/satori/dist/index.js +var uu = Object.create; +var Mr = Object.defineProperty; +var lu = Object.getOwnPropertyDescriptor; +var cu = Object.getOwnPropertyNames; +var Bu = Object.getPrototypeOf; +var Eu = Object.prototype.hasOwnProperty; +var tt = (A, e) => () => (A && (e = A(A = 0)), e); +var _ = (A, e) => () => (e || A((e = { exports: {} }).exports, e), e.exports); +var Lr = (A, e) => { for (var t in e) - Kr(A, t, { get: e[t], enumerable: true }); + Mr(A, t, { get: e[t], enumerable: true }); }; -var cs = (A, e, t, r) => { +var ns = (A, e, t, r) => { if (e && typeof e == "object" || typeof e == "function") - for (let n of BI(e)) - !QI.call(A, n) && n !== t && Kr(A, n, { get: () => e[n], enumerable: !(r = fI(e, n)) || r.enumerable }); + for (let n of cu(e)) + !Eu.call(A, n) && n !== t && Mr(A, n, { get: () => e[n], enumerable: !(r = lu(e, n)) || r.enumerable }); return A; }; -var CI = (A, e, t) => (t = A != null ? cI(EI(A)) : {}, cs(e || !A || !A.__esModule ? Kr(t, "default", { value: A, enumerable: true }) : t, A)); -var Yr = (A) => cs(Kr({}, "__esModule", { value: true }), A); -var ze; -var vs; -var ks; -var qt; -var _n; -var Ze; -var Mt; -var NI; -var zr; -var Jn; +var fu = (A, e, t) => (t = A != null ? uu(Bu(A)) : {}, ns(e || !A || !A.__esModule ? Mr(t, "default", { value: A, enumerable: true }) : t, A)); +var Gr = (A) => ns(Mr({}, "__esModule", { value: true }), A); +var He; +var ds; +var hs; var Ft; -var Lt; -var Wn; -var xs; -var Kn; -var Yn; +var Nn; var Oe; -var qn; -var MI; -var Rs; -var Zr = Xe(() => { - ze = function(A) { +var Qt; +var Ru; +var Tr; +var Fn; +var Ct; +var dt; +var Mn; +var ps; +var Ln; +var Gn; +var pe; +var Un; +var vu; +var ms; +var Pr = tt(() => { + He = function(A) { return A[A.Auto = 0] = "Auto", A[A.FlexStart = 1] = "FlexStart", A[A.Center = 2] = "Center", A[A.FlexEnd = 3] = "FlexEnd", A[A.Stretch = 4] = "Stretch", A[A.Baseline = 5] = "Baseline", A[A.SpaceBetween = 6] = "SpaceBetween", A[A.SpaceAround = 7] = "SpaceAround", A[A.SpaceEvenly = 8] = "SpaceEvenly", A; - }({}), vs = function(A) { + }({}), ds = function(A) { return A[A.BorderBox = 0] = "BorderBox", A[A.ContentBox = 1] = "ContentBox", A; - }({}), ks = function(A) { + }({}), hs = function(A) { return A[A.Width = 0] = "Width", A[A.Height = 1] = "Height", A; - }({}), qt = function(A) { + }({}), Ft = function(A) { return A[A.Inherit = 0] = "Inherit", A[A.LTR = 1] = "LTR", A[A.RTL = 2] = "RTL", A; - }({}), _n = function(A) { + }({}), Nn = function(A) { return A[A.Flex = 0] = "Flex", A[A.None = 1] = "None", A[A.Contents = 2] = "Contents", A; - }({}), Ze = function(A) { + }({}), Oe = function(A) { return A[A.Left = 0] = "Left", A[A.Top = 1] = "Top", A[A.Right = 2] = "Right", A[A.Bottom = 3] = "Bottom", A[A.Start = 4] = "Start", A[A.End = 5] = "End", A[A.Horizontal = 6] = "Horizontal", A[A.Vertical = 7] = "Vertical", A[A.All = 8] = "All", A; - }({}), Mt = function(A) { + }({}), Qt = function(A) { return A[A.None = 0] = "None", A[A.StretchFlexBasis = 1] = "StretchFlexBasis", A[A.AbsolutePositionWithoutInsetsExcludesPadding = 2] = "AbsolutePositionWithoutInsetsExcludesPadding", A[A.AbsolutePercentAgainstInnerSize = 4] = "AbsolutePercentAgainstInnerSize", A[A.All = 2147483647] = "All", A[A.Classic = 2147483646] = "Classic", A; - }({}), NI = function(A) { + }({}), Ru = function(A) { return A[A.WebFlexBasis = 0] = "WebFlexBasis", A; - }({}), zr = function(A) { + }({}), Tr = function(A) { return A[A.Column = 0] = "Column", A[A.ColumnReverse = 1] = "ColumnReverse", A[A.Row = 2] = "Row", A[A.RowReverse = 3] = "RowReverse", A; - }({}), Jn = function(A) { + }({}), Fn = function(A) { return A[A.Column = 0] = "Column", A[A.Row = 1] = "Row", A[A.All = 2] = "All", A; - }({}), Ft = function(A) { + }({}), Ct = function(A) { return A[A.FlexStart = 0] = "FlexStart", A[A.Center = 1] = "Center", A[A.FlexEnd = 2] = "FlexEnd", A[A.SpaceBetween = 3] = "SpaceBetween", A[A.SpaceAround = 4] = "SpaceAround", A[A.SpaceEvenly = 5] = "SpaceEvenly", A; - }({}), Lt = function(A) { + }({}), dt = function(A) { return A[A.Error = 0] = "Error", A[A.Warn = 1] = "Warn", A[A.Info = 2] = "Info", A[A.Debug = 3] = "Debug", A[A.Verbose = 4] = "Verbose", A[A.Fatal = 5] = "Fatal", A; - }({}), Wn = function(A) { + }({}), Mn = function(A) { return A[A.Undefined = 0] = "Undefined", A[A.Exactly = 1] = "Exactly", A[A.AtMost = 2] = "AtMost", A; - }({}), xs = function(A) { + }({}), ps = function(A) { return A[A.Default = 0] = "Default", A[A.Text = 1] = "Text", A; - }({}), Kn = function(A) { + }({}), Ln = function(A) { return A[A.Visible = 0] = "Visible", A[A.Hidden = 1] = "Hidden", A[A.Scroll = 2] = "Scroll", A; - }({}), Yn = function(A) { + }({}), Gn = function(A) { return A[A.Static = 0] = "Static", A[A.Relative = 1] = "Relative", A[A.Absolute = 2] = "Absolute", A; - }({}), Oe = function(A) { + }({}), pe = function(A) { return A[A.Undefined = 0] = "Undefined", A[A.Point = 1] = "Point", A[A.Percent = 2] = "Percent", A[A.Auto = 3] = "Auto", A; - }({}), qn = function(A) { + }({}), Un = function(A) { return A[A.NoWrap = 0] = "NoWrap", A[A.Wrap = 1] = "Wrap", A[A.WrapReverse = 2] = "WrapReverse", A; - }({}), MI = { ALIGN_AUTO: ze.Auto, ALIGN_FLEX_START: ze.FlexStart, ALIGN_CENTER: ze.Center, ALIGN_FLEX_END: ze.FlexEnd, ALIGN_STRETCH: ze.Stretch, ALIGN_BASELINE: ze.Baseline, ALIGN_SPACE_BETWEEN: ze.SpaceBetween, ALIGN_SPACE_AROUND: ze.SpaceAround, ALIGN_SPACE_EVENLY: ze.SpaceEvenly, BOX_SIZING_BORDER_BOX: vs.BorderBox, BOX_SIZING_CONTENT_BOX: vs.ContentBox, DIMENSION_WIDTH: ks.Width, DIMENSION_HEIGHT: ks.Height, DIRECTION_INHERIT: qt.Inherit, DIRECTION_LTR: qt.LTR, DIRECTION_RTL: qt.RTL, DISPLAY_FLEX: _n.Flex, DISPLAY_NONE: _n.None, DISPLAY_CONTENTS: _n.Contents, EDGE_LEFT: Ze.Left, EDGE_TOP: Ze.Top, EDGE_RIGHT: Ze.Right, EDGE_BOTTOM: Ze.Bottom, EDGE_START: Ze.Start, EDGE_END: Ze.End, EDGE_HORIZONTAL: Ze.Horizontal, EDGE_VERTICAL: Ze.Vertical, EDGE_ALL: Ze.All, ERRATA_NONE: Mt.None, ERRATA_STRETCH_FLEX_BASIS: Mt.StretchFlexBasis, ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING: Mt.AbsolutePositionWithoutInsetsExcludesPadding, ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE: Mt.AbsolutePercentAgainstInnerSize, ERRATA_ALL: Mt.All, ERRATA_CLASSIC: Mt.Classic, EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS: NI.WebFlexBasis, FLEX_DIRECTION_COLUMN: zr.Column, FLEX_DIRECTION_COLUMN_REVERSE: zr.ColumnReverse, FLEX_DIRECTION_ROW: zr.Row, FLEX_DIRECTION_ROW_REVERSE: zr.RowReverse, GUTTER_COLUMN: Jn.Column, GUTTER_ROW: Jn.Row, GUTTER_ALL: Jn.All, JUSTIFY_FLEX_START: Ft.FlexStart, JUSTIFY_CENTER: Ft.Center, JUSTIFY_FLEX_END: Ft.FlexEnd, JUSTIFY_SPACE_BETWEEN: Ft.SpaceBetween, JUSTIFY_SPACE_AROUND: Ft.SpaceAround, JUSTIFY_SPACE_EVENLY: Ft.SpaceEvenly, LOG_LEVEL_ERROR: Lt.Error, LOG_LEVEL_WARN: Lt.Warn, LOG_LEVEL_INFO: Lt.Info, LOG_LEVEL_DEBUG: Lt.Debug, LOG_LEVEL_VERBOSE: Lt.Verbose, LOG_LEVEL_FATAL: Lt.Fatal, MEASURE_MODE_UNDEFINED: Wn.Undefined, MEASURE_MODE_EXACTLY: Wn.Exactly, MEASURE_MODE_AT_MOST: Wn.AtMost, NODE_TYPE_DEFAULT: xs.Default, NODE_TYPE_TEXT: xs.Text, OVERFLOW_VISIBLE: Kn.Visible, OVERFLOW_HIDDEN: Kn.Hidden, OVERFLOW_SCROLL: Kn.Scroll, POSITION_TYPE_STATIC: Yn.Static, POSITION_TYPE_RELATIVE: Yn.Relative, POSITION_TYPE_ABSOLUTE: Yn.Absolute, UNIT_UNDEFINED: Oe.Undefined, UNIT_POINT: Oe.Point, UNIT_PERCENT: Oe.Percent, UNIT_AUTO: Oe.Auto, WRAP_NO_WRAP: qn.NoWrap, WRAP_WRAP: qn.Wrap, WRAP_WRAP_REVERSE: qn.WrapReverse }, Rs = MI; + }({}), vu = { ALIGN_AUTO: He.Auto, ALIGN_FLEX_START: He.FlexStart, ALIGN_CENTER: He.Center, ALIGN_FLEX_END: He.FlexEnd, ALIGN_STRETCH: He.Stretch, ALIGN_BASELINE: He.Baseline, ALIGN_SPACE_BETWEEN: He.SpaceBetween, ALIGN_SPACE_AROUND: He.SpaceAround, ALIGN_SPACE_EVENLY: He.SpaceEvenly, BOX_SIZING_BORDER_BOX: ds.BorderBox, BOX_SIZING_CONTENT_BOX: ds.ContentBox, DIMENSION_WIDTH: hs.Width, DIMENSION_HEIGHT: hs.Height, DIRECTION_INHERIT: Ft.Inherit, DIRECTION_LTR: Ft.LTR, DIRECTION_RTL: Ft.RTL, DISPLAY_FLEX: Nn.Flex, DISPLAY_NONE: Nn.None, DISPLAY_CONTENTS: Nn.Contents, EDGE_LEFT: Oe.Left, EDGE_TOP: Oe.Top, EDGE_RIGHT: Oe.Right, EDGE_BOTTOM: Oe.Bottom, EDGE_START: Oe.Start, EDGE_END: Oe.End, EDGE_HORIZONTAL: Oe.Horizontal, EDGE_VERTICAL: Oe.Vertical, EDGE_ALL: Oe.All, ERRATA_NONE: Qt.None, ERRATA_STRETCH_FLEX_BASIS: Qt.StretchFlexBasis, ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING: Qt.AbsolutePositionWithoutInsetsExcludesPadding, ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE: Qt.AbsolutePercentAgainstInnerSize, ERRATA_ALL: Qt.All, ERRATA_CLASSIC: Qt.Classic, EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS: Ru.WebFlexBasis, FLEX_DIRECTION_COLUMN: Tr.Column, FLEX_DIRECTION_COLUMN_REVERSE: Tr.ColumnReverse, FLEX_DIRECTION_ROW: Tr.Row, FLEX_DIRECTION_ROW_REVERSE: Tr.RowReverse, GUTTER_COLUMN: Fn.Column, GUTTER_ROW: Fn.Row, GUTTER_ALL: Fn.All, JUSTIFY_FLEX_START: Ct.FlexStart, JUSTIFY_CENTER: Ct.Center, JUSTIFY_FLEX_END: Ct.FlexEnd, JUSTIFY_SPACE_BETWEEN: Ct.SpaceBetween, JUSTIFY_SPACE_AROUND: Ct.SpaceAround, JUSTIFY_SPACE_EVENLY: Ct.SpaceEvenly, LOG_LEVEL_ERROR: dt.Error, LOG_LEVEL_WARN: dt.Warn, LOG_LEVEL_INFO: dt.Info, LOG_LEVEL_DEBUG: dt.Debug, LOG_LEVEL_VERBOSE: dt.Verbose, LOG_LEVEL_FATAL: dt.Fatal, MEASURE_MODE_UNDEFINED: Mn.Undefined, MEASURE_MODE_EXACTLY: Mn.Exactly, MEASURE_MODE_AT_MOST: Mn.AtMost, NODE_TYPE_DEFAULT: ps.Default, NODE_TYPE_TEXT: ps.Text, OVERFLOW_VISIBLE: Ln.Visible, OVERFLOW_HIDDEN: Ln.Hidden, OVERFLOW_SCROLL: Ln.Scroll, POSITION_TYPE_STATIC: Gn.Static, POSITION_TYPE_RELATIVE: Gn.Relative, POSITION_TYPE_ABSOLUTE: Gn.Absolute, UNIT_UNDEFINED: pe.Undefined, UNIT_POINT: pe.Point, UNIT_PERCENT: pe.Percent, UNIT_AUTO: pe.Auto, WRAP_NO_WRAP: Un.NoWrap, WRAP_WRAP: Un.Wrap, WRAP_WRAP_REVERSE: Un.WrapReverse }, ms = vu; }); -function Xn(A) { +function Hn(A) { function e(n, i, o) { - let a = n[i]; + let s = n[i]; n[i] = function() { - for (var u2 = arguments.length, l2 = new Array(u2), I = 0; I < u2; I++) - l2[I] = arguments[I]; - return o.call(this, a, ...l2); + for (var a = arguments.length, I = new Array(a), g2 = 0; g2 < a; g2++) + I[g2] = arguments[g2]; + return o.call(this, s, ...I); }; } for (let n of ["setPosition", "setMargin", "setFlexBasis", "setWidth", "setHeight", "setMinWidth", "setMinHeight", "setMaxWidth", "setMaxHeight", "setPadding", "setGap"]) { - let i = { [Oe.Point]: A.Node.prototype[n], [Oe.Percent]: A.Node.prototype[`${n}Percent`], [Oe.Auto]: A.Node.prototype[`${n}Auto`] }; + let i = { [pe.Point]: A.Node.prototype[n], [pe.Percent]: A.Node.prototype[`${n}Percent`], [pe.Auto]: A.Node.prototype[`${n}Auto`] }; e(A.Node.prototype, n, function(o) { - for (var a = arguments.length, u2 = new Array(a > 1 ? a - 1 : 0), l2 = 1; l2 < a; l2++) - u2[l2 - 1] = arguments[l2]; - let I = u2.pop(), E, C; - if (I === "auto") - E = Oe.Auto, C = void 0; - else if (typeof I == "object") - E = I.unit, C = I.valueOf(); - else if (E = typeof I == "string" && I.endsWith("%") ? Oe.Percent : Oe.Point, C = parseFloat(I), I !== void 0 && !Number.isNaN(I) && Number.isNaN(C)) - throw new Error(`Invalid value ${I} for ${n}`); - if (!i[E]) - throw new Error(`Failed to execute "${n}": Unsupported unit '${I}'`); - return C !== void 0 ? i[E].call(this, ...u2, C) : i[E].call(this, ...u2); + for (var s = arguments.length, a = new Array(s > 1 ? s - 1 : 0), I = 1; I < s; I++) + a[I - 1] = arguments[I]; + let g2 = a.pop(), c2, B; + if (g2 === "auto") + c2 = pe.Auto, B = void 0; + else if (typeof g2 == "object") + c2 = g2.unit, B = g2.valueOf(); + else if (c2 = typeof g2 == "string" && g2.endsWith("%") ? pe.Percent : pe.Point, B = parseFloat(g2), g2 !== void 0 && !Number.isNaN(g2) && Number.isNaN(B)) + throw new Error(`Invalid value ${g2} for ${n}`); + if (!i[c2]) + throw new Error(`Failed to execute "${n}": Unsupported unit '${g2}'`); + return B !== void 0 ? i[c2].call(this, ...a, B) : i[c2].call(this, ...a); }); } function t(n) { @@ -13112,1137 +13112,146 @@ function Xn(A) { this.getChild(0).freeRecursive(); this.free(); }), e(A.Node.prototype, "calculateLayout", function(n) { - let i = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : NaN, o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : NaN, a = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : qt.LTR; - return n.call(this, i, o, a); - }), { Config: A.Config, Node: A.Node, ...Rs }; -} -var Ns = Xe(() => { - Zr(); - Zr(); -}); -var Fs = {}; -kt(Fs, { default: () => FI }); -function FI(A) { - A = A || {}; - var e; - e || (e = typeof A < "u" ? A : {}); - var t, r; - e.ready = new Promise(function(f, s) { - t = f, r = s; - }); - var n = Object.assign({}, e), i = ""; - typeof document < "u" && document.currentScript && (i = document.currentScript.src), Ms && (i = Ms), i.indexOf("blob:") !== 0 ? i = i.substr(0, i.replace(/[?#].*/, "").lastIndexOf("/") + 1) : i = ""; - var o = e.print || console.log.bind(console), a = e.printErr || console.warn.bind(console); - Object.assign(e, n), n = null; - var u2; - e.wasmBinary && (u2 = e.wasmBinary); - var l2 = e.noExitRuntime || true; - typeof WebAssembly != "object" && rA("no native wasm support detected"); - var I, E = false; - function C(f, s, g2) { - g2 = s + g2; - for (var c2 = ""; !(s >= g2); ) { - var B = f[s++]; - if (!B) - break; - if (B & 128) { - var Q = f[s++] & 63; - if ((B & 224) == 192) - c2 += String.fromCharCode((B & 31) << 6 | Q); - else { - var h2 = f[s++] & 63; - B = (B & 240) == 224 ? (B & 15) << 12 | Q << 6 | h2 : (B & 7) << 18 | Q << 12 | h2 << 6 | f[s++] & 63, 65536 > B ? c2 += String.fromCharCode(B) : (B -= 65536, c2 += String.fromCharCode(55296 | B >> 10, 56320 | B & 1023)); - } - } else - c2 += String.fromCharCode(B); - } - return c2; - } - var d2, p, y, k, x2, F, b, v2, M; - function L() { - var f = I.buffer; - d2 = f, e.HEAP8 = p = new Int8Array(f), e.HEAP16 = k = new Int16Array(f), e.HEAP32 = F = new Int32Array(f), e.HEAPU8 = y = new Uint8Array(f), e.HEAPU16 = x2 = new Uint16Array(f), e.HEAPU32 = b = new Uint32Array(f), e.HEAPF32 = v2 = new Float32Array(f), e.HEAPF64 = M = new Float64Array(f); - } - var O, J = [], j = [], CA = []; - function MA() { - var f = e.preRun.shift(); - J.unshift(f); - } - var dA = 0, sA = null, vA = null; - function rA(f) { - throw e.onAbort && e.onAbort(f), f = "Aborted(" + f + ")", a(f), E = true, f = new WebAssembly.RuntimeError(f + ". Build with -sASSERTIONS for more info."), r(f), f; - } - function iA(f) { - return f.startsWith("data:application/octet-stream;base64,"); - } - var wA = ""; - if (!iA(wA)) { - var aA = wA; - wA = e.locateFile ? e.locateFile(aA, i) : i + aA; - } - function FA() { - var f = wA; - try { - if (f == wA && u2) - return new Uint8Array(u2); - if (iA(f)) - try { - var s = bt(f.slice(37)), g2 = new Uint8Array(s.length); - for (f = 0; f < s.length; ++f) - g2[f] = s.charCodeAt(f); - var c2 = g2; - } catch { - throw Error("Converting base64 string to bytes failed."); - } - else - c2 = void 0; - var B = c2; - if (B) - return B; - throw "both async and sync fetching of the wasm failed"; - } catch (Q) { - rA(Q); - } - } - function kA() { - return u2 || typeof fetch != "function" ? Promise.resolve().then(function() { - return FA(); - }) : fetch(wA, { credentials: "same-origin" }).then(function(f) { - if (!f.ok) - throw "failed to load wasm binary file at '" + wA + "'"; - return f.arrayBuffer(); - }).catch(function() { - return FA(); - }); - } - function te(f) { - for (; 0 < f.length; ) - f.shift()(e); - } - function TA(f) { - if (f === void 0) - return "_unknown"; - f = f.replace(/[^a-zA-Z0-9_]/g, "$"); - var s = f.charCodeAt(0); - return 48 <= s && 57 >= s ? "_" + f : f; - } - function xA(f, s) { - return f = TA(f), function() { - return s.apply(this, arguments); - }; - } - var fA = [{}, { value: void 0 }, { value: null }, { value: true }, { value: false }], q = []; - function oA(f) { - var s = Error, g2 = xA(f, function(c2) { - this.name = f, this.message = c2, c2 = Error(c2).stack, c2 !== void 0 && (this.stack = this.toString() + ` -` + c2.replace(/^Error(:[^\n]*)?\n/, "")); - }); - return g2.prototype = Object.create(s.prototype), g2.prototype.constructor = g2, g2.prototype.toString = function() { - return this.message === void 0 ? this.name : this.name + ": " + this.message; - }, g2; - } - var BA = void 0; - function W(f) { - throw new BA(f); - } - var Y = (f) => (f || W("Cannot use deleted val. handle = " + f), fA[f].value), OA = (f) => { - switch (f) { - case void 0: - return 1; - case null: - return 2; - case true: - return 3; - case false: - return 4; - default: - var s = q.length ? q.pop() : fA.length; - return fA[s] = { ga: 1, value: f }, s; - } - }, PA = void 0, WA = void 0; - function uA(f) { - for (var s = ""; y[f]; ) - s += WA[y[f++]]; - return s; - } - var hA = []; - function Ie() { - for (; hA.length; ) { - var f = hA.pop(); - f.M.$ = false, f.delete(); - } - } - var le = void 0, LA = {}; - function re(f, s) { - for (s === void 0 && W("ptr should not be undefined"); f.R; ) - s = f.ba(s), f = f.R; - return s; - } - var ce = {}; - function ye(f) { - f = Wr(f); - var s = uA(f); - return ve(f), s; - } - function Pe(f, s) { - var g2 = ce[f]; - return g2 === void 0 && W(s + " has unknown type " + ye(f)), g2; - } - function Ye() { - } - var Ge = false; - function Ue(f) { - --f.count.value, f.count.value === 0 && (f.T ? f.U.W(f.T) : f.P.N.W(f.O)); - } - function we(f, s, g2) { - return s === g2 ? f : g2.R === void 0 ? null : (f = we(f, s, g2.R), f === null ? null : g2.na(f)); - } - var fe = {}; - function se(f, s) { - return s = re(f, s), LA[s]; - } - var qe = void 0; - function zA(f) { - throw new qe(f); - } - function ne(f, s) { - return s.P && s.O || zA("makeClassHandle requires ptr and ptrType"), !!s.U != !!s.T && zA("Both smartPtrType and smartPtr must be specified"), s.count = { value: 1 }, ie(Object.create(f, { M: { value: s } })); - } - function ie(f) { - return typeof FinalizationRegistry > "u" ? (ie = (s) => s, f) : (Ge = new FinalizationRegistry((s) => { - Ue(s.M); - }), ie = (s) => { - var g2 = s.M; - return g2.T && Ge.register(s, { M: g2 }, s), s; - }, Ye = (s) => { - Ge.unregister(s); - }, ie(f)); - } - var Be = {}; - function De(f) { - for (; f.length; ) { - var s = f.pop(); - f.pop()(s); - } - } - function KA(f) { - return this.fromWireType(F[f >> 2]); - } - var XA = {}, _A = {}; - function oe(f, s, g2) { - function c2(m2) { - m2 = g2(m2), m2.length !== f.length && zA("Mismatched type converter count"); - for (var w2 = 0; w2 < f.length; ++w2) - Z(f[w2], m2[w2]); - } - f.forEach(function(m2) { - _A[m2] = s; - }); - var B = Array(s.length), Q = [], h2 = 0; - s.forEach((m2, w2) => { - ce.hasOwnProperty(m2) ? B[w2] = ce[m2] : (Q.push(m2), XA.hasOwnProperty(m2) || (XA[m2] = []), XA[m2].push(() => { - B[w2] = ce[m2], ++h2, h2 === Q.length && c2(B); - })); - }), Q.length === 0 && c2(B); - } - function V(f) { - switch (f) { - case 1: - return 0; - case 2: - return 1; - case 4: - return 2; - case 8: - return 3; - default: - throw new TypeError("Unknown type size: " + f); - } - } - function Z(f, s, g2 = {}) { - if (!("argPackAdvance" in s)) - throw new TypeError("registerType registeredInstance requires argPackAdvance"); - var c2 = s.name; - if (f || W('type "' + c2 + '" must have a positive integer typeid pointer'), ce.hasOwnProperty(f)) { - if (g2.ua) - return; - W("Cannot register type '" + c2 + "' twice"); - } - ce[f] = s, delete _A[f], XA.hasOwnProperty(f) && (s = XA[f], delete XA[f], s.forEach((B) => B())); - } - function nA(f) { - W(f.M.P.N.name + " instance already deleted"); - } - function $() { - } - function IA(f, s, g2) { - if (f[s].S === void 0) { - var c2 = f[s]; - f[s] = function() { - return f[s].S.hasOwnProperty(arguments.length) || W("Function '" + g2 + "' called with an invalid number of arguments (" + arguments.length + ") - expects one of (" + f[s].S + ")!"), f[s].S[arguments.length].apply(this, arguments); - }, f[s].S = [], f[s].S[c2.Z] = c2; - } - } - function lA(f, s) { - e.hasOwnProperty(f) ? (W("Cannot register public name '" + f + "' twice"), IA(e, f, f), e.hasOwnProperty(void 0) && W("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"), e[f].S[void 0] = s) : e[f] = s; - } - function DA(f, s, g2, c2, B, Q, h2, m2) { - this.name = f, this.constructor = s, this.X = g2, this.W = c2, this.R = B, this.pa = Q, this.ba = h2, this.na = m2, this.ja = []; - } - function cA(f, s, g2) { - for (; s !== g2; ) - s.ba || W("Expected null or instance of " + g2.name + ", got an instance of " + s.name), f = s.ba(f), s = s.R; - return f; - } - function gA(f, s) { - return s === null ? (this.ea && W("null is not a valid " + this.name), 0) : (s.M || W('Cannot pass "' + ZA(s) + '" as a ' + this.name), s.M.O || W("Cannot pass deleted object as a pointer of type " + this.name), cA(s.M.O, s.M.P.N, this.N)); - } - function Ee(f, s) { - if (s === null) { - if (this.ea && W("null is not a valid " + this.name), this.da) { - var g2 = this.fa(); - return f !== null && f.push(this.W, g2), g2; - } - return 0; - } - if (s.M || W('Cannot pass "' + ZA(s) + '" as a ' + this.name), s.M.O || W("Cannot pass deleted object as a pointer of type " + this.name), !this.ca && s.M.P.ca && W("Cannot convert argument of type " + (s.M.U ? s.M.U.name : s.M.P.name) + " to parameter type " + this.name), g2 = cA(s.M.O, s.M.P.N, this.N), this.da) - switch (s.M.T === void 0 && W("Passing raw pointer to smart pointer is illegal"), this.Ba) { - case 0: - s.M.U === this ? g2 = s.M.T : W("Cannot convert argument of type " + (s.M.U ? s.M.U.name : s.M.P.name) + " to parameter type " + this.name); - break; - case 1: - g2 = s.M.T; - break; - case 2: - if (s.M.U === this) - g2 = s.M.T; - else { - var c2 = s.clone(); - g2 = this.xa(g2, OA(function() { - c2.delete(); - })), f !== null && f.push(this.W, g2); - } - break; - default: - W("Unsupporting sharing policy"); - } - return g2; - } - function eA(f, s) { - return s === null ? (this.ea && W("null is not a valid " + this.name), 0) : (s.M || W('Cannot pass "' + ZA(s) + '" as a ' + this.name), s.M.O || W("Cannot pass deleted object as a pointer of type " + this.name), s.M.P.ca && W("Cannot convert argument of type " + s.M.P.name + " to parameter type " + this.name), cA(s.M.O, s.M.P.N, this.N)); - } - function JA(f, s, g2, c2) { - this.name = f, this.N = s, this.ea = g2, this.ca = c2, this.da = false, this.W = this.xa = this.fa = this.ka = this.Ba = this.wa = void 0, s.R !== void 0 ? this.toWireType = Ee : (this.toWireType = c2 ? gA : eA, this.V = null); - } - function RA(f, s) { - e.hasOwnProperty(f) || zA("Replacing nonexistant public symbol"), e[f] = s, e[f].Z = void 0; - } - function ut(f, s) { - var g2 = []; - return function() { - if (g2.length = 0, Object.assign(g2, arguments), f.includes("j")) { - var c2 = e["dynCall_" + f]; - c2 = g2 && g2.length ? c2.apply(null, [s].concat(g2)) : c2.call(null, s); - } else - c2 = O.get(s).apply(null, g2); - return c2; - }; - } - function GA(f, s) { - f = uA(f); - var g2 = f.includes("j") ? ut(f, s) : O.get(s); - return typeof g2 != "function" && W("unknown function pointer with signature " + f + ": " + s), g2; - } - var YA = void 0; - function qA(f, s) { - function g2(Q) { - B[Q] || ce[Q] || (_A[Q] ? _A[Q].forEach(g2) : (c2.push(Q), B[Q] = true)); - } - var c2 = [], B = {}; - throw s.forEach(g2), new YA(f + ": " + c2.map(ye).join([", "])); - } - function Qe(f, s, g2, c2, B) { - var Q = s.length; - 2 > Q && W("argTypes array size mismatch! Must at least get return value and 'this' types!"); - var h2 = s[1] !== null && g2 !== null, m2 = false; - for (g2 = 1; g2 < s.length; ++g2) - if (s[g2] !== null && s[g2].V === void 0) { - m2 = true; - break; - } - var w2 = s[0].name !== "void", D = Q - 2, S2 = Array(D), N = [], U = []; - return function() { - if (arguments.length !== D && W("function " + f + " called with " + arguments.length + " arguments, expected " + D + " args!"), U.length = 0, N.length = h2 ? 2 : 1, N[0] = B, h2) { - var X = s[1].toWireType(U, this); - N[1] = X; - } - for (var z = 0; z < D; ++z) - S2[z] = s[z + 2].toWireType(U, arguments[z]), N.push(S2[z]); - if (z = c2.apply(null, N), m2) - De(U); - else - for (var AA = h2 ? 1 : 2; AA < s.length; AA++) { - var NA = AA === 1 ? X : S2[AA - 2]; - s[AA].V !== null && s[AA].V(NA); - } - return X = w2 ? s[0].fromWireType(z) : void 0, X; - }; - } - function pA(f, s) { - for (var g2 = [], c2 = 0; c2 < f; c2++) - g2.push(b[s + 4 * c2 >> 2]); - return g2; - } - function mA(f) { - 4 < f && --fA[f].ga === 0 && (fA[f] = void 0, q.push(f)); - } - function ZA(f) { - if (f === null) - return "null"; - var s = typeof f; - return s === "object" || s === "array" || s === "function" ? f.toString() : "" + f; - } - function jA(f, s) { - switch (s) { - case 2: - return function(g2) { - return this.fromWireType(v2[g2 >> 2]); - }; - case 3: - return function(g2) { - return this.fromWireType(M[g2 >> 3]); - }; - default: - throw new TypeError("Unknown float type: " + f); - } - } - function Se(f, s, g2) { - switch (s) { - case 0: - return g2 ? function(c2) { - return p[c2]; - } : function(c2) { - return y[c2]; - }; - case 1: - return g2 ? function(c2) { - return k[c2 >> 1]; - } : function(c2) { - return x2[c2 >> 1]; - }; - case 2: - return g2 ? function(c2) { - return F[c2 >> 2]; - } : function(c2) { - return b[c2 >> 2]; - }; - default: - throw new TypeError("Unknown integer type: " + f); - } - } - function be(f, s) { - for (var g2 = "", c2 = 0; !(c2 >= s / 2); ++c2) { - var B = k[f + 2 * c2 >> 1]; - if (B == 0) - break; - g2 += String.fromCharCode(B); - } - return g2; - } - function $A(f, s, g2) { - if (g2 === void 0 && (g2 = 2147483647), 2 > g2) - return 0; - g2 -= 2; - var c2 = s; - g2 = g2 < 2 * f.length ? g2 / 2 : f.length; - for (var B = 0; B < g2; ++B) - k[s >> 1] = f.charCodeAt(B), s += 2; - return k[s >> 1] = 0, s - c2; - } - function Ce(f) { - return 2 * f.length; - } - function It(f, s) { - for (var g2 = 0, c2 = ""; !(g2 >= s / 4); ) { - var B = F[f + 4 * g2 >> 2]; - if (B == 0) - break; - ++g2, 65536 <= B ? (B -= 65536, c2 += String.fromCharCode(55296 | B >> 10, 56320 | B & 1023)) : c2 += String.fromCharCode(B); - } - return c2; - } - function et2(f, s, g2) { - if (g2 === void 0 && (g2 = 2147483647), 4 > g2) - return 0; - var c2 = s; - g2 = c2 + g2 - 4; - for (var B = 0; B < f.length; ++B) { - var Q = f.charCodeAt(B); - if (55296 <= Q && 57343 >= Q) { - var h2 = f.charCodeAt(++B); - Q = 65536 + ((Q & 1023) << 10) | h2 & 1023; - } - if (F[s >> 2] = Q, s += 4, s + 4 > g2) - break; - } - return F[s >> 2] = 0, s - c2; - } - function wt(f) { - for (var s = 0, g2 = 0; g2 < f.length; ++g2) { - var c2 = f.charCodeAt(g2); - 55296 <= c2 && 57343 >= c2 && ++g2, s += 4; - } - return s; - } - var Dt = {}; - function lt(f) { - var s = Dt[f]; - return s === void 0 ? uA(f) : s; - } - var ct = []; - function St(f) { - var s = ct.length; - return ct.push(f), s; - } - function Fn(f, s) { - for (var g2 = Array(f), c2 = 0; c2 < f; ++c2) - g2[c2] = Pe(b[s + 4 * c2 >> 2], "parameter " + c2); - return g2; - } - var Pr = [], _r = [null, [], []]; - BA = e.BindingError = oA("BindingError"), e.count_emval_handles = function() { - for (var f = 0, s = 5; s < fA.length; ++s) - fA[s] !== void 0 && ++f; - return f; - }, e.get_first_emval = function() { - for (var f = 5; f < fA.length; ++f) - if (fA[f] !== void 0) - return fA[f]; - return null; - }, PA = e.PureVirtualError = oA("PureVirtualError"); - for (var Jr = Array(256), ft = 0; 256 > ft; ++ft) - Jr[ft] = String.fromCharCode(ft); - WA = Jr, e.getInheritedInstanceCount = function() { - return Object.keys(LA).length; - }, e.getLiveInheritedInstances = function() { - var f = [], s; - for (s in LA) - LA.hasOwnProperty(s) && f.push(LA[s]); - return f; - }, e.flushPendingDeletes = Ie, e.setDelayFunction = function(f) { - le = f, hA.length && le && le(Ie); - }, qe = e.InternalError = oA("InternalError"), $.prototype.isAliasOf = function(f) { - if (!(this instanceof $ && f instanceof $)) - return false; - var s = this.M.P.N, g2 = this.M.O, c2 = f.M.P.N; - for (f = f.M.O; s.R; ) - g2 = s.ba(g2), s = s.R; - for (; c2.R; ) - f = c2.ba(f), c2 = c2.R; - return s === c2 && g2 === f; - }, $.prototype.clone = function() { - if (this.M.O || nA(this), this.M.aa) - return this.M.count.value += 1, this; - var f = ie, s = Object, g2 = s.create, c2 = Object.getPrototypeOf(this), B = this.M; - return f = f(g2.call(s, c2, { M: { value: { count: B.count, $: B.$, aa: B.aa, O: B.O, P: B.P, T: B.T, U: B.U } } })), f.M.count.value += 1, f.M.$ = false, f; - }, $.prototype.delete = function() { - this.M.O || nA(this), this.M.$ && !this.M.aa && W("Object already scheduled for deletion"), Ye(this), Ue(this.M), this.M.aa || (this.M.T = void 0, this.M.O = void 0); - }, $.prototype.isDeleted = function() { - return !this.M.O; - }, $.prototype.deleteLater = function() { - return this.M.O || nA(this), this.M.$ && !this.M.aa && W("Object already scheduled for deletion"), hA.push(this), hA.length === 1 && le && le(Ie), this.M.$ = true, this; - }, JA.prototype.qa = function(f) { - return this.ka && (f = this.ka(f)), f; - }, JA.prototype.ha = function(f) { - this.W && this.W(f); - }, JA.prototype.argPackAdvance = 8, JA.prototype.readValueFromPointer = KA, JA.prototype.deleteObject = function(f) { - f !== null && f.delete(); - }, JA.prototype.fromWireType = function(f) { - function s() { - return this.da ? ne(this.N.X, { P: this.wa, O: g2, U: this, T: f }) : ne(this.N.X, { P: this, O: f }); - } - var g2 = this.qa(f); - if (!g2) - return this.ha(f), null; - var c2 = se(this.N, g2); - if (c2 !== void 0) - return c2.M.count.value === 0 ? (c2.M.O = g2, c2.M.T = f, c2.clone()) : (c2 = c2.clone(), this.ha(f), c2); - if (c2 = this.N.pa(g2), c2 = fe[c2], !c2) - return s.call(this); - c2 = this.ca ? c2.la : c2.pointerType; - var B = we(g2, this.N, c2.N); - return B === null ? s.call(this) : this.da ? ne(c2.N.X, { P: c2, O: B, U: this, T: f }) : ne(c2.N.X, { P: c2, O: B }); - }, YA = e.UnboundTypeError = oA("UnboundTypeError"); - var bt = typeof atob == "function" ? atob : function(f) { - var s = "", g2 = 0; - f = f.replace(/[^A-Za-z0-9\+\/=]/g, ""); - do { - var c2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(f.charAt(g2++)), B = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(f.charAt(g2++)), Q = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(f.charAt(g2++)), h2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(f.charAt(g2++)); - c2 = c2 << 2 | B >> 4, B = (B & 15) << 4 | Q >> 2; - var m2 = (Q & 3) << 6 | h2; - s += String.fromCharCode(c2), Q !== 64 && (s += String.fromCharCode(B)), h2 !== 64 && (s += String.fromCharCode(m2)); - } while (g2 < f.length); - return s; - }, Ln = { l: function(f, s, g2, c2) { - rA("Assertion failed: " + (f ? C(y, f) : "") + ", at: " + [s ? s ? C(y, s) : "" : "unknown filename", g2, c2 ? c2 ? C(y, c2) : "" : "unknown function"]); - }, q: function(f, s, g2) { - f = uA(f), s = Pe(s, "wrapper"), g2 = Y(g2); - var c2 = [].slice, B = s.N, Q = B.X, h2 = B.R.X, m2 = B.R.constructor; - f = xA(f, function() { - B.R.ja.forEach(function(D) { - if (this[D] === h2[D]) - throw new PA("Pure virtual function " + D + " must be implemented in JavaScript"); - }.bind(this)), Object.defineProperty(this, "__parent", { value: Q }), this.__construct.apply(this, c2.call(arguments)); - }), Q.__construct = function() { - this === Q && W("Pass correct 'this' to __construct"); - var D = m2.implement.apply(void 0, [this].concat(c2.call(arguments))); - Ye(D); - var S2 = D.M; - D.notifyOnDestruction(), S2.aa = true, Object.defineProperties(this, { M: { value: S2 } }), ie(this), D = S2.O, D = re(B, D), LA.hasOwnProperty(D) ? W("Tried to register registered instance: " + D) : LA[D] = this; - }, Q.__destruct = function() { - this === Q && W("Pass correct 'this' to __destruct"), Ye(this); - var D = this.M.O; - D = re(B, D), LA.hasOwnProperty(D) ? delete LA[D] : W("Tried to unregister unregistered instance: " + D); - }, f.prototype = Object.create(Q); - for (var w2 in g2) - f.prototype[w2] = g2[w2]; - return OA(f); - }, j: function(f) { - var s = Be[f]; - delete Be[f]; - var g2 = s.fa, c2 = s.W, B = s.ia, Q = B.map((h2) => h2.ta).concat(B.map((h2) => h2.za)); - oe([f], Q, (h2) => { - var m2 = {}; - return B.forEach((w2, D) => { - var S2 = h2[D], N = w2.ra, U = w2.sa, X = h2[D + B.length], z = w2.ya, AA = w2.Aa; - m2[w2.oa] = { read: (NA) => S2.fromWireType(N(U, NA)), write: (NA, Ae) => { - var ae = []; - z(AA, NA, X.toWireType(ae, Ae)), De(ae); - } }; - }), [{ name: s.name, fromWireType: function(w2) { - var D = {}, S2; - for (S2 in m2) - D[S2] = m2[S2].read(w2); - return c2(w2), D; - }, toWireType: function(w2, D) { - for (var S2 in m2) - if (!(S2 in D)) - throw new TypeError('Missing field: "' + S2 + '"'); - var N = g2(); - for (S2 in m2) - m2[S2].write(N, D[S2]); - return w2 !== null && w2.push(c2, N), N; - }, argPackAdvance: 8, readValueFromPointer: KA, V: c2 }]; - }); - }, v: function() { - }, B: function(f, s, g2, c2, B) { - var Q = V(g2); - s = uA(s), Z(f, { name: s, fromWireType: function(h2) { - return !!h2; - }, toWireType: function(h2, m2) { - return m2 ? c2 : B; - }, argPackAdvance: 8, readValueFromPointer: function(h2) { - if (g2 === 1) - var m2 = p; - else if (g2 === 2) - m2 = k; - else if (g2 === 4) - m2 = F; - else - throw new TypeError("Unknown boolean type size: " + s); - return this.fromWireType(m2[h2 >> Q]); - }, V: null }); - }, f: function(f, s, g2, c2, B, Q, h2, m2, w2, D, S2, N, U) { - S2 = uA(S2), Q = GA(B, Q), m2 && (m2 = GA(h2, m2)), D && (D = GA(w2, D)), U = GA(N, U); - var X = TA(S2); - lA(X, function() { - qA("Cannot construct " + S2 + " due to unbound types", [c2]); - }), oe([f, s, g2], c2 ? [c2] : [], function(z) { - if (z = z[0], c2) - var AA = z.N, NA = AA.X; - else - NA = $.prototype; - z = xA(X, function() { - if (Object.getPrototypeOf(this) !== Ae) - throw new BA("Use 'new' to construct " + S2); - if (ae.Y === void 0) - throw new BA(S2 + " has no accessible constructor"); - var Wt = ae.Y[arguments.length]; - if (Wt === void 0) - throw new BA("Tried to invoke ctor of " + S2 + " with invalid number of parameters (" + arguments.length + ") - expected (" + Object.keys(ae.Y).toString() + ") parameters instead!"); - return Wt.apply(this, arguments); - }); - var Ae = Object.create(NA, { constructor: { value: z } }); - z.prototype = Ae; - var ae = new DA(S2, z, Ae, U, AA, Q, m2, D); - AA = new JA(S2, ae, true, false), NA = new JA(S2 + "*", ae, false, false); - var ke = new JA(S2 + " const*", ae, false, true); - return fe[f] = { pointerType: NA, la: ke }, RA(X, z), [AA, NA, ke]; - }); - }, d: function(f, s, g2, c2, B, Q, h2) { - var m2 = pA(g2, c2); - s = uA(s), Q = GA(B, Q), oe([], [f], function(w2) { - function D() { - qA("Cannot call " + S2 + " due to unbound types", m2); - } - w2 = w2[0]; - var S2 = w2.name + "." + s; - s.startsWith("@@") && (s = Symbol[s.substring(2)]); - var N = w2.N.constructor; - return N[s] === void 0 ? (D.Z = g2 - 1, N[s] = D) : (IA(N, s, S2), N[s].S[g2 - 1] = D), oe([], m2, function(U) { - return U = Qe(S2, [U[0], null].concat(U.slice(1)), null, Q, h2), N[s].S === void 0 ? (U.Z = g2 - 1, N[s] = U) : N[s].S[g2 - 1] = U, []; - }), []; - }); - }, p: function(f, s, g2, c2, B, Q) { - 0 < s || rA(); - var h2 = pA(s, g2); - B = GA(c2, B), oe([], [f], function(m2) { - m2 = m2[0]; - var w2 = "constructor " + m2.name; - if (m2.N.Y === void 0 && (m2.N.Y = []), m2.N.Y[s - 1] !== void 0) - throw new BA("Cannot register multiple constructors with identical number of parameters (" + (s - 1) + ") for class '" + m2.name + "'! Overload resolution is currently only performed using the parameter count, not actual type info!"); - return m2.N.Y[s - 1] = () => { - qA("Cannot construct " + m2.name + " due to unbound types", h2); - }, oe([], h2, function(D) { - return D.splice(1, 0, null), m2.N.Y[s - 1] = Qe(w2, D, null, B, Q), []; - }), []; - }); - }, a: function(f, s, g2, c2, B, Q, h2, m2) { - var w2 = pA(g2, c2); - s = uA(s), Q = GA(B, Q), oe([], [f], function(D) { - function S2() { - qA("Cannot call " + N + " due to unbound types", w2); - } - D = D[0]; - var N = D.name + "." + s; - s.startsWith("@@") && (s = Symbol[s.substring(2)]), m2 && D.N.ja.push(s); - var U = D.N.X, X = U[s]; - return X === void 0 || X.S === void 0 && X.className !== D.name && X.Z === g2 - 2 ? (S2.Z = g2 - 2, S2.className = D.name, U[s] = S2) : (IA(U, s, N), U[s].S[g2 - 2] = S2), oe([], w2, function(z) { - return z = Qe(N, z, D, Q, h2), U[s].S === void 0 ? (z.Z = g2 - 2, U[s] = z) : U[s].S[g2 - 2] = z, []; - }), []; - }); - }, A: function(f, s) { - s = uA(s), Z(f, { name: s, fromWireType: function(g2) { - var c2 = Y(g2); - return mA(g2), c2; - }, toWireType: function(g2, c2) { - return OA(c2); - }, argPackAdvance: 8, readValueFromPointer: KA, V: null }); - }, n: function(f, s, g2) { - g2 = V(g2), s = uA(s), Z(f, { name: s, fromWireType: function(c2) { - return c2; - }, toWireType: function(c2, B) { - return B; - }, argPackAdvance: 8, readValueFromPointer: jA(s, g2), V: null }); - }, e: function(f, s, g2, c2, B) { - s = uA(s), B === -1 && (B = 4294967295), B = V(g2); - var Q = (m2) => m2; - if (c2 === 0) { - var h2 = 32 - 8 * g2; - Q = (m2) => m2 << h2 >>> h2; - } - g2 = s.includes("unsigned") ? function(m2, w2) { - return w2 >>> 0; - } : function(m2, w2) { - return w2; - }, Z(f, { name: s, fromWireType: Q, toWireType: g2, argPackAdvance: 8, readValueFromPointer: Se(s, B, c2 !== 0), V: null }); - }, b: function(f, s, g2) { - function c2(Q) { - Q >>= 2; - var h2 = b; - return new B(d2, h2[Q + 1], h2[Q]); - } - var B = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array][s]; - g2 = uA(g2), Z(f, { name: g2, fromWireType: c2, argPackAdvance: 8, readValueFromPointer: c2 }, { ua: true }); - }, o: function(f, s) { - s = uA(s); - var g2 = s === "std::string"; - Z(f, { name: s, fromWireType: function(c2) { - var B = b[c2 >> 2], Q = c2 + 4; - if (g2) - for (var h2 = Q, m2 = 0; m2 <= B; ++m2) { - var w2 = Q + m2; - if (m2 == B || y[w2] == 0) { - if (h2 = h2 ? C(y, h2, w2 - h2) : "", D === void 0) - var D = h2; - else - D += String.fromCharCode(0), D += h2; - h2 = w2 + 1; - } - } - else { - for (D = Array(B), m2 = 0; m2 < B; ++m2) - D[m2] = String.fromCharCode(y[Q + m2]); - D = D.join(""); - } - return ve(c2), D; - }, toWireType: function(c2, B) { - B instanceof ArrayBuffer && (B = new Uint8Array(B)); - var Q, h2 = typeof B == "string"; - if (h2 || B instanceof Uint8Array || B instanceof Uint8ClampedArray || B instanceof Int8Array || W("Cannot pass non-string to std::string"), g2 && h2) { - var m2 = 0; - for (Q = 0; Q < B.length; ++Q) { - var w2 = B.charCodeAt(Q); - 127 >= w2 ? m2++ : 2047 >= w2 ? m2 += 2 : 55296 <= w2 && 57343 >= w2 ? (m2 += 4, ++Q) : m2 += 3; - } - Q = m2; - } else - Q = B.length; - if (m2 = vt(4 + Q + 1), w2 = m2 + 4, b[m2 >> 2] = Q, g2 && h2) { - if (h2 = w2, w2 = Q + 1, Q = y, 0 < w2) { - w2 = h2 + w2 - 1; - for (var D = 0; D < B.length; ++D) { - var S2 = B.charCodeAt(D); - if (55296 <= S2 && 57343 >= S2) { - var N = B.charCodeAt(++D); - S2 = 65536 + ((S2 & 1023) << 10) | N & 1023; - } - if (127 >= S2) { - if (h2 >= w2) - break; - Q[h2++] = S2; - } else { - if (2047 >= S2) { - if (h2 + 1 >= w2) - break; - Q[h2++] = 192 | S2 >> 6; - } else { - if (65535 >= S2) { - if (h2 + 2 >= w2) - break; - Q[h2++] = 224 | S2 >> 12; - } else { - if (h2 + 3 >= w2) - break; - Q[h2++] = 240 | S2 >> 18, Q[h2++] = 128 | S2 >> 12 & 63; - } - Q[h2++] = 128 | S2 >> 6 & 63; - } - Q[h2++] = 128 | S2 & 63; - } - } - Q[h2] = 0; - } - } else if (h2) - for (h2 = 0; h2 < Q; ++h2) - D = B.charCodeAt(h2), 255 < D && (ve(w2), W("String has UTF-16 code units that do not fit in 8 bits")), y[w2 + h2] = D; - else - for (h2 = 0; h2 < Q; ++h2) - y[w2 + h2] = B[h2]; - return c2 !== null && c2.push(ve, m2), m2; - }, argPackAdvance: 8, readValueFromPointer: KA, V: function(c2) { - ve(c2); - } }); - }, i: function(f, s, g2) { - if (g2 = uA(g2), s === 2) - var c2 = be, B = $A, Q = Ce, h2 = () => x2, m2 = 1; - else - s === 4 && (c2 = It, B = et2, Q = wt, h2 = () => b, m2 = 2); - Z(f, { name: g2, fromWireType: function(w2) { - for (var D = b[w2 >> 2], S2 = h2(), N, U = w2 + 4, X = 0; X <= D; ++X) { - var z = w2 + 4 + X * s; - (X == D || S2[z >> m2] == 0) && (U = c2(U, z - U), N === void 0 ? N = U : (N += String.fromCharCode(0), N += U), U = z + s); - } - return ve(w2), N; - }, toWireType: function(w2, D) { - typeof D != "string" && W("Cannot pass non-string to C++ string type " + g2); - var S2 = Q(D), N = vt(4 + S2 + s); - return b[N >> 2] = S2 >> m2, B(D, N + 4, S2 + s), w2 !== null && w2.push(ve, N), N; - }, argPackAdvance: 8, readValueFromPointer: KA, V: function(w2) { - ve(w2); - } }); - }, k: function(f, s, g2, c2, B, Q) { - Be[f] = { name: uA(s), fa: GA(g2, c2), W: GA(B, Q), ia: [] }; - }, h: function(f, s, g2, c2, B, Q, h2, m2, w2, D) { - Be[f].ia.push({ oa: uA(s), ta: g2, ra: GA(c2, B), sa: Q, za: h2, ya: GA(m2, w2), Aa: D }); - }, C: function(f, s) { - s = uA(s), Z(f, { va: true, name: s, argPackAdvance: 0, fromWireType: function() { - }, toWireType: function() { - } }); - }, s: function(f, s, g2, c2, B) { - f = ct[f], s = Y(s), g2 = lt(g2); - var Q = []; - return b[c2 >> 2] = OA(Q), f(s, g2, Q, B); - }, t: function(f, s, g2, c2) { - f = ct[f], s = Y(s), g2 = lt(g2), f(s, g2, null, c2); - }, g: mA, m: function(f, s) { - var g2 = Fn(f, s), c2 = g2[0]; - s = c2.name + "_$" + g2.slice(1).map(function(h2) { - return h2.name; - }).join("_") + "$"; - var B = Pr[s]; - if (B !== void 0) - return B; - var Q = Array(f - 1); - return B = St((h2, m2, w2, D) => { - for (var S2 = 0, N = 0; N < f - 1; ++N) - Q[N] = g2[N + 1].readValueFromPointer(D + S2), S2 += g2[N + 1].argPackAdvance; - for (h2 = h2[m2].apply(h2, Q), N = 0; N < f - 1; ++N) - g2[N + 1].ma && g2[N + 1].ma(Q[N]); - if (!c2.va) - return c2.toWireType(w2, h2); - }), Pr[s] = B; - }, D: function(f) { - 4 < f && (fA[f].ga += 1); - }, r: function(f) { - var s = Y(f); - De(s), mA(f); - }, c: function() { - rA(""); - }, x: function(f, s, g2) { - y.copyWithin(f, s, s + g2); - }, w: function(f) { - var s = y.length; - if (f >>>= 0, 2147483648 < f) - return false; - for (var g2 = 1; 4 >= g2; g2 *= 2) { - var c2 = s * (1 + 0.2 / g2); - c2 = Math.min(c2, f + 100663296); - var B = Math; - c2 = Math.max(f, c2), B = B.min.call(B, 2147483648, c2 + (65536 - c2 % 65536) % 65536); - A: { - try { - I.grow(B - d2.byteLength + 65535 >>> 16), L(); - var Q = 1; - break A; - } catch { - } - Q = void 0; - } - if (Q) - return true; - } - return false; - }, z: function() { - return 52; - }, u: function() { - return 70; - }, y: function(f, s, g2, c2) { - for (var B = 0, Q = 0; Q < g2; Q++) { - var h2 = b[s >> 2], m2 = b[s + 4 >> 2]; - s += 8; - for (var w2 = 0; w2 < m2; w2++) { - var D = y[h2 + w2], S2 = _r[f]; - D === 0 || D === 10 ? ((f === 1 ? o : a)(C(S2, 0)), S2.length = 0) : S2.push(D); - } - B += m2; - } - return b[c2 >> 2] = B, 0; - } }; - (function() { - function f(B) { - e.asm = B.exports, I = e.asm.E, L(), O = e.asm.J, j.unshift(e.asm.F), dA--, e.monitorRunDependencies && e.monitorRunDependencies(dA), dA == 0 && (sA !== null && (clearInterval(sA), sA = null), vA && (B = vA, vA = null, B())); - } - function s(B) { - f(B.instance); - } - function g2(B) { - return kA().then(function(Q) { - return Q instanceof WebAssembly.Instance ? Q : WebAssembly.instantiate(Q, c2); - }).then(function(Q) { - return Q; - }).then(B, function(Q) { - a("failed to asynchronously prepare wasm: " + Q), rA(Q); - }); - } - var c2 = { a: Ln }; - if (dA++, e.monitorRunDependencies && e.monitorRunDependencies(dA), e.instantiateWasm) - try { - return e.instantiateWasm(c2, f); - } catch (B) { - a("Module.instantiateWasm callback failed with error: " + B), r(B); - } - return function() { - return u2 || typeof WebAssembly.instantiateStreaming != "function" || iA(wA) || typeof fetch != "function" ? g2(s) : fetch(wA, { credentials: "same-origin" }).then(function(B) { - return WebAssembly.instantiateStreaming(B, c2).then(s, function(Q) { - return a("wasm streaming compile failed: " + Q), a("falling back to ArrayBuffer instantiation"), g2(s); - }); - }); - }().catch(r), {}; - })(), e.___wasm_call_ctors = function() { - return (e.___wasm_call_ctors = e.asm.F).apply(null, arguments); - }; - var Wr = e.___getTypeName = function() { - return (Wr = e.___getTypeName = e.asm.G).apply(null, arguments); - }; - e.__embind_initialize_bindings = function() { - return (e.__embind_initialize_bindings = e.asm.H).apply(null, arguments); - }; - var vt = e._malloc = function() { - return (vt = e._malloc = e.asm.I).apply(null, arguments); - }, ve = e._free = function() { - return (ve = e._free = e.asm.K).apply(null, arguments); - }; - e.dynCall_jiji = function() { - return (e.dynCall_jiji = e.asm.L).apply(null, arguments); - }; - var de; - vA = function f() { - de || Bt(), de || (vA = f); - }; - function Bt() { - function f() { - if (!de && (de = true, e.calledRun = true, !E)) { - if (te(j), t(e), e.onRuntimeInitialized && e.onRuntimeInitialized(), e.postRun) - for (typeof e.postRun == "function" && (e.postRun = [e.postRun]); e.postRun.length; ) { - var s = e.postRun.shift(); - CA.unshift(s); - } - te(CA); - } - } - if (!(0 < dA)) { - if (e.preRun) - for (typeof e.preRun == "function" && (e.preRun = [e.preRun]); e.preRun.length; ) - MA(); - te(J), 0 < dA || (e.setStatus ? (e.setStatus("Running..."), setTimeout(function() { - setTimeout(function() { - e.setStatus(""); - }, 1), f(); - }, 1)) : f()); - } - } - if (e.preInit) - for (typeof e.preInit == "function" && (e.preInit = [e.preInit]); 0 < e.preInit.length; ) - e.preInit.pop()(); - return Bt(), A.ready; + let i = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : NaN, o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : NaN, s = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : Ft.LTR; + return n.call(this, i, o, s); + }), { Config: A.Config, Node: A.Node, ...ms }; } -var Ms; -var Ls = Xe(() => { - Ms = ""; +var ys = tt(() => { + Pr(); + Pr(); }); -var Gs = {}; -kt(Gs, { default: () => GI }); -var LI; -var GI; -var Us = Xe(() => { - LI = (() => { +var ws = {}; +Lr(ws, { default: () => Fu }); +var Nu; +var Fu; +var Ds = tt(() => { + Nu = (() => { var A = import.meta.url; return function(e) { e = e || {}; var t; t || (t = typeof e < "u" ? e : {}); var r, n; - t.ready = new Promise(function(s, g2) { - r = s, n = g2; + t.ready = new Promise(function(u2, l2) { + r = u2, n = l2; }); var i = Object.assign({}, t), o = ""; typeof document < "u" && document.currentScript && (o = document.currentScript.src), A && (o = A), o.indexOf("blob:") !== 0 ? o = o.substr(0, o.replace(/[?#].*/, "").lastIndexOf("/") + 1) : o = ""; - var a = t.print || console.log.bind(console), u2 = t.printErr || console.warn.bind(console); + var s = t.print || console.log.bind(console), a = t.printErr || console.warn.bind(console); Object.assign(t, i), i = null; - var l2; - t.wasmBinary && (l2 = t.wasmBinary); - var I = t.noExitRuntime || true; - typeof WebAssembly != "object" && iA("no native wasm support detected"); - var E, C = false; - function d2(s, g2, c2) { - c2 = g2 + c2; - for (var B = ""; !(g2 >= c2); ) { - var Q = s[g2++]; - if (!Q) + var I; + t.wasmBinary && (I = t.wasmBinary); + var g2 = t.noExitRuntime || true; + typeof WebAssembly != "object" && $("no native wasm support detected"); + var c2, B = false; + function E(u2, l2, f) { + f = l2 + f; + for (var C = ""; !(l2 >= f); ) { + var h2 = u2[l2++]; + if (!h2) break; - if (Q & 128) { - var h2 = s[g2++] & 63; - if ((Q & 224) == 192) - B += String.fromCharCode((Q & 31) << 6 | h2); + if (h2 & 128) { + var S2 = u2[l2++] & 63; + if ((h2 & 224) == 192) + C += String.fromCharCode((h2 & 31) << 6 | S2); else { - var m2 = s[g2++] & 63; - Q = (Q & 240) == 224 ? (Q & 15) << 12 | h2 << 6 | m2 : (Q & 7) << 18 | h2 << 12 | m2 << 6 | s[g2++] & 63, 65536 > Q ? B += String.fromCharCode(Q) : (Q -= 65536, B += String.fromCharCode(55296 | Q >> 10, 56320 | Q & 1023)); + var k = u2[l2++] & 63; + h2 = (h2 & 240) == 224 ? (h2 & 15) << 12 | S2 << 6 | k : (h2 & 7) << 18 | S2 << 12 | k << 6 | u2[l2++] & 63, 65536 > h2 ? C += String.fromCharCode(h2) : (h2 -= 65536, C += String.fromCharCode(55296 | h2 >> 10, 56320 | h2 & 1023)); } } else - B += String.fromCharCode(Q); + C += String.fromCharCode(h2); } - return B; + return C; } - var p, y, k, x2, F, b, v2, M, L; - function O() { - var s = E.buffer; - p = s, t.HEAP8 = y = new Int8Array(s), t.HEAP16 = x2 = new Int16Array(s), t.HEAP32 = b = new Int32Array(s), t.HEAPU8 = k = new Uint8Array(s), t.HEAPU16 = F = new Uint16Array(s), t.HEAPU32 = v2 = new Uint32Array(s), t.HEAPF32 = M = new Float32Array(s), t.HEAPF64 = L = new Float64Array(s); + var Q, d2, m2, D, x2, y, p, b, R2; + function U() { + var u2 = c2.buffer; + Q = u2, t.HEAP8 = d2 = new Int8Array(u2), t.HEAP16 = D = new Int16Array(u2), t.HEAP32 = y = new Int32Array(u2), t.HEAPU8 = m2 = new Uint8Array(u2), t.HEAPU16 = x2 = new Uint16Array(u2), t.HEAPU32 = p = new Uint32Array(u2), t.HEAPF32 = b = new Float32Array(u2), t.HEAPF64 = R2 = new Float64Array(u2); } - var J, j = [], CA = [], MA = []; - function dA() { - var s = t.preRun.shift(); - j.unshift(s); + var P2, q = [], lA = [], DA = []; + function RA() { + var u2 = t.preRun.shift(); + q.unshift(u2); } - var sA = 0, vA = null, rA = null; - function iA(s) { - throw t.onAbort && t.onAbort(s), s = "Aborted(" + s + ")", u2(s), C = true, s = new WebAssembly.RuntimeError(s + ". Build with -sASSERTIONS for more info."), n(s), s; + var eA = 0, NA = null, nA = null; + function $(u2) { + throw t.onAbort && t.onAbort(u2), u2 = "Aborted(" + u2 + ")", a(u2), B = true, u2 = new WebAssembly.RuntimeError(u2 + ". Build with -sASSERTIONS for more info."), n(u2), u2; } - function wA(s) { - return s.startsWith("data:application/octet-stream;base64,"); + function HA(u2) { + return u2.startsWith("data:application/octet-stream;base64,"); } - var aA; - if (aA = "data:application/octet-stream;base64,AGFzbQEAAAABugM3YAF/AGACf38AYAF/AX9gA39/fwBgAn98AGACf38Bf2ADf39/AX9gBH9/f30BfWADf398AGAAAGAEf39/fwBgAX8BfGACf38BfGAFf39/f38Bf2AAAX9gA39/fwF9YAZ/f31/fX8AYAV/f39/fwBgAn9/AX1gBX9/f319AX1gAX8BfWADf35/AX5gB39/f39/f38AYAZ/f39/f38AYAR/f39/AX9gBn9/f319fQF9YAR/f31/AGADf399AX1gBn98f39/fwF/YAR/fHx/AGACf30AYAh/f39/f39/fwBgDX9/f39/f39/f39/f38AYAp/f39/f39/f39/AGAFf39/f38BfGAEfHx/fwF9YA1/fX1/f399fX9/f39/AX9gB39/f319f38AYAJ+fwF/YAN/fX0BfWABfAF8YAN/fHwAYAR/f319AGAHf39/fX19fQF9YA1/fX99f31/fX19fX1/AX9gC39/f39/f399fX19AX9gCH9/f39/f319AGAEf39+fgBgB39/f39/f38Bf2ACfH8BfGAFf398fH8AYAN/f38BfGAEf39/fABgA39/fQBgBn9/fX99fwF/ArUBHgFhAWEAHwFhAWIAAwFhAWMACQFhAWQAFgFhAWUAEQFhAWYAIAFhAWcAAAFhAWgAIQFhAWkAAwFhAWoAAAFhAWsAFwFhAWwACgFhAW0ABQFhAW4AAwFhAW8AAQFhAXAAFwFhAXEABgFhAXIAAAFhAXMAIgFhAXQACgFhAXUADQFhAXYAFgFhAXcAAgFhAXgAAwFhAXkAGAFhAXoAAgFhAUEAAQFhAUIAEQFhAUMAAQFhAUQAAAOiAqACAgMSBwcACRkDAAoRBgYKEwAPDxMBBiMTCgcHGgMUASQFJRQHAwMKCgMmAQYYDxobFAAKBw8KBwMDAgkCAAAFGwACBwIHBgIDAQMIDAABKAkHBQURACkZASoAAAIrLAIALQcHBy4HLwkFCgMCMA0xAgMJAgACAQYKAQIBBQEACQIFAQEABQAODQ0GFQIBHBUGAgkCEAAAAAUyDzMMBQYINAUCAwUODg41AgMCAgIDBgICNgIBDAwMAQsLCwsLCx0CAAIAAAABABABBQICAQMCEgMMCwEBAQEBAQsLAQICAwICAgICAgIDAgIICAEICAgEBAQEBAQEBAQABAQABAQEBAAE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GiABQQA2AvADIAFCADcC6AMgAigC7AMiAyACKALoAyIERwRAIAMgBGsiBEEASA0FIAEgBBAeIgM2AuwDIAEgAzYC6AMgASADIARqNgLwAyACKALoAyIEIAIoAuwDIghHBEADQCADIAQoAgA2AgAgA0EEaiEDIARBBGoiBCAIRw0ACwsgASADNgLsAwsgASACKQL0AzcC9AMgASACKAKEBDYChAQgASACKQL8AzcC/AMgAUEANgLkAwsgBSABNgIAIAEgADYC5AMLIAZBAWohBiAFQQRqIgUgB0cNAAsLDwsQAgALUAACQAJAAkACQAJAIAIOBAQAAQIDCyAAIAEgAUEwahBDDwsgACABIAFBMGogAxBEDwsgACABIAFBMGoQQg8LECQACyAAIAEgAUEwaiADEEULcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QdwlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt5AgF/AX0jAEEQayIDJAAgA0EIaiAAIAFBAnRB7CVqKAIAIAIQU0MAAMB/IQQCQAJAAkAgAy0ADEEBaw4CAAECCyADKgIIIQQMAQsgAyoCCEMAAAAAlEMK1yM8lCEECyADQRBqJAAgBEMAAAAAl0MAAAAAIAQgBFsbC1QAAkACQAJAAkACQCACDgQEAAECAwsgACABIAFBwgBqEEMPCyAAIAEgAUHCAGogAxBEDwsgACABIAFBwgBqEEIPCxAkAAsgACABIAFBwgBqIAMQRQsvACAAIAJFQQF0IgIgASADEGAgACACIAEQS5IgACACIAEgAxB/IAAgAiABEFKSkgvOAQIDfwJ9IwBBEGsiAyQAQQEhBCADQQhqIABB/ABqIgUgACABQQF0akH2AGoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALzgECA38CfSMAQRBrIgMk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AWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwscACAAIAFBCCACpyACQiCIpyADpyADQiCIpxAVCwUAEFgACzkAIABFBEBBAA8LAn8gAUGAf3FBgL8DRiABQf8ATXJFBEBB/DtBGTYCAEF/DAELIAAgAToAAEEBCwvEAgACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAQALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC84BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQegAaiIBLwEAEB8CQAJAIAMqAggiByACKgIAIgZcBEAgByAHWwRAIAItAAQhAgwCCyAGIAZcIQQLIAItAAQhAiAERQ0AIAMtAAwgAkH/AXFGDQELIAUgASAGIAIQOQNAIAAtAAAiAUEEcQ0BIAAgAUEEcjoAACAAKAIQIgEEQCAAIAERAAALIABBgICA/gc2ApwBIAAoAuQDIgANAAsLIANBEGokAAtdAQR/IAAoAgAhAgNAIAIsAAAiAxBXBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFIAQLIQEMAQsLIAELrhQCEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRQCQAJAAkACQANAIAEhDSAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCANIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAH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IQEgAEIANwIEIAAgATYCACABIAA2AgQgAkEQaiQAIAALGwEBfyAABEAgACgCACIBBEAgARAjCyAAECMLC0kBAn9BBBAeIQFBIBAeIgBBADYCHCAAQoCAgICAgIDAPzcCFCAAQgA3AgwgAEEAOgAIIABBAzYCBCAAQQA2AgAgASAANgIAIAELIAAgAkEFR0EAIAIbRQRAQbgwIAMgBBBJDwsgAyAEEHALIgEBfiABIAKtIAOtQiCGhCAEIAARFQAiBUIgiKckASAFpwuoAQEFfyAAKAJUIgMoAgAhBSADKAIEIgQgACgCFCAAKAIcIgdrIgYgBCAGSRsiBgRAIAUgByAGECsaIAMgAygCACAGaiIFNgIAIAMgAygCBCAGayIENgIECyAEIAIgAiAESxsiBARAIAUgASAEECsaIAMgAygCACAEaiIFNgIAIAMgAygCBCAEazYCBAsgBUEAOgAAIAAgACgCLCIBNgIcIAAgATYCFCACCwQAQgALBABBAAuKBQIGfgJ/IAEgASgCAEEHakF4cSIBQRBqNgIAIAAhCSABKQMAIQMgASkDCCEGIwBBIGsiCCQAAkAgBkL///////////8AgyIEQoCAgICAgMCAPH0gBEKAgICAgIDA/8MAfVQEQCAGQgSGIANCPIiEIQQgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIARCgYCAgICAgIDAAHwhAgwCCyAEQoCAgICAgICAQH0hAiADQoCAgICAgICACFINASACIARCAYN8IQIMAQsgA1AgBEKAgICAgIDA//8AVCAEQoCAgICAgMD//wBRG0UEQCAGQgSGIANCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiAEQv///////7//wwBWDQBCACECIARCMIinIgBBkfcASQ0AIAMhAiAGQv///////z+DQoCAgICAgMAAhCIFIQcCQCAAQYH3AGsiAUHAAHEEQCACIAFBQGqthiEHQgAhAgwBCyABRQ0AIAcgAa0iBIYgAkHAACABa62IhCEHIAIgBIYhAgsgCCACNwMQIAggBzcDGAJAQYH4ACAAayIAQcAAcQRAIAUgAEFAaq2IIQNCACEFDAELIABFDQAgBUHAACAAa62GIAMgAK0iAoiEIQMgBSACiCEFCyAIIAM3AwAgCCAF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ASAAKAIAIQAgASACQQFxBH8gASgCACAAaigCAAUgAAsRCwALYQECfyMAQRBrIgIkACABIAAoAgQiA0EBdWohASAAKAIAIQAgAiABIANBAXEEfyABKAIAIABqKAIABSAACxEBAEEQEB4iACACKQMINwMIIAAgAikDADcDACACQRBqJAAgAAtjAQJ/IwBBEGsiAyQAIAEgACgCBCIEQQF1aiEBIAAoAgAhACADIAEgAiAEQQFxBH8gASgCACAAaigCAAUgAAsRAwBBEBAeIgAgAykDCDcDCCAAIAMpAwA3AwAgA0EQaiQAIAALNwEBfyABIAAoAgQiA0EBdWohASAAKAIAIQAgASACIANBAXEEfyABKAIAIABqKAIABSAACxEEAAs5AQF/IAEgACgCBCIEQQF1aiEBIAAoAgAhACABIAIgAyAEQQFxBH8gASgCACAAaigCAAUgAAsRCAALCQAgASAAEQIACwUAQcM7Cw8AIAEgACgCAGogAjYCAAsNACABIAAoAgBqKAIACxgBAX9BEBAeIgBCADcDCCAAQQA2AgAgAAsYAQF/QRAQHiIAQgA3AwAgAEIANwMIIAALDABBMBAeQQBBMBAqCzcBAX8gASAAKAIEIgNBAXVqIQEgACgCACEAIAEgAiADQQFxBH8gASgCACAAaigCAAUgAAsRHgALBQBBvjsLIQAgACABKAIAIAEgASwAC0EASBtBuzsgAigCABAQNgIACyoBAX9BDBAeIgFBADoABCABIAAoAgA2AgggAEEANgIAIAFB2Cc2AgAgAQsFAEG7OwsFAEG4OwshACAAIAEoAgAgASABLAALQQBIG0GkOyACKAIAEBA2AgAL2AEBBH8jAEEgayIDJAAgASgCACIEQfD///8HSQRAAkACQCAEQQtPBEAgBEEPckEBaiIFEB4hBiADIAVBgICAgHhyNgIQIAMgBjYCCCADIAQ2AgwgBCAGaiEFDAELIAMgBDoAEyADQQhqIgYgBGohBSAERQ0BCyAGIAFBBGogBBArGgsgBUEAOgAAIAMgAjYCACADQRhqIANBCGogAyAAEQMAIAMoAhgQHSADKAIYIgAQBiADKAIAEAYgAywAE0EASARAIAMoAggQIwsgA0EgaiQAIAAPCxACAAsqAQF/QQwQHiIBQQA6AAQgASAAKAIANgIIIABBADYCACABQeAmNgIA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AkEIaiAIIAYQHyACIAcgAC8AABAfQQEhAyACKgIIIgogAioCACILXAR/IAogClsNAyALIAtcBSADC0UNAiACLQAMIAItAARHDQILIABBAmohAEEBIQMgBCEGQQEhBCAGRQ0ACyABLwB6IgBBB3FFBEAgBS0AekEHcUUNAgsgCCAAECAiCiAHIAUvAHoQICILWw0BIAogClsNACALIAtcDQELIAFBFGogBUEUakHoABArGiABQfwAaiAFQfwAahCgAQNAIAEtAAAiAEEEcQ0BIAEgAEEEcjoAACABKAIQIgAEQCABIAARAAALIAFBgICA/gc2ApwBIAEoAuQDIgENAAsLIAJBEGokAAvGAwEEfyMAQaAEayICJAAgACgCBCEBIABBADYCBCABBEAgASABKAIAKAIEEQAACyAAKAIIIQEgAEEANgIIIAEEQCABIAEoAgAoAgQRAAALAkAgACgCACIAKALoAyAAKALsA0YEQCAAKALkAw0BIAAgAkEYaiAAKAL0AxBcIgEpAgA3AgAgACABKAIQNgIQIAAgASkCCDcCCCAAQRRqIAFBFGpB6AAQKxogACABKQKMATcCjAEgACABKQKEATcChAEgACABKQJ8NwJ8IAEoApQBIQQgAUEANgKUASAAKAKUASEDIAAgBDYClAEgAwRAIAMQWwsgAEGYAWogAUGYAWpB0AIQKxogACgC6AMiAwRAIAAgAzYC7AMgAxAjCyAAIAEoAugDNgLoAyAAIAEoAuwDNgLsAyAAIAEoAvADNgLwAyABQQA2AvADIAFCADcC6AMgACABKQL8AzcC/AMgACABKQL0AzcC9AMgACABKAKEBDYChAQgASgClAEhACABQQA2ApQBIAAEQCAAEFsLIAJBoARqJAAPCyACQfAcNgIQIABBBUHYJSACQRBqECwQJAALIAJB5hE2AgAgAEEFQdglIAIQLBAkAAsLAEEMEB4gABCiAQsLAEEMEB5BABCiAQsNACAAKAIALQAIQQFxCwoAIAAoAgAoAhQLGQAgAUH/AXEEQBACAAsgACgCACgCEEEBcQsYACAAKAIAIgAgAC0ACEH+AXEgAXI6AAgLJgAgASAAKAIAIgAoAhRHBEAgACABNgIUIAAgACgCDEEBajYCDAsLkgEBAn8jAEEQayICJAAgACgCACEAIAFDAAAAAGAEQCABIAAqAhhcBEAgACABOAIYIAAgACgCDEEBajYCDAsgAkEQaiQADwsgAkGIFDYCACMAQRBrIgMkACADIAI2AgwCQCAARQRAQbgwQdglIAIQSRoMAQsgAEEAQQVB2CUgAiAAKAIEEQ0AGgsgA0EQaiQAECQACz8AIAFB/wFxRQRAIAIgACgCACIAKAIQIgFBAXFHBEAgACABQX5xIAJyNgIQIAAgACgCDEEBajYCDAsPCxACAAsL4CYjAEGACAuBHk9ubHkgbGVhZiBub2RlcyB3aXRoIGN1c3RvbSBtZWFzdXJlIGZ1bmN0aW9ucyBzaG91bGQgbWFudWFsbHkgbWFyayB0aGVtc2VsdmVzIGFzIGRpcnR5AGlzRGlydHkAbWFya0RpcnR5AGRlc3Ryb3kAc2V0RGlzcGxheQBnZXREaXNwbGF5AHNldEZsZXgALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABzZXRGbGV4R3JvdwBnZXRGbGV4R3JvdwBzZXRPdmVyZmxvdwBnZXRPdmVyZmxvdwBoYXNOZXdMYXlvdXQAY2FsY3VsYXRlTGF5b3V0AGdldENvbXB1dGVkTGF5b3V0AHVuc2lnbmVkIHNob3J0AGdldENoaWxkQ291bnQAdW5zaWduZWQgaW50AHNldEp1c3RpZnlDb250ZW50AGdldEp1c3RpZnlDb250ZW50AGF2YWlsYWJsZUhlaWdodCBpcyBpbmRlZmluaXRlIHNvIGhlaWdodFNpemluZ01vZGUgbXVzdCBiZSBTaXppbmdNb2RlOjpNYXhDb250ZW50AGF2YWlsYWJsZVdpZHRoIGlzIGluZGVmaW5pdGUgc28gd2lkdGhTaXppbmdNb2RlIG11c3QgYmUgU2l6aW5nTW9kZTo6TWF4Q29udGVudABzZXRBbGlnbkNvbnRlbnQAZ2V0QWxpZ25Db250ZW50AGdldFBhcmVudABpbXBsZW1lbnQAc2V0TWF4SGVpZ2h0UGVyY2VudABzZXRIZWlnaHRQZXJjZW50AHNldE1pbkhlaWdodFBlcmNlbnQAc2V0RmxleEJhc2lzUGVyY2VudABzZXRHYXBQZXJjZW50AHNldFBvc2l0aW9uUGVyY2VudABzZXRNYXJnaW5QZXJjZW50AHNldE1heFdpZHRoUGVyY2VudABzZXRXaWR0aFBlcmNlbnQAc2V0TWluV2lkdGhQZXJjZW50AHNldFBhZGRpbmdQZXJjZW50AGhhbmRsZS50eXBlKCkgPT0gU3R5bGVWYWx1ZUhhbmRsZTo6VHlwZTo6UG9pbnQgfHwgaGFuZGxlLnR5cGUoKSA9PSBTdHlsZVZhbHVlSGFuZGxlOjpUeXBlOjpQZXJjZW50AGNyZWF0ZURlZmF1bHQAdW5pdAByaWdodABoZWlnaHQAc2V0TWF4SGVpZ2h0AGdldE1heEhlaWdodABzZXRIZWlnaHQAZ2V0SGVpZ2h0AHNldE1pbkhlaWdodABnZXRNaW5IZWlnaHQAZ2V0Q29tcHV0ZWRIZWlnaHQAZ2V0Q29tcHV0ZWRSaWdodABsZWZ0AGdldENvbXB1dGVkTGVmdAByZXNldABfX2Rlc3RydWN0AGZsb2F0AHVpbnQ2NF90AHVzZVdlYkRlZmF1bHRzAHNldFVzZVdlYkRlZmF1bHRzAHNldEFsaWduSXRlbXMAZ2V0QWxpZ25JdGVtcwBzZXRGbGV4QmFzaXMAZ2V0RmxleEJhc2lzAENhbm5vdCBnZXQgbGF5b3V0IHByb3BlcnRpZXMgb2YgbXVsdGktZWRnZSBzaG9ydGhhbmRzAHNldFBvaW50U2NhbGVGYWN0b3IATWVhc3VyZUNhbGxiYWNrV3JhcHBlcgBEaXJ0aWVkQ2FsbGJhY2tXcmFwcGVyAENhbm5vdCByZXNldCBhIG5vZGUgc3RpbGwgYXR0YWNoZWQgdG8gYSBvd25lcgBzZXRCb3JkZXIAZ2V0Qm9yZGVyAGdldENvbXB1dGVkQm9yZGVyAGdldE51bWJlcgBoYW5kbGUudHlwZSgpID09IFN0eWxlVmFsdWVIYW5kbGU6OlR5cGU6Ok51bWJlcgB1bnNpZ25lZCBjaGFyAHRvcABnZXRDb21wdXRlZFRvcABzZXRGbGV4V3JhcABnZXRGbGV4V3JhcABzZXRHYXAAZ2V0R2FwACVwAHNldEhlaWdodEF1dG8Ac2V0RmxleEJhc2lzQXV0bwBzZXRQb3NpdGlvbkF1dG8Ac2V0TWFyZ2luQXV0bwBzZXRXaWR0aEF1dG8AU2NhbGUgZmFjdG9yIHNob3VsZCBub3QgYmUgbGVzcyB0aGFuIHplcm8Ac2V0QXNwZWN0UmF0aW8AZ2V0QXNwZWN0UmF0aW8Ac2V0UG9zaXRpb24AZ2V0UG9zaXRpb24Abm90aWZ5T25EZXN0cnVjdGlvbgBzZXRGbGV4RGlyZWN0aW9uAGdldEZsZXhEaXJlY3Rpb24Ac2V0RGlyZWN0aW9uAGdldERpcmVjdGlvbgBzZXRNYXJnaW4AZ2V0TWFyZ2luAGdldENvbXB1dGVkTWFyZ2luAG1hcmtMYXlvdXRTZWVuAG5hbgBib3R0b20AZ2V0Q29tcHV0ZWRCb3R0b20AYm9vbABlbXNjcmlwdGVuOjp2YWwAc2V0RmxleFNocmluawBnZXRGbGV4U2hyaW5rAHNldEFsd2F5c0Zvcm1zQ29udGFpbmluZ0Jsb2NrAE1lYXN1cmVDYWxsYmFjawBEaXJ0aWVkQ2FsbGJhY2sAZ2V0TGVuZ3RoAHdpZHRoAHNldE1heFdpZHRoAGdldE1heFdpZHRoAHNldFdpZHRoAGdldFdpZHRoAHNldE1pbldpZHRoAGdldE1pbldpZHRoAGdldENvbXB1dGVkV2lkdGgAcHVzaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1NtYWxsVmFsdWVCdWZmZXIuaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1N0eWxlVmFsdWVQb29sLmgAdW5zaWduZWQgbG9uZwBzZXRCb3hTaXppbmcAZ2V0Qm94U2l6aW5nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBzZXRQYWRkaW5nAGdldFBhZGRpbmcAZ2V0Q29tcHV0ZWRQYWRkaW5nAFRyaWVkIHRvIGNvbnN0cnVjdCBZR05vZGUgd2l0aCBudWxsIGNvbmZpZwBBdHRlbXB0aW5nIHRvIGNvbnN0cnVjdCBOb2RlIHdpdGggbnVsbCBjb25maWcAY3JlYXRlV2l0aENvbmZpZwBpbmYAc2V0QWxpZ25TZWxmAGdldEFsaWduU2VsZgBTaXplAHZhbHVlAFZhbHVlAGNyZWF0ZQBtZWFzdXJlAHNldFBvc2l0aW9uVHlwZQBnZXRQb3NpdGlvblR5cGUAaXNSZWZlcmVuY2VCYXNlbGluZQBzZXRJc1JlZmVyZW5jZUJhc2VsaW5lAGNvcHlTdHlsZQBkb3VibGUATm9kZQBleHRlbmQAaW5zZXJ0Q2hpbGQAZ2V0Q2hpbGQAcmVtb3ZlQ2hpbGQAdm9pZABzZXRFeHBlcmltZW50YWxGZWF0dXJlRW5hYmxlZABpc0V4cGVyaW1lbnRhbEZlYXR1cmVFbmFibGVkAGRpcnRpZWQAQ2Fubm90IHJlc2V0IGEgbm9kZSB3aGljaCBzdGlsbCBoYXMgY2hpbGRyZW4gYXR0YWNoZWQAdW5zZXRNZWFzdXJlRnVuYwB1bnNldERpcnRpZWRGdW5jAHNldEVycmF0YQBnZXRFcnJhdGEATWVhc3VyZSBmdW5jdGlvbiByZXR1cm5lZCBhbiBpbnZhbGlkIGRpbWVuc2lvbiB0byBZb2dhOiBbd2lkdGg9JWYsIGhlaWdodD0lZl0ARXhwZWN0IGN1c3RvbSBiYXNlbGluZSBmdW5jdGlvbiB0byBub3QgcmV0dXJuIE5hTgBOQU4ASU5GAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVk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", !wA(aA)) { - var FA = aA; - aA = t.locateFile ? t.locateFile(FA, o) : o + FA; + var tA; + if (tA = "data:application/octet-stream;base64,AGFzbQEAAAABugM3YAF/AGACf38AYAF/AX9gA39/fwBgAn98AGACf38Bf2ADf39/AX9gBH9/f30BfWADf398AGAAAGAEf39/fwBgAX8BfGACf38BfGAFf39/f38Bf2AAAX9gA39/fwF9YAZ/f31/fX8AYAV/f39/fwBgAn9/AX1gBX9/f319AX1gAX8BfWADf35/AX5gB39/f39/f38AYAZ/f39/f38AYAR/f39/AX9gBn9/f319fQF9YAR/f31/AGADf399AX1gBn98f39/fwF/YAR/fHx/AGACf30AYAh/f39/f39/fwBgDX9/f39/f39/f39/f38AYAp/f39/f39/f39/AGAFf39/f38BfGAEfHx/fwF9YA1/fX1/f399fX9/f39/AX9gB39/f319f38AYAJ+fwF/YAN/fX0BfWABfAF8YAN/fHwAYAR/f319AGAHf39/fX19fQF9YA1/fX99f31/fX19fX1/AX9gC39/f39/f399fX19AX9gCH9/f39/f319AGAEf39+fgBgB39/f39/f38Bf2ACfH8BfGAFf398fH8AYAN/f38BfGAEf39/fABgA39/fQBgBn9/fX99fwF/ArUBHgFhAWEAHwFhAWIAAwFhAWMACQFhAWQAFgFhAWUAEQFhAWYAIAFhAWcAAAFhAWgAIQFhAWkAAwFhAWoAAAFhAWsAFwFhAWwACgFhAW0ABQFhAW4AAwFhAW8AAQFhAXAAFwFhAXEABgFhAXIAAAFhAXMAIgFhAXQACgFhAXUADQFhAXYAFgFhAXcAAgFhAXgAAwFhAXkAGAFhAXoAAgFhAUEAAQFhAUIAEQFhAUMAAQFhAUQAAAOiAqACAgMSBwcACRkDAAoRBgYKEwAPDxMBBiMTCgcHGgMUASQFJRQHAwMKCgMmAQYYDxobFAAKBw8KBwMDAgkCAAAFGwACBwIHBgIDAQMIDAABKAkHBQURACkZASoAAAIrLAIALQcHBy4HLwkFCgMCMA0xAgMJAgACAQYKAQIBBQEACQIFAQEABQAODQ0GFQIBHBUGAgkCEAAAAAUyDzMMBQYINAUCAwUODg41AgMCAgIDBgICNgIBDAwMAQsLCwsLCx0CAAIAAAABABABBQICAQMCEgMMCwEBAQEBAQsLAQICAwICAgICAgIDAgIICAEICAgEBAQEBAQEBAQABAQABAQEBAAE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GiABQQA2AvADIAFCADcC6AMgAigC7AMiAyACKALoAyIERwRAIAMgBGsiBEEASA0FIAEgBBAeIgM2AuwDIAEgAzYC6AMgASADIARqNgLwAyACKALoAyIEIAIoAuwDIghHBEADQCADIAQoAgA2AgAgA0EEaiEDIARBBGoiBCAIRw0ACwsgASADNgLsAwsgASACKQL0AzcC9AMgASACKAKEBDYChAQgASACKQL8AzcC/AMgAUEANgLkAwsgBSABNgIAIAEgADYC5AMLIAZBAWohBiAFQQRqIgUgB0cNAAsLDwsQAgALUAACQAJAAkACQAJAIAIOBAQAAQIDCyAAIAEgAUEwahBDDwsgACABIAFBMGogAxBEDwsgACABIAFBMGoQQg8LECQACyAAIAEgAUEwaiADEEULcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QdwlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt5AgF/AX0jAEEQayIDJAAgA0EIaiAAIAFBAnRB7CVqKAIAIAIQU0MAAMB/IQQCQAJAAkAgAy0ADEEBaw4CAAECCyADKgIIIQQMAQsgAyoCCEMAAAAAlEMK1yM8lCEECyADQRBqJAAgBEMAAAAAl0MAAAAAIAQgBFsbC1QAAkACQAJAAkACQCACDgQEAAECAwsgACABIAFBwgBqEEMPCyAAIAEgAUHCAGogAxBEDwsgACABIAFBwgBqEEIPCxAkAAsgACABIAFBwgBqIAMQRQsvACAAIAJFQQF0IgIgASADEGAgACACIAEQS5IgACACIAEgAxB/IAAgAiABEFKSkgvOAQIDfwJ9IwBBEGsiAyQAQQEhBCADQQhqIABB/ABqIgUgACABQQF0akH2AGoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALzgECA38CfSMAQRBrIgMk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AWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwscACAAIAFBCCACpyACQiCIpyADpyADQiCIpxAVCwUAEFgACzkAIABFBEBBAA8LAn8gAUGAf3FBgL8DRiABQf8ATXJFBEBB/DtBGTYCAEF/DAELIAAgAToAAEEBCwvEAgACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAQALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC84BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQegAaiIBLwEAEB8CQAJAIAMqAggiByACKgIAIgZcBEAgByAHWwRAIAItAAQhAgwCCyAGIAZcIQQLIAItAAQhAiAERQ0AIAMtAAwgAkH/AXFGDQELIAUgASAGIAIQOQNAIAAtAAAiAUEEcQ0BIAAgAUEEcjoAACAAKAIQIgEEQCAAIAERAAALIABBgICA/gc2ApwBIAAoAuQDIgANAAsLIANBEGokAAtdAQR/IAAoAgAhAgNAIAIsAAAiAxBXBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFIAQLIQEMAQsLIAELrhQCEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRQCQAJAAkACQANAIAEhDSAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCANIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAH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IQEgAEIANwIEIAAgATYCACABIAA2AgQgAkEQaiQAIAALGwEBfyAABEAgACgCACIBBEAgARAjCyAAECMLC0kBAn9BBBAeIQFBIBAeIgBBADYCHCAAQoCAgICAgIDAPzcCFCAAQgA3AgwgAEEAOgAIIABBAzYCBCAAQQA2AgAgASAANgIAIAELIAAgAkEFR0EAIAIbRQRAQbgwIAMgBBBJDwsgAyAEEHALIgEBfiABIAKtIAOtQiCGhCAEIAARFQAiBUIgiKckASAFpwuoAQEFfyAAKAJUIgMoAgAhBSADKAIEIgQgACgCFCAAKAIcIgdrIgYgBCAGSRsiBgRAIAUgByAGECsaIAMgAygCACAGaiIFNgIAIAMgAygCBCAGayIENgIECyAEIAIgAiAESxsiBARAIAUgASAEECsaIAMgAygCACAEaiIFNgIAIAMgAygCBCAEazYCBAsgBUEAOgAAIAAgACgCLCIBNgIcIAAgATYCFCACCwQAQgALBABBAAuKBQIGfgJ/IAEgASgCAEEHakF4cSIBQRBqNgIAIAAhCSABKQMAIQMgASkDCCEGIwBBIGsiCCQAAkAgBkL///////////8AgyIEQoCAgICAgMCAPH0gBEKAgICAgIDA/8MAfVQEQCAGQgSGIANCPIiEIQQgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIARCgYCAgICAgIDAAHwhAgwCCyAEQoCAgICAgICAQH0hAiADQoCAgICAgICACFINASACIARCAYN8IQIMAQsgA1AgBEKAgICAgIDA//8AVCAEQoCAgICAgMD//wBRG0UEQCAGQgSGIANCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiAEQv///////7//wwBWDQBCACECIARCMIinIgBBkfcASQ0AIAMhAiAGQv///////z+DQoCAgICAgMAAhCIFIQcCQCAAQYH3AGsiAUHAAHEEQCACIAFBQGqthiEHQgAhAgwBCyABRQ0AIAcgAa0iBIYgAkHAACABa62IhCEHIAIgBIYhAgsgCCACNwMQIAggBzcDGAJAQYH4ACAAayIAQcAAcQRAIAUgAEFAaq2IIQNCACEFDAELIABFDQAgBUHAACAAa62GIAMgAK0iAoiEIQMgBSACiCEFCyAIIAM3AwAgCCAF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ASAAKAIAIQAgASACQQFxBH8gASgCACAAaigCAAUgAAsRCwALYQECfyMAQRBrIgIkACABIAAoAgQiA0EBdWohASAAKAIAIQAgAiABIANBAXEEfyABKAIAIABqKAIABSAACxEBAEEQEB4iACACKQMINwMIIAAgAikDADcDACACQRBqJAAgAAtjAQJ/IwBBEGsiAyQAIAEgACgCBCIEQQF1aiEBIAAoAgAhACADIAEgAiAEQQFxBH8gASgCACAAaigCAAUgAAsRAwBBEBAeIgAgAykDCDcDCCAAIAMpAwA3AwAgA0EQaiQAIAALNwEBfyABIAAoAgQiA0EBdWohASAAKAIAIQAgASACIANBAXEEfyABKAIAIABqKAIABSAACxEEAAs5AQF/IAEgACgCBCIEQQF1aiEBIAAoAgAhACABIAIgAyAEQQFxBH8gASgCACAAaigCAAUgAAsRCAALCQAgASAAEQIACwUAQcM7Cw8AIAEgACgCAGogAjYCAAsNACABIAAoAgBqKAIACxgBAX9BEBAeIgBCADcDCCAAQQA2AgAgAAsYAQF/QRAQHiIAQgA3AwAgAEIANwMIIAALDABBMBAeQQBBMBAqCzcBAX8gASAAKAIEIgNBAXVqIQEgACgCACEAIAEgAiADQQFxBH8gASgCACAAaigCAAUgAAsRHgALBQBBvjsLIQAgACABKAIAIAEgASwAC0EASBtBuzsgAigCABAQNgIACyoBAX9BDBAeIgFBADoABCABIAAoAgA2AgggAEEANgIAIAFB2Cc2AgAgAQsFAEG7OwsFAEG4OwshACAAIAEoAgAgASABLAALQQBIG0GkOyACKAIAEBA2AgAL2AEBBH8jAEEgayIDJAAgASgCACIEQfD///8HSQRAAkACQCAEQQtPBEAgBEEPckEBaiIFEB4hBiADIAVBgICAgHhyNgIQIAMgBjYCCCADIAQ2AgwgBCAGaiEFDAELIAMgBDoAEyADQQhqIgYgBGohBSAERQ0BCyAGIAFBBGogBBArGgsgBUEAOgAAIAMgAjYCACADQRhqIANBCGogAyAAEQMAIAMoAhgQHSADKAIYIgAQBiADKAIAEAYgAywAE0EASARAIAMoAggQIwsgA0EgaiQAIAAPCxACAAsqAQF/QQwQHiIBQQA6AAQgASAAKAIANgIIIABBADYCACABQeAmNgIA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AkEIaiAIIAYQHyACIAcgAC8AABAfQQEhAyACKgIIIgogAioCACILXAR/IAogClsNAyALIAtcBSADC0UNAiACLQAMIAItAARHDQILIABBAmohAEEBIQMgBCEGQQEhBCAGRQ0ACyABLwB6IgBBB3FFBEAgBS0AekEHcUUNAgsgCCAAECAiCiAHIAUvAHoQICILWw0BIAogClsNACALIAtcDQELIAFBFGogBUEUakHoABArGiABQfwAaiAFQfwAahCgAQNAIAEtAAAiAEEEcQ0BIAEgAEEEcjoAACABKAIQIgAEQCABIAARAAALIAFBgICA/gc2ApwBIAEoAuQDIgENAAsLIAJBEGokAAvGAwEEfyMAQaAEayICJAAgACgCBCEBIABBADYCBCABBEAgASABKAIAKAIEEQAACyAAKAIIIQEgAEEANgIIIAEEQCABIAEoAgAoAgQRAAALAkAgACgCACIAKALoAyAAKALsA0YEQCAAKALkAw0BIAAgAkEYaiAAKAL0AxBcIgEpAgA3AgAgACABKAIQNgIQIAAgASkCCDcCCCAAQRRqIAFBFGpB6AAQKxogACABKQKMATcCjAEgACABKQKEATcChAEgACABKQJ8NwJ8IAEoApQBIQQgAUEANgKUASAAKAKUASEDIAAgBDYClAEgAwRAIAMQWwsgAEGYAWogAUGYAWpB0AIQKxogACgC6AMiAwRAIAAgAzYC7AMgAxAjCyAAIAEoAugDNgLoAyAAIAEoAuwDNgLsAyAAIAEoAvADNgLwAyABQQA2AvADIAFCADcC6AMgACABKQL8AzcC/AMgACABKQL0AzcC9AMgACABKAKEBDYChAQgASgClAEhACABQQA2ApQBIAAEQCAAEFsLIAJBoARqJAAPCyACQfAcNgIQIABBBUHYJSACQRBqECwQJAALIAJB5hE2AgAgAEEFQdglIAIQLBAkAAsLAEEMEB4gABCiAQsLAEEMEB5BABCiAQsNACAAKAIALQAIQQFxCwoAIAAoAgAoAhQLGQAgAUH/AXEEQBACAAsgACgCACgCEEEBcQsYACAAKAIAIgAgAC0ACEH+AXEgAXI6AAgLJgAgASAAKAIAIgAoAhRHBEAgACABNgIUIAAgACgCDEEBajYCDAsLkgEBAn8jAEEQayICJAAgACgCACEAIAFDAAAAAGAEQCABIAAqAhhcBEAgACABOAIYIAAgACgCDEEBajYCDAsgAkEQaiQADwsgAkGIFDYCACMAQRBrIgMkACADIAI2AgwCQCAARQRAQbgwQdglIAIQSRoMAQsgAEEAQQVB2CUgAiAAKAIEEQ0AGgsgA0EQaiQAECQACz8AIAFB/wFxRQRAIAIgACgCACIAKAIQIgFBAXFHBEAgACABQX5xIAJyNgIQIAAgACgCDEEBajYCDAsPCxACAAsL4CYjAEGACAuBHk9ubHkgbGVhZiBub2RlcyB3aXRoIGN1c3RvbSBtZWFzdXJlIGZ1bmN0aW9ucyBzaG91bGQgbWFudWFsbHkgbWFyayB0aGVtc2VsdmVzIGFzIGRpcnR5AGlzRGlydHkAbWFya0RpcnR5AGRlc3Ryb3kAc2V0RGlzcGxheQBnZXREaXNwbGF5AHNldEZsZXgALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABzZXRGbGV4R3JvdwBnZXRGbGV4R3JvdwBzZXRPdmVyZmxvdwBnZXRPdmVyZmxvdwBoYXNOZXdMYXlvdXQAY2FsY3VsYXRlTGF5b3V0AGdldENvbXB1dGVkTGF5b3V0AHVuc2lnbmVkIHNob3J0AGdldENoaWxkQ291bnQAdW5zaWduZWQgaW50AHNldEp1c3RpZnlDb250ZW50AGdldEp1c3RpZnlDb250ZW50AGF2YWlsYWJsZUhlaWdodCBpcyBpbmRlZmluaXRlIHNvIGhlaWdodFNpemluZ01vZGUgbXVzdCBiZSBTaXppbmdNb2RlOjpNYXhDb250ZW50AGF2YWlsYWJsZVdpZHRoIGlzIGluZGVmaW5pdGUgc28gd2lkdGhTaXppbmdNb2RlIG11c3QgYmUgU2l6aW5nTW9kZTo6TWF4Q29udGVudABzZXRBbGlnbkNvbnRlbnQAZ2V0QWxpZ25Db250ZW50AGdldFBhcmVudABpbXBsZW1lbnQAc2V0TWF4SGVpZ2h0UGVyY2VudABzZXRIZWlnaHRQZXJjZW50AHNldE1pbkhlaWdodFBlcmNlbnQAc2V0RmxleEJhc2lzUGVyY2VudABzZXRHYXBQZXJjZW50AHNldFBvc2l0aW9uUGVyY2VudABzZXRNYXJnaW5QZXJjZW50AHNldE1heFdpZHRoUGVyY2VudABzZXRXaWR0aFBlcmNlbnQAc2V0TWluV2lkdGhQZXJjZW50AHNldFBhZGRpbmdQZXJjZW50AGhhbmRsZS50eXBlKCkgPT0gU3R5bGVWYWx1ZUhhbmRsZTo6VHlwZTo6UG9pbnQgfHwgaGFuZGxlLnR5cGUoKSA9PSBTdHlsZVZhbHVlSGFuZGxlOjpUeXBlOjpQZXJjZW50AGNyZWF0ZURlZmF1bHQAdW5pdAByaWdodABoZWlnaHQAc2V0TWF4SGVpZ2h0AGdldE1heEhlaWdodABzZXRIZWlnaHQAZ2V0SGVpZ2h0AHNldE1pbkhlaWdodABnZXRNaW5IZWlnaHQAZ2V0Q29tcHV0ZWRIZWlnaHQAZ2V0Q29tcHV0ZWRSaWdodABsZWZ0AGdldENvbXB1dGVkTGVmdAByZXNldABfX2Rlc3RydWN0AGZsb2F0AHVpbnQ2NF90AHVzZVdlYkRlZmF1bHRzAHNldFVzZVdlYkRlZmF1bHRzAHNldEFsaWduSXRlbXMAZ2V0QWxpZ25JdGVtcwBzZXRGbGV4QmFzaXMAZ2V0RmxleEJhc2lzAENhbm5vdCBnZXQgbGF5b3V0IHByb3BlcnRpZXMgb2YgbXVsdGktZWRnZSBzaG9ydGhhbmRzAHNldFBvaW50U2NhbGVGYWN0b3IATWVhc3VyZUNhbGxiYWNrV3JhcHBlcgBEaXJ0aWVkQ2FsbGJhY2tXcmFwcGVyAENhbm5vdCByZXNldCBhIG5vZGUgc3RpbGwgYXR0YWNoZWQgdG8gYSBvd25lcgBzZXRCb3JkZXIAZ2V0Qm9yZGVyAGdldENvbXB1dGVkQm9yZGVyAGdldE51bWJlcgBoYW5kbGUudHlwZSgpID09IFN0eWxlVmFsdWVIYW5kbGU6OlR5cGU6Ok51bWJlcgB1bnNpZ25lZCBjaGFyAHRvcABnZXRDb21wdXRlZFRvcABzZXRGbGV4V3JhcABnZXRGbGV4V3JhcABzZXRHYXAAZ2V0R2FwACVwAHNldEhlaWdodEF1dG8Ac2V0RmxleEJhc2lzQXV0bwBzZXRQb3NpdGlvbkF1dG8Ac2V0TWFyZ2luQXV0bwBzZXRXaWR0aEF1dG8AU2NhbGUgZmFjdG9yIHNob3VsZCBub3QgYmUgbGVzcyB0aGFuIHplcm8Ac2V0QXNwZWN0UmF0aW8AZ2V0QXNwZWN0UmF0aW8Ac2V0UG9zaXRpb24AZ2V0UG9zaXRpb24Abm90aWZ5T25EZXN0cnVjdGlvbgBzZXRGbGV4RGlyZWN0aW9uAGdldEZsZXhEaXJlY3Rpb24Ac2V0RGlyZWN0aW9uAGdldERpcmVjdGlvbgBzZXRNYXJnaW4AZ2V0TWFyZ2luAGdldENvbXB1dGVkTWFyZ2luAG1hcmtMYXlvdXRTZWVuAG5hbgBib3R0b20AZ2V0Q29tcHV0ZWRCb3R0b20AYm9vbABlbXNjcmlwdGVuOjp2YWwAc2V0RmxleFNocmluawBnZXRGbGV4U2hyaW5rAHNldEFsd2F5c0Zvcm1zQ29udGFpbmluZ0Jsb2NrAE1lYXN1cmVDYWxsYmFjawBEaXJ0aWVkQ2FsbGJhY2sAZ2V0TGVuZ3RoAHdpZHRoAHNldE1heFdpZHRoAGdldE1heFdpZHRoAHNldFdpZHRoAGdldFdpZHRoAHNldE1pbldpZHRoAGdldE1pbldpZHRoAGdldENvbXB1dGVkV2lkdGgAcHVzaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1NtYWxsVmFsdWVCdWZmZXIuaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1N0eWxlVmFsdWVQb29sLmgAdW5zaWduZWQgbG9uZwBzZXRCb3hTaXppbmcAZ2V0Qm94U2l6aW5nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBzZXRQYWRkaW5nAGdldFBhZGRpbmcAZ2V0Q29tcHV0ZWRQYWRkaW5nAFRyaWVkIHRvIGNvbnN0cnVjdCBZR05vZGUgd2l0aCBudWxsIGNvbmZpZwBBdHRlbXB0aW5nIHRvIGNvbnN0cnVjdCBOb2RlIHdpdGggbnVsbCBjb25maWcAY3JlYXRlV2l0aENvbmZpZwBpbmYAc2V0QWxpZ25TZWxmAGdldEFsaWduU2VsZgBTaXplAHZhbHVlAFZhbHVlAGNyZWF0ZQBtZWFzdXJlAHNldFBvc2l0aW9uVHlwZQBnZXRQb3NpdGlvblR5cGUAaXNSZWZlcmVuY2VCYXNlbGluZQBzZXRJc1JlZmVyZW5jZUJhc2VsaW5lAGNvcHlTdHlsZQBkb3VibGUATm9kZQBleHRlbmQAaW5zZXJ0Q2hpbGQAZ2V0Q2hpbGQAcmVtb3ZlQ2hpbGQAdm9pZABzZXRFeHBlcmltZW50YWxGZWF0dXJlRW5hYmxlZABpc0V4cGVyaW1lbnRhbEZlYXR1cmVFbmFibGVkAGRpcnRpZWQAQ2Fubm90IHJlc2V0IGEgbm9kZSB3aGljaCBzdGlsbCBoYXMgY2hpbGRyZW4gYXR0YWNoZWQAdW5zZXRNZWFzdXJlRnVuYwB1bnNldERpcnRpZWRGdW5jAHNldEVycmF0YQBnZXRFcnJhdGEATWVhc3VyZSBmdW5jdGlvbiByZXR1cm5lZCBhbiBpbnZhbGlkIGRpbWVuc2lvbiB0byBZb2dhOiBbd2lkdGg9JWYsIGhlaWdodD0lZl0ARXhwZWN0IGN1c3RvbSBiYXNlbGluZSBmdW5jdGlvbiB0byBub3QgcmV0dXJuIE5hTgBOQU4ASU5GAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVk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", !HA(tA)) { + var bA = tA; + tA = t.locateFile ? t.locateFile(bA, o) : o + bA; } - function kA() { - var s = aA; + function mA() { + var u2 = tA; try { - if (s == aA && l2) - return new Uint8Array(l2); - if (wA(s)) + if (u2 == tA && I) + return new Uint8Array(I); + if (HA(u2)) try { - var g2 = Ln(s.slice(37)), c2 = new Uint8Array(g2.length); - for (s = 0; s < g2.length; ++s) - c2[s] = g2.charCodeAt(s); - var B = c2; + var l2 = gu(u2.slice(37)), f = new Uint8Array(l2.length); + for (u2 = 0; u2 < l2.length; ++u2) + f[u2] = l2.charCodeAt(u2); + var C = f; } catch { throw Error("Converting base64 string to bytes failed."); } else - B = void 0; - var Q = B; - if (Q) - return Q; + C = void 0; + var h2 = C; + if (h2) + return h2; throw "both async and sync fetching of the wasm failed"; - } catch (h2) { - iA(h2); + } catch (S2) { + $(S2); } } function te() { - return l2 || typeof fetch != "function" ? Promise.resolve().then(function() { - return kA(); - }) : fetch(aA, { credentials: "same-origin" }).then(function(s) { - if (!s.ok) - throw "failed to load wasm binary file at '" + aA + "'"; - return s.arrayBuffer(); + return I || typeof fetch != "function" ? Promise.resolve().then(function() { + return mA(); + }) : fetch(tA, { credentials: "same-origin" }).then(function(u2) { + if (!u2.ok) + throw "failed to load wasm binary file at '" + tA + "'"; + return u2.arrayBuffer(); }).catch(function() { - return kA(); + return mA(); }); } - function TA(s) { - for (; 0 < s.length; ) - s.shift()(t); + function FA(u2) { + for (; 0 < u2.length; ) + u2.shift()(t); } - function xA(s) { - if (s === void 0) + function kA(u2) { + if (u2 === void 0) return "_unknown"; - s = s.replace(/[^a-zA-Z0-9_]/g, "$"); - var g2 = s.charCodeAt(0); - return 48 <= g2 && 57 >= g2 ? "_" + s : s; + u2 = u2.replace(/[^a-zA-Z0-9_]/g, "$"); + var l2 = u2.charCodeAt(0); + return 48 <= l2 && 57 >= l2 ? "_" + u2 : u2; } - function fA(s, g2) { - return s = xA(s), function() { - return g2.apply(this, arguments); + function xA(u2, l2) { + return u2 = kA(u2), function() { + return l2.apply(this, arguments); }; } - var q = [{}, { value: void 0 }, { value: null }, { value: true }, { value: false }], oA = []; - function BA(s) { - var g2 = Error, c2 = fA(s, function(B) { - this.name = s, this.message = B, B = Error(B).stack, B !== void 0 && (this.stack = this.toString() + ` -` + B.replace(/^Error(:[^\n]*)?\n/, "")); + var J = [{}, { value: void 0 }, { value: null }, { value: true }, { value: false }], rA = []; + function fA(u2) { + var l2 = Error, f = xA(u2, function(C) { + this.name = u2, this.message = C, C = Error(C).stack, C !== void 0 && (this.stack = this.toString() + ` +` + C.replace(/^Error(:[^\n]*)?\n/, "")); }); - return c2.prototype = Object.create(g2.prototype), c2.prototype.constructor = c2, c2.prototype.toString = function() { + return f.prototype = Object.create(l2.prototype), f.prototype.constructor = f, f.prototype.toString = function() { return this.message === void 0 ? this.name : this.name + ": " + this.message; - }, c2; + }, f; } - var W = void 0; - function Y(s) { - throw new W(s); + var QA = void 0; + function K2(u2) { + throw new QA(u2); } - var OA = (s) => (s || Y("Cannot use deleted val. handle = " + s), q[s].value), PA = (s) => { - switch (s) { + var MA = (u2) => (u2 || K2("Cannot use deleted val. handle = " + u2), J[u2].value), GA = (u2) => { + switch (u2) { case void 0: return 1; case null: @@ -14252,97 +13261,97 @@ var Us = Xe(() => { case false: return 4; default: - var g2 = oA.length ? oA.pop() : q.length; - return q[g2] = { ga: 1, value: s }, g2; + var l2 = rA.length ? rA.pop() : J.length; + return J[l2] = { ga: 1, value: u2 }, l2; } - }, WA = void 0, uA = void 0; - function hA(s) { - for (var g2 = ""; k[s]; ) - g2 += uA[k[s++]]; - return g2; - } - var Ie = []; - function le() { - for (; Ie.length; ) { - var s = Ie.pop(); - s.M.$ = false, s.delete(); + }, OA = void 0, TA = void 0; + function SA(u2) { + for (var l2 = ""; m2[u2]; ) + l2 += TA[m2[u2++]]; + return l2; + } + var ye = []; + function Je() { + for (; ye.length; ) { + var u2 = ye.pop(); + u2.M.$ = false, u2.delete(); } } - var LA = void 0, re = {}; - function ce(s, g2) { - for (g2 === void 0 && Y("ptr should not be undefined"); s.R; ) - g2 = s.ba(g2), s = s.R; - return g2; - } - var ye = {}; - function Pe(s) { - s = vt(s); - var g2 = hA(s); - return de(s), g2; - } - function Ye(s, g2) { - var c2 = ye[s]; - return c2 === void 0 && Y(g2 + " has unknown type " + Pe(s)), c2; - } - function Ge() { - } - var Ue = false; - function we(s) { - --s.count.value, s.count.value === 0 && (s.T ? s.U.W(s.T) : s.P.N.W(s.O)); - } - function fe(s, g2, c2) { - return g2 === c2 ? s : c2.R === void 0 ? null : (s = fe(s, g2, c2.R), s === null ? null : c2.na(s)); - } - var se = {}; - function qe(s, g2) { - return g2 = ce(s, g2), re[g2]; - } - var zA = void 0; - function ne(s) { - throw new zA(s); - } - function ie(s, g2) { - return g2.P && g2.O || ne("makeClassHandle requires ptr and ptrType"), !!g2.U != !!g2.T && ne("Both smartPtrType and smartPtr must be specified"), g2.count = { value: 1 }, Be(Object.create(s, { M: { value: g2 } })); - } - function Be(s) { - return typeof FinalizationRegistry > "u" ? (Be = (g2) => g2, s) : (Ue = new FinalizationRegistry((g2) => { - we(g2.M); - }), Be = (g2) => { - var c2 = g2.M; - return c2.T && Ue.register(g2, { M: c2 }, g2), g2; - }, Ge = (g2) => { - Ue.unregister(g2); - }, Be(s)); - } - var De = {}; - function KA(s) { - for (; s.length; ) { - var g2 = s.pop(); - s.pop()(g2); + var qA = void 0, re = {}; + function ut(u2, l2) { + for (l2 === void 0 && K2("ptr should not be undefined"); u2.R; ) + l2 = u2.ba(l2), u2 = u2.R; + return l2; + } + var we = {}; + function $e(u2) { + u2 = As(u2); + var l2 = SA(u2); + return Le(u2), l2; + } + function br(u2, l2) { + var f = we[u2]; + return f === void 0 && K2(l2 + " has unknown type " + $e(u2)), f; + } + function At() { + } + var Ke = false; + function De(u2) { + --u2.count.value, u2.count.value === 0 && (u2.T ? u2.U.W(u2.T) : u2.P.N.W(u2.O)); + } + function Be(u2, l2, f) { + return l2 === f ? u2 : f.R === void 0 ? null : (u2 = Be(u2, l2, f.R), u2 === null ? null : f.na(u2)); + } + var jA = {}; + function lt(u2, l2) { + return l2 = ut(u2, l2), re[l2]; + } + var ne = void 0; + function Ee(u2) { + throw new ne(u2); + } + function Ne(u2, l2) { + return l2.P && l2.O || Ee("makeClassHandle requires ptr and ptrType"), !!l2.U != !!l2.T && Ee("Both smartPtrType and smartPtr must be specified"), l2.count = { value: 1 }, Fe(Object.create(u2, { M: { value: l2 } })); + } + function Fe(u2) { + return typeof FinalizationRegistry > "u" ? (Fe = (l2) => l2, u2) : (Ke = new FinalizationRegistry((l2) => { + De(l2.M); + }), Fe = (l2) => { + var f = l2.M; + return f.T && Ke.register(l2, { M: f }, l2), l2; + }, At = (l2) => { + Ke.unregister(l2); + }, Fe(u2)); + } + var Me = {}; + function $A(u2) { + for (; u2.length; ) { + var l2 = u2.pop(); + u2.pop()(l2); } } - function XA(s) { - return this.fromWireType(b[s >> 2]); + function fe(u2) { + return this.fromWireType(y[u2 >> 2]); } - var _A = {}, oe = {}; - function V(s, g2, c2) { - function B(w2) { - w2 = c2(w2), w2.length !== s.length && ne("Mismatched type converter count"); - for (var D = 0; D < s.length; ++D) - nA(s[D], w2[D]); + var _A = {}, et2 = {}; + function Y(u2, l2, f) { + function C(v2) { + v2 = f(v2), v2.length !== u2.length && Ee("Mismatched type converter count"); + for (var L = 0; L < u2.length; ++L) + Z(u2[L], v2[L]); } - s.forEach(function(w2) { - oe[w2] = g2; + u2.forEach(function(v2) { + et2[v2] = l2; }); - var Q = Array(g2.length), h2 = [], m2 = 0; - g2.forEach((w2, D) => { - ye.hasOwnProperty(w2) ? Q[D] = ye[w2] : (h2.push(w2), _A.hasOwnProperty(w2) || (_A[w2] = []), _A[w2].push(() => { - Q[D] = ye[w2], ++m2, m2 === h2.length && B(Q); + var h2 = Array(l2.length), S2 = [], k = 0; + l2.forEach((v2, L) => { + we.hasOwnProperty(v2) ? h2[L] = we[v2] : (S2.push(v2), _A.hasOwnProperty(v2) || (_A[v2] = []), _A[v2].push(() => { + h2[L] = we[v2], ++k, k === S2.length && C(h2); })); - }), h2.length === 0 && B(Q); + }), S2.length === 0 && C(h2); } - function Z(s) { - switch (s) { + function z(u2) { + switch (u2) { case 1: return 0; case 2: @@ -14352,660 +13361,660 @@ var Us = Xe(() => { case 8: return 3; default: - throw new TypeError("Unknown type size: " + s); + throw new TypeError("Unknown type size: " + u2); } } - function nA(s, g2, c2 = {}) { - if (!("argPackAdvance" in g2)) + function Z(u2, l2, f = {}) { + if (!("argPackAdvance" in l2)) throw new TypeError("registerType registeredInstance requires argPackAdvance"); - var B = g2.name; - if (s || Y('type "' + B + '" must have a positive integer typeid pointer'), ye.hasOwnProperty(s)) { - if (c2.ua) + var C = l2.name; + if (u2 || K2('type "' + C + '" must have a positive integer typeid pointer'), we.hasOwnProperty(u2)) { + if (f.ua) return; - Y("Cannot register type '" + B + "' twice"); + K2("Cannot register type '" + C + "' twice"); } - ye[s] = g2, delete oe[s], _A.hasOwnProperty(s) && (g2 = _A[s], delete _A[s], g2.forEach((Q) => Q())); + we[u2] = l2, delete et2[u2], _A.hasOwnProperty(u2) && (l2 = _A[u2], delete _A[u2], l2.forEach((h2) => h2())); } - function $(s) { - Y(s.M.P.N.name + " instance already deleted"); + function j(u2) { + K2(u2.M.P.N.name + " instance already deleted"); } - function IA() { + function gA() { } - function lA(s, g2, c2) { - if (s[g2].S === void 0) { - var B = s[g2]; - s[g2] = function() { - return s[g2].S.hasOwnProperty(arguments.length) || Y("Function '" + c2 + "' called with an invalid number of arguments (" + arguments.length + ") - expects one of (" + s[g2].S + ")!"), s[g2].S[arguments.length].apply(this, arguments); - }, s[g2].S = [], s[g2].S[B.Z] = B; + function iA(u2, l2, f) { + if (u2[l2].S === void 0) { + var C = u2[l2]; + u2[l2] = function() { + return u2[l2].S.hasOwnProperty(arguments.length) || K2("Function '" + f + "' called with an invalid number of arguments (" + arguments.length + ") - expects one of (" + u2[l2].S + ")!"), u2[l2].S[arguments.length].apply(this, arguments); + }, u2[l2].S = [], u2[l2].S[C.Z] = C; } } - function DA(s, g2) { - t.hasOwnProperty(s) ? (Y("Cannot register public name '" + s + "' twice"), lA(t, s, s), t.hasOwnProperty(void 0) && Y("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"), t[s].S[void 0] = g2) : t[s] = g2; + function CA(u2, l2) { + t.hasOwnProperty(u2) ? (K2("Cannot register public name '" + u2 + "' twice"), iA(t, u2, u2), t.hasOwnProperty(void 0) && K2("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"), t[u2].S[void 0] = l2) : t[u2] = l2; } - function cA(s, g2, c2, B, Q, h2, m2, w2) { - this.name = s, this.constructor = g2, this.X = c2, this.W = B, this.R = Q, this.pa = h2, this.ba = m2, this.na = w2, this.ja = []; + function IA(u2, l2, f, C, h2, S2, k, v2) { + this.name = u2, this.constructor = l2, this.X = f, this.W = C, this.R = h2, this.pa = S2, this.ba = k, this.na = v2, this.ja = []; } - function gA(s, g2, c2) { - for (; g2 !== c2; ) - g2.ba || Y("Expected null or instance of " + c2.name + ", got an instance of " + g2.name), s = g2.ba(s), g2 = g2.R; - return s; + function AA(u2, l2, f) { + for (; l2 !== f; ) + l2.ba || K2("Expected null or instance of " + f.name + ", got an instance of " + l2.name), u2 = l2.ba(u2), l2 = l2.R; + return u2; } - function Ee(s, g2) { - return g2 === null ? (this.ea && Y("null is not a valid " + this.name), 0) : (g2.M || Y('Cannot pass "' + jA(g2) + '" as a ' + this.name), g2.M.O || Y("Cannot pass deleted object as a pointer of type " + this.name), gA(g2.M.O, g2.M.P.N, this.N)); + function ie(u2, l2) { + return l2 === null ? (this.ea && K2("null is not a valid " + this.name), 0) : (l2.M || K2('Cannot pass "' + JA(l2) + '" as a ' + this.name), l2.M.O || K2("Cannot pass deleted object as a pointer of type " + this.name), AA(l2.M.O, l2.M.P.N, this.N)); } - function eA(s, g2) { - if (g2 === null) { - if (this.ea && Y("null is not a valid " + this.name), this.da) { - var c2 = this.fa(); - return s !== null && s.push(this.W, c2), c2; + function V(u2, l2) { + if (l2 === null) { + if (this.ea && K2("null is not a valid " + this.name), this.da) { + var f = this.fa(); + return u2 !== null && u2.push(this.W, f), f; } return 0; } - if (g2.M || Y('Cannot pass "' + jA(g2) + '" as a ' + this.name), g2.M.O || Y("Cannot pass deleted object as a pointer of type " + this.name), !this.ca && g2.M.P.ca && Y("Cannot convert argument of type " + (g2.M.U ? g2.M.U.name : g2.M.P.name) + " to parameter type " + this.name), c2 = gA(g2.M.O, g2.M.P.N, this.N), this.da) - switch (g2.M.T === void 0 && Y("Passing raw pointer to smart pointer is illegal"), this.Ba) { + if (l2.M || K2('Cannot pass "' + JA(l2) + '" as a ' + this.name), l2.M.O || K2("Cannot pass deleted object as a pointer of type " + this.name), !this.ca && l2.M.P.ca && K2("Cannot convert argument of type " + (l2.M.U ? l2.M.U.name : l2.M.P.name) + " to parameter type " + this.name), f = AA(l2.M.O, l2.M.P.N, this.N), this.da) + switch (l2.M.T === void 0 && K2("Passing raw pointer to smart pointer is illegal"), this.Ba) { case 0: - g2.M.U === this ? c2 = g2.M.T : Y("Cannot convert argument of type " + (g2.M.U ? g2.M.U.name : g2.M.P.name) + " to parameter type " + this.name); + l2.M.U === this ? f = l2.M.T : K2("Cannot convert argument of type " + (l2.M.U ? l2.M.U.name : l2.M.P.name) + " to parameter type " + this.name); break; case 1: - c2 = g2.M.T; + f = l2.M.T; break; case 2: - if (g2.M.U === this) - c2 = g2.M.T; + if (l2.M.U === this) + f = l2.M.T; else { - var B = g2.clone(); - c2 = this.xa(c2, PA(function() { - B.delete(); - })), s !== null && s.push(this.W, c2); + var C = l2.clone(); + f = this.xa(f, GA(function() { + C.delete(); + })), u2 !== null && u2.push(this.W, f); } break; default: - Y("Unsupporting sharing policy"); + K2("Unsupporting sharing policy"); } - return c2; + return f; } - function JA(s, g2) { - return g2 === null ? (this.ea && Y("null is not a valid " + this.name), 0) : (g2.M || Y('Cannot pass "' + jA(g2) + '" as a ' + this.name), g2.M.O || Y("Cannot pass deleted object as a pointer of type " + this.name), g2.M.P.ca && Y("Cannot convert argument of type " + g2.M.P.name + " to parameter type " + this.name), gA(g2.M.O, g2.M.P.N, this.N)); + function Se(u2, l2) { + return l2 === null ? (this.ea && K2("null is not a valid " + this.name), 0) : (l2.M || K2('Cannot pass "' + JA(l2) + '" as a ' + this.name), l2.M.O || K2("Cannot pass deleted object as a pointer of type " + this.name), l2.M.P.ca && K2("Cannot convert argument of type " + l2.M.P.name + " to parameter type " + this.name), AA(l2.M.O, l2.M.P.N, this.N)); } - function RA(s, g2, c2, B) { - this.name = s, this.N = g2, this.ea = c2, this.ca = B, this.da = false, this.W = this.xa = this.fa = this.ka = this.Ba = this.wa = void 0, g2.R !== void 0 ? this.toWireType = eA : (this.toWireType = B ? Ee : JA, this.V = null); + function yA(u2, l2, f, C) { + this.name = u2, this.N = l2, this.ea = f, this.ca = C, this.da = false, this.W = this.xa = this.fa = this.ka = this.Ba = this.wa = void 0, l2.R !== void 0 ? this.toWireType = V : (this.toWireType = C ? ie : Se, this.V = null); } - function ut(s, g2) { - t.hasOwnProperty(s) || ne("Replacing nonexistant public symbol"), t[s] = g2, t[s].Z = void 0; + function kt(u2, l2) { + t.hasOwnProperty(u2) || Ee("Replacing nonexistant public symbol"), t[u2] = l2, t[u2].Z = void 0; } - function GA(s, g2) { - var c2 = []; + function oe(u2, l2) { + var f = []; return function() { - if (c2.length = 0, Object.assign(c2, arguments), s.includes("j")) { - var B = t["dynCall_" + s]; - B = c2 && c2.length ? B.apply(null, [g2].concat(c2)) : B.call(null, g2); + if (f.length = 0, Object.assign(f, arguments), u2.includes("j")) { + var C = t["dynCall_" + u2]; + C = f && f.length ? C.apply(null, [l2].concat(f)) : C.call(null, l2); } else - B = J.get(g2).apply(null, c2); - return B; + C = P2.get(l2).apply(null, f); + return C; }; } - function YA(s, g2) { - s = hA(s); - var c2 = s.includes("j") ? GA(s, g2) : J.get(g2); - return typeof c2 != "function" && Y("unknown function pointer with signature " + s + ": " + g2), c2; + function PA(u2, l2) { + u2 = SA(u2); + var f = u2.includes("j") ? oe(u2, l2) : P2.get(l2); + return typeof f != "function" && K2("unknown function pointer with signature " + u2 + ": " + l2), f; } - var qA = void 0; - function Qe(s, g2) { - function c2(h2) { - Q[h2] || ye[h2] || (oe[h2] ? oe[h2].forEach(c2) : (B.push(h2), Q[h2] = true)); + var XA = void 0; + function be(u2, l2) { + function f(S2) { + h2[S2] || we[S2] || (et2[S2] ? et2[S2].forEach(f) : (C.push(S2), h2[S2] = true)); } - var B = [], Q = {}; - throw g2.forEach(c2), new qA(s + ": " + B.map(Pe).join([", "])); - } - function pA(s, g2, c2, B, Q) { - var h2 = g2.length; - 2 > h2 && Y("argTypes array size mismatch! Must at least get return value and 'this' types!"); - var m2 = g2[1] !== null && c2 !== null, w2 = false; - for (c2 = 1; c2 < g2.length; ++c2) - if (g2[c2] !== null && g2[c2].V === void 0) { - w2 = true; + var C = [], h2 = {}; + throw l2.forEach(f), new XA(u2 + ": " + C.map($e).join([", "])); + } + function dA(u2, l2, f, C, h2) { + var S2 = l2.length; + 2 > S2 && K2("argTypes array size mismatch! Must at least get return value and 'this' types!"); + var k = l2[1] !== null && f !== null, v2 = false; + for (f = 1; f < l2.length; ++f) + if (l2[f] !== null && l2[f].V === void 0) { + v2 = true; break; } - var D = g2[0].name !== "void", S2 = h2 - 2, N = Array(S2), U = [], X = []; + var L = l2[0].name !== "void", F = S2 - 2, H = Array(F), W = [], oA = []; return function() { - if (arguments.length !== S2 && Y("function " + s + " called with " + arguments.length + " arguments, expected " + S2 + " args!"), X.length = 0, U.length = m2 ? 2 : 1, U[0] = Q, m2) { - var z = g2[1].toWireType(X, this); - U[1] = z; + if (arguments.length !== F && K2("function " + u2 + " called with " + arguments.length + " arguments, expected " + F + " args!"), oA.length = 0, W.length = k ? 2 : 1, W[0] = h2, k) { + var vA = l2[1].toWireType(oA, this); + W[1] = vA; } - for (var AA = 0; AA < S2; ++AA) - N[AA] = g2[AA + 2].toWireType(X, arguments[AA]), U.push(N[AA]); - if (AA = B.apply(null, U), w2) - KA(X); + for (var uA = 0; uA < F; ++uA) + H[uA] = l2[uA + 2].toWireType(oA, arguments[uA]), W.push(H[uA]); + if (uA = C.apply(null, W), v2) + $A(oA); else - for (var NA = m2 ? 1 : 2; NA < g2.length; NA++) { - var Ae = NA === 1 ? z : N[NA - 2]; - g2[NA].V !== null && g2[NA].V(Ae); + for (var ee = k ? 1 : 2; ee < l2.length; ee++) { + var de = ee === 1 ? vA : H[ee - 2]; + l2[ee].V !== null && l2[ee].V(de); } - return z = D ? g2[0].fromWireType(AA) : void 0, z; + return vA = L ? l2[0].fromWireType(uA) : void 0, vA; }; } - function mA(s, g2) { - for (var c2 = [], B = 0; B < s; B++) - c2.push(v2[g2 + 4 * B >> 2]); - return c2; + function wA(u2, l2) { + for (var f = [], C = 0; C < u2; C++) + f.push(p[l2 + 4 * C >> 2]); + return f; } - function ZA(s) { - 4 < s && --q[s].ga === 0 && (q[s] = void 0, oA.push(s)); + function Ae(u2) { + 4 < u2 && --J[u2].ga === 0 && (J[u2] = void 0, rA.push(u2)); } - function jA(s) { - if (s === null) + function JA(u2) { + if (u2 === null) return "null"; - var g2 = typeof s; - return g2 === "object" || g2 === "array" || g2 === "function" ? s.toString() : "" + s; + var l2 = typeof u2; + return l2 === "object" || l2 === "array" || l2 === "function" ? u2.toString() : "" + u2; } - function Se(s, g2) { - switch (g2) { + function Qe(u2, l2) { + switch (l2) { case 2: - return function(c2) { - return this.fromWireType(M[c2 >> 2]); + return function(f) { + return this.fromWireType(b[f >> 2]); }; case 3: - return function(c2) { - return this.fromWireType(L[c2 >> 3]); + return function(f) { + return this.fromWireType(R2[f >> 3]); }; default: - throw new TypeError("Unknown float type: " + s); + throw new TypeError("Unknown float type: " + u2); } } - function be(s, g2, c2) { - switch (g2) { + function Ce(u2, l2, f) { + switch (l2) { case 0: - return c2 ? function(B) { - return y[B]; - } : function(B) { - return k[B]; + return f ? function(C) { + return d2[C]; + } : function(C) { + return m2[C]; }; case 1: - return c2 ? function(B) { - return x2[B >> 1]; - } : function(B) { - return F[B >> 1]; + return f ? function(C) { + return D[C >> 1]; + } : function(C) { + return x2[C >> 1]; }; case 2: - return c2 ? function(B) { - return b[B >> 2]; - } : function(B) { - return v2[B >> 2]; + return f ? function(C) { + return y[C >> 2]; + } : function(C) { + return p[C >> 2]; }; default: - throw new TypeError("Unknown integer type: " + s); + throw new TypeError("Unknown integer type: " + u2); } } - function $A(s, g2) { - for (var c2 = "", B = 0; !(B >= g2 / 2); ++B) { - var Q = x2[s + 2 * B >> 1]; - if (Q == 0) + function KA(u2, l2) { + for (var f = "", C = 0; !(C >= l2 / 2); ++C) { + var h2 = D[u2 + 2 * C >> 1]; + if (h2 == 0) break; - c2 += String.fromCharCode(Q); + f += String.fromCharCode(h2); } - return c2; + return f; } - function Ce(s, g2, c2) { - if (c2 === void 0 && (c2 = 2147483647), 2 > c2) + function se(u2, l2, f) { + if (f === void 0 && (f = 2147483647), 2 > f) return 0; - c2 -= 2; - var B = g2; - c2 = c2 < 2 * s.length ? c2 / 2 : s.length; - for (var Q = 0; Q < c2; ++Q) - x2[g2 >> 1] = s.charCodeAt(Q), g2 += 2; - return x2[g2 >> 1] = 0, g2 - B; - } - function It(s) { - return 2 * s.length; - } - function et2(s, g2) { - for (var c2 = 0, B = ""; !(c2 >= g2 / 4); ) { - var Q = b[s + 4 * c2 >> 2]; - if (Q == 0) + f -= 2; + var C = l2; + f = f < 2 * u2.length ? f / 2 : u2.length; + for (var h2 = 0; h2 < f; ++h2) + D[l2 >> 1] = u2.charCodeAt(h2), l2 += 2; + return D[l2 >> 1] = 0, l2 - C; + } + function xt(u2) { + return 2 * u2.length; + } + function ct(u2, l2) { + for (var f = 0, C = ""; !(f >= l2 / 4); ) { + var h2 = y[u2 + 4 * f >> 2]; + if (h2 == 0) break; - ++c2, 65536 <= Q ? (Q -= 65536, B += String.fromCharCode(55296 | Q >> 10, 56320 | Q & 1023)) : B += String.fromCharCode(Q); + ++f, 65536 <= h2 ? (h2 -= 65536, C += String.fromCharCode(55296 | h2 >> 10, 56320 | h2 & 1023)) : C += String.fromCharCode(h2); } - return B; + return C; } - function wt(s, g2, c2) { - if (c2 === void 0 && (c2 = 2147483647), 4 > c2) + function kr(u2, l2, f) { + if (f === void 0 && (f = 2147483647), 4 > f) return 0; - var B = g2; - c2 = B + c2 - 4; - for (var Q = 0; Q < s.length; ++Q) { - var h2 = s.charCodeAt(Q); - if (55296 <= h2 && 57343 >= h2) { - var m2 = s.charCodeAt(++Q); - h2 = 65536 + ((h2 & 1023) << 10) | m2 & 1023; + var C = l2; + f = C + f - 4; + for (var h2 = 0; h2 < u2.length; ++h2) { + var S2 = u2.charCodeAt(h2); + if (55296 <= S2 && 57343 >= S2) { + var k = u2.charCodeAt(++h2); + S2 = 65536 + ((S2 & 1023) << 10) | k & 1023; } - if (b[g2 >> 2] = h2, g2 += 4, g2 + 4 > c2) + if (y[l2 >> 2] = S2, l2 += 4, l2 + 4 > f) break; } - return b[g2 >> 2] = 0, g2 - B; + return y[l2 >> 2] = 0, l2 - C; } - function Dt(s) { - for (var g2 = 0, c2 = 0; c2 < s.length; ++c2) { - var B = s.charCodeAt(c2); - 55296 <= B && 57343 >= B && ++c2, g2 += 4; + function xr(u2) { + for (var l2 = 0, f = 0; f < u2.length; ++f) { + var C = u2.charCodeAt(f); + 55296 <= C && 57343 >= C && ++f, l2 += 4; } - return g2; - } - var lt = {}; - function ct(s) { - var g2 = lt[s]; - return g2 === void 0 ? hA(s) : g2; - } - var St = []; - function Fn(s) { - var g2 = St.length; - return St.push(s), g2; - } - function Pr(s, g2) { - for (var c2 = Array(s), B = 0; B < s; ++B) - c2[B] = Ye(v2[g2 + 4 * B >> 2], "parameter " + B); - return c2; - } - var _r = [], Jr = [null, [], []]; - W = t.BindingError = BA("BindingError"), t.count_emval_handles = function() { - for (var s = 0, g2 = 5; g2 < q.length; ++g2) - q[g2] !== void 0 && ++s; - return s; + return l2; + } + var Rr = {}; + function Zo(u2) { + var l2 = Rr[u2]; + return l2 === void 0 ? SA(u2) : l2; + } + var vr = []; + function ou(u2) { + var l2 = vr.length; + return vr.push(u2), l2; + } + function su(u2, l2) { + for (var f = Array(u2), C = 0; C < u2; ++C) + f[C] = br(p[l2 + 4 * C >> 2], "parameter " + C); + return f; + } + var jo = [], au = [null, [], []]; + QA = t.BindingError = fA("BindingError"), t.count_emval_handles = function() { + for (var u2 = 0, l2 = 5; l2 < J.length; ++l2) + J[l2] !== void 0 && ++u2; + return u2; }, t.get_first_emval = function() { - for (var s = 5; s < q.length; ++s) - if (q[s] !== void 0) - return q[s]; + for (var u2 = 5; u2 < J.length; ++u2) + if (J[u2] !== void 0) + return J[u2]; return null; - }, WA = t.PureVirtualError = BA("PureVirtualError"); - for (var ft = Array(256), bt = 0; 256 > bt; ++bt) - ft[bt] = String.fromCharCode(bt); - uA = ft, t.getInheritedInstanceCount = function() { + }, OA = t.PureVirtualError = fA("PureVirtualError"); + for (var $o = Array(256), Nr = 0; 256 > Nr; ++Nr) + $o[Nr] = String.fromCharCode(Nr); + TA = $o, t.getInheritedInstanceCount = function() { return Object.keys(re).length; }, t.getLiveInheritedInstances = function() { - var s = [], g2; - for (g2 in re) - re.hasOwnProperty(g2) && s.push(re[g2]); - return s; - }, t.flushPendingDeletes = le, t.setDelayFunction = function(s) { - LA = s, Ie.length && LA && LA(le); - }, zA = t.InternalError = BA("InternalError"), IA.prototype.isAliasOf = function(s) { - if (!(this instanceof IA && s instanceof IA)) + var u2 = [], l2; + for (l2 in re) + re.hasOwnProperty(l2) && u2.push(re[l2]); + return u2; + }, t.flushPendingDeletes = Je, t.setDelayFunction = function(u2) { + qA = u2, ye.length && qA && qA(Je); + }, ne = t.InternalError = fA("InternalError"), gA.prototype.isAliasOf = function(u2) { + if (!(this instanceof gA && u2 instanceof gA)) return false; - var g2 = this.M.P.N, c2 = this.M.O, B = s.M.P.N; - for (s = s.M.O; g2.R; ) - c2 = g2.ba(c2), g2 = g2.R; - for (; B.R; ) - s = B.ba(s), B = B.R; - return g2 === B && c2 === s; - }, IA.prototype.clone = function() { - if (this.M.O || $(this), this.M.aa) + var l2 = this.M.P.N, f = this.M.O, C = u2.M.P.N; + for (u2 = u2.M.O; l2.R; ) + f = l2.ba(f), l2 = l2.R; + for (; C.R; ) + u2 = C.ba(u2), C = C.R; + return l2 === C && f === u2; + }, gA.prototype.clone = function() { + if (this.M.O || j(this), this.M.aa) return this.M.count.value += 1, this; - var s = Be, g2 = Object, c2 = g2.create, B = Object.getPrototypeOf(this), Q = this.M; - return s = s(c2.call(g2, B, { M: { value: { count: Q.count, $: Q.$, aa: Q.aa, O: Q.O, P: Q.P, T: Q.T, U: Q.U } } })), s.M.count.value += 1, s.M.$ = false, s; - }, IA.prototype.delete = function() { - this.M.O || $(this), this.M.$ && !this.M.aa && Y("Object already scheduled for deletion"), Ge(this), we(this.M), this.M.aa || (this.M.T = void 0, this.M.O = void 0); - }, IA.prototype.isDeleted = function() { + var u2 = Fe, l2 = Object, f = l2.create, C = Object.getPrototypeOf(this), h2 = this.M; + return u2 = u2(f.call(l2, C, { M: { value: { count: h2.count, $: h2.$, aa: h2.aa, O: h2.O, P: h2.P, T: h2.T, U: h2.U } } })), u2.M.count.value += 1, u2.M.$ = false, u2; + }, gA.prototype.delete = function() { + this.M.O || j(this), this.M.$ && !this.M.aa && K2("Object already scheduled for deletion"), At(this), De(this.M), this.M.aa || (this.M.T = void 0, this.M.O = void 0); + }, gA.prototype.isDeleted = function() { return !this.M.O; - }, IA.prototype.deleteLater = function() { - return this.M.O || $(this), this.M.$ && !this.M.aa && Y("Object already scheduled for deletion"), Ie.push(this), Ie.length === 1 && LA && LA(le), this.M.$ = true, this; - }, RA.prototype.qa = function(s) { - return this.ka && (s = this.ka(s)), s; - }, RA.prototype.ha = function(s) { - this.W && this.W(s); - }, RA.prototype.argPackAdvance = 8, RA.prototype.readValueFromPointer = XA, RA.prototype.deleteObject = function(s) { - s !== null && s.delete(); - }, RA.prototype.fromWireType = function(s) { - function g2() { - return this.da ? ie(this.N.X, { P: this.wa, O: c2, U: this, T: s }) : ie(this.N.X, { P: this, O: s }); + }, gA.prototype.deleteLater = function() { + return this.M.O || j(this), this.M.$ && !this.M.aa && K2("Object already scheduled for deletion"), ye.push(this), ye.length === 1 && qA && qA(Je), this.M.$ = true, this; + }, yA.prototype.qa = function(u2) { + return this.ka && (u2 = this.ka(u2)), u2; + }, yA.prototype.ha = function(u2) { + this.W && this.W(u2); + }, yA.prototype.argPackAdvance = 8, yA.prototype.readValueFromPointer = fe, yA.prototype.deleteObject = function(u2) { + u2 !== null && u2.delete(); + }, yA.prototype.fromWireType = function(u2) { + function l2() { + return this.da ? Ne(this.N.X, { P: this.wa, O: f, U: this, T: u2 }) : Ne(this.N.X, { P: this, O: u2 }); } - var c2 = this.qa(s); - if (!c2) - return this.ha(s), null; - var B = qe(this.N, c2); - if (B !== void 0) - return B.M.count.value === 0 ? (B.M.O = c2, B.M.T = s, B.clone()) : (B = B.clone(), this.ha(s), B); - if (B = this.N.pa(c2), B = se[B], !B) - return g2.call(this); - B = this.ca ? B.la : B.pointerType; - var Q = fe(c2, this.N, B.N); - return Q === null ? g2.call(this) : this.da ? ie(B.N.X, { P: B, O: Q, U: this, T: s }) : ie(B.N.X, { P: B, O: Q }); - }, qA = t.UnboundTypeError = BA("UnboundTypeError"); - var Ln = typeof atob == "function" ? atob : function(s) { - var g2 = "", c2 = 0; - s = s.replace(/[^A-Za-z0-9\+\/=]/g, ""); + var f = this.qa(u2); + if (!f) + return this.ha(u2), null; + var C = lt(this.N, f); + if (C !== void 0) + return C.M.count.value === 0 ? (C.M.O = f, C.M.T = u2, C.clone()) : (C = C.clone(), this.ha(u2), C); + if (C = this.N.pa(f), C = jA[C], !C) + return l2.call(this); + C = this.ca ? C.la : C.pointerType; + var h2 = Be(f, this.N, C.N); + return h2 === null ? l2.call(this) : this.da ? Ne(C.N.X, { P: C, O: h2, U: this, T: u2 }) : Ne(C.N.X, { P: C, O: h2 }); + }, XA = t.UnboundTypeError = fA("UnboundTypeError"); + var gu = typeof atob == "function" ? atob : function(u2) { + var l2 = "", f = 0; + u2 = u2.replace(/[^A-Za-z0-9\+\/=]/g, ""); do { - var B = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(s.charAt(c2++)), Q = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(s.charAt(c2++)), h2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(s.charAt(c2++)), m2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(s.charAt(c2++)); - B = B << 2 | Q >> 4, Q = (Q & 15) << 4 | h2 >> 2; - var w2 = (h2 & 3) << 6 | m2; - g2 += String.fromCharCode(B), h2 !== 64 && (g2 += String.fromCharCode(Q)), m2 !== 64 && (g2 += String.fromCharCode(w2)); - } while (c2 < s.length); - return g2; - }, Wr = { l: function(s, g2, c2, B) { - iA("Assertion failed: " + (s ? d2(k, s) : "") + ", at: " + [g2 ? g2 ? d2(k, g2) : "" : "unknown filename", c2, B ? B ? d2(k, B) : "" : "unknown function"]); - }, q: function(s, g2, c2) { - s = hA(s), g2 = Ye(g2, "wrapper"), c2 = OA(c2); - var B = [].slice, Q = g2.N, h2 = Q.X, m2 = Q.R.X, w2 = Q.R.constructor; - s = fA(s, function() { - Q.R.ja.forEach(function(S2) { - if (this[S2] === m2[S2]) - throw new WA("Pure virtual function " + S2 + " must be implemented in JavaScript"); - }.bind(this)), Object.defineProperty(this, "__parent", { value: h2 }), this.__construct.apply(this, B.call(arguments)); - }), h2.__construct = function() { - this === h2 && Y("Pass correct 'this' to __construct"); - var S2 = w2.implement.apply(void 0, [this].concat(B.call(arguments))); - Ge(S2); - var N = S2.M; - S2.notifyOnDestruction(), N.aa = true, Object.defineProperties(this, { M: { value: N } }), Be(this), S2 = N.O, S2 = ce(Q, S2), re.hasOwnProperty(S2) ? Y("Tried to register registered instance: " + S2) : re[S2] = this; - }, h2.__destruct = function() { - this === h2 && Y("Pass correct 'this' to __destruct"), Ge(this); - var S2 = this.M.O; - S2 = ce(Q, S2), re.hasOwnProperty(S2) ? delete re[S2] : Y("Tried to unregister unregistered instance: " + S2); - }, s.prototype = Object.create(h2); - for (var D in c2) - s.prototype[D] = c2[D]; - return PA(s); - }, j: function(s) { - var g2 = De[s]; - delete De[s]; - var c2 = g2.fa, B = g2.W, Q = g2.ia, h2 = Q.map((m2) => m2.ta).concat(Q.map((m2) => m2.za)); - V([s], h2, (m2) => { - var w2 = {}; - return Q.forEach((D, S2) => { - var N = m2[S2], U = D.ra, X = D.sa, z = m2[S2 + Q.length], AA = D.ya, NA = D.Aa; - w2[D.oa] = { read: (Ae) => N.fromWireType(U(X, Ae)), write: (Ae, ae) => { - var ke = []; - AA(NA, Ae, z.toWireType(ke, ae)), KA(ke); + var C = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(u2.charAt(f++)), h2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(u2.charAt(f++)), S2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(u2.charAt(f++)), k = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(u2.charAt(f++)); + C = C << 2 | h2 >> 4, h2 = (h2 & 15) << 4 | S2 >> 2; + var v2 = (S2 & 3) << 6 | k; + l2 += String.fromCharCode(C), S2 !== 64 && (l2 += String.fromCharCode(h2)), k !== 64 && (l2 += String.fromCharCode(v2)); + } while (f < u2.length); + return l2; + }, Iu = { l: function(u2, l2, f, C) { + $("Assertion failed: " + (u2 ? E(m2, u2) : "") + ", at: " + [l2 ? l2 ? E(m2, l2) : "" : "unknown filename", f, C ? C ? E(m2, C) : "" : "unknown function"]); + }, q: function(u2, l2, f) { + u2 = SA(u2), l2 = br(l2, "wrapper"), f = MA(f); + var C = [].slice, h2 = l2.N, S2 = h2.X, k = h2.R.X, v2 = h2.R.constructor; + u2 = xA(u2, function() { + h2.R.ja.forEach(function(F) { + if (this[F] === k[F]) + throw new OA("Pure virtual function " + F + " must be implemented in JavaScript"); + }.bind(this)), Object.defineProperty(this, "__parent", { value: S2 }), this.__construct.apply(this, C.call(arguments)); + }), S2.__construct = function() { + this === S2 && K2("Pass correct 'this' to __construct"); + var F = v2.implement.apply(void 0, [this].concat(C.call(arguments))); + At(F); + var H = F.M; + F.notifyOnDestruction(), H.aa = true, Object.defineProperties(this, { M: { value: H } }), Fe(this), F = H.O, F = ut(h2, F), re.hasOwnProperty(F) ? K2("Tried to register registered instance: " + F) : re[F] = this; + }, S2.__destruct = function() { + this === S2 && K2("Pass correct 'this' to __destruct"), At(this); + var F = this.M.O; + F = ut(h2, F), re.hasOwnProperty(F) ? delete re[F] : K2("Tried to unregister unregistered instance: " + F); + }, u2.prototype = Object.create(S2); + for (var L in f) + u2.prototype[L] = f[L]; + return GA(u2); + }, j: function(u2) { + var l2 = Me[u2]; + delete Me[u2]; + var f = l2.fa, C = l2.W, h2 = l2.ia, S2 = h2.map((k) => k.ta).concat(h2.map((k) => k.za)); + Y([u2], S2, (k) => { + var v2 = {}; + return h2.forEach((L, F) => { + var H = k[F], W = L.ra, oA = L.sa, vA = k[F + h2.length], uA = L.ya, ee = L.Aa; + v2[L.oa] = { read: (de) => H.fromWireType(W(oA, de)), write: (de, Rt) => { + var Ge = []; + uA(ee, de, vA.toWireType(Ge, Rt)), $A(Ge); } }; - }), [{ name: g2.name, fromWireType: function(D) { - var S2 = {}, N; - for (N in w2) - S2[N] = w2[N].read(D); - return B(D), S2; - }, toWireType: function(D, S2) { - for (var N in w2) - if (!(N in S2)) - throw new TypeError('Missing field: "' + N + '"'); - var U = c2(); - for (N in w2) - w2[N].write(U, S2[N]); - return D !== null && D.push(B, U), U; - }, argPackAdvance: 8, readValueFromPointer: XA, V: B }]; + }), [{ name: l2.name, fromWireType: function(L) { + var F = {}, H; + for (H in v2) + F[H] = v2[H].read(L); + return C(L), F; + }, toWireType: function(L, F) { + for (var H in v2) + if (!(H in F)) + throw new TypeError('Missing field: "' + H + '"'); + var W = f(); + for (H in v2) + v2[H].write(W, F[H]); + return L !== null && L.push(C, W), W; + }, argPackAdvance: 8, readValueFromPointer: fe, V: C }]; }); }, v: function() { - }, B: function(s, g2, c2, B, Q) { - var h2 = Z(c2); - g2 = hA(g2), nA(s, { name: g2, fromWireType: function(m2) { - return !!m2; - }, toWireType: function(m2, w2) { - return w2 ? B : Q; - }, argPackAdvance: 8, readValueFromPointer: function(m2) { - if (c2 === 1) - var w2 = y; - else if (c2 === 2) - w2 = x2; - else if (c2 === 4) - w2 = b; + }, B: function(u2, l2, f, C, h2) { + var S2 = z(f); + l2 = SA(l2), Z(u2, { name: l2, fromWireType: function(k) { + return !!k; + }, toWireType: function(k, v2) { + return v2 ? C : h2; + }, argPackAdvance: 8, readValueFromPointer: function(k) { + if (f === 1) + var v2 = d2; + else if (f === 2) + v2 = D; + else if (f === 4) + v2 = y; else - throw new TypeError("Unknown boolean type size: " + g2); - return this.fromWireType(w2[m2 >> h2]); + throw new TypeError("Unknown boolean type size: " + l2); + return this.fromWireType(v2[k >> S2]); }, V: null }); - }, f: function(s, g2, c2, B, Q, h2, m2, w2, D, S2, N, U, X) { - N = hA(N), h2 = YA(Q, h2), w2 && (w2 = YA(m2, w2)), S2 && (S2 = YA(D, S2)), X = YA(U, X); - var z = xA(N); - DA(z, function() { - Qe("Cannot construct " + N + " due to unbound types", [B]); - }), V([s, g2, c2], B ? [B] : [], function(AA) { - if (AA = AA[0], B) - var NA = AA.N, Ae = NA.X; + }, f: function(u2, l2, f, C, h2, S2, k, v2, L, F, H, W, oA) { + H = SA(H), S2 = PA(h2, S2), v2 && (v2 = PA(k, v2)), F && (F = PA(L, F)), oA = PA(W, oA); + var vA = kA(H); + CA(vA, function() { + be("Cannot construct " + H + " due to unbound types", [C]); + }), Y([u2, l2, f], C ? [C] : [], function(uA) { + if (uA = uA[0], C) + var ee = uA.N, de = ee.X; else - Ae = IA.prototype; - AA = fA(z, function() { - if (Object.getPrototypeOf(this) !== ae) - throw new W("Use 'new' to construct " + N); - if (ke.Y === void 0) - throw new W(N + " has no accessible constructor"); - var ls = ke.Y[arguments.length]; - if (ls === void 0) - throw new W("Tried to invoke ctor of " + N + " with invalid number of parameters (" + arguments.length + ") - expected (" + Object.keys(ke.Y).toString() + ") parameters instead!"); - return ls.apply(this, arguments); + de = gA.prototype; + uA = xA(vA, function() { + if (Object.getPrototypeOf(this) !== Rt) + throw new QA("Use 'new' to construct " + H); + if (Ge.Y === void 0) + throw new QA(H + " has no accessible constructor"); + var rs = Ge.Y[arguments.length]; + if (rs === void 0) + throw new QA("Tried to invoke ctor of " + H + " with invalid number of parameters (" + arguments.length + ") - expected (" + Object.keys(Ge.Y).toString() + ") parameters instead!"); + return rs.apply(this, arguments); }); - var ae = Object.create(Ae, { constructor: { value: AA } }); - AA.prototype = ae; - var ke = new cA(N, AA, ae, X, NA, h2, w2, S2); - NA = new RA(N, ke, true, false), Ae = new RA(N + "*", ke, false, false); - var Wt = new RA(N + " const*", ke, false, true); - return se[s] = { pointerType: Ae, la: Wt }, ut(z, AA), [NA, Ae, Wt]; + var Rt = Object.create(de, { constructor: { value: uA } }); + uA.prototype = Rt; + var Ge = new IA(H, uA, Rt, oA, ee, S2, v2, F); + ee = new yA(H, Ge, true, false), de = new yA(H + "*", Ge, false, false); + var ts = new yA(H + " const*", Ge, false, true); + return jA[u2] = { pointerType: de, la: ts }, kt(vA, uA), [ee, de, ts]; }); - }, d: function(s, g2, c2, B, Q, h2, m2) { - var w2 = mA(c2, B); - g2 = hA(g2), h2 = YA(Q, h2), V([], [s], function(D) { - function S2() { - Qe("Cannot call " + N + " due to unbound types", w2); + }, d: function(u2, l2, f, C, h2, S2, k) { + var v2 = wA(f, C); + l2 = SA(l2), S2 = PA(h2, S2), Y([], [u2], function(L) { + function F() { + be("Cannot call " + H + " due to unbound types", v2); } - D = D[0]; - var N = D.name + "." + g2; - g2.startsWith("@@") && (g2 = Symbol[g2.substring(2)]); - var U = D.N.constructor; - return U[g2] === void 0 ? (S2.Z = c2 - 1, U[g2] = S2) : (lA(U, g2, N), U[g2].S[c2 - 1] = S2), V([], w2, function(X) { - return X = pA(N, [X[0], null].concat(X.slice(1)), null, h2, m2), U[g2].S === void 0 ? (X.Z = c2 - 1, U[g2] = X) : U[g2].S[c2 - 1] = X, []; + L = L[0]; + var H = L.name + "." + l2; + l2.startsWith("@@") && (l2 = Symbol[l2.substring(2)]); + var W = L.N.constructor; + return W[l2] === void 0 ? (F.Z = f - 1, W[l2] = F) : (iA(W, l2, H), W[l2].S[f - 1] = F), Y([], v2, function(oA) { + return oA = dA(H, [oA[0], null].concat(oA.slice(1)), null, S2, k), W[l2].S === void 0 ? (oA.Z = f - 1, W[l2] = oA) : W[l2].S[f - 1] = oA, []; }), []; }); - }, p: function(s, g2, c2, B, Q, h2) { - 0 < g2 || iA(); - var m2 = mA(g2, c2); - Q = YA(B, Q), V([], [s], function(w2) { - w2 = w2[0]; - var D = "constructor " + w2.name; - if (w2.N.Y === void 0 && (w2.N.Y = []), w2.N.Y[g2 - 1] !== void 0) - throw new W("Cannot register multiple constructors with identical number of parameters (" + (g2 - 1) + ") for class '" + w2.name + "'! Overload resolution is currently only performed using the parameter count, not actual type info!"); - return w2.N.Y[g2 - 1] = () => { - Qe("Cannot construct " + w2.name + " due to unbound types", m2); - }, V([], m2, function(S2) { - return S2.splice(1, 0, null), w2.N.Y[g2 - 1] = pA(D, S2, null, Q, h2), []; + }, p: function(u2, l2, f, C, h2, S2) { + 0 < l2 || $(); + var k = wA(l2, f); + h2 = PA(C, h2), Y([], [u2], function(v2) { + v2 = v2[0]; + var L = "constructor " + v2.name; + if (v2.N.Y === void 0 && (v2.N.Y = []), v2.N.Y[l2 - 1] !== void 0) + throw new QA("Cannot register multiple constructors with identical number of parameters (" + (l2 - 1) + ") for class '" + v2.name + "'! Overload resolution is currently only performed using the parameter count, not actual type info!"); + return v2.N.Y[l2 - 1] = () => { + be("Cannot construct " + v2.name + " due to unbound types", k); + }, Y([], k, function(F) { + return F.splice(1, 0, null), v2.N.Y[l2 - 1] = dA(L, F, null, h2, S2), []; }), []; }); - }, a: function(s, g2, c2, B, Q, h2, m2, w2) { - var D = mA(c2, B); - g2 = hA(g2), h2 = YA(Q, h2), V([], [s], function(S2) { - function N() { - Qe("Cannot call " + U + " due to unbound types", D); + }, a: function(u2, l2, f, C, h2, S2, k, v2) { + var L = wA(f, C); + l2 = SA(l2), S2 = PA(h2, S2), Y([], [u2], function(F) { + function H() { + be("Cannot call " + W + " due to unbound types", L); } - S2 = S2[0]; - var U = S2.name + "." + g2; - g2.startsWith("@@") && (g2 = Symbol[g2.substring(2)]), w2 && S2.N.ja.push(g2); - var X = S2.N.X, z = X[g2]; - return z === void 0 || z.S === void 0 && z.className !== S2.name && z.Z === c2 - 2 ? (N.Z = c2 - 2, N.className = S2.name, X[g2] = N) : (lA(X, g2, U), X[g2].S[c2 - 2] = N), V([], D, function(AA) { - return AA = pA(U, AA, S2, h2, m2), X[g2].S === void 0 ? (AA.Z = c2 - 2, X[g2] = AA) : X[g2].S[c2 - 2] = AA, []; + F = F[0]; + var W = F.name + "." + l2; + l2.startsWith("@@") && (l2 = Symbol[l2.substring(2)]), v2 && F.N.ja.push(l2); + var oA = F.N.X, vA = oA[l2]; + return vA === void 0 || vA.S === void 0 && vA.className !== F.name && vA.Z === f - 2 ? (H.Z = f - 2, H.className = F.name, oA[l2] = H) : (iA(oA, l2, W), oA[l2].S[f - 2] = H), Y([], L, function(uA) { + return uA = dA(W, uA, F, S2, k), oA[l2].S === void 0 ? (uA.Z = f - 2, oA[l2] = uA) : oA[l2].S[f - 2] = uA, []; }), []; }); - }, A: function(s, g2) { - g2 = hA(g2), nA(s, { name: g2, fromWireType: function(c2) { - var B = OA(c2); - return ZA(c2), B; - }, toWireType: function(c2, B) { - return PA(B); - }, argPackAdvance: 8, readValueFromPointer: XA, V: null }); - }, n: function(s, g2, c2) { - c2 = Z(c2), g2 = hA(g2), nA(s, { name: g2, fromWireType: function(B) { - return B; - }, toWireType: function(B, Q) { - return Q; - }, argPackAdvance: 8, readValueFromPointer: Se(g2, c2), V: null }); - }, e: function(s, g2, c2, B, Q) { - g2 = hA(g2), Q === -1 && (Q = 4294967295), Q = Z(c2); - var h2 = (w2) => w2; - if (B === 0) { - var m2 = 32 - 8 * c2; - h2 = (w2) => w2 << m2 >>> m2; + }, A: function(u2, l2) { + l2 = SA(l2), Z(u2, { name: l2, fromWireType: function(f) { + var C = MA(f); + return Ae(f), C; + }, toWireType: function(f, C) { + return GA(C); + }, argPackAdvance: 8, readValueFromPointer: fe, V: null }); + }, n: function(u2, l2, f) { + f = z(f), l2 = SA(l2), Z(u2, { name: l2, fromWireType: function(C) { + return C; + }, toWireType: function(C, h2) { + return h2; + }, argPackAdvance: 8, readValueFromPointer: Qe(l2, f), V: null }); + }, e: function(u2, l2, f, C, h2) { + l2 = SA(l2), h2 === -1 && (h2 = 4294967295), h2 = z(f); + var S2 = (v2) => v2; + if (C === 0) { + var k = 32 - 8 * f; + S2 = (v2) => v2 << k >>> k; } - c2 = g2.includes("unsigned") ? function(w2, D) { - return D >>> 0; - } : function(w2, D) { - return D; - }, nA(s, { name: g2, fromWireType: h2, toWireType: c2, argPackAdvance: 8, readValueFromPointer: be(g2, Q, B !== 0), V: null }); - }, b: function(s, g2, c2) { - function B(h2) { - h2 >>= 2; - var m2 = v2; - return new Q(p, m2[h2 + 1], m2[h2]); + f = l2.includes("unsigned") ? function(v2, L) { + return L >>> 0; + } : function(v2, L) { + return L; + }, Z(u2, { name: l2, fromWireType: S2, toWireType: f, argPackAdvance: 8, readValueFromPointer: Ce(l2, h2, C !== 0), V: null }); + }, b: function(u2, l2, f) { + function C(S2) { + S2 >>= 2; + var k = p; + return new h2(Q, k[S2 + 1], k[S2]); } - var Q = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array][g2]; - c2 = hA(c2), nA(s, { name: c2, fromWireType: B, argPackAdvance: 8, readValueFromPointer: B }, { ua: true }); - }, o: function(s, g2) { - g2 = hA(g2); - var c2 = g2 === "std::string"; - nA(s, { name: g2, fromWireType: function(B) { - var Q = v2[B >> 2], h2 = B + 4; - if (c2) - for (var m2 = h2, w2 = 0; w2 <= Q; ++w2) { - var D = h2 + w2; - if (w2 == Q || k[D] == 0) { - if (m2 = m2 ? d2(k, m2, D - m2) : "", S2 === void 0) - var S2 = m2; + var h2 = [Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array][l2]; + f = SA(f), Z(u2, { name: f, fromWireType: C, argPackAdvance: 8, readValueFromPointer: C }, { ua: true }); + }, o: function(u2, l2) { + l2 = SA(l2); + var f = l2 === "std::string"; + Z(u2, { name: l2, fromWireType: function(C) { + var h2 = p[C >> 2], S2 = C + 4; + if (f) + for (var k = S2, v2 = 0; v2 <= h2; ++v2) { + var L = S2 + v2; + if (v2 == h2 || m2[L] == 0) { + if (k = k ? E(m2, k, L - k) : "", F === void 0) + var F = k; else - S2 += String.fromCharCode(0), S2 += m2; - m2 = D + 1; + F += String.fromCharCode(0), F += k; + k = L + 1; } } else { - for (S2 = Array(Q), w2 = 0; w2 < Q; ++w2) - S2[w2] = String.fromCharCode(k[h2 + w2]); - S2 = S2.join(""); + for (F = Array(h2), v2 = 0; v2 < h2; ++v2) + F[v2] = String.fromCharCode(m2[S2 + v2]); + F = F.join(""); } - return de(B), S2; - }, toWireType: function(B, Q) { - Q instanceof ArrayBuffer && (Q = new Uint8Array(Q)); - var h2, m2 = typeof Q == "string"; - if (m2 || Q instanceof Uint8Array || Q instanceof Uint8ClampedArray || Q instanceof Int8Array || Y("Cannot pass non-string to std::string"), c2 && m2) { - var w2 = 0; - for (h2 = 0; h2 < Q.length; ++h2) { - var D = Q.charCodeAt(h2); - 127 >= D ? w2++ : 2047 >= D ? w2 += 2 : 55296 <= D && 57343 >= D ? (w2 += 4, ++h2) : w2 += 3; + return Le(C), F; + }, toWireType: function(C, h2) { + h2 instanceof ArrayBuffer && (h2 = new Uint8Array(h2)); + var S2, k = typeof h2 == "string"; + if (k || h2 instanceof Uint8Array || h2 instanceof Uint8ClampedArray || h2 instanceof Int8Array || K2("Cannot pass non-string to std::string"), f && k) { + var v2 = 0; + for (S2 = 0; S2 < h2.length; ++S2) { + var L = h2.charCodeAt(S2); + 127 >= L ? v2++ : 2047 >= L ? v2 += 2 : 55296 <= L && 57343 >= L ? (v2 += 4, ++S2) : v2 += 3; } - h2 = w2; + S2 = v2; } else - h2 = Q.length; - if (w2 = ve(4 + h2 + 1), D = w2 + 4, v2[w2 >> 2] = h2, c2 && m2) { - if (m2 = D, D = h2 + 1, h2 = k, 0 < D) { - D = m2 + D - 1; - for (var S2 = 0; S2 < Q.length; ++S2) { - var N = Q.charCodeAt(S2); - if (55296 <= N && 57343 >= N) { - var U = Q.charCodeAt(++S2); - N = 65536 + ((N & 1023) << 10) | U & 1023; + S2 = h2.length; + if (v2 = Dn(4 + S2 + 1), L = v2 + 4, p[v2 >> 2] = S2, f && k) { + if (k = L, L = S2 + 1, S2 = m2, 0 < L) { + L = k + L - 1; + for (var F = 0; F < h2.length; ++F) { + var H = h2.charCodeAt(F); + if (55296 <= H && 57343 >= H) { + var W = h2.charCodeAt(++F); + H = 65536 + ((H & 1023) << 10) | W & 1023; } - if (127 >= N) { - if (m2 >= D) + if (127 >= H) { + if (k >= L) break; - h2[m2++] = N; + S2[k++] = H; } else { - if (2047 >= N) { - if (m2 + 1 >= D) + if (2047 >= H) { + if (k + 1 >= L) break; - h2[m2++] = 192 | N >> 6; + S2[k++] = 192 | H >> 6; } else { - if (65535 >= N) { - if (m2 + 2 >= D) + if (65535 >= H) { + if (k + 2 >= L) break; - h2[m2++] = 224 | N >> 12; + S2[k++] = 224 | H >> 12; } else { - if (m2 + 3 >= D) + if (k + 3 >= L) break; - h2[m2++] = 240 | N >> 18, h2[m2++] = 128 | N >> 12 & 63; + S2[k++] = 240 | H >> 18, S2[k++] = 128 | H >> 12 & 63; } - h2[m2++] = 128 | N >> 6 & 63; + S2[k++] = 128 | H >> 6 & 63; } - h2[m2++] = 128 | N & 63; + S2[k++] = 128 | H & 63; } } - h2[m2] = 0; + S2[k] = 0; } - } else if (m2) - for (m2 = 0; m2 < h2; ++m2) - S2 = Q.charCodeAt(m2), 255 < S2 && (de(D), Y("String has UTF-16 code units that do not fit in 8 bits")), k[D + m2] = S2; + } else if (k) + for (k = 0; k < S2; ++k) + F = h2.charCodeAt(k), 255 < F && (Le(L), K2("String has UTF-16 code units that do not fit in 8 bits")), m2[L + k] = F; else - for (m2 = 0; m2 < h2; ++m2) - k[D + m2] = Q[m2]; - return B !== null && B.push(de, w2), w2; - }, argPackAdvance: 8, readValueFromPointer: XA, V: function(B) { - de(B); + for (k = 0; k < S2; ++k) + m2[L + k] = h2[k]; + return C !== null && C.push(Le, v2), v2; + }, argPackAdvance: 8, readValueFromPointer: fe, V: function(C) { + Le(C); } }); - }, i: function(s, g2, c2) { - if (c2 = hA(c2), g2 === 2) - var B = $A, Q = Ce, h2 = It, m2 = () => F, w2 = 1; + }, i: function(u2, l2, f) { + if (f = SA(f), l2 === 2) + var C = KA, h2 = se, S2 = xt, k = () => x2, v2 = 1; else - g2 === 4 && (B = et2, Q = wt, h2 = Dt, m2 = () => v2, w2 = 2); - nA(s, { name: c2, fromWireType: function(D) { - for (var S2 = v2[D >> 2], N = m2(), U, X = D + 4, z = 0; z <= S2; ++z) { - var AA = D + 4 + z * g2; - (z == S2 || N[AA >> w2] == 0) && (X = B(X, AA - X), U === void 0 ? U = X : (U += String.fromCharCode(0), U += X), X = AA + g2); + l2 === 4 && (C = ct, h2 = kr, S2 = xr, k = () => p, v2 = 2); + Z(u2, { name: f, fromWireType: function(L) { + for (var F = p[L >> 2], H = k(), W, oA = L + 4, vA = 0; vA <= F; ++vA) { + var uA = L + 4 + vA * l2; + (vA == F || H[uA >> v2] == 0) && (oA = C(oA, uA - oA), W === void 0 ? W = oA : (W += String.fromCharCode(0), W += oA), oA = uA + l2); } - return de(D), U; - }, toWireType: function(D, S2) { - typeof S2 != "string" && Y("Cannot pass non-string to C++ string type " + c2); - var N = h2(S2), U = ve(4 + N + g2); - return v2[U >> 2] = N >> w2, Q(S2, U + 4, N + g2), D !== null && D.push(de, U), U; - }, argPackAdvance: 8, readValueFromPointer: XA, V: function(D) { - de(D); + return Le(L), W; + }, toWireType: function(L, F) { + typeof F != "string" && K2("Cannot pass non-string to C++ string type " + f); + var H = S2(F), W = Dn(4 + H + l2); + return p[W >> 2] = H >> v2, h2(F, W + 4, H + l2), L !== null && L.push(Le, W), W; + }, argPackAdvance: 8, readValueFromPointer: fe, V: function(L) { + Le(L); } }); - }, k: function(s, g2, c2, B, Q, h2) { - De[s] = { name: hA(g2), fa: YA(c2, B), W: YA(Q, h2), ia: [] }; - }, h: function(s, g2, c2, B, Q, h2, m2, w2, D, S2) { - De[s].ia.push({ oa: hA(g2), ta: c2, ra: YA(B, Q), sa: h2, za: m2, ya: YA(w2, D), Aa: S2 }); - }, C: function(s, g2) { - g2 = hA(g2), nA(s, { va: true, name: g2, argPackAdvance: 0, fromWireType: function() { + }, k: function(u2, l2, f, C, h2, S2) { + Me[u2] = { name: SA(l2), fa: PA(f, C), W: PA(h2, S2), ia: [] }; + }, h: function(u2, l2, f, C, h2, S2, k, v2, L, F) { + Me[u2].ia.push({ oa: SA(l2), ta: f, ra: PA(C, h2), sa: S2, za: k, ya: PA(v2, L), Aa: F }); + }, C: function(u2, l2) { + l2 = SA(l2), Z(u2, { va: true, name: l2, argPackAdvance: 0, fromWireType: function() { }, toWireType: function() { } }); - }, s: function(s, g2, c2, B, Q) { - s = St[s], g2 = OA(g2), c2 = ct(c2); - var h2 = []; - return v2[B >> 2] = PA(h2), s(g2, c2, h2, Q); - }, t: function(s, g2, c2, B) { - s = St[s], g2 = OA(g2), c2 = ct(c2), s(g2, c2, null, B); - }, g: ZA, m: function(s, g2) { - var c2 = Pr(s, g2), B = c2[0]; - g2 = B.name + "_$" + c2.slice(1).map(function(m2) { - return m2.name; + }, s: function(u2, l2, f, C, h2) { + u2 = vr[u2], l2 = MA(l2), f = Zo(f); + var S2 = []; + return p[C >> 2] = GA(S2), u2(l2, f, S2, h2); + }, t: function(u2, l2, f, C) { + u2 = vr[u2], l2 = MA(l2), f = Zo(f), u2(l2, f, null, C); + }, g: Ae, m: function(u2, l2) { + var f = su(u2, l2), C = f[0]; + l2 = C.name + "_$" + f.slice(1).map(function(k) { + return k.name; }).join("_") + "$"; - var Q = _r[g2]; - if (Q !== void 0) - return Q; - var h2 = Array(s - 1); - return Q = Fn((m2, w2, D, S2) => { - for (var N = 0, U = 0; U < s - 1; ++U) - h2[U] = c2[U + 1].readValueFromPointer(S2 + N), N += c2[U + 1].argPackAdvance; - for (m2 = m2[w2].apply(m2, h2), U = 0; U < s - 1; ++U) - c2[U + 1].ma && c2[U + 1].ma(h2[U]); - if (!B.va) - return B.toWireType(D, m2); - }), _r[g2] = Q; - }, D: function(s) { - 4 < s && (q[s].ga += 1); - }, r: function(s) { - var g2 = OA(s); - KA(g2), ZA(s); + var h2 = jo[l2]; + if (h2 !== void 0) + return h2; + var S2 = Array(u2 - 1); + return h2 = ou((k, v2, L, F) => { + for (var H = 0, W = 0; W < u2 - 1; ++W) + S2[W] = f[W + 1].readValueFromPointer(F + H), H += f[W + 1].argPackAdvance; + for (k = k[v2].apply(k, S2), W = 0; W < u2 - 1; ++W) + f[W + 1].ma && f[W + 1].ma(S2[W]); + if (!C.va) + return C.toWireType(L, k); + }), jo[l2] = h2; + }, D: function(u2) { + 4 < u2 && (J[u2].ga += 1); + }, r: function(u2) { + var l2 = MA(u2); + $A(l2), Ae(u2); }, c: function() { - iA(""); - }, x: function(s, g2, c2) { - k.copyWithin(s, g2, g2 + c2); - }, w: function(s) { - var g2 = k.length; - if (s >>>= 0, 2147483648 < s) + $(""); + }, x: function(u2, l2, f) { + m2.copyWithin(u2, l2, l2 + f); + }, w: function(u2) { + var l2 = m2.length; + if (u2 >>>= 0, 2147483648 < u2) return false; - for (var c2 = 1; 4 >= c2; c2 *= 2) { - var B = g2 * (1 + 0.2 / c2); - B = Math.min(B, s + 100663296); - var Q = Math; - B = Math.max(s, B), Q = Q.min.call(Q, 2147483648, B + (65536 - B % 65536) % 65536); + for (var f = 1; 4 >= f; f *= 2) { + var C = l2 * (1 + 0.2 / f); + C = Math.min(C, u2 + 100663296); + var h2 = Math; + C = Math.max(u2, C), h2 = h2.min.call(h2, 2147483648, C + (65536 - C % 65536) % 65536); A: { try { - E.grow(Q - p.byteLength + 65535 >>> 16), O(); - var h2 = 1; + c2.grow(h2 - Q.byteLength + 65535 >>> 16), U(); + var S2 = 1; break A; } catch { } - h2 = void 0; + S2 = void 0; } - if (h2) + if (S2) return true; } return false; @@ -15013,158 +14022,121 @@ var Us = Xe(() => { return 52; }, u: function() { return 70; - }, y: function(s, g2, c2, B) { - for (var Q = 0, h2 = 0; h2 < c2; h2++) { - var m2 = v2[g2 >> 2], w2 = v2[g2 + 4 >> 2]; - g2 += 8; - for (var D = 0; D < w2; D++) { - var S2 = k[m2 + D], N = Jr[s]; - S2 === 0 || S2 === 10 ? ((s === 1 ? a : u2)(d2(N, 0)), N.length = 0) : N.push(S2); + }, y: function(u2, l2, f, C) { + for (var h2 = 0, S2 = 0; S2 < f; S2++) { + var k = p[l2 >> 2], v2 = p[l2 + 4 >> 2]; + l2 += 8; + for (var L = 0; L < v2; L++) { + var F = m2[k + L], H = au[u2]; + F === 0 || F === 10 ? ((u2 === 1 ? s : a)(E(H, 0)), H.length = 0) : H.push(F); } - Q += w2; + h2 += v2; } - return v2[B >> 2] = Q, 0; + return p[C >> 2] = h2, 0; } }; (function() { - function s(Q) { - t.asm = Q.exports, E = t.asm.E, O(), J = t.asm.J, CA.unshift(t.asm.F), sA--, t.monitorRunDependencies && t.monitorRunDependencies(sA), sA == 0 && (vA !== null && (clearInterval(vA), vA = null), rA && (Q = rA, rA = null, Q())); + function u2(h2) { + t.asm = h2.exports, c2 = t.asm.E, U(), P2 = t.asm.J, lA.unshift(t.asm.F), eA--, t.monitorRunDependencies && t.monitorRunDependencies(eA), eA == 0 && (NA !== null && (clearInterval(NA), NA = null), nA && (h2 = nA, nA = null, h2())); } - function g2(Q) { - s(Q.instance); + function l2(h2) { + u2(h2.instance); } - function c2(Q) { - return te().then(function(h2) { - return WebAssembly.instantiate(h2, B); - }).then(function(h2) { - return h2; - }).then(Q, function(h2) { - u2("failed to asynchronously prepare wasm: " + h2), iA(h2); + function f(h2) { + return te().then(function(S2) { + return WebAssembly.instantiate(S2, C); + }).then(function(S2) { + return S2; + }).then(h2, function(S2) { + a("failed to asynchronously prepare wasm: " + S2), $(S2); }); } - var B = { a: Wr }; - if (sA++, t.monitorRunDependencies && t.monitorRunDependencies(sA), t.instantiateWasm) + var C = { a: Iu }; + if (eA++, t.monitorRunDependencies && t.monitorRunDependencies(eA), t.instantiateWasm) try { - return t.instantiateWasm(B, s); - } catch (Q) { - u2("Module.instantiateWasm callback failed with error: " + Q), n(Q); + return t.instantiateWasm(C, u2); + } catch (h2) { + a("Module.instantiateWasm callback failed with error: " + h2), n(h2); } return function() { - return l2 || typeof WebAssembly.instantiateStreaming != "function" || wA(aA) || typeof fetch != "function" ? c2(g2) : fetch(aA, { credentials: "same-origin" }).then(function(Q) { - return WebAssembly.instantiateStreaming(Q, B).then(g2, function(h2) { - return u2("wasm streaming compile failed: " + h2), u2("falling back to ArrayBuffer instantiation"), c2(g2); + return I || typeof WebAssembly.instantiateStreaming != "function" || HA(tA) || typeof fetch != "function" ? f(l2) : fetch(tA, { credentials: "same-origin" }).then(function(h2) { + return WebAssembly.instantiateStreaming(h2, C).then(l2, function(S2) { + return a("wasm streaming compile failed: " + S2), a("falling back to ArrayBuffer instantiation"), f(l2); }); }); }().catch(n), {}; })(), t.___wasm_call_ctors = function() { return (t.___wasm_call_ctors = t.asm.F).apply(null, arguments); }; - var vt = t.___getTypeName = function() { - return (vt = t.___getTypeName = t.asm.G).apply(null, arguments); + var As = t.___getTypeName = function() { + return (As = t.___getTypeName = t.asm.G).apply(null, arguments); }; t.__embind_initialize_bindings = function() { return (t.__embind_initialize_bindings = t.asm.H).apply(null, arguments); }; - var ve = t._malloc = function() { - return (ve = t._malloc = t.asm.I).apply(null, arguments); - }, de = t._free = function() { - return (de = t._free = t.asm.K).apply(null, arguments); + var Dn = t._malloc = function() { + return (Dn = t._malloc = t.asm.I).apply(null, arguments); + }, Le = t._free = function() { + return (Le = t._free = t.asm.K).apply(null, arguments); }; t.dynCall_jiji = function() { return (t.dynCall_jiji = t.asm.L).apply(null, arguments); }; - var Bt; - rA = function s() { - Bt || f(), Bt || (rA = s); + var Fr; + nA = function u2() { + Fr || es(), Fr || (nA = u2); }; - function f() { - function s() { - if (!Bt && (Bt = true, t.calledRun = true, !C)) { - if (TA(CA), r(t), t.onRuntimeInitialized && t.onRuntimeInitialized(), t.postRun) + function es() { + function u2() { + if (!Fr && (Fr = true, t.calledRun = true, !B)) { + if (FA(lA), r(t), t.onRuntimeInitialized && t.onRuntimeInitialized(), t.postRun) for (typeof t.postRun == "function" && (t.postRun = [t.postRun]); t.postRun.length; ) { - var g2 = t.postRun.shift(); - MA.unshift(g2); + var l2 = t.postRun.shift(); + DA.unshift(l2); } - TA(MA); + FA(DA); } } - if (!(0 < sA)) { + if (!(0 < eA)) { if (t.preRun) for (typeof t.preRun == "function" && (t.preRun = [t.preRun]); t.preRun.length; ) - dA(); - TA(j), 0 < sA || (t.setStatus ? (t.setStatus("Running..."), setTimeout(function() { + RA(); + FA(q), 0 < eA || (t.setStatus ? (t.setStatus("Running..."), setTimeout(function() { setTimeout(function() { t.setStatus(""); - }, 1), s(); - }, 1)) : s()); + }, 1), u2(); + }, 1)) : u2()); } } if (t.preInit) for (typeof t.preInit == "function" && (t.preInit = [t.preInit]); 0 < t.preInit.length; ) t.preInit.pop()(); - return f(), e.ready; + return es(), e.ready; }; - })(), GI = LI; + })(), Fu = Nu; }); -async function jr(A) { - let { default: e } = process.env.SATORI_STANDALONE === "1" ? await Promise.resolve().then(() => (Ls(), Fs)) : await Promise.resolve().then(() => (Us(), Gs)); - return Xn(await e(A)); +async function Ss(A) { + let { default: e } = await Promise.resolve().then(() => (Ds(), ws)); + return Hn(await e(A)); } -var Vn = Xe(() => { - Ns(); - Zr(); +var bs = tt(() => { + ys(); + Pr(); }); -var Zn = {}; -kt(Zn, { getYoga: () => PI, init: () => TI }); -async function OI(A, e) { - let t; - if (typeof A == "string" || typeof Request == "function" && A instanceof Request || typeof URL == "function" && A instanceof URL ? t = await fetch(A) : t = await A, typeof Response == "function" && t instanceof Response) { - if (typeof WebAssembly.instantiateStreaming == "function") - try { - return await WebAssembly.instantiateStreaming(t, e); - } catch (i) { - t.headers.get("Content-Type") !== "application/wasm" && console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n", i); - } - let n = await t.arrayBuffer(); - return await WebAssembly.instantiate(n, e); - } - let r = await WebAssembly.instantiate("buffer" in t ? t.buffer.slice(t.byteOffset, t.byteOffset + t.byteLength) : t, e); - return r instanceof WebAssembly.Instance ? { instance: r, module: t } : r; -} -function TI(A) { - UI({ instantiateWasm(e, t) { - return OI(A, e).then(({ instance: r }) => { - t(r); - }).catch(zn), {}; - } }).then(Hs).catch(zn); -} -function PI() { - return HI; -} -var UI; -var Hs; -var zn; -var HI; -var jn = Xe(() => { - Vn(); - UI = jr, HI = new Promise((A, e) => { - Hs = A, zn = e; - }); +var On = {}; +Lr(On, { getYoga: () => Lu }); +function Lu() { + return Mu; +} +var Mu; +var Tn = tt(() => { + bs(); + Mu = Ss(); }); -var $n = {}; -kt($n, { getYoga: () => JI }); -function JI() { - return _I; -} -var _I; -var Ai = Xe(() => { - Vn(); - _I = jr(); -}); -var wi = K2((yi) => { +var gi = _((ai) => { "use strict"; - Object.defineProperty(yi, "__esModule", { value: true }); - Object.defineProperty(yi, "default", { enumerable: true, get: () => Ac }); - function Ac(A) { + Object.defineProperty(ai, "__esModule", { value: true }); + Object.defineProperty(ai, "default", { enumerable: true, get: () => Vl }); + function Vl(A) { if (A = `${A}`, A === "0") return "0"; if (/^[+-]?(\d+|\d*\.\d+)(e[+-]?\d+)?(%|\w+)?$/.test(A)) @@ -15173,28 +14145,28 @@ var wi = K2((yi) => { return `calc(${A} * -1)`; } }); -var Ra = K2((Di) => { +var wa = _((Ii) => { "use strict"; - Object.defineProperty(Di, "__esModule", { value: true }); - Object.defineProperty(Di, "default", { enumerable: true, get: () => ec2 }); - var ec2 = ["preflight", "container", "accessibility", "pointerEvents", "visibility", "position", "inset", "isolation", "zIndex", "order", "gridColumn", "gridColumnStart", "gridColumnEnd", "gridRow", "gridRowStart", "gridRowEnd", "float", "clear", "margin", "boxSizing", "display", "aspectRatio", "height", "maxHeight", "minHeight", "width", "minWidth", "maxWidth", "flex", "flexShrink", "flexGrow", "flexBasis", "tableLayout", "borderCollapse", "borderSpacing", "transformOrigin", "translate", "rotate", "skew", "scale", "transform", "animation", "cursor", "touchAction", "userSelect", "resize", "scrollSnapType", "scrollSnapAlign", "scrollSnapStop", "scrollMargin", "scrollPadding", "listStylePosition", "listStyleType", "appearance", "columns", "breakBefore", "breakInside", "breakAfter", "gridAutoColumns", "gridAutoFlow", "gridAutoRows", "gridTemplateColumns", "gridTemplateRows", "flexDirection", "flexWrap", "placeContent", "placeItems", "alignContent", "alignItems", "justifyContent", "justifyItems", "gap", "space", "divideWidth", "divideStyle", "divideColor", "divideOpacity", "placeSelf", "alignSelf", "justifySelf", "overflow", "overscrollBehavior", "scrollBehavior", "textOverflow", "whitespace", "wordBreak", "borderRadius", "borderWidth", "borderStyle", "borderColor", "borderOpacity", "backgroundColor", "backgroundOpacity", "backgroundImage", "gradientColorStops", "boxDecorationBreak", "backgroundSize", "backgroundAttachment", "backgroundClip", "backgroundPosition", "backgroundRepeat", "backgroundOrigin", "fill", "stroke", "strokeWidth", "objectFit", "objectPosition", "padding", "textAlign", "textIndent", "verticalAlign", "fontFamily", "fontSize", "fontWeight", "textTransform", "fontStyle", "fontVariantNumeric", "lineHeight", "letterSpacing", "textColor", "textOpacity", "textDecoration", "textDecorationColor", "textDecorationStyle", "textDecorationThickness", "textUnderlineOffset", "fontSmoothing", "placeholderColor", "placeholderOpacity", "caretColor", "accentColor", "opacity", "backgroundBlendMode", "mixBlendMode", "boxShadow", "boxShadowColor", "outlineStyle", "outlineWidth", "outlineOffset", "outlineColor", "ringWidth", "ringColor", "ringOpacity", "ringOffsetWidth", "ringOffsetColor", "blur", "brightness", "contrast", "dropShadow", "grayscale", "hueRotate", "invert", "saturate", "sepia", "filter", "backdropBlur", "backdropBrightness", "backdropContrast", "backdropGrayscale", "backdropHueRotate", "backdropInvert", "backdropOpacity", "backdropSaturate", "backdropSepia", "backdropFilter", "transitionProperty", "transitionDelay", "transitionDuration", "transitionTimingFunction", "willChange", "content"]; + Object.defineProperty(Ii, "__esModule", { value: true }); + Object.defineProperty(Ii, "default", { enumerable: true, get: () => zl }); + var zl = ["preflight", "container", "accessibility", "pointerEvents", "visibility", "position", "inset", "isolation", "zIndex", "order", "gridColumn", "gridColumnStart", "gridColumnEnd", "gridRow", "gridRowStart", "gridRowEnd", "float", "clear", "margin", "boxSizing", "display", "aspectRatio", "height", "maxHeight", "minHeight", "width", "minWidth", "maxWidth", "flex", "flexShrink", "flexGrow", "flexBasis", "tableLayout", "borderCollapse", "borderSpacing", "transformOrigin", "translate", "rotate", "skew", "scale", "transform", "animation", "cursor", "touchAction", "userSelect", "resize", "scrollSnapType", "scrollSnapAlign", "scrollSnapStop", "scrollMargin", "scrollPadding", "listStylePosition", "listStyleType", "appearance", "columns", "breakBefore", "breakInside", "breakAfter", "gridAutoColumns", "gridAutoFlow", "gridAutoRows", "gridTemplateColumns", "gridTemplateRows", "flexDirection", "flexWrap", "placeContent", "placeItems", "alignContent", "alignItems", "justifyContent", "justifyItems", "gap", "space", "divideWidth", "divideStyle", "divideColor", "divideOpacity", "placeSelf", "alignSelf", "justifySelf", "overflow", "overscrollBehavior", "scrollBehavior", "textOverflow", "whitespace", "wordBreak", "borderRadius", "borderWidth", "borderStyle", "borderColor", "borderOpacity", "backgroundColor", "backgroundOpacity", "backgroundImage", "gradientColorStops", "boxDecorationBreak", "backgroundSize", "backgroundAttachment", "backgroundClip", "backgroundPosition", "backgroundRepeat", "backgroundOrigin", "fill", "stroke", "strokeWidth", "objectFit", "objectPosition", "padding", "textAlign", "textIndent", "verticalAlign", "fontFamily", "fontSize", "fontWeight", "textTransform", "fontStyle", "fontVariantNumeric", "lineHeight", "letterSpacing", "textColor", "textOpacity", "textDecoration", "textDecorationColor", "textDecorationStyle", "textDecorationThickness", "textUnderlineOffset", "fontSmoothing", "placeholderColor", "placeholderOpacity", "caretColor", "accentColor", "opacity", "backgroundBlendMode", "mixBlendMode", "boxShadow", "boxShadowColor", "outlineStyle", "outlineWidth", "outlineOffset", "outlineColor", "ringWidth", "ringColor", "ringOpacity", "ringOffsetWidth", "ringOffsetColor", "blur", "brightness", "contrast", "dropShadow", "grayscale", "hueRotate", "invert", "saturate", "sepia", "filter", "backdropBlur", "backdropBrightness", "backdropContrast", "backdropGrayscale", "backdropHueRotate", "backdropInvert", "backdropOpacity", "backdropSaturate", "backdropSepia", "backdropFilter", "transitionProperty", "transitionDelay", "transitionDuration", "transitionTimingFunction", "willChange", "content"]; }); -var Na = K2((Si) => { +var Da = _((ui) => { "use strict"; - Object.defineProperty(Si, "__esModule", { value: true }); - Object.defineProperty(Si, "default", { enumerable: true, get: () => tc }); - function tc(A, e) { + Object.defineProperty(ui, "__esModule", { value: true }); + Object.defineProperty(ui, "default", { enumerable: true, get: () => Zl }); + function Zl(A, e) { return A === void 0 ? e : Array.isArray(A) ? A : [...new Set(e.filter((r) => A !== false && A[r] !== false).concat(Object.keys(A).filter((r) => A[r] !== false)))]; } }); -var bi = K2((e0, Ma) => { - Ma.exports = { content: [], presets: [], darkMode: "media", theme: { screens: { sm: "640px", md: "768px", lg: "1024px", xl: "1280px", "2xl": "1536px" }, colors: ({ colors: A }) => ({ inherit: A.inherit, current: A.current, transparent: A.transparent, black: A.black, white: A.white, slate: A.slate, gray: A.gray, zinc: A.zinc, neutral: A.neutral, stone: A.stone, red: A.red, orange: A.orange, amber: A.amber, yellow: A.yellow, lime: A.lime, green: A.green, emerald: A.emerald, teal: A.teal, cyan: A.cyan, sky: A.sky, blue: A.blue, indigo: A.indigo, violet: A.violet, purple: A.purple, fuchsia: A.fuchsia, pink: A.pink, rose: A.rose }), columns: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", "3xs": "16rem", "2xs": "18rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem" }, spacing: { px: "1px", 0: "0px", 0.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", 11: "2.75rem", 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" }, animation: { none: "none", spin: "spin 1s linear infinite", ping: "ping 1s cubic-bezier(0, 0, 0.2, 1) infinite", pulse: "pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite", bounce: "bounce 1s infinite" }, aspectRatio: { auto: "auto", square: "1 / 1", video: "16 / 9" }, backdropBlur: ({ theme: A }) => A("blur"), backdropBrightness: ({ theme: A }) => A("brightness"), backdropContrast: ({ theme: A }) => A("contrast"), backdropGrayscale: ({ theme: A }) => A("grayscale"), backdropHueRotate: ({ theme: A }) => A("hueRotate"), backdropInvert: ({ theme: A }) => A("invert"), backdropOpacity: ({ theme: A }) => A("opacity"), backdropSaturate: ({ theme: A }) => A("saturate"), backdropSepia: ({ theme: A }) => A("sepia"), backgroundColor: ({ theme: A }) => A("colors"), backgroundImage: { none: "none", "gradient-to-t": "linear-gradient(to top, var(--tw-gradient-stops))", "gradient-to-tr": "linear-gradient(to top right, var(--tw-gradient-stops))", "gradient-to-r": "linear-gradient(to right, var(--tw-gradient-stops))", "gradient-to-br": "linear-gradient(to bottom right, var(--tw-gradient-stops))", "gradient-to-b": "linear-gradient(to bottom, var(--tw-gradient-stops))", "gradient-to-bl": "linear-gradient(to bottom left, var(--tw-gradient-stops))", "gradient-to-l": "linear-gradient(to left, var(--tw-gradient-stops))", "gradient-to-tl": "linear-gradient(to top left, var(--tw-gradient-stops))" }, backgroundOpacity: ({ theme: A }) => A("opacity"), backgroundPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, backgroundSize: { auto: "auto", cover: "cover", contain: "contain" }, blur: { 0: "0", none: "0", sm: "4px", DEFAULT: "8px", md: "12px", lg: "16px", xl: "24px", "2xl": "40px", "3xl": "64px" }, brightness: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5", 200: "2" }, borderColor: ({ theme: A }) => ({ ...A("colors"), DEFAULT: A("colors.gray.200", "currentColor") }), borderOpacity: ({ theme: A }) => A("opacity"), borderRadius: { none: "0px", sm: "0.125rem", DEFAULT: "0.25rem", md: "0.375rem", lg: "0.5rem", xl: "0.75rem", "2xl": "1rem", "3xl": "1.5rem", full: "9999px" }, borderSpacing: ({ theme: A }) => ({ ...A("spacing") }), borderWidth: { DEFAULT: "1px", 0: "0px", 2: "2px", 4: "4px", 8: "8px" }, boxShadow: { sm: "0 1px 2px 0 rgb(0 0 0 / 0.05)", DEFAULT: "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)", md: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)", lg: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)", xl: "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)", "2xl": "0 25px 50px -12px rgb(0 0 0 / 0.25)", inner: "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)", none: "none" }, boxShadowColor: ({ theme: A }) => A("colors"), caretColor: ({ theme: A }) => A("colors"), accentColor: ({ theme: A }) => ({ ...A("colors"), auto: "auto" }), contrast: { 0: "0", 50: ".5", 75: ".75", 100: "1", 125: "1.25", 150: "1.5", 200: "2" }, container: {}, content: { none: "none" }, cursor: { auto: "auto", default: "default", pointer: "pointer", wait: "wait", text: "text", move: "move", help: "help", "not-allowed": "not-allowed", none: "none", "context-menu": "context-menu", progress: "progress", cell: "cell", crosshair: "crosshair", "vertical-text": "vertical-text", alias: "alias", copy: "copy", "no-drop": "no-drop", grab: "grab", grabbing: "grabbing", "all-scroll": "all-scroll", "col-resize": "col-resize", "row-resize": "row-resize", "n-resize": "n-resize", "e-resize": "e-resize", "s-resize": "s-resize", "w-resize": "w-resize", "ne-resize": "ne-resize", "nw-resize": "nw-resize", "se-resize": "se-resize", "sw-resize": "sw-resize", "ew-resize": "ew-resize", "ns-resize": "ns-resize", "nesw-resize": "nesw-resize", "nwse-resize": "nwse-resize", "zoom-in": "zoom-in", "zoom-out": "zoom-out" }, divideColor: ({ theme: A }) => A("borderColor"), divideOpacity: ({ theme: A }) => A("borderOpacity"), divideWidth: ({ theme: A }) => A("borderWidth"), dropShadow: { sm: "0 1px 1px rgb(0 0 0 / 0.05)", DEFAULT: ["0 1px 2px rgb(0 0 0 / 0.1)", "0 1px 1px rgb(0 0 0 / 0.06)"], md: ["0 4px 3px rgb(0 0 0 / 0.07)", "0 2px 2px rgb(0 0 0 / 0.06)"], lg: ["0 10px 8px rgb(0 0 0 / 0.04)", "0 4px 3px rgb(0 0 0 / 0.1)"], xl: ["0 20px 13px rgb(0 0 0 / 0.03)", "0 8px 5px rgb(0 0 0 / 0.08)"], "2xl": "0 25px 25px rgb(0 0 0 / 0.15)", none: "0 0 #0000" }, fill: ({ theme: A }) => A("colors"), grayscale: { 0: "0", DEFAULT: "100%" }, hueRotate: { 0: "0deg", 15: "15deg", 30: "30deg", 60: "60deg", 90: "90deg", 180: "180deg" }, invert: { 0: "0", DEFAULT: "100%" }, flex: { 1: "1 1 0%", auto: "1 1 auto", initial: "0 1 auto", none: "none" }, flexBasis: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%" }), flexGrow: { 0: "0", DEFAULT: "1" }, flexShrink: { 0: "0", DEFAULT: "1" }, fontFamily: { sans: ["ui-sans-serif", "system-ui", "-apple-system", "BlinkMacSystemFont", '"Segoe UI"', "Roboto", '"Helvetica Neue"', "Arial", '"Noto Sans"', "sans-serif", '"Apple Color Emoji"', '"Segoe UI Emoji"', '"Segoe UI Symbol"', '"Noto Color Emoji"'], serif: ["ui-serif", "Georgia", "Cambria", '"Times New Roman"', "Times", "serif"], mono: ["ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", '"Liberation Mono"', '"Courier New"', "monospace"] }, fontSize: { xs: ["0.75rem", { lineHeight: "1rem" }], sm: ["0.875rem", { lineHeight: "1.25rem" }], base: ["1rem", { lineHeight: "1.5rem" }], lg: ["1.125rem", { lineHeight: "1.75rem" }], xl: ["1.25rem", { lineHeight: "1.75rem" }], "2xl": ["1.5rem", { lineHeight: "2rem" }], "3xl": ["1.875rem", { lineHeight: "2.25rem" }], "4xl": ["2.25rem", { lineHeight: "2.5rem" }], "5xl": ["3rem", { lineHeight: "1" }], "6xl": ["3.75rem", { lineHeight: "1" }], "7xl": ["4.5rem", { lineHeight: "1" }], "8xl": ["6rem", { lineHeight: "1" }], "9xl": ["8rem", { lineHeight: "1" }] }, fontWeight: { thin: "100", extralight: "200", light: "300", normal: "400", medium: "500", semibold: "600", bold: "700", extrabold: "800", black: "900" }, gap: ({ theme: A }) => A("spacing"), gradientColorStops: ({ theme: A }) => A("colors"), gridAutoColumns: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridAutoRows: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridColumn: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-7": "span 7 / span 7", "span-8": "span 8 / span 8", "span-9": "span 9 / span 9", "span-10": "span 10 / span 10", "span-11": "span 11 / span 11", "span-12": "span 12 / span 12", "span-full": "1 / -1" }, gridColumnEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridColumnStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridRow: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-full": "1 / -1" }, gridRowStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridRowEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridTemplateColumns: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))", 7: "repeat(7, minmax(0, 1fr))", 8: "repeat(8, minmax(0, 1fr))", 9: "repeat(9, minmax(0, 1fr))", 10: "repeat(10, minmax(0, 1fr))", 11: "repeat(11, minmax(0, 1fr))", 12: "repeat(12, minmax(0, 1fr))" }, gridTemplateRows: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))" }, height: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), inset: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), keyframes: { spin: { to: { transform: "rotate(360deg)" } }, ping: { "75%, 100%": { transform: "scale(2)", opacity: "0" } }, pulse: { "50%": { opacity: ".5" } }, bounce: { "0%, 100%": { transform: "translateY(-25%)", animationTimingFunction: "cubic-bezier(0.8,0,1,1)" }, "50%": { transform: "none", animationTimingFunction: "cubic-bezier(0,0,0.2,1)" } } }, letterSpacing: { tighter: "-0.05em", tight: "-0.025em", normal: "0em", wide: "0.025em", wider: "0.05em", widest: "0.1em" }, lineHeight: { none: "1", tight: "1.25", snug: "1.375", normal: "1.5", relaxed: "1.625", loose: "2", 3: ".75rem", 4: "1rem", 5: "1.25rem", 6: "1.5rem", 7: "1.75rem", 8: "2rem", 9: "2.25rem", 10: "2.5rem" }, listStyleType: { none: "none", disc: "disc", decimal: "decimal" }, margin: ({ theme: A }) => ({ auto: "auto", ...A("spacing") }), maxHeight: ({ theme: A }) => ({ ...A("spacing"), full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), maxWidth: ({ theme: A, breakpoints: e }) => ({ none: "none", 0: "0rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem", full: "100%", min: "min-content", max: "max-content", fit: "fit-content", prose: "65ch", ...e(A("screens")) }), minHeight: { 0: "0px", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }, minWidth: { 0: "0px", full: "100%", min: "min-content", max: "max-content", fit: "fit-content" }, objectPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, opacity: { 0: "0", 5: "0.05", 10: "0.1", 20: "0.2", 25: "0.25", 30: "0.3", 40: "0.4", 50: "0.5", 60: "0.6", 70: "0.7", 75: "0.75", 80: "0.8", 90: "0.9", 95: "0.95", 100: "1" }, order: { first: "-9999", last: "9999", none: "0", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12" }, padding: ({ theme: A }) => A("spacing"), placeholderColor: ({ theme: A }) => A("colors"), placeholderOpacity: ({ theme: A }) => A("opacity"), outlineColor: ({ theme: A }) => A("colors"), outlineOffset: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, outlineWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringColor: ({ theme: A }) => ({ DEFAULT: A("colors.blue.500", "#3b82f6"), ...A("colors") }), ringOffsetColor: ({ theme: A }) => A("colors"), ringOffsetWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringOpacity: ({ theme: A }) => ({ DEFAULT: "0.5", ...A("opacity") }), ringWidth: { DEFAULT: "3px", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, rotate: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg", 45: "45deg", 90: "90deg", 180: "180deg" }, saturate: { 0: "0", 50: ".5", 100: "1", 150: "1.5", 200: "2" }, scale: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5" }, scrollMargin: ({ theme: A }) => ({ ...A("spacing") }), scrollPadding: ({ theme: A }) => A("spacing"), sepia: { 0: "0", DEFAULT: "100%" }, skew: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg" }, space: ({ theme: A }) => ({ ...A("spacing") }), stroke: ({ theme: A }) => A("colors"), strokeWidth: { 0: "0", 1: "1", 2: "2" }, textColor: ({ theme: A }) => A("colors"), textDecorationColor: ({ theme: A }) => A("colors"), textDecorationThickness: { auto: "auto", "from-font": "from-font", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textUnderlineOffset: { auto: "auto", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textIndent: ({ theme: A }) => ({ ...A("spacing") }), textOpacity: ({ theme: A }) => A("opacity"), transformOrigin: { center: "center", top: "top", "top-right": "top right", right: "right", "bottom-right": "bottom right", bottom: "bottom", "bottom-left": "bottom left", left: "left", "top-left": "top left" }, transitionDelay: { 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionDuration: { DEFAULT: "150ms", 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionProperty: { none: "none", all: "all", DEFAULT: "color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter", colors: "color, background-color, border-color, text-decoration-color, fill, stroke", opacity: "opacity", shadow: "box-shadow", transform: "transform" }, transitionTimingFunction: { DEFAULT: "cubic-bezier(0.4, 0, 0.2, 1)", linear: "linear", in: "cubic-bezier(0.4, 0, 1, 1)", out: "cubic-bezier(0, 0, 0.2, 1)", "in-out": "cubic-bezier(0.4, 0, 0.2, 1)" }, translate: ({ theme: A }) => ({ ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), width: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%", screen: "100vw", min: "min-content", max: "max-content", fit: "fit-content" }), willChange: { auto: "auto", scroll: "scroll-position", contents: "contents", transform: "transform" }, zIndex: { auto: "auto", 0: "0", 10: "10", 20: "20", 30: "30", 40: "40", 50: "50" } }, variantOrder: ["first", "last", "odd", "even", "visited", "checked", "empty", "read-only", "group-hover", "group-focus", "focus-within", "hover", "focus", "focus-visible", "active", "disabled"], plugins: [] }; +var li = _(($p, Sa) => { + Sa.exports = { content: [], presets: [], darkMode: "media", theme: { screens: { sm: "640px", md: "768px", lg: "1024px", xl: "1280px", "2xl": "1536px" }, colors: ({ colors: A }) => ({ inherit: A.inherit, current: A.current, transparent: A.transparent, black: A.black, white: A.white, slate: A.slate, gray: A.gray, zinc: A.zinc, neutral: A.neutral, stone: A.stone, red: A.red, orange: A.orange, amber: A.amber, yellow: A.yellow, lime: A.lime, green: A.green, emerald: A.emerald, teal: A.teal, cyan: A.cyan, sky: A.sky, blue: A.blue, indigo: A.indigo, violet: A.violet, purple: A.purple, fuchsia: A.fuchsia, pink: A.pink, rose: A.rose }), columns: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", "3xs": "16rem", "2xs": "18rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem" }, spacing: { px: "1px", 0: "0px", 0.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", 11: "2.75rem", 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" }, animation: { none: "none", spin: "spin 1s linear infinite", ping: "ping 1s cubic-bezier(0, 0, 0.2, 1) infinite", pulse: "pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite", bounce: "bounce 1s infinite" }, aspectRatio: { auto: "auto", square: "1 / 1", video: "16 / 9" }, backdropBlur: ({ theme: A }) => A("blur"), backdropBrightness: ({ theme: A }) => A("brightness"), backdropContrast: ({ theme: A }) => A("contrast"), backdropGrayscale: ({ theme: A }) => A("grayscale"), backdropHueRotate: ({ theme: A }) => A("hueRotate"), backdropInvert: ({ theme: A }) => A("invert"), backdropOpacity: ({ theme: A }) => A("opacity"), backdropSaturate: ({ theme: A }) => A("saturate"), backdropSepia: ({ theme: A }) => A("sepia"), backgroundColor: ({ theme: A }) => A("colors"), backgroundImage: { none: "none", "gradient-to-t": "linear-gradient(to top, var(--tw-gradient-stops))", "gradient-to-tr": "linear-gradient(to top right, var(--tw-gradient-stops))", "gradient-to-r": "linear-gradient(to right, var(--tw-gradient-stops))", "gradient-to-br": "linear-gradient(to bottom right, var(--tw-gradient-stops))", "gradient-to-b": "linear-gradient(to bottom, var(--tw-gradient-stops))", "gradient-to-bl": "linear-gradient(to bottom left, var(--tw-gradient-stops))", "gradient-to-l": "linear-gradient(to left, var(--tw-gradient-stops))", "gradient-to-tl": "linear-gradient(to top left, var(--tw-gradient-stops))" }, backgroundOpacity: ({ theme: A }) => A("opacity"), backgroundPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, backgroundSize: { auto: "auto", cover: "cover", contain: "contain" }, blur: { 0: "0", none: "0", sm: "4px", DEFAULT: "8px", md: "12px", lg: "16px", xl: "24px", "2xl": "40px", "3xl": "64px" }, brightness: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5", 200: "2" }, borderColor: ({ theme: A }) => ({ ...A("colors"), DEFAULT: A("colors.gray.200", "currentColor") }), borderOpacity: ({ theme: A }) => A("opacity"), borderRadius: { none: "0px", sm: "0.125rem", DEFAULT: "0.25rem", md: "0.375rem", lg: "0.5rem", xl: "0.75rem", "2xl": "1rem", "3xl": "1.5rem", full: "9999px" }, borderSpacing: ({ theme: A }) => ({ ...A("spacing") }), borderWidth: { DEFAULT: "1px", 0: "0px", 2: "2px", 4: "4px", 8: "8px" }, boxShadow: { sm: "0 1px 2px 0 rgb(0 0 0 / 0.05)", DEFAULT: "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)", md: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)", lg: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)", xl: "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)", "2xl": "0 25px 50px -12px rgb(0 0 0 / 0.25)", inner: "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)", none: "none" }, boxShadowColor: ({ theme: A }) => A("colors"), caretColor: ({ theme: A }) => A("colors"), accentColor: ({ theme: A }) => ({ ...A("colors"), auto: "auto" }), contrast: { 0: "0", 50: ".5", 75: ".75", 100: "1", 125: "1.25", 150: "1.5", 200: "2" }, container: {}, content: { none: "none" }, cursor: { auto: "auto", default: "default", pointer: "pointer", wait: "wait", text: "text", move: "move", help: "help", "not-allowed": "not-allowed", none: "none", "context-menu": "context-menu", progress: "progress", cell: "cell", crosshair: "crosshair", "vertical-text": "vertical-text", alias: "alias", copy: "copy", "no-drop": "no-drop", grab: "grab", grabbing: "grabbing", "all-scroll": "all-scroll", "col-resize": "col-resize", "row-resize": "row-resize", "n-resize": "n-resize", "e-resize": "e-resize", "s-resize": "s-resize", "w-resize": "w-resize", "ne-resize": "ne-resize", "nw-resize": "nw-resize", "se-resize": "se-resize", "sw-resize": "sw-resize", "ew-resize": "ew-resize", "ns-resize": "ns-resize", "nesw-resize": "nesw-resize", "nwse-resize": "nwse-resize", "zoom-in": "zoom-in", "zoom-out": "zoom-out" }, divideColor: ({ theme: A }) => A("borderColor"), divideOpacity: ({ theme: A }) => A("borderOpacity"), divideWidth: ({ theme: A }) => A("borderWidth"), dropShadow: { sm: "0 1px 1px rgb(0 0 0 / 0.05)", DEFAULT: ["0 1px 2px rgb(0 0 0 / 0.1)", "0 1px 1px rgb(0 0 0 / 0.06)"], md: ["0 4px 3px rgb(0 0 0 / 0.07)", "0 2px 2px rgb(0 0 0 / 0.06)"], lg: ["0 10px 8px rgb(0 0 0 / 0.04)", "0 4px 3px rgb(0 0 0 / 0.1)"], xl: ["0 20px 13px rgb(0 0 0 / 0.03)", "0 8px 5px rgb(0 0 0 / 0.08)"], "2xl": "0 25px 25px rgb(0 0 0 / 0.15)", none: "0 0 #0000" }, fill: ({ theme: A }) => A("colors"), grayscale: { 0: "0", DEFAULT: "100%" }, hueRotate: { 0: "0deg", 15: "15deg", 30: "30deg", 60: "60deg", 90: "90deg", 180: "180deg" }, invert: { 0: "0", DEFAULT: "100%" }, flex: { 1: "1 1 0%", auto: "1 1 auto", initial: "0 1 auto", none: "none" }, flexBasis: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%" }), flexGrow: { 0: "0", DEFAULT: "1" }, flexShrink: { 0: "0", DEFAULT: "1" }, fontFamily: { sans: ["ui-sans-serif", "system-ui", "-apple-system", "BlinkMacSystemFont", '"Segoe UI"', "Roboto", '"Helvetica Neue"', "Arial", '"Noto Sans"', "sans-serif", '"Apple Color Emoji"', '"Segoe UI Emoji"', '"Segoe UI Symbol"', '"Noto Color Emoji"'], serif: ["ui-serif", "Georgia", "Cambria", '"Times New Roman"', "Times", "serif"], mono: ["ui-monospace", "SFMono-Regular", "Menlo", "Monaco", "Consolas", '"Liberation Mono"', '"Courier New"', "monospace"] }, fontSize: { xs: ["0.75rem", { lineHeight: "1rem" }], sm: ["0.875rem", { lineHeight: "1.25rem" }], base: ["1rem", { lineHeight: "1.5rem" }], lg: ["1.125rem", { lineHeight: "1.75rem" }], xl: ["1.25rem", { lineHeight: "1.75rem" }], "2xl": ["1.5rem", { lineHeight: "2rem" }], "3xl": ["1.875rem", { lineHeight: "2.25rem" }], "4xl": ["2.25rem", { lineHeight: "2.5rem" }], "5xl": ["3rem", { lineHeight: "1" }], "6xl": ["3.75rem", { lineHeight: "1" }], "7xl": ["4.5rem", { lineHeight: "1" }], "8xl": ["6rem", { lineHeight: "1" }], "9xl": ["8rem", { lineHeight: "1" }] }, fontWeight: { thin: "100", extralight: "200", light: "300", normal: "400", medium: "500", semibold: "600", bold: "700", extrabold: "800", black: "900" }, gap: ({ theme: A }) => A("spacing"), gradientColorStops: ({ theme: A }) => A("colors"), gridAutoColumns: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridAutoRows: { auto: "auto", min: "min-content", max: "max-content", fr: "minmax(0, 1fr)" }, gridColumn: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-7": "span 7 / span 7", "span-8": "span 8 / span 8", "span-9": "span 9 / span 9", "span-10": "span 10 / span 10", "span-11": "span 11 / span 11", "span-12": "span 12 / span 12", "span-full": "1 / -1" }, gridColumnEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridColumnStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12", 13: "13" }, gridRow: { auto: "auto", "span-1": "span 1 / span 1", "span-2": "span 2 / span 2", "span-3": "span 3 / span 3", "span-4": "span 4 / span 4", "span-5": "span 5 / span 5", "span-6": "span 6 / span 6", "span-full": "1 / -1" }, gridRowStart: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridRowEnd: { auto: "auto", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7" }, gridTemplateColumns: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))", 7: "repeat(7, minmax(0, 1fr))", 8: "repeat(8, minmax(0, 1fr))", 9: "repeat(9, minmax(0, 1fr))", 10: "repeat(10, minmax(0, 1fr))", 11: "repeat(11, minmax(0, 1fr))", 12: "repeat(12, minmax(0, 1fr))" }, gridTemplateRows: { none: "none", 1: "repeat(1, minmax(0, 1fr))", 2: "repeat(2, minmax(0, 1fr))", 3: "repeat(3, minmax(0, 1fr))", 4: "repeat(4, minmax(0, 1fr))", 5: "repeat(5, minmax(0, 1fr))", 6: "repeat(6, minmax(0, 1fr))" }, height: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), inset: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), keyframes: { spin: { to: { transform: "rotate(360deg)" } }, ping: { "75%, 100%": { transform: "scale(2)", opacity: "0" } }, pulse: { "50%": { opacity: ".5" } }, bounce: { "0%, 100%": { transform: "translateY(-25%)", animationTimingFunction: "cubic-bezier(0.8,0,1,1)" }, "50%": { transform: "none", animationTimingFunction: "cubic-bezier(0,0,0.2,1)" } } }, letterSpacing: { tighter: "-0.05em", tight: "-0.025em", normal: "0em", wide: "0.025em", wider: "0.05em", widest: "0.1em" }, lineHeight: { none: "1", tight: "1.25", snug: "1.375", normal: "1.5", relaxed: "1.625", loose: "2", 3: ".75rem", 4: "1rem", 5: "1.25rem", 6: "1.5rem", 7: "1.75rem", 8: "2rem", 9: "2.25rem", 10: "2.5rem" }, listStyleType: { none: "none", disc: "disc", decimal: "decimal" }, margin: ({ theme: A }) => ({ auto: "auto", ...A("spacing") }), maxHeight: ({ theme: A }) => ({ ...A("spacing"), full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }), maxWidth: ({ theme: A, breakpoints: e }) => ({ none: "none", 0: "0rem", xs: "20rem", sm: "24rem", md: "28rem", lg: "32rem", xl: "36rem", "2xl": "42rem", "3xl": "48rem", "4xl": "56rem", "5xl": "64rem", "6xl": "72rem", "7xl": "80rem", full: "100%", min: "min-content", max: "max-content", fit: "fit-content", prose: "65ch", ...e(A("screens")) }), minHeight: { 0: "0px", full: "100%", screen: "100vh", min: "min-content", max: "max-content", fit: "fit-content" }, minWidth: { 0: "0px", full: "100%", min: "min-content", max: "max-content", fit: "fit-content" }, objectPosition: { bottom: "bottom", center: "center", left: "left", "left-bottom": "left bottom", "left-top": "left top", right: "right", "right-bottom": "right bottom", "right-top": "right top", top: "top" }, opacity: { 0: "0", 5: "0.05", 10: "0.1", 20: "0.2", 25: "0.25", 30: "0.3", 40: "0.4", 50: "0.5", 60: "0.6", 70: "0.7", 75: "0.75", 80: "0.8", 90: "0.9", 95: "0.95", 100: "1" }, order: { first: "-9999", last: "9999", none: "0", 1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 10: "10", 11: "11", 12: "12" }, padding: ({ theme: A }) => A("spacing"), placeholderColor: ({ theme: A }) => A("colors"), placeholderOpacity: ({ theme: A }) => A("opacity"), outlineColor: ({ theme: A }) => A("colors"), outlineOffset: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, outlineWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringColor: ({ theme: A }) => ({ DEFAULT: A("colors.blue.500", "#3b82f6"), ...A("colors") }), ringOffsetColor: ({ theme: A }) => A("colors"), ringOffsetWidth: { 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, ringOpacity: ({ theme: A }) => ({ DEFAULT: "0.5", ...A("opacity") }), ringWidth: { DEFAULT: "3px", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, rotate: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg", 45: "45deg", 90: "90deg", 180: "180deg" }, saturate: { 0: "0", 50: ".5", 100: "1", 150: "1.5", 200: "2" }, scale: { 0: "0", 50: ".5", 75: ".75", 90: ".9", 95: ".95", 100: "1", 105: "1.05", 110: "1.1", 125: "1.25", 150: "1.5" }, scrollMargin: ({ theme: A }) => ({ ...A("spacing") }), scrollPadding: ({ theme: A }) => A("spacing"), sepia: { 0: "0", DEFAULT: "100%" }, skew: { 0: "0deg", 1: "1deg", 2: "2deg", 3: "3deg", 6: "6deg", 12: "12deg" }, space: ({ theme: A }) => ({ ...A("spacing") }), stroke: ({ theme: A }) => A("colors"), strokeWidth: { 0: "0", 1: "1", 2: "2" }, textColor: ({ theme: A }) => A("colors"), textDecorationColor: ({ theme: A }) => A("colors"), textDecorationThickness: { auto: "auto", "from-font": "from-font", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textUnderlineOffset: { auto: "auto", 0: "0px", 1: "1px", 2: "2px", 4: "4px", 8: "8px" }, textIndent: ({ theme: A }) => ({ ...A("spacing") }), textOpacity: ({ theme: A }) => A("opacity"), transformOrigin: { center: "center", top: "top", "top-right": "top right", right: "right", "bottom-right": "bottom right", bottom: "bottom", "bottom-left": "bottom left", left: "left", "top-left": "top left" }, transitionDelay: { 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionDuration: { DEFAULT: "150ms", 75: "75ms", 100: "100ms", 150: "150ms", 200: "200ms", 300: "300ms", 500: "500ms", 700: "700ms", 1e3: "1000ms" }, transitionProperty: { none: "none", all: "all", DEFAULT: "color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter", colors: "color, background-color, border-color, text-decoration-color, fill, stroke", opacity: "opacity", shadow: "box-shadow", transform: "transform" }, transitionTimingFunction: { DEFAULT: "cubic-bezier(0.4, 0, 0.2, 1)", linear: "linear", in: "cubic-bezier(0.4, 0, 1, 1)", out: "cubic-bezier(0, 0, 0.2, 1)", "in-out": "cubic-bezier(0.4, 0, 0.2, 1)" }, translate: ({ theme: A }) => ({ ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", full: "100%" }), width: ({ theme: A }) => ({ auto: "auto", ...A("spacing"), "1/2": "50%", "1/3": "33.333333%", "2/3": "66.666667%", "1/4": "25%", "2/4": "50%", "3/4": "75%", "1/5": "20%", "2/5": "40%", "3/5": "60%", "4/5": "80%", "1/6": "16.666667%", "2/6": "33.333333%", "3/6": "50%", "4/6": "66.666667%", "5/6": "83.333333%", "1/12": "8.333333%", "2/12": "16.666667%", "3/12": "25%", "4/12": "33.333333%", "5/12": "41.666667%", "6/12": "50%", "7/12": "58.333333%", "8/12": "66.666667%", "9/12": "75%", "10/12": "83.333333%", "11/12": "91.666667%", full: "100%", screen: "100vw", min: "min-content", max: "max-content", fit: "fit-content" }), willChange: { auto: "auto", scroll: "scroll-position", contents: "contents", transform: "transform" }, zIndex: { auto: "auto", 0: "0", 10: "10", 20: "20", 30: "30", 40: "40", 50: "50" } }, variantOrder: ["first", "last", "odd", "even", "visited", "checked", "empty", "read-only", "group-hover", "group-focus", "focus-within", "hover", "focus", "focus-visible", "active", "disabled"], plugins: [] }; }); -var fn = {}; -kt(fn, { default: () => rc }); -var rc; -var Bn = Xe(() => { - rc = { info(A, e) { +var nn = {}; +Lr(nn, { default: () => jl }); +var jl; +var on = tt(() => { + jl = { info(A, e) { console.info(...Array.isArray(A) ? [A] : [e, A]); }, warn(A, e) { console.warn(...Array.isArray(A) ? [A] : [e, A]); @@ -15202,34 +14174,34 @@ var Bn = Xe(() => { console.error(...Array.isArray(A) ? [A] : [e, A]); } }; }); -var Fa = K2((vi) => { +var ba = _((ci) => { "use strict"; - Object.defineProperty(vi, "__esModule", { value: true }); - Object.defineProperty(vi, "default", { enumerable: true, get: () => oc }); - var nc = ic((Bn(), Yr(fn))); - function ic(A) { + Object.defineProperty(ci, "__esModule", { value: true }); + Object.defineProperty(ci, "default", { enumerable: true, get: () => ec2 }); + var $l = Ac((on(), Gr(nn))); + function Ac(A) { return A && A.__esModule ? A : { default: A }; } - function or({ version: A, from: e, to: t }) { - nc.default.warn(`${e}-color-renamed`, [`As of Tailwind CSS ${A}, \`${e}\` has been renamed to \`${t}\`.`, "Update your configuration file to silence this warning."]); + function Yt({ version: A, from: e, to: t }) { + $l.default.warn(`${e}-color-renamed`, [`As of Tailwind CSS ${A}, \`${e}\` has been renamed to \`${t}\`.`, "Update your configuration file to silence this warning."]); } - var oc = { inherit: "inherit", current: "currentColor", transparent: "transparent", black: "#000", white: "#fff", slate: { 50: "#f8fafc", 100: "#f1f5f9", 200: "#e2e8f0", 300: "#cbd5e1", 400: "#94a3b8", 500: "#64748b", 600: "#475569", 700: "#334155", 800: "#1e293b", 900: "#0f172a" }, gray: { 50: "#f9fafb", 100: "#f3f4f6", 200: "#e5e7eb", 300: "#d1d5db", 400: "#9ca3af", 500: "#6b7280", 600: "#4b5563", 700: "#374151", 800: "#1f2937", 900: "#111827" }, zinc: { 50: "#fafafa", 100: "#f4f4f5", 200: "#e4e4e7", 300: "#d4d4d8", 400: "#a1a1aa", 500: "#71717a", 600: "#52525b", 700: "#3f3f46", 800: "#27272a", 900: "#18181b" }, neutral: { 50: "#fafafa", 100: "#f5f5f5", 200: "#e5e5e5", 300: "#d4d4d4", 400: "#a3a3a3", 500: "#737373", 600: "#525252", 700: "#404040", 800: "#262626", 900: "#171717" }, stone: { 50: "#fafaf9", 100: "#f5f5f4", 200: "#e7e5e4", 300: "#d6d3d1", 400: "#a8a29e", 500: "#78716c", 600: "#57534e", 700: "#44403c", 800: "#292524", 900: "#1c1917" }, red: { 50: "#fef2f2", 100: "#fee2e2", 200: "#fecaca", 300: "#fca5a5", 400: "#f87171", 500: "#ef4444", 600: "#dc2626", 700: "#b91c1c", 800: "#991b1b", 900: "#7f1d1d" }, orange: { 50: "#fff7ed", 100: "#ffedd5", 200: "#fed7aa", 300: "#fdba74", 400: "#fb923c", 500: "#f97316", 600: "#ea580c", 700: "#c2410c", 800: "#9a3412", 900: "#7c2d12" }, amber: { 50: "#fffbeb", 100: "#fef3c7", 200: "#fde68a", 300: "#fcd34d", 400: "#fbbf24", 500: "#f59e0b", 600: "#d97706", 700: "#b45309", 800: "#92400e", 900: "#78350f" }, yellow: { 50: "#fefce8", 100: "#fef9c3", 200: "#fef08a", 300: "#fde047", 400: "#facc15", 500: "#eab308", 600: "#ca8a04", 700: "#a16207", 800: "#854d0e", 900: "#713f12" }, lime: { 50: "#f7fee7", 100: "#ecfccb", 200: "#d9f99d", 300: "#bef264", 400: "#a3e635", 500: "#84cc16", 600: "#65a30d", 700: "#4d7c0f", 800: "#3f6212", 900: "#365314" }, green: { 50: "#f0fdf4", 100: "#dcfce7", 200: "#bbf7d0", 300: "#86efac", 400: "#4ade80", 500: "#22c55e", 600: "#16a34a", 700: "#15803d", 800: "#166534", 900: "#14532d" }, emerald: { 50: "#ecfdf5", 100: "#d1fae5", 200: "#a7f3d0", 300: "#6ee7b7", 400: "#34d399", 500: "#10b981", 600: "#059669", 700: "#047857", 800: "#065f46", 900: "#064e3b" }, teal: { 50: "#f0fdfa", 100: "#ccfbf1", 200: "#99f6e4", 300: "#5eead4", 400: "#2dd4bf", 500: "#14b8a6", 600: "#0d9488", 700: "#0f766e", 800: "#115e59", 900: "#134e4a" }, cyan: { 50: "#ecfeff", 100: "#cffafe", 200: "#a5f3fc", 300: "#67e8f9", 400: "#22d3ee", 500: "#06b6d4", 600: "#0891b2", 700: "#0e7490", 800: "#155e75", 900: "#164e63" }, sky: { 50: "#f0f9ff", 100: "#e0f2fe", 200: "#bae6fd", 300: "#7dd3fc", 400: "#38bdf8", 500: "#0ea5e9", 600: "#0284c7", 700: "#0369a1", 800: "#075985", 900: "#0c4a6e" }, blue: { 50: "#eff6ff", 100: "#dbeafe", 200: "#bfdbfe", 300: "#93c5fd", 400: "#60a5fa", 500: "#3b82f6", 600: "#2563eb", 700: "#1d4ed8", 800: "#1e40af", 900: "#1e3a8a" }, indigo: { 50: "#eef2ff", 100: "#e0e7ff", 200: "#c7d2fe", 300: "#a5b4fc", 400: "#818cf8", 500: "#6366f1", 600: "#4f46e5", 700: "#4338ca", 800: "#3730a3", 900: "#312e81" }, violet: { 50: "#f5f3ff", 100: "#ede9fe", 200: "#ddd6fe", 300: "#c4b5fd", 400: "#a78bfa", 500: "#8b5cf6", 600: "#7c3aed", 700: "#6d28d9", 800: "#5b21b6", 900: "#4c1d95" }, purple: { 50: "#faf5ff", 100: "#f3e8ff", 200: "#e9d5ff", 300: "#d8b4fe", 400: "#c084fc", 500: "#a855f7", 600: "#9333ea", 700: "#7e22ce", 800: "#6b21a8", 900: "#581c87" }, fuchsia: { 50: "#fdf4ff", 100: "#fae8ff", 200: "#f5d0fe", 300: "#f0abfc", 400: "#e879f9", 500: "#d946ef", 600: "#c026d3", 700: "#a21caf", 800: "#86198f", 900: "#701a75" }, pink: { 50: "#fdf2f8", 100: "#fce7f3", 200: "#fbcfe8", 300: "#f9a8d4", 400: "#f472b6", 500: "#ec4899", 600: "#db2777", 700: "#be185d", 800: "#9d174d", 900: "#831843" }, rose: { 50: "#fff1f2", 100: "#ffe4e6", 200: "#fecdd3", 300: "#fda4af", 400: "#fb7185", 500: "#f43f5e", 600: "#e11d48", 700: "#be123c", 800: "#9f1239", 900: "#881337" }, get lightBlue() { - return or({ version: "v2.2", from: "lightBlue", to: "sky" }), this.sky; + var ec2 = { inherit: "inherit", current: "currentColor", transparent: "transparent", black: "#000", white: "#fff", slate: { 50: "#f8fafc", 100: "#f1f5f9", 200: "#e2e8f0", 300: "#cbd5e1", 400: "#94a3b8", 500: "#64748b", 600: "#475569", 700: "#334155", 800: "#1e293b", 900: "#0f172a" }, gray: { 50: "#f9fafb", 100: "#f3f4f6", 200: "#e5e7eb", 300: "#d1d5db", 400: "#9ca3af", 500: "#6b7280", 600: "#4b5563", 700: "#374151", 800: "#1f2937", 900: "#111827" }, zinc: { 50: "#fafafa", 100: "#f4f4f5", 200: "#e4e4e7", 300: "#d4d4d8", 400: "#a1a1aa", 500: "#71717a", 600: "#52525b", 700: "#3f3f46", 800: "#27272a", 900: "#18181b" }, neutral: { 50: "#fafafa", 100: "#f5f5f5", 200: "#e5e5e5", 300: "#d4d4d4", 400: "#a3a3a3", 500: "#737373", 600: "#525252", 700: "#404040", 800: "#262626", 900: "#171717" }, stone: { 50: "#fafaf9", 100: "#f5f5f4", 200: "#e7e5e4", 300: "#d6d3d1", 400: "#a8a29e", 500: "#78716c", 600: "#57534e", 700: "#44403c", 800: "#292524", 900: "#1c1917" }, red: { 50: "#fef2f2", 100: "#fee2e2", 200: "#fecaca", 300: "#fca5a5", 400: "#f87171", 500: "#ef4444", 600: "#dc2626", 700: "#b91c1c", 800: "#991b1b", 900: "#7f1d1d" }, orange: { 50: "#fff7ed", 100: "#ffedd5", 200: "#fed7aa", 300: "#fdba74", 400: "#fb923c", 500: "#f97316", 600: "#ea580c", 700: "#c2410c", 800: "#9a3412", 900: "#7c2d12" }, amber: { 50: "#fffbeb", 100: "#fef3c7", 200: "#fde68a", 300: "#fcd34d", 400: "#fbbf24", 500: "#f59e0b", 600: "#d97706", 700: "#b45309", 800: "#92400e", 900: "#78350f" }, yellow: { 50: "#fefce8", 100: "#fef9c3", 200: "#fef08a", 300: "#fde047", 400: "#facc15", 500: "#eab308", 600: "#ca8a04", 700: "#a16207", 800: "#854d0e", 900: "#713f12" }, lime: { 50: "#f7fee7", 100: "#ecfccb", 200: "#d9f99d", 300: "#bef264", 400: "#a3e635", 500: "#84cc16", 600: "#65a30d", 700: "#4d7c0f", 800: "#3f6212", 900: "#365314" }, green: { 50: "#f0fdf4", 100: "#dcfce7", 200: "#bbf7d0", 300: "#86efac", 400: "#4ade80", 500: "#22c55e", 600: "#16a34a", 700: "#15803d", 800: "#166534", 900: "#14532d" }, emerald: { 50: "#ecfdf5", 100: "#d1fae5", 200: "#a7f3d0", 300: "#6ee7b7", 400: "#34d399", 500: "#10b981", 600: "#059669", 700: "#047857", 800: "#065f46", 900: "#064e3b" }, teal: { 50: "#f0fdfa", 100: "#ccfbf1", 200: "#99f6e4", 300: "#5eead4", 400: "#2dd4bf", 500: "#14b8a6", 600: "#0d9488", 700: "#0f766e", 800: "#115e59", 900: "#134e4a" }, cyan: { 50: "#ecfeff", 100: "#cffafe", 200: "#a5f3fc", 300: "#67e8f9", 400: "#22d3ee", 500: "#06b6d4", 600: "#0891b2", 700: "#0e7490", 800: "#155e75", 900: "#164e63" }, sky: { 50: "#f0f9ff", 100: "#e0f2fe", 200: "#bae6fd", 300: "#7dd3fc", 400: "#38bdf8", 500: "#0ea5e9", 600: "#0284c7", 700: "#0369a1", 800: "#075985", 900: "#0c4a6e" }, blue: { 50: "#eff6ff", 100: "#dbeafe", 200: "#bfdbfe", 300: "#93c5fd", 400: "#60a5fa", 500: "#3b82f6", 600: "#2563eb", 700: "#1d4ed8", 800: "#1e40af", 900: "#1e3a8a" }, indigo: { 50: "#eef2ff", 100: "#e0e7ff", 200: "#c7d2fe", 300: "#a5b4fc", 400: "#818cf8", 500: "#6366f1", 600: "#4f46e5", 700: "#4338ca", 800: "#3730a3", 900: "#312e81" }, violet: { 50: "#f5f3ff", 100: "#ede9fe", 200: "#ddd6fe", 300: "#c4b5fd", 400: "#a78bfa", 500: "#8b5cf6", 600: "#7c3aed", 700: "#6d28d9", 800: "#5b21b6", 900: "#4c1d95" }, purple: { 50: "#faf5ff", 100: "#f3e8ff", 200: "#e9d5ff", 300: "#d8b4fe", 400: "#c084fc", 500: "#a855f7", 600: "#9333ea", 700: "#7e22ce", 800: "#6b21a8", 900: "#581c87" }, fuchsia: { 50: "#fdf4ff", 100: "#fae8ff", 200: "#f5d0fe", 300: "#f0abfc", 400: "#e879f9", 500: "#d946ef", 600: "#c026d3", 700: "#a21caf", 800: "#86198f", 900: "#701a75" }, pink: { 50: "#fdf2f8", 100: "#fce7f3", 200: "#fbcfe8", 300: "#f9a8d4", 400: "#f472b6", 500: "#ec4899", 600: "#db2777", 700: "#be185d", 800: "#9d174d", 900: "#831843" }, rose: { 50: "#fff1f2", 100: "#ffe4e6", 200: "#fecdd3", 300: "#fda4af", 400: "#fb7185", 500: "#f43f5e", 600: "#e11d48", 700: "#be123c", 800: "#9f1239", 900: "#881337" }, get lightBlue() { + return Yt({ version: "v2.2", from: "lightBlue", to: "sky" }), this.sky; }, get warmGray() { - return or({ version: "v3.0", from: "warmGray", to: "stone" }), this.stone; + return Yt({ version: "v3.0", from: "warmGray", to: "stone" }), this.stone; }, get trueGray() { - return or({ version: "v3.0", from: "trueGray", to: "neutral" }), this.neutral; + return Yt({ version: "v3.0", from: "trueGray", to: "neutral" }), this.neutral; }, get coolGray() { - return or({ version: "v3.0", from: "coolGray", to: "gray" }), this.gray; + return Yt({ version: "v3.0", from: "coolGray", to: "gray" }), this.gray; }, get blueGray() { - return or({ version: "v3.0", from: "blueGray", to: "slate" }), this.slate; + return Yt({ version: "v3.0", from: "blueGray", to: "slate" }), this.slate; } }; }); -var La = K2((ki) => { +var ka = _((Bi) => { "use strict"; - Object.defineProperty(ki, "__esModule", { value: true }); - Object.defineProperty(ki, "defaults", { enumerable: true, get: () => sc }); - function sc(A, ...e) { + Object.defineProperty(Bi, "__esModule", { value: true }); + Object.defineProperty(Bi, "defaults", { enumerable: true, get: () => tc }); + function tc(A, ...e) { for (let n of e) { for (let i in n) { var t; @@ -15243,11 +14215,11 @@ var La = K2((ki) => { return A; } }); -var Ga = K2((xi) => { +var xa = _((Ei) => { "use strict"; - Object.defineProperty(xi, "__esModule", { value: true }); - Object.defineProperty(xi, "toPath", { enumerable: true, get: () => ac }); - function ac(A) { + Object.defineProperty(Ei, "__esModule", { value: true }); + Object.defineProperty(Ei, "toPath", { enumerable: true, get: () => rc }); + function rc(A) { if (Array.isArray(A)) return A; let e = A.split("[").length - 1, t = A.split("]").length - 1; @@ -15256,25 +14228,25 @@ var Ga = K2((xi) => { return A.split(/\.(?![^\[]*\])|[\[\]]/g).filter(Boolean); } }); -var Ha = K2((Ri) => { +var va = _((fi) => { "use strict"; - Object.defineProperty(Ri, "__esModule", { value: true }); - Object.defineProperty(Ri, "normalizeConfig", { enumerable: true, get: () => uc }); - var sr = gc((Bn(), Yr(fn))); - function Ua(A) { + Object.defineProperty(fi, "__esModule", { value: true }); + Object.defineProperty(fi, "normalizeConfig", { enumerable: true, get: () => ic }); + var qt = nc((on(), Gr(nn))); + function Ra(A) { if (typeof WeakMap != "function") return null; var e = /* @__PURE__ */ new WeakMap(), t = /* @__PURE__ */ new WeakMap(); - return (Ua = function(r) { + return (Ra = function(r) { return r ? t : e; })(A); } - function gc(A, e) { + function nc(A, e) { if (!e && A && A.__esModule) return A; if (A === null || typeof A != "object" && typeof A != "function") return { default: A }; - var t = Ua(e); + var t = Ra(e); if (t && t.has(A)) return t.get(A); var r = {}, n = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -15285,7 +14257,7 @@ var Ha = K2((Ri) => { } return r.default = A, t && t.set(A, r), r; } - function uc(A) { + function ic(A) { if ((() => { if (A.purge || !A.content || !Array.isArray(A.content) && !(typeof A.content == "object" && A.content !== null)) return false; @@ -15313,12 +14285,12 @@ var Ha = K2((Ri) => { return true; } return false; - })() || sr.default.warn("purge-deprecation", ["The `purge`/`content` options have changed in Tailwind CSS v3.0.", "Update your configuration file to eliminate this warning.", "https://tailwindcss.com/docs/upgrade-guide#configure-content-sources"]), A.safelist = (() => { + })() || qt.default.warn("purge-deprecation", ["The `purge`/`content` options have changed in Tailwind CSS v3.0.", "Update your configuration file to eliminate this warning.", "https://tailwindcss.com/docs/upgrade-guide#configure-content-sources"]), A.safelist = (() => { var r; let { content: n, purge: i, safelist: o } = A; return Array.isArray(o) ? o : Array.isArray(n == null ? void 0 : n.safelist) ? n.safelist : Array.isArray(i == null ? void 0 : i.safelist) ? i.safelist : Array.isArray(i == null || (r = i.options) === null || r === void 0 ? void 0 : r.safelist) ? i.options.safelist : []; })(), typeof A.prefix == "function") - sr.default.warn("prefix-function", ["As of Tailwind CSS v3.0, `prefix` cannot be a function.", "Update `prefix` in your configuration to be a string to eliminate this warning.", "https://tailwindcss.com/docs/upgrade-guide#prefix-cannot-be-a-function"]), A.prefix = ""; + qt.default.warn("prefix-function", ["As of Tailwind CSS v3.0, `prefix` cannot be a function.", "Update `prefix` in your configuration to be a string to eliminate this warning.", "https://tailwindcss.com/docs/upgrade-guide#prefix-cannot-be-a-function"]), A.prefix = ""; else { var t; A.prefix = (t = A.prefix) !== null && t !== void 0 ? t : ""; @@ -15328,63 +14300,63 @@ var Ha = K2((Ri) => { return Array.isArray(n) ? n : Array.isArray(n == null ? void 0 : n.content) ? n.content : Array.isArray(r) ? r : Array.isArray(r == null ? void 0 : r.content) ? r.content : Array.isArray(r == null ? void 0 : r.files) ? r.files : []; })(), extract: (() => { let r = (() => { - var o, a, u2, l2, I, E, C, d2, p, y; - return !((o = A.purge) === null || o === void 0) && o.extract ? A.purge.extract : !((a = A.content) === null || a === void 0) && a.extract ? A.content.extract : !((u2 = A.purge) === null || u2 === void 0 || (l2 = u2.extract) === null || l2 === void 0) && l2.DEFAULT ? A.purge.extract.DEFAULT : !((I = A.content) === null || I === void 0 || (E = I.extract) === null || E === void 0) && E.DEFAULT ? A.content.extract.DEFAULT : !((C = A.purge) === null || C === void 0 || (d2 = C.options) === null || d2 === void 0) && d2.extractors ? A.purge.options.extractors : !((p = A.content) === null || p === void 0 || (y = p.options) === null || y === void 0) && y.extractors ? A.content.options.extractors : {}; + var o, s, a, I, g2, c2, B, E, Q, d2; + return !((o = A.purge) === null || o === void 0) && o.extract ? A.purge.extract : !((s = A.content) === null || s === void 0) && s.extract ? A.content.extract : !((a = A.purge) === null || a === void 0 || (I = a.extract) === null || I === void 0) && I.DEFAULT ? A.purge.extract.DEFAULT : !((g2 = A.content) === null || g2 === void 0 || (c2 = g2.extract) === null || c2 === void 0) && c2.DEFAULT ? A.content.extract.DEFAULT : !((B = A.purge) === null || B === void 0 || (E = B.options) === null || E === void 0) && E.extractors ? A.purge.options.extractors : !((Q = A.content) === null || Q === void 0 || (d2 = Q.options) === null || d2 === void 0) && d2.extractors ? A.content.options.extractors : {}; })(), n = {}, i = (() => { - var o, a, u2, l2; - if (!((o = A.purge) === null || o === void 0 || (a = o.options) === null || a === void 0) && a.defaultExtractor) + var o, s, a, I; + if (!((o = A.purge) === null || o === void 0 || (s = o.options) === null || s === void 0) && s.defaultExtractor) return A.purge.options.defaultExtractor; - if (!((u2 = A.content) === null || u2 === void 0 || (l2 = u2.options) === null || l2 === void 0) && l2.defaultExtractor) + if (!((a = A.content) === null || a === void 0 || (I = a.options) === null || I === void 0) && I.defaultExtractor) return A.content.options.defaultExtractor; })(); if (i !== void 0 && (n.DEFAULT = i), typeof r == "function") n.DEFAULT = r; else if (Array.isArray(r)) - for (let { extensions: o, extractor: a } of r ?? []) - for (let u2 of o) - n[u2] = a; + for (let { extensions: o, extractor: s } of r ?? []) + for (let a of o) + n[a] = s; else typeof r == "object" && r !== null && Object.assign(n, r); return n; })(), transform: (() => { let r = (() => { - var i, o, a, u2, l2, I; - return !((i = A.purge) === null || i === void 0) && i.transform ? A.purge.transform : !((o = A.content) === null || o === void 0) && o.transform ? A.content.transform : !((a = A.purge) === null || a === void 0 || (u2 = a.transform) === null || u2 === void 0) && u2.DEFAULT ? A.purge.transform.DEFAULT : !((l2 = A.content) === null || l2 === void 0 || (I = l2.transform) === null || I === void 0) && I.DEFAULT ? A.content.transform.DEFAULT : {}; + var i, o, s, a, I, g2; + return !((i = A.purge) === null || i === void 0) && i.transform ? A.purge.transform : !((o = A.content) === null || o === void 0) && o.transform ? A.content.transform : !((s = A.purge) === null || s === void 0 || (a = s.transform) === null || a === void 0) && a.DEFAULT ? A.purge.transform.DEFAULT : !((I = A.content) === null || I === void 0 || (g2 = I.transform) === null || g2 === void 0) && g2.DEFAULT ? A.content.transform.DEFAULT : {}; })(), n = {}; return typeof r == "function" && (n.DEFAULT = r), typeof r == "object" && r !== null && Object.assign(n, r), n; })() }; for (let r of A.content.files) if (typeof r == "string" && /{([^,]*?)}/g.test(r)) { - sr.default.warn("invalid-glob-braces", [`The glob pattern ${(0, sr.dim)(r)} in your Tailwind CSS configuration is invalid.`, `Update it to ${(0, sr.dim)(r.replace(/{([^,]*?)}/g, "$1"))} to silence this warning.`]); + qt.default.warn("invalid-glob-braces", [`The glob pattern ${(0, qt.dim)(r)} in your Tailwind CSS configuration is invalid.`, `Update it to ${(0, qt.dim)(r.replace(/{([^,]*?)}/g, "$1"))} to silence this warning.`]); break; } return A; } }); -var Oa = K2((Ni) => { +var Na = _((Qi) => { "use strict"; - Object.defineProperty(Ni, "__esModule", { value: true }); - Object.defineProperty(Ni, "default", { enumerable: true, get: () => Ic }); - function Ic(A) { + Object.defineProperty(Qi, "__esModule", { value: true }); + Object.defineProperty(Qi, "default", { enumerable: true, get: () => oc }); + function oc(A) { if (Object.prototype.toString.call(A) !== "[object Object]") return false; let e = Object.getPrototypeOf(A); return e === null || e === Object.prototype; } }); -var Ta = K2((Fi) => { +var Fa = _((di) => { "use strict"; - Object.defineProperty(Fi, "__esModule", { value: true }); - Object.defineProperty(Fi, "cloneDeep", { enumerable: true, get: () => Mi }); - function Mi(A) { - return Array.isArray(A) ? A.map((e) => Mi(e)) : typeof A == "object" && A !== null ? Object.fromEntries(Object.entries(A).map(([e, t]) => [e, Mi(t)])) : A; + Object.defineProperty(di, "__esModule", { value: true }); + Object.defineProperty(di, "cloneDeep", { enumerable: true, get: () => Ci }); + function Ci(A) { + return Array.isArray(A) ? A.map((e) => Ci(e)) : typeof A == "object" && A !== null ? Object.fromEntries(Object.entries(A).map(([e, t]) => [e, Ci(t)])) : A; } }); -var Li = K2((En, Pa) => { +var hi = _((sn, Ma) => { "use strict"; - En.__esModule = true; - En.default = fc; - function lc(A) { + sn.__esModule = true; + sn.default = gc; + function sc(A) { for (var e = A.toLowerCase(), t = "", r = false, n = 0; n < 6 && e[n] !== void 0; n++) { var i = e.charCodeAt(n), o = i >= 97 && i <= 102 || i >= 48 && i <= 57; if (r = i === 32, !o) @@ -15392,18 +14364,18 @@ var Li = K2((En, Pa) => { t += e[n]; } if (t.length !== 0) { - var a = parseInt(t, 16), u2 = a >= 55296 && a <= 57343; - return u2 || a === 0 || a > 1114111 ? ["\uFFFD", t.length + (r ? 1 : 0)] : [String.fromCodePoint(a), t.length + (r ? 1 : 0)]; + var s = parseInt(t, 16), a = s >= 55296 && s <= 57343; + return a || s === 0 || s > 1114111 ? ["\uFFFD", t.length + (r ? 1 : 0)] : [String.fromCodePoint(s), t.length + (r ? 1 : 0)]; } } - var cc = /\\/; - function fc(A) { - var e = cc.test(A); + var ac = /\\/; + function gc(A) { + var e = ac.test(A); if (!e) return A; for (var t = "", r = 0; r < A.length; r++) { if (A[r] === "\\") { - var n = lc(A.slice(r + 1, r + 7)); + var n = sc(A.slice(r + 1, r + 7)); if (n !== void 0) { t += n[0], r += n[1]; continue; @@ -15419,13 +14391,13 @@ var Li = K2((En, Pa) => { } return t; } - Pa.exports = En.default; + Ma.exports = sn.default; }); -var Ja = K2((Qn, _a2) => { +var Ga = _((an, La) => { "use strict"; - Qn.__esModule = true; - Qn.default = Bc; - function Bc(A) { + an.__esModule = true; + an.default = Ic; + function Ic(A) { for (var e = arguments.length, t = new Array(e > 1 ? e - 1 : 0), r = 1; r < e; r++) t[r - 1] = arguments[r]; for (; t.length > 0; ) { @@ -15436,13 +14408,13 @@ var Ja = K2((Qn, _a2) => { } return A; } - _a2.exports = Qn.default; + La.exports = an.default; }); -var Ka = K2((Cn, Wa) => { +var Ha = _((gn, Ua) => { "use strict"; - Cn.__esModule = true; - Cn.default = Ec; - function Ec(A) { + gn.__esModule = true; + gn.default = uc; + function uc(A) { for (var e = arguments.length, t = new Array(e > 1 ? e - 1 : 0), r = 1; r < e; r++) t[r - 1] = arguments[r]; for (; t.length > 0; ) { @@ -15450,13 +14422,13 @@ var Ka = K2((Cn, Wa) => { A[n] || (A[n] = {}), A = A[n]; } } - Wa.exports = Cn.default; + Ua.exports = gn.default; }); -var qa = K2((dn, Ya) => { +var Ta = _((In, Oa) => { "use strict"; - dn.__esModule = true; - dn.default = Qc; - function Qc(A) { + In.__esModule = true; + In.default = lc; + function lc(A) { for (var e = "", t = A.indexOf("/*"), r = 0; t >= 0; ) { e = e + A.slice(r, t); var n = A.indexOf("*/", t + 2); @@ -15466,51 +14438,51 @@ var qa = K2((dn, Ya) => { } return e = e + A.slice(r), e; } - Ya.exports = dn.default; + Oa.exports = In.default; }); -var ar = K2((Je) => { +var Xt = _((xe) => { "use strict"; - Je.__esModule = true; - Je.stripComments = Je.ensureObject = Je.getProp = Je.unesc = void 0; - var Cc = hn(Li()); - Je.unesc = Cc.default; - var dc = hn(Ja()); - Je.getProp = dc.default; - var hc = hn(Ka()); - Je.ensureObject = hc.default; - var pc = hn(qa()); - Je.stripComments = pc.default; - function hn(A) { + xe.__esModule = true; + xe.stripComments = xe.ensureObject = xe.getProp = xe.unesc = void 0; + var cc = un(hi()); + xe.unesc = cc.default; + var Bc = un(Ga()); + xe.getProp = Bc.default; + var Ec = un(Ha()); + xe.ensureObject = Ec.default; + var fc = un(Ta()); + xe.stripComments = fc.default; + function un(A) { return A && A.__esModule ? A : { default: A }; } }); -var je = K2((gr, za) => { +var Te = _((Vt, Ja) => { "use strict"; - gr.__esModule = true; - gr.default = void 0; - var Xa = ar(); - function Va(A, e) { + Vt.__esModule = true; + Vt.default = void 0; + var Pa = Xt(); + function _a2(A, e) { for (var t = 0; t < e.length; t++) { var r = e[t]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(A, r.key, r); } } - function mc(A, e, t) { - return e && Va(A.prototype, e), t && Va(A, t), A; + function Qc(A, e, t) { + return e && _a2(A.prototype, e), t && _a2(A, t), A; } - var yc = function A(e, t) { + var Cc = function A(e, t) { if (typeof e != "object" || e === null) return e; var r = new e.constructor(); for (var n in e) if (e.hasOwnProperty(n)) { var i = e[n], o = typeof i; - n === "parent" && o === "object" ? t && (r[n] = t) : i instanceof Array ? r[n] = i.map(function(a) { - return A(a, r); + n === "parent" && o === "object" ? t && (r[n] = t) : i instanceof Array ? r[n] = i.map(function(s) { + return A(s, r); }) : r[n] = A(i, r); } return r; - }, wc = function() { + }, dc = function() { function A(t) { t === void 0 && (t = {}), Object.assign(this, t), this.spaces = this.spaces || {}, this.spaces.before = this.spaces.before || "", this.spaces.after = this.spaces.after || ""; } @@ -15530,14 +14502,14 @@ var je = K2((gr, za) => { return this.parent.at(this.parent.index(this) - 1); }, e.clone = function(r) { r === void 0 && (r = {}); - var n = yc(this); + var n = Cc(this); for (var i in r) n[i] = r[i]; return n; }, e.appendToPropertyAndEscape = function(r, n, i) { this.raws || (this.raws = {}); - var o = this[r], a = this.raws[r]; - this[r] = o + n, a || i !== n ? this.raws[r] = (a || o) + i : delete this.raws[r]; + var o = this[r], s = this.raws[r]; + this[r] = o + n, s || i !== n ? this.raws[r] = (s || o) + i : delete this.raws[r]; }, e.setPropertyAndEscape = function(r, n, i) { this.raws || (this.raws = {}), this[r] = n, this.raws[r] = i; }, e.setPropertyWithoutEscape = function(r, n) { @@ -15551,69 +14523,69 @@ var je = K2((gr, za) => { return String(this.stringifyProperty("value")); }, e.toString = function() { return [this.rawSpaceBefore, this.valueToString(), this.rawSpaceAfter].join(""); - }, mc(A, [{ key: "rawSpaceBefore", get: function() { + }, Qc(A, [{ key: "rawSpaceBefore", get: function() { var r = this.raws && this.raws.spaces && this.raws.spaces.before; return r === void 0 && (r = this.spaces && this.spaces.before), r || ""; }, set: function(r) { - (0, Xa.ensureObject)(this, "raws", "spaces"), this.raws.spaces.before = r; + (0, Pa.ensureObject)(this, "raws", "spaces"), this.raws.spaces.before = r; } }, { key: "rawSpaceAfter", get: function() { var r = this.raws && this.raws.spaces && this.raws.spaces.after; return r === void 0 && (r = this.spaces.after), r || ""; }, set: function(r) { - (0, Xa.ensureObject)(this, "raws", "spaces"), this.raws.spaces.after = r; + (0, Pa.ensureObject)(this, "raws", "spaces"), this.raws.spaces.after = r; } }]), A; }(); - gr.default = wc; - za.exports = gr.default; + Vt.default = dc; + Ja.exports = Vt.default; }); -var ee = K2((SA) => { +var UA = _((BA) => { "use strict"; - SA.__esModule = true; - SA.UNIVERSAL = SA.ATTRIBUTE = SA.CLASS = SA.COMBINATOR = SA.COMMENT = SA.ID = SA.NESTING = SA.PSEUDO = SA.ROOT = SA.SELECTOR = SA.STRING = SA.TAG = void 0; - var Dc = "tag"; - SA.TAG = Dc; - var Sc = "string"; - SA.STRING = Sc; - var bc = "selector"; - SA.SELECTOR = bc; - var vc = "root"; - SA.ROOT = vc; - var kc = "pseudo"; - SA.PSEUDO = kc; - var xc = "nesting"; - SA.NESTING = xc; - var Rc = "id"; - SA.ID = Rc; - var Nc = "comment"; - SA.COMMENT = Nc; - var Mc = "combinator"; - SA.COMBINATOR = Mc; - var Fc = "class"; - SA.CLASS = Fc; - var Lc = "attribute"; - SA.ATTRIBUTE = Lc; - var Gc = "universal"; - SA.UNIVERSAL = Gc; + BA.__esModule = true; + BA.UNIVERSAL = BA.ATTRIBUTE = BA.CLASS = BA.COMBINATOR = BA.COMMENT = BA.ID = BA.NESTING = BA.PSEUDO = BA.ROOT = BA.SELECTOR = BA.STRING = BA.TAG = void 0; + var hc = "tag"; + BA.TAG = hc; + var pc = "string"; + BA.STRING = pc; + var mc = "selector"; + BA.SELECTOR = mc; + var yc = "root"; + BA.ROOT = yc; + var wc = "pseudo"; + BA.PSEUDO = wc; + var Dc = "nesting"; + BA.NESTING = Dc; + var Sc = "id"; + BA.ID = Sc; + var bc = "comment"; + BA.COMMENT = bc; + var kc = "combinator"; + BA.COMBINATOR = kc; + var xc = "class"; + BA.CLASS = xc; + var Rc = "attribute"; + BA.ATTRIBUTE = Rc; + var vc = "universal"; + BA.UNIVERSAL = vc; }); -var pn = K2((ur, Ag) => { +var ln = _((zt, qa) => { "use strict"; - ur.__esModule = true; - ur.default = void 0; - var Uc = Oc(je()), $e = Hc(ee()); - function $a() { + zt.__esModule = true; + zt.default = void 0; + var Nc = Mc(Te()), Pe = Fc(UA()); + function Ya() { if (typeof WeakMap != "function") return null; var A = /* @__PURE__ */ new WeakMap(); - return $a = function() { + return Ya = function() { return A; }, A; } - function Hc(A) { + function Fc(A) { if (A && A.__esModule) return A; if (A === null || typeof A != "object" && typeof A != "function") return { default: A }; - var e = $a(); + var e = Ya(); if (e && e.has(A)) return e.get(A); var t = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -15624,13 +14596,13 @@ var pn = K2((ur, Ag) => { } return t.default = A, e && e.set(A, t), t; } - function Oc(A) { + function Mc(A) { return A && A.__esModule ? A : { default: A }; } - function Tc(A, e) { + function Lc(A, e) { var t; if (typeof Symbol > "u" || A[Symbol.iterator] == null) { - if (Array.isArray(A) || (t = Pc(A)) || e && A && typeof A.length == "number") { + if (Array.isArray(A) || (t = Gc(A)) || e && A && typeof A.length == "number") { t && (A = t); var r = 0; return function() { @@ -15642,42 +14614,42 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho } return t = A[Symbol.iterator](), t.next.bind(t); } - function Pc(A, e) { + function Gc(A, e) { if (A) { if (typeof A == "string") - return Za(A, e); + return Ka(A, e); var t = Object.prototype.toString.call(A).slice(8, -1); if (t === "Object" && A.constructor && (t = A.constructor.name), t === "Map" || t === "Set") return Array.from(A); if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) - return Za(A, e); + return Ka(A, e); } } - function Za(A, e) { + function Ka(A, e) { (e == null || e > A.length) && (e = A.length); for (var t = 0, r = new Array(e); t < e; t++) r[t] = A[t]; return r; } - function ja(A, e) { + function Wa(A, e) { for (var t = 0; t < e.length; t++) { var r = e[t]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(A, r.key, r); } } - function _c(A, e, t) { - return e && ja(A.prototype, e), t && ja(A, t), A; + function Uc(A, e, t) { + return e && Wa(A.prototype, e), t && Wa(A, t), A; } - function Jc(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Gi(A, e); + function Hc(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, pi(A, e); } - function Gi(A, e) { - return Gi = Object.setPrototypeOf || function(r, n) { + function pi(A, e) { + return pi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Gi(A, e); + }, pi(A, e); } - var Wc = function(A) { - Jc(e, A); + var Oc = function(A) { + Hc(e, A); function e(r) { var n; return n = A.call(this, r) || this, n.nodes || (n.nodes = []), n; @@ -15698,7 +14670,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho i = this.indexes[o], i >= n && (this.indexes[o] = i - 1); return this; }, t.removeAll = function() { - for (var n = Tc(this.nodes), i; !(i = n()).done; ) { + for (var n = Lc(this.nodes), i; !(i = n()).done; ) { var o = i.value; o.parent = void 0; } @@ -15709,27 +14681,27 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho i.parent = this; var o = this.index(n); this.nodes.splice(o + 1, 0, i), i.parent = this; - var a; - for (var u2 in this.indexes) - a = this.indexes[u2], o <= a && (this.indexes[u2] = a + 1); + var s; + for (var a in this.indexes) + s = this.indexes[a], o <= s && (this.indexes[a] = s + 1); return this; }, t.insertBefore = function(n, i) { i.parent = this; var o = this.index(n); this.nodes.splice(o, 0, i), i.parent = this; - var a; - for (var u2 in this.indexes) - a = this.indexes[u2], a <= o && (this.indexes[u2] = a + 1); + var s; + for (var a in this.indexes) + s = this.indexes[a], s <= o && (this.indexes[a] = s + 1); return this; }, t._findChildAtPosition = function(n, i) { var o = void 0; - return this.each(function(a) { - if (a.atPosition) { - var u2 = a.atPosition(n, i); - if (u2) - return o = u2, false; - } else if (a.isAtPosition(n, i)) - return o = a, false; + return this.each(function(s) { + if (s.atPosition) { + var a = s.atPosition(n, i); + if (a) + return o = a, false; + } else if (s.isAtPosition(n, i)) + return o = s, false; }), o; }, t.atPosition = function(n, i) { if (this.isAtPosition(n, i)) @@ -15740,76 +14712,76 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho this.lastEach || (this.lastEach = 0), this.indexes || (this.indexes = {}), this.lastEach++; var i = this.lastEach; if (this.indexes[i] = 0, !!this.length) { - for (var o, a; this.indexes[i] < this.length && (o = this.indexes[i], a = n(this.at(o), o), a !== false); ) + for (var o, s; this.indexes[i] < this.length && (o = this.indexes[i], s = n(this.at(o), o), s !== false); ) this.indexes[i] += 1; - if (delete this.indexes[i], a === false) + if (delete this.indexes[i], s === false) return false; } }, t.walk = function(n) { return this.each(function(i, o) { - var a = n(i, o); - if (a !== false && i.length && (a = i.walk(n)), a === false) + var s = n(i, o); + if (s !== false && i.length && (s = i.walk(n)), s === false) return false; }); }, t.walkAttributes = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.ATTRIBUTE) + if (o.type === Pe.ATTRIBUTE) return n.call(i, o); }); }, t.walkClasses = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.CLASS) + if (o.type === Pe.CLASS) return n.call(i, o); }); }, t.walkCombinators = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.COMBINATOR) + if (o.type === Pe.COMBINATOR) return n.call(i, o); }); }, t.walkComments = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.COMMENT) + if (o.type === Pe.COMMENT) return n.call(i, o); }); }, t.walkIds = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.ID) + if (o.type === Pe.ID) return n.call(i, o); }); }, t.walkNesting = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.NESTING) + if (o.type === Pe.NESTING) return n.call(i, o); }); }, t.walkPseudos = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.PSEUDO) + if (o.type === Pe.PSEUDO) return n.call(i, o); }); }, t.walkTags = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.TAG) + if (o.type === Pe.TAG) return n.call(i, o); }); }, t.walkUniversals = function(n) { var i = this; return this.walk(function(o) { - if (o.type === $e.UNIVERSAL) + if (o.type === Pe.UNIVERSAL) return n.call(i, o); }); }, t.split = function(n) { var i = this, o = []; - return this.reduce(function(a, u2, l2) { - var I = n.call(i, u2); - return o.push(u2), I ? (a.push(o), o = []) : l2 === i.length - 1 && a.push(o), a; + return this.reduce(function(s, a, I) { + var g2 = n.call(i, a); + return o.push(a), g2 ? (s.push(o), o = []) : I === i.length - 1 && s.push(o), s; }, []); }, t.map = function(n) { return this.nodes.map(n); @@ -15825,47 +14797,47 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho return this.nodes.sort(n); }, t.toString = function() { return this.map(String).join(""); - }, _c(e, [{ key: "first", get: function() { + }, Uc(e, [{ key: "first", get: function() { return this.at(0); } }, { key: "last", get: function() { return this.at(this.length - 1); } }, { key: "length", get: function() { return this.nodes.length; } }]), e; - }(Uc.default); - ur.default = Wc; - Ag.exports = ur.default; + }(Nc.default); + zt.default = Oc; + qa.exports = zt.default; }); -var Hi = K2((Ir, tg) => { +var yi = _((Zt, Va) => { "use strict"; - Ir.__esModule = true; - Ir.default = void 0; - var Kc = qc(pn()), Yc = ee(); - function qc(A) { + Zt.__esModule = true; + Zt.default = void 0; + var Tc = _c(ln()), Pc = UA(); + function _c(A) { return A && A.__esModule ? A : { default: A }; } - function eg(A, e) { + function Xa(A, e) { for (var t = 0; t < e.length; t++) { var r = e[t]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(A, r.key, r); } } - function Xc(A, e, t) { - return e && eg(A.prototype, e), t && eg(A, t), A; + function Jc(A, e, t) { + return e && Xa(A.prototype, e), t && Xa(A, t), A; } - function Vc(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Ui(A, e); + function Kc(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, mi(A, e); } - function Ui(A, e) { - return Ui = Object.setPrototypeOf || function(r, n) { + function mi(A, e) { + return mi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Ui(A, e); + }, mi(A, e); } - var zc = function(A) { - Vc(e, A); + var Wc = function(A) { + Kc(e, A); function e(r) { var n; - return n = A.call(this, r) || this, n.type = Yc.ROOT, n; + return n = A.call(this, r) || this, n.type = Pc.ROOT, n; } var t = e.prototype; return t.toString = function() { @@ -15875,202 +14847,202 @@ var Hi = K2((Ir, tg) => { return this.trailingComma ? n + "," : n; }, t.error = function(n, i) { return this._error ? this._error(n, i) : new Error(n); - }, Xc(e, [{ key: "errorGenerator", set: function(n) { + }, Jc(e, [{ key: "errorGenerator", set: function(n) { this._error = n; } }]), e; - }(Kc.default); - Ir.default = zc; - tg.exports = Ir.default; + }(Tc.default); + Zt.default = Wc; + Va.exports = Zt.default; }); -var Ti = K2((lr, rg) => { +var Di = _((jt, za) => { "use strict"; - lr.__esModule = true; - lr.default = void 0; - var Zc = $c(pn()), jc = ee(); - function $c(A) { + jt.__esModule = true; + jt.default = void 0; + var Yc = Xc(ln()), qc = UA(); + function Xc(A) { return A && A.__esModule ? A : { default: A }; } - function Af(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Oi(A, e); + function Vc(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, wi(A, e); } - function Oi(A, e) { - return Oi = Object.setPrototypeOf || function(r, n) { + function wi(A, e) { + return wi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Oi(A, e); + }, wi(A, e); } - var ef = function(A) { - Af(e, A); + var zc = function(A) { + Vc(e, A); function e(t) { var r; - return r = A.call(this, t) || this, r.type = jc.SELECTOR, r; + return r = A.call(this, t) || this, r.type = qc.SELECTOR, r; } return e; - }(Zc.default); - lr.default = ef; - rg.exports = lr.default; + }(Yc.default); + jt.default = zc; + za.exports = jt.default; }); -var mn = K2((u0, ng) => { +var cn = _((a0, Za) => { "use strict"; - var tf = {}, rf = tf.hasOwnProperty, nf = function(e, t) { + var Zc = {}, jc = Zc.hasOwnProperty, $c = function(e, t) { if (!e) return t; var r = {}; for (var n in t) - r[n] = rf.call(e, n) ? e[n] : t[n]; + r[n] = jc.call(e, n) ? e[n] : t[n]; return r; - }, of = /[ -,\.\/:-@\[-\^`\{-~]/, sf = /[ -,\.\/:-@\[\]\^`\{-~]/, af = /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g, Pi = function A(e, t) { - t = nf(t, A.options), t.quotes != "single" && t.quotes != "double" && (t.quotes = "single"); - for (var r = t.quotes == "double" ? '"' : "'", n = t.isIdentifier, i = e.charAt(0), o = "", a = 0, u2 = e.length; a < u2; ) { - var l2 = e.charAt(a++), I = l2.charCodeAt(), E = void 0; - if (I < 32 || I > 126) { - if (I >= 55296 && I <= 56319 && a < u2) { - var C = e.charCodeAt(a++); - (C & 64512) == 56320 ? I = ((I & 1023) << 10) + (C & 1023) + 65536 : a--; + }, AB = /[ -,\.\/:-@\[-\^`\{-~]/, eB = /[ -,\.\/:-@\[\]\^`\{-~]/, tB = /(^|\\+)?(\\[A-F0-9]{1,6})\x20(?![a-fA-F0-9\x20])/g, Si = function A(e, t) { + t = $c(t, A.options), t.quotes != "single" && t.quotes != "double" && (t.quotes = "single"); + for (var r = t.quotes == "double" ? '"' : "'", n = t.isIdentifier, i = e.charAt(0), o = "", s = 0, a = e.length; s < a; ) { + var I = e.charAt(s++), g2 = I.charCodeAt(), c2 = void 0; + if (g2 < 32 || g2 > 126) { + if (g2 >= 55296 && g2 <= 56319 && s < a) { + var B = e.charCodeAt(s++); + (B & 64512) == 56320 ? g2 = ((g2 & 1023) << 10) + (B & 1023) + 65536 : s--; } - E = "\\" + I.toString(16).toUpperCase() + " "; + c2 = "\\" + g2.toString(16).toUpperCase() + " "; } else - t.escapeEverything ? of.test(l2) ? E = "\\" + l2 : E = "\\" + I.toString(16).toUpperCase() + " " : /[\t\n\f\r\x0B]/.test(l2) ? E = "\\" + I.toString(16).toUpperCase() + " " : l2 == "\\" || !n && (l2 == '"' && r == l2 || l2 == "'" && r == l2) || n && sf.test(l2) ? E = "\\" + l2 : E = l2; - o += E; + t.escapeEverything ? AB.test(I) ? c2 = "\\" + I : c2 = "\\" + g2.toString(16).toUpperCase() + " " : /[\t\n\f\r\x0B]/.test(I) ? c2 = "\\" + g2.toString(16).toUpperCase() + " " : I == "\\" || !n && (I == '"' && r == I || I == "'" && r == I) || n && eB.test(I) ? c2 = "\\" + I : c2 = I; + o += c2; } - return n && (/^-[-\d]/.test(o) ? o = "\\-" + o.slice(1) : /\d/.test(i) && (o = "\\3" + i + " " + o.slice(1))), o = o.replace(af, function(d2, p, y) { - return p && p.length % 2 ? d2 : (p || "") + y; + return n && (/^-[-\d]/.test(o) ? o = "\\-" + o.slice(1) : /\d/.test(i) && (o = "\\3" + i + " " + o.slice(1))), o = o.replace(tB, function(E, Q, d2) { + return Q && Q.length % 2 ? E : (Q || "") + d2; }), !n && t.wrap ? r + o + r : o; }; - Pi.options = { escapeEverything: false, isIdentifier: false, quotes: "single", wrap: false }; - Pi.version = "3.0.0"; - ng.exports = Pi; + Si.options = { escapeEverything: false, isIdentifier: false, quotes: "single", wrap: false }; + Si.version = "3.0.0"; + Za.exports = Si; }); -var Ji = K2((cr, sg) => { +var ki = _(($t, Ag) => { "use strict"; - cr.__esModule = true; - cr.default = void 0; - var gf = og(mn()), uf = ar(), If = og(je()), lf = ee(); - function og(A) { + $t.__esModule = true; + $t.default = void 0; + var rB = $a(cn()), nB = Xt(), iB = $a(Te()), oB = UA(); + function $a(A) { return A && A.__esModule ? A : { default: A }; } - function ig(A, e) { + function ja(A, e) { for (var t = 0; t < e.length; t++) { var r = e[t]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(A, r.key, r); } } - function cf(A, e, t) { - return e && ig(A.prototype, e), t && ig(A, t), A; + function sB(A, e, t) { + return e && ja(A.prototype, e), t && ja(A, t), A; } - function ff(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, _i(A, e); + function aB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, bi(A, e); } - function _i(A, e) { - return _i = Object.setPrototypeOf || function(r, n) { + function bi(A, e) { + return bi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, _i(A, e); + }, bi(A, e); } - var Bf = function(A) { - ff(e, A); + var gB = function(A) { + aB(e, A); function e(r) { var n; - return n = A.call(this, r) || this, n.type = lf.CLASS, n._constructed = true, n; + return n = A.call(this, r) || this, n.type = oB.CLASS, n._constructed = true, n; } var t = e.prototype; return t.valueToString = function() { return "." + A.prototype.valueToString.call(this); - }, cf(e, [{ key: "value", get: function() { + }, sB(e, [{ key: "value", get: function() { return this._value; }, set: function(n) { if (this._constructed) { - var i = (0, gf.default)(n, { isIdentifier: true }); - i !== n ? ((0, uf.ensureObject)(this, "raws"), this.raws.value = i) : this.raws && delete this.raws.value; + var i = (0, rB.default)(n, { isIdentifier: true }); + i !== n ? ((0, nB.ensureObject)(this, "raws"), this.raws.value = i) : this.raws && delete this.raws.value; } this._value = n; } }]), e; - }(If.default); - cr.default = Bf; - sg.exports = cr.default; + }(iB.default); + $t.default = gB; + Ag.exports = $t.default; }); -var Ki = K2((fr, ag) => { +var Ri = _((Ar, eg) => { "use strict"; - fr.__esModule = true; - fr.default = void 0; - var Ef = Cf(je()), Qf = ee(); - function Cf(A) { + Ar.__esModule = true; + Ar.default = void 0; + var IB = lB(Te()), uB = UA(); + function lB(A) { return A && A.__esModule ? A : { default: A }; } - function df(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Wi(A, e); + function cB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, xi(A, e); } - function Wi(A, e) { - return Wi = Object.setPrototypeOf || function(r, n) { + function xi(A, e) { + return xi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Wi(A, e); + }, xi(A, e); } - var hf = function(A) { - df(e, A); + var BB = function(A) { + cB(e, A); function e(t) { var r; - return r = A.call(this, t) || this, r.type = Qf.COMMENT, r; + return r = A.call(this, t) || this, r.type = uB.COMMENT, r; } return e; - }(Ef.default); - fr.default = hf; - ag.exports = fr.default; + }(IB.default); + Ar.default = BB; + eg.exports = Ar.default; }); -var qi = K2((Br, gg) => { +var Ni = _((er, tg) => { "use strict"; - Br.__esModule = true; - Br.default = void 0; - var pf = yf(je()), mf = ee(); - function yf(A) { + er.__esModule = true; + er.default = void 0; + var EB = QB(Te()), fB = UA(); + function QB(A) { return A && A.__esModule ? A : { default: A }; } - function wf(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Yi(A, e); + function CB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, vi(A, e); } - function Yi(A, e) { - return Yi = Object.setPrototypeOf || function(r, n) { + function vi(A, e) { + return vi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Yi(A, e); + }, vi(A, e); } - var Df = function(A) { - wf(e, A); + var dB = function(A) { + CB(e, A); function e(r) { var n; - return n = A.call(this, r) || this, n.type = mf.ID, n; + return n = A.call(this, r) || this, n.type = fB.ID, n; } var t = e.prototype; return t.valueToString = function() { return "#" + A.prototype.valueToString.call(this); }, e; - }(pf.default); - Br.default = Df; - gg.exports = Br.default; + }(EB.default); + er.default = dB; + tg.exports = er.default; }); -var yn = K2((Er, lg) => { +var Bn = _((tr, ig) => { "use strict"; - Er.__esModule = true; - Er.default = void 0; - var Sf = Ig(mn()), bf = ar(), vf = Ig(je()); - function Ig(A) { + tr.__esModule = true; + tr.default = void 0; + var hB = ng(cn()), pB = Xt(), mB = ng(Te()); + function ng(A) { return A && A.__esModule ? A : { default: A }; } - function ug(A, e) { + function rg(A, e) { for (var t = 0; t < e.length; t++) { var r = e[t]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(A, r.key, r); } } - function kf(A, e, t) { - return e && ug(A.prototype, e), t && ug(A, t), A; + function yB(A, e, t) { + return e && rg(A.prototype, e), t && rg(A, t), A; } - function xf(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Xi(A, e); + function wB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Fi(A, e); } - function Xi(A, e) { - return Xi = Object.setPrototypeOf || function(r, n) { + function Fi(A, e) { + return Fi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Xi(A, e); + }, Fi(A, e); } - var Rf = function(A) { - xf(e, A); + var DB = function(A) { + wB(e, A); function e() { return A.apply(this, arguments) || this; } @@ -16079,15 +15051,15 @@ var yn = K2((Er, lg) => { return this.namespace ? this.namespaceString + "|" + n : n; }, t.valueToString = function() { return this.qualifiedName(A.prototype.valueToString.call(this)); - }, kf(e, [{ key: "namespace", get: function() { + }, yB(e, [{ key: "namespace", get: function() { return this._namespace; }, set: function(n) { if (n === true || n === "*" || n === "&") { this._namespace = n, this.raws && delete this.raws.namespace; return; } - var i = (0, Sf.default)(n, { isIdentifier: true }); - this._namespace = n, i !== n ? ((0, bf.ensureObject)(this, "raws"), this.raws.namespace = i) : this.raws && delete this.raws.namespace; + var i = (0, hB.default)(n, { isIdentifier: true }); + this._namespace = n, i !== n ? ((0, pB.ensureObject)(this, "raws"), this.raws.namespace = i) : this.raws && delete this.raws.namespace; } }, { key: "ns", get: function() { return this._namespace; }, set: function(n) { @@ -16099,195 +15071,195 @@ var yn = K2((Er, lg) => { } else return ""; } }]), e; - }(vf.default); - Er.default = Rf; - lg.exports = Er.default; + }(mB.default); + tr.default = DB; + ig.exports = tr.default; }); -var zi = K2((Qr, cg) => { +var Li = _((rr, og) => { "use strict"; - Qr.__esModule = true; - Qr.default = void 0; - var Nf = Ff(yn()), Mf = ee(); - function Ff(A) { + rr.__esModule = true; + rr.default = void 0; + var SB = kB(Bn()), bB = UA(); + function kB(A) { return A && A.__esModule ? A : { default: A }; } - function Lf(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Vi(A, e); + function xB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Mi(A, e); } - function Vi(A, e) { - return Vi = Object.setPrototypeOf || function(r, n) { + function Mi(A, e) { + return Mi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Vi(A, e); + }, Mi(A, e); } - var Gf = function(A) { - Lf(e, A); + var RB = function(A) { + xB(e, A); function e(t) { var r; - return r = A.call(this, t) || this, r.type = Mf.TAG, r; + return r = A.call(this, t) || this, r.type = bB.TAG, r; } return e; - }(Nf.default); - Qr.default = Gf; - cg.exports = Qr.default; + }(SB.default); + rr.default = RB; + og.exports = rr.default; }); -var ji = K2((Cr, fg) => { +var Ui = _((nr, sg) => { "use strict"; - Cr.__esModule = true; - Cr.default = void 0; - var Uf = Of(je()), Hf = ee(); - function Of(A) { + nr.__esModule = true; + nr.default = void 0; + var vB = FB(Te()), NB = UA(); + function FB(A) { return A && A.__esModule ? A : { default: A }; } - function Tf(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Zi(A, e); + function MB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Gi(A, e); } - function Zi(A, e) { - return Zi = Object.setPrototypeOf || function(r, n) { + function Gi(A, e) { + return Gi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Zi(A, e); + }, Gi(A, e); } - var Pf = function(A) { - Tf(e, A); + var LB = function(A) { + MB(e, A); function e(t) { var r; - return r = A.call(this, t) || this, r.type = Hf.STRING, r; + return r = A.call(this, t) || this, r.type = NB.STRING, r; } return e; - }(Uf.default); - Cr.default = Pf; - fg.exports = Cr.default; + }(vB.default); + nr.default = LB; + sg.exports = nr.default; }); -var Ao = K2((dr, Bg) => { +var Oi = _((ir, ag) => { "use strict"; - dr.__esModule = true; - dr.default = void 0; - var _f = Wf(pn()), Jf = ee(); - function Wf(A) { + ir.__esModule = true; + ir.default = void 0; + var GB = HB(ln()), UB = UA(); + function HB(A) { return A && A.__esModule ? A : { default: A }; } - function Kf(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, $i(A, e); + function OB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Hi(A, e); } - function $i(A, e) { - return $i = Object.setPrototypeOf || function(r, n) { + function Hi(A, e) { + return Hi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, $i(A, e); + }, Hi(A, e); } - var Yf = function(A) { - Kf(e, A); + var TB = function(A) { + OB(e, A); function e(r) { var n; - return n = A.call(this, r) || this, n.type = Jf.PSEUDO, n; + return n = A.call(this, r) || this, n.type = UB.PSEUDO, n; } var t = e.prototype; return t.toString = function() { var n = this.length ? "(" + this.map(String).join(",") + ")" : ""; return [this.rawSpaceBefore, this.stringifyProperty("value"), n, this.rawSpaceAfter].join(""); }, e; - }(_f.default); - dr.default = Yf; - Bg.exports = dr.default; + }(GB.default); + ir.default = TB; + ag.exports = ir.default; }); -var Qg = K2((I0, Eg) => { - Eg.exports = function(e, t) { +var Ig = _((g0, gg) => { + gg.exports = function(e, t) { return function(...r) { return console.warn(t), e(...r); }; }; }); -var oo = K2((mr) => { +var Wi = _((ar) => { "use strict"; - mr.__esModule = true; - mr.unescapeValue = io; - mr.default = void 0; - var hr = no(mn()), qf = no(Li()), Xf = no(yn()), Vf = ee(), eo; - function no(A) { + ar.__esModule = true; + ar.unescapeValue = Ki; + ar.default = void 0; + var or = Ji(cn()), PB = Ji(hi()), _B = Ji(Bn()), JB = UA(), Ti; + function Ji(A) { return A && A.__esModule ? A : { default: A }; } - function Cg(A, e) { + function ug(A, e) { for (var t = 0; t < e.length; t++) { var r = e[t]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(A, r.key, r); } } - function zf(A, e, t) { - return e && Cg(A.prototype, e), t && Cg(A, t), A; + function KB(A, e, t) { + return e && ug(A.prototype, e), t && ug(A, t), A; } - function Zf(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, ro(A, e); + function WB(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, _i(A, e); } - function ro(A, e) { - return ro = Object.setPrototypeOf || function(r, n) { + function _i(A, e) { + return _i = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, ro(A, e); + }, _i(A, e); } - var pr = Qg(), jf = /^('|")([^]*)\1$/, $f = pr(function() { - }, "Assigning an attribute a value containing characters that might need to be escaped is deprecated. Call attribute.setValue() instead."), AB = pr(function() { - }, "Assigning attr.quoted is deprecated and has no effect. Assign to attr.quoteMark instead."), eB = pr(function() { + var sr = Ig(), YB = /^('|")([^]*)\1$/, qB = sr(function() { + }, "Assigning an attribute a value containing characters that might need to be escaped is deprecated. Call attribute.setValue() instead."), XB = sr(function() { + }, "Assigning attr.quoted is deprecated and has no effect. Assign to attr.quoteMark instead."), VB = sr(function() { }, "Constructing an Attribute selector with a value without specifying quoteMark is deprecated. Note: The value should be unescaped now."); - function io(A) { - var e = false, t = null, r = A, n = r.match(jf); - return n && (t = n[1], r = n[2]), r = (0, qf.default)(r), r !== A && (e = true), { deprecatedUsage: e, unescaped: r, quoteMark: t }; + function Ki(A) { + var e = false, t = null, r = A, n = r.match(YB); + return n && (t = n[1], r = n[2]), r = (0, PB.default)(r), r !== A && (e = true), { deprecatedUsage: e, unescaped: r, quoteMark: t }; } - function tB(A) { + function zB(A) { if (A.quoteMark !== void 0 || A.value === void 0) return A; - eB(); - var e = io(A.value), t = e.quoteMark, r = e.unescaped; + VB(); + var e = Ki(A.value), t = e.quoteMark, r = e.unescaped; return A.raws || (A.raws = {}), A.raws.value === void 0 && (A.raws.value = A.value), A.value = r, A.quoteMark = t, A; } - var wn = function(A) { - Zf(e, A); + var En = function(A) { + WB(e, A); function e(r) { var n; - return r === void 0 && (r = {}), n = A.call(this, tB(r)) || this, n.type = Vf.ATTRIBUTE, n.raws = n.raws || {}, Object.defineProperty(n.raws, "unquoted", { get: pr(function() { + return r === void 0 && (r = {}), n = A.call(this, zB(r)) || this, n.type = JB.ATTRIBUTE, n.raws = n.raws || {}, Object.defineProperty(n.raws, "unquoted", { get: sr(function() { return n.value; - }, "attr.raws.unquoted is deprecated. Call attr.value instead."), set: pr(function() { + }, "attr.raws.unquoted is deprecated. Call attr.value instead."), set: sr(function() { return n.value; }, "Setting attr.raws.unquoted is deprecated and has no effect. attr.value is unescaped by default now.") }), n._constructed = true, n; } var t = e.prototype; return t.getQuotedValue = function(n) { n === void 0 && (n = {}); - var i = this._determineQuoteMark(n), o = to[i], a = (0, hr.default)(this._value, o); - return a; + var i = this._determineQuoteMark(n), o = Pi[i], s = (0, or.default)(this._value, o); + return s; }, t._determineQuoteMark = function(n) { return n.smart ? this.smartQuoteMark(n) : this.preferredQuoteMark(n); }, t.setValue = function(n, i) { i === void 0 && (i = {}), this._value = n, this._quoteMark = this._determineQuoteMark(i), this._syncRawValue(); }, t.smartQuoteMark = function(n) { - var i = this.value, o = i.replace(/[^']/g, "").length, a = i.replace(/[^"]/g, "").length; - if (o + a === 0) { - var u2 = (0, hr.default)(i, { isIdentifier: true }); - if (u2 === i) + var i = this.value, o = i.replace(/[^']/g, "").length, s = i.replace(/[^"]/g, "").length; + if (o + s === 0) { + var a = (0, or.default)(i, { isIdentifier: true }); + if (a === i) return e.NO_QUOTE; - var l2 = this.preferredQuoteMark(n); - if (l2 === e.NO_QUOTE) { - var I = this.quoteMark || n.quoteMark || e.DOUBLE_QUOTE, E = to[I], C = (0, hr.default)(i, E); - if (C.length < u2.length) - return I; + var I = this.preferredQuoteMark(n); + if (I === e.NO_QUOTE) { + var g2 = this.quoteMark || n.quoteMark || e.DOUBLE_QUOTE, c2 = Pi[g2], B = (0, or.default)(i, c2); + if (B.length < a.length) + return g2; } - return l2; + return I; } else - return a === o ? this.preferredQuoteMark(n) : a < o ? e.DOUBLE_QUOTE : e.SINGLE_QUOTE; + return s === o ? this.preferredQuoteMark(n) : s < o ? e.DOUBLE_QUOTE : e.SINGLE_QUOTE; }, t.preferredQuoteMark = function(n) { var i = n.preferCurrentQuoteMark ? this.quoteMark : n.quoteMark; return i === void 0 && (i = n.preferCurrentQuoteMark ? n.quoteMark : this.quoteMark), i === void 0 && (i = e.DOUBLE_QUOTE), i; }, t._syncRawValue = function() { - var n = (0, hr.default)(this._value, to[this.quoteMark]); + var n = (0, or.default)(this._value, Pi[this.quoteMark]); n === this._value ? this.raws && delete this.raws.value : this.raws.value = n; }, t._handleEscapes = function(n, i) { if (this._constructed) { - var o = (0, hr.default)(i, { isIdentifier: true }); + var o = (0, or.default)(i, { isIdentifier: true }); o !== i ? this.raws[n] = o : delete this.raws[n]; } }, t._spacesFor = function(n) { - var i = { before: "", after: "" }, o = this.spaces[n] || {}, a = this.raws.spaces && this.raws.spaces[n] || {}; - return Object.assign(i, o, a); + var i = { before: "", after: "" }, o = this.spaces[n] || {}, s = this.raws.spaces && this.raws.spaces[n] || {}; + return Object.assign(i, o, s); }, t._stringFor = function(n, i, o) { - i === void 0 && (i = n), o === void 0 && (o = dg); - var a = this._spacesFor(i); - return o(this.stringifyProperty(n), a); + i === void 0 && (i = n), o === void 0 && (o = lg); + var s = this._spacesFor(i); + return o(this.stringifyProperty(n), s); }, t.offsetOf = function(n) { var i = 1, o = this._spacesFor("attribute"); if (i += o.before.length, n === "namespace" || n === "ns") @@ -16295,30 +15267,30 @@ var oo = K2((mr) => { if (n === "attributeNS" || (i += this.namespaceString.length, this.namespace && (i += 1), n === "attribute")) return i; i += this.stringifyProperty("attribute").length, i += o.after.length; - var a = this._spacesFor("operator"); - i += a.before.length; - var u2 = this.stringifyProperty("operator"); + var s = this._spacesFor("operator"); + i += s.before.length; + var a = this.stringifyProperty("operator"); if (n === "operator") - return u2 ? i : -1; - i += u2.length, i += a.after.length; - var l2 = this._spacesFor("value"); - i += l2.before.length; - var I = this.stringifyProperty("value"); + return a ? i : -1; + i += a.length, i += s.after.length; + var I = this._spacesFor("value"); + i += I.before.length; + var g2 = this.stringifyProperty("value"); if (n === "value") - return I ? i : -1; - i += I.length, i += l2.after.length; - var E = this._spacesFor("insensitive"); - return i += E.before.length, n === "insensitive" && this.insensitive ? i : -1; + return g2 ? i : -1; + i += g2.length, i += I.after.length; + var c2 = this._spacesFor("insensitive"); + return i += c2.before.length, n === "insensitive" && this.insensitive ? i : -1; }, t.toString = function() { var n = this, i = [this.rawSpaceBefore, "["]; - return i.push(this._stringFor("qualifiedAttribute", "attribute")), this.operator && (this.value || this.value === "") && (i.push(this._stringFor("operator")), i.push(this._stringFor("value")), i.push(this._stringFor("insensitiveFlag", "insensitive", function(o, a) { - return o.length > 0 && !n.quoted && a.before.length === 0 && !(n.spaces.value && n.spaces.value.after) && (a.before = " "), dg(o, a); + return i.push(this._stringFor("qualifiedAttribute", "attribute")), this.operator && (this.value || this.value === "") && (i.push(this._stringFor("operator")), i.push(this._stringFor("value")), i.push(this._stringFor("insensitiveFlag", "insensitive", function(o, s) { + return o.length > 0 && !n.quoted && s.before.length === 0 && !(n.spaces.value && n.spaces.value.after) && (s.before = " "), lg(o, s); }))), i.push("]"), i.push(this.rawSpaceAfter), i.join(""); - }, zf(e, [{ key: "quoted", get: function() { + }, KB(e, [{ key: "quoted", get: function() { var n = this.quoteMark; return n === "'" || n === '"'; }, set: function(n) { - AB(); + XB(); } }, { key: "quoteMark", get: function() { return this._quoteMark; }, set: function(n) { @@ -16335,10 +15307,10 @@ var oo = K2((mr) => { return this._value; }, set: function(n) { if (this._constructed) { - var i = io(n), o = i.deprecatedUsage, a = i.unescaped, u2 = i.quoteMark; - if (o && $f(), a === this._value && u2 === this._quoteMark) + var i = Ki(n), o = i.deprecatedUsage, s = i.unescaped, a = i.quoteMark; + if (o && qB(), s === this._value && a === this._quoteMark) return; - this._value = a, this._quoteMark = u2, this._syncRawValue(); + this._value = s, this._quoteMark = a, this._syncRawValue(); } else this._value = n; } }, { key: "attribute", get: function() { @@ -16346,195 +15318,195 @@ var oo = K2((mr) => { }, set: function(n) { this._handleEscapes("attribute", n), this._attribute = n; } }]), e; - }(Xf.default); - mr.default = wn; - wn.NO_QUOTE = null; - wn.SINGLE_QUOTE = "'"; - wn.DOUBLE_QUOTE = '"'; - var to = (eo = { "'": { quotes: "single", wrap: true }, '"': { quotes: "double", wrap: true } }, eo[null] = { isIdentifier: true }, eo); - function dg(A, e) { + }(_B.default); + ar.default = En; + En.NO_QUOTE = null; + En.SINGLE_QUOTE = "'"; + En.DOUBLE_QUOTE = '"'; + var Pi = (Ti = { "'": { quotes: "single", wrap: true }, '"': { quotes: "double", wrap: true } }, Ti[null] = { isIdentifier: true }, Ti); + function lg(A, e) { return "" + e.before + A + e.after; } }); -var ao = K2((yr, hg) => { +var qi = _((gr, cg) => { "use strict"; - yr.__esModule = true; - yr.default = void 0; - var rB = iB(yn()), nB = ee(); - function iB(A) { + gr.__esModule = true; + gr.default = void 0; + var ZB = $B(Bn()), jB = UA(); + function $B(A) { return A && A.__esModule ? A : { default: A }; } - function oB(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, so(A, e); + function AE(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Yi(A, e); } - function so(A, e) { - return so = Object.setPrototypeOf || function(r, n) { + function Yi(A, e) { + return Yi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, so(A, e); + }, Yi(A, e); } - var sB = function(A) { - oB(e, A); + var eE = function(A) { + AE(e, A); function e(t) { var r; - return r = A.call(this, t) || this, r.type = nB.UNIVERSAL, r.value = "*", r; + return r = A.call(this, t) || this, r.type = jB.UNIVERSAL, r.value = "*", r; } return e; - }(rB.default); - yr.default = sB; - hg.exports = yr.default; + }(ZB.default); + gr.default = eE; + cg.exports = gr.default; }); -var uo = K2((wr, pg) => { +var Vi = _((Ir, Bg) => { "use strict"; - wr.__esModule = true; - wr.default = void 0; - var aB = uB(je()), gB = ee(); - function uB(A) { + Ir.__esModule = true; + Ir.default = void 0; + var tE = nE(Te()), rE = UA(); + function nE(A) { return A && A.__esModule ? A : { default: A }; } - function IB(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, go(A, e); + function iE(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Xi(A, e); } - function go(A, e) { - return go = Object.setPrototypeOf || function(r, n) { + function Xi(A, e) { + return Xi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, go(A, e); + }, Xi(A, e); } - var lB = function(A) { - IB(e, A); + var oE = function(A) { + iE(e, A); function e(t) { var r; - return r = A.call(this, t) || this, r.type = gB.COMBINATOR, r; + return r = A.call(this, t) || this, r.type = rE.COMBINATOR, r; } return e; - }(aB.default); - wr.default = lB; - pg.exports = wr.default; + }(tE.default); + Ir.default = oE; + Bg.exports = Ir.default; }); -var lo = K2((Dr, mg) => { +var Zi = _((ur, Eg) => { "use strict"; - Dr.__esModule = true; - Dr.default = void 0; - var cB = BB(je()), fB = ee(); - function BB(A) { + ur.__esModule = true; + ur.default = void 0; + var sE = gE(Te()), aE = UA(); + function gE(A) { return A && A.__esModule ? A : { default: A }; } - function EB(A, e) { - A.prototype = Object.create(e.prototype), A.prototype.constructor = A, Io(A, e); + function IE(A, e) { + A.prototype = Object.create(e.prototype), A.prototype.constructor = A, zi(A, e); } - function Io(A, e) { - return Io = Object.setPrototypeOf || function(r, n) { + function zi(A, e) { + return zi = Object.setPrototypeOf || function(r, n) { return r.__proto__ = n, r; - }, Io(A, e); + }, zi(A, e); } - var QB = function(A) { - EB(e, A); + var uE = function(A) { + IE(e, A); function e(t) { var r; - return r = A.call(this, t) || this, r.type = fB.NESTING, r.value = "&", r; + return r = A.call(this, t) || this, r.type = aE.NESTING, r.value = "&", r; } return e; - }(cB.default); - Dr.default = QB; - mg.exports = Dr.default; + }(sE.default); + ur.default = uE; + Eg.exports = ur.default; }); -var wg = K2((Dn, yg) => { +var Qg = _((fn, fg) => { "use strict"; - Dn.__esModule = true; - Dn.default = CB; - function CB(A) { + fn.__esModule = true; + fn.default = lE; + function lE(A) { return A.sort(function(e, t) { return e - t; }); } - yg.exports = Dn.default; + fg.exports = fn.default; }); -var co = K2((_) => { +var ji = _((T) => { "use strict"; - _.__esModule = true; - _.combinator = _.word = _.comment = _.str = _.tab = _.newline = _.feed = _.cr = _.backslash = _.bang = _.slash = _.doubleQuote = _.singleQuote = _.space = _.greaterThan = _.pipe = _.equals = _.plus = _.caret = _.tilde = _.dollar = _.closeSquare = _.openSquare = _.closeParenthesis = _.openParenthesis = _.semicolon = _.colon = _.comma = _.at = _.asterisk = _.ampersand = void 0; - var dB = 38; - _.ampersand = dB; - var hB = 42; - _.asterisk = hB; - var pB = 64; - _.at = pB; - var mB = 44; - _.comma = mB; - var yB = 58; - _.colon = yB; - var wB = 59; - _.semicolon = wB; - var DB = 40; - _.openParenthesis = DB; - var SB = 41; - _.closeParenthesis = SB; - var bB = 91; - _.openSquare = bB; - var vB = 93; - _.closeSquare = vB; - var kB = 36; - _.dollar = kB; - var xB = 126; - _.tilde = xB; - var RB = 94; - _.caret = RB; - var NB = 43; - _.plus = NB; - var MB = 61; - _.equals = MB; - var FB = 124; - _.pipe = FB; - var LB = 62; - _.greaterThan = LB; - var GB = 32; - _.space = GB; - var Dg = 39; - _.singleQuote = Dg; - var UB = 34; - _.doubleQuote = UB; - var HB = 47; - _.slash = HB; - var OB = 33; - _.bang = OB; - var TB = 92; - _.backslash = TB; - var PB = 13; - _.cr = PB; - var _B = 12; - _.feed = _B; - var JB = 10; - _.newline = JB; - var WB = 9; - _.tab = WB; - var KB = Dg; - _.str = KB; - var YB = -1; - _.comment = YB; - var qB = -2; - _.word = qB; - var XB = -3; - _.combinator = XB; + T.__esModule = true; + T.combinator = T.word = T.comment = T.str = T.tab = T.newline = T.feed = T.cr = T.backslash = T.bang = T.slash = T.doubleQuote = T.singleQuote = T.space = T.greaterThan = T.pipe = T.equals = T.plus = T.caret = T.tilde = T.dollar = T.closeSquare = T.openSquare = T.closeParenthesis = T.openParenthesis = T.semicolon = T.colon = T.comma = T.at = T.asterisk = T.ampersand = void 0; + var cE = 38; + T.ampersand = cE; + var BE = 42; + T.asterisk = BE; + var EE = 64; + T.at = EE; + var fE = 44; + T.comma = fE; + var QE = 58; + T.colon = QE; + var CE = 59; + T.semicolon = CE; + var dE = 40; + T.openParenthesis = dE; + var hE = 41; + T.closeParenthesis = hE; + var pE = 91; + T.openSquare = pE; + var mE = 93; + T.closeSquare = mE; + var yE = 36; + T.dollar = yE; + var wE = 126; + T.tilde = wE; + var DE = 94; + T.caret = DE; + var SE = 43; + T.plus = SE; + var bE = 61; + T.equals = bE; + var kE = 124; + T.pipe = kE; + var xE = 62; + T.greaterThan = xE; + var RE = 32; + T.space = RE; + var Cg = 39; + T.singleQuote = Cg; + var vE = 34; + T.doubleQuote = vE; + var NE = 47; + T.slash = NE; + var FE = 33; + T.bang = FE; + var ME = 92; + T.backslash = ME; + var LE = 13; + T.cr = LE; + var GE = 12; + T.feed = GE; + var UE = 10; + T.newline = UE; + var HE = 9; + T.tab = HE; + var OE = Cg; + T.str = OE; + var TE = -1; + T.comment = TE; + var PE = -2; + T.word = PE; + var _E = -3; + T.combinator = _E; }); -var vg = K2((Sr) => { +var pg = _((lr) => { "use strict"; - Sr.__esModule = true; - Sr.default = eE; - Sr.FIELDS = void 0; - var T = VB(co()), Ht, yA; - function bg() { + lr.__esModule = true; + lr.default = VE; + lr.FIELDS = void 0; + var G = JE(ji()), mt, cA; + function hg() { if (typeof WeakMap != "function") return null; var A = /* @__PURE__ */ new WeakMap(); - return bg = function() { + return hg = function() { return A; }, A; } - function VB(A) { + function JE(A) { if (A && A.__esModule) return A; if (A === null || typeof A != "object" && typeof A != "function") return { default: A }; - var e = bg(); + var e = hg(); if (e && e.has(A)) return e.get(A); var t = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -16545,118 +15517,118 @@ var vg = K2((Sr) => { } return t.default = A, e && e.set(A, t), t; } - var zB = (Ht = {}, Ht[T.tab] = true, Ht[T.newline] = true, Ht[T.cr] = true, Ht[T.feed] = true, Ht), ZB = (yA = {}, yA[T.space] = true, yA[T.tab] = true, yA[T.newline] = true, yA[T.cr] = true, yA[T.feed] = true, yA[T.ampersand] = true, yA[T.asterisk] = true, yA[T.bang] = true, yA[T.comma] = true, yA[T.colon] = true, yA[T.semicolon] = true, yA[T.openParenthesis] = true, yA[T.closeParenthesis] = true, yA[T.openSquare] = true, yA[T.closeSquare] = true, yA[T.singleQuote] = true, yA[T.doubleQuote] = true, yA[T.plus] = true, yA[T.pipe] = true, yA[T.tilde] = true, yA[T.greaterThan] = true, yA[T.equals] = true, yA[T.dollar] = true, yA[T.caret] = true, yA[T.slash] = true, yA), fo = {}, Sg = "0123456789abcdefABCDEF"; - for (Sn = 0; Sn < Sg.length; Sn++) - fo[Sg.charCodeAt(Sn)] = true; - var Sn; - function jB(A, e) { + var KE = (mt = {}, mt[G.tab] = true, mt[G.newline] = true, mt[G.cr] = true, mt[G.feed] = true, mt), WE = (cA = {}, cA[G.space] = true, cA[G.tab] = true, cA[G.newline] = true, cA[G.cr] = true, cA[G.feed] = true, cA[G.ampersand] = true, cA[G.asterisk] = true, cA[G.bang] = true, cA[G.comma] = true, cA[G.colon] = true, cA[G.semicolon] = true, cA[G.openParenthesis] = true, cA[G.closeParenthesis] = true, cA[G.openSquare] = true, cA[G.closeSquare] = true, cA[G.singleQuote] = true, cA[G.doubleQuote] = true, cA[G.plus] = true, cA[G.pipe] = true, cA[G.tilde] = true, cA[G.greaterThan] = true, cA[G.equals] = true, cA[G.dollar] = true, cA[G.caret] = true, cA[G.slash] = true, cA), $i = {}, dg = "0123456789abcdefABCDEF"; + for (Qn = 0; Qn < dg.length; Qn++) + $i[dg.charCodeAt(Qn)] = true; + var Qn; + function YE(A, e) { var t = e, r; do { - if (r = A.charCodeAt(t), ZB[r]) + if (r = A.charCodeAt(t), WE[r]) return t - 1; - r === T.backslash ? t = $B(A, t) + 1 : t++; + r === G.backslash ? t = qE(A, t) + 1 : t++; } while (t < A.length); return t - 1; } - function $B(A, e) { + function qE(A, e) { var t = e, r = A.charCodeAt(t + 1); - if (!zB[r]) - if (fo[r]) { + if (!KE[r]) + if ($i[r]) { var n = 0; do t++, n++, r = A.charCodeAt(t + 1); - while (fo[r] && n < 6); - n < 6 && r === T.space && t++; + while ($i[r] && n < 6); + n < 6 && r === G.space && t++; } else t++; return t; } - var AE = { TYPE: 0, START_LINE: 1, START_COL: 2, END_LINE: 3, END_COL: 4, START_POS: 5, END_POS: 6 }; - Sr.FIELDS = AE; - function eE(A) { - var e = [], t = A.css.valueOf(), r = t, n = r.length, i = -1, o = 1, a = 0, u2 = 0, l2, I, E, C, d2, p, y, k, x2, F, b, v2, M; - function L(O, J) { + var XE = { TYPE: 0, START_LINE: 1, START_COL: 2, END_LINE: 3, END_COL: 4, START_POS: 5, END_POS: 6 }; + lr.FIELDS = XE; + function VE(A) { + var e = [], t = A.css.valueOf(), r = t, n = r.length, i = -1, o = 1, s = 0, a = 0, I, g2, c2, B, E, Q, d2, m2, D, x2, y, p, b; + function R2(U, P2) { if (A.safe) - t += J, x2 = t.length - 1; + t += P2, D = t.length - 1; else - throw A.error("Unclosed " + O, o, a - i, a); - } - for (; a < n; ) { - switch (l2 = t.charCodeAt(a), l2 === T.newline && (i = a, o += 1), l2) { - case T.space: - case T.tab: - case T.newline: - case T.cr: - case T.feed: - x2 = a; + throw A.error("Unclosed " + U, o, s - i, s); + } + for (; s < n; ) { + switch (I = t.charCodeAt(s), I === G.newline && (i = s, o += 1), I) { + case G.space: + case G.tab: + case G.newline: + case G.cr: + case G.feed: + D = s; do - x2 += 1, l2 = t.charCodeAt(x2), l2 === T.newline && (i = x2, o += 1); - while (l2 === T.space || l2 === T.newline || l2 === T.tab || l2 === T.cr || l2 === T.feed); - M = T.space, C = o, E = x2 - i - 1, u2 = x2; + D += 1, I = t.charCodeAt(D), I === G.newline && (i = D, o += 1); + while (I === G.space || I === G.newline || I === G.tab || I === G.cr || I === G.feed); + b = G.space, B = o, c2 = D - i - 1, a = D; break; - case T.plus: - case T.greaterThan: - case T.tilde: - case T.pipe: - x2 = a; + case G.plus: + case G.greaterThan: + case G.tilde: + case G.pipe: + D = s; do - x2 += 1, l2 = t.charCodeAt(x2); - while (l2 === T.plus || l2 === T.greaterThan || l2 === T.tilde || l2 === T.pipe); - M = T.combinator, C = o, E = a - i, u2 = x2; + D += 1, I = t.charCodeAt(D); + while (I === G.plus || I === G.greaterThan || I === G.tilde || I === G.pipe); + b = G.combinator, B = o, c2 = s - i, a = D; break; - case T.asterisk: - case T.ampersand: - case T.bang: - case T.comma: - case T.equals: - case T.dollar: - case T.caret: - case T.openSquare: - case T.closeSquare: - case T.colon: - case T.semicolon: - case T.openParenthesis: - case T.closeParenthesis: - x2 = a, M = l2, C = o, E = a - i, u2 = x2 + 1; + case G.asterisk: + case G.ampersand: + case G.bang: + case G.comma: + case G.equals: + case G.dollar: + case G.caret: + case G.openSquare: + case G.closeSquare: + case G.colon: + case G.semicolon: + case G.openParenthesis: + case G.closeParenthesis: + D = s, b = I, B = o, c2 = s - i, a = D + 1; break; - case T.singleQuote: - case T.doubleQuote: - v2 = l2 === T.singleQuote ? "'" : '"', x2 = a; + case G.singleQuote: + case G.doubleQuote: + p = I === G.singleQuote ? "'" : '"', D = s; do - for (d2 = false, x2 = t.indexOf(v2, x2 + 1), x2 === -1 && L("quote", v2), p = x2; t.charCodeAt(p - 1) === T.backslash; ) - p -= 1, d2 = !d2; - while (d2); - M = T.str, C = o, E = a - i, u2 = x2 + 1; + for (E = false, D = t.indexOf(p, D + 1), D === -1 && R2("quote", p), Q = D; t.charCodeAt(Q - 1) === G.backslash; ) + Q -= 1, E = !E; + while (E); + b = G.str, B = o, c2 = s - i, a = D + 1; break; default: - l2 === T.slash && t.charCodeAt(a + 1) === T.asterisk ? (x2 = t.indexOf("*/", a + 2) + 1, x2 === 0 && L("comment", "*/"), I = t.slice(a, x2 + 1), k = I.split(` -`), y = k.length - 1, y > 0 ? (F = o + y, b = x2 - k[y].length) : (F = o, b = i), M = T.comment, o = F, C = F, E = x2 - b) : l2 === T.slash ? (x2 = a, M = l2, C = o, E = a - i, u2 = x2 + 1) : (x2 = jB(t, a), M = T.word, C = o, E = x2 - i), u2 = x2 + 1; + I === G.slash && t.charCodeAt(s + 1) === G.asterisk ? (D = t.indexOf("*/", s + 2) + 1, D === 0 && R2("comment", "*/"), g2 = t.slice(s, D + 1), m2 = g2.split(` +`), d2 = m2.length - 1, d2 > 0 ? (x2 = o + d2, y = D - m2[d2].length) : (x2 = o, y = i), b = G.comment, o = x2, B = x2, c2 = D - y) : I === G.slash ? (D = s, b = I, B = o, c2 = s - i, a = D + 1) : (D = YE(t, s), b = G.word, B = o, c2 = D - i), a = D + 1; break; } - e.push([M, o, a - i, C, E, a, u2]), b && (i = b, b = null), a = u2; + e.push([b, o, s - i, B, c2, s, a]), y && (i = y, y = null), s = a; } return e; } }); -var Gg = K2((br, Lg) => { +var xg = _((cr, kg) => { "use strict"; - br.__esModule = true; - br.default = void 0; - var tE = Re(Hi()), Bo = Re(Ti()), rE = Re(Ji()), kg = Re(Ki()), nE = Re(qi()), iE = Re(zi()), Eo = Re(ji()), oE = Re(Ao()), xg = bn(oo()), sE = Re(ao()), Qo = Re(uo()), aE = Re(lo()), gE = Re(wg()), G = bn(vg()), P2 = bn(co()), uE = bn(ee()), UA = ar(), Ct, Co; - function Fg() { + cr.__esModule = true; + cr.default = void 0; + var zE = ge(yi()), Ao = ge(Di()), ZE = ge(ki()), mg = ge(Ri()), jE = ge(Ni()), $E = ge(Li()), eo = ge(Ui()), Af = ge(Oi()), yg = Cn(Wi()), ef = ge(qi()), to = ge(Vi()), tf = ge(Zi()), rf = ge(Qg()), N = Cn(pg()), O = Cn(ji()), nf = Cn(UA()), hA = Xt(), it, ro; + function bg() { if (typeof WeakMap != "function") return null; var A = /* @__PURE__ */ new WeakMap(); - return Fg = function() { + return bg = function() { return A; }, A; } - function bn(A) { + function Cn(A) { if (A && A.__esModule) return A; if (A === null || typeof A != "object" && typeof A != "function") return { default: A }; - var e = Fg(); + var e = bg(); if (e && e.has(A)) return e.get(A); var t = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -16667,57 +15639,57 @@ var Gg = K2((br, Lg) => { } return t.default = A, e && e.set(A, t), t; } - function Re(A) { + function ge(A) { return A && A.__esModule ? A : { default: A }; } - function Rg(A, e) { + function wg(A, e) { for (var t = 0; t < e.length; t++) { var r = e[t]; r.enumerable = r.enumerable || false, r.configurable = true, "value" in r && (r.writable = true), Object.defineProperty(A, r.key, r); } } - function IE(A, e, t) { - return e && Rg(A.prototype, e), t && Rg(A, t), A; + function of(A, e, t) { + return e && wg(A.prototype, e), t && wg(A, t), A; } - var mo = (Ct = {}, Ct[P2.space] = true, Ct[P2.cr] = true, Ct[P2.feed] = true, Ct[P2.newline] = true, Ct[P2.tab] = true, Ct), lE = Object.assign({}, mo, (Co = {}, Co[P2.comment] = true, Co)); - function Ng(A) { - return { line: A[G.FIELDS.START_LINE], column: A[G.FIELDS.START_COL] }; + var oo = (it = {}, it[O.space] = true, it[O.cr] = true, it[O.feed] = true, it[O.newline] = true, it[O.tab] = true, it), sf = Object.assign({}, oo, (ro = {}, ro[O.comment] = true, ro)); + function Dg(A) { + return { line: A[N.FIELDS.START_LINE], column: A[N.FIELDS.START_COL] }; } - function Mg(A) { - return { line: A[G.FIELDS.END_LINE], column: A[G.FIELDS.END_COL] }; + function Sg(A) { + return { line: A[N.FIELDS.END_LINE], column: A[N.FIELDS.END_COL] }; } - function dt(A, e, t, r) { + function ot(A, e, t, r) { return { start: { line: A, column: e }, end: { line: t, column: r } }; } - function Ot(A) { - return dt(A[G.FIELDS.START_LINE], A[G.FIELDS.START_COL], A[G.FIELDS.END_LINE], A[G.FIELDS.END_COL]); + function yt(A) { + return ot(A[N.FIELDS.START_LINE], A[N.FIELDS.START_COL], A[N.FIELDS.END_LINE], A[N.FIELDS.END_COL]); } - function ho(A, e) { + function no(A, e) { if (A) - return dt(A[G.FIELDS.START_LINE], A[G.FIELDS.START_COL], e[G.FIELDS.END_LINE], e[G.FIELDS.END_COL]); + return ot(A[N.FIELDS.START_LINE], A[N.FIELDS.START_COL], e[N.FIELDS.END_LINE], e[N.FIELDS.END_COL]); } - function Tt(A, e) { + function wt(A, e) { var t = A[e]; if (typeof t == "string") - return t.indexOf("\\") !== -1 && ((0, UA.ensureObject)(A, "raws"), A[e] = (0, UA.unesc)(t), A.raws[e] === void 0 && (A.raws[e] = t)), A; + return t.indexOf("\\") !== -1 && ((0, hA.ensureObject)(A, "raws"), A[e] = (0, hA.unesc)(t), A.raws[e] === void 0 && (A.raws[e] = t)), A; } - function po(A, e) { + function io(A, e) { for (var t = -1, r = []; (t = A.indexOf(e, t + 1)) !== -1; ) r.push(t); return r; } - function cE() { + function af() { var A = Array.prototype.concat.apply([], arguments); return A.filter(function(e, t) { return t === A.indexOf(e); }); } - var fE = function() { + var gf = function() { function A(t, r) { - r === void 0 && (r = {}), this.rule = t, this.options = Object.assign({ lossy: false, safe: false }, r), this.position = 0, this.css = typeof this.rule == "string" ? this.rule : this.rule.selector, this.tokens = (0, G.default)({ css: this.css, error: this._errorGenerator(), safe: this.options.safe }); - var n = ho(this.tokens[0], this.tokens[this.tokens.length - 1]); - this.root = new tE.default({ source: n }), this.root.errorGenerator = this._errorGenerator(); - var i = new Bo.default({ source: { start: { line: 1, column: 1 } } }); + r === void 0 && (r = {}), this.rule = t, this.options = Object.assign({ lossy: false, safe: false }, r), this.position = 0, this.css = typeof this.rule == "string" ? this.rule : this.rule.selector, this.tokens = (0, N.default)({ css: this.css, error: this._errorGenerator(), safe: this.options.safe }); + var n = no(this.tokens[0], this.tokens[this.tokens.length - 1]); + this.root = new zE.default({ source: n }), this.root.errorGenerator = this._errorGenerator(); + var i = new Ao.default({ source: { start: { line: 1, column: 1 } } }); this.root.append(i), this.current = i, this.loop(); } var e = A.prototype; @@ -16728,138 +15700,138 @@ var Gg = K2((br, Lg) => { }; }, e.attribute = function() { var r = [], n = this.currToken; - for (this.position++; this.position < this.tokens.length && this.currToken[G.FIELDS.TYPE] !== P2.closeSquare; ) + for (this.position++; this.position < this.tokens.length && this.currToken[N.FIELDS.TYPE] !== O.closeSquare; ) r.push(this.currToken), this.position++; - if (this.currToken[G.FIELDS.TYPE] !== P2.closeSquare) - return this.expected("closing square bracket", this.currToken[G.FIELDS.START_POS]); - var i = r.length, o = { source: dt(n[1], n[2], this.currToken[3], this.currToken[4]), sourceIndex: n[G.FIELDS.START_POS] }; - if (i === 1 && !~[P2.word].indexOf(r[0][G.FIELDS.TYPE])) - return this.expected("attribute", r[0][G.FIELDS.START_POS]); - for (var a = 0, u2 = "", l2 = "", I = null, E = false; a < i; ) { - var C = r[a], d2 = this.content(C), p = r[a + 1]; - switch (C[G.FIELDS.TYPE]) { - case P2.space: - if (E = true, this.options.lossy) + if (this.currToken[N.FIELDS.TYPE] !== O.closeSquare) + return this.expected("closing square bracket", this.currToken[N.FIELDS.START_POS]); + var i = r.length, o = { source: ot(n[1], n[2], this.currToken[3], this.currToken[4]), sourceIndex: n[N.FIELDS.START_POS] }; + if (i === 1 && !~[O.word].indexOf(r[0][N.FIELDS.TYPE])) + return this.expected("attribute", r[0][N.FIELDS.START_POS]); + for (var s = 0, a = "", I = "", g2 = null, c2 = false; s < i; ) { + var B = r[s], E = this.content(B), Q = r[s + 1]; + switch (B[N.FIELDS.TYPE]) { + case O.space: + if (c2 = true, this.options.lossy) break; - if (I) { - (0, UA.ensureObject)(o, "spaces", I); - var y = o.spaces[I].after || ""; - o.spaces[I].after = y + d2; - var k = (0, UA.getProp)(o, "raws", "spaces", I, "after") || null; - k && (o.raws.spaces[I].after = k + d2); + if (g2) { + (0, hA.ensureObject)(o, "spaces", g2); + var d2 = o.spaces[g2].after || ""; + o.spaces[g2].after = d2 + E; + var m2 = (0, hA.getProp)(o, "raws", "spaces", g2, "after") || null; + m2 && (o.raws.spaces[g2].after = m2 + E); } else - u2 = u2 + d2, l2 = l2 + d2; + a = a + E, I = I + E; break; - case P2.asterisk: - if (p[G.FIELDS.TYPE] === P2.equals) - o.operator = d2, I = "operator"; - else if ((!o.namespace || I === "namespace" && !E) && p) { - u2 && ((0, UA.ensureObject)(o, "spaces", "attribute"), o.spaces.attribute.before = u2, u2 = ""), l2 && ((0, UA.ensureObject)(o, "raws", "spaces", "attribute"), o.raws.spaces.attribute.before = u2, l2 = ""), o.namespace = (o.namespace || "") + d2; - var x2 = (0, UA.getProp)(o, "raws", "namespace") || null; - x2 && (o.raws.namespace += d2), I = "namespace"; + case O.asterisk: + if (Q[N.FIELDS.TYPE] === O.equals) + o.operator = E, g2 = "operator"; + else if ((!o.namespace || g2 === "namespace" && !c2) && Q) { + a && ((0, hA.ensureObject)(o, "spaces", "attribute"), o.spaces.attribute.before = a, a = ""), I && ((0, hA.ensureObject)(o, "raws", "spaces", "attribute"), o.raws.spaces.attribute.before = a, I = ""), o.namespace = (o.namespace || "") + E; + var D = (0, hA.getProp)(o, "raws", "namespace") || null; + D && (o.raws.namespace += E), g2 = "namespace"; } - E = false; + c2 = false; break; - case P2.dollar: - if (I === "value") { - var F = (0, UA.getProp)(o, "raws", "value"); - o.value += "$", F && (o.raws.value = F + "$"); + case O.dollar: + if (g2 === "value") { + var x2 = (0, hA.getProp)(o, "raws", "value"); + o.value += "$", x2 && (o.raws.value = x2 + "$"); break; } - case P2.caret: - p[G.FIELDS.TYPE] === P2.equals && (o.operator = d2, I = "operator"), E = false; + case O.caret: + Q[N.FIELDS.TYPE] === O.equals && (o.operator = E, g2 = "operator"), c2 = false; break; - case P2.combinator: - if (d2 === "~" && p[G.FIELDS.TYPE] === P2.equals && (o.operator = d2, I = "operator"), d2 !== "|") { - E = false; + case O.combinator: + if (E === "~" && Q[N.FIELDS.TYPE] === O.equals && (o.operator = E, g2 = "operator"), E !== "|") { + c2 = false; break; } - p[G.FIELDS.TYPE] === P2.equals ? (o.operator = d2, I = "operator") : !o.namespace && !o.attribute && (o.namespace = true), E = false; + Q[N.FIELDS.TYPE] === O.equals ? (o.operator = E, g2 = "operator") : !o.namespace && !o.attribute && (o.namespace = true), c2 = false; break; - case P2.word: - if (p && this.content(p) === "|" && r[a + 2] && r[a + 2][G.FIELDS.TYPE] !== P2.equals && !o.operator && !o.namespace) - o.namespace = d2, I = "namespace"; - else if (!o.attribute || I === "attribute" && !E) { - u2 && ((0, UA.ensureObject)(o, "spaces", "attribute"), o.spaces.attribute.before = u2, u2 = ""), l2 && ((0, UA.ensureObject)(o, "raws", "spaces", "attribute"), o.raws.spaces.attribute.before = l2, l2 = ""), o.attribute = (o.attribute || "") + d2; - var b = (0, UA.getProp)(o, "raws", "attribute") || null; - b && (o.raws.attribute += d2), I = "attribute"; - } else if (!o.value && o.value !== "" || I === "value" && !E) { - var v2 = (0, UA.unesc)(d2), M = (0, UA.getProp)(o, "raws", "value") || "", L = o.value || ""; - o.value = L + v2, o.quoteMark = null, (v2 !== d2 || M) && ((0, UA.ensureObject)(o, "raws"), o.raws.value = (M || L) + d2), I = "value"; + case O.word: + if (Q && this.content(Q) === "|" && r[s + 2] && r[s + 2][N.FIELDS.TYPE] !== O.equals && !o.operator && !o.namespace) + o.namespace = E, g2 = "namespace"; + else if (!o.attribute || g2 === "attribute" && !c2) { + a && ((0, hA.ensureObject)(o, "spaces", "attribute"), o.spaces.attribute.before = a, a = ""), I && ((0, hA.ensureObject)(o, "raws", "spaces", "attribute"), o.raws.spaces.attribute.before = I, I = ""), o.attribute = (o.attribute || "") + E; + var y = (0, hA.getProp)(o, "raws", "attribute") || null; + y && (o.raws.attribute += E), g2 = "attribute"; + } else if (!o.value && o.value !== "" || g2 === "value" && !c2) { + var p = (0, hA.unesc)(E), b = (0, hA.getProp)(o, "raws", "value") || "", R2 = o.value || ""; + o.value = R2 + p, o.quoteMark = null, (p !== E || b) && ((0, hA.ensureObject)(o, "raws"), o.raws.value = (b || R2) + E), g2 = "value"; } else { - var O = d2 === "i" || d2 === "I"; - (o.value || o.value === "") && (o.quoteMark || E) ? (o.insensitive = O, (!O || d2 === "I") && ((0, UA.ensureObject)(o, "raws"), o.raws.insensitiveFlag = d2), I = "insensitive", u2 && ((0, UA.ensureObject)(o, "spaces", "insensitive"), o.spaces.insensitive.before = u2, u2 = ""), l2 && ((0, UA.ensureObject)(o, "raws", "spaces", "insensitive"), o.raws.spaces.insensitive.before = l2, l2 = "")) : (o.value || o.value === "") && (I = "value", o.value += d2, o.raws.value && (o.raws.value += d2)); + var U = E === "i" || E === "I"; + (o.value || o.value === "") && (o.quoteMark || c2) ? (o.insensitive = U, (!U || E === "I") && ((0, hA.ensureObject)(o, "raws"), o.raws.insensitiveFlag = E), g2 = "insensitive", a && ((0, hA.ensureObject)(o, "spaces", "insensitive"), o.spaces.insensitive.before = a, a = ""), I && ((0, hA.ensureObject)(o, "raws", "spaces", "insensitive"), o.raws.spaces.insensitive.before = I, I = "")) : (o.value || o.value === "") && (g2 = "value", o.value += E, o.raws.value && (o.raws.value += E)); } - E = false; + c2 = false; break; - case P2.str: + case O.str: if (!o.attribute || !o.operator) - return this.error("Expected an attribute followed by an operator preceding the string.", { index: C[G.FIELDS.START_POS] }); - var J = (0, xg.unescapeValue)(d2), j = J.unescaped, CA = J.quoteMark; - o.value = j, o.quoteMark = CA, I = "value", (0, UA.ensureObject)(o, "raws"), o.raws.value = d2, E = false; + return this.error("Expected an attribute followed by an operator preceding the string.", { index: B[N.FIELDS.START_POS] }); + var P2 = (0, yg.unescapeValue)(E), q = P2.unescaped, lA = P2.quoteMark; + o.value = q, o.quoteMark = lA, g2 = "value", (0, hA.ensureObject)(o, "raws"), o.raws.value = E, c2 = false; break; - case P2.equals: + case O.equals: if (!o.attribute) - return this.expected("attribute", C[G.FIELDS.START_POS], d2); + return this.expected("attribute", B[N.FIELDS.START_POS], E); if (o.value) - return this.error('Unexpected "=" found; an operator was already defined.', { index: C[G.FIELDS.START_POS] }); - o.operator = o.operator ? o.operator + d2 : d2, I = "operator", E = false; + return this.error('Unexpected "=" found; an operator was already defined.', { index: B[N.FIELDS.START_POS] }); + o.operator = o.operator ? o.operator + E : E, g2 = "operator", c2 = false; break; - case P2.comment: - if (I) - if (E || p && p[G.FIELDS.TYPE] === P2.space || I === "insensitive") { - var MA = (0, UA.getProp)(o, "spaces", I, "after") || "", dA = (0, UA.getProp)(o, "raws", "spaces", I, "after") || MA; - (0, UA.ensureObject)(o, "raws", "spaces", I), o.raws.spaces[I].after = dA + d2; + case O.comment: + if (g2) + if (c2 || Q && Q[N.FIELDS.TYPE] === O.space || g2 === "insensitive") { + var DA = (0, hA.getProp)(o, "spaces", g2, "after") || "", RA = (0, hA.getProp)(o, "raws", "spaces", g2, "after") || DA; + (0, hA.ensureObject)(o, "raws", "spaces", g2), o.raws.spaces[g2].after = RA + E; } else { - var sA = o[I] || "", vA = (0, UA.getProp)(o, "raws", I) || sA; - (0, UA.ensureObject)(o, "raws"), o.raws[I] = vA + d2; + var eA = o[g2] || "", NA = (0, hA.getProp)(o, "raws", g2) || eA; + (0, hA.ensureObject)(o, "raws"), o.raws[g2] = NA + E; } else - l2 = l2 + d2; + I = I + E; break; default: - return this.error('Unexpected "' + d2 + '" found.', { index: C[G.FIELDS.START_POS] }); + return this.error('Unexpected "' + E + '" found.', { index: B[N.FIELDS.START_POS] }); } - a++; + s++; } - Tt(o, "attribute"), Tt(o, "namespace"), this.newNode(new xg.default(o)), this.position++; + wt(o, "attribute"), wt(o, "namespace"), this.newNode(new yg.default(o)), this.position++; }, e.parseWhitespaceEquivalentTokens = function(r) { r < 0 && (r = this.tokens.length); - var n = this.position, i = [], o = "", a = void 0; + var n = this.position, i = [], o = "", s = void 0; do - if (mo[this.currToken[G.FIELDS.TYPE]]) + if (oo[this.currToken[N.FIELDS.TYPE]]) this.options.lossy || (o += this.content()); - else if (this.currToken[G.FIELDS.TYPE] === P2.comment) { - var u2 = {}; - o && (u2.before = o, o = ""), a = new kg.default({ value: this.content(), source: Ot(this.currToken), sourceIndex: this.currToken[G.FIELDS.START_POS], spaces: u2 }), i.push(a); + else if (this.currToken[N.FIELDS.TYPE] === O.comment) { + var a = {}; + o && (a.before = o, o = ""), s = new mg.default({ value: this.content(), source: yt(this.currToken), sourceIndex: this.currToken[N.FIELDS.START_POS], spaces: a }), i.push(s); } while (++this.position < r); if (o) { - if (a) - a.spaces.after = o; + if (s) + s.spaces.after = o; else if (!this.options.lossy) { - var l2 = this.tokens[n], I = this.tokens[this.position - 1]; - i.push(new Eo.default({ value: "", source: dt(l2[G.FIELDS.START_LINE], l2[G.FIELDS.START_COL], I[G.FIELDS.END_LINE], I[G.FIELDS.END_COL]), sourceIndex: l2[G.FIELDS.START_POS], spaces: { before: o, after: "" } })); + var I = this.tokens[n], g2 = this.tokens[this.position - 1]; + i.push(new eo.default({ value: "", source: ot(I[N.FIELDS.START_LINE], I[N.FIELDS.START_COL], g2[N.FIELDS.END_LINE], g2[N.FIELDS.END_COL]), sourceIndex: I[N.FIELDS.START_POS], spaces: { before: o, after: "" } })); } } return i; }, e.convertWhitespaceNodesToSpace = function(r, n) { var i = this; n === void 0 && (n = false); - var o = "", a = ""; - r.forEach(function(l2) { - var I = i.lossySpace(l2.spaces.before, n), E = i.lossySpace(l2.rawSpaceBefore, n); - o += I + i.lossySpace(l2.spaces.after, n && I.length === 0), a += I + l2.value + i.lossySpace(l2.rawSpaceAfter, n && E.length === 0); - }), a === o && (a = void 0); - var u2 = { space: o, rawSpace: a }; - return u2; + var o = "", s = ""; + r.forEach(function(I) { + var g2 = i.lossySpace(I.spaces.before, n), c2 = i.lossySpace(I.rawSpaceBefore, n); + o += g2 + i.lossySpace(I.spaces.after, n && g2.length === 0), s += g2 + I.value + i.lossySpace(I.rawSpaceAfter, n && c2.length === 0); + }), s === o && (s = void 0); + var a = { space: o, rawSpace: s }; + return a; }, e.isNamedCombinator = function(r) { - return r === void 0 && (r = this.position), this.tokens[r + 0] && this.tokens[r + 0][G.FIELDS.TYPE] === P2.slash && this.tokens[r + 1] && this.tokens[r + 1][G.FIELDS.TYPE] === P2.word && this.tokens[r + 2] && this.tokens[r + 2][G.FIELDS.TYPE] === P2.slash; + return r === void 0 && (r = this.position), this.tokens[r + 0] && this.tokens[r + 0][N.FIELDS.TYPE] === O.slash && this.tokens[r + 1] && this.tokens[r + 1][N.FIELDS.TYPE] === O.word && this.tokens[r + 2] && this.tokens[r + 2][N.FIELDS.TYPE] === O.slash; }, e.namedCombinator = function() { if (this.isNamedCombinator()) { - var r = this.content(this.tokens[this.position + 1]), n = (0, UA.unesc)(r).toLowerCase(), i = {}; + var r = this.content(this.tokens[this.position + 1]), n = (0, hA.unesc)(r).toLowerCase(), i = {}; n !== r && (i.value = "/" + r + "/"); - var o = new Qo.default({ value: "/" + n + "/", source: dt(this.currToken[G.FIELDS.START_LINE], this.currToken[G.FIELDS.START_COL], this.tokens[this.position + 2][G.FIELDS.END_LINE], this.tokens[this.position + 2][G.FIELDS.END_COL]), sourceIndex: this.currToken[G.FIELDS.START_POS], raws: i }); + var o = new to.default({ value: "/" + n + "/", source: ot(this.currToken[N.FIELDS.START_LINE], this.currToken[N.FIELDS.START_COL], this.tokens[this.position + 2][N.FIELDS.END_LINE], this.tokens[this.position + 2][N.FIELDS.END_COL]), sourceIndex: this.currToken[N.FIELDS.START_POS], raws: i }); return this.position = this.position + 3, o; } else this.unexpected(); @@ -16868,61 +15840,61 @@ var Gg = K2((br, Lg) => { if (this.content() === "|") return this.namespace(); var n = this.locateNextMeaningfulToken(this.position); - if (n < 0 || this.tokens[n][G.FIELDS.TYPE] === P2.comma) { + if (n < 0 || this.tokens[n][N.FIELDS.TYPE] === O.comma) { var i = this.parseWhitespaceEquivalentTokens(n); if (i.length > 0) { var o = this.current.last; if (o) { - var a = this.convertWhitespaceNodesToSpace(i), u2 = a.space, l2 = a.rawSpace; - l2 !== void 0 && (o.rawSpaceAfter += l2), o.spaces.after += u2; + var s = this.convertWhitespaceNodesToSpace(i), a = s.space, I = s.rawSpace; + I !== void 0 && (o.rawSpaceAfter += I), o.spaces.after += a; } else - i.forEach(function(M) { - return r.newNode(M); + i.forEach(function(b) { + return r.newNode(b); }); } return; } - var I = this.currToken, E = void 0; - n > this.position && (E = this.parseWhitespaceEquivalentTokens(n)); - var C; - if (this.isNamedCombinator() ? C = this.namedCombinator() : this.currToken[G.FIELDS.TYPE] === P2.combinator ? (C = new Qo.default({ value: this.content(), source: Ot(this.currToken), sourceIndex: this.currToken[G.FIELDS.START_POS] }), this.position++) : mo[this.currToken[G.FIELDS.TYPE]] || E || this.unexpected(), C) { - if (E) { - var d2 = this.convertWhitespaceNodesToSpace(E), p = d2.space, y = d2.rawSpace; - C.spaces.before = p, C.rawSpaceBefore = y; + var g2 = this.currToken, c2 = void 0; + n > this.position && (c2 = this.parseWhitespaceEquivalentTokens(n)); + var B; + if (this.isNamedCombinator() ? B = this.namedCombinator() : this.currToken[N.FIELDS.TYPE] === O.combinator ? (B = new to.default({ value: this.content(), source: yt(this.currToken), sourceIndex: this.currToken[N.FIELDS.START_POS] }), this.position++) : oo[this.currToken[N.FIELDS.TYPE]] || c2 || this.unexpected(), B) { + if (c2) { + var E = this.convertWhitespaceNodesToSpace(c2), Q = E.space, d2 = E.rawSpace; + B.spaces.before = Q, B.rawSpaceBefore = d2; } } else { - var k = this.convertWhitespaceNodesToSpace(E, true), x2 = k.space, F = k.rawSpace; - F || (F = x2); - var b = {}, v2 = { spaces: {} }; - x2.endsWith(" ") && F.endsWith(" ") ? (b.before = x2.slice(0, x2.length - 1), v2.spaces.before = F.slice(0, F.length - 1)) : x2.startsWith(" ") && F.startsWith(" ") ? (b.after = x2.slice(1), v2.spaces.after = F.slice(1)) : v2.value = F, C = new Qo.default({ value: " ", source: ho(I, this.tokens[this.position - 1]), sourceIndex: I[G.FIELDS.START_POS], spaces: b, raws: v2 }); + var m2 = this.convertWhitespaceNodesToSpace(c2, true), D = m2.space, x2 = m2.rawSpace; + x2 || (x2 = D); + var y = {}, p = { spaces: {} }; + D.endsWith(" ") && x2.endsWith(" ") ? (y.before = D.slice(0, D.length - 1), p.spaces.before = x2.slice(0, x2.length - 1)) : D.startsWith(" ") && x2.startsWith(" ") ? (y.after = D.slice(1), p.spaces.after = x2.slice(1)) : p.value = x2, B = new to.default({ value: " ", source: no(g2, this.tokens[this.position - 1]), sourceIndex: g2[N.FIELDS.START_POS], spaces: y, raws: p }); } - return this.currToken && this.currToken[G.FIELDS.TYPE] === P2.space && (C.spaces.after = this.optionalSpace(this.content()), this.position++), this.newNode(C); + return this.currToken && this.currToken[N.FIELDS.TYPE] === O.space && (B.spaces.after = this.optionalSpace(this.content()), this.position++), this.newNode(B); }, e.comma = function() { if (this.position === this.tokens.length - 1) { this.root.trailingComma = true, this.position++; return; } this.current._inferEndPosition(); - var r = new Bo.default({ source: { start: Ng(this.tokens[this.position + 1]) } }); + var r = new Ao.default({ source: { start: Dg(this.tokens[this.position + 1]) } }); this.current.parent.append(r), this.current = r, this.position++; }, e.comment = function() { var r = this.currToken; - this.newNode(new kg.default({ value: this.content(), source: Ot(r), sourceIndex: r[G.FIELDS.START_POS] })), this.position++; + this.newNode(new mg.default({ value: this.content(), source: yt(r), sourceIndex: r[N.FIELDS.START_POS] })), this.position++; }, e.error = function(r, n) { throw this.root.error(r, n); }, e.missingBackslash = function() { - return this.error("Expected a backslash preceding the semicolon.", { index: this.currToken[G.FIELDS.START_POS] }); + return this.error("Expected a backslash preceding the semicolon.", { index: this.currToken[N.FIELDS.START_POS] }); }, e.missingParenthesis = function() { - return this.expected("opening parenthesis", this.currToken[G.FIELDS.START_POS]); + return this.expected("opening parenthesis", this.currToken[N.FIELDS.START_POS]); }, e.missingSquareBracket = function() { - return this.expected("opening square bracket", this.currToken[G.FIELDS.START_POS]); + return this.expected("opening square bracket", this.currToken[N.FIELDS.START_POS]); }, e.unexpected = function() { - return this.error("Unexpected '" + this.content() + "'. Escaping special characters with \\ may help.", this.currToken[G.FIELDS.START_POS]); + return this.error("Unexpected '" + this.content() + "'. Escaping special characters with \\ may help.", this.currToken[N.FIELDS.START_POS]); }, e.namespace = function() { var r = this.prevToken && this.content(this.prevToken) || true; - if (this.nextToken[G.FIELDS.TYPE] === P2.word) + if (this.nextToken[N.FIELDS.TYPE] === O.word) return this.position++, this.word(r); - if (this.nextToken[G.FIELDS.TYPE] === P2.asterisk) + if (this.nextToken[N.FIELDS.TYPE] === O.asterisk) return this.position++, this.universal(r); }, e.nesting = function() { if (this.nextToken) { @@ -16933,82 +15905,82 @@ var Gg = K2((br, Lg) => { } } var n = this.currToken; - this.newNode(new aE.default({ value: this.content(), source: Ot(n), sourceIndex: n[G.FIELDS.START_POS] })), this.position++; + this.newNode(new tf.default({ value: this.content(), source: yt(n), sourceIndex: n[N.FIELDS.START_POS] })), this.position++; }, e.parentheses = function() { var r = this.current.last, n = 1; - if (this.position++, r && r.type === uE.PSEUDO) { - var i = new Bo.default({ source: { start: Ng(this.tokens[this.position - 1]) } }), o = this.current; + if (this.position++, r && r.type === nf.PSEUDO) { + var i = new Ao.default({ source: { start: Dg(this.tokens[this.position - 1]) } }), o = this.current; for (r.append(i), this.current = i; this.position < this.tokens.length && n; ) - this.currToken[G.FIELDS.TYPE] === P2.openParenthesis && n++, this.currToken[G.FIELDS.TYPE] === P2.closeParenthesis && n--, n ? this.parse() : (this.current.source.end = Mg(this.currToken), this.current.parent.source.end = Mg(this.currToken), this.position++); + this.currToken[N.FIELDS.TYPE] === O.openParenthesis && n++, this.currToken[N.FIELDS.TYPE] === O.closeParenthesis && n--, n ? this.parse() : (this.current.source.end = Sg(this.currToken), this.current.parent.source.end = Sg(this.currToken), this.position++); this.current = o; } else { - for (var a = this.currToken, u2 = "(", l2; this.position < this.tokens.length && n; ) - this.currToken[G.FIELDS.TYPE] === P2.openParenthesis && n++, this.currToken[G.FIELDS.TYPE] === P2.closeParenthesis && n--, l2 = this.currToken, u2 += this.parseParenthesisToken(this.currToken), this.position++; - r ? r.appendToPropertyAndEscape("value", u2, u2) : this.newNode(new Eo.default({ value: u2, source: dt(a[G.FIELDS.START_LINE], a[G.FIELDS.START_COL], l2[G.FIELDS.END_LINE], l2[G.FIELDS.END_COL]), sourceIndex: a[G.FIELDS.START_POS] })); + for (var s = this.currToken, a = "(", I; this.position < this.tokens.length && n; ) + this.currToken[N.FIELDS.TYPE] === O.openParenthesis && n++, this.currToken[N.FIELDS.TYPE] === O.closeParenthesis && n--, I = this.currToken, a += this.parseParenthesisToken(this.currToken), this.position++; + r ? r.appendToPropertyAndEscape("value", a, a) : this.newNode(new eo.default({ value: a, source: ot(s[N.FIELDS.START_LINE], s[N.FIELDS.START_COL], I[N.FIELDS.END_LINE], I[N.FIELDS.END_COL]), sourceIndex: s[N.FIELDS.START_POS] })); } if (n) - return this.expected("closing parenthesis", this.currToken[G.FIELDS.START_POS]); + return this.expected("closing parenthesis", this.currToken[N.FIELDS.START_POS]); }, e.pseudo = function() { - for (var r = this, n = "", i = this.currToken; this.currToken && this.currToken[G.FIELDS.TYPE] === P2.colon; ) + for (var r = this, n = "", i = this.currToken; this.currToken && this.currToken[N.FIELDS.TYPE] === O.colon; ) n += this.content(), this.position++; if (!this.currToken) return this.expected(["pseudo-class", "pseudo-element"], this.position - 1); - if (this.currToken[G.FIELDS.TYPE] === P2.word) - this.splitWord(false, function(o, a) { - n += o, r.newNode(new oE.default({ value: n, source: ho(i, r.currToken), sourceIndex: i[G.FIELDS.START_POS] })), a > 1 && r.nextToken && r.nextToken[G.FIELDS.TYPE] === P2.openParenthesis && r.error("Misplaced parenthesis.", { index: r.nextToken[G.FIELDS.START_POS] }); + if (this.currToken[N.FIELDS.TYPE] === O.word) + this.splitWord(false, function(o, s) { + n += o, r.newNode(new Af.default({ value: n, source: no(i, r.currToken), sourceIndex: i[N.FIELDS.START_POS] })), s > 1 && r.nextToken && r.nextToken[N.FIELDS.TYPE] === O.openParenthesis && r.error("Misplaced parenthesis.", { index: r.nextToken[N.FIELDS.START_POS] }); }); else - return this.expected(["pseudo-class", "pseudo-element"], this.currToken[G.FIELDS.START_POS]); + return this.expected(["pseudo-class", "pseudo-element"], this.currToken[N.FIELDS.START_POS]); }, e.space = function() { var r = this.content(); - this.position === 0 || this.prevToken[G.FIELDS.TYPE] === P2.comma || this.prevToken[G.FIELDS.TYPE] === P2.openParenthesis || this.current.nodes.every(function(n) { + this.position === 0 || this.prevToken[N.FIELDS.TYPE] === O.comma || this.prevToken[N.FIELDS.TYPE] === O.openParenthesis || this.current.nodes.every(function(n) { return n.type === "comment"; - }) ? (this.spaces = this.optionalSpace(r), this.position++) : this.position === this.tokens.length - 1 || this.nextToken[G.FIELDS.TYPE] === P2.comma || this.nextToken[G.FIELDS.TYPE] === P2.closeParenthesis ? (this.current.last.spaces.after = this.optionalSpace(r), this.position++) : this.combinator(); + }) ? (this.spaces = this.optionalSpace(r), this.position++) : this.position === this.tokens.length - 1 || this.nextToken[N.FIELDS.TYPE] === O.comma || this.nextToken[N.FIELDS.TYPE] === O.closeParenthesis ? (this.current.last.spaces.after = this.optionalSpace(r), this.position++) : this.combinator(); }, e.string = function() { var r = this.currToken; - this.newNode(new Eo.default({ value: this.content(), source: Ot(r), sourceIndex: r[G.FIELDS.START_POS] })), this.position++; + this.newNode(new eo.default({ value: this.content(), source: yt(r), sourceIndex: r[N.FIELDS.START_POS] })), this.position++; }, e.universal = function(r) { var n = this.nextToken; if (n && this.content(n) === "|") return this.position++, this.namespace(); var i = this.currToken; - this.newNode(new sE.default({ value: this.content(), source: Ot(i), sourceIndex: i[G.FIELDS.START_POS] }), r), this.position++; + this.newNode(new ef.default({ value: this.content(), source: yt(i), sourceIndex: i[N.FIELDS.START_POS] }), r), this.position++; }, e.splitWord = function(r, n) { - for (var i = this, o = this.nextToken, a = this.content(); o && ~[P2.dollar, P2.caret, P2.equals, P2.word].indexOf(o[G.FIELDS.TYPE]); ) { + for (var i = this, o = this.nextToken, s = this.content(); o && ~[O.dollar, O.caret, O.equals, O.word].indexOf(o[N.FIELDS.TYPE]); ) { this.position++; - var u2 = this.content(); - if (a += u2, u2.lastIndexOf("\\") === u2.length - 1) { - var l2 = this.nextToken; - l2 && l2[G.FIELDS.TYPE] === P2.space && (a += this.requiredSpace(this.content(l2)), this.position++); + var a = this.content(); + if (s += a, a.lastIndexOf("\\") === a.length - 1) { + var I = this.nextToken; + I && I[N.FIELDS.TYPE] === O.space && (s += this.requiredSpace(this.content(I)), this.position++); } o = this.nextToken; } - var I = po(a, ".").filter(function(p) { - var y = a[p - 1] === "\\", k = /^\d+\.\d+%$/.test(a); - return !y && !k; - }), E = po(a, "#").filter(function(p) { - return a[p - 1] !== "\\"; - }), C = po(a, "#{"); - C.length && (E = E.filter(function(p) { - return !~C.indexOf(p); + var g2 = io(s, ".").filter(function(Q) { + var d2 = s[Q - 1] === "\\", m2 = /^\d+\.\d+%$/.test(s); + return !d2 && !m2; + }), c2 = io(s, "#").filter(function(Q) { + return s[Q - 1] !== "\\"; + }), B = io(s, "#{"); + B.length && (c2 = c2.filter(function(Q) { + return !~B.indexOf(Q); })); - var d2 = (0, gE.default)(cE([0].concat(I, E))); - d2.forEach(function(p, y) { - var k = d2[y + 1] || a.length, x2 = a.slice(p, k); - if (y === 0 && n) - return n.call(i, x2, d2.length); - var F, b = i.currToken, v2 = b[G.FIELDS.START_POS] + d2[y], M = dt(b[1], b[2] + p, b[3], b[2] + (k - 1)); - if (~I.indexOf(p)) { - var L = { value: x2.slice(1), source: M, sourceIndex: v2 }; - F = new rE.default(Tt(L, "value")); - } else if (~E.indexOf(p)) { - var O = { value: x2.slice(1), source: M, sourceIndex: v2 }; - F = new nE.default(Tt(O, "value")); + var E = (0, rf.default)(af([0].concat(g2, c2))); + E.forEach(function(Q, d2) { + var m2 = E[d2 + 1] || s.length, D = s.slice(Q, m2); + if (d2 === 0 && n) + return n.call(i, D, E.length); + var x2, y = i.currToken, p = y[N.FIELDS.START_POS] + E[d2], b = ot(y[1], y[2] + Q, y[3], y[2] + (m2 - 1)); + if (~g2.indexOf(Q)) { + var R2 = { value: D.slice(1), source: b, sourceIndex: p }; + x2 = new ZE.default(wt(R2, "value")); + } else if (~c2.indexOf(Q)) { + var U = { value: D.slice(1), source: b, sourceIndex: p }; + x2 = new jE.default(wt(U, "value")); } else { - var J = { value: x2, source: M, sourceIndex: v2 }; - Tt(J, "value"), F = new iE.default(J); + var P2 = { value: D, source: b, sourceIndex: p }; + wt(P2, "value"), x2 = new $E.default(P2); } - i.newNode(F, r), r = null; + i.newNode(x2, r), r = null; }), this.position++; }, e.word = function(r) { var n = this.nextToken; @@ -17018,50 +15990,50 @@ var Gg = K2((br, Lg) => { this.parse(true); return this.current._inferEndPosition(), this.root; }, e.parse = function(r) { - switch (this.currToken[G.FIELDS.TYPE]) { - case P2.space: + switch (this.currToken[N.FIELDS.TYPE]) { + case O.space: this.space(); break; - case P2.comment: + case O.comment: this.comment(); break; - case P2.openParenthesis: + case O.openParenthesis: this.parentheses(); break; - case P2.closeParenthesis: + case O.closeParenthesis: r && this.missingParenthesis(); break; - case P2.openSquare: + case O.openSquare: this.attribute(); break; - case P2.dollar: - case P2.caret: - case P2.equals: - case P2.word: + case O.dollar: + case O.caret: + case O.equals: + case O.word: this.word(); break; - case P2.colon: + case O.colon: this.pseudo(); break; - case P2.comma: + case O.comma: this.comma(); break; - case P2.asterisk: + case O.asterisk: this.universal(); break; - case P2.ampersand: + case O.ampersand: this.nesting(); break; - case P2.slash: - case P2.combinator: + case O.slash: + case O.combinator: this.combinator(); break; - case P2.str: + case O.str: this.string(); break; - case P2.closeSquare: + case O.closeSquare: this.missingSquareBracket(); - case P2.semicolon: + case O.semicolon: this.missingBackslash(); default: this.unexpected(); @@ -17071,8 +16043,8 @@ var Gg = K2((br, Lg) => { var o = r.pop(); r = r.join(", ") + " or " + o; } - var a = /^[aeiou]/.test(r[0]) ? "an" : "a"; - return i ? this.error("Expected " + a + " " + r + ', found "' + i + '" instead.', { index: n }) : this.error("Expected " + a + " " + r + ".", { index: n }); + var s = /^[aeiou]/.test(r[0]) ? "an" : "a"; + return i ? this.error("Expected " + s + " " + r + ', found "' + i + '" instead.', { index: n }) : this.error("Expected " + s + " " + r + ".", { index: n }); }, e.requiredSpace = function(r) { return this.options.lossy ? " " : r; }, e.optionalSpace = function(r) { @@ -17081,21 +16053,21 @@ var Gg = K2((br, Lg) => { return this.options.lossy ? n ? " " : "" : r; }, e.parseParenthesisToken = function(r) { var n = this.content(r); - return r[G.FIELDS.TYPE] === P2.space ? this.requiredSpace(n) : n; + return r[N.FIELDS.TYPE] === O.space ? this.requiredSpace(n) : n; }, e.newNode = function(r, n) { - return n && (/^ +$/.test(n) && (this.options.lossy || (this.spaces = (this.spaces || "") + n), n = true), r.namespace = n, Tt(r, "namespace")), this.spaces && (r.spaces.before = this.spaces, this.spaces = ""), this.current.append(r); + return n && (/^ +$/.test(n) && (this.options.lossy || (this.spaces = (this.spaces || "") + n), n = true), r.namespace = n, wt(r, "namespace")), this.spaces && (r.spaces.before = this.spaces, this.spaces = ""), this.current.append(r); }, e.content = function(r) { - return r === void 0 && (r = this.currToken), this.css.slice(r[G.FIELDS.START_POS], r[G.FIELDS.END_POS]); + return r === void 0 && (r = this.currToken), this.css.slice(r[N.FIELDS.START_POS], r[N.FIELDS.END_POS]); }, e.locateNextMeaningfulToken = function(r) { r === void 0 && (r = this.position + 1); for (var n = r; n < this.tokens.length; ) - if (lE[this.tokens[n][G.FIELDS.TYPE]]) { + if (sf[this.tokens[n][N.FIELDS.TYPE]]) { n++; continue; } else return n; return -1; - }, IE(A, [{ key: "currToken", get: function() { + }, of(A, [{ key: "currToken", get: function() { return this.tokens[this.position]; } }, { key: "nextToken", get: function() { return this.tokens[this.position + 1]; @@ -17103,18 +16075,18 @@ var Gg = K2((br, Lg) => { return this.tokens[this.position - 1]; } }]), A; }(); - br.default = fE; - Lg.exports = br.default; + cr.default = gf; + kg.exports = cr.default; }); -var Hg = K2((vr, Ug) => { +var vg = _((Br, Rg) => { "use strict"; - vr.__esModule = true; - vr.default = void 0; - var BE = EE(Gg()); - function EE(A) { + Br.__esModule = true; + Br.default = void 0; + var If = uf(xg()); + function uf(A) { return A && A.__esModule ? A : { default: A }; } - var QE = function() { + var lf = function() { function A(t, r) { this.func = t || function() { }, this.funcRes = null, this.options = r; @@ -17130,21 +16102,21 @@ var Hg = K2((vr, Ug) => { return n.lossless === false; }, e._root = function(r, n) { n === void 0 && (n = {}); - var i = new BE.default(r, this._parseOptions(n)); + var i = new If.default(r, this._parseOptions(n)); return i.root; }, e._parseOptions = function(r) { return { lossy: this._isLossy(r) }; }, e._run = function(r, n) { var i = this; - return n === void 0 && (n = {}), new Promise(function(o, a) { + return n === void 0 && (n = {}), new Promise(function(o, s) { try { - var u2 = i._root(r, n); - Promise.resolve(i.func(u2)).then(function(l2) { - var I = void 0; - return i._shouldUpdateSelector(r, n) && (I = u2.toString(), r.selector = I), { transform: l2, root: u2, string: I }; - }).then(o, a); - } catch (l2) { - a(l2); + var a = i._root(r, n); + Promise.resolve(i.func(a)).then(function(I) { + var g2 = void 0; + return i._shouldUpdateSelector(r, n) && (g2 = a.toString(), r.selector = g2), { transform: I, root: a, string: g2 }; + }).then(o, s); + } catch (I) { + s(I); return; } }); @@ -17153,8 +16125,8 @@ var Hg = K2((vr, Ug) => { var i = this._root(r, n), o = this.func(i); if (o && typeof o.then == "function") throw new Error("Selector processor returned a promise to a synchronous call."); - var a = void 0; - return n.updateSelector && typeof r != "string" && (a = i.toString(), r.selector = a), { transform: o, root: i, string: a }; + var s = void 0; + return n.updateSelector && typeof r != "string" && (s = i.toString(), r.selector = s), { transform: o, root: i, string: s }; }, e.ast = function(r, n) { return this._run(r, n).then(function(i) { return i.root; @@ -17176,154 +16148,154 @@ var Hg = K2((vr, Ug) => { return i.string || i.root.toString(); }, A; }(); - vr.default = QE; - Ug.exports = vr.default; + Br.default = lf; + Rg.exports = Br.default; }); -var Og = K2((bA) => { +var Ng = _((EA) => { "use strict"; - bA.__esModule = true; - bA.universal = bA.tag = bA.string = bA.selector = bA.root = bA.pseudo = bA.nesting = bA.id = bA.comment = bA.combinator = bA.className = bA.attribute = void 0; - var CE = Ne(oo()), dE = Ne(Ji()), hE = Ne(uo()), pE = Ne(Ki()), mE = Ne(qi()), yE = Ne(lo()), wE = Ne(Ao()), DE = Ne(Hi()), SE = Ne(Ti()), bE = Ne(ji()), vE = Ne(zi()), kE = Ne(ao()); - function Ne(A) { + EA.__esModule = true; + EA.universal = EA.tag = EA.string = EA.selector = EA.root = EA.pseudo = EA.nesting = EA.id = EA.comment = EA.combinator = EA.className = EA.attribute = void 0; + var cf = Ie(Wi()), Bf = Ie(ki()), Ef = Ie(Vi()), ff = Ie(Ri()), Qf = Ie(Ni()), Cf = Ie(Zi()), df = Ie(Oi()), hf = Ie(yi()), pf = Ie(Di()), mf = Ie(Ui()), yf = Ie(Li()), wf = Ie(qi()); + function Ie(A) { return A && A.__esModule ? A : { default: A }; } - var xE = function(e) { - return new CE.default(e); + var Df = function(e) { + return new cf.default(e); }; - bA.attribute = xE; - var RE = function(e) { - return new dE.default(e); + EA.attribute = Df; + var Sf = function(e) { + return new Bf.default(e); }; - bA.className = RE; - var NE = function(e) { - return new hE.default(e); + EA.className = Sf; + var bf = function(e) { + return new Ef.default(e); }; - bA.combinator = NE; - var ME = function(e) { - return new pE.default(e); + EA.combinator = bf; + var kf = function(e) { + return new ff.default(e); }; - bA.comment = ME; - var FE = function(e) { - return new mE.default(e); + EA.comment = kf; + var xf = function(e) { + return new Qf.default(e); }; - bA.id = FE; - var LE = function(e) { - return new yE.default(e); + EA.id = xf; + var Rf = function(e) { + return new Cf.default(e); }; - bA.nesting = LE; - var GE = function(e) { - return new wE.default(e); + EA.nesting = Rf; + var vf = function(e) { + return new df.default(e); }; - bA.pseudo = GE; - var UE = function(e) { - return new DE.default(e); + EA.pseudo = vf; + var Nf = function(e) { + return new hf.default(e); }; - bA.root = UE; - var HE = function(e) { - return new SE.default(e); + EA.root = Nf; + var Ff = function(e) { + return new pf.default(e); }; - bA.selector = HE; - var OE = function(e) { - return new bE.default(e); + EA.selector = Ff; + var Mf = function(e) { + return new mf.default(e); }; - bA.string = OE; - var TE = function(e) { - return new vE.default(e); + EA.string = Mf; + var Lf = function(e) { + return new yf.default(e); }; - bA.tag = TE; - var PE = function(e) { - return new kE.default(e); + EA.tag = Lf; + var Gf = function(e) { + return new wf.default(e); }; - bA.universal = PE; + EA.universal = Gf; }); -var Jg = K2((EA) => { +var Gg = _((sA) => { "use strict"; - EA.__esModule = true; - EA.isNode = yo; - EA.isPseudoElement = _g; - EA.isPseudoClass = jE; - EA.isContainer = $E; - EA.isNamespace = AQ; - EA.isUniversal = EA.isTag = EA.isString = EA.isSelector = EA.isRoot = EA.isPseudo = EA.isNesting = EA.isIdentifier = EA.isComment = EA.isCombinator = EA.isClassName = EA.isAttribute = void 0; - var HA = ee(), he, _E = (he = {}, he[HA.ATTRIBUTE] = true, he[HA.CLASS] = true, he[HA.COMBINATOR] = true, he[HA.COMMENT] = true, he[HA.ID] = true, he[HA.NESTING] = true, he[HA.PSEUDO] = true, he[HA.ROOT] = true, he[HA.SELECTOR] = true, he[HA.STRING] = true, he[HA.TAG] = true, he[HA.UNIVERSAL] = true, he); - function yo(A) { - return typeof A == "object" && _E[A.type]; - } - function Me(A, e) { - return yo(e) && e.type === A; - } - var Tg = Me.bind(null, HA.ATTRIBUTE); - EA.isAttribute = Tg; - var JE = Me.bind(null, HA.CLASS); - EA.isClassName = JE; - var WE = Me.bind(null, HA.COMBINATOR); - EA.isCombinator = WE; - var KE = Me.bind(null, HA.COMMENT); - EA.isComment = KE; - var YE = Me.bind(null, HA.ID); - EA.isIdentifier = YE; - var qE = Me.bind(null, HA.NESTING); - EA.isNesting = qE; - var wo = Me.bind(null, HA.PSEUDO); - EA.isPseudo = wo; - var XE = Me.bind(null, HA.ROOT); - EA.isRoot = XE; - var VE = Me.bind(null, HA.SELECTOR); - EA.isSelector = VE; - var zE = Me.bind(null, HA.STRING); - EA.isString = zE; - var Pg = Me.bind(null, HA.TAG); - EA.isTag = Pg; - var ZE = Me.bind(null, HA.UNIVERSAL); - EA.isUniversal = ZE; - function _g(A) { - return wo(A) && A.value && (A.value.startsWith("::") || A.value.toLowerCase() === ":before" || A.value.toLowerCase() === ":after" || A.value.toLowerCase() === ":first-letter" || A.value.toLowerCase() === ":first-line"); - } - function jE(A) { - return wo(A) && !_g(A); - } - function $E(A) { - return !!(yo(A) && A.walk); - } - function AQ(A) { - return Tg(A) || Pg(A); + sA.__esModule = true; + sA.isNode = so; + sA.isPseudoElement = Lg; + sA.isPseudoClass = qf; + sA.isContainer = Xf; + sA.isNamespace = Vf; + sA.isUniversal = sA.isTag = sA.isString = sA.isSelector = sA.isRoot = sA.isPseudo = sA.isNesting = sA.isIdentifier = sA.isComment = sA.isCombinator = sA.isClassName = sA.isAttribute = void 0; + var pA = UA(), VA, Uf = (VA = {}, VA[pA.ATTRIBUTE] = true, VA[pA.CLASS] = true, VA[pA.COMBINATOR] = true, VA[pA.COMMENT] = true, VA[pA.ID] = true, VA[pA.NESTING] = true, VA[pA.PSEUDO] = true, VA[pA.ROOT] = true, VA[pA.SELECTOR] = true, VA[pA.STRING] = true, VA[pA.TAG] = true, VA[pA.UNIVERSAL] = true, VA); + function so(A) { + return typeof A == "object" && Uf[A.type]; + } + function ue(A, e) { + return so(e) && e.type === A; + } + var Fg = ue.bind(null, pA.ATTRIBUTE); + sA.isAttribute = Fg; + var Hf = ue.bind(null, pA.CLASS); + sA.isClassName = Hf; + var Of = ue.bind(null, pA.COMBINATOR); + sA.isCombinator = Of; + var Tf = ue.bind(null, pA.COMMENT); + sA.isComment = Tf; + var Pf = ue.bind(null, pA.ID); + sA.isIdentifier = Pf; + var _f = ue.bind(null, pA.NESTING); + sA.isNesting = _f; + var ao = ue.bind(null, pA.PSEUDO); + sA.isPseudo = ao; + var Jf = ue.bind(null, pA.ROOT); + sA.isRoot = Jf; + var Kf = ue.bind(null, pA.SELECTOR); + sA.isSelector = Kf; + var Wf = ue.bind(null, pA.STRING); + sA.isString = Wf; + var Mg = ue.bind(null, pA.TAG); + sA.isTag = Mg; + var Yf = ue.bind(null, pA.UNIVERSAL); + sA.isUniversal = Yf; + function Lg(A) { + return ao(A) && A.value && (A.value.startsWith("::") || A.value.toLowerCase() === ":before" || A.value.toLowerCase() === ":after" || A.value.toLowerCase() === ":first-letter" || A.value.toLowerCase() === ":first-line"); + } + function qf(A) { + return ao(A) && !Lg(A); + } + function Xf(A) { + return !!(so(A) && A.walk); + } + function Vf(A) { + return Fg(A) || Mg(A); } }); -var Wg = K2((Te) => { +var Ug = _((me) => { "use strict"; - Te.__esModule = true; - var Do = ee(); - Object.keys(Do).forEach(function(A) { - A === "default" || A === "__esModule" || A in Te && Te[A] === Do[A] || (Te[A] = Do[A]); + me.__esModule = true; + var go = UA(); + Object.keys(go).forEach(function(A) { + A === "default" || A === "__esModule" || A in me && me[A] === go[A] || (me[A] = go[A]); }); - var So = Og(); - Object.keys(So).forEach(function(A) { - A === "default" || A === "__esModule" || A in Te && Te[A] === So[A] || (Te[A] = So[A]); + var Io = Ng(); + Object.keys(Io).forEach(function(A) { + A === "default" || A === "__esModule" || A in me && me[A] === Io[A] || (me[A] = Io[A]); }); - var bo = Jg(); - Object.keys(bo).forEach(function(A) { - A === "default" || A === "__esModule" || A in Te && Te[A] === bo[A] || (Te[A] = bo[A]); + var uo = Gg(); + Object.keys(uo).forEach(function(A) { + A === "default" || A === "__esModule" || A in me && me[A] === uo[A] || (me[A] = uo[A]); }); }); -var qg = K2((kr, Yg) => { +var Tg = _((Er, Og) => { "use strict"; - kr.__esModule = true; - kr.default = void 0; - var eQ = nQ(Hg()), tQ = rQ(Wg()); - function Kg() { + Er.__esModule = true; + Er.default = void 0; + var zf = $f(vg()), Zf = jf(Ug()); + function Hg() { if (typeof WeakMap != "function") return null; var A = /* @__PURE__ */ new WeakMap(); - return Kg = function() { + return Hg = function() { return A; }, A; } - function rQ(A) { + function jf(A) { if (A && A.__esModule) return A; if (A === null || typeof A != "object" && typeof A != "function") return { default: A }; - var e = Kg(); + var e = Hg(); if (e && e.has(A)) return e.get(A); var t = {}, r = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -17334,142 +16306,142 @@ var qg = K2((kr, Yg) => { } return t.default = A, e && e.set(A, t), t; } - function nQ(A) { + function $f(A) { return A && A.__esModule ? A : { default: A }; } - var vo = function(e) { - return new eQ.default(e); + var lo = function(e) { + return new zf.default(e); }; - Object.assign(vo, tQ); - delete vo.__esModule; - var iQ = vo; - kr.default = iQ; - Yg.exports = kr.default; + Object.assign(lo, Zf); + delete lo.__esModule; + var AQ = lo; + Er.default = AQ; + Og.exports = Er.default; }); -var Xg = K2((ko) => { +var Pg = _((co) => { "use strict"; - Object.defineProperty(ko, "__esModule", { value: true }); - Object.defineProperty(ko, "default", { enumerable: true, get: () => oQ }); - function oQ(A) { + Object.defineProperty(co, "__esModule", { value: true }); + Object.defineProperty(co, "default", { enumerable: true, get: () => eQ }); + function eQ(A) { return A.replace(/\\,/g, "\\2c "); } }); -var zg = K2((d0, Vg) => { +var Jg = _((Q0, _g) => { "use strict"; - Vg.exports = { 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, 134, 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, 250, 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, 221], 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: [112, 128, 144], slategrey: [112, 128, 144], snow: [255, 250, 250], springgreen: [0, 255, 127], steelblue: [70, 130, 180], tan: [210, 180, 140], teal: [0, 128, 128], thistle: [216, 191, 216], 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, 50] }; + _g.exports = { 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, 134, 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, 250, 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, 221], 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: [112, 128, 144], slategrey: [112, 128, 144], snow: [255, 250, 250], springgreen: [0, 255, 127], steelblue: [70, 130, 180], tan: [210, 180, 140], teal: [0, 128, 128], thistle: [216, 191, 216], 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, 50] }; }); -var Ro = K2((xo) => { +var Eo = _((Bo) => { "use strict"; - Object.defineProperty(xo, "__esModule", { value: true }); - function sQ(A, e) { + Object.defineProperty(Bo, "__esModule", { value: true }); + function tQ(A, e) { for (var t in e) Object.defineProperty(A, t, { enumerable: true, get: e[t] }); } - sQ(xo, { parseColor: () => cQ, formatColor: () => fQ }); - var Zg = aQ(zg()); - function aQ(A) { + tQ(Bo, { parseColor: () => aQ, formatColor: () => gQ }); + var Kg = rQ(Jg()); + function rQ(A) { return A && A.__esModule ? A : { default: A }; } - var gQ = /^#([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i, uQ = /^#([a-f\d])([a-f\d])([a-f\d])([a-f\d])?$/i, ot = /(?:\d+|\d*\.\d+)%?/, vn = /(?:\s*,\s*|\s+)/, jg = /\s*[,/]\s*/, st = /var\(--(?:[^ )]*?)\)/, IQ = new RegExp(`^(rgb)a?\\(\\s*(${ot.source}|${st.source})(?:${vn.source}(${ot.source}|${st.source}))?(?:${vn.source}(${ot.source}|${st.source}))?(?:${jg.source}(${ot.source}|${st.source}))?\\s*\\)$`), lQ = new RegExp(`^(hsl)a?\\(\\s*((?:${ot.source})(?:deg|rad|grad|turn)?|${st.source})(?:${vn.source}(${ot.source}|${st.source}))?(?:${vn.source}(${ot.source}|${st.source}))?(?:${jg.source}(${ot.source}|${st.source}))?\\s*\\)$`); - function cQ(A, { loose: e = false } = {}) { + var nQ = /^#([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})?$/i, iQ = /^#([a-f\d])([a-f\d])([a-f\d])([a-f\d])?$/i, Ve = /(?:\d+|\d*\.\d+)%?/, dn = /(?:\s*,\s*|\s+)/, Wg = /\s*[,/]\s*/, ze = /var\(--(?:[^ )]*?)\)/, oQ = new RegExp(`^(rgb)a?\\(\\s*(${Ve.source}|${ze.source})(?:${dn.source}(${Ve.source}|${ze.source}))?(?:${dn.source}(${Ve.source}|${ze.source}))?(?:${Wg.source}(${Ve.source}|${ze.source}))?\\s*\\)$`), sQ = new RegExp(`^(hsl)a?\\(\\s*((?:${Ve.source})(?:deg|rad|grad|turn)?|${ze.source})(?:${dn.source}(${Ve.source}|${ze.source}))?(?:${dn.source}(${Ve.source}|${ze.source}))?(?:${Wg.source}(${Ve.source}|${ze.source}))?\\s*\\)$`); + function aQ(A, { loose: e = false } = {}) { var t, r; if (typeof A != "string") return null; if (A = A.trim(), A === "transparent") return { mode: "rgb", color: ["0", "0", "0"], alpha: "0" }; - if (A in Zg.default) - return { mode: "rgb", color: Zg.default[A].map((u2) => u2.toString()) }; - let n = A.replace(uQ, (u2, l2, I, E, C) => ["#", l2, l2, I, I, E, E, C ? C + C : ""].join("")).match(gQ); + if (A in Kg.default) + return { mode: "rgb", color: Kg.default[A].map((a) => a.toString()) }; + let n = A.replace(iQ, (a, I, g2, c2, B) => ["#", I, I, g2, g2, c2, c2, B ? B + B : ""].join("")).match(nQ); if (n !== null) - return { mode: "rgb", color: [parseInt(n[1], 16), parseInt(n[2], 16), parseInt(n[3], 16)].map((u2) => u2.toString()), alpha: n[4] ? (parseInt(n[4], 16) / 255).toString() : void 0 }; + return { mode: "rgb", color: [parseInt(n[1], 16), parseInt(n[2], 16), parseInt(n[3], 16)].map((a) => a.toString()), alpha: n[4] ? (parseInt(n[4], 16) / 255).toString() : void 0 }; var i; - let o = (i = A.match(IQ)) !== null && i !== void 0 ? i : A.match(lQ); + let o = (i = A.match(oQ)) !== null && i !== void 0 ? i : A.match(sQ); if (o === null) return null; - let a = [o[2], o[3], o[4]].filter(Boolean).map((u2) => u2.toString()); - return !e && a.length !== 3 || a.length < 3 && !a.some((u2) => /^var\(.*?\)$/.test(u2)) ? null : { mode: o[1], color: a, alpha: (t = o[5]) === null || t === void 0 || (r = t.toString) === null || r === void 0 ? void 0 : r.call(t) }; + let s = [o[2], o[3], o[4]].filter(Boolean).map((a) => a.toString()); + return !e && s.length !== 3 || s.length < 3 && !s.some((a) => /^var\(.*?\)$/.test(a)) ? null : { mode: o[1], color: s, alpha: (t = o[5]) === null || t === void 0 || (r = t.toString) === null || r === void 0 ? void 0 : r.call(t) }; } - function fQ({ mode: A, color: e, alpha: t }) { + function gQ({ mode: A, color: e, alpha: t }) { let r = t !== void 0; return `${A}(${e.join(" ")}${r ? ` / ${t}` : ""})`; } }); -var Mo = K2((No) => { +var Qo = _((fo) => { "use strict"; - Object.defineProperty(No, "__esModule", { value: true }); - function BQ(A, e) { + Object.defineProperty(fo, "__esModule", { value: true }); + function IQ(A, e) { for (var t in e) Object.defineProperty(A, t, { enumerable: true, get: e[t] }); } - BQ(No, { withAlphaValue: () => EQ2, default: () => QQ }); - var kn = Ro(); - function EQ2(A, e, t) { + IQ(fo, { withAlphaValue: () => uQ, default: () => lQ }); + var hn = Eo(); + function uQ(A, e, t) { if (typeof A == "function") return A({ opacityValue: e }); - let r = (0, kn.parseColor)(A, { loose: true }); - return r === null ? t : (0, kn.formatColor)({ ...r, alpha: e }); + let r = (0, hn.parseColor)(A, { loose: true }); + return r === null ? t : (0, hn.formatColor)({ ...r, alpha: e }); } - function QQ({ color: A, property: e, variable: t }) { + function lQ({ color: A, property: e, variable: t }) { let r = [].concat(e); if (typeof A == "function") return { [t]: "1", ...Object.fromEntries(r.map((i) => [i, A({ opacityVariable: t, opacityValue: `var(${t})` })])) }; - let n = (0, kn.parseColor)(A); - return n === null ? Object.fromEntries(r.map((i) => [i, A])) : n.alpha !== void 0 ? Object.fromEntries(r.map((i) => [i, A])) : { [t]: "1", ...Object.fromEntries(r.map((i) => [i, (0, kn.formatColor)({ ...n, alpha: `var(${t})` })])) }; + let n = (0, hn.parseColor)(A); + return n === null ? Object.fromEntries(r.map((i) => [i, A])) : n.alpha !== void 0 ? Object.fromEntries(r.map((i) => [i, A])) : { [t]: "1", ...Object.fromEntries(r.map((i) => [i, (0, hn.formatColor)({ ...n, alpha: `var(${t})` })])) }; } }); -var ru = K2((Fo) => { +var zg = _((Co) => { "use strict"; - Object.defineProperty(Fo, "__esModule", { value: true }); - function CQ(A, e) { + Object.defineProperty(Co, "__esModule", { value: true }); + function cQ(A, e) { for (var t in e) Object.defineProperty(A, t, { enumerable: true, get: e[t] }); } - CQ(Fo, { pattern: () => hQ, withoutCapturing: () => Au, any: () => eu, optional: () => pQ, zeroOrMore: () => mQ, nestedBrackets: () => tu, escape: () => ht }); - var $g = /[\\^$.*+?()[\]{}|]/g, dQ = RegExp($g.source); - function xr(A) { + cQ(Co, { pattern: () => EQ2, withoutCapturing: () => qg, any: () => Xg, optional: () => fQ, zeroOrMore: () => QQ, nestedBrackets: () => Vg, escape: () => st }); + var Yg = /[\\^$.*+?()[\]{}|]/g, BQ = RegExp(Yg.source); + function fr(A) { return A = Array.isArray(A) ? A : [A], A = A.map((e) => e instanceof RegExp ? e.source : e), A.join(""); } - function hQ(A) { - return new RegExp(xr(A), "g"); + function EQ2(A) { + return new RegExp(fr(A), "g"); } - function Au(A) { - return new RegExp(`(?:${xr(A)})`, "g"); + function qg(A) { + return new RegExp(`(?:${fr(A)})`, "g"); } - function eu(A) { - return `(?:${A.map(xr).join("|")})`; + function Xg(A) { + return `(?:${A.map(fr).join("|")})`; } - function pQ(A) { - return `(?:${xr(A)})?`; + function fQ(A) { + return `(?:${fr(A)})?`; } - function mQ(A) { - return `(?:${xr(A)})*`; + function QQ(A) { + return `(?:${fr(A)})*`; } - function tu(A, e, t = 1) { - return Au([ht(A), /[^\s]*/, t === 1 ? `[^${ht(A)}${ht(e)}s]*` : eu([`[^${ht(A)}${ht(e)}s]*`, tu(A, e, t - 1)]), /[^\s]*/, ht(e)]); + function Vg(A, e, t = 1) { + return qg([st(A), /[^\s]*/, t === 1 ? `[^${st(A)}${st(e)}s]*` : Xg([`[^${st(A)}${st(e)}s]*`, Vg(A, e, t - 1)]), /[^\s]*/, st(e)]); } - function ht(A) { - return A && dQ.test(A) ? A.replace($g, "\\$&") : A || ""; + function st(A) { + return A && BQ.test(A) ? A.replace(Yg, "\\$&") : A || ""; } }); -var iu = K2((Lo) => { +var jg = _((ho) => { "use strict"; - Object.defineProperty(Lo, "__esModule", { value: true }); - Object.defineProperty(Lo, "splitAtTopLevelOnly", { enumerable: true, get: () => DQ }); - var yQ = wQ(ru()); - function nu(A) { + Object.defineProperty(ho, "__esModule", { value: true }); + Object.defineProperty(ho, "splitAtTopLevelOnly", { enumerable: true, get: () => hQ }); + var CQ = dQ(zg()); + function Zg(A) { if (typeof WeakMap != "function") return null; var e = /* @__PURE__ */ new WeakMap(), t = /* @__PURE__ */ new WeakMap(); - return (nu = function(r) { + return (Zg = function(r) { return r ? t : e; })(A); } - function wQ(A, e) { + function dQ(A, e) { if (!e && A && A.__esModule) return A; if (A === null || typeof A != "object" && typeof A != "function") return { default: A }; - var t = nu(e); + var t = Zg(e); if (t && t.has(A)) return t.get(A); var r = {}, n = Object.defineProperty && Object.getOwnPropertyDescriptor; @@ -17480,297 +16452,297 @@ var iu = K2((Lo) => { } return r.default = A, t && t.set(A, r), r; } - function* DQ(A, e) { - let t = new RegExp(`[(){}\\[\\]${yQ.escape(e)}]`, "g"), r = 0, n = 0, i = false, o = 0, a = 0, u2 = e.length; - for (let l2 of A.matchAll(t)) { - let I = l2[0] === e[o], E = o === u2 - 1, C = I && E; - l2[0] === "(" && r++, l2[0] === ")" && r--, l2[0] === "[" && r++, l2[0] === "]" && r--, l2[0] === "{" && r++, l2[0] === "}" && r--, I && r === 0 && (a === 0 && (a = l2.index), o++), C && r === 0 && (i = true, yield A.substring(n, a), n = a + u2), o === u2 && (o = 0, a = 0); + function* hQ(A, e) { + let t = new RegExp(`[(){}\\[\\]${CQ.escape(e)}]`, "g"), r = 0, n = 0, i = false, o = 0, s = 0, a = e.length; + for (let I of A.matchAll(t)) { + let g2 = I[0] === e[o], c2 = o === a - 1, B = g2 && c2; + I[0] === "(" && r++, I[0] === ")" && r--, I[0] === "[" && r++, I[0] === "]" && r--, I[0] === "{" && r++, I[0] === "}" && r--, g2 && r === 0 && (s === 0 && (s = I.index), o++), B && r === 0 && (i = true, yield A.substring(n, s), n = s + a), o === a && (o = 0, s = 0); } i ? yield A.substring(n) : yield A; } }); -var su = K2((Go) => { +var AI = _((po) => { "use strict"; - Object.defineProperty(Go, "__esModule", { value: true }); - function SQ(A, e) { + Object.defineProperty(po, "__esModule", { value: true }); + function pQ(A, e) { for (var t in e) Object.defineProperty(A, t, { enumerable: true, get: e[t] }); } - SQ(Go, { parseBoxShadowValue: () => xQ, formatBoxShadowValue: () => RQ }); - var bQ = iu(), vQ = /* @__PURE__ */ new Set(["inset", "inherit", "initial", "revert", "unset"]), kQ = /\ +(?![^(]*\))/g, ou = /^-?(\d+|\.\d+)(.*?)$/g; - function xQ(A) { - return Array.from((0, bQ.splitAtTopLevelOnly)(A, ",")).map((t) => { - let r = t.trim(), n = { raw: r }, i = r.split(kQ), o = /* @__PURE__ */ new Set(); - for (let a of i) - ou.lastIndex = 0, !o.has("KEYWORD") && vQ.has(a) ? (n.keyword = a, o.add("KEYWORD")) : ou.test(a) ? o.has("X") ? o.has("Y") ? o.has("BLUR") ? o.has("SPREAD") || (n.spread = a, o.add("SPREAD")) : (n.blur = a, o.add("BLUR")) : (n.y = a, o.add("Y")) : (n.x = a, o.add("X")) : n.color ? (n.unknown || (n.unknown = []), n.unknown.push(a)) : n.color = a; + pQ(po, { parseBoxShadowValue: () => DQ, formatBoxShadowValue: () => SQ }); + var mQ = jg(), yQ = /* @__PURE__ */ new Set(["inset", "inherit", "initial", "revert", "unset"]), wQ = /\ +(?![^(]*\))/g, $g = /^-?(\d+|\.\d+)(.*?)$/g; + function DQ(A) { + return Array.from((0, mQ.splitAtTopLevelOnly)(A, ",")).map((t) => { + let r = t.trim(), n = { raw: r }, i = r.split(wQ), o = /* @__PURE__ */ new Set(); + for (let s of i) + $g.lastIndex = 0, !o.has("KEYWORD") && yQ.has(s) ? (n.keyword = s, o.add("KEYWORD")) : $g.test(s) ? o.has("X") ? o.has("Y") ? o.has("BLUR") ? o.has("SPREAD") || (n.spread = s, o.add("SPREAD")) : (n.blur = s, o.add("BLUR")) : (n.y = s, o.add("Y")) : (n.x = s, o.add("X")) : n.color ? (n.unknown || (n.unknown = []), n.unknown.push(s)) : n.color = s; return n.valid = n.x !== void 0 && n.y !== void 0, n; }); } - function RQ(A) { + function SQ(A) { return A.map((e) => e.valid ? [e.keyword, e.x, e.y, e.blur, e.spread, e.color].filter(Boolean).join(" ") : e.raw).join(", "); } }); -var fu = K2((Ho) => { +var sI = _((yo) => { "use strict"; - Object.defineProperty(Ho, "__esModule", { value: true }); - function NQ(A, e) { + Object.defineProperty(yo, "__esModule", { value: true }); + function bQ(A, e) { for (var t in e) Object.defineProperty(A, t, { enumerable: true, get: e[t] }); } - NQ(Ho, { normalize: () => at, url: () => uu, number: () => LQ, percentage: () => Iu, length: () => lu, lineWidth: () => HQ, shadow: () => OQ, color: () => TQ, image: () => PQ, gradient: () => cu, position: () => WQ, familyName: () => KQ, genericName: () => qQ, absoluteSize: () => VQ, relativeSize: () => ZQ }); - var MQ = Ro(), FQ = su(), Uo = ["min", "max", "clamp", "calc"], gu = /,(?![^(]*\))/g, xn = /_(?![^(]*\))/g; - function at(A, e = true) { - return A.includes("url(") ? A.split(/(url\(.*?\))/g).filter(Boolean).map((t) => /^url\(.*?\)$/.test(t) ? t : at(t, false)).join("") : (A = A.replace(/([^\\])_+/g, (t, r) => r + " ".repeat(t.length - 1)).replace(/^_/g, " ").replace(/\\_/g, "_"), e && (A = A.trim()), A = A.replace(/(calc|min|max|clamp)\(.+\)/g, (t) => t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g, "$1 $2 ")), A); + bQ(yo, { normalize: () => Ze, url: () => rI, number: () => RQ, percentage: () => nI, length: () => iI, lineWidth: () => FQ, shadow: () => MQ, color: () => LQ, image: () => GQ, gradient: () => oI, position: () => OQ, familyName: () => TQ, genericName: () => _Q, absoluteSize: () => KQ, relativeSize: () => YQ }); + var kQ = Eo(), xQ = AI(), mo = ["min", "max", "clamp", "calc"], tI = /,(?![^(]*\))/g, pn = /_(?![^(]*\))/g; + function Ze(A, e = true) { + return A.includes("url(") ? A.split(/(url\(.*?\))/g).filter(Boolean).map((t) => /^url\(.*?\)$/.test(t) ? t : Ze(t, false)).join("") : (A = A.replace(/([^\\])_+/g, (t, r) => r + " ".repeat(t.length - 1)).replace(/^_/g, " ").replace(/\\_/g, "_"), e && (A = A.trim()), A = A.replace(/(calc|min|max|clamp)\(.+\)/g, (t) => t.replace(/(-?\d*\.?\d(?!\b-.+[,)](?![^+\-/*])\D)(?:%|[a-z]+)?|\))([+\-/*])/g, "$1 $2 ")), A); } - function uu(A) { + function rI(A) { return A.startsWith("url("); } - function LQ(A) { - return !isNaN(Number(A)) || Uo.some((e) => new RegExp(`^${e}\\(.+?`).test(A)); + function RQ(A) { + return !isNaN(Number(A)) || mo.some((e) => new RegExp(`^${e}\\(.+?`).test(A)); } - function Iu(A) { - return A.split(xn).every((e) => /%$/g.test(e) || Uo.some((t) => new RegExp(`^${t}\\(.+?%`).test(e))); + function nI(A) { + return A.split(pn).every((e) => /%$/g.test(e) || mo.some((t) => new RegExp(`^${t}\\(.+?%`).test(e))); } - var GQ = ["cm", "mm", "Q", "in", "pc", "pt", "px", "em", "ex", "ch", "rem", "lh", "vw", "vh", "vmin", "vmax"], au = `(?:${GQ.join("|")})`; - function lu(A) { - return A.split(xn).every((e) => e === "0" || new RegExp(`${au}$`).test(e) || Uo.some((t) => new RegExp(`^${t}\\(.+?${au}`).test(e))); + var vQ = ["cm", "mm", "Q", "in", "pc", "pt", "px", "em", "ex", "ch", "rem", "lh", "vw", "vh", "vmin", "vmax"], eI = `(?:${vQ.join("|")})`; + function iI(A) { + return A.split(pn).every((e) => e === "0" || new RegExp(`${eI}$`).test(e) || mo.some((t) => new RegExp(`^${t}\\(.+?${eI}`).test(e))); } - var UQ = /* @__PURE__ */ new Set(["thin", "medium", "thick"]); - function HQ(A) { - return UQ.has(A); + var NQ = /* @__PURE__ */ new Set(["thin", "medium", "thick"]); + function FQ(A) { + return NQ.has(A); } - function OQ(A) { - let e = (0, FQ.parseBoxShadowValue)(at(A)); + function MQ(A) { + let e = (0, xQ.parseBoxShadowValue)(Ze(A)); for (let t of e) if (!t.valid) return false; return true; } - function TQ(A) { + function LQ(A) { let e = 0; - return A.split(xn).every((r) => (r = at(r), r.startsWith("var(") ? true : (0, MQ.parseColor)(r, { loose: true }) !== null ? (e++, true) : false)) ? e > 0 : false; + return A.split(pn).every((r) => (r = Ze(r), r.startsWith("var(") ? true : (0, kQ.parseColor)(r, { loose: true }) !== null ? (e++, true) : false)) ? e > 0 : false; } - function PQ(A) { + function GQ(A) { let e = 0; - return A.split(gu).every((r) => (r = at(r), r.startsWith("var(") ? true : uu(r) || cu(r) || ["element(", "image(", "cross-fade(", "image-set("].some((n) => r.startsWith(n)) ? (e++, true) : false)) ? e > 0 : false; + return A.split(tI).every((r) => (r = Ze(r), r.startsWith("var(") ? true : rI(r) || oI(r) || ["element(", "image(", "cross-fade(", "image-set("].some((n) => r.startsWith(n)) ? (e++, true) : false)) ? e > 0 : false; } - var _Q = /* @__PURE__ */ new Set(["linear-gradient", "radial-gradient", "repeating-linear-gradient", "repeating-radial-gradient", "conic-gradient"]); - function cu(A) { - A = at(A); - for (let e of _Q) + var UQ = /* @__PURE__ */ new Set(["linear-gradient", "radial-gradient", "repeating-linear-gradient", "repeating-radial-gradient", "conic-gradient"]); + function oI(A) { + A = Ze(A); + for (let e of UQ) if (A.startsWith(`${e}(`)) return true; return false; } - var JQ = /* @__PURE__ */ new Set(["center", "top", "right", "bottom", "left"]); - function WQ(A) { + var HQ = /* @__PURE__ */ new Set(["center", "top", "right", "bottom", "left"]); + function OQ(A) { let e = 0; - return A.split(xn).every((r) => (r = at(r), r.startsWith("var(") ? true : JQ.has(r) || lu(r) || Iu(r) ? (e++, true) : false)) ? e > 0 : false; + return A.split(pn).every((r) => (r = Ze(r), r.startsWith("var(") ? true : HQ.has(r) || iI(r) || nI(r) ? (e++, true) : false)) ? e > 0 : false; } - function KQ(A) { + function TQ(A) { let e = 0; - return A.split(gu).every((r) => (r = at(r), r.startsWith("var(") ? true : r.includes(" ") && !/(['"])([^"']+)\1/g.test(r) || /^\d/g.test(r) ? false : (e++, true))) ? e > 0 : false; + return A.split(tI).every((r) => (r = Ze(r), r.startsWith("var(") ? true : r.includes(" ") && !/(['"])([^"']+)\1/g.test(r) || /^\d/g.test(r) ? false : (e++, true))) ? e > 0 : false; } - var YQ = /* @__PURE__ */ new Set(["serif", "sans-serif", "monospace", "cursive", "fantasy", "system-ui", "ui-serif", "ui-sans-serif", "ui-monospace", "ui-rounded", "math", "emoji", "fangsong"]); - function qQ(A) { - return YQ.has(A); + var PQ = /* @__PURE__ */ new Set(["serif", "sans-serif", "monospace", "cursive", "fantasy", "system-ui", "ui-serif", "ui-sans-serif", "ui-monospace", "ui-rounded", "math", "emoji", "fangsong"]); + function _Q(A) { + return PQ.has(A); } - var XQ = /* @__PURE__ */ new Set(["xx-small", "x-small", "small", "medium", "large", "x-large", "x-large", "xxx-large"]); - function VQ(A) { - return XQ.has(A); + var JQ = /* @__PURE__ */ new Set(["xx-small", "x-small", "small", "medium", "large", "x-large", "x-large", "xxx-large"]); + function KQ(A) { + return JQ.has(A); } - var zQ = /* @__PURE__ */ new Set(["larger", "smaller"]); - function ZQ(A) { - return zQ.has(A); + var WQ = /* @__PURE__ */ new Set(["larger", "smaller"]); + function YQ(A) { + return WQ.has(A); } }); -var mu = K2((Po) => { +var EI = _((So) => { "use strict"; - Object.defineProperty(Po, "__esModule", { value: true }); - function jQ(A, e) { + Object.defineProperty(So, "__esModule", { value: true }); + function qQ(A, e) { for (var t in e) Object.defineProperty(A, t, { enumerable: true, get: e[t] }); } - jQ(Po, { updateAllClasses: () => eC, asValue: () => Nr, parseColorFormat: () => Oo, asColor: () => du, asLookupValue: () => hu, coerceValue: () => iC }); - var $Q = To(qg()), AC = To(Xg()), Bu = Mo(), pe = fu(), Eu = To(wi()); - function To(A) { + qQ(So, { updateAllClasses: () => zQ, asValue: () => Cr, parseColorFormat: () => wo, asColor: () => lI, asLookupValue: () => cI, coerceValue: () => AC }); + var XQ = Do(Tg()), VQ = Do(Pg()), aI = Qo(), zA = sI(), gI = Do(gi()); + function Do(A) { return A && A.__esModule ? A : { default: A }; } - function eC(A, e) { - return (0, $Q.default)((n) => { + function zQ(A, e) { + return (0, XQ.default)((n) => { n.walkClasses((i) => { let o = e(i.value); - i.value = o, i.raws && i.raws.value && (i.raws.value = (0, AC.default)(i.raws.value)); + i.value = o, i.raws && i.raws.value && (i.raws.value = (0, VQ.default)(i.raws.value)); }); }).processSync(A); } - function Cu(A, e) { - if (!Rr(A)) + function uI(A, e) { + if (!Qr(A)) return; let t = A.slice(1, -1); if (e(t)) - return (0, pe.normalize)(t); + return (0, zA.normalize)(t); } - function tC(A, e = {}, t) { + function ZQ(A, e = {}, t) { let r = e[A]; if (r !== void 0) - return (0, Eu.default)(r); - if (Rr(A)) { - let n = Cu(A, t); - return n === void 0 ? void 0 : (0, Eu.default)(n); + return (0, gI.default)(r); + if (Qr(A)) { + let n = uI(A, t); + return n === void 0 ? void 0 : (0, gI.default)(n); } } - function Nr(A, e = {}, { validate: t = () => true } = {}) { + function Cr(A, e = {}, { validate: t = () => true } = {}) { var r; let n = (r = e.values) === null || r === void 0 ? void 0 : r[A]; - return n !== void 0 ? n : e.supportsNegativeValues && A.startsWith("-") ? tC(A.slice(1), e.values, t) : Cu(A, t); + return n !== void 0 ? n : e.supportsNegativeValues && A.startsWith("-") ? ZQ(A.slice(1), e.values, t) : uI(A, t); } - function Rr(A) { + function Qr(A) { return A.startsWith("[") && A.endsWith("]"); } - function rC(A) { + function jQ(A) { let e = A.lastIndexOf("/"); return e === -1 || e === A.length - 1 ? [A] : [A.slice(0, e), A.slice(e + 1)]; } - function Oo(A) { + function wo(A) { if (typeof A == "string" && A.includes("")) { let e = A; return ({ opacityValue: t = 1 }) => e.replace("", t); } return A; } - function du(A, e = {}, { tailwindConfig: t = {} } = {}) { + function lI(A, e = {}, { tailwindConfig: t = {} } = {}) { var r; if (((r = e.values) === null || r === void 0 ? void 0 : r[A]) !== void 0) { var n; - return Oo((n = e.values) === null || n === void 0 ? void 0 : n[A]); + return wo((n = e.values) === null || n === void 0 ? void 0 : n[A]); } - let [i, o] = rC(A); + let [i, o] = jQ(A); if (o !== void 0) { - var a, u2, l2, I; - let E = (I = (a = e.values) === null || a === void 0 ? void 0 : a[i]) !== null && I !== void 0 ? I : Rr(i) ? i.slice(1, -1) : void 0; - return E === void 0 ? void 0 : (E = Oo(E), Rr(o) ? (0, Bu.withAlphaValue)(E, o.slice(1, -1)) : ((u2 = t.theme) === null || u2 === void 0 || (l2 = u2.opacity) === null || l2 === void 0 ? void 0 : l2[o]) === void 0 ? void 0 : (0, Bu.withAlphaValue)(E, t.theme.opacity[o])); + var s, a, I, g2; + let c2 = (g2 = (s = e.values) === null || s === void 0 ? void 0 : s[i]) !== null && g2 !== void 0 ? g2 : Qr(i) ? i.slice(1, -1) : void 0; + return c2 === void 0 ? void 0 : (c2 = wo(c2), Qr(o) ? (0, aI.withAlphaValue)(c2, o.slice(1, -1)) : ((a = t.theme) === null || a === void 0 || (I = a.opacity) === null || I === void 0 ? void 0 : I[o]) === void 0 ? void 0 : (0, aI.withAlphaValue)(c2, t.theme.opacity[o])); } - return Nr(A, e, { validate: pe.color }); + return Cr(A, e, { validate: zA.color }); } - function hu(A, e = {}) { + function cI(A, e = {}) { var t; return (t = e.values) === null || t === void 0 ? void 0 : t[A]; } - function Fe(A) { - return (e, t) => Nr(e, t, { validate: A }); + function le(A) { + return (e, t) => Cr(e, t, { validate: A }); } - var pu = { any: Nr, color: du, url: Fe(pe.url), image: Fe(pe.image), length: Fe(pe.length), percentage: Fe(pe.percentage), position: Fe(pe.position), lookup: hu, "generic-name": Fe(pe.genericName), "family-name": Fe(pe.familyName), number: Fe(pe.number), "line-width": Fe(pe.lineWidth), "absolute-size": Fe(pe.absoluteSize), "relative-size": Fe(pe.relativeSize), shadow: Fe(pe.shadow) }, Qu = Object.keys(pu); - function nC(A, e) { + var BI = { any: Cr, color: lI, url: le(zA.url), image: le(zA.image), length: le(zA.length), percentage: le(zA.percentage), position: le(zA.position), lookup: cI, "generic-name": le(zA.genericName), "family-name": le(zA.familyName), number: le(zA.number), "line-width": le(zA.lineWidth), "absolute-size": le(zA.absoluteSize), "relative-size": le(zA.relativeSize), shadow: le(zA.shadow) }, II = Object.keys(BI); + function $Q(A, e) { let t = A.indexOf(e); return t === -1 ? [void 0, A] : [A.slice(0, t), A.slice(t + 1)]; } - function iC(A, e, t, r) { - if (Rr(e)) { - let n = e.slice(1, -1), [i, o] = nC(n, ":"); + function AC(A, e, t, r) { + if (Qr(e)) { + let n = e.slice(1, -1), [i, o] = $Q(n, ":"); if (!/^[\w-_]+$/g.test(i)) o = n; - else if (i !== void 0 && !Qu.includes(i)) + else if (i !== void 0 && !II.includes(i)) return []; - if (o.length > 0 && Qu.includes(i)) - return [Nr(`[${o}]`, t), i]; + if (o.length > 0 && II.includes(i)) + return [Cr(`[${o}]`, t), i]; } for (let n of [].concat(A)) { - let i = pu[n](e, t, { tailwindConfig: r }); + let i = BI[n](e, t, { tailwindConfig: r }); if (i !== void 0) return [i, n]; } return []; } }); -var yu = K2((_o) => { +var fI = _((bo) => { "use strict"; - Object.defineProperty(_o, "__esModule", { value: true }); - Object.defineProperty(_o, "default", { enumerable: true, get: () => oC }); - function oC(A) { + Object.defineProperty(bo, "__esModule", { value: true }); + Object.defineProperty(bo, "default", { enumerable: true, get: () => eC }); + function eC(A) { return typeof A == "function" ? A({}) : A; } }); -var vu = K2((Wo) => { +var pI = _((xo) => { "use strict"; - Object.defineProperty(Wo, "__esModule", { value: true }); - Object.defineProperty(Wo, "default", { enumerable: true, get: () => SC }); - var sC = pt(wi()), aC = pt(Ra()), gC = pt(Na()), uC = pt(bi()), IC = pt(Fa()), Su = La(), wu = Ga(), lC = Ha(), cC = pt(Oa()), fC = Ta(), BC = mu(), EC = Mo(), QC = pt(yu()); - function pt(A) { + Object.defineProperty(xo, "__esModule", { value: true }); + Object.defineProperty(xo, "default", { enumerable: true, get: () => pC }); + var tC = at(gi()), rC = at(wa()), nC = at(Da()), iC = at(li()), oC = at(ba()), dI = ka(), QI = xa(), sC = va(), aC = at(Na()), gC = Fa(), IC = EI(), uC = Qo(), lC = at(fI()); + function at(A) { return A && A.__esModule ? A : { default: A }; } - function Pt(A) { + function Dt(A) { return typeof A == "function"; } - function Mr(A) { + function dr(A) { return typeof A == "object" && A !== null; } - function Fr(A, ...e) { + function hr(A, ...e) { let t = e.pop(); for (let r of e) for (let n in r) { let i = t(A[n], r[n]); - i === void 0 ? Mr(A[n]) && Mr(r[n]) ? A[n] = Fr(A[n], r[n], t) : A[n] = r[n] : A[n] = i; + i === void 0 ? dr(A[n]) && dr(r[n]) ? A[n] = hr(A[n], r[n], t) : A[n] = r[n] : A[n] = i; } return A; } - var Jo = { colors: IC.default, negative(A) { + var ko = { colors: oC.default, negative(A) { return Object.keys(A).filter((e) => A[e] !== "0").reduce((e, t) => { - let r = (0, sC.default)(A[t]); + let r = (0, tC.default)(A[t]); return r !== void 0 && (e[`-${t}`] = r), e; }, {}); }, breakpoints(A) { return Object.keys(A).filter((e) => typeof A[e] == "string").reduce((e, t) => ({ ...e, [`screen-${t}`]: A[t] }), {}); } }; - function CC(A, ...e) { - return Pt(A) ? A(...e) : A; + function cC(A, ...e) { + return Dt(A) ? A(...e) : A; } - function dC(A) { - return A.reduce((e, { extend: t }) => Fr(e, t, (r, n) => r === void 0 ? [n] : Array.isArray(r) ? [n, ...r] : [n, r]), {}); + function BC(A) { + return A.reduce((e, { extend: t }) => hr(e, t, (r, n) => r === void 0 ? [n] : Array.isArray(r) ? [n, ...r] : [n, r]), {}); } - function hC(A) { - return { ...A.reduce((e, t) => (0, Su.defaults)(e, t), {}), extend: dC(A) }; + function EC(A) { + return { ...A.reduce((e, t) => (0, dI.defaults)(e, t), {}), extend: BC(A) }; } - function Du(A, e) { - if (Array.isArray(A) && Mr(A[0])) + function CI(A, e) { + if (Array.isArray(A) && dr(A[0])) return A.concat(e); - if (Array.isArray(e) && Mr(e[0]) && Mr(A)) + if (Array.isArray(e) && dr(e[0]) && dr(A)) return [A, ...e]; if (Array.isArray(e)) return e; } - function pC({ extend: A, ...e }) { - return Fr(e, A, (t, r) => !Pt(t) && !r.some(Pt) ? Fr({}, t, ...r, Du) : (n, i) => Fr({}, ...[t, ...r].map((o) => CC(o, n, i)), Du)); + function fC({ extend: A, ...e }) { + return hr(e, A, (t, r) => !Dt(t) && !r.some(Dt) ? hr({}, t, ...r, CI) : (n, i) => hr({}, ...[t, ...r].map((o) => cC(o, n, i)), CI)); } - function* mC(A) { - let e = (0, wu.toPath)(A); + function* QC(A) { + let e = (0, QI.toPath)(A); if (e.length === 0 || (yield e, Array.isArray(A))) return; let t = /^(.*?)\s*\/\s*([^/]+)$/, r = A.match(t); if (r !== null) { - let [, n, i] = r, o = (0, wu.toPath)(n); + let [, n, i] = r, o = (0, QI.toPath)(n); o.alpha = i, yield o; } } - function yC(A) { + function CC(A) { let e = (t, r) => { - for (let n of mC(t)) { + for (let n of QC(t)) { let i = 0, o = A; for (; o != null && i < n.length; ) - o = o[n[i++]], o = Pt(o) && (n.alpha === void 0 || i <= n.length - 1) ? o(e, Jo) : o; + o = o[n[i++]], o = Dt(o) && (n.alpha === void 0 || i <= n.length - 1) ? o(e, ko) : o; if (o !== void 0) { if (n.alpha !== void 0) { - let a = (0, BC.parseColorFormat)(o); - return (0, EC.withAlphaValue)(a, n.alpha, (0, QC.default)(a)); + let s = (0, IC.parseColorFormat)(o); + return (0, uC.withAlphaValue)(s, n.alpha, (0, lC.default)(s)); } - return (0, cC.default)(o) ? (0, fC.cloneDeep)(o) : o; + return (0, aC.default)(o) ? (0, gC.cloneDeep)(o) : o; } } return r; }; - return Object.assign(e, { theme: e, ...Jo }), Object.keys(A).reduce((t, r) => (t[r] = Pt(A[r]) ? A[r](e, Jo) : A[r], t), {}); + return Object.assign(e, { theme: e, ...ko }), Object.keys(A).reduce((t, r) => (t[r] = Dt(A[r]) ? A[r](e, ko) : A[r], t), {}); } - function bu(A) { + function hI(A) { let e = []; return A.forEach((t) => { e = [...e, t]; @@ -17779,186 +16751,186 @@ var vu = K2((Wo) => { n.length !== 0 && n.forEach((i) => { i.__isOptionsFunction && (i = i()); var o; - e = [...e, ...bu([(o = i == null ? void 0 : i.config) !== null && o !== void 0 ? o : {}])]; + e = [...e, ...hI([(o = i == null ? void 0 : i.config) !== null && o !== void 0 ? o : {}])]; }); }), e; } - function wC(A) { - return [...A].reduceRight((t, r) => Pt(r) ? r({ corePlugins: t }) : (0, gC.default)(r, t), aC.default); + function dC(A) { + return [...A].reduceRight((t, r) => Dt(r) ? r({ corePlugins: t }) : (0, nC.default)(r, t), rC.default); } - function DC(A) { + function hC(A) { return [...A].reduceRight((t, r) => [...t, ...r], []); } - function SC(A) { - let e = [...bu(A), { prefix: "", important: false, separator: ":", variantOrder: uC.default.variantOrder }]; + function pC(A) { + let e = [...hI(A), { prefix: "", important: false, separator: ":", variantOrder: iC.default.variantOrder }]; var t, r; - return (0, lC.normalizeConfig)((0, Su.defaults)({ theme: yC(pC(hC(e.map((n) => (t = n == null ? void 0 : n.theme) !== null && t !== void 0 ? t : {})))), corePlugins: wC(e.map((n) => n.corePlugins)), plugins: DC(A.map((n) => (r = n == null ? void 0 : n.plugins) !== null && r !== void 0 ? r : [])) }, ...e)); + return (0, sC.normalizeConfig)((0, dI.defaults)({ theme: CC(fC(EC(e.map((n) => (t = n == null ? void 0 : n.theme) !== null && t !== void 0 ? t : {})))), corePlugins: dC(e.map((n) => n.corePlugins)), plugins: hC(A.map((n) => (r = n == null ? void 0 : n.plugins) !== null && r !== void 0 ? r : [])) }, ...e)); } }); -var ku = {}; -kt(ku, { default: () => bC }); -var bC; -var xu = Xe(() => { - bC = { yellow: (A) => A }; +var mI = {}; +Lr(mI, { default: () => mC }); +var mC; +var yI = tt(() => { + mC = { yellow: (A) => A }; }); -var Fu = K2((Ko) => { +var bI = _((Ro) => { "use strict"; - Object.defineProperty(Ko, "__esModule", { value: true }); - function vC(A, e) { + Object.defineProperty(Ro, "__esModule", { value: true }); + function yC(A, e) { for (var t in e) Object.defineProperty(A, t, { enumerable: true, get: e[t] }); } - vC(Ko, { flagEnabled: () => RC, issueFlagNotices: () => NC, default: () => MC }); - var kC = Mu((xu(), Yr(ku))), xC = Mu((Bn(), Yr(fn))); - function Mu(A) { + yC(Ro, { flagEnabled: () => SC, issueFlagNotices: () => bC, default: () => kC }); + var wC = SI((yI(), Gr(mI))), DC = SI((on(), Gr(nn))); + function SI(A) { return A && A.__esModule ? A : { default: A }; } - var Ru = { optimizeUniversalDefaults: false }, Lr = { future: ["hoverOnlyWhenSupported", "respectDefaultRingColorOpacity"], experimental: ["optimizeUniversalDefaults", "matchVariant"] }; - function RC(A, e) { - if (Lr.future.includes(e)) { + var wI = { optimizeUniversalDefaults: false }, pr = { future: ["hoverOnlyWhenSupported", "respectDefaultRingColorOpacity"], experimental: ["optimizeUniversalDefaults", "matchVariant"] }; + function SC(A, e) { + if (pr.future.includes(e)) { var t, r, n; - return A.future === "all" || ((n = (r = A == null || (t = A.future) === null || t === void 0 ? void 0 : t[e]) !== null && r !== void 0 ? r : Ru[e]) !== null && n !== void 0 ? n : false); + return A.future === "all" || ((n = (r = A == null || (t = A.future) === null || t === void 0 ? void 0 : t[e]) !== null && r !== void 0 ? r : wI[e]) !== null && n !== void 0 ? n : false); } - if (Lr.experimental.includes(e)) { - var i, o, a; - return A.experimental === "all" || ((a = (o = A == null || (i = A.experimental) === null || i === void 0 ? void 0 : i[e]) !== null && o !== void 0 ? o : Ru[e]) !== null && a !== void 0 ? a : false); + if (pr.experimental.includes(e)) { + var i, o, s; + return A.experimental === "all" || ((s = (o = A == null || (i = A.experimental) === null || i === void 0 ? void 0 : i[e]) !== null && o !== void 0 ? o : wI[e]) !== null && s !== void 0 ? s : false); } return false; } - function Nu(A) { + function DI(A) { if (A.experimental === "all") - return Lr.experimental; + return pr.experimental; var e; - return Object.keys((e = A == null ? void 0 : A.experimental) !== null && e !== void 0 ? e : {}).filter((t) => Lr.experimental.includes(t) && A.experimental[t]); + return Object.keys((e = A == null ? void 0 : A.experimental) !== null && e !== void 0 ? e : {}).filter((t) => pr.experimental.includes(t) && A.experimental[t]); } - function NC(A) { - if (process.env.JEST_WORKER_ID === void 0 && Nu(A).length > 0) { - let e = Nu(A).map((t) => kC.default.yellow(t)).join(", "); - xC.default.warn("experimental-flags-enabled", [`You have enabled experimental features: ${e}`, "Experimental features in Tailwind CSS are not covered by semver, may introduce breaking changes, and can change at any time."]); + function bC(A) { + if (process.env.JEST_WORKER_ID === void 0 && DI(A).length > 0) { + let e = DI(A).map((t) => wC.default.yellow(t)).join(", "); + DC.default.warn("experimental-flags-enabled", [`You have enabled experimental features: ${e}`, "Experimental features in Tailwind CSS are not covered by semver, may introduce breaking changes, and can change at any time."]); } } - var MC = Lr; + var kC = pr; }); -var Gu = K2((Yo) => { +var xI = _((vo) => { "use strict"; - Object.defineProperty(Yo, "__esModule", { value: true }); - Object.defineProperty(Yo, "default", { enumerable: true, get: () => Lu }); - var FC = GC2(bi()), LC = Fu(); - function GC2(A) { + Object.defineProperty(vo, "__esModule", { value: true }); + Object.defineProperty(vo, "default", { enumerable: true, get: () => kI }); + var xC = vC(li()), RC = bI(); + function vC(A) { return A && A.__esModule ? A : { default: A }; } - function Lu(A) { + function kI(A) { var e; - let t = ((e = A == null ? void 0 : A.presets) !== null && e !== void 0 ? e : [FC.default]).slice().reverse().flatMap((i) => Lu(typeof i == "function" ? i() : i)), r = { respectDefaultRingColorOpacity: { theme: { ringColor: { DEFAULT: "#3b82f67f" } } } }, n = Object.keys(r).filter((i) => (0, LC.flagEnabled)(A, i)).map((i) => r[i]); + let t = ((e = A == null ? void 0 : A.presets) !== null && e !== void 0 ? e : [xC.default]).slice().reverse().flatMap((i) => kI(typeof i == "function" ? i() : i)), r = { respectDefaultRingColorOpacity: { theme: { ringColor: { DEFAULT: "#3b82f67f" } } } }, n = Object.keys(r).filter((i) => (0, RC.flagEnabled)(A, i)).map((i) => r[i]); return [A, ...n, ...t]; } }); -var Hu = K2((qo) => { +var vI = _((No) => { "use strict"; - Object.defineProperty(qo, "__esModule", { value: true }); - Object.defineProperty(qo, "default", { enumerable: true, get: () => OC }); - var UC = Uu(vu()), HC = Uu(Gu()); - function Uu(A) { + Object.defineProperty(No, "__esModule", { value: true }); + Object.defineProperty(No, "default", { enumerable: true, get: () => MC }); + var NC = RI(pI()), FC = RI(xI()); + function RI(A) { return A && A.__esModule ? A : { default: A }; } - function OC(...A) { - let [, ...e] = (0, HC.default)(A[0]); - return (0, UC.default)([...A, ...e]); + function MC(...A) { + let [, ...e] = (0, FC.default)(A[0]); + return (0, NC.default)([...A, ...e]); } }); -var Tu = K2((N0, Ou) => { - var Xo = Hu(); - Ou.exports = (Xo.__esModule ? Xo : { default: Xo }).default; +var FI = _((R0, NI) => { + var Fo = vI(); + NI.exports = (Fo.__esModule ? Fo : { default: Fo }).default; }); -var Kt = (A, e) => () => (e || A((e = { exports: {} }).exports, e), e.exports); -var dI = Kt((A, e) => { +var vt = (A, e) => () => (e || A((e = { exports: {} }).exports, e), e.exports); +var Qu = vt((A, e) => { e.exports = ["em", "ex", "ch", "rem", "vh", "vw", "vmin", "vmax", "px", "mm", "cm", "in", "pt", "pc", "mozmm"]; }); -var hI = Kt((A, e) => { +var Cu = vt((A, e) => { e.exports = ["deg", "grad", "rad", "turn"]; }); -var pI = Kt((A, e) => { +var du = vt((A, e) => { e.exports = ["dpi", "dpcm", "dppx"]; }); -var mI = Kt((A, e) => { +var hu = vt((A, e) => { e.exports = ["Hz", "kHz"]; }); -var yI = Kt((A, e) => { +var pu = vt((A, e) => { e.exports = ["s", "ms"]; }); -var wI = dI(); -var fs = hI(); -var Bs = pI(); -var Es = mI(); -var Qs = yI(); -function Un(A) { +var mu = Qu(); +var is = Cu(); +var os = du(); +var ss = hu(); +var as = pu(); +function bn(A) { if (/\.\D?$/.test(A)) throw new Error("The dot should be followed by a number"); if (/^[+-]{2}/.test(A)) throw new Error("Only one leading +/- is allowed"); - if (DI(A) > 1) + if (yu(A) > 1) throw new Error("Only one dot is allowed"); if (/%$/.test(A)) { - this.type = "percentage", this.value = Gn(A), this.unit = "%"; + this.type = "percentage", this.value = Sn(A), this.unit = "%"; return; } - var e = bI(A); + var e = Du(A); if (!e) { - this.type = "number", this.value = Gn(A); + this.type = "number", this.value = Sn(A); return; } - this.type = kI(e), this.value = Gn(A.substr(0, A.length - e.length)), this.unit = e; + this.type = bu(e), this.value = Sn(A.substr(0, A.length - e.length)), this.unit = e; } -Un.prototype.valueOf = function() { +bn.prototype.valueOf = function() { return this.value; }; -Un.prototype.toString = function() { +bn.prototype.toString = function() { return this.value + (this.unit || ""); }; -function He(A) { - return new Un(A); +function he(A) { + return new bn(A); } -function DI(A) { +function yu(A) { var e = A.match(/\./g); return e ? e.length : 0; } -function Gn(A) { +function Sn(A) { var e = parseFloat(A); if (isNaN(e)) throw new Error("Invalid number: " + A); return e; } -var SI = [].concat(fs, Es, wI, Bs, Qs); -function bI(A) { +var wu = [].concat(is, ss, mu, os, as); +function Du(A) { var e = A.match(/\D+$/), t = e && e[0]; - if (t && SI.indexOf(t) === -1) + if (t && wu.indexOf(t) === -1) throw new Error("Invalid unit: " + t); return t; } -var vI = Object.assign(qr(fs, "angle"), qr(Es, "frequency"), qr(Bs, "resolution"), qr(Qs, "time")); -function qr(A, e) { +var Su = Object.assign(Ur(is, "angle"), Ur(ss, "frequency"), Ur(os, "resolution"), Ur(as, "time")); +function Ur(A, e) { return Object.fromEntries(A.map((t) => [t, e])); } -function kI(A) { - return vI[A] || "length"; +function bu(A) { + return Su[A] || "length"; } -function Rt(A) { +function Et(A) { let e = typeof A; return !(e === "number" || e === "bigint" || e === "string" || e === "boolean"); } -function Cs(A) { +function gs(A) { return /^class\s/.test(A.toString()); } -function Tn(A) { +function Rn(A) { return A && A.$$typeof === Symbol.for("react.forward_ref"); } -function ds(A) { - return typeof A == "function" || Tn(A); +function Is(A) { + return typeof A == "function" || Rn(A); } -function hs(A) { +function us(A) { return "dangerouslySetInnerHTML" in A; } -function ps(A) { +function ls(A) { let e = typeof A > "u" ? [] : [].concat(A).flat(1 / 0), t = []; for (let r = 0; r < e.length; r++) { let n = e[r]; @@ -17966,7 +16938,7 @@ function ps(A) { } return t; } -function tA(A, e, t, r, n = false) { +function X(A, e, t, r, n = false) { if (typeof A == "number") return A; try { @@ -17974,7 +16946,7 @@ function tA(A, e, t, r, n = false) { return; if (A === String(+A)) return +A; - let i = new He(A); + let i = new he(A); if (i.type === "length") switch (i.unit) { case "em": @@ -17990,15 +16962,15 @@ function tA(A, e, t, r, n = false) { } else { if (i.type === "angle") - return Pn(A); + return vn(A); if (i.type === "percentage" && n) return i.value / 100 * t; } } catch { } } -function Pn(A) { - let e = new He(A); +function vn(A) { + let e = new he(A); switch (e.unit) { case "deg": return e.value; @@ -18010,10 +16982,10 @@ function Pn(A) { return 0.9 * e.value; } } -function Yt(A, e) { +function Nt(A, e) { return [A[0] * e[0] + A[2] * e[1], A[1] * e[0] + A[3] * e[1], A[0] * e[2] + A[2] * e[3], A[1] * e[2] + A[3] * e[3], A[0] * e[4] + A[2] * e[5] + A[4], A[1] * e[4] + A[3] * e[5] + A[5]]; } -function ue(A, e, t, r) { +function YA(A, e, t, r) { let n = e[A]; if (typeof n > "u") { if (r && typeof A < "u") @@ -18022,48 +16994,48 @@ function ue(A, e, t, r) { } return n; } -var Hn; -var On; -var ms = [32, 160, 4961, 65792, 65793, 4153, 4241, 10].map((A) => String.fromCodePoint(A)); -var xt = /* @__PURE__ */ new Map(); -var RI = 500; -function ge(A, e, t) { +var kn; +var xn; +var cs = [32, 160, 4961, 65792, 65793, 4153, 4241, 10].map((A) => String.fromCodePoint(A)); +var Bt = /* @__PURE__ */ new Map(); +var xu = 500; +function WA(A, e, t) { let r = `${e}:${t || ""}:${A}`; - if (xt.has(r)) - return xt.get(r); - if (!Hn || !On) { + if (Bt.has(r)) + return Bt.get(r); + if (!kn || !xn) { if (!(typeof Intl < "u" && "Segmenter" in Intl)) throw new Error("Intl.Segmenter does not exist, please use import a polyfill."); - Hn = new Intl.Segmenter(t, { granularity: "word" }), On = new Intl.Segmenter(t, { granularity: "grapheme" }); + kn = new Intl.Segmenter(t, { granularity: "word" }), xn = new Intl.Segmenter(t, { granularity: "grapheme" }); } let n; if (e === "grapheme") - n = [...On.segment(A)].map((i) => i.segment); + n = [...xn.segment(A)].map((i) => i.segment); else { - let i = [...Hn.segment(A)].map((u2) => u2.segment), o = [], a = 0; - for (; a < i.length; ) { - let u2 = i[a]; - if (u2 == "\xA0") { - let l2 = a === 0 ? "" : o.pop(), I = a === i.length - 1 ? "" : i[a + 1]; - o.push(l2 + "\xA0" + I), a += 2; + let i = [...kn.segment(A)].map((a) => a.segment), o = [], s = 0; + for (; s < i.length; ) { + let a = i[s]; + if (a == "\xA0") { + let I = s === 0 ? "" : o.pop(), g2 = s === i.length - 1 ? "" : i[s + 1]; + o.push(I + "\xA0" + g2), s += 2; } else - o.push(u2), a++; + o.push(a), s++; } n = o; } - if (xt.size >= RI) { - let i = xt.keys().next().value; - xt.delete(i); + if (Bt.size >= xu) { + let i = Bt.keys().next().value; + Bt.delete(i); } - return xt.set(r, n), n; + return Bt.set(r, n), n; } -function H(A, e, t) { +function M(A, e, t) { let r = ""; for (let [n, i] of Object.entries(e)) typeof i < "u" && (r += ` ${n}="${i}"`); return t ? `<${A}${r}>${t}` : `<${A}${r}/>`; } -function ys(A = 20) { +function Bs(A = 20) { let e = /* @__PURE__ */ new Map(); function t(i) { let o = e.get(i); @@ -18074,8 +17046,8 @@ function ys(A = 20) { if (e.has(i)) e.delete(i); else if (e.size >= A) { - let a = e.keys().next().value; - e.delete(a); + let s = e.keys().next().value; + e.delete(s); } e.set(i, o); } @@ -18084,19 +17056,19 @@ function ys(A = 20) { } return { set: r, get: t, clear: n }; } -function Nt(A) { +function ft(A) { return A ? A.split(/[, ]/).filter(Boolean).map(Number) : null; } -function Xr(A) { +function Hr(A) { return typeof A == "string"; } -function ws(A) { +function Es(A) { return typeof A == "number"; } -function Ds(A) { +function fs(A) { return typeof A > "u"; } -function Ve(A, e) { +function Ue(A, e) { if (typeof A == "number") return A; if (A.endsWith("%")) { @@ -18109,7 +17081,7 @@ function Ve(A, e) { } console.warn(`Invalid value "${A}"${typeof e == "string" ? ` for "${e}"` : ""}. Expected a number or a percentage value (e.g., "50%").`); } -function tt(A, e) { +function We(A, e) { if (typeof A == "number") return A; if (A === "auto") @@ -18124,38 +17096,78 @@ function tt(A, e) { } console.warn(`Invalid value "${A}"${typeof e == "string" ? ` for "${e}"` : ""}. Expected a number, "auto", or a percentage value (e.g., "50%").`); } -function Ss(A, e) { +function Qs(A, e) { if (e === "break-all") - return { words: ge(A, "grapheme"), requiredBreaks: [] }; + return { words: WA(A, "grapheme"), requiredBreaks: [] }; if (e === "keep-all") - return { words: ge(A, "word"), requiredBreaks: [] }; + return { words: WA(A, "word"), requiredBreaks: [] }; let t = new $557adaaeb0c7885f$exports(A), r = 0, n = t.nextBreak(), i = [], o = [false]; for (; n; ) { - let a = A.slice(r, n.position); - i.push(a), n.required ? o.push(true) : o.push(false), r = n.position, n = t.nextBreak(); + let s = A.slice(r, n.position); + i.push(s), n.required ? o.push(true) : o.push(false), r = n.position, n = t.nextBreak(); } return { words: i, requiredBreaks: o }; } -var bs = (A) => A.replaceAll(/([A-Z])/g, (e, t) => `-${t.toLowerCase()}`); -function Vr(A, e = ",") { +var Cs = (A) => A.replaceAll(/([A-Z])/g, (e, t) => `-${t.toLowerCase()}`); +function Or(A, e = ",") { let t = [], r = 0, n = 0; e = new RegExp(e); for (let i = 0; i < A.length; i++) A[i] === "(" ? n++ : A[i] === ")" && n--, n === 0 && e.test(A[i]) && (t.push(A.slice(r, i).trim()), r = i + 1); return t.push(A.slice(r).trim()), t; } -function rt() { - return process.env.SATORI_STANDALONE === "1" ? Promise.resolve().then(() => (jn(), Zn)).then((A) => A.getYoga()) : Promise.resolve().then(() => (Ai(), $n)).then((A) => A.getYoga()); -} -process.env.SATORI_STANDALONE !== "1" && Promise.resolve().then(() => (Ai(), $n)); -var KI = "image/avif"; -var YI = "image/webp"; -var $r = "image/apng"; -var An = "image/png"; -var en = "image/jpeg"; -var tn = "image/gif"; -var ei = "image/svg+xml"; -function Ps(A) { +function Ye() { + return Promise.resolve().then(() => (Tn(), On)).then((A) => A.getYoga()); +} +Promise.resolve().then(() => Tn()); +var ks = Symbol.for("react.fragment"); +var Uu = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; +function xs(A) { + let e = A.split(".").map((i) => Number.parseInt(i, 10)); + if (e.length !== 4 || e.some((i) => !Number.isInteger(i) || i < 0 || i > 255)) + return true; + let [t, r, n] = e; + return t === 0 || t === 10 || t === 100 && r >= 64 && r <= 127 || t === 127 || t === 169 && r === 254 || t === 172 && r >= 16 && r <= 31 || t === 192 && r === 0 && n === 0 || t === 192 && r === 168 || t === 198 && (r === 18 || r === 19) || t >= 224; +} +function Hu(A) { + let e = A.match(/^(?:::ffff:|64:ff9b::|::)(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})$/); + if (e) + return e[1]; + let t = A.match(/^(?:::ffff:|64:ff9b::|::)([0-9a-f]{1,4}):([0-9a-f]{1,4})$/); + if (t) { + let r = Number.parseInt(t[1], 16), n = Number.parseInt(t[2], 16); + return `${r >> 8 & 255}.${r & 255}.${n >> 8 & 255}.${n & 255}`; + } + return null; +} +function Ou(A) { + let e = Hu(A); + return e ? xs(e) : !!(A === "::" || A === "::1" || A.startsWith("fc") || A.startsWith("fd") || /^fe[89ab]/.test(A) || /^fe[c-f]/.test(A) || A.startsWith("ff") || /^2001:0?db8(?::|$)/.test(A)); +} +function Tu(A) { + let e; + try { + e = new URL(A); + } catch { + return true; + } + if (e.protocol !== "http:" && e.protocol !== "https:") + return true; + let t = e.hostname.toLowerCase(); + return t.startsWith("[") && t.endsWith("]") && (t = t.slice(1, -1)), t === "localhost" || t.endsWith(".localhost") || t.endsWith(".local") ? true : Uu.test(t) ? xs(t) : t.includes(":") ? Ou(t) : false; +} +function Rs(A) { + if (Tu(A)) + throw new Error(`Image source resolves to a blocked address (SSRF protection): ${A}`); +} +var Pu = "image/avif"; +var _r = "image/webp"; +var Jr = "image/apng"; +var Kr = "image/png"; +var Wr = "image/jpeg"; +var Yr = "image/gif"; +var Pn = "image/svg+xml"; +function Fs(A) { let e = new DataView(A), t = 4, r = e.byteLength; for (; t < r; ) { let n = e.getUint16(t, false); @@ -18168,22 +17180,57 @@ function Ps(A) { } throw new TypeError("Invalid JPEG"); } -function _s(A) { +function Ms(A) { + let e = new DataView(A), t = new Uint8Array(A); + if (e.byteLength < 20 || e.getUint32(0) !== 1380533830 || e.getUint32(8) !== 1464156752) + throw new TypeError("Invalid WebP"); + let r = e.getUint32(4, true) + 8; + if (r < 20 || r > e.byteLength) + throw new TypeError("Invalid WebP"); + let n = 12; + for (; n + 8 <= r; ) { + let i = e.getUint32(n), o = e.getUint32(n + 4, true), s = n + 8, a = s + o; + if (a > r) + throw new TypeError("Invalid WebP"); + if (i === 1448097824) { + if (o < 10 || t[s + 3] !== 157 || t[s + 4] !== 1 || t[s + 5] !== 42) + throw new TypeError("Invalid WebP"); + let I = e.getUint16(s + 6, true) & 16383, g2 = e.getUint16(s + 8, true) & 16383; + if (!I || !g2) + throw new TypeError("Invalid WebP"); + return [I, g2]; + } + if (i === 1448097868) { + if (o < 5 || t[s] !== 47) + throw new TypeError("Invalid WebP"); + let I = e.getUint32(s + 1, true); + return [(I & 16383) + 1, (I >>> 14 & 16383) + 1]; + } + if (i === 1448097880) { + if (o < 10) + throw new TypeError("Invalid WebP"); + return [t[s + 4] + (t[s + 5] << 8) + (t[s + 6] << 16) + 1, t[s + 7] + (t[s + 8] << 8) + (t[s + 9] << 16) + 1]; + } + n = a + o % 2; + } + throw new TypeError("Invalid WebP"); +} +function Ls(A) { let e = new Uint8Array(A.slice(6, 10)); return [e[0] | e[1] << 8, e[2] | e[3] << 8]; } -function Js(A) { +function Gs(A) { let e = new DataView(A); return [e.getUint16(18, false), e.getUint16(22, false)]; } -var _e = ys(500); -var Xt = /* @__PURE__ */ new Map(); -var qI = [An, $r, en, tn, ei]; -var XI = /]*>/i; -var VI = /viewBox=['"]([^'"]+)['"]/; -var zI = /width=['"](\d*\.?\d+)['"]/; -var ZI = /height=['"](\d*\.?\d+)['"]/; -function jI(A) { +var ke = Bs(500); +var Mt = /* @__PURE__ */ new Map(); +var _u = [Kr, Jr, Wr, Yr, Pn, _r]; +var Ju = /]*>/i; +var Ku = /viewBox=['"]([^'"]+)['"]/; +var Wu = /width=['"](\d*\.?\d+)['"]/; +var Yu = /height=['"](\d*\.?\d+)['"]/; +function qu(A) { let e = new Uint8Array(A), t = 32768, r = ""; for (let n = 0; n < e.length; n += t) { let i = e.subarray(n, Math.min(n + t, e.length)); @@ -18191,45 +17238,48 @@ function jI(A) { } return btoa(r); } -function $I(A) { +function Xu(A) { let e = atob(A), t = e.length, r = new Uint8Array(t); for (let n = 0; n < t; n++) r[n] = e.charCodeAt(n); return r.buffer; } -function Os(A, e) { - let t = e.match(XI); +function vs(A, e) { + let t = e.match(Ju); if (!t) throw new Error(`Failed to parse SVG from ${A}`); - let r = t[0], n = VI.exec(r), i = zI.exec(r), o = ZI.exec(r), a = n ? Nt(n[1]) : null; - if (!a && (!i || !o)) + let r = t[0], n = Ku.exec(r), i = Wu.exec(r), o = Yu.exec(r), s = n ? ft(n[1]) : null; + if (!s && (!i || !o)) throw new Error(`Failed to parse SVG from ${A}: missing "viewBox"`); - let u2 = a ? [a[2], a[3]] : [+i[1], +o[1]], l2 = u2[0] / u2[1]; - return i && o ? [+i[1], +o[1]] : i ? [+i[1], +i[1] / l2] : o ? [+o[1] * l2, +o[1]] : [u2[0], u2[1]]; + let a = s ? [s[2], s[3]] : [+i[1], +o[1]], I = a[0] / a[1]; + return i && o ? [+i[1], +o[1]] : i ? [+i[1], +i[1] / I] : o ? [+o[1] * I, +o[1]] : [a[0], a[1]]; } -function Ts(A) { - let e, t = Al(new Uint8Array(A)); +function Ns(A) { + let e, t = Vu(new Uint8Array(A)); switch (t) { - case An: - case $r: - e = Js(A); + case Kr: + case Jr: + e = Gs(A); break; - case tn: - e = _s(A); + case Yr: + e = Ls(A); break; - case en: - e = Ps(A); + case Wr: + e = Fs(A); + break; + case _r: + e = Ms(A); break; } - if (!qI.includes(t)) + if (!_u.includes(t)) throw new Error(`Unsupported image type: ${t || "unknown"}`); - return [`data:${t};base64,${jI(A)}`, e]; + return [`data:${t};base64,${qu(A)}`, e]; } -async function Gt(A) { +async function ht(A) { if (!A) throw new Error("Image source is not provided."); if (typeof A == "object") { - let [n, i] = Ts(A); + let [n, i] = Ns(A); return [n, ...i]; } if ((A.startsWith('"') && A.endsWith('"') || A.startsWith("'") && A.endsWith("'")) && (A = A.slice(1, -1)), typeof window > "u" && !A.startsWith("http") && !A.startsWith("data:")) @@ -18241,55 +17291,60 @@ async function Gt(A) { } catch { return console.warn("Image data URI resolved without size:" + A), [A]; } - let { imageType: i, encodingType: o, dataString: a } = n; - if (i === ei) { - let u2 = o === "base64" ? atob(a) : decodeURIComponent(a.replace(/ /g, "%20")), l2 = o === "base64" ? A : `data:image/svg+xml;base64,${btoa(u2)}`, I = Os(A, u2); - return _e.set(A, [l2, ...I]), [l2, ...I]; + let { imageType: i, encodingType: o, dataString: s } = n; + if (i === Pn) { + let a = o === "base64" ? atob(s) : decodeURIComponent(s.replace(/ /g, "%20")), I = o === "base64" ? A : `data:image/svg+xml;base64,${btoa(a)}`, g2 = vs(A, a); + return ke.set(A, [I, ...g2]), [I, ...g2]; } else if (o === "base64") { - let u2, l2 = $I(a); + let a, I = Xu(s); switch (i) { - case An: - case $r: - u2 = Js(l2); + case Kr: + case Jr: + a = Gs(I); + break; + case Yr: + a = Ls(I); break; - case tn: - u2 = _s(l2); + case Wr: + a = Fs(I); break; - case en: - u2 = Ps(l2); + case _r: + a = Ms(I); break; } - return _e.set(A, [A, ...u2]), [A, ...u2]; + return ke.set(A, [A, ...a]), [A, ...a]; } else - return console.warn("Image data URI resolved without size:" + A), _e.set(A, [A]), [A]; + return console.warn("Image data URI resolved without size:" + A), ke.set(A, [A]), [A]; } if (!globalThis.fetch) throw new Error("`fetch` is required to be polyfilled to load images."); - if (Xt.has(A)) - return Xt.get(A); - let e = _e.get(A); + if (Mt.has(A)) + return Mt.get(A); + let e = ke.get(A); if (e) return e; - let t = A, r = fetch(t).then((n) => { + let t = A; + typeof window > "u" && Rs(t); + let r = fetch(t).then((n) => { let i = n.headers.get("content-type"); return i === "image/svg+xml" || i === "application/svg+xml" ? n.text() : n.arrayBuffer(); }).then((n) => { if (typeof n == "string") try { - let a = `data:image/svg+xml;base64,${btoa(n)}`, u2 = Os(t, n); - return [a, ...u2]; - } catch (a) { - throw new Error(`Failed to parse SVG image: ${a.message}`); + let s = `data:image/svg+xml;base64,${btoa(n)}`, a = vs(t, n); + return [s, ...a]; + } catch (s) { + throw new Error(`Failed to parse SVG image: ${s.message}`); } - let [i, o] = Ts(n); + let [i, o] = Ns(n); return [i, ...o]; - }).then((n) => (_e.set(t, n), n)).catch((n) => (console.error(`Can't load image ${t}: ` + n.message), _e.set(t, []), [])); - return Xt.set(t, r), r; + }).then((n) => (ke.set(t, n), n)).catch((n) => (console.error(`Can't load image ${t}: ` + n.message), ke.set(t, []), [])); + return Mt.set(t, r), r; } -function Al(A) { - return [255, 216, 255].every((e, t) => A[t] === e) ? en : [137, 80, 78, 71, 13, 10, 26, 10].every((e, t) => A[t] === e) ? el(A) ? $r : An : [71, 73, 70, 56].every((e, t) => A[t] === e) ? tn : [82, 73, 70, 70, 0, 0, 0, 0, 87, 69, 66, 80].every((e, t) => !e || A[t] === e) ? YI : [60, 63, 120, 109, 108].every((e, t) => A[t] === e) ? ei : [0, 0, 0, 0, 102, 116, 121, 112, 97, 118, 105, 102].every((e, t) => !e || A[t] === e) ? KI : null; +function Vu(A) { + return [255, 216, 255].every((e, t) => A[t] === e) ? Wr : [137, 80, 78, 71, 13, 10, 26, 10].every((e, t) => A[t] === e) ? zu(A) ? Jr : Kr : [71, 73, 70, 56].every((e, t) => A[t] === e) ? Yr : [82, 73, 70, 70, 0, 0, 0, 0, 87, 69, 66, 80].every((e, t) => !e || A[t] === e) ? _r : [60, 63, 120, 109, 108].every((e, t) => A[t] === e) ? Pn : [0, 0, 0, 0, 102, 116, 121, 112, 97, 118, 105, 102].every((e, t) => !e || A[t] === e) ? Pu : null; } -function el(A) { +function zu(A) { let e = new DataView(A.buffer), t, r, n = 8, i = false; for (; !i && t !== "IEND" && n < A.length; ) { r = e.getUint32(n); @@ -18298,24 +17353,24 @@ function el(A) { } return i; } -var ti = { accentHeight: "accent-height", alignmentBaseline: "alignment-baseline", arabicForm: "arabic-form", baselineShift: "baseline-shift", capHeight: "cap-height", clipPath: "clip-path", clipRule: "clip-rule", colorInterpolation: "color-interpolation", colorInterpolationFilters: "color-interpolation-filters", colorProfile: "color-profile", colorRendering: "color-rendering", dominantBaseline: "dominant-baseline", enableBackground: "enable-background", fillOpacity: "fill-opacity", fillRule: "fill-rule", floodColor: "flood-color", floodOpacity: "flood-opacity", fontFamily: "font-family", fontSize: "font-size", fontSizeAdjust: "font-size-adjust", fontStretch: "font-stretch", fontStyle: "font-style", fontVariant: "font-variant", fontWeight: "font-weight", glyphName: "glyph-name", glyphOrientationHorizontal: "glyph-orientation-horizontal", glyphOrientationVertical: "glyph-orientation-vertical", horizAdvX: "horiz-adv-x", horizOriginX: "horiz-origin-x", href: "href", imageRendering: "image-rendering", letterSpacing: "letter-spacing", lightingColor: "lighting-color", markerEnd: "marker-end", markerMid: "marker-mid", markerStart: "marker-start", overlinePosition: "overline-position", overlineThickness: "overline-thickness", paintOrder: "paint-order", panose1: "panose-1", pointerEvents: "pointer-events", renderingIntent: "rendering-intent", shapeRendering: "shape-rendering", stopColor: "stop-color", stopOpacity: "stop-opacity", strikethroughPosition: "strikethrough-position", strikethroughThickness: "strikethrough-thickness", strokeDasharray: "stroke-dasharray", strokeDashoffset: "stroke-dashoffset", strokeLinecap: "stroke-linecap", strokeLinejoin: "stroke-linejoin", strokeMiterlimit: "stroke-miterlimit", strokeOpacity: "stroke-opacity", strokeWidth: "stroke-width", textAnchor: "text-anchor", textDecoration: "text-decoration", textRendering: "text-rendering", underlinePosition: "underline-position", underlineThickness: "underline-thickness", unicodeBidi: "unicode-bidi", unicodeRange: "unicode-range", unitsPerEm: "units-per-em", vAlphabetic: "v-alphabetic", vHanging: "v-hanging", vIdeographic: "v-ideographic", vMathematical: "v-mathematical", vectorEffect: "vector-effect", vertAdvY: "vert-adv-y", vertOriginX: "vert-origin-x", vertOriginY: "vert-origin-y", wordSpacing: "word-spacing", writingMode: "writing-mode", xHeight: "x-height", xlinkActuate: "xlink:actuate", xlinkArcrole: "xlink:arcrole", xlinkHref: "xlink:href", xlinkRole: "xlink:role", xlinkShow: "xlink:show", xlinkTitle: "xlink:title", xlinkType: "xlink:type", xmlBase: "xml:base", xmlLang: "xml:lang", xmlSpace: "xml:space", xmlnsXlink: "xmlns:xlink" }; -var tl = /[\r\n%#()<>?[\\\]^`{|}"']/g; -function ri(A, e) { +var _n = { accentHeight: "accent-height", alignmentBaseline: "alignment-baseline", arabicForm: "arabic-form", baselineShift: "baseline-shift", capHeight: "cap-height", clipPath: "clip-path", clipRule: "clip-rule", colorInterpolation: "color-interpolation", colorInterpolationFilters: "color-interpolation-filters", colorProfile: "color-profile", colorRendering: "color-rendering", dominantBaseline: "dominant-baseline", enableBackground: "enable-background", fillOpacity: "fill-opacity", fillRule: "fill-rule", floodColor: "flood-color", floodOpacity: "flood-opacity", fontFamily: "font-family", fontSize: "font-size", fontSizeAdjust: "font-size-adjust", fontStretch: "font-stretch", fontStyle: "font-style", fontVariant: "font-variant", fontWeight: "font-weight", glyphName: "glyph-name", glyphOrientationHorizontal: "glyph-orientation-horizontal", glyphOrientationVertical: "glyph-orientation-vertical", horizAdvX: "horiz-adv-x", horizOriginX: "horiz-origin-x", href: "href", imageRendering: "image-rendering", letterSpacing: "letter-spacing", lightingColor: "lighting-color", markerEnd: "marker-end", markerMid: "marker-mid", markerStart: "marker-start", overlinePosition: "overline-position", overlineThickness: "overline-thickness", paintOrder: "paint-order", panose1: "panose-1", pointerEvents: "pointer-events", renderingIntent: "rendering-intent", shapeRendering: "shape-rendering", stopColor: "stop-color", stopOpacity: "stop-opacity", strikethroughPosition: "strikethrough-position", strikethroughThickness: "strikethrough-thickness", strokeDasharray: "stroke-dasharray", strokeDashoffset: "stroke-dashoffset", strokeLinecap: "stroke-linecap", strokeLinejoin: "stroke-linejoin", strokeMiterlimit: "stroke-miterlimit", strokeOpacity: "stroke-opacity", strokeWidth: "stroke-width", textAnchor: "text-anchor", textDecoration: "text-decoration", textRendering: "text-rendering", underlinePosition: "underline-position", underlineThickness: "underline-thickness", unicodeBidi: "unicode-bidi", unicodeRange: "unicode-range", unitsPerEm: "units-per-em", vAlphabetic: "v-alphabetic", vHanging: "v-hanging", vIdeographic: "v-ideographic", vMathematical: "v-mathematical", vectorEffect: "vector-effect", vertAdvY: "vert-adv-y", vertOriginX: "vert-origin-x", vertOriginY: "vert-origin-y", wordSpacing: "word-spacing", writingMode: "writing-mode", xHeight: "x-height", xlinkActuate: "xlink:actuate", xlinkArcrole: "xlink:arcrole", xlinkHref: "xlink:href", xlinkRole: "xlink:role", xlinkShow: "xlink:show", xlinkTitle: "xlink:title", xlinkType: "xlink:type", xmlBase: "xml:base", xmlLang: "xml:lang", xmlSpace: "xml:space", xmlnsXlink: "xmlns:xlink" }; +var Zu = /[\r\n%#()<>?[\\\]^`{|}"']/g; +function qr(A, e) { if (!A) return ""; if (Array.isArray(A)) - return A.map((l2) => ri(l2, e)).join(""); + return A.map((I) => qr(I, e)).join(""); if (typeof A != "object") return String(A); let t = A.type; if (t === "text") throw new Error(" nodes are not currently supported, please convert them to "); - let { children: r, style: n, ...i } = A.props || {}, o = (n == null ? void 0 : n.color) || e, a = `${Object.entries(i).map(([l2, I]) => (typeof I == "string" && I.toLowerCase() === "currentcolor" && (I = o), (l2 === "href" || l2 === "xlinkHref") && t === "image" ? ` ${ti[l2] || l2}="${_e.get(I)[0]}"` : ` ${ti[l2] || l2}="${I}"`)).join("")}`, u2 = n ? ` style="${Object.entries(n).map(([l2, I]) => `${bs(l2)}:${I}`).join(";")}"` : ""; - return `<${t}${a}${u2}>${ri(r, o)}`; + let { children: r, style: n, ...i } = A.props || {}, o = (n == null ? void 0 : n.color) || e, s = `${Object.entries(i).map(([I, g2]) => (typeof g2 == "string" && g2.toLowerCase() === "currentcolor" && (g2 = o), (I === "href" || I === "xlinkHref") && t === "image" ? ` ${_n[I] || I}="${ke.get(g2)[0]}"` : ` ${_n[I] || I}="${g2}"`)).join("")}`, a = n ? ` style="${Object.entries(n).map(([I, g2]) => `${Cs(I)}:${g2}`).join(";")}"` : ""; + return t === ks ? qr(r, o) : `<${t}${s}${a}>${qr(r, o)}`; } -async function Ws(A) { +async function Us(A) { let e = /* @__PURE__ */ new Set(), t = (r) => { - if (r && Rt(r)) { + if (r && Et(r)) { if (Array.isArray(r)) { r.forEach((n) => t(n)); return; @@ -18328,26 +17383,26 @@ async function Ws(A) { Array.isArray(r.props.children) ? r.props.children.map((n) => t(n)) : t(r.props.children); } }; - return t(A), Promise.all(Array.from(e).map((r) => Gt(r))); -} -async function Ks(A, e) { - let { viewBox: t, viewbox: r, width: n, height: i, className: o, style: a, children: u2, ...l2 } = A.props || {}; - t ||= r, l2.xmlns = "http://www.w3.org/2000/svg"; - let I = (a == null ? void 0 : a.color) || e, E = Nt(t), C = E ? E[3] / E[2] : null; - return n = n || C && i ? i / C : null, i = i || C && n ? n * C : null, l2.width = n, l2.height = i, t && (l2.viewBox = t), `data:image/svg+xml;utf8,${` (typeof p == "string" && p.toLowerCase() === "currentcolor" && (p = I), ` ${ti[d2] || d2}="${p}"`)).join("")}>${ri(u2, I)}`.replace(tl, encodeURIComponent)}`; -} -var xe = "flex"; -var Ys = { p: { display: xe, marginTop: "1em", marginBottom: "1em" }, div: { display: xe }, blockquote: { display: xe, marginTop: "1em", marginBottom: "1em", marginLeft: 40, marginRight: 40 }, center: { display: xe, textAlign: "center" }, hr: { display: xe, marginTop: "0.5em", marginBottom: "0.5em", marginLeft: "auto", marginRight: "auto", borderWidth: 1, borderStyle: "solid" }, h1: { display: xe, fontSize: "2em", marginTop: "0.67em", marginBottom: "0.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h2: { display: xe, fontSize: "1.5em", marginTop: "0.83em", marginBottom: "0.83em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h3: { display: xe, fontSize: "1.17em", marginTop: "1em", marginBottom: "1em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h4: { display: xe, marginTop: "1.33em", marginBottom: "1.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h5: { display: xe, fontSize: "0.83em", marginTop: "1.67em", marginBottom: "1.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h6: { display: xe, fontSize: "0.67em", marginTop: "2.33em", marginBottom: "2.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, u: { textDecoration: "underline" }, strong: { fontWeight: "bold" }, b: { fontWeight: "bold" }, i: { fontStyle: "italic" }, em: { fontStyle: "italic" }, code: { fontFamily: "monospace" }, kbd: { fontFamily: "monospace" }, pre: { display: xe, fontFamily: "monospace", whiteSpace: "pre", marginTop: "1em", marginBottom: "1em" }, mark: { backgroundColor: "yellow", color: "black" }, big: { fontSize: "larger" }, small: { fontSize: "smaller" }, s: { textDecoration: "line-through" } }; -var rl = /* @__PURE__ */ new Set(["color", "font", "fontFamily", "fontSize", "fontStyle", "fontWeight", "letterSpacing", "lineHeight", "textAlign", "textIndent", "textTransform", "textShadowOffset", "textShadowColor", "textShadowRadius", "WebkitTextStrokeWidth", "WebkitTextStrokeColor", "textDecorationLine", "textDecorationStyle", "textDecorationColor", "textDecorationSkipInk", "whiteSpace", "transform", "wordBreak", "tabSize", "opacity", "filter", "_viewportWidth", "_viewportHeight", "_inheritedClipPathId", "_inheritedMaskId", "_inheritedBackgroundClipTextPath", "_inheritedBackgroundClipTextHasBackground"]); -function ni(A) { + return t(A), Promise.all(Array.from(e).map((r) => ht(r))); +} +async function Hs(A, e) { + let { viewBox: t, viewbox: r, width: n, height: i, className: o, style: s, children: a, ...I } = A.props || {}; + t ||= r, I.xmlns = "http://www.w3.org/2000/svg"; + let g2 = (s == null ? void 0 : s.color) || e, c2 = ft(t), B = c2 ? c2[3] / c2[2] : null; + return n = n || B && i ? i / B : null, i = i || B && n ? n * B : null, I.width = n, I.height = i, t && (I.viewBox = t), `data:image/svg+xml;utf8,${` (typeof Q == "string" && Q.toLowerCase() === "currentcolor" && (Q = g2), ` ${_n[E] || E}="${Q}"`)).join("")}>${qr(a, g2)}`.replace(Zu, encodeURIComponent)}`; +} +var ae = "flex"; +var Os = { p: { display: ae, marginTop: "1em", marginBottom: "1em" }, div: { display: ae }, blockquote: { display: ae, marginTop: "1em", marginBottom: "1em", marginLeft: 40, marginRight: 40 }, center: { display: ae, textAlign: "center" }, hr: { display: ae, marginTop: "0.5em", marginBottom: "0.5em", marginLeft: "auto", marginRight: "auto", borderWidth: 1, borderStyle: "solid" }, h1: { display: ae, fontSize: "2em", marginTop: "0.67em", marginBottom: "0.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h2: { display: ae, fontSize: "1.5em", marginTop: "0.83em", marginBottom: "0.83em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h3: { display: ae, fontSize: "1.17em", marginTop: "1em", marginBottom: "1em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h4: { display: ae, marginTop: "1.33em", marginBottom: "1.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h5: { display: ae, fontSize: "0.83em", marginTop: "1.67em", marginBottom: "1.67em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, h6: { display: ae, fontSize: "0.67em", marginTop: "2.33em", marginBottom: "2.33em", marginLeft: 0, marginRight: 0, fontWeight: "bold" }, u: { textDecoration: "underline" }, strong: { fontWeight: "bold" }, b: { fontWeight: "bold" }, i: { fontStyle: "italic" }, em: { fontStyle: "italic" }, code: { fontFamily: "monospace" }, kbd: { fontFamily: "monospace" }, pre: { display: ae, fontFamily: "monospace", whiteSpace: "pre", marginTop: "1em", marginBottom: "1em" }, mark: { backgroundColor: "yellow", color: "black" }, big: { fontSize: "larger" }, small: { fontSize: "smaller" }, s: { textDecoration: "line-through" } }; +var ju = /* @__PURE__ */ new Set(["color", "font", "fontFamily", "fontSize", "fontStyle", "fontWeight", "letterSpacing", "lineHeight", "textAlign", "textIndent", "textTransform", "textShadowOffset", "textShadowColor", "textShadowRadius", "WebkitTextStrokeWidth", "WebkitTextStrokeColor", "textDecorationLine", "textDecorationStyle", "textDecorationColor", "textDecorationSkipInk", "whiteSpace", "transform", "wordBreak", "tabSize", "opacity", "filter", "_viewportWidth", "_viewportHeight", "_inheritedClipPathId", "_inheritedMaskId", "_inheritedBackgroundClipTextPath", "_inheritedBackgroundClipTextHasBackground"]); +function Jn(A) { let e = {}; for (let t in A) - (rl.has(t) || t.startsWith("--")) && (e[t] = A[t]); + (ju.has(t) || t.startsWith("--")) && (e[t] = A[t]); return e; } -function il(A, e) { +function Al(A, e) { try { - let t = new He(A); + let t = new he(A); switch (t.unit) { case "px": return { absolute: t.value }; @@ -18364,7 +17419,7 @@ function il(A, e) { return {}; } } -function ii(A, e, t) { +function Kn(A, e, t) { switch (A) { case "top": return { yRelative: 0 }; @@ -18377,12 +17432,12 @@ function ii(A, e, t) { case "center": return {}; default: { - let r = il(A, e); + let r = Al(A, e); return r.absolute ? { [t ? "xAbsolute" : "yAbsolute"]: r.absolute } : r.relative ? { [t ? "xRelative" : "yRelative"]: r.relative } : {}; } } } -function oi(A, e) { +function Wn(A, e) { if (typeof A == "number") return { xAbsolute: A }; let t; @@ -18391,26 +17446,26 @@ function oi(A, e) { } catch { return {}; } - return t.length === 1 ? ii(t[0], e, true) : t.length === 2 ? ((t[0] === "top" || t[0] === "bottom" || t[1] === "left" || t[1] === "right") && t.reverse(), { ...ii(t[0], e, true), ...ii(t[1], e, false) }) : {}; + return t.length === 1 ? Kn(t[0], e, true) : t.length === 2 ? ((t[0] === "top" || t[0] === "bottom" || t[1] === "left" || t[1] === "right") && t.reverse(), { ...Kn(t[0], e, true), ...Kn(t[1], e, false) }) : {}; } -function Vt(A, e) { +function Lt(A, e) { let t = (0, import_css_to_react_native2.getPropertyName)(`mask-${e}`); return A[t] || A[`WebkitM${t.substring(1)}`]; } -function qs(A) { - let e = A.maskImage || A.WebkitMaskImage, t = { position: Vt(A, "position") || "0% 0%", size: Vt(A, "size") || "100% 100%", repeat: Vt(A, "repeat") || "repeat", origin: Vt(A, "origin") || "border-box", clip: Vt(A, "origin") || "border-box" }; - return Vr(e).filter((n) => n && n !== "none").reverse().map((n) => ({ image: n, ...t })); +function Ts(A) { + let e = A.maskImage || A.WebkitMaskImage, t = { position: Lt(A, "position") || "0% 0%", size: Lt(A, "size") || "100% 100%", repeat: Lt(A, "repeat") || "repeat", origin: Lt(A, "origin") || "border-box", clip: Lt(A, "origin") || "border-box" }; + return Or(e).filter((n) => n && n !== "none").reverse().map((n) => ({ image: n, ...t })); } -function Vs(A) { +function _s(A) { let e = {}, t = {}; for (let r in A) r.startsWith("--") ? e[r] = String(A[r]) : t[r] = A[r]; return { variables: e, remainingStyle: t }; } -function zs(A, e) { +function Js(A, e) { return { ...A, ...e }; } -function Zt(A, e, t = /* @__PURE__ */ new Set()) { +function Ut(A, e, t = /* @__PURE__ */ new Set()) { if (typeof A != "string" || !A.includes("var(")) return A; try { @@ -18418,25 +17473,25 @@ function Zt(A, e, t = /* @__PURE__ */ new Set()) { if (r.walk((i) => { if (i.type === "function" && i.value === "var") { n = true; - let o = sl(i); + let o = tl(i); if (!o) return; - let { varName: a, fallback: u2 } = o; - if (t.has(a)) { - console.warn(`Circular reference detected for CSS variable: ${a}`), u2 !== void 0 ? zt(i, u2) : zt(i, "initial"); + let { varName: s, fallback: a } = o; + if (t.has(s)) { + console.warn(`Circular reference detected for CSS variable: ${s}`), a !== void 0 ? Gt(i, a) : Gt(i, "initial"); return; } - let l2 = e[a]; - if (l2 !== void 0) { - let I = new Set(t); - I.add(a); - let E = Zt(l2, e, I); - zt(i, String(E)); - } else if (u2 !== void 0) { - let I = Zt(u2, e, t); - zt(i, String(I)); + let I = e[s]; + if (I !== void 0) { + let g2 = new Set(t); + g2.add(s); + let c2 = Ut(I, e, g2); + Gt(i, String(c2)); + } else if (a !== void 0) { + let g2 = Ut(a, e, t); + Gt(i, String(g2)); } else - zt(i, "initial"); + Gt(i, "initial"); } }), n) return r.toString(); @@ -18445,7 +17500,7 @@ function Zt(A, e, t = /* @__PURE__ */ new Set()) { } return A; } -function sl(A) { +function tl(A) { if (!A.nodes || A.nodes.length === 0) return null; let e, t = -1; @@ -18467,40 +17522,40 @@ function sl(A) { } return { varName: r }; } -function zt(A, e) { +function Gt(A, e) { A.type = "word", A.value = e, delete A.nodes; } -var ll = /* @__PURE__ */ new Set(["flex", "flexGrow", "flexShrink", "flexBasis", "fontWeight", "lineHeight", "opacity", "scale", "scaleX", "scaleY"]); -var cl = /* @__PURE__ */ new Set(["lineHeight"]); -function fl2(A, e, t, r) { +var sl = /* @__PURE__ */ new Set(["flex", "flexGrow", "flexShrink", "flexBasis", "fontWeight", "lineHeight", "opacity", "scale", "scaleX", "scaleY"]); +var al = /* @__PURE__ */ new Set(["lineHeight"]); +function gl(A, e, t, r) { return A === "textDecoration" && !t.includes(e.textDecorationColor) && (e.textDecorationColor = r), e; } -function Et(A, e) { +function rt(A, e) { let t = Number(e); - return isNaN(t) ? e : ll.has(A) ? cl.has(A) ? t : String(e) : t + "px"; + return isNaN(t) ? e : sl.has(A) ? al.has(A) ? t : String(e) : t + "px"; } -function Bl(A, e, t) { +function Il(A, e, t) { if (A === "zIndex") return console.warn("`z-index` is currently not supported."), { [A]: e }; if (A === "lineHeight") - return { lineHeight: Et(A, e) }; + return { lineHeight: rt(A, e) }; if (A === "fontFamily") return { fontFamily: e.split(",").map((r) => r.trim().replace(/(^['"])|(['"]$)/g, "").toLocaleLowerCase()) }; if (A === "borderRadius") { if (typeof e != "string" || !e.includes("/")) return; let [r, n] = e.split("/"), i = (0, import_css_to_react_native.getStylesForProperty)(A, r, true), o = (0, import_css_to_react_native.getStylesForProperty)(A, n, true); - for (let a in i) - o[a] = Et(A, i[a]) + " " + Et(A, o[a]); + for (let s in i) + o[s] = rt(A, i[s]) + " " + rt(A, o[s]); return o; } if (/^border(Top|Right|Bottom|Left)?$/.test(A)) { let r = (0, import_css_to_react_native.getStylesForProperty)("border", e, true); r.borderWidth === 1 && !String(e).includes("1px") && (r.borderWidth = 3), r.borderColor === "black" && !String(e).includes("black") && (r.borderColor = t); - let n = { Width: Et(A + "Width", r.borderWidth), Style: ue(r.borderStyle, { solid: "solid", dashed: "dashed" }, "solid", A + "Style"), Color: r.borderColor }, i = {}; + let n = { Width: rt(A + "Width", r.borderWidth), Style: YA(r.borderStyle, { solid: "solid", dashed: "dashed" }, "solid", A + "Style"), Color: r.borderColor }, i = {}; for (let o of A === "border" ? ["Top", "Right", "Bottom", "Left"] : [A.slice(6)]) - for (let a in n) - i["border" + o + a] = n[a]; + for (let s in n) + i["border" + o + s] = n[s]; return i; } if (A === "boxShadow") { @@ -18511,24 +17566,24 @@ function Bl(A, e, t) { if (A === "transform") { if (typeof e != "string") throw new Error("Invalid `transform` value."); - let r = {}, n = e.replace(/(-?[\d.]+%)/g, (o, a) => { - let u2 = ~~(Math.random() * 1e9); - return r[u2] = a, u2 + "px"; + let r = {}, n = e.replace(/(-?[\d.]+%)/g, (o, s) => { + let a = ~~(Math.random() * 1e9); + return r[a] = s, a + "px"; }), i = (0, import_css_to_react_native.getStylesForProperty)("transform", n, true); for (let o of i.transform) - for (let a in o) - r[o[a]] && (o[a] = r[o[a]]); + for (let s in o) + r[o[s]] && (o[s] = r[o[s]]); return i; } if (A === "background") return e = e.toString().trim(), /^(linear-gradient|radial-gradient|url|repeating-linear-gradient|repeating-radial-gradient)\(/.test(e) ? (0, import_css_to_react_native.getStylesForProperty)("backgroundImage", e, true) : (0, import_css_to_react_native.getStylesForProperty)("background", e, true); if (A === "textShadow") { e = e.toString().trim(); - let r = {}, n = Vr(e); + let r = {}, n = Or(e); for (let i of n) { let o = (0, import_css_to_react_native.getStylesForProperty)("textShadow", i, true); - for (let a in o) - r[a] ? r[a].push(o[a]) : r[a] = [o[a]]; + for (let s in o) + r[s] ? r[s].push(o[s]) : r[s] = [o[s]]; } return r; } @@ -18537,7 +17592,7 @@ function Bl(A, e, t) { let r = e.split(" "); if (r.length !== 2) throw new Error("Invalid `WebkitTextStroke` value."); - return { WebkitTextStrokeWidth: Et(A, r[0]), WebkitTextStrokeColor: Et(A, r[1]) }; + return { WebkitTextStrokeWidth: rt(A, r[0]), WebkitTextStrokeColor: rt(A, r[1]) }; } if (A === "textDecorationSkipInk") { let r = e.toString().trim().toLowerCase(); @@ -18546,97 +17601,97 @@ function Bl(A, e, t) { return { textDecorationSkipInk: r }; } } -function Zs(A) { +function Ks(A) { return A === "transform" ? " Only absolute lengths such as `10px` are supported." : ""; } -var js = /rgb\((\d+)\s+(\d+)\s+(\d+)\s*\/\s*([\.\d]+)\)/; -function Aa(A) { - if (typeof A == "string" && js.test(A.trim())) - return A.trim().replace(js, (e, t, r, n, i) => `rgba(${t}, ${r}, ${n}, ${i})`); +var Ws = /rgb\((\d+)\s+(\d+)\s+(\d+)\s*\/\s*([\.\d]+)\)/; +function qs(A) { + if (typeof A == "string" && Ws.test(A.trim())) + return A.trim().replace(Ws, (e, t, r, n, i) => `rgba(${t}, ${r}, ${n}, ${i})`); if (typeof A == "object" && A !== null) { for (let e in A) - A[e] = Aa(A[e]); + A[e] = qs(A[e]); return A; } return A; } -function rn(A, e) { +function Xr(A, e) { let t = {}, r = {}; - for (let u2 in e) - u2.startsWith("--") && (r[u2] = String(e[u2])); + for (let a in e) + a.startsWith("--") && (r[a] = String(e[a])); let n = {}, i = A; if (A) { - let { variables: u2, remainingStyle: l2 } = Vs(A); - n = u2, i = l2; + let { variables: a, remainingStyle: I } = _s(A); + n = a, i = I; } - let o = zs(r, n); - for (let u2 in o) - t[u2] = o[u2]; + let o = Js(r, n); + for (let a in o) + t[a] = o[a]; if (i) { - let u2 = i.color ? Zt(i.color, o) : void 0, l2 = Ql(u2, e.color); - t.color = l2; - for (let I in i) { - if (I.startsWith("_")) { - t[I] = i[I]; + let a = i.color ? Ut(i.color, o) : void 0, I = ll(a, e.color); + t.color = I; + for (let g2 in i) { + if (g2.startsWith("_")) { + t[g2] = i[g2]; continue; } - if (I === "color") + if (g2 === "color") continue; - let E = (0, import_css_to_react_native.getPropertyName)(I), C = Zt(i[I], o), d2 = dl(C, l2); + let c2 = (0, import_css_to_react_native.getPropertyName)(g2), B = Ut(i[g2], o), E = Bl(B, I); try { - let p = Bl(E, d2, l2) || fl2(E, (0, import_css_to_react_native.getStylesForProperty)(E, Et(E, d2), true), d2, l2); - Object.assign(t, p); - } catch (p) { - throw new Error(p.message + (p.message.includes(d2) ? ` - ` + Zs(E) : ` - in CSS rule \`${E}: ${d2}\`.${Zs(E)}`)); + let Q = Il(c2, E, I) || gl(c2, (0, import_css_to_react_native.getStylesForProperty)(c2, rt(c2, E), true), E, I); + Object.assign(t, Q); + } catch (Q) { + throw new Error(Q.message + (Q.message.includes(E) ? ` + ` + Ks(c2) : ` + in CSS rule \`${c2}: ${E}\`.${Ks(c2)}`)); } } } if (t.backgroundImage) { - let { backgrounds: u2 } = (0, import_css_background_parser.parseElementStyle)(t); - t.backgroundImage = u2; - } - (t.maskImage || t.WebkitMaskImage) && (t.maskImage = qs(t)); - let a = El(t.fontSize, e.fontSize); - typeof t.fontSize < "u" && (t.fontSize = a), t.transformOrigin && (t.transformOrigin = oi(t.transformOrigin, a)); - for (let u2 in t) { - let l2 = t[u2]; - if (u2 === "lineHeight") - typeof l2 == "string" && l2 !== "normal" && (l2 = t[u2] = tA(l2, a, a, e, true) / a); + let { backgrounds: a } = (0, import_css_background_parser.parseElementStyle)(t); + t.backgroundImage = a; + } + (t.maskImage || t.WebkitMaskImage) && (t.maskImage = Ts(t)); + let s = ul(t.fontSize, e.fontSize); + typeof t.fontSize < "u" && (t.fontSize = s), t.transformOrigin && (t.transformOrigin = Wn(t.transformOrigin, s)); + for (let a in t) { + let I = t[a]; + if (a === "lineHeight") + typeof I == "string" && I !== "normal" && (I = t[a] = X(I, s, s, e, true) / s); else { - if (typeof l2 == "string") { - let I = tA(l2, a, a, e); - typeof I < "u" && (t[u2] = I), l2 = t[u2]; + if (typeof I == "string") { + let g2 = X(I, s, s, e); + typeof g2 < "u" && (t[a] = g2), I = t[a]; } - if (typeof l2 == "string" || typeof l2 == "object") { - let I = Aa(l2); - I && (t[u2] = I), l2 = t[u2]; + if (typeof I == "string" || typeof I == "object") { + let g2 = qs(I); + g2 && (t[a] = g2), I = t[a]; } } - if (u2 === "opacity" && typeof l2 == "number" && (t.opacity = l2 * e.opacity), u2 === "transform") { - let I = l2; - for (let E of I) { - let C = Object.keys(E)[0], d2 = E[C], p = typeof d2 == "string" ? tA(d2, a, a, e) ?? d2 : d2; - E[C] = p; + if (a === "opacity" && typeof I == "number" && (t.opacity = I * e.opacity), a === "transform") { + let g2 = I; + for (let c2 of g2) { + let B = Object.keys(c2)[0], E = c2[B], Q = typeof E == "string" ? X(E, s, s, e) ?? E : E; + c2[B] = Q; } } - if (u2 === "textShadowRadius") { - let I = l2; - t.textShadowRadius = I.map((E) => tA(E, a, 0, e, false)); + if (a === "textShadowRadius") { + let g2 = I; + t.textShadowRadius = g2.map((c2) => X(c2, s, 0, e, false)); } - if (u2 === "textShadowOffset") { - let I = l2; - t.textShadowOffset = I.map(({ height: E, width: C }) => ({ height: tA(E, a, 0, e, false), width: tA(C, a, 0, e, false) })); + if (a === "textShadowOffset") { + let g2 = I; + t.textShadowOffset = g2.map(({ height: c2, width: B }) => ({ height: X(c2, s, 0, e, false), width: X(B, s, 0, e, false) })); } } return t; } -function El(A, e) { +function ul(A, e) { if (typeof A == "number") return A; try { - let t = new He(A); + let t = new he(A); switch (t.unit) { case "em": return t.value * e; @@ -18647,43 +17702,43 @@ function El(A, e) { return e; } } -function $s(A) { +function Ys(A) { if (A.startsWith("hsl")) { let e = index_esm_default(A), [t, r, n] = e.values; return `hsl(${[t, `${r}%`, `${n}%`].concat(e.alpha === 1 ? [] : [e.alpha]).join(",")})`; } return A; } -function Ql(A, e) { - return A && A.toLowerCase() !== "currentcolor" ? $s(A) : $s(e); +function ll(A, e) { + return A && A.toLowerCase() !== "currentcolor" ? Ys(A) : Ys(e); } -function Cl(A, e) { +function cl(A, e) { return A.replace(/currentcolor/gi, e); } -function dl(A, e) { - return Xr(A) && (A = Cl(A, e)), A; +function Bl(A, e) { + return Hr(A) && (A = cl(A, e)), A; } -async function si(A, e, t, r, n) { - let i = await rt(), o = Object.assign({}, t, rn(Ys[e], t), rn(r, t)); +async function Yn(A, e, t, r, n) { + let i = await Ye(), o = Object.assign({}, t, Xr(Os[e], t), Xr(r, t)); if (e === "img") { - let [a, u2, l2] = await Gt(n.src); - if (u2 === void 0 && l2 === void 0) { + let [s, a, I] = await ht(n.src); + if (a === void 0 && I === void 0) { if (n.width === void 0 || n.height === void 0) throw new Error("Image size cannot be determined. Please provide the width and height of the image."); - u2 = parseInt(n.width), l2 = parseInt(n.height); + a = parseInt(n.width), I = parseInt(n.height); } - let I = l2 / u2, E = (o.borderLeftWidth || 0) + (o.borderRightWidth || 0) + (o.paddingLeft || 0) + (o.paddingRight || 0), C = (o.borderTopWidth || 0) + (o.borderBottomWidth || 0) + (o.paddingTop || 0) + (o.paddingBottom || 0), d2 = o.width || n.width, p = o.height || n.height, y = typeof d2 == "number" && typeof p == "number"; - y && (d2 -= E, p -= C), d2 === void 0 && p === void 0 ? (d2 = "100%", A.setAspectRatio(1 / I)) : d2 === void 0 ? typeof p == "number" ? d2 = p / I : A.setAspectRatio(1 / I) : p === void 0 && (typeof d2 == "number" ? p = d2 * I : A.setAspectRatio(1 / I)), o.width = y ? d2 + E : d2, o.height = y ? p + C : p, o.__src = a, o.__naturalWidth = u2, o.__naturalHeight = l2; + let g2 = I / a, c2 = (o.borderLeftWidth || 0) + (o.borderRightWidth || 0) + (o.paddingLeft || 0) + (o.paddingRight || 0), B = (o.borderTopWidth || 0) + (o.borderBottomWidth || 0) + (o.paddingTop || 0) + (o.paddingBottom || 0), E = o.width || n.width, Q = o.height || n.height, d2 = typeof E == "number" && typeof Q == "number"; + d2 && (E -= c2, Q -= B), E === void 0 && Q === void 0 ? (E = "100%", A.setAspectRatio(1 / g2)) : E === void 0 ? typeof Q == "number" ? E = Q / g2 : A.setAspectRatio(1 / g2) : Q === void 0 && (typeof E == "number" ? Q = E * g2 : A.setAspectRatio(1 / g2)), o.width = d2 ? E + c2 : E, o.height = d2 ? Q + B : Q, o.__src = s, o.__naturalWidth = a, o.__naturalHeight = I; } if (e === "svg") { - let a = n.viewBox || n.viewbox, u2 = Nt(a), l2 = u2 ? u2[3] / u2[2] : null, { width: I, height: E } = n; - typeof I > "u" && E ? l2 == null ? I = 0 : typeof E == "string" && E.endsWith("%") ? I = parseInt(E) / l2 + "%" : (E = tA(E, t.fontSize, 1, t), I = E / l2) : typeof E > "u" && I ? l2 == null ? I = 0 : typeof I == "string" && I.endsWith("%") ? E = parseInt(I) * l2 + "%" : (I = tA(I, t.fontSize, 1, t), E = I * l2) : (typeof I < "u" && (I = tA(I, t.fontSize, 1, t) || I), typeof E < "u" && (E = tA(E, t.fontSize, 1, t) || E), I ||= u2 == null ? void 0 : u2[2], E ||= u2 == null ? void 0 : u2[3]), !o.width && I && (o.width = I), !o.height && E && (o.height = E); + let s = n.viewBox || n.viewbox, a = ft(s), I = a ? a[3] / a[2] : null, { width: g2, height: c2 } = n; + typeof g2 > "u" && c2 ? I == null ? g2 = 0 : typeof c2 == "string" && c2.endsWith("%") ? g2 = parseInt(c2) / I + "%" : (c2 = X(c2, t.fontSize, 1, t), g2 = c2 / I) : typeof c2 > "u" && g2 ? I == null ? g2 = 0 : typeof g2 == "string" && g2.endsWith("%") ? c2 = parseInt(g2) * I + "%" : (g2 = X(g2, t.fontSize, 1, t), c2 = g2 * I) : (typeof g2 < "u" && (g2 = X(g2, t.fontSize, 1, t) || g2), typeof c2 < "u" && (c2 = X(c2, t.fontSize, 1, t) || c2), g2 ||= a == null ? void 0 : a[2], c2 ||= a == null ? void 0 : a[3]), !o.width && g2 && (o.width = g2), !o.height && c2 && (o.height = c2); } - return A.setDisplay(ue(o.display, { flex: i.DISPLAY_FLEX, block: i.DISPLAY_FLEX, contents: i.DISPLAY_CONTENTS, none: i.DISPLAY_NONE, "-webkit-box": i.DISPLAY_FLEX }, i.DISPLAY_FLEX, "display")), A.setAlignContent(ue(o.alignContent, { stretch: i.ALIGN_STRETCH, center: i.ALIGN_CENTER, "flex-start": i.ALIGN_FLEX_START, "flex-end": i.ALIGN_FLEX_END, "space-between": i.ALIGN_SPACE_BETWEEN, "space-around": i.ALIGN_SPACE_AROUND, baseline: i.ALIGN_BASELINE, normal: i.ALIGN_AUTO }, i.ALIGN_AUTO, "alignContent")), A.setAlignItems(ue(o.alignItems, { stretch: i.ALIGN_STRETCH, center: i.ALIGN_CENTER, "flex-start": i.ALIGN_FLEX_START, "flex-end": i.ALIGN_FLEX_END, baseline: i.ALIGN_BASELINE, normal: i.ALIGN_AUTO }, i.ALIGN_STRETCH, "alignItems")), A.setAlignSelf(ue(o.alignSelf, { stretch: i.ALIGN_STRETCH, center: i.ALIGN_CENTER, "flex-start": i.ALIGN_FLEX_START, "flex-end": i.ALIGN_FLEX_END, baseline: i.ALIGN_BASELINE, normal: i.ALIGN_AUTO }, i.ALIGN_AUTO, "alignSelf")), A.setJustifyContent(ue(o.justifyContent, { center: i.JUSTIFY_CENTER, "flex-start": i.JUSTIFY_FLEX_START, "flex-end": i.JUSTIFY_FLEX_END, "space-between": i.JUSTIFY_SPACE_BETWEEN, "space-around": i.JUSTIFY_SPACE_AROUND }, i.JUSTIFY_FLEX_START, "justifyContent")), A.setFlexDirection(ue(o.flexDirection, { row: i.FLEX_DIRECTION_ROW, column: i.FLEX_DIRECTION_COLUMN, "row-reverse": i.FLEX_DIRECTION_ROW_REVERSE, "column-reverse": i.FLEX_DIRECTION_COLUMN_REVERSE }, i.FLEX_DIRECTION_ROW, "flexDirection")), A.setFlexWrap(ue(o.flexWrap, { wrap: i.WRAP_WRAP, nowrap: i.WRAP_NO_WRAP, "wrap-reverse": i.WRAP_WRAP_REVERSE }, i.WRAP_NO_WRAP, "flexWrap")), typeof o.gap < "u" && A.setGap(i.GUTTER_ALL, o.gap), typeof o.rowGap < "u" && A.setGap(i.GUTTER_ROW, o.rowGap), typeof o.columnGap < "u" && A.setGap(i.GUTTER_COLUMN, o.columnGap), typeof o.flexBasis < "u" && A.setFlexBasis(tt(o.flexBasis, "flexBasis")), A.setFlexGrow(typeof o.flexGrow > "u" ? 0 : o.flexGrow), A.setFlexShrink(typeof o.flexShrink > "u" ? 0 : o.flexShrink), typeof o.maxHeight < "u" && A.setMaxHeight(Ve(o.maxHeight, "maxHeight")), typeof o.maxWidth < "u" && A.setMaxWidth(Ve(o.maxWidth, "maxWidth")), typeof o.minHeight < "u" && A.setMinHeight(Ve(o.minHeight, "minHeight")), typeof o.minWidth < "u" && A.setMinWidth(Ve(o.minWidth, "minWidth")), A.setOverflow(ue(o.overflow, { visible: i.OVERFLOW_VISIBLE, hidden: i.OVERFLOW_HIDDEN }, i.OVERFLOW_VISIBLE, "overflow")), A.setMargin(i.EDGE_TOP, tt(o.marginTop || 0)), A.setMargin(i.EDGE_BOTTOM, tt(o.marginBottom || 0)), A.setMargin(i.EDGE_LEFT, tt(o.marginLeft || 0)), A.setMargin(i.EDGE_RIGHT, tt(o.marginRight || 0)), A.setBorder(i.EDGE_TOP, o.borderTopWidth || 0), A.setBorder(i.EDGE_BOTTOM, o.borderBottomWidth || 0), A.setBorder(i.EDGE_LEFT, o.borderLeftWidth || 0), A.setBorder(i.EDGE_RIGHT, o.borderRightWidth || 0), A.setPadding(i.EDGE_TOP, o.paddingTop || 0), A.setPadding(i.EDGE_BOTTOM, o.paddingBottom || 0), A.setPadding(i.EDGE_LEFT, o.paddingLeft || 0), A.setPadding(i.EDGE_RIGHT, o.paddingRight || 0), A.setBoxSizing(ue(o.boxSizing, { "border-box": i.BOX_SIZING_BORDER_BOX, "content-box": i.BOX_SIZING_CONTENT_BOX }, i.BOX_SIZING_BORDER_BOX, "boxSizing")), A.setPositionType(ue(o.position, { absolute: i.POSITION_TYPE_ABSOLUTE, relative: i.POSITION_TYPE_RELATIVE, static: i.POSITION_TYPE_STATIC }, i.POSITION_TYPE_RELATIVE, "position")), typeof o.top < "u" && A.setPosition(i.EDGE_TOP, Ve(o.top, "top")), typeof o.bottom < "u" && A.setPosition(i.EDGE_BOTTOM, Ve(o.bottom, "bottom")), typeof o.left < "u" && A.setPosition(i.EDGE_LEFT, Ve(o.left, "left")), typeof o.right < "u" && A.setPosition(i.EDGE_RIGHT, Ve(o.right, "right")), typeof o.height < "u" ? A.setHeight(tt(o.height, "height")) : A.setHeightAuto(), typeof o.width < "u" ? A.setWidth(tt(o.width, "width")) : A.setWidthAuto(), [o, ni(o)]; + return A.setDisplay(YA(o.display, { flex: i.DISPLAY_FLEX, block: i.DISPLAY_FLEX, contents: i.DISPLAY_CONTENTS, none: i.DISPLAY_NONE, "-webkit-box": i.DISPLAY_FLEX }, i.DISPLAY_FLEX, "display")), A.setAlignContent(YA(o.alignContent, { stretch: i.ALIGN_STRETCH, center: i.ALIGN_CENTER, "flex-start": i.ALIGN_FLEX_START, "flex-end": i.ALIGN_FLEX_END, "space-between": i.ALIGN_SPACE_BETWEEN, "space-around": i.ALIGN_SPACE_AROUND, baseline: i.ALIGN_BASELINE, normal: i.ALIGN_AUTO }, i.ALIGN_AUTO, "alignContent")), A.setAlignItems(YA(o.alignItems, { stretch: i.ALIGN_STRETCH, center: i.ALIGN_CENTER, "flex-start": i.ALIGN_FLEX_START, "flex-end": i.ALIGN_FLEX_END, baseline: i.ALIGN_BASELINE, normal: i.ALIGN_AUTO }, i.ALIGN_STRETCH, "alignItems")), A.setAlignSelf(YA(o.alignSelf, { stretch: i.ALIGN_STRETCH, center: i.ALIGN_CENTER, "flex-start": i.ALIGN_FLEX_START, "flex-end": i.ALIGN_FLEX_END, baseline: i.ALIGN_BASELINE, normal: i.ALIGN_AUTO }, i.ALIGN_AUTO, "alignSelf")), A.setJustifyContent(YA(o.justifyContent, { center: i.JUSTIFY_CENTER, "flex-start": i.JUSTIFY_FLEX_START, "flex-end": i.JUSTIFY_FLEX_END, "space-between": i.JUSTIFY_SPACE_BETWEEN, "space-around": i.JUSTIFY_SPACE_AROUND }, i.JUSTIFY_FLEX_START, "justifyContent")), A.setFlexDirection(YA(o.flexDirection, { row: i.FLEX_DIRECTION_ROW, column: i.FLEX_DIRECTION_COLUMN, "row-reverse": i.FLEX_DIRECTION_ROW_REVERSE, "column-reverse": i.FLEX_DIRECTION_COLUMN_REVERSE }, i.FLEX_DIRECTION_ROW, "flexDirection")), A.setFlexWrap(YA(o.flexWrap, { wrap: i.WRAP_WRAP, nowrap: i.WRAP_NO_WRAP, "wrap-reverse": i.WRAP_WRAP_REVERSE }, i.WRAP_NO_WRAP, "flexWrap")), typeof o.gap < "u" && A.setGap(i.GUTTER_ALL, o.gap), typeof o.rowGap < "u" && A.setGap(i.GUTTER_ROW, o.rowGap), typeof o.columnGap < "u" && A.setGap(i.GUTTER_COLUMN, o.columnGap), typeof o.flexBasis < "u" && A.setFlexBasis(We(o.flexBasis, "flexBasis")), A.setFlexGrow(typeof o.flexGrow > "u" ? 0 : o.flexGrow), A.setFlexShrink(typeof o.flexShrink > "u" ? 0 : o.flexShrink), typeof o.maxHeight < "u" && A.setMaxHeight(Ue(o.maxHeight, "maxHeight")), typeof o.maxWidth < "u" && A.setMaxWidth(Ue(o.maxWidth, "maxWidth")), typeof o.minHeight < "u" && A.setMinHeight(Ue(o.minHeight, "minHeight")), typeof o.minWidth < "u" && A.setMinWidth(Ue(o.minWidth, "minWidth")), A.setOverflow(YA(o.overflow, { visible: i.OVERFLOW_VISIBLE, hidden: i.OVERFLOW_HIDDEN }, i.OVERFLOW_VISIBLE, "overflow")), A.setMargin(i.EDGE_TOP, We(o.marginTop || 0)), A.setMargin(i.EDGE_BOTTOM, We(o.marginBottom || 0)), A.setMargin(i.EDGE_LEFT, We(o.marginLeft || 0)), A.setMargin(i.EDGE_RIGHT, We(o.marginRight || 0)), A.setBorder(i.EDGE_TOP, o.borderTopWidth || 0), A.setBorder(i.EDGE_BOTTOM, o.borderBottomWidth || 0), A.setBorder(i.EDGE_LEFT, o.borderLeftWidth || 0), A.setBorder(i.EDGE_RIGHT, o.borderRightWidth || 0), A.setPadding(i.EDGE_TOP, o.paddingTop || 0), A.setPadding(i.EDGE_BOTTOM, o.paddingBottom || 0), A.setPadding(i.EDGE_LEFT, o.paddingLeft || 0), A.setPadding(i.EDGE_RIGHT, o.paddingRight || 0), A.setBoxSizing(YA(o.boxSizing, { "border-box": i.BOX_SIZING_BORDER_BOX, "content-box": i.BOX_SIZING_CONTENT_BOX }, i.BOX_SIZING_BORDER_BOX, "boxSizing")), A.setPositionType(YA(o.position, { absolute: i.POSITION_TYPE_ABSOLUTE, relative: i.POSITION_TYPE_RELATIVE, static: i.POSITION_TYPE_STATIC }, i.POSITION_TYPE_RELATIVE, "position")), typeof o.top < "u" && A.setPosition(i.EDGE_TOP, Ue(o.top, "top")), typeof o.bottom < "u" && A.setPosition(i.EDGE_BOTTOM, Ue(o.bottom, "bottom")), typeof o.left < "u" && A.setPosition(i.EDGE_LEFT, Ue(o.left, "left")), typeof o.right < "u" && A.setPosition(i.EDGE_RIGHT, Ue(o.right, "right")), typeof o.height < "u" ? A.setHeight(We(o.height, "height")) : A.setHeightAuto(), typeof o.width < "u" ? A.setWidth(We(o.width, "width")) : A.setWidthAuto(), [o, Jn(o)]; } -var ea = [1, 0, 0, 1, 0, 0]; -function hl(A, e, t) { - let r = [...ea]; +var Xs = [1, 0, 0, 1, 0, 0]; +function El(A, e, t) { + let r = [...Xs]; for (let n of A) { let i = Object.keys(n)[0], o = n[i]; if (typeof o == "string") @@ -18693,179 +17748,179 @@ function hl(A, e, t) { o = parseFloat(o) / 100 * t, n[i] = o; else throw new Error(`Invalid transform: "${i}: ${o}".`); - let a = o, u2 = [...ea]; + let s = o, a = [...Xs]; switch (i) { case "translateX": - u2[4] = a; + a[4] = s; break; case "translateY": - u2[5] = a; + a[5] = s; break; case "scale": - u2[0] = a, u2[3] = a; + a[0] = s, a[3] = s; break; case "scaleX": - u2[0] = a; + a[0] = s; break; case "scaleY": - u2[3] = a; + a[3] = s; break; case "rotate": { - let l2 = a * Math.PI / 180, I = Math.cos(l2), E = Math.sin(l2); - u2[0] = I, u2[1] = E, u2[2] = -E, u2[3] = I; + let I = s * Math.PI / 180, g2 = Math.cos(I), c2 = Math.sin(I); + a[0] = g2, a[1] = c2, a[2] = -c2, a[3] = g2; break; } case "skewX": - u2[2] = Math.tan(a * Math.PI / 180); + a[2] = Math.tan(s * Math.PI / 180); break; case "skewY": - u2[1] = Math.tan(a * Math.PI / 180); + a[1] = Math.tan(s * Math.PI / 180); break; } - r = Yt(u2, r); + r = Nt(a, r); } A.splice(0, A.length), A.push(...r), A.__resolved = true; } -function jt({ left: A, top: e, width: t, height: r }, n, i, o) { - let a; - n.__resolved || hl(n, t, r); - let u2 = n; +function Ht({ left: A, top: e, width: t, height: r }, n, i, o) { + let s; + n.__resolved || El(n, t, r); + let a = n; if (i) - a = u2; + s = a; else { - let l2 = (o == null ? void 0 : o.xAbsolute) ?? ((o == null ? void 0 : o.xRelative) ?? 50) * t / 100, I = (o == null ? void 0 : o.yAbsolute) ?? ((o == null ? void 0 : o.yRelative) ?? 50) * r / 100, E = A + l2, C = e + I; - a = Yt([1, 0, 0, 1, E, C], Yt(u2, [1, 0, 0, 1, -E, -C])), u2.__parent && (a = Yt(u2.__parent, a)), u2.splice(0, 6, ...a); + let I = (o == null ? void 0 : o.xAbsolute) ?? ((o == null ? void 0 : o.xRelative) ?? 50) * t / 100, g2 = (o == null ? void 0 : o.yAbsolute) ?? ((o == null ? void 0 : o.yRelative) ?? 50) * r / 100, c2 = A + I, B = e + g2; + s = Nt([1, 0, 0, 1, c2, B], Nt(a, [1, 0, 0, 1, -c2, -B])), a.__parent && (s = Nt(a.__parent, s)), a.splice(0, 6, ...s); } - return `matrix(${a.map((l2) => l2.toFixed(2)).join(",")})`; + return `matrix(${s.map((I) => I.toFixed(2)).join(",")})`; } -function ra({ left: A, top: e, width: t, height: r, isInheritingTransform: n }, i) { - let o = "", a = 1; - return i.transform && (o = jt({ left: A, top: e, width: t, height: r }, i.transform, n, i.transformOrigin)), i.opacity !== void 0 && (a = +i.opacity), { matrix: o, opacity: a }; +function zs({ left: A, top: e, width: t, height: r, isInheritingTransform: n }, i) { + let o = "", s = 1; + return i.transform && (o = Ht({ left: A, top: e, width: t, height: r }, i.transform, n, i.transformOrigin)), i.opacity !== void 0 && (s = +i.opacity), { matrix: o, opacity: s }; } -function ai({ id: A, content: e, filter: t, left: r, top: n, width: i, height: o, matrix: a, opacity: u2, image: l2, clipPathId: I, debug: E, shape: C, decorationShape: d2 }, p) { - let y = ""; - if (E && (y = H("rect", { x: r, y: n - o, width: i, height: o, fill: "transparent", stroke: "#575eff", "stroke-width": 1, transform: a || void 0, "clip-path": I ? `url(#${I})` : void 0 })), l2) { - let x2 = { href: l2, x: r, y: n, width: i, height: o, transform: a || void 0, "clip-path": I ? `url(#${I})` : void 0, style: p.filter ? `filter:${p.filter}` : void 0 }; - return [(t ? `${t}` : "") + H("image", { ...x2, opacity: u2 !== 1 ? u2 : void 0 }) + (d2 || "") + (t ? "" : "") + y, ""]; +function qn({ id: A, content: e, filter: t, left: r, top: n, width: i, height: o, matrix: s, opacity: a, image: I, clipPathId: g2, debug: c2, shape: B, decorationShape: E }, Q) { + let d2 = ""; + if (c2 && (d2 = M("rect", { x: r, y: n - o, width: i, height: o, fill: "transparent", stroke: "#575eff", "stroke-width": 1, transform: s || void 0, "clip-path": g2 ? `url(#${g2})` : void 0 })), I) { + let D = { href: I, x: r, y: n, width: i, height: o, transform: s || void 0, "clip-path": g2 ? `url(#${g2})` : void 0, style: Q.filter ? `filter:${Q.filter}` : void 0 }; + return [(t ? `${t}` : "") + M("image", { ...D, opacity: a !== 1 ? a : void 0 }) + (E || "") + (t ? "" : "") + d2, ""]; } - let k = { x: r, y: n, width: i, height: o, "font-weight": p.fontWeight, "font-style": p.fontStyle, "font-size": p.fontSize, "font-family": p.fontFamily, "letter-spacing": p.letterSpacing || void 0, transform: a || void 0, "clip-path": I ? `url(#${I})` : void 0, style: p.filter ? `filter:${p.filter}` : void 0, "stroke-width": p.WebkitTextStrokeWidth ? `${p.WebkitTextStrokeWidth}px` : void 0, stroke: p.WebkitTextStrokeWidth ? p.WebkitTextStrokeColor : void 0, "stroke-linejoin": p.WebkitTextStrokeWidth ? "round" : void 0, "paint-order": p.WebkitTextStrokeWidth ? "stroke" : void 0 }; - return [(t ? `${t}` : "") + H("text", { ...k, fill: p.color, opacity: u2 !== 1 ? u2 : void 0 }, (0, import_escape_html.default)(e)) + (d2 || "") + (t ? "" : "") + y, C ? H("text", k, (0, import_escape_html.default)(e)) : ""]; + let m2 = { x: r, y: n, width: i, height: o, "font-weight": Q.fontWeight, "font-style": Q.fontStyle, "font-size": Q.fontSize, "font-family": Q.fontFamily, "letter-spacing": Q.letterSpacing || void 0, transform: s || void 0, "clip-path": g2 ? `url(#${g2})` : void 0, style: Q.filter ? `filter:${Q.filter}` : void 0, "stroke-width": Q.WebkitTextStrokeWidth ? `${Q.WebkitTextStrokeWidth}px` : void 0, stroke: Q.WebkitTextStrokeWidth ? Q.WebkitTextStrokeColor : void 0, "stroke-linejoin": Q.WebkitTextStrokeWidth ? "round" : void 0, "paint-order": Q.WebkitTextStrokeWidth ? "stroke" : void 0 }; + return [(t ? `${t}` : "") + M("text", { ...m2, fill: Q.color, opacity: a !== 1 ? a : void 0 }, (0, import_escape_html.default)(e)) + (E || "") + (t ? "" : "") + d2, B ? M("text", m2, (0, import_escape_html.default)(e)) : ""]; } -function pl(A, e, t) { +function fl2(A, e, t) { return A.replace(/([MA])([0-9.-]+),([0-9.-]+)/g, function(r, n, i, o) { return n + (parseFloat(i) + e) + "," + (parseFloat(o) + t); }); } -var nn = 1.1; -function na({ id: A, width: e, height: t }, r, n = false) { +var Vr = 1.1; +function Zs({ id: A, width: e, height: t }, r, n = false) { if (!r.shadowColor || !r.shadowOffset || typeof r.shadowRadius > "u") return ""; - let i = r.shadowColor.length, o = "", a = "", u2 = 0, l2 = e, I = 0, E = t; - for (let C = 0; C < i; C++) { - let d2 = r.shadowRadius[C] * r.shadowRadius[C] / 4; - if (u2 = Math.min(r.shadowOffset[C].width - d2, u2), l2 = Math.max(r.shadowOffset[C].width + d2 + e, l2), I = Math.min(r.shadowOffset[C].height - d2, I), E = Math.max(r.shadowOffset[C].height + d2 + t, E), n) { - let p = `satori_s-${A}-result-${C}`; - o += H("feGaussianBlur", { in: "SourceAlpha", stdDeviation: r.shadowRadius[C] / 2, result: `${p}-blur` }) + H("feOffset", { in: `${p}-blur`, dx: r.shadowOffset[C].width, dy: r.shadowOffset[C].height, result: `${p}-offset` }) + H("feFlood", { "flood-color": r.shadowColor[C], "flood-opacity": 1, result: `${p}-color` }) + H("feComposite", { in: `${p}-color`, in2: `${p}-offset`, operator: "in", result: i > 1 ? p : void 0 }); + let i = r.shadowColor.length, o = "", s = "", a = 0, I = e, g2 = 0, c2 = t; + for (let B = 0; B < i; B++) { + let E = r.shadowRadius[B] * r.shadowRadius[B] / 4; + if (a = Math.min(r.shadowOffset[B].width - E, a), I = Math.max(r.shadowOffset[B].width + E + e, I), g2 = Math.min(r.shadowOffset[B].height - E, g2), c2 = Math.max(r.shadowOffset[B].height + E + t, c2), n) { + let Q = `satori_s-${A}-result-${B}`; + o += M("feGaussianBlur", { in: "SourceAlpha", stdDeviation: r.shadowRadius[B] / 2, result: `${Q}-blur` }) + M("feOffset", { in: `${Q}-blur`, dx: r.shadowOffset[B].width, dy: r.shadowOffset[B].height, result: `${Q}-offset` }) + M("feFlood", { "flood-color": r.shadowColor[B], "flood-opacity": 1, result: `${Q}-color` }) + M("feComposite", { in: `${Q}-color`, in2: `${Q}-offset`, operator: "in", result: i > 1 ? Q : void 0 }); } else - o += H("feDropShadow", { dx: r.shadowOffset[C].width, dy: r.shadowOffset[C].height, stdDeviation: r.shadowRadius[C] / 2, "flood-color": r.shadowColor[C], "flood-opacity": 1, ...i > 1 ? { in: "SourceGraphic", result: `satori_s-${A}-result-${C}` } : {} }); - i > 1 && (a = H("feMergeNode", { in: `satori_s-${A}-result-${C}` }) + a); + o += M("feDropShadow", { dx: r.shadowOffset[B].width, dy: r.shadowOffset[B].height, stdDeviation: r.shadowRadius[B] / 2, "flood-color": r.shadowColor[B], "flood-opacity": 1, ...i > 1 ? { in: "SourceGraphic", result: `satori_s-${A}-result-${B}` } : {} }); + i > 1 && (s = M("feMergeNode", { in: `satori_s-${A}-result-${B}` }) + s); } - return H("filter", { id: `satori_s-${A}`, x: (u2 / e * 100 * nn).toFixed(2) + "%", y: (I / t * 100 * nn).toFixed(2) + "%", width: ((l2 - u2) / e * 100 * nn).toFixed(2) + "%", height: ((E - I) / t * 100 * nn).toFixed(2) + "%" }, o + (a ? H("feMerge", {}, a) : "")); + return M("filter", { id: `satori_s-${A}`, x: (a / e * 100 * Vr).toFixed(2) + "%", y: (g2 / t * 100 * Vr).toFixed(2) + "%", width: ((I - a) / e * 100 * Vr).toFixed(2) + "%", height: ((c2 - g2) / t * 100 * Vr).toFixed(2) + "%" }, o + (s ? M("feMerge", {}, s) : "")); } -function ia({ width: A, height: e, shape: t, opacity: r, id: n }, i) { +function js({ width: A, height: e, shape: t, opacity: r, id: n }, i) { if (!i.boxShadow) return null; - let o = "", a = ""; - for (let u2 = i.boxShadow.length - 1; u2 >= 0; u2--) { - let l2 = "", I = i.boxShadow[u2]; - I.spreadRadius && I.inset && (I.spreadRadius = -I.spreadRadius); - let E = I.blurRadius * I.blurRadius / 4 + (I.spreadRadius || 0), C = Math.min(-E - (I.inset ? I.offsetX : 0), 0), d2 = Math.max(E + A - (I.inset ? I.offsetX : 0), A), p = Math.min(-E - (I.inset ? I.offsetY : 0), 0), y = Math.max(E + e - (I.inset ? I.offsetY : 0), e), k = `satori_s-${n}-${u2}`, x2 = `satori_ms-${n}-${u2}`, F = I.spreadRadius ? t.replace('stroke-width="0"', `stroke-width="${I.spreadRadius * 2}"`) : t; - l2 += H("mask", { id: x2, maskUnits: "userSpaceOnUse" }, H("rect", { x: 0, y: 0, width: i._viewportWidth || "100%", height: i._viewportHeight || "100%", fill: I.inset ? "#000" : "#fff" }) + F.replace('fill="#fff"', I.inset ? 'fill="#fff"' : 'fill="#000"').replace('stroke="#fff"', "")); - let b = F.replace(/d="([^"]+)"/, (v2, M) => 'd="' + pl(M, I.offsetX, I.offsetY) + '"').replace(/x="([^"]+)"/, (v2, M) => 'x="' + (parseFloat(M) + I.offsetX) + '"').replace(/y="([^"]+)"/, (v2, M) => 'y="' + (parseFloat(M) + I.offsetY) + '"'); - I.spreadRadius && I.spreadRadius < 0 && (l2 += H("mask", { id: x2 + "-neg", maskUnits: "userSpaceOnUse" }, b.replace('stroke="#fff"', 'stroke="#000"').replace(/stroke-width="[^"]+"/, `stroke-width="${-I.spreadRadius * 2}"`))), I.spreadRadius && I.spreadRadius < 0 && (b = H("g", { mask: `url(#${x2}-neg)` }, b)), l2 += H("defs", {}, H("filter", { id: k, x: `${C / A * 100}%`, y: `${p / e * 100}%`, width: `${(d2 - C) / A * 100}%`, height: `${(y - p) / e * 100}%` }, H("feGaussianBlur", { stdDeviation: I.blurRadius / 2, result: "b" }) + H("feFlood", { "flood-color": I.color, in: "SourceGraphic", result: "f" }) + H("feComposite", { in: "f", in2: "b", operator: I.inset ? "out" : "in" }))) + H("g", { mask: `url(#${x2})`, filter: `url(#${k})`, opacity: r }, b), I.inset ? a += l2 : o += l2; - } - return [o, a]; -} -function ml(A, e, t, r, n, i) { - let o = n / 2, a = Math.max(o, n * 1.25), u2 = []; - for (let E of t) { - if (E.y2 < i + o || E.y1 > r + o) + let o = "", s = ""; + for (let a = i.boxShadow.length - 1; a >= 0; a--) { + let I = "", g2 = i.boxShadow[a]; + g2.spreadRadius && g2.inset && (g2.spreadRadius = -g2.spreadRadius); + let c2 = g2.blurRadius * g2.blurRadius / 4 + (g2.spreadRadius || 0), B = Math.min(-c2 - (g2.inset ? g2.offsetX : 0), 0), E = Math.max(c2 + A - (g2.inset ? g2.offsetX : 0), A), Q = Math.min(-c2 - (g2.inset ? g2.offsetY : 0), 0), d2 = Math.max(c2 + e - (g2.inset ? g2.offsetY : 0), e), m2 = `satori_s-${n}-${a}`, D = `satori_ms-${n}-${a}`, x2 = g2.spreadRadius ? t.replace('stroke-width="0"', `stroke-width="${g2.spreadRadius * 2}"`) : t; + I += M("mask", { id: D, maskUnits: "userSpaceOnUse" }, M("rect", { x: 0, y: 0, width: i._viewportWidth || "100%", height: i._viewportHeight || "100%", fill: g2.inset ? "#000" : "#fff" }) + x2.replace('fill="#fff"', g2.inset ? 'fill="#fff"' : 'fill="#000"').replace('stroke="#fff"', "")); + let y = x2.replace(/d="([^"]+)"/, (p, b) => 'd="' + fl2(b, g2.offsetX, g2.offsetY) + '"').replace(/x="([^"]+)"/, (p, b) => 'x="' + (parseFloat(b) + g2.offsetX) + '"').replace(/y="([^"]+)"/, (p, b) => 'y="' + (parseFloat(b) + g2.offsetY) + '"'); + g2.spreadRadius && g2.spreadRadius < 0 && (I += M("mask", { id: D + "-neg", maskUnits: "userSpaceOnUse" }, y.replace('stroke="#fff"', 'stroke="#000"').replace(/stroke-width="[^"]+"/, `stroke-width="${-g2.spreadRadius * 2}"`))), g2.spreadRadius && g2.spreadRadius < 0 && (y = M("g", { mask: `url(#${D}-neg)` }, y)), I += M("defs", {}, M("filter", { id: m2, x: `${B / A * 100}%`, y: `${Q / e * 100}%`, width: `${(E - B) / A * 100}%`, height: `${(d2 - Q) / e * 100}%` }, M("feGaussianBlur", { stdDeviation: g2.blurRadius / 2, result: "b" }) + M("feFlood", { "flood-color": g2.color, in: "SourceGraphic", result: "f" }) + M("feComposite", { in: "f", in2: "b", operator: g2.inset ? "out" : "in" }))) + M("g", { mask: `url(#${D})`, filter: `url(#${m2})`, opacity: r }, y), g2.inset ? s += I : o += I; + } + return [o, s]; +} +function Ql(A, e, t, r, n, i) { + let o = n / 2, s = Math.max(o, n * 1.25), a = []; + for (let c2 of t) { + if (c2.y2 < i + o || c2.y1 > r + o) continue; - let C = Math.max(A, E.x1 - a), d2 = Math.min(e, E.x2 + a); - if (C >= d2) + let B = Math.max(A, c2.x1 - s), E = Math.min(e, c2.x2 + s); + if (B >= E) continue; - if (u2.length === 0) { - u2.push([C, d2]); + if (a.length === 0) { + a.push([B, E]); continue; } - let p = u2[u2.length - 1]; - C <= p[1] ? p[1] = Math.max(p[1], d2) : u2.push([C, d2]); + let Q = a[a.length - 1]; + B <= Q[1] ? Q[1] = Math.max(Q[1], E) : a.push([B, E]); } - if (!u2.length) + if (!a.length) return [[A, e]]; - let l2 = [], I = A; - for (let [E, C] of u2) - if (E > I && l2.push([I, E]), I = Math.max(I, C), I >= e) + let I = [], g2 = A; + for (let [c2, B] of a) + if (c2 > g2 && I.push([g2, c2]), g2 = Math.max(g2, B), g2 >= e) break; - return I < e && l2.push([I, e]), l2; + return g2 < e && I.push([g2, e]), I; } -function gi({ width: A, left: e, top: t, ascender: r, clipPathId: n, matrix: i, glyphBoxes: o }, a) { - let { textDecorationColor: u2, textDecorationStyle: l2, textDecorationLine: I, textDecorationSkipInk: E, fontSize: C, color: d2 } = a; - if (!I || I === "none") +function Xn({ width: A, left: e, top: t, ascender: r, clipPathId: n, matrix: i, glyphBoxes: o }, s) { + let { textDecorationColor: a, textDecorationStyle: I, textDecorationLine: g2, textDecorationSkipInk: c2, fontSize: B, color: E } = s; + if (!g2 || g2 === "none") return ""; - let p = Math.max(1, C * 0.1), y = I === "line-through" ? t + r * 0.7 : I === "underline" ? t + r * 1.1 : t, k = l2 === "dashed" ? `${p * 1.2} ${p * 2}` : l2 === "dotted" ? `0 ${p * 2}` : void 0, x2 = I === "underline" && (E || "auto") !== "none" && (o == null ? void 0 : o.length), F = t + r, b = x2 ? ml(e, e + A, o, y, p, F) : [[e, e + A]], v2 = l2 === "double" ? b.map(([M, L]) => H("line", { x1: M, y1: y + p + 1, x2: L, y2: y + p + 1, stroke: u2 || d2, "stroke-width": p, "stroke-dasharray": k, "stroke-linecap": l2 === "dotted" ? "round" : "square", transform: i })).join("") : ""; - return (n ? `` : "") + b.map(([M, L]) => H("line", { x1: M, y1: y, x2: L, y2: y, stroke: u2 || d2, "stroke-width": p, "stroke-dasharray": k, "stroke-linecap": l2 === "dotted" ? "round" : "square", transform: i })).join("") + v2 + (n ? "" : ""); + let Q = Math.max(1, B * 0.1), d2 = g2 === "line-through" ? t + r * 0.7 : g2 === "underline" ? t + r * 1.1 : t, m2 = I === "dashed" ? `${Q * 1.2} ${Q * 2}` : I === "dotted" ? `0 ${Q * 2}` : void 0, D = g2 === "underline" && (c2 || "auto") !== "none" && (o == null ? void 0 : o.length), x2 = t + r, y = D ? Ql(e, e + A, o, d2, Q, x2) : [[e, e + A]], p = I === "double" ? y.map(([b, R2]) => M("line", { x1: b, y1: d2 + Q + 1, x2: R2, y2: d2 + Q + 1, stroke: a || E, "stroke-width": Q, "stroke-dasharray": m2, "stroke-linecap": I === "dotted" ? "round" : "square", transform: i })).join("") : ""; + return (n ? `` : "") + y.map(([b, R2]) => M("line", { x1: b, y1: d2, x2: R2, y2: d2, stroke: a || E, "stroke-width": Q, "stroke-dasharray": m2, "stroke-linecap": I === "dotted" ? "round" : "square", transform: i })).join("") + p + (n ? "" : ""); } -function ui(A) { +function Vn(A) { return A = A.replace("U+", "0x"), String.fromCodePoint(Number(A)); } -var Qt = ui("U+0020"); -var Ii = ui("U+0009"); -var Ut = ui("U+2026"); -function oa(A, e, t) { +var nt = Vn("U+0020"); +var zn = Vn("U+0009"); +var pt = Vn("U+2026"); +function $s(A, e, t) { let { fontSize: r, letterSpacing: n } = t, i = /* @__PURE__ */ new Map(); - function o(l2) { - let I = i.get(l2); - return I === void 0 && (I = A.measure(l2, { fontSize: r, letterSpacing: n }), i.set(l2, I)), I; - } - function a(l2) { - let I = 0; - for (let E of l2) - e(E) ? I += r : I += o(E); - return I; + function o(I) { + let g2 = i.get(I); + return g2 === void 0 && (g2 = A.measure(I, { fontSize: r, letterSpacing: n }), i.set(I, g2)), g2; + } + function s(I) { + let g2 = 0; + for (let c2 of I) + e(c2) ? g2 += r : g2 += o(c2); + return g2; } - function u2(l2) { - return a(ge(l2, "grapheme")); + function a(I) { + return s(WA(I, "grapheme")); } - return { measureGrapheme: o, measureGraphemeArray: a, measureText: u2 }; + return { measureGrapheme: o, measureGraphemeArray: s, measureText: a }; } -function sa(A, e, t) { +function Aa(A, e, t) { let { textTransform: r, whiteSpace: n, wordBreak: i } = e; - A = yl(A, r, t); - let { content: o, shouldCollapseTabsAndSpaces: a, allowSoftWrap: u2 } = Sl(A, n), { words: l2, requiredBreaks: I, allowBreakWord: E } = Dl(o, i), [C, d2] = wl(e, u2); - return { words: l2, requiredBreaks: I, allowSoftWrap: u2, allowBreakWord: E, processedContent: o, shouldCollapseTabsAndSpaces: a, lineLimit: C, blockEllipsis: d2 }; + A = Cl(A, r, t); + let { content: o, shouldCollapseTabsAndSpaces: s, allowSoftWrap: a } = pl(A, n), { words: I, requiredBreaks: g2, allowBreakWord: c2 } = hl(o, i), [B, E] = dl(e, a); + return { words: I, requiredBreaks: g2, allowSoftWrap: a, allowBreakWord: c2, processedContent: o, shouldCollapseTabsAndSpaces: s, lineLimit: B, blockEllipsis: E }; } -function yl(A, e, t) { - return e === "uppercase" ? A = A.toLocaleUpperCase(t) : e === "lowercase" ? A = A.toLocaleLowerCase(t) : e === "capitalize" && (A = ge(A, "word", t).map((r) => ge(r, "grapheme", t).map((n, i) => i === 0 ? n.toLocaleUpperCase(t) : n).join("")).join("")), A; +function Cl(A, e, t) { + return e === "uppercase" ? A = A.toLocaleUpperCase(t) : e === "lowercase" ? A = A.toLocaleLowerCase(t) : e === "capitalize" && (A = WA(A, "word", t).map((r) => WA(r, "grapheme", t).map((n, i) => i === 0 ? n.toLocaleUpperCase(t) : n).join("")).join("")), A; } -function wl(A, e) { - let { textOverflow: t, lineClamp: r, WebkitLineClamp: n, WebkitBoxOrient: i, overflow: o, display: a } = A; - if (a === "block" && r) { - let [u2, l2 = Ut] = bl(r); - if (u2) - return [u2, l2]; +function dl(A, e) { + let { textOverflow: t, lineClamp: r, WebkitLineClamp: n, WebkitBoxOrient: i, overflow: o, display: s } = A; + if (s === "block" && r) { + let [a, I = pt] = ml(r); + if (a) + return [a, I]; } - return t === "ellipsis" && a === "-webkit-box" && i === "vertical" && ws(n) && n > 0 ? [n, Ut] : t === "ellipsis" && o === "hidden" && !e ? [1, Ut] : [1 / 0]; + return t === "ellipsis" && s === "-webkit-box" && i === "vertical" && Es(n) && n > 0 ? [n, pt] : t === "ellipsis" && o === "hidden" && !e ? [1, pt] : [1 / 0]; } -function Dl(A, e) { - let t = ["break-all", "break-word"].includes(e), { words: r, requiredBreaks: n } = Ss(A, e); +function hl(A, e) { + let t = ["break-all", "break-word"].includes(e), { words: r, requiredBreaks: n } = Qs(A, e); return { words: r, requiredBreaks: n, allowBreakWord: t }; } -function Sl(A, e) { +function pl(A, e) { let t = ["pre", "pre-wrap", "pre-line"].includes(e), r = ["normal", "nowrap", "pre-line"].includes(e), n = !["pre", "nowrap"].includes(e); - return t || (A = A.replace(/\n/g, Qt)), r && (A = A.replace(/([ ]|\t)+/g, Qt).replace(/^[ ]|[ ]$/g, "")), { content: A, shouldCollapseTabsAndSpaces: r, allowSoftWrap: n }; + return t || (A = A.replace(/\n/g, nt)), r && (A = A.replace(/([ ]|\t)+/g, nt).replace(/^[ ]|[ ]$/g, "")), { content: A, shouldCollapseTabsAndSpaces: r, allowSoftWrap: n }; } -function bl(A) { +function ml(A) { if (typeof A == "number") return [A]; let e = /^(\d+)\s*"(.*)"$/, t = /^(\d+)\s*'(.*)'$/, r = e.exec(A), n = t.exec(A); @@ -18878,17 +17933,17 @@ function bl(A) { } return []; } -var vl = /* @__PURE__ */ new Set([Ii]); -function kl(A) { - return vl.has(A); +var yl = /* @__PURE__ */ new Set([zn]); +function wl(A) { + return yl.has(A); } -function li(A) { +function Zn(A) { if (A === "transparent") return true; let e = index_esm_default(A); return e ? e.alpha === 0 : false; } -function aa(A) { +function ea(A) { if (!A) return false; let e = index_esm_default(A); @@ -18897,270 +17952,270 @@ function aa(A) { let [t, r, n, i] = e.values; return t === 255 && r === 255 && n === 255 && (i === void 0 || i === 1); } -async function* ci(A, e) { - let t = await rt(), { parentStyle: r, inheritedStyle: n, parent: i, font: o, id: a, isInheritingTransform: u2, debug: l2, embedFont: I, graphemeImages: E, locale: C, canLoadAdditionalAssets: d2 } = e, { textAlign: p, textIndent: y = 0, lineHeight: k, textWrap: x2, fontSize: F, filter: b, tabSize: v2 = 8, letterSpacing: M, _inheritedBackgroundClipTextPath: L, _inheritedBackgroundClipTextHasBackground: O, flexShrink: J } = r, { words: j, requiredBreaks: CA, allowSoftWrap: MA, allowBreakWord: dA, processedContent: sA, shouldCollapseTabsAndSpaces: vA, lineLimit: rA, blockEllipsis: iA } = sa(A, r, C), wA = xl(t, p); - i.insertChild(wA, i.getChildCount()), Ds(J) && i.setFlexShrink(1); - let aA = o.getEngine(F, k, r, C), FA = d2 ? ge(sA, "grapheme").filter((V) => !kl(V) && !aA.has(V)) : []; - yield FA.map((V) => ({ word: V, locale: C })), FA.length && (aA = o.getEngine(F, k, r, C)); - function kA(V) { - return !!(E && E[V]); - } - let { measureGrapheme: te, measureGraphemeArray: TA, measureText: xA } = oa(aA, kA, { fontSize: F, letterSpacing: M }), fA = Xr(v2) ? tA(v2, F, 1, r) : te(Qt) * v2, q = (V, Z) => { - if (V.length === 0) - return { originWidth: 0, endingSpacesWidth: 0, text: V }; - let { index: nA, tabCount: $ } = Rl(V), IA = 0; - if ($ > 0) { - let DA = V.slice(0, nA), cA = V.slice(nA + $), gA = xA(DA), Ee = gA + Z; - IA = (fA === 0 ? gA : (Math.floor(Ee / fA) + $) * fA) + xA(cA); +async function* jn(A, e) { + let t = await Ye(), { parentStyle: r, inheritedStyle: n, parent: i, font: o, id: s, isInheritingTransform: a, debug: I, embedFont: g2, graphemeImages: c2, locale: B, canLoadAdditionalAssets: E } = e, { textAlign: Q, textIndent: d2 = 0, lineHeight: m2, textWrap: D, fontSize: x2, filter: y, tabSize: p = 8, letterSpacing: b, _inheritedBackgroundClipTextPath: R2, _inheritedBackgroundClipTextHasBackground: U, flexShrink: P2 } = r, { words: q, requiredBreaks: lA, allowSoftWrap: DA, allowBreakWord: RA, processedContent: eA, shouldCollapseTabsAndSpaces: NA, lineLimit: nA, blockEllipsis: $ } = Aa(A, r, B), HA = Dl(t, Q); + i.insertChild(HA, i.getChildCount()), fs(P2) && i.setFlexShrink(1); + let tA = o.getEngine(x2, m2, r, B), bA = E ? WA(eA, "grapheme").filter((Y) => !wl(Y) && !tA.has(Y)) : []; + yield bA.map((Y) => ({ word: Y, locale: B })), bA.length && (tA = o.getEngine(x2, m2, r, B)); + function mA(Y) { + return !!(c2 && Object.prototype.hasOwnProperty.call(c2, Y) && c2[Y]); + } + let { measureGrapheme: te, measureGraphemeArray: FA, measureText: kA } = $s(tA, mA, { fontSize: x2, letterSpacing: b }), xA = Hr(p) ? X(p, x2, 1, r) : te(nt) * p, J = (Y, z) => { + if (Y.length === 0) + return { originWidth: 0, endingSpacesWidth: 0, text: Y }; + let { index: Z, tabCount: j } = Sl(Y), gA = 0; + if (j > 0) { + let CA = Y.slice(0, Z), IA = Y.slice(Z + j), AA = kA(CA), ie = AA + z; + gA = (xA === 0 ? AA : (Math.floor(ie / xA) + j) * xA) + kA(IA); } else - IA = xA(V); - let lA = V.trimEnd() === V ? IA : xA(V.trimEnd()); - return { originWidth: IA, endingSpacesWidth: IA - lA, text: V }; - }, oA = [], BA = [], W = [], Y = [], OA = []; - function PA(V) { - let Z = 0, nA = 0, $ = -1, IA = 0, lA = 0, DA = 0, cA = 0; - oA = [], W = [0], Y = [], OA = []; - let gA = 0, Ee = 0; - for (; gA < j.length && Z < rA; ) { - let eA = j[gA], JA = CA[gA], RA = 0, { originWidth: ut, endingSpacesWidth: GA, text: YA } = q(eA, lA); - eA = YA, RA = ut; - let qA = GA; - JA && DA === 0 && (DA = aA.height(eA)); - let Qe = p === "justify", pA = gA && lA + RA > V + qA && MA; - if (dA && RA > V && (!lA || pA || JA)) { - let jA = ge(eA, "grapheme"); - j.splice(gA, 1, ...jA), lA > 0 && (oA.push(lA - Ee), BA.push(cA), Z++, IA += DA, lA = 0, DA = 0, cA = 0, W.push(1), $ = -1), Ee = qA; + gA = kA(Y); + let iA = Y.trimEnd() === Y ? gA : kA(Y.trimEnd()); + return { originWidth: gA, endingSpacesWidth: gA - iA, text: Y }; + }, rA = [], fA = [], QA = [], K2 = [], MA = []; + function GA(Y) { + let z = 0, Z = 0, j = -1, gA = 0, iA = 0, CA = 0, IA = 0; + rA = [], QA = [0], K2 = [], MA = []; + let AA = 0, ie = 0; + for (; AA < q.length && z < nA; ) { + let V = q[AA], Se = lA[AA], yA = 0, { originWidth: kt, endingSpacesWidth: oe, text: PA } = J(V, iA); + V = PA, yA = kt; + let XA = oe; + Se && CA === 0 && (CA = tA.height(V)); + let be = Q === "justify", dA = AA && iA + yA > Y + XA && DA; + if (RA && yA > Y && (!iA || dA || Se)) { + let JA = WA(V, "grapheme"); + q.splice(AA, 1, ...JA), iA > 0 && (rA.push(iA - ie), fA.push(IA), z++, gA += CA, iA = 0, CA = 0, IA = 0, QA.push(1), j = -1), ie = XA; continue; } - if (JA || pA) - vA && eA === Qt && (RA = 0), oA.push(lA - Ee), BA.push(cA), Z++, IA += DA, lA = RA, DA = RA ? Math.round(aA.height(eA)) : 0, cA = RA ? Math.round(aA.baseline(eA)) : 0, W.push(1), $ = -1, JA || (nA = Math.max(nA, V)); + if (Se || dA) + NA && V === nt && (yA = 0), rA.push(iA - ie), fA.push(IA), z++, gA += CA, iA = yA, CA = yA ? Math.round(tA.height(V)) : 0, IA = yA ? Math.round(tA.baseline(V)) : 0, QA.push(1), j = -1, Se || (Z = Math.max(Z, Y)); else { - lA += RA; - let jA = Math.round(aA.height(eA)); - jA > DA && (DA = jA, cA = Math.round(aA.baseline(eA))), Qe && W[W.length - 1]++; - } - Qe && $++, nA = Math.max(nA, lA); - let ZA = lA - RA; - if (RA === 0) - OA.push({ y: IA, x: ZA, width: 0, line: Z, lineIndex: $, isImage: false }); + iA += yA; + let JA = Math.round(tA.height(V)); + JA > CA && (CA = JA, IA = Math.round(tA.baseline(V))), be && QA[QA.length - 1]++; + } + be && j++, Z = Math.max(Z, iA); + let Ae = iA - yA; + if (yA === 0) + MA.push({ y: gA, x: Ae, width: 0, line: z, lineIndex: j, isImage: false }); else { - let jA = ge(eA, "word"); - for (let Se = 0; Se < jA.length; Se++) { - let be = jA[Se], $A = 0, Ce = false; - kA(be) ? ($A = F, Ce = true) : !I && be.length > 1 ? $A = xA(be) : $A = te(be), Y.push(be), OA.push({ y: IA, x: ZA, width: $A, line: Z, lineIndex: $, isImage: Ce }), ZA += $A; + let JA = WA(V, "word"); + for (let Qe = 0; Qe < JA.length; Qe++) { + let Ce = JA[Qe], KA = 0, se = false; + mA(Ce) ? (KA = x2, se = true) : !g2 && Ce.length > 1 ? KA = kA(Ce) : KA = te(Ce), K2.push(Ce), MA.push({ y: gA, x: Ae, width: KA, line: z, lineIndex: j, isImage: se }), Ae += KA; } } - gA++, Ee = qA; + AA++, ie = XA; } - return lA && (Z < rA && (IA += DA), Z++, oA.push(lA), BA.push(cA)), { width: nA, height: IA }; + return iA && (z < nA && (gA += CA), z++, rA.push(iA), fA.push(IA)), { width: Z, height: gA }; } - let WA = { width: 0, height: 0 }; - wA.setMeasureFunc((V) => { - let { width: Z, height: nA } = PA(V); - if (x2 === "balance") { - let IA = Z / 2, lA = Z, DA = Z; - for (; IA + 1 < lA; ) { - DA = (IA + lA) / 2; - let { height: gA } = PA(DA); - gA > nA ? IA = DA : lA = DA; + let OA = { width: 0, height: 0 }; + HA.setMeasureFunc((Y) => { + let { width: z, height: Z } = GA(Y); + if (D === "balance") { + let gA = z / 2, iA = z, CA = z; + for (; gA + 1 < iA; ) { + CA = (gA + iA) / 2; + let { height: AA } = GA(CA); + AA > Z ? gA = CA : iA = CA; } - PA(lA); - let cA = Math.ceil(lA); - return WA = { width: cA, height: nA }, { width: cA, height: nA }; + GA(iA); + let IA = Math.ceil(iA); + return OA = { width: IA, height: Z }, { width: IA, height: Z }; } - if (x2 === "pretty" && oA[oA.length - 1] < Z / 3) { - let DA = Z * 0.9, cA = PA(DA); - if (cA.height <= nA * 1.3) - return WA = { width: Z, height: cA.height }, { width: Z, height: cA.height }; + if (D === "pretty" && rA[rA.length - 1] < z / 3) { + let CA = z * 0.9, IA = GA(CA); + if (IA.height <= Z * 1.3) + return OA = { width: z, height: IA.height }, { width: z, height: IA.height }; } - let $ = Math.ceil(Z); - return WA = { width: $, height: nA }, { width: $, height: nA }; + let j = Math.ceil(z); + return OA = { width: j, height: Z }, { width: j, height: Z }; }); - let [uA, hA] = yield, Ie = "", le = "", LA = n._inheritedClipPathId, re = n._inheritedMaskId, { left: ce, top: ye, width: Pe, height: Ye } = wA.getComputedLayout(), Ge = typeof y == "string" ? tA(y, F, Pe, r, true) || 0 : y, Ue = i.getComputedWidth() - i.getComputedPadding(t.EDGE_LEFT) - i.getComputedPadding(t.EDGE_RIGHT) - i.getComputedBorder(t.EDGE_LEFT) - i.getComputedBorder(t.EDGE_RIGHT), we = uA + ce, fe = hA + ye, { matrix: se, opacity: qe } = ra({ left: ce, top: ye, width: Pe, height: Ye, isInheritingTransform: u2 }, r), zA = ""; + let [TA, SA] = yield, ye = "", Je = "", qA = n._inheritedClipPathId, re = n._inheritedMaskId, { left: ut, top: we, width: $e, height: br } = HA.getComputedLayout(), At = typeof d2 == "string" ? X(d2, x2, $e, r, true) || 0 : d2, Ke = i.getComputedWidth() - i.getComputedPadding(t.EDGE_LEFT) - i.getComputedPadding(t.EDGE_RIGHT) - i.getComputedBorder(t.EDGE_LEFT) - i.getComputedBorder(t.EDGE_RIGHT), De = TA + ut, Be = SA + we, { matrix: jA, opacity: lt } = zs({ left: ut, top: we, width: $e, height: br, isInheritingTransform: a }, r), ne = ""; if (r.textShadowOffset) { - let { textShadowColor: V, textShadowOffset: Z, textShadowRadius: nA } = r; - zA = na({ width: WA.width, height: WA.height, id: a }, { shadowColor: V, shadowOffset: Z, shadowRadius: nA }, li(r.color) || O && aa(r.color)), zA = H("defs", {}, zA); + let { textShadowColor: Y, textShadowOffset: z, textShadowRadius: Z } = r; + ne = Zs({ width: OA.width, height: OA.height, id: s }, { shadowColor: Y, shadowOffset: z, shadowRadius: Z }, Zn(r.color) || U && ea(r.color)), ne = M("defs", {}, ne); } - let ne = "", ie = "", Be = "", De = -1, KA = {}, XA = {}, _A = null, oe = 0; - for (let V = 0; V < Y.length; V++) { - let Z = OA[V], nA = OA[V + 1]; - if (!Z) + let Ee = "", Ne = "", Fe = "", Me = -1, $A = {}, fe = {}, _A = null, et2 = 0; + for (let Y = 0; Y < K2.length; Y++) { + let z = MA[Y], Z = MA[Y + 1]; + if (!z) continue; - let $ = Y[V], IA = null, lA = false, DA = E ? E[$] : null, cA = Z.y, gA = Z.x, Ee = Z.width, eA = Z.line, JA = r.textDecorationLine === "underline" && (r.textDecorationSkipInk || "auto") !== "none"; - if (eA === De) + let j = K2[Y], gA = null, iA = false, CA = c2 && Object.prototype.hasOwnProperty.call(c2, j) ? c2[j] : null, IA = z.y, AA = z.x, ie = z.width, V = z.line, Se = r.textDecorationLine === "underline" && (r.textDecorationSkipInk || "auto") !== "none"; + if (V === Me) continue; - let RA = false; - if (eA === 0 && Ge !== 0 && (gA += Ge), oA.length > 1) { - let pA = Pe - oA[eA]; - if (p === "right" || p === "end") - gA += pA; - else if (p === "center") - gA += pA / 2; - else if (p === "justify" && eA < oA.length - 1) { - let mA = W[eA], ZA = mA > 1 ? pA / (mA - 1) : 0; - gA += ZA * Z.lineIndex, RA = true; - } - I && (gA = Math.round(gA)); - } - let ut = BA[eA], GA = aA.baseline($), YA = aA.height($), qA = ut - GA, Qe = (pA) => !JA || r.textDecorationLine !== "underline" ? void 0 : { underlineY: fe + pA + qA + GA + GA * 0.1, strokeWidth: Math.max(1, F * 0.1) }; - if (KA[eA] || (KA[eA] = { left: gA, top: fe + cA + qA, ascender: GA, width: RA ? Pe : oA[eA] }), rA !== 1 / 0) { - let be = function($A, Ce) { - let It = ge(Ce, "grapheme", C), et2 = "", wt = 0; - for (let Dt of It) { - let lt = $A + TA([et2 + Dt]); - if (et2 && lt + mA > Ue) + let yA = false; + if (V === 0 && At !== 0 && (AA += At), rA.length > 1) { + let dA = $e - rA[V]; + if (Q === "right" || Q === "end") + AA += dA; + else if (Q === "center") + AA += dA / 2; + else if (Q === "justify" && V < rA.length - 1) { + let wA = QA[V], Ae = wA > 1 ? dA / (wA - 1) : 0; + AA += Ae * z.lineIndex, yA = true; + } + g2 && (AA = Math.round(AA)); + } + let kt = fA[V], oe = tA.baseline(j), PA = tA.height(j), XA = kt - oe, be = (dA) => !Se || r.textDecorationLine !== "underline" ? void 0 : { underlineY: Be + dA + XA + oe + oe * 0.1, strokeWidth: Math.max(1, x2 * 0.1) }; + if ($A[V] || ($A[V] = { left: AA, top: Be + IA + XA, ascender: oe, width: yA ? $e : rA[V] }), nA !== 1 / 0) { + let Ce = function(KA, se) { + let xt = WA(se, "grapheme", B), ct = "", kr = 0; + for (let xr of xt) { + let Rr = KA + FA([ct + xr]); + if (ct && Rr + wA > Ke) break; - et2 += Dt, wt = lt; + ct += xr, kr = Rr; } - return { subset: et2, resolvedWidth: wt }; - }, pA = iA, mA = te(iA); - mA > Ue && (pA = Ut, mA = te(pA)); - let ZA = te(Qt), jA = eA < oA.length - 1; - if (eA + 1 === rA && (jA || oA[eA] > Ue)) { - if (gA + Ee + mA + ZA > Ue) { - let { subset: $A, resolvedWidth: Ce } = be(gA, $); - $ = $A + pA, De = eA, KA[eA].width = Math.max(0, Ce - KA[eA].left), lA = true; - } else if (nA && nA.line !== eA) - if (p === "center") { - let { subset: $A, resolvedWidth: Ce } = be(gA, $); - $ = $A + pA, De = eA, KA[eA].width = Math.max(0, Ce - KA[eA].left), lA = true; + return { subset: ct, resolvedWidth: kr }; + }, dA = $, wA = te($); + wA > Ke && (dA = pt, wA = te(dA)); + let Ae = te(nt), JA = V < rA.length - 1; + if (V + 1 === nA && (JA || rA[V] > Ke)) { + if (AA + ie + wA + Ae > Ke) { + let { subset: KA, resolvedWidth: se } = Ce(AA, j); + j = KA + dA, Me = V, $A[V].width = Math.max(0, se - $A[V].left), iA = true; + } else if (Z && Z.line !== V) + if (Q === "center") { + let { subset: KA, resolvedWidth: se } = Ce(AA, j); + j = KA + dA, Me = V, $A[V].width = Math.max(0, se - $A[V].left), iA = true; } else { - let $A = Y[V + 1], { subset: Ce, resolvedWidth: It } = be(Ee + gA, $A); - $ = $ + Ce + pA, De = eA, KA[eA].width = Math.max(0, It - KA[eA].left), lA = true; + let KA = K2[Y + 1], { subset: se, resolvedWidth: xt } = Ce(ie + AA, KA); + j = j + se + dA, Me = V, $A[V].width = Math.max(0, xt - $A[V].left), iA = true; } } } - if (DA) - cA += 0; - else if (I) { - if (!$.includes(Ii) && !ms.includes($) && Y[V + 1] && nA && !nA.isImage && cA === nA.y && !lA) { - _A === null && (oe = gA), _A = _A === null ? $ : _A + $; + if (CA) + IA += 0; + else if (g2) { + if (!j.includes(zn) && !cs.includes(j) && K2[Y + 1] && Z && !Z.isImage && IA === Z.y && !iA) { + _A === null && (et2 = AA), _A = _A === null ? j : _A + j; continue; } - let pA = _A === null ? $ : _A + $, mA = _A === null ? gA : oe, ZA = Z.width + gA - mA, jA = Qe(cA), Se = aA.getSVG(pA.replace(/(\t)+/g, ""), { fontSize: F, left: we + mA, top: fe + cA + GA + qA, letterSpacing: M }, jA); - IA = Se.path, JA && Se.boxes && Se.boxes.length && (XA[eA] || (XA[eA] = [])).push(...Se.boxes), _A = null, l2 && (Be += H("rect", { x: we + mA, y: fe + cA + qA, width: ZA, height: YA, fill: "transparent", stroke: "#575eff", "stroke-width": 1, transform: se || void 0, "clip-path": LA ? `url(#${LA})` : void 0 }) + H("line", { x1: we + gA, x2: we + gA + Z.width, y1: fe + cA + qA + GA, y2: fe + cA + qA + GA, stroke: "#14c000", "stroke-width": 1, transform: se || void 0, "clip-path": LA ? `url(#${LA})` : void 0 })); - } else if (cA += GA + qA, JA && !DA) { - let pA = Qe(cA), mA = aA.getSVG($.replace(/(\t)+/g, ""), { fontSize: F, left: we + gA, top: fe + cA, letterSpacing: M }, pA); - mA.boxes && mA.boxes.length && (XA[eA] || (XA[eA] = [])).push(...mA.boxes); + let dA = _A === null ? j : _A + j, wA = _A === null ? AA : et2, Ae = z.width + AA - wA, JA = be(IA), Qe = tA.getSVG(dA.replace(/(\t)+/g, ""), { fontSize: x2, left: De + wA, top: Be + IA + oe + XA, letterSpacing: b }, JA); + gA = Qe.path, Se && Qe.boxes && Qe.boxes.length && (fe[V] || (fe[V] = [])).push(...Qe.boxes), _A = null, I && (Fe += M("rect", { x: De + wA, y: Be + IA + XA, width: Ae, height: PA, fill: "transparent", stroke: "#575eff", "stroke-width": 1, transform: jA || void 0, "clip-path": qA ? `url(#${qA})` : void 0 }) + M("line", { x1: De + AA, x2: De + AA + z.width, y1: Be + IA + XA + oe, y2: Be + IA + XA + oe, stroke: "#14c000", "stroke-width": 1, transform: jA || void 0, "clip-path": qA ? `url(#${qA})` : void 0 })); + } else if (IA += oe + XA, Se && !CA) { + let dA = be(IA), wA = tA.getSVG(j.replace(/(\t)+/g, ""), { fontSize: x2, left: De + AA, top: Be + IA, letterSpacing: b }, dA); + wA.boxes && wA.boxes.length && (fe[V] || (fe[V] = [])).push(...wA.boxes); } - if (IA !== null) - ie += IA + " "; + if (gA !== null) + Ne += gA + " "; else { - let [pA, mA] = ai({ content: $, filter: zA, id: a, left: we + gA, top: fe + cA, width: Ee, height: YA, matrix: se, opacity: qe, image: DA, clipPathId: LA, debug: l2, shape: !!L }, r); - Ie += pA, le += mA; + let [dA, wA] = qn({ content: j, filter: ne, id: s, left: De + AA, top: Be + IA, width: ie, height: PA, matrix: jA, opacity: lt, image: CA, clipPathId: qA, debug: I, shape: !!R2 }, r); + ye += dA, Je += wA; } - if (lA) + if (iA) break; } - if (r.textDecorationLine && (ne = Object.entries(KA).map(([V, Z]) => { - if (!Z) + if (r.textDecorationLine && (Ee = Object.entries($A).map(([Y, z]) => { + if (!z) return ""; - let nA = XA[V] || []; - return gi({ left: we + Z.left, top: Z.top, width: Z.width, ascender: Z.ascender, clipPathId: LA, matrix: se, glyphBoxes: nA }, r); - }).join("")), ie) { - let V = (!li(r.color) || zA) && qe !== 0 ? `` + H("path", { fill: zA && (li(r.color) || O && aa(r.color)) ? "black" : r.color, d: ie, transform: se || void 0, opacity: qe !== 1 ? qe : void 0, style: b ? `filter:${b}` : void 0, "stroke-width": n.WebkitTextStrokeWidth ? `${n.WebkitTextStrokeWidth}px` : void 0, stroke: n.WebkitTextStrokeWidth ? n.WebkitTextStrokeColor : void 0, "stroke-linejoin": n.WebkitTextStrokeWidth ? "round" : void 0, "paint-order": n.WebkitTextStrokeWidth ? "stroke" : void 0 }) + "" : ""; - L && (le = H("path", { d: ie, transform: se || void 0 })), Ie += (zA ? zA + H("g", { filter: `url(#satori_s-${a})` }, V + ne) : V + ne) + Be; + let Z = fe[Y] || []; + return Xn({ left: De + z.left, top: z.top, width: z.width, ascender: z.ascender, clipPathId: qA, matrix: jA, glyphBoxes: Z }, r); + }).join("")), Ne) { + let Y = (!Zn(r.color) || ne) && lt !== 0 ? `` + M("path", { fill: ne && (Zn(r.color) || U && ea(r.color)) ? "black" : r.color, d: Ne, transform: jA || void 0, opacity: lt !== 1 ? lt : void 0, style: y ? `filter:${y}` : void 0, "stroke-width": n.WebkitTextStrokeWidth ? `${n.WebkitTextStrokeWidth}px` : void 0, stroke: n.WebkitTextStrokeWidth ? n.WebkitTextStrokeColor : void 0, "stroke-linejoin": n.WebkitTextStrokeWidth ? "round" : void 0, "paint-order": n.WebkitTextStrokeWidth ? "stroke" : void 0 }) + "" : ""; + R2 && (Je = M("path", { d: Ne, transform: jA || void 0 })), ye += (ne ? ne + M("g", { filter: `url(#satori_s-${s})` }, Y + Ee) : Y + Ee) + Fe; } else - ne && (Ie += zA ? H("g", { filter: `url(#satori_s-${a})` }, ne) : ne); - return le && (r._inheritedBackgroundClipTextPath.value += le), Ie; + Ee && (ye += ne ? M("g", { filter: `url(#satori_s-${s})` }, Ee) : Ee); + return Je && (r._inheritedBackgroundClipTextPath.value += Je), ye; } -function xl(A, e) { +function Dl(A, e) { let t = A.Node.create(); - return t.setAlignItems(A.ALIGN_BASELINE), t.setJustifyContent(ue(e, { left: A.JUSTIFY_FLEX_START, right: A.JUSTIFY_FLEX_END, center: A.JUSTIFY_CENTER, justify: A.JUSTIFY_SPACE_BETWEEN, start: A.JUSTIFY_FLEX_START, end: A.JUSTIFY_FLEX_END }, A.JUSTIFY_FLEX_START, "textAlign")), t; + return t.setAlignItems(A.ALIGN_BASELINE), t.setJustifyContent(YA(e, { left: A.JUSTIFY_FLEX_START, right: A.JUSTIFY_FLEX_END, center: A.JUSTIFY_CENTER, justify: A.JUSTIFY_SPACE_BETWEEN, start: A.JUSTIFY_FLEX_START, end: A.JUSTIFY_FLEX_END }, A.JUSTIFY_FLEX_START, "textAlign")), t; } -function Rl(A) { +function Sl(A) { let e = /(\t)+/.exec(A); return e ? { index: e.index, tabCount: e[0].length } : { index: null, tabCount: 0 }; } -function on(A, e, t, r, n) { - let i = [], o = e.at(-1), a = o && o.offset && o.offset.unit === "%" && r ? +o.offset.value : 100; - for (let E of e) { - let { color: C } = E; - if (!i.length && (i.push({ offset: 0, color: C }), !E.offset || E.offset.value === "0")) +function zr(A, e, t, r, n) { + let i = [], o = e.at(-1), s = o && o.offset && o.offset.unit === "%" && r ? +o.offset.value : 100; + for (let c2 of e) { + let { color: B } = c2; + if (!i.length && (i.push({ offset: 0, color: B }), !c2.offset || c2.offset.value === "0")) continue; - let d2 = typeof E.offset > "u" ? void 0 : E.offset.unit === "%" ? +E.offset.value / a : Number(tA(`${E.offset.value}${E.offset.unit}`, t.fontSize, A, t, true)) / A; - i.push({ offset: d2, color: C }); + let E = typeof c2.offset > "u" ? void 0 : c2.offset.unit === "%" ? +c2.offset.value / s : Number(X(`${c2.offset.value}${c2.offset.unit}`, t.fontSize, A, t, true)) / A; + i.push({ offset: E, color: B }); } i.length || i.push({ offset: 0, color: "transparent" }); - let u2 = i[i.length - 1]; - u2.offset !== 1 && (typeof u2.offset > "u" ? u2.offset = 1 : r ? i[i.length - 1] = { offset: 1, color: u2.color } : i.push({ offset: 1, color: u2.color })); - let l2 = 0, I = 1; - for (let E = 0; E < i.length; E++) - if (typeof i[E].offset > "u") { - for (I < E && (I = E); typeof i[I].offset > "u"; ) - I++; - i[E].offset = (i[I].offset - i[l2].offset) / (I - l2) * (E - l2) + i[l2].offset; + let a = i[i.length - 1]; + a.offset !== 1 && (typeof a.offset > "u" ? a.offset = 1 : r ? i[i.length - 1] = { offset: 1, color: a.color } : i.push({ offset: 1, color: a.color })); + let I = 0, g2 = 1; + for (let c2 = 0; c2 < i.length; c2++) + if (typeof i[c2].offset > "u") { + for (g2 < c2 && (g2 = c2); typeof i[g2].offset > "u"; ) + g2++; + i[c2].offset = (i[g2].offset - i[I].offset) / (g2 - I) * (c2 - I) + i[I].offset; } else - l2 = E; - return n === "mask" ? i.map((E) => { - let C = index_esm_default(E.color); - return C ? C.alpha === 0 ? { ...E, color: "rgba(0, 0, 0, 1)" } : { ...E, color: `rgba(255, 255, 255, ${C.alpha})` } : E; + I = c2; + return n === "mask" ? i.map((c2) => { + let B = index_esm_default(c2.color); + return B ? B.alpha === 0 ? { ...c2, color: "rgba(0, 0, 0, 1)" } : { ...c2, color: `rgba(255, 255, 255, ${B.alpha})` } : c2; }) : i; } -function ua({ id: A, width: e, height: t, repeatX: r, repeatY: n }, i, o, a, u2, l2) { - let I = P(i), [E, C] = o, d2 = i.startsWith("repeating"), p, y, k; - if (I.orientation.type === "directional") - p = Ll(I.orientation.value), y = Math.sqrt(Math.pow((p.x2 - p.x1) * E, 2) + Math.pow((p.y2 - p.y1) * C, 2)); - else if (I.orientation.type === "angular") { - let { length: M, ...L } = Gl(Pn(`${I.orientation.value.value}${I.orientation.value.unit}`) / 180 * Math.PI, E, C); - y = M, p = L; +function ra({ id: A, width: e, height: t, repeatX: r, repeatY: n }, i, o, s, a, I) { + let g2 = P(i), [c2, B] = o, E = i.startsWith("repeating"), Q, d2, m2; + if (g2.orientation.type === "directional") + Q = Rl(g2.orientation.value), d2 = Math.sqrt(Math.pow((Q.x2 - Q.x1) * c2, 2) + Math.pow((Q.y2 - Q.y1) * B, 2)); + else if (g2.orientation.type === "angular") { + let { length: b, ...R2 } = vl(vn(`${g2.orientation.value.value}${g2.orientation.value.unit}`) / 180 * Math.PI, c2, B); + d2 = b, Q = R2; } - k = d2 ? Ul(I.stops, y, p, u2) : p; - let x2 = on(d2 ? Fl(I.stops, y) : y, I.stops, u2, d2, l2), F = `satori_bi${A}`, b = `satori_pattern_${A}`, v2 = H("pattern", { id: b, x: a[0] / e, y: a[1] / t, width: r ? E / e : "1", height: n ? C / t : "1", patternUnits: "objectBoundingBox" }, H("linearGradient", { id: F, ...k, spreadMethod: d2 ? "repeat" : "pad" }, x2.map((M) => H("stop", { offset: (M.offset ?? 0) * 100 + "%", "stop-color": M.color })).join("")) + H("rect", { x: 0, y: 0, width: E, height: C, fill: `url(#${F})` })); - return [b, v2]; + m2 = E ? Nl(g2.stops, d2, Q, a) : Q; + let D = zr(E ? xl(g2.stops, d2) : d2, g2.stops, a, E, I), x2 = `satori_bi${A}`, y = `satori_pattern_${A}`, p = M("pattern", { id: y, x: s[0] / e, y: s[1] / t, width: r ? c2 / e : "1", height: n ? B / t : "1", patternUnits: "objectBoundingBox" }, M("linearGradient", { id: x2, ...m2, spreadMethod: E ? "repeat" : "pad" }, D.map((b) => M("stop", { offset: (b.offset ?? 0) * 100 + "%", "stop-color": b.color })).join("")) + M("rect", { x: 0, y: 0, width: c2, height: B, fill: `url(#${x2})` })); + return [y, p]; } -function Fl(A, e) { +function xl(A, e) { let t = A[A.length - 1], { offset: r } = t; return r ? r.unit === "%" ? Number(r.value) / 100 * e : Number(r.value) : e; } -function Ll(A) { +function Rl(A) { let e = 0, t = 0, r = 0, n = 0; return A.includes("top") ? t = 1 : A.includes("bottom") && (n = 1), A.includes("left") ? e = 1 : A.includes("right") && (r = 1), !e && !r && !t && !n && (t = 1), { x1: e, y1: t, x2: r, y2: n }; } -function Gl(A, e, t) { +function vl(A, e, t) { let r = Math.pow(t / e, 2); A = (A % (Math.PI * 2) + Math.PI * 2) % (Math.PI * 2); - let n, i, o, a, u2, l2, I, E, C = (d2) => { - if (d2 === 0) { - n = 0, i = t, o = 0, a = 0, u2 = t; + let n, i, o, s, a, I, g2, c2, B = (E) => { + if (E === 0) { + n = 0, i = t, o = 0, s = 0, a = t; return; - } else if (d2 === Math.PI / 2) { - n = 0, i = 0, o = e, a = 0, u2 = e; + } else if (E === Math.PI / 2) { + n = 0, i = 0, o = e, s = 0, a = e; return; } - if (d2 > 0 && d2 < Math.PI / 2) { - n = (r * e / 2 / Math.tan(d2) - t / 2) / (Math.tan(d2) + r / Math.tan(d2)), i = Math.tan(d2) * n + t, o = Math.abs(e / 2 - n) + e / 2, a = t / 2 - Math.abs(i - t / 2), u2 = Math.sqrt(Math.pow(o - n, 2) + Math.pow(a - i, 2)), I = (e / 2 / Math.tan(d2) - t / 2) / (Math.tan(d2) + 1 / Math.tan(d2)), E = Math.tan(d2) * I + t, u2 = 2 * Math.sqrt(Math.pow(e / 2 - I, 2) + Math.pow(t / 2 - E, 2)); + if (E > 0 && E < Math.PI / 2) { + n = (r * e / 2 / Math.tan(E) - t / 2) / (Math.tan(E) + r / Math.tan(E)), i = Math.tan(E) * n + t, o = Math.abs(e / 2 - n) + e / 2, s = t / 2 - Math.abs(i - t / 2), a = Math.sqrt(Math.pow(o - n, 2) + Math.pow(s - i, 2)), g2 = (e / 2 / Math.tan(E) - t / 2) / (Math.tan(E) + 1 / Math.tan(E)), c2 = Math.tan(E) * g2 + t, a = 2 * Math.sqrt(Math.pow(e / 2 - g2, 2) + Math.pow(t / 2 - c2, 2)); return; - } else if (d2 > Math.PI / 2 && d2 < Math.PI) { - n = (t / 2 + r * e / 2 / Math.tan(d2)) / (Math.tan(d2) + r / Math.tan(d2)), i = Math.tan(d2) * n, o = Math.abs(e / 2 - n) + e / 2, a = t / 2 + Math.abs(i - t / 2), I = (e / 2 / Math.tan(d2) + t / 2) / (Math.tan(d2) + 1 / Math.tan(d2)), E = Math.tan(d2) * I, u2 = 2 * Math.sqrt(Math.pow(e / 2 - I, 2) + Math.pow(t / 2 - E, 2)); + } else if (E > Math.PI / 2 && E < Math.PI) { + n = (t / 2 + r * e / 2 / Math.tan(E)) / (Math.tan(E) + r / Math.tan(E)), i = Math.tan(E) * n, o = Math.abs(e / 2 - n) + e / 2, s = t / 2 + Math.abs(i - t / 2), g2 = (e / 2 / Math.tan(E) + t / 2) / (Math.tan(E) + 1 / Math.tan(E)), c2 = Math.tan(E) * g2, a = 2 * Math.sqrt(Math.pow(e / 2 - g2, 2) + Math.pow(t / 2 - c2, 2)); return; } else - d2 >= Math.PI && (C(d2 - Math.PI), l2 = n, n = o, o = l2, l2 = i, i = a, a = l2); + E >= Math.PI && (B(E - Math.PI), I = n, n = o, o = I, I = i, i = s, s = I); }; - return C(A), { x1: n / e, y1: i / t, x2: o / e, y2: a / t, length: u2 }; + return B(A), { x1: n / e, y1: i / t, x2: o / e, y2: s / t, length: a }; } -function Ul(A, e, t, r) { - let { x1: n, x2: i, y1: o, y2: a } = t, u2 = A[0].offset ? A[0].offset.unit === "%" ? Number(A[0].offset.value) / 100 : tA(`${A[0].offset.value}${A[0].offset.unit}`, r.fontSize, e, r, true) / e : 0, l2 = A.at(-1).offset ? A.at(-1).offset.unit === "%" ? Number(A.at(-1).offset.value) / 100 : tA(`${A.at(-1).offset.value}${A.at(-1).offset.unit}`, r.fontSize, e, r, true) / e : 1, I = (i - n) * u2 + n, E = (a - o) * u2 + o, C = (i - n) * l2 + n, d2 = (a - o) * l2 + o; - return { x1: I, y1: E, x2: C, y2: d2 }; +function Nl(A, e, t, r) { + let { x1: n, x2: i, y1: o, y2: s } = t, a = A[0].offset ? A[0].offset.unit === "%" ? Number(A[0].offset.value) / 100 : X(`${A[0].offset.value}${A[0].offset.unit}`, r.fontSize, e, r, true) / e : 0, I = A.at(-1).offset ? A.at(-1).offset.unit === "%" ? Number(A.at(-1).offset.value) / 100 : X(`${A.at(-1).offset.value}${A.at(-1).offset.unit}`, r.fontSize, e, r, true) / e : 1, g2 = (i - n) * a + n, c2 = (s - o) * a + o, B = (i - n) * I + n, E = (s - o) * I + o; + return { x1: g2, y1: c2, x2: B, y2: E }; } -function la({ id: A, width: e, height: t, repeatX: r, repeatY: n }, i, o, a, u2, l2) { - var sA; - let { shape: I, stops: E, position: C, size: d2, repeating: p } = K(i), [y, k] = o, x2 = y / 2, F = k / 2, b = Tl(C.x, C.y, y, k, u2.fontSize, u2); - x2 = b.x, F = b.y; - let v2 = Ol(e, E, p, u2), M = on(v2, E, u2, p, l2), L = `satori_radial_${A}`, O = `satori_pattern_${A}`, J = `satori_mask_${A}`, j = _l(I, d2, u2.fontSize, { x: x2, y: F }, [y, k], u2, p), CA = Pl(I, u2.fontSize, E, [y, k], u2, p, j), MA = H("pattern", { id: O, x: a[0] / e, y: a[1] / t, width: r ? y / e : "1", height: n ? k / t : "1", patternUnits: "objectBoundingBox" }, H("radialGradient", { id: L, ...CA }, M.map((vA) => H("stop", { offset: vA.offset || 0, "stop-color": vA.color })).join("")) + H("mask", { id: J }, H("rect", { x: 0, y: 0, width: y, height: k, fill: "#fff" })) + H("rect", { x: 0, y: 0, width: y, height: k, fill: ((sA = M.at(-1)) == null ? void 0 : sA.color) || "transparent" }) + H(I, { cx: x2, cy: F, width: y, height: k, ...j, fill: `url(#${L})`, mask: `url(#${J})` })); - return [O, MA]; +function ia({ id: A, width: e, height: t, repeatX: r, repeatY: n }, i, o, s, a, I) { + var eA; + let { shape: g2, stops: c2, position: B, size: E, repeating: Q } = K(i), [d2, m2] = o, D = d2 / 2, x2 = m2 / 2, y = Ll(B.x, B.y, d2, m2, a.fontSize, a); + D = y.x, x2 = y.y; + let p = Ml(e, c2, Q, a), b = zr(p, c2, a, Q, I), R2 = `satori_radial_${A}`, U = `satori_pattern_${A}`, P2 = `satori_mask_${A}`, q = Ul(g2, E, a.fontSize, { x: D, y: x2 }, [d2, m2], a, Q), lA = Gl(g2, a.fontSize, c2, [d2, m2], a, Q, q), DA = M("pattern", { id: U, x: s[0] / e, y: s[1] / t, width: r ? d2 / e : "1", height: n ? m2 / t : "1", patternUnits: "objectBoundingBox" }, M("radialGradient", { id: R2, ...lA }, b.map((NA) => M("stop", { offset: NA.offset || 0, "stop-color": NA.color })).join("")) + M("mask", { id: P2 }, M("rect", { x: 0, y: 0, width: d2, height: m2, fill: "#fff" })) + M("rect", { x: 0, y: 0, width: d2, height: m2, fill: ((eA = b.at(-1)) == null ? void 0 : eA.color) || "transparent" }) + M(g2, { cx: D, cy: x2, width: d2, height: m2, ...q, fill: `url(#${R2})`, mask: `url(#${P2})` })); + return [U, DA]; } -function Ol(A, e, t, r) { +function Ml(A, e, t, r) { if (!t) return A; let n = e.at(-1); - return !n || !n.offset || n.offset.unit === "%" ? A : tA(`${n.offset.value}${n.offset.unit}`, +r.fontSize, A, r, true); + return !n || !n.offset || n.offset.unit === "%" ? A : X(`${n.offset.value}${n.offset.unit}`, +r.fontSize, A, r, true); } -function Tl(A, e, t, r, n, i) { +function Ll(A, e, t, r, n, i) { let o = { x: t / 2, y: r / 2 }; - return A.type === "keyword" ? Object.assign(o, Ia(A.value, t, r, "x")) : o.x = tA(`${A.value.value}${A.value.unit}`, n, t, i, true) ?? t / 2, e.type === "keyword" ? Object.assign(o, Ia(e.value, t, r, "y")) : o.y = tA(`${e.value.value}${e.value.unit}`, n, r, i, true) ?? r / 2, o; + return A.type === "keyword" ? Object.assign(o, na(A.value, t, r, "x")) : o.x = X(`${A.value.value}${A.value.unit}`, n, t, i, true) ?? t / 2, e.type === "keyword" ? Object.assign(o, na(e.value, t, r, "y")) : o.y = X(`${e.value.value}${e.value.unit}`, n, r, i, true) ?? r / 2, o; } -function Ia(A, e, t, r) { +function na(A, e, t, r) { switch (A) { case "center": return { [r]: r === "x" ? e / 2 : t / 2 }; @@ -19174,45 +18229,45 @@ function Ia(A, e, t, r) { return { y: t }; } } -function Pl(A, e, t, [r, n], i, o, a) { - let { r: u2, rx: l2, ratio: I = 1 } = a; +function Gl(A, e, t, [r, n], i, o, s) { + let { r: a, rx: I, ratio: g2 = 1 } = s; if (!o) return { spreadMethod: "pad" }; - let E = t.at(-1), C = A === "circle" ? u2 * 2 : l2 * 2; - return { spreadMethod: "repeat", cx: "50%", cy: "50%", r: E.offset.unit === "%" ? `${Number(E.offset.value) * Math.min(n / r, 1) / I}%` : Number(tA(`${E.offset.value}${E.offset.unit}`, e, r, i, true) / C) }; + let c2 = t.at(-1), B = A === "circle" ? a * 2 : I * 2; + return { spreadMethod: "repeat", cx: "50%", cy: "50%", r: c2.offset.unit === "%" ? `${Number(c2.offset.value) * Math.min(n / r, 1) / g2}%` : Number(X(`${c2.offset.value}${c2.offset.unit}`, e, r, i, true) / B) }; } -function _l(A, e, t, r, n, i, o) { - let [a, u2] = n, { x: l2, y: I } = r, E = {}, C = 0, d2 = 0; - if (Jl(e)) { - if (e.some((p) => p.value.value.startsWith("-"))) +function Ul(A, e, t, r, n, i, o) { + let [s, a] = n, { x: I, y: g2 } = r, c2 = {}, B = 0, E = 0; + if (Hl(e)) { + if (e.some((Q) => Q.value.value.startsWith("-"))) throw new Error("disallow setting negative values to the size of the shape. Check https://w3c.github.io/csswg-drafts/css-images/#valdef-rg-size-length-0"); - return A === "circle" ? Object.assign(E, { r: Number(tA(`${e[0].value.value}${e[0].value.unit}`, t, a, i, true)) }) : Object.assign(E, { rx: Number(tA(`${e[0].value.value}${e[0].value.unit}`, t, a, i, true)), ry: Number(tA(`${e[1].value.value}${e[1].value.unit}`, t, u2, i, true)) }), sn(E, a, u2, l2, I, o, A), E; + return A === "circle" ? Object.assign(c2, { r: Number(X(`${e[0].value.value}${e[0].value.unit}`, t, s, i, true)) }) : Object.assign(c2, { rx: Number(X(`${e[0].value.value}${e[0].value.unit}`, t, s, i, true)), ry: Number(X(`${e[1].value.value}${e[1].value.unit}`, t, a, i, true)) }), Zr(c2, s, a, I, g2, o, A), c2; } switch (e[0].value) { case "farthest-corner": - C = Math.max(Math.abs(a - l2), Math.abs(l2)), d2 = Math.max(Math.abs(u2 - I), Math.abs(I)); + B = Math.max(Math.abs(s - I), Math.abs(I)), E = Math.max(Math.abs(a - g2), Math.abs(g2)); break; case "closest-corner": - C = Math.min(Math.abs(a - l2), Math.abs(l2)), d2 = Math.min(Math.abs(u2 - I), Math.abs(I)); + B = Math.min(Math.abs(s - I), Math.abs(I)), E = Math.min(Math.abs(a - g2), Math.abs(g2)); break; case "farthest-side": - return A === "circle" ? E.r = Math.max(Math.abs(a - l2), Math.abs(l2), Math.abs(u2 - I), Math.abs(I)) : (E.rx = Math.max(Math.abs(a - l2), Math.abs(l2)), E.ry = Math.max(Math.abs(u2 - I), Math.abs(I))), sn(E, a, u2, l2, I, o, A), E; + return A === "circle" ? c2.r = Math.max(Math.abs(s - I), Math.abs(I), Math.abs(a - g2), Math.abs(g2)) : (c2.rx = Math.max(Math.abs(s - I), Math.abs(I)), c2.ry = Math.max(Math.abs(a - g2), Math.abs(g2))), Zr(c2, s, a, I, g2, o, A), c2; case "closest-side": - return A === "circle" ? E.r = Math.min(Math.abs(a - l2), Math.abs(l2), Math.abs(u2 - I), Math.abs(I)) : (E.rx = Math.min(Math.abs(a - l2), Math.abs(l2)), E.ry = Math.min(Math.abs(u2 - I), Math.abs(I))), sn(E, a, u2, l2, I, o, A), E; + return A === "circle" ? c2.r = Math.min(Math.abs(s - I), Math.abs(I), Math.abs(a - g2), Math.abs(g2)) : (c2.rx = Math.min(Math.abs(s - I), Math.abs(I)), c2.ry = Math.min(Math.abs(a - g2), Math.abs(g2))), Zr(c2, s, a, I, g2, o, A), c2; } - return A === "circle" ? E.r = Math.sqrt(C * C + d2 * d2) : Object.assign(E, ca(C, d2)), sn(E, a, u2, l2, I, o, A), E; + return A === "circle" ? c2.r = Math.sqrt(B * B + E * E) : Object.assign(c2, oa(B, E)), Zr(c2, s, a, I, g2, o, A), c2; } -function sn(A, e, t, r, n, i, o) { +function Zr(A, e, t, r, n, i, o) { if (i) if (o === "ellipse") { - let a = Math.max(Math.abs(e - r), Math.abs(r)), u2 = Math.max(Math.abs(t - n), Math.abs(n)), { rx: l2, ry: I } = ca(a, u2); - A.ratio = Math.max(l2 / A.rx, I / A.ry), A.ratio > 1 && (A.rx *= A.ratio, A.ry *= A.ratio); + let s = Math.max(Math.abs(e - r), Math.abs(r)), a = Math.max(Math.abs(t - n), Math.abs(n)), { rx: I, ry: g2 } = oa(s, a); + A.ratio = Math.max(I / A.rx, g2 / A.ry), A.ratio > 1 && (A.rx *= A.ratio, A.ry *= A.ratio); } else { - let a = Math.max(Math.abs(e - r), Math.abs(r)), u2 = Math.max(Math.abs(t - n), Math.abs(n)), l2 = Math.sqrt(a * a + u2 * u2); - A.ratio = l2 / A.r, A.ratio > 1 && (A.r = l2); + let s = Math.max(Math.abs(e - r), Math.abs(r)), a = Math.max(Math.abs(t - n), Math.abs(n)), I = Math.sqrt(s * s + a * a); + A.ratio = I / A.r, A.ratio > 1 && (A.r = I); } } -function ca(A, e) { +function oa(A, e) { let t = e !== 0 ? A / e : 1; if (A === 0) return { rx: 0, ry: 0 }; @@ -19221,341 +18276,341 @@ function ca(A, e) { return { ry: r, rx: r * t }; } } -function Jl(A) { +function Hl(A) { return !A.some((e) => e.type === "keyword"); } -function Bi(A, e) { +function Ai(A, e) { return typeof A == "string" && A.endsWith("%") ? e * parseFloat(A) / 100 : +A; } -function Wl(A, e, t, r, n) { +function Ol(A, e, t, r, n) { if (!r || !n) return [e, t]; if (A === "cover") { - let i = e / r, o = t / n, a = Math.max(i, o); - return [r * a, n * a]; + let i = e / r, o = t / n, s = Math.max(i, o); + return [r * s, n * s]; } if (A === "contain") { - let i = e / r, o = t / n, a = Math.min(i, o); - return [r * a, n * a]; + let i = e / r, o = t / n, s = Math.min(i, o); + return [r * s, n * s]; } if (A === "auto" || A.includes("auto")) { - let i = A.split(" "), o = i[0] || "auto", a = i[1] || i[0] || "auto", u2 = r, l2 = n; - if (o === "auto" && a !== "auto") { - let I = Bi(a, t); - l2 = I, u2 = r / n * I; - } else if (a === "auto" && o !== "auto") { - let I = Bi(o, e); - u2 = I, l2 = n / r * I; + let i = A.split(" "), o = i[0] || "auto", s = i[1] || i[0] || "auto", a = r, I = n; + if (o === "auto" && s !== "auto") { + let g2 = Ai(s, t); + I = g2, a = r / n * g2; + } else if (s === "auto" && o !== "auto") { + let g2 = Ai(o, e); + a = g2, I = n / r * g2; } - return [u2, l2]; + return [a, I]; } return [e, t]; } -function fi(A, { x: e, y: t, defaultX: r, defaultY: n }) { +function $n(A, { x: e, y: t, defaultX: r, defaultY: n }) { return (A ? A.split(" ").map((i) => { try { - let o = new He(i); + let o = new he(i); return o.type === "length" || o.type === "number" ? o.value : o.value + o.unit; } catch { return null; } - }).filter((i) => i !== null) : [r, n]).map((i, o) => Bi(i, [e, t][o])); + }).filter((i) => i !== null) : [r, n]).map((i, o) => Ai(i, [e, t][o])); } -async function $t({ id: A, width: e, height: t, left: r, top: n }, { image: i, size: o, position: a, repeat: u2 }, l2, I) { - u2 = u2 || "repeat", I = I || "background"; - let E = u2 === "repeat-x" || u2 === "repeat", C = u2 === "repeat-y" || u2 === "repeat", d2 = o && (o === "cover" || o === "contain" || o === "auto" || o.includes("auto")), p = i.startsWith("linear-gradient(") || i.startsWith("repeating-linear-gradient(") || i.startsWith("radial-gradient(") || i.startsWith("repeating-radial-gradient("), y = d2 && p ? [e, t] : d2 ? [0, 0] : fi(o, { x: e, y: t, defaultX: e, defaultY: t }), k = fi(a, { x: e, y: t, defaultX: 0, defaultY: 0 }); +async function Ot({ id: A, width: e, height: t, left: r, top: n }, { image: i, size: o, position: s, repeat: a }, I, g2) { + a = a || "repeat", g2 = g2 || "background"; + let c2 = a === "repeat-x" || a === "repeat", B = a === "repeat-y" || a === "repeat", E = o && (o === "cover" || o === "contain" || o === "auto" || o.includes("auto")), Q = i.startsWith("linear-gradient(") || i.startsWith("repeating-linear-gradient(") || i.startsWith("radial-gradient(") || i.startsWith("repeating-radial-gradient("), d2 = E && Q ? [e, t] : E ? [0, 0] : $n(o, { x: e, y: t, defaultX: e, defaultY: t }), m2 = $n(s, { x: e, y: t, defaultX: 0, defaultY: 0 }); if (i.startsWith("linear-gradient(") || i.startsWith("repeating-linear-gradient(")) - return ua({ id: A, width: e, height: t, repeatX: E, repeatY: C }, i, y, k, l2, I); + return ra({ id: A, width: e, height: t, repeatX: c2, repeatY: B }, i, d2, m2, I, g2); if (i.startsWith("radial-gradient(") || i.startsWith("repeating-radial-gradient(")) - return la({ id: A, width: e, height: t, repeatX: E, repeatY: C }, i, y, k, l2, I); + return ia({ id: A, width: e, height: t, repeatX: c2, repeatY: B }, i, d2, m2, I, g2); if (i.startsWith("url(")) { - let [x2, F, b] = await Gt(i.slice(4, -1)), v2, M; - if (d2) { - let [L, O] = Wl(o, e, t, F, b); - v2 = L, M = O; + let [D, x2, y] = await ht(i.slice(4, -1)), p, b; + if (E) { + let [R2, U] = Ol(o, e, t, x2, y); + p = R2, b = U; } else { - let L = fi(o, { x: e, y: t, defaultX: 0, defaultY: 0 }); - v2 = I === "mask" ? F || L[0] : L[0] || F, M = I === "mask" ? b || L[1] : L[1] || b; + let R2 = $n(o, { x: e, y: t, defaultX: 0, defaultY: 0 }); + p = g2 === "mask" ? x2 || R2[0] : R2[0] || x2, b = g2 === "mask" ? y || R2[1] : R2[1] || y; } - return [`satori_bi${A}`, H("pattern", { id: `satori_bi${A}`, patternContentUnits: "userSpaceOnUse", patternUnits: "userSpaceOnUse", x: k[0] + r, y: k[1] + n, width: E ? v2 : "100%", height: C ? M : "100%" }, H("image", { x: 0, y: 0, width: v2, height: M, preserveAspectRatio: "none", href: x2 }))]; + return [`satori_bi${A}`, M("pattern", { id: `satori_bi${A}`, patternContentUnits: "userSpaceOnUse", patternUnits: "userSpaceOnUse", x: m2[0] + r, y: m2[1] + n, width: c2 ? p : "100%", height: B ? b : "100%" }, M("image", { x: 0, y: 0, width: p, height: b, preserveAspectRatio: "none", href: D }))]; } if (index_esm_default(i)) { - let x2 = index_esm_default(i), [F, b, v2, M] = x2.values, O = `rgba(${F},${b},${v2},${M !== void 0 ? M : 1})`; - return [`satori_bi${A}`, H("pattern", { id: `satori_bi${A}`, patternContentUnits: "userSpaceOnUse", patternUnits: "userSpaceOnUse", x: r, y: n, width: e, height: t }, H("rect", { x: 0, y: 0, width: e, height: t, fill: O }))]; + let D = index_esm_default(i), [x2, y, p, b] = D.values, U = `rgba(${x2},${y},${p},${b !== void 0 ? b : 1})`; + return [`satori_bi${A}`, M("pattern", { id: `satori_bi${A}`, patternContentUnits: "userSpaceOnUse", patternUnits: "userSpaceOnUse", x: r, y: n, width: e, height: t }, M("rect", { x: 0, y: 0, width: e, height: t, fill: U }))]; } throw new Error(`Invalid background image: "${i}"`); } -function Kl([A, e]) { +function Tl([A, e]) { return Math.round(A * 1e3) === 0 && Math.round(e * 1e3) === 0 ? 0 : Math.round(A * e / Math.sqrt(A * A + e * e) * 1e3) / 1e3; } -function an(A, e, t) { +function jr(A, e, t) { return t < A + e && (t / 2 < A && t / 2 < e ? A = e = t / 2 : t / 2 < A ? A = t - e : t / 2 < e && (e = t - A)), [A, e]; } -function gn(A) { +function $r(A) { A[0] = A[1] = Math.min(A[0], A[1]); } -function un(A, e, t, r, n) { +function An(A, e, t, r, n) { if (typeof A == "string") { - let i = A.split(" ").map((a) => a.trim()), o = !i[1] && !i[0].endsWith("%"); - return i[1] = i[1] || i[0], [o, [Math.min(tA(i[0], r, e, n, true), e), Math.min(tA(i[1], r, t, n, true), t)]]; + let i = A.split(" ").map((s) => s.trim()), o = !i[1] && !i[0].endsWith("%"); + return i[1] = i[1] || i[0], [o, [Math.min(X(i[0], r, e, n, true), e), Math.min(X(i[1], r, t, n, true), t)]]; } return typeof A == "number" ? [true, [Math.min(A, e), Math.min(A, t)]] : [true, void 0]; } -var In = (A) => A && A[0] !== 0 && A[1] !== 0; -function Ba({ id: A, borderRadiusPath: e, borderType: t, left: r, top: n, width: i, height: o }, a) { - let u2 = `satori_brc-${A}`; - return [H("clipPath", { id: u2 }, H(t, { x: r, y: n, width: i, height: o, d: e || void 0 })), u2]; +var en = (A) => A && A[0] !== 0 && A[1] !== 0; +function aa({ id: A, borderRadiusPath: e, borderType: t, left: r, top: n, width: i, height: o }, s) { + let a = `satori_brc-${A}`; + return [M("clipPath", { id: a }, M(t, { x: r, y: n, width: i, height: o, d: e || void 0 })), a]; } -function it({ left: A, top: e, width: t, height: r }, n, i) { - let { borderTopLeftRadius: o, borderTopRightRadius: a, borderBottomLeftRadius: u2, borderBottomRightRadius: l2, fontSize: I } = n, E, C, d2, p; - if ([E, o] = un(o, t, r, I, n), [C, a] = un(a, t, r, I, n), [d2, u2] = un(u2, t, r, I, n), [p, l2] = un(l2, t, r, I, n), !i && !In(o) && !In(a) && !In(u2) && !In(l2)) +function Xe({ left: A, top: e, width: t, height: r }, n, i) { + let { borderTopLeftRadius: o, borderTopRightRadius: s, borderBottomLeftRadius: a, borderBottomRightRadius: I, fontSize: g2 } = n, c2, B, E, Q; + if ([c2, o] = An(o, t, r, g2, n), [B, s] = An(s, t, r, g2, n), [E, a] = An(a, t, r, g2, n), [Q, I] = An(I, t, r, g2, n), !i && !en(o) && !en(s) && !en(a) && !en(I)) return ""; - o ||= [0, 0], a ||= [0, 0], u2 ||= [0, 0], l2 ||= [0, 0], [o[0], a[0]] = an(o[0], a[0], t), [u2[0], l2[0]] = an(u2[0], l2[0], t), [o[1], u2[1]] = an(o[1], u2[1], r), [a[1], l2[1]] = an(a[1], l2[1], r), E && gn(o), C && gn(a), d2 && gn(u2), p && gn(l2); - let y = []; - y[0] = [a, a], y[1] = [l2, [-l2[0], l2[1]]], y[2] = [u2, [-u2[0], -u2[1]]], y[3] = [o, [o[0], -o[1]]]; - let k = `h${t - o[0] - a[0]} a${y[0][0]} 0 0 1 ${y[0][1]}`, x2 = `v${r - a[1] - l2[1]} a${y[1][0]} 0 0 1 ${y[1][1]}`, F = `h${l2[0] + u2[0] - t} a${y[2][0]} 0 0 1 ${y[2][1]}`, b = `v${u2[1] + o[1] - r} a${y[3][0]} 0 0 1 ${y[3][1]}`; + o ||= [0, 0], s ||= [0, 0], a ||= [0, 0], I ||= [0, 0], [o[0], s[0]] = jr(o[0], s[0], t), [a[0], I[0]] = jr(a[0], I[0], t), [o[1], a[1]] = jr(o[1], a[1], r), [s[1], I[1]] = jr(s[1], I[1], r), c2 && $r(o), B && $r(s), E && $r(a), Q && $r(I); + let d2 = []; + d2[0] = [s, s], d2[1] = [I, [-I[0], I[1]]], d2[2] = [a, [-a[0], -a[1]]], d2[3] = [o, [o[0], -o[1]]]; + let m2 = `h${t - o[0] - s[0]} a${d2[0][0]} 0 0 1 ${d2[0][1]}`, D = `v${r - s[1] - I[1]} a${d2[1][0]} 0 0 1 ${d2[1][1]}`, x2 = `h${I[0] + a[0] - t} a${d2[2][0]} 0 0 1 ${d2[2][1]}`, y = `v${a[1] + o[1] - r} a${d2[3][0]} 0 0 1 ${d2[3][1]}`; if (i) { - let M = function(dA) { - let sA = Kl([o, a, l2, u2][dA]); - return dA === 0 ? [[A + o[0] - sA, e + o[1] - sA], [A + o[0], e]] : dA === 1 ? [[A + t - a[0] + sA, e + a[1] - sA], [A + t, e + a[1]]] : dA === 2 ? [[A + t - l2[0] + sA, e + r - l2[1] + sA], [A + t - l2[0], e + r]] : [[A + u2[0] - sA, e + r - u2[1] + sA], [A, e + r - u2[1]]]; - }, v2 = i.indexOf(false); + let b = function(RA) { + let eA = Tl([o, s, I, a][RA]); + return RA === 0 ? [[A + o[0] - eA, e + o[1] - eA], [A + o[0], e]] : RA === 1 ? [[A + t - s[0] + eA, e + s[1] - eA], [A + t, e + s[1]]] : RA === 2 ? [[A + t - I[0] + eA, e + r - I[1] + eA], [A + t - I[0], e + r]] : [[A + a[0] - eA, e + r - a[1] + eA], [A, e + r - a[1]]]; + }, p = i.indexOf(false); if (!i.includes(true)) throw new Error("Invalid `partialSides`."); - if (v2 === -1) - v2 = 0; + if (p === -1) + p = 0; else - for (; !i[v2]; ) - v2 = (v2 + 1) % 4; - let L = "", O = M(v2), J = `M${O[0]} A${y[(v2 + 3) % 4][0]} 0 0 1 ${O[1]}`, j = 0; - for (; j < 4 && i[(v2 + j) % 4]; j++) - L += J + " ", J = [k, x2, F, b][(v2 + j) % 4]; - let CA = (v2 + j) % 4; - L += J.split(" ")[0]; - let MA = M(CA); - return L += ` A${y[(CA + 3) % 4][0]} 0 0 1 ${MA[0]}`, L; - } - return `M${A + o[0]},${e} ${k} ${x2} ${F} ${b}`; -} -function Ea(A, e, t) { + for (; !i[p]; ) + p = (p + 1) % 4; + let R2 = "", U = b(p), P2 = `M${U[0]} A${d2[(p + 3) % 4][0]} 0 0 1 ${U[1]}`, q = 0; + for (; q < 4 && i[(p + q) % 4]; q++) + R2 += P2 + " ", P2 = [m2, D, x2, y][(p + q) % 4]; + let lA = (p + q) % 4; + R2 += P2.split(" ")[0]; + let DA = b(lA); + return R2 += ` A${d2[(lA + 3) % 4][0]} 0 0 1 ${DA[0]}`, R2; + } + return `M${A + o[0]},${e} ${m2} ${D} ${x2} ${y}`; +} +function ga(A, e, t) { return t[A + "Width"] === t[e + "Width"] && t[A + "Style"] === t[e + "Style"] && t[A + "Color"] === t[e + "Color"]; } -function Qa({ id: A, currentClipPathId: e, borderPath: t, borderType: r, left: n, top: i, width: o, height: a }, u2) { - if (!(u2.borderTopWidth || u2.borderRightWidth || u2.borderBottomWidth || u2.borderLeftWidth)) +function Ia({ id: A, currentClipPathId: e, borderPath: t, borderType: r, left: n, top: i, width: o, height: s }, a) { + if (!(a.borderTopWidth || a.borderRightWidth || a.borderBottomWidth || a.borderLeftWidth)) return null; - let I = `satori_bc-${A}`; - return [H("clipPath", { id: I, "clip-path": e ? `url(#${e})` : void 0 }, H(r, { x: n, y: i, width: o, height: a, d: t || void 0 })), I]; + let g2 = `satori_bc-${A}`; + return [M("clipPath", { id: g2, "clip-path": e ? `url(#${e})` : void 0 }, M(r, { x: n, y: i, width: o, height: s, d: t || void 0 })), g2]; } -function Ar({ left: A, top: e, width: t, height: r, props: n, asContentMask: i, maskBorderOnly: o }, a) { - let u2 = ["borderTop", "borderRight", "borderBottom", "borderLeft"]; - if (!i && !u2.some((d2) => a[d2 + "Width"])) +function Tt({ left: A, top: e, width: t, height: r, props: n, asContentMask: i, maskBorderOnly: o }, s) { + let a = ["borderTop", "borderRight", "borderBottom", "borderLeft"]; + if (!i && !a.some((E) => s[E + "Width"])) return ""; - let l2 = "", I = 0; - for (; I > 0 && Ea(u2[I], u2[(I + 3) % 4], a); ) - I = (I + 3) % 4; - let E = [false, false, false, false], C = []; - for (let d2 = 0; d2 < 4; d2++) { - let p = (I + d2) % 4, y = (I + d2 + 1) % 4, k = u2[p], x2 = u2[y]; - if (E[p] = true, C = [a[k + "Width"], a[k + "Style"], a[k + "Color"], k], !Ea(k, x2, a)) { - let F = (C[0] || 0) + (i && !o && a[k.replace("border", "padding")] || 0); - F && (l2 += H("path", { width: t, height: r, ...n, fill: "none", stroke: i ? "#000" : C[2], "stroke-width": F * 2, "stroke-dasharray": !i && C[1] === "dashed" ? F * 2 + " " + F : void 0, d: it({ left: A, top: e, width: t, height: r }, a, E) })), E = [false, false, false, false]; - } - } - if (E.some(Boolean)) { - let d2 = (C[0] || 0) + (i && !o && a[C[3].replace("border", "padding")] || 0); - d2 && (l2 += H("path", { width: t, height: r, ...n, fill: "none", stroke: i ? "#000" : C[2], "stroke-width": d2 * 2, "stroke-dasharray": !i && C[1] === "dashed" ? d2 * 2 + " " + d2 : void 0, d: it({ left: A, top: e, width: t, height: r }, a, E) })); - } - return l2; -} -function Ei({ id: A, left: e, top: t, width: r, height: n, matrix: i, borderOnly: o }, a) { - let u2 = (a.borderLeftWidth || 0) + (o ? 0 : a.paddingLeft || 0), l2 = (a.borderTopWidth || 0) + (o ? 0 : a.paddingTop || 0), I = (a.borderRightWidth || 0) + (o ? 0 : a.paddingRight || 0), E = (a.borderBottomWidth || 0) + (o ? 0 : a.paddingBottom || 0), C = { x: e + u2, y: t + l2, width: r - u2 - I, height: n - l2 - E }; - return H("mask", { id: A }, H("rect", { ...C, fill: "#fff", transform: a.overflow === "hidden" && a.transform && i ? i : void 0, mask: a._inheritedMaskId ? `url(#${a._inheritedMaskId})` : void 0 }) + Ar({ left: e, top: t, width: r, height: n, props: { transform: i || void 0 }, asContentMask: true, maskBorderOnly: o }, a)); -} -var er = { circle: /circle\((.+)\)/, ellipse: /ellipse\((.+)\)/, path: /path\((.+)\)/, polygon: /polygon\((.+)\)/, inset: /inset\((.+)\)/ }; -function pa({ width: A, height: e }, t, r) { - function n(l2) { - let I = l2.match(er.circle); - if (!I) + let I = "", g2 = 0; + for (; g2 > 0 && ga(a[g2], a[(g2 + 3) % 4], s); ) + g2 = (g2 + 3) % 4; + let c2 = [false, false, false, false], B = []; + for (let E = 0; E < 4; E++) { + let Q = (g2 + E) % 4, d2 = (g2 + E + 1) % 4, m2 = a[Q], D = a[d2]; + if (c2[Q] = true, B = [s[m2 + "Width"], s[m2 + "Style"], s[m2 + "Color"], m2], !ga(m2, D, s)) { + let x2 = (B[0] || 0) + (i && !o && s[m2.replace("border", "padding")] || 0); + x2 && (I += M("path", { width: t, height: r, ...n, fill: "none", stroke: i ? "#000" : B[2], "stroke-width": x2 * 2, "stroke-dasharray": !i && B[1] === "dashed" ? x2 * 2 + " " + x2 : void 0, d: Xe({ left: A, top: e, width: t, height: r }, s, c2) })), c2 = [false, false, false, false]; + } + } + if (c2.some(Boolean)) { + let E = (B[0] || 0) + (i && !o && s[B[3].replace("border", "padding")] || 0); + E && (I += M("path", { width: t, height: r, ...n, fill: "none", stroke: i ? "#000" : B[2], "stroke-width": E * 2, "stroke-dasharray": !i && B[1] === "dashed" ? E * 2 + " " + E : void 0, d: Xe({ left: A, top: e, width: t, height: r }, s, c2) })); + } + return I; +} +function ei({ id: A, left: e, top: t, width: r, height: n, matrix: i, borderOnly: o }, s) { + let a = (s.borderLeftWidth || 0) + (o ? 0 : s.paddingLeft || 0), I = (s.borderTopWidth || 0) + (o ? 0 : s.paddingTop || 0), g2 = (s.borderRightWidth || 0) + (o ? 0 : s.paddingRight || 0), c2 = (s.borderBottomWidth || 0) + (o ? 0 : s.paddingBottom || 0), B = { x: e + a, y: t + I, width: r - a - g2, height: n - I - c2 }; + return M("mask", { id: A }, M("rect", { ...B, fill: "#fff", transform: s.overflow === "hidden" && s.transform && i ? i : void 0, mask: s._inheritedMaskId ? `url(#${s._inheritedMaskId})` : void 0 }) + Tt({ left: e, top: t, width: r, height: n, props: { transform: i || void 0 }, asContentMask: true, maskBorderOnly: o }, s)); +} +var Pt = { circle: /circle\((.+)\)/, ellipse: /ellipse\((.+)\)/, path: /path\((.+)\)/, polygon: /polygon\((.+)\)/, inset: /inset\((.+)\)/ }; +function Ba({ width: A, height: e }, t, r) { + function n(I) { + let g2 = I.match(Pt.circle); + if (!g2) return null; - let [, E] = I, [C, d2 = ""] = E.split("at").map((k) => k.trim()), { x: p, y } = ha(d2, A, e); - return { type: "circle", r: tA(C, r.fontSize, Math.sqrt(Math.pow(A, 2) + Math.pow(e, 2)) / Math.sqrt(2), r, true), cx: tA(p, r.fontSize, A, r, true), cy: tA(y, r.fontSize, e, r, true) }; + let [, c2] = g2, [B, E = ""] = c2.split("at").map((m2) => m2.trim()), { x: Q, y: d2 } = ca(E, A, e); + return { type: "circle", r: X(B, r.fontSize, Math.sqrt(Math.pow(A, 2) + Math.pow(e, 2)) / Math.sqrt(2), r, true), cx: X(Q, r.fontSize, A, r, true), cy: X(d2, r.fontSize, e, r, true) }; } - function i(l2) { - let I = l2.match(er.ellipse); - if (!I) + function i(I) { + let g2 = I.match(Pt.ellipse); + if (!g2) return null; - let [, E] = I, [C, d2 = ""] = E.split("at").map((F) => F.trim()), [p, y] = C.split(" "), { x: k, y: x2 } = ha(d2, A, e); - return { type: "ellipse", rx: tA(p || "50%", r.fontSize, A, r, true), ry: tA(y || "50%", r.fontSize, e, r, true), cx: tA(k, r.fontSize, A, r, true), cy: tA(x2, r.fontSize, e, r, true) }; + let [, c2] = g2, [B, E = ""] = c2.split("at").map((x2) => x2.trim()), [Q, d2] = B.split(" "), { x: m2, y: D } = ca(E, A, e); + return { type: "ellipse", rx: X(Q || "50%", r.fontSize, A, r, true), ry: X(d2 || "50%", r.fontSize, e, r, true), cx: X(m2, r.fontSize, A, r, true), cy: X(D, r.fontSize, e, r, true) }; } - function o(l2) { - let I = l2.match(er.path); - if (!I) + function o(I) { + let g2 = I.match(Pt.path); + if (!g2) return null; - let [E, C] = da(I[1]); - return { type: "path", d: C, "fill-rule": E }; + let [c2, B] = la(g2[1]); + return { type: "path", d: B, "fill-rule": c2 }; } - function a(l2) { - let I = l2.match(er.polygon); - if (!I) + function s(I) { + let g2 = I.match(Pt.polygon); + if (!g2) return null; - let [E, C] = da(I[1]); - return { type: "polygon", "fill-rule": E, points: C.split(",").map((d2) => d2.split(" ").map((p, y) => tA(p, r.fontSize, y === 0 ? A : e, r, true)).join(" ")).join(",") }; + let [c2, B] = la(g2[1]); + return { type: "polygon", "fill-rule": c2, points: B.split(",").map((E) => E.split(" ").map((Q, d2) => X(Q, r.fontSize, d2 === 0 ? A : e, r, true)).join(" ")).join(",") }; } - function u2(l2) { - let I = l2.match(er.inset); - if (!I) + function a(I) { + let g2 = I.match(Pt.inset); + if (!g2) return null; - let [E, C] = (I[1].includes("round") ? I[1] : `${I[1].trim()} round 0`).split("round"), d2 = (0, import_css_to_react_native3.getStylesForProperty)("borderRadius", C, true), p = Object.values(d2).map((v2) => String(v2)).map((v2, M) => tA(v2, r.fontSize, M === 0 || M === 2 ? e : A, r, true) || 0), y = Object.values((0, import_css_to_react_native3.getStylesForProperty)("margin", E, true)).map((v2) => String(v2)).map((v2, M) => tA(v2, r.fontSize, M === 0 || M === 2 ? e : A, r, true) || 0), k = y[3], x2 = y[0], F = A - (y[1] + y[3]), b = e - (y[0] + y[2]); - return p.some((v2) => v2 > 0) ? { type: "path", d: it({ left: k, top: x2, width: F, height: b }, { ...t, ...d2 }) } : { type: "rect", x: k, y: x2, width: F, height: b }; + let [c2, B] = (g2[1].includes("round") ? g2[1] : `${g2[1].trim()} round 0`).split("round"), E = (0, import_css_to_react_native3.getStylesForProperty)("borderRadius", B, true), Q = Object.values(E).map((p) => String(p)).map((p, b) => X(p, r.fontSize, b === 0 || b === 2 ? e : A, r, true) || 0), d2 = Object.values((0, import_css_to_react_native3.getStylesForProperty)("margin", c2, true)).map((p) => String(p)).map((p, b) => X(p, r.fontSize, b === 0 || b === 2 ? e : A, r, true) || 0), m2 = d2[3], D = d2[0], x2 = A - (d2[1] + d2[3]), y = e - (d2[0] + d2[2]); + return Q.some((p) => p > 0) ? { type: "path", d: Xe({ left: m2, top: D, width: x2, height: y }, { ...t, ...E }) } : { type: "rect", x: m2, y: D, width: x2, height: y }; } - return { parseCircle: n, parseEllipse: i, parsePath: o, parsePolygon: a, parseInset: u2 }; + return { parseCircle: n, parseEllipse: i, parsePath: o, parsePolygon: s, parseInset: a }; } -function da(A) { +function la(A) { let [, e = "nonzero", t] = A.replace(/('|")/g, "").match(/^(nonzero|evenodd)?,?(.+)/) || []; return [e, t]; } -function ha(A, e, t) { +function ca(A, e, t) { let r = A.split(" "), n = { x: r[0] || "50%", y: r[1] || "50%" }; return r.forEach((i) => { i === "top" ? n.y = 0 : i === "bottom" ? n.y = t : i === "left" ? n.x = 0 : i === "right" ? n.x = e : i === "center" && (n.x = e / 2, n.y = t / 2); }), n; } -function ln(A) { +function tn(A) { return `satori_cp-${A}`; } -function ma(A) { - return `url(#${ln(A)})`; +function Ea(A) { + return `url(#${tn(A)})`; } -function ya(A, e, t) { +function fa(A, e, t) { if (e.clipPath === "none") return ""; - let r = pa(A, e, t), n = e.clipPath, i = { type: "" }; + let r = Ba(A, e, t), n = e.clipPath, i = { type: "" }; for (let o of Object.keys(r)) if (i = r[o](n), i) break; if (i) { - let { type: o, ...a } = i; - return H("clipPath", { id: ln(A.id), "clip-path": A.currentClipPath, transform: `translate(${A.left}, ${A.top})` }, H(o, a)); + let { type: o, ...s } = i; + return M("clipPath", { id: tn(A.id), "clip-path": A.currentClipPath, transform: `translate(${A.left}, ${A.top})` }, M(o, s)); } return ""; } -function Qi({ left: A, top: e, width: t, height: r, path: n, matrix: i, id: o, currentClipPath: a, src: u2 }, l2, I) { - let E = "", C = l2.clipPath && l2.clipPath !== "none" ? ya({ left: A, top: e, width: t, height: r, path: n, id: o, matrix: i, currentClipPath: a, src: u2 }, l2, I) : ""; - if (l2.overflow !== "hidden" && !u2) - E = ""; +function ti({ left: A, top: e, width: t, height: r, path: n, matrix: i, id: o, currentClipPath: s, src: a }, I, g2) { + let c2 = "", B = I.clipPath && I.clipPath !== "none" ? fa({ left: A, top: e, width: t, height: r, path: n, id: o, matrix: i, currentClipPath: s, src: a }, I, g2) : ""; + if (I.overflow !== "hidden" && !a) + c2 = ""; else { - let p = C ? `satori_ocp-${o}` : ln(o); - E = H("clipPath", { id: p, "clip-path": a }, H(n ? "path" : "rect", { x: A, y: e, width: t, height: r, d: n || void 0, transform: l2.overflow === "hidden" && l2.transform && i ? i : void 0 })); + let Q = B ? `satori_ocp-${o}` : tn(o); + c2 = M("clipPath", { id: Q, "clip-path": s }, M(n ? "path" : "rect", { x: A, y: e, width: t, height: r, d: n || void 0, transform: I.overflow === "hidden" && I.transform && i ? i : void 0 })); } - let d2 = Ei({ id: `satori_om-${o}`, left: A, top: e, width: t, height: r, matrix: i, borderOnly: !u2 }, l2); - return C + E + d2; + let E = ei({ id: `satori_om-${o}`, left: A, top: e, width: t, height: r, matrix: i, borderOnly: !a }, I); + return B + c2 + E; } -var Yl = (A) => `satori_mi-${A}`; -async function Ci(A, e, t) { +var Pl = (A) => `satori_mi-${A}`; +async function ri(A, e, t) { if (!e.maskImage) return ["", ""]; - let { left: r, top: n, width: i, height: o, id: a } = A, u2 = e.maskImage, l2 = u2.length; - if (!l2) + let { left: r, top: n, width: i, height: o, id: s } = A, a = e.maskImage, I = a.length; + if (!I) return ["", ""]; - let I = Yl(a), E = ""; - for (let C = 0; C < l2; C++) { - let d2 = u2[C], [p, y] = await $t({ id: `${I}-${C}`, left: r, top: n, width: i, height: o }, d2, t, "mask"); - E += y + H("rect", { x: r, y: n, width: i, height: o, fill: `url(#${p})` }); + let g2 = Pl(s), c2 = ""; + for (let B = 0; B < I; B++) { + let E = a[B], [Q, d2] = await Ot({ id: `${g2}-${B}`, left: r, top: n, width: i, height: o }, E, t, "mask"); + c2 += d2 + M("rect", { x: r, y: n, width: i, height: o, fill: `url(#${Q})` }); } - return E = H("mask", { id: I }, E), [I, E]; + return c2 = M("mask", { id: g2 }, c2), [g2, c2]; } -function ql(A, e, t) { - let r = A.toLowerCase().trim().split(/\s+/), n = (u2, l2) => ({ left: "0%", center: "50%", right: "100%", top: "0%", bottom: "100%" })[u2] || u2, i, o; +function _l(A, e, t) { + let r = A.toLowerCase().trim().split(/\s+/), n = (a, I) => ({ left: "0%", center: "50%", right: "100%", top: "0%", bottom: "100%" })[a] || a, i, o; if (r.length === 1) { - let u2 = r[0]; - u2 === "left" || u2 === "center" || u2 === "right" ? (i = n(u2, "x"), o = "50%") : u2 === "top" || u2 === "bottom" ? (i = "50%", o = n(u2, "y")) : (i = u2, o = "50%"); + let a = r[0]; + a === "left" || a === "center" || a === "right" ? (i = n(a, "x"), o = "50%") : a === "top" || a === "bottom" ? (i = "50%", o = n(a, "y")) : (i = a, o = "50%"); } else { - let u2 = r[0], l2 = r[1]; - u2 === "top" || u2 === "bottom" ? (o = n(u2, "y"), l2 === "left" || l2 === "right" || l2 === "center" ? i = n(l2, "x") : (i = "50%", o = u2 === "top" || u2 === "bottom" ? n(u2, "y") : l2)) : (i = n(u2, "x"), o = n(l2, "y")); + let a = r[0], I = r[1]; + a === "top" || a === "bottom" ? (o = n(a, "y"), I === "left" || I === "right" || I === "center" ? i = n(I, "x") : (i = "50%", o = a === "top" || a === "bottom" ? n(a, "y") : I)) : (i = n(a, "x"), o = n(I, "y")); } - let a = (u2, l2) => { + let s = (a, I) => { try { - if (u2.endsWith("%")) - return l2 * parseFloat(u2) / 100; - let I = new He(u2); - return I.type === "length" || I.type === "number" ? I.value : 0; + if (a.endsWith("%")) + return I * parseFloat(a) / 100; + let g2 = new he(a); + return g2.type === "length" || g2.type === "number" ? g2.value : 0; } catch { return 0; } }; - return [a(i, e), a(o, t)]; + return [s(i, e), s(o, t)]; } -async function tr({ id: A, left: e, top: t, width: r, height: n, isInheritingTransform: i, src: o, debug: a }, u2, l2) { - if (u2.display === "none") +async function _t({ id: A, left: e, top: t, width: r, height: n, isInheritingTransform: i, src: o, debug: s }, a, I) { + if (a.display === "none") return ""; - let I = !!o, E = "rect", C = "", d2 = "", p = [], y = 1, k = ""; - u2.backgroundColor && p.push(u2.backgroundColor), u2.opacity !== void 0 && (y = +u2.opacity), u2.transform && (C = jt({ left: e, top: t, width: r, height: n }, u2.transform, i, u2.transformOrigin)); - let x2 = ""; - if (u2.backgroundImage) { - let rA = []; - for (let iA = 0; iA < u2.backgroundImage.length; iA++) { - let wA = u2.backgroundImage[iA], aA = await $t({ id: A + "_" + iA, width: r, height: n, left: e, top: t }, wA, l2); - aA && rA.unshift(aA); - } - for (let iA of rA) - p.push(`url(#${iA[0]})`), d2 += iA[1], iA[2] && (x2 += iA[2]); - } - let [F, b] = await Ci({ id: A, left: e, top: t, width: r, height: n }, u2, l2); - d2 += b; - let v2 = F ? `url(#${F})` : u2._inheritedMaskId ? `url(#${u2._inheritedMaskId})` : void 0, M = it({ left: e, top: t, width: r, height: n }, u2); - M && (E = "path"); - let L = u2._inheritedClipPathId; - a && (k = H("rect", { x: e, y: t, width: r, height: n, fill: "transparent", stroke: "#ff5757", "stroke-width": 1, transform: C || void 0, "clip-path": L ? `url(#${L})` : void 0 })); - let { backgroundClip: O, filter: J } = u2, j = O === "text" ? `url(#satori_bct-${A})` : L ? `url(#${L})` : u2.clipPath ? ma(A) : void 0, CA = Qi({ left: e, top: t, width: r, height: n, path: M, id: A, matrix: C, currentClipPath: j, src: o }, u2, l2), MA = p.map((rA) => H(E, { x: e, y: t, width: r, height: n, fill: rA, d: M || void 0, transform: C || void 0, "clip-path": u2.transform ? void 0 : j, style: J ? `filter:${J}` : void 0, mask: u2.transform ? void 0 : v2 })).join(""), dA = Qa({ id: A, left: e, top: t, width: r, height: n, currentClipPathId: L, borderPath: M, borderType: E }, u2), sA; - if (I) { - let rA = (u2.borderLeftWidth || 0) + (u2.paddingLeft || 0), iA = (u2.borderTopWidth || 0) + (u2.paddingTop || 0), wA = (u2.borderRightWidth || 0) + (u2.paddingRight || 0), aA = (u2.borderBottomWidth || 0) + (u2.paddingBottom || 0), FA = r - rA - wA, kA = n - iA - aA, te = (u2.objectPosition || "center").toString(), [TA, xA] = ql(te, FA, kA), fA = u2.__naturalWidth || FA, q = u2.__naturalHeight || kA, oA, BA = FA, W = kA, Y = e + rA, OA = t + iA; - if (u2.objectFit === "contain") { - let PA = FA / fA, WA = kA / q, uA = Math.min(PA, WA); - BA = fA * uA, W = q * uA, Y = e + rA + TA - BA * TA / FA, OA = t + iA + xA - W * xA / kA, oA = "none"; - } else if (u2.objectFit === "cover") { - let PA = FA / fA, WA = kA / q, uA = Math.max(PA, WA); - BA = fA * uA, W = q * uA, Y = e + rA + TA - BA * TA / FA, OA = t + iA + xA - W * xA / kA, oA = "none"; - } else if (u2.objectFit === "fill") - oA = "none"; - else if (u2.objectFit === "scale-down") - if (fA && q) { - let PA = FA / fA, WA = kA / q, uA = Math.min(PA, WA); - if (uA >= 1) - BA = fA, W = q, oA = "none", Y = e + rA + TA - BA * TA / FA, OA = t + iA + xA - W * xA / kA; + let g2 = !!o, c2 = "rect", B = "", E = "", Q = [], d2 = 1, m2 = ""; + a.backgroundColor && Q.push(a.backgroundColor), a.opacity !== void 0 && (d2 = +a.opacity), a.transform && (B = Ht({ left: e, top: t, width: r, height: n }, a.transform, i, a.transformOrigin)); + let D = ""; + if (a.backgroundImage) { + let nA = []; + for (let $ = 0; $ < a.backgroundImage.length; $++) { + let HA = a.backgroundImage[$], tA = await Ot({ id: A + "_" + $, width: r, height: n, left: e, top: t }, HA, I); + tA && nA.unshift(tA); + } + for (let $ of nA) + Q.push(`url(#${$[0]})`), E += $[1], $[2] && (D += $[2]); + } + let [x2, y] = await ri({ id: A, left: e, top: t, width: r, height: n }, a, I); + E += y; + let p = x2 ? `url(#${x2})` : a._inheritedMaskId ? `url(#${a._inheritedMaskId})` : void 0, b = Xe({ left: e, top: t, width: r, height: n }, a); + b && (c2 = "path"); + let R2 = a._inheritedClipPathId; + s && (m2 = M("rect", { x: e, y: t, width: r, height: n, fill: "transparent", stroke: "#ff5757", "stroke-width": 1, transform: B || void 0, "clip-path": R2 ? `url(#${R2})` : void 0 })); + let { backgroundClip: U, filter: P2 } = a, q = U === "text" ? `url(#satori_bct-${A})` : R2 ? `url(#${R2})` : a.clipPath ? Ea(A) : void 0, lA = ti({ left: e, top: t, width: r, height: n, path: b, id: A, matrix: B, currentClipPath: q, src: o }, a, I), DA = Q.map((nA) => M(c2, { x: e, y: t, width: r, height: n, fill: nA, d: b || void 0, transform: B || void 0, "clip-path": a.transform ? void 0 : q, style: P2 ? `filter:${P2}` : void 0, mask: a.transform ? void 0 : p })).join(""), RA = Ia({ id: A, left: e, top: t, width: r, height: n, currentClipPathId: R2, borderPath: b, borderType: c2 }, a), eA; + if (g2) { + let nA = (a.borderLeftWidth || 0) + (a.paddingLeft || 0), $ = (a.borderTopWidth || 0) + (a.paddingTop || 0), HA = (a.borderRightWidth || 0) + (a.paddingRight || 0), tA = (a.borderBottomWidth || 0) + (a.paddingBottom || 0), bA = r - nA - HA, mA = n - $ - tA, te = (a.objectPosition || "center").toString(), [FA, kA] = _l(te, bA, mA), xA = a.__naturalWidth || bA, J = a.__naturalHeight || mA, rA, fA = bA, QA = mA, K2 = e + nA, MA = t + $; + if (a.objectFit === "contain") { + let GA = bA / xA, OA = mA / J, TA = Math.min(GA, OA); + fA = xA * TA, QA = J * TA, K2 = e + nA + FA - fA * FA / bA, MA = t + $ + kA - QA * kA / mA, rA = "none"; + } else if (a.objectFit === "cover") { + let GA = bA / xA, OA = mA / J, TA = Math.max(GA, OA); + fA = xA * TA, QA = J * TA, K2 = e + nA + FA - fA * FA / bA, MA = t + $ + kA - QA * kA / mA, rA = "none"; + } else if (a.objectFit === "fill") + rA = "none"; + else if (a.objectFit === "scale-down") + if (xA && J) { + let GA = bA / xA, OA = mA / J, TA = Math.min(GA, OA); + if (TA >= 1) + fA = xA, QA = J, rA = "none", K2 = e + nA + FA - fA * FA / bA, MA = t + $ + kA - QA * kA / mA; else { - let hA = uA; - BA = fA * hA, W = q * hA, Y = e + rA + TA - BA * TA / FA, OA = t + iA + xA - W * xA / kA, oA = "none"; + let SA = TA; + fA = xA * SA, QA = J * SA, K2 = e + nA + FA - fA * FA / bA, MA = t + $ + kA - QA * kA / mA, rA = "none"; } } else { - let PA = FA / fA, WA = kA / q, uA = Math.min(PA, WA); - BA = fA * uA, W = q * uA, Y = e + rA + TA - BA * TA / FA, OA = t + iA + xA - W * xA / kA, oA = "none"; + let GA = bA / xA, OA = mA / J, TA = Math.min(GA, OA); + fA = xA * TA, QA = J * TA, K2 = e + nA + FA - fA * FA / bA, MA = t + $ + kA - QA * kA / mA, rA = "none"; } else - oA = "none"; - u2.transform && (sA = Ba({ id: A, borderRadiusPath: M, borderType: E, left: e, top: t, width: r, height: n }, u2)), MA += H("image", { x: Y, y: OA, width: BA, height: W, href: o, preserveAspectRatio: oA, transform: C || void 0, style: J ? `filter:${J}` : void 0, "clip-path": u2.transform ? sA ? `url(#${sA[1]})` : void 0 : `url(#satori_cp-${A})`, mask: u2.transform ? void 0 : F ? `url(#${F})` : `url(#satori_om-${A})` }); - } - if (dA) { - d2 += dA[0]; - let rA = dA[1]; - MA += Ar({ left: e, top: t, width: r, height: n, props: { transform: C || void 0, "clip-path": `url(#${rA})` } }, u2); - } - let vA = ia({ width: r, height: n, id: A, opacity: y, shape: H(E, { x: e, y: t, width: r, height: n, fill: "#fff", stroke: "#fff", "stroke-width": 0, d: M || void 0, transform: C || void 0, "clip-path": j, mask: v2 }) }, u2); - return (d2 ? H("defs", {}, d2) : "") + (vA ? vA[0] : "") + (sA ? sA[0] : "") + CA + (y !== 1 ? `` : "") + (u2.transform && (j || v2) ? `` : "") + (x2 || MA) + (u2.transform && (j || v2) ? "" : "") + (y !== 1 ? "" : "") + (vA ? vA[1] : "") + k; -} -var Da = String.raw; -var wa = Da`\p{Emoji}(?:\p{EMod}|[\u{E0020}-\u{E007E}]+\u{E007F}|\uFE0F?\u20E3?)`; -var Sa = () => new RegExp(Da`\p{RI}{2}|(?![#*\d](?!\uFE0F?\u20E3))${wa}(?:\u200D${wa})*`, "gu"); -var Xl = new RegExp(Sa(), "u"); -var di = { emoji: Xl, symbol: /\p{Symbol}/u, math: /\p{Math}/u }; -var hi = { "ja-JP": /\p{scx=Hira}|\p{scx=Kana}|\p{scx=Han}|[\u3000]|[\uFF00-\uFFEF]/u, "ko-KR": /\p{scx=Hangul}/u, "zh-CN": /\p{scx=Han}/u, "zh-TW": /\p{scx=Han}/u, "zh-HK": /\p{scx=Han}/u, "th-TH": /\p{scx=Thai}/u, "bn-IN": /\p{scx=Bengali}/u, "ar-AR": /\p{scx=Arabic}/u, "ta-IN": /\p{scx=Tamil}/u, "ml-IN": /\p{scx=Malayalam}/u, "he-IL": /\p{scx=Hebrew}/u, "te-IN": /\p{scx=Telugu}/u, devanagari: /\p{scx=Devanagari}/u, kannada: /\p{scx=Kannada}/u }; -var cn = Object.keys({ ...hi, ...di }); -function ba(A) { - return cn.includes(A); -} -function va(A, e) { - for (let r of Object.keys(di)) - if (di[r].test(A)) + rA = "none"; + a.transform && (eA = aa({ id: A, borderRadiusPath: b, borderType: c2, left: e, top: t, width: r, height: n }, a)), DA += M("image", { x: K2, y: MA, width: fA, height: QA, href: o, preserveAspectRatio: rA, transform: B || void 0, style: P2 ? `filter:${P2}` : void 0, "clip-path": a.transform ? eA ? `url(#${eA[1]})` : void 0 : `url(#satori_cp-${A})`, mask: a.transform ? void 0 : x2 ? `url(#${x2})` : `url(#satori_om-${A})` }); + } + if (RA) { + E += RA[0]; + let nA = RA[1]; + DA += Tt({ left: e, top: t, width: r, height: n, props: { transform: B || void 0, "clip-path": `url(#${nA})` } }, a); + } + let NA = js({ width: r, height: n, id: A, opacity: d2, shape: M(c2, { x: e, y: t, width: r, height: n, fill: "#fff", stroke: "#fff", "stroke-width": 0, d: b || void 0, transform: B || void 0, "clip-path": q, mask: p }) }, a); + return (E ? M("defs", {}, E) : "") + (NA ? NA[0] : "") + (eA ? eA[0] : "") + lA + (d2 !== 1 ? `` : "") + (a.transform && (q || p) ? `` : "") + (D || DA) + (a.transform && (q || p) ? "" : "") + (d2 !== 1 ? "" : "") + (NA ? NA[1] : "") + m2; +} +var Ca = String.raw; +var Qa = Ca`\p{Emoji}(?:\p{EMod}|[\u{E0020}-\u{E007E}]+\u{E007F}|\uFE0F?\u20E3?)`; +var da = () => new RegExp(Ca`\p{RI}{2}|(?![#*\d](?!\uFE0F?\u20E3))${Qa}(?:\u200D${Qa})*`, "gu"); +var Jl = new RegExp(da(), "u"); +var ni = { emoji: Jl, symbol: /\p{Symbol}/u, math: /\p{Math}/u }; +var ii = { "ja-JP": /\p{scx=Hira}|\p{scx=Kana}|\p{scx=Han}|[\u3000]|[\uFF00-\uFFEF]/u, "ko-KR": /\p{scx=Hangul}/u, "zh-CN": /\p{scx=Han}/u, "zh-TW": /\p{scx=Han}/u, "zh-HK": /\p{scx=Han}/u, "th-TH": /\p{scx=Thai}/u, "bn-IN": /\p{scx=Bengali}/u, "ar-AR": /\p{scx=Arabic}/u, "ta-IN": /\p{scx=Tamil}/u, "ml-IN": /\p{scx=Malayalam}/u, "he-IL": /\p{scx=Hebrew}/u, "te-IN": /\p{scx=Telugu}/u, devanagari: /\p{scx=Devanagari}/u, kannada: /\p{scx=Kannada}/u }; +var rn = Object.keys({ ...ii, ...ni }); +function ha(A) { + return rn.includes(A); +} +function pa(A, e) { + for (let r of Object.keys(ni)) + if (ni[r].test(A)) return [r]; - let t = Object.keys(hi).filter((r) => hi[r].test(A)); + let t = Object.keys(ii).filter((r) => ii[r].test(A)); if (t.length === 0) return ["unknown"]; if (e) { @@ -19564,78 +18619,78 @@ function va(A, e) { } return t; } -function ka(A) { +function ma(A) { if (A) - return cn.find((e) => e.toLowerCase().startsWith(A.toLowerCase())); + return rn.find((e) => e.toLowerCase().startsWith(A.toLowerCase())); } -async function* rr(A, e) { - var fA; - let t = await rt(), { id: r, inheritedStyle: n, parent: i, font: o, debug: a, locale: u2, embedFont: l2 = true, graphemeImages: I, canLoadAdditionalAssets: E, getTwStyles: C } = e; +async function* Jt(A, e) { + var xA; + let t = await Ye(), { id: r, inheritedStyle: n, parent: i, font: o, debug: s, locale: a, embedFont: I = true, graphemeImages: g2, canLoadAdditionalAssets: c2, getTwStyles: B } = e; if (A === null || typeof A > "u") return yield, yield, ""; - if (!Rt(A) || ds(A.type)) { - let q; - if (!Rt(A)) - q = ci(String(A), e), yield (await q.next()).value; + if (!Et(A) || Is(A.type)) { + let J; + if (!Et(A)) + J = jn(String(A), e), yield (await J.next()).value; else { - if (Cs(A.type)) + if (gs(A.type)) throw new Error("Class component is not supported."); - let BA; - Tn(A.type) ? BA = A.type.render : BA = A.type, q = rr(await BA(A.props), e), yield (await q.next()).value; + let fA; + Rn(A.type) ? fA = A.type.render : fA = A.type, J = Jt(await fA(A.props), e), yield (await J.next()).value; } - await q.next(); - let oA = yield; - return (await q.next(oA)).value; + await J.next(); + let rA = yield; + return (await J.next(rA)).value; } - let { type: d2, props: p } = A, y = d2; - if (p && hs(p)) + let { type: E, props: Q } = A, d2 = E; + if (Q && us(Q)) throw new Error("dangerouslySetInnerHTML property is not supported. See documentation for more information https://github.com/vercel/satori#jsx."); - let { style: k, children: x2, tw: F, lang: b = u2 } = p || {}, v2 = ka(b); - if (F) { - let q = C(F, k); - k = Object.assign(q, k); - } - let M = t.Node.create(); - i.insertChild(M, i.getChildCount()); - let [L, O] = await si(M, y, n, k, p), J = L.transform === n.transform; - if (J || (L.transform.__parent = n.transform), (L.overflow === "hidden" || L.clipPath && L.clipPath !== "none") && (O._inheritedClipPathId = `satori_cp-${r}`, O._inheritedMaskId = `satori_om-${r}`), L.maskImage && (O._inheritedMaskId = `satori_mi-${r}`), L.backgroundClip === "text") { - let q = { value: "" }; - O._inheritedBackgroundClipTextPath = q, L._inheritedBackgroundClipTextPath = q, L.backgroundImage && (O._inheritedBackgroundClipTextHasBackground = "true", L._inheritedBackgroundClipTextHasBackground = "true"); - } - let j = ps(x2), CA = [], MA = 0, dA = []; - for (let q of j) { - let oA = rr(q, { id: r + "-" + MA++, parentStyle: L, inheritedStyle: O, isInheritingTransform: true, parent: M, font: o, embedFont: l2, debug: a, graphemeImages: I, canLoadAdditionalAssets: E, locale: v2, getTwStyles: C, onNodeDetected: e.onNodeDetected }); - E ? dA.push(...(await oA.next()).value || []) : await oA.next(), CA.push(oA); - } - yield dA; - for (let q of CA) - await q.next(); - let [sA, vA] = yield, { left: rA, top: iA, width: wA, height: aA } = M.getComputedLayout(); - rA += sA, iA += vA; - let FA = "", kA = "", te = "", { children: TA, ...xA } = p; - if ((fA = e.onNodeDetected) == null || fA.call(e, { left: rA, top: iA, width: wA, height: aA, type: y, props: xA, key: A.key, textContent: Rt(TA) ? void 0 : TA }), y === "img") { - let q = L.__src; - kA = await tr({ id: r, left: rA, top: iA, width: wA, height: aA, src: q, isInheritingTransform: J, debug: a }, L, O); - } else if (y === "svg") { - let q = L.color, oA = await Ks(A, q); - kA = await tr({ id: r, left: rA, top: iA, width: wA, height: aA, src: oA, isInheritingTransform: J, debug: a }, L, O); + let { style: m2, children: D, tw: x2, lang: y = a } = Q || {}, p = ma(y); + if (x2) { + let J = B(x2, m2); + m2 = Object.assign(J, m2); + } + let b = t.Node.create(); + i.insertChild(b, i.getChildCount()); + let [R2, U] = await Yn(b, d2, n, m2, Q), P2 = R2.transform === n.transform; + if (P2 || (R2.transform.__parent = n.transform), (R2.overflow === "hidden" || R2.clipPath && R2.clipPath !== "none") && (U._inheritedClipPathId = `satori_cp-${r}`, U._inheritedMaskId = `satori_om-${r}`), R2.maskImage && (U._inheritedMaskId = `satori_mi-${r}`), R2.backgroundClip === "text") { + let J = { value: "" }; + U._inheritedBackgroundClipTextPath = J, R2._inheritedBackgroundClipTextPath = J, R2.backgroundImage && (U._inheritedBackgroundClipTextHasBackground = "true", R2._inheritedBackgroundClipTextHasBackground = "true"); + } + let q = ls(D), lA = [], DA = 0, RA = []; + for (let J of q) { + let rA = Jt(J, { id: r + "-" + DA++, parentStyle: R2, inheritedStyle: U, isInheritingTransform: true, parent: b, font: o, embedFont: I, debug: s, graphemeImages: g2, canLoadAdditionalAssets: c2, locale: p, getTwStyles: B, onNodeDetected: e.onNodeDetected }); + c2 ? RA.push(...(await rA.next()).value || []) : await rA.next(), lA.push(rA); + } + yield RA; + for (let J of lA) + await J.next(); + let [eA, NA] = yield, { left: nA, top: $, width: HA, height: tA } = b.getComputedLayout(); + nA += eA, $ += NA; + let bA = "", mA = "", te = "", { children: FA, ...kA } = Q; + if ((xA = e.onNodeDetected) == null || xA.call(e, { left: nA, top: $, width: HA, height: tA, type: d2, props: kA, key: A.key, textContent: Et(FA) ? void 0 : FA }), d2 === "img") { + let J = R2.__src; + mA = await _t({ id: r, left: nA, top: $, width: HA, height: tA, src: J, isInheritingTransform: P2, debug: s }, R2, U); + } else if (d2 === "svg") { + let J = R2.color, rA = await Hs(A, J); + mA = await _t({ id: r, left: nA, top: $, width: HA, height: tA, src: rA, isInheritingTransform: P2, debug: s }, R2, U); } else { - let q = k == null ? void 0 : k.display; - if (y === "div" && x2 && typeof x2 != "string" && q !== "flex" && q !== "none" && q !== "contents") + let J = m2 == null ? void 0 : m2.display; + if (d2 === "div" && D && typeof D != "string" && J !== "flex" && J !== "none" && J !== "contents") throw new Error('Expected
to have explicit "display: flex", "display: contents", or "display: none" if it has more than one child node.'); - kA = await tr({ id: r, left: rA, top: iA, width: wA, height: aA, isInheritingTransform: J, debug: a }, L, O); + mA = await _t({ id: r, left: nA, top: $, width: HA, height: tA, isInheritingTransform: P2, debug: s }, R2, U); } - for (let q of CA) - FA += (await q.next([rA, iA])).value; - return L._inheritedBackgroundClipTextPath && (te += H("clipPath", { id: `satori_bct-${r}`, "clip-path": L._inheritedClipPathId ? `url(#${L._inheritedClipPathId})` : void 0 }, L._inheritedBackgroundClipTextPath.value)), te + kA + FA; + for (let J of lA) + bA += (await J.next([nA, $])).value; + return R2._inheritedBackgroundClipTextPath && (te += M("clipPath", { id: `satori_bct-${r}`, "clip-path": R2._inheritedClipPathId ? `url(#${R2._inheritedClipPathId})` : void 0 }, R2._inheritedBackgroundClipTextPath.value)), te + mA + bA; } -var xa = "unknown"; -function Vl(A) { +var ya = "unknown"; +function Kl(A) { let e = [], t = [0, 0], r = [0, 0], n = (i, o) => { - let a = i[0]; - for (let u2 = 1; u2 <= o; u2++) { - let l2 = u2 / o, I = zl(i, l2); - e.push({ from: a, to: I }), a = I; + let s = i[0]; + for (let a = 1; a <= o; a++) { + let I = a / o, g2 = Wl(i, I); + e.push({ from: s, to: g2 }), s = g2; } r = i[i.length - 1]; }; @@ -19661,7 +18716,7 @@ function Vl(A) { } return e; } -function zl(A, e) { +function Wl(A, e) { let t = A; for (; t.length > 1; ) { let r = []; @@ -19671,50 +18726,50 @@ function zl(A, e) { } return t[0]; } -function Zl(A, e) { +function Yl(A, e) { if (!e) return []; - let t = e.strokeWidth, r = e.underlineY - t * 0.25, n = e.underlineY + t * 2.5, i = Vl(A); + let t = e.strokeWidth, r = e.underlineY - t * 0.25, n = e.underlineY + t * 2.5, i = Kl(A); if (!i.length) return []; - let o = n - r, a = Math.max(12, Math.ceil(o / 0.25)), u2 = o / a, l2 = r + u2 / 2, I = /* @__PURE__ */ new Set(); - for (let b = 0; b < a; b++) { - let v2 = l2 + u2 * b, M = []; - for (let L of i) { - let [O, J] = L.from, [j, CA] = L.to; - if (J === CA) + let o = n - r, s = Math.max(12, Math.ceil(o / 0.25)), a = o / s, I = r + a / 2, g2 = /* @__PURE__ */ new Set(); + for (let y = 0; y < s; y++) { + let p = I + a * y, b = []; + for (let R2 of i) { + let [U, P2] = R2.from, [q, lA] = R2.to; + if (P2 === lA) continue; - let MA = Math.min(J, CA), dA = Math.max(J, CA); - if (v2 < MA || v2 >= dA) + let DA = Math.min(P2, lA), RA = Math.max(P2, lA); + if (p < DA || p >= RA) continue; - let sA = (v2 - J) / (CA - J), vA = O + (j - O) * sA; - M.push(vA); + let eA = (p - P2) / (lA - P2), NA = U + (q - U) * eA; + b.push(NA); } - if (M.length) { - M.sort((L, O) => L - O); - for (let L = 0; L < M.length - 1; L += 2) { - let O = Math.min(M[L], M[L + 1]), J = Math.max(M[L], M[L + 1]), j = Math.floor(O), CA = Math.ceil(J); - for (let MA = j; MA < CA; MA++) - I.add(MA); + if (b.length) { + b.sort((R2, U) => R2 - U); + for (let R2 = 0; R2 < b.length - 1; R2 += 2) { + let U = Math.min(b[R2], b[R2 + 1]), P2 = Math.max(b[R2], b[R2 + 1]), q = Math.floor(U), lA = Math.ceil(P2); + for (let DA = q; DA < lA; DA++) + g2.add(DA); } } } - if (!I.size) + if (!g2.size) return []; - let E = Array.from(I.values()).sort((b, v2) => b - v2), C = [], d2 = E[0], p = E[0]; - for (let b = 1; b < E.length; b++) { - let v2 = E[b]; - v2 > p + 1 && (C.push([d2, p + 1]), d2 = v2), p = v2; + let c2 = Array.from(g2.values()).sort((y, p) => y - p), B = [], E = c2[0], Q = c2[0]; + for (let y = 1; y < c2.length; y++) { + let p = c2[y]; + p > Q + 1 && (B.push([E, Q + 1]), E = p), Q = p; } - C.push([d2, p + 1]); - let y = [], k = t * 0.6, x2 = C[0][0], F = C[C.length - 1][1]; - for (let [b, v2] of C) { - let M = Math.min(b, x2) - k, L = Math.max(v2, F) + k; - y.push({ x1: M, x2: L, y1: r, y2: n }); + B.push([E, Q + 1]); + let d2 = [], m2 = t * 0.6, D = B[0][0], x2 = B[B.length - 1][1]; + for (let [y, p] of B) { + let b = Math.min(y, D) - m2, R2 = Math.max(p, x2) + m2; + d2.push({ x1: b, x2: R2, y1: r, y2: n }); } - return y; + return d2; } -function jl(A, e, [t, r], [n, i]) { +function ql(A, e, [t, r], [n, i]) { if (t !== n) return t ? !n || t === A ? -1 : n === A ? 1 : A === 400 && t === 500 || A === 500 && t === 400 ? -1 : A === 400 && n === 500 || A === 500 && n === 400 ? 1 : A < 400 ? t < A && n < A ? n - t : t < A ? -1 : n < A ? 1 : t - n : A < t && A < n ? t - n : A < t ? -1 : A < n ? 1 : n - t : 1; if (r !== i) { @@ -19725,8 +18780,8 @@ function jl(A, e, [t, r], [n, i]) { } return -1; } -var pi = /* @__PURE__ */ new WeakMap(); -var ir = class { +var oi = /* @__PURE__ */ new WeakMap(); +var Wt = class { constructor(e) { this.fonts = /* @__PURE__ */ new Map(); this.addFonts(e); @@ -19737,113 +18792,113 @@ var ir = class { t === "normal" && (t = 400), t === "bold" && (t = 700), typeof t == "string" && (t = Number.parseInt(t, 10)); let n = [...this.fonts.get(e)], i = n[0]; for (let o = 1; o < n.length; o++) { - let [, a, u2] = i, [, l2, I] = n[o]; - jl(t, r, [a, u2], [l2, I]) > 0 && (i = n[o]); + let [, s, a] = i, [, I, g2] = n[o]; + ql(t, r, [s, a], [I, g2]) > 0 && (i = n[o]); } return i[0]; } addFonts(e) { for (let t of e) { let { name: r, data: n, lang: i } = t; - if (i && !ba(i)) - throw new Error(`Invalid value for props \`lang\`: "${i}". The value must be one of the following: ${cn.join(", ")}.`); - let o = i ?? xa, a; - if (pi.has(n)) - a = pi.get(n); + if (i && !ha(i)) + throw new Error(`Invalid value for props \`lang\`: "${i}". The value must be one of the following: ${rn.join(", ")}.`); + let o = i ?? ya, s; + if (oi.has(n)) + s = oi.get(n); else { - a = opentype_module_default.parse("buffer" in n ? n.buffer.slice(n.byteOffset, n.byteOffset + n.byteLength) : n, { lowMemory: true }); - let l2 = a.charToGlyphIndex; - a.charToGlyphIndex = (I) => { - let E = l2.call(a, I); - return E === 0 && a._trackBrokenChars && a._trackBrokenChars.push(I), E; - }, pi.set(n, a); + s = opentype_module_default.parse("buffer" in n ? n.buffer.slice(n.byteOffset, n.byteOffset + n.byteLength) : n, { lowMemory: true }); + let I = s.charToGlyphIndex; + s.charToGlyphIndex = (g2) => { + let c2 = I.call(s, g2); + return c2 === 0 && s._trackBrokenChars && s._trackBrokenChars.push(g2), c2; + }, oi.set(n, s); } - this.defaultFont || (this.defaultFont = a); - let u2 = `${r.toLowerCase()}_${o}`; - this.fonts.has(u2) || this.fonts.set(u2, []), this.fonts.get(u2).push([a, t.weight, t.style]); + this.defaultFont || (this.defaultFont = s); + let a = `${r.toLowerCase()}_${o}`; + this.fonts.has(a) || this.fonts.set(a, []), this.fonts.get(a).push([s, t.weight, t.style]); } } getEngine(e = 16, t = "normal", { fontFamily: r = "sans-serif", fontWeight: n = 400, fontStyle: i = "normal" }, o) { if (!this.fonts.size) throw new Error("No fonts are loaded. At least one font is required to calculate the layout."); - r = (Array.isArray(r) ? r : [r]).map((b) => b.toLowerCase()); - let a = []; - r.forEach((b) => { - let v2 = this.get({ name: b, weight: n, style: i }); - if (v2) { - a.push(v2); + r = (Array.isArray(r) ? r : [r]).map((y) => y.toLowerCase()); + let s = []; + r.forEach((y) => { + let p = this.get({ name: y, weight: n, style: i }); + if (p) { + s.push(p); return; } - let M = this.get({ name: b + "_unknown", weight: n, style: i }); - if (M) { - a.push(M); + let b = this.get({ name: y + "_unknown", weight: n, style: i }); + if (b) { + s.push(b); return; } }); - let u2 = Array.from(this.fonts.keys()), l2 = [], I = [], E = []; - for (let b of u2) - if (!r.includes(b)) + let a = Array.from(this.fonts.keys()), I = [], g2 = [], c2 = []; + for (let y of a) + if (!r.includes(y)) if (o) { - let v2 = $l(b); - v2 ? v2 === o ? l2.push(this.get({ name: b, weight: n, style: i })) : I.push(this.get({ name: b, weight: n, style: i })) : E.push(this.get({ name: b, weight: n, style: i })); + let p = Xl(y); + p ? p === o ? I.push(this.get({ name: y, weight: n, style: i })) : g2.push(this.get({ name: y, weight: n, style: i })) : c2.push(this.get({ name: y, weight: n, style: i })); } else - E.push(this.get({ name: b, weight: n, style: i })); - let C = /* @__PURE__ */ new Map(), d2 = (b, v2 = true) => { - let M = [...a, ...E, ...l2, ...v2 ? I : []]; - if (typeof b > "u") - return v2 ? M[M.length - 1] : void 0; - let L = b.charCodeAt(0); - if (C.has(L)) - return C.get(L); - let O = M.find((J, j) => !!J.charToGlyphIndex(b) || v2 && j === M.length - 1); - return O && C.set(L, O), O; - }, p = (b, v2 = false) => { - var L, O; - return ((v2 ? (O = (L = b.tables) == null ? void 0 : L.os2) == null ? void 0 : O.sTypoAscender : 0) || b.ascender) / b.unitsPerEm * e; - }, y = (b, v2 = false) => { - var L, O; - return ((v2 ? (O = (L = b.tables) == null ? void 0 : L.os2) == null ? void 0 : O.sTypoDescender : 0) || b.descender) / b.unitsPerEm * e; - }, k = (b, v2 = false) => { - var M, L; + c2.push(this.get({ name: y, weight: n, style: i })); + let B = /* @__PURE__ */ new Map(), E = (y, p = true) => { + let b = [...s, ...c2, ...I, ...p ? g2 : []]; + if (typeof y > "u") + return p ? b[b.length - 1] : void 0; + let R2 = y.charCodeAt(0); + if (B.has(R2)) + return B.get(R2); + let U = b.find((P2, q) => !!P2.charToGlyphIndex(y) || p && q === b.length - 1); + return U && B.set(R2, U), U; + }, Q = (y, p = false) => { + var R2, U; + return ((p ? (U = (R2 = y.tables) == null ? void 0 : R2.os2) == null ? void 0 : U.sTypoAscender : 0) || y.ascender) / y.unitsPerEm * e; + }, d2 = (y, p = false) => { + var R2, U; + return ((p ? (U = (R2 = y.tables) == null ? void 0 : R2.os2) == null ? void 0 : U.sTypoDescender : 0) || y.descender) / y.unitsPerEm * e; + }, m2 = (y, p = false) => { + var b, R2; if (typeof t == "string" && t === "normal") { - let O = (v2 ? (L = (M = b.tables) == null ? void 0 : M.os2) == null ? void 0 : L.sTypoLineGap : 0) || 0; - return p(b, v2) - y(b, v2) + O / b.unitsPerEm * e; + let U = (p ? (R2 = (b = y.tables) == null ? void 0 : b.os2) == null ? void 0 : R2.sTypoLineGap : 0) || 0; + return Q(y, p) - d2(y, p) + U / y.unitsPerEm * e; } else if (typeof t == "number") return e * t; - }, x2 = (b) => d2(b, false); - return { has: (b) => { - if (b === ` + }, D = (y) => E(y, false); + return { has: (y) => { + if (y === ` `) return true; - let v2 = x2(b); - return v2 ? (v2._trackBrokenChars = [], v2.stringToGlyphs(b), v2._trackBrokenChars.length ? (v2._trackBrokenChars = void 0, false) : true) : false; - }, baseline: (b, v2 = typeof b > "u" ? a[0] : d2(b)) => { - let M = p(v2), L = y(v2), O = M - L; - return M + (k(v2) - O) / 2; - }, height: (b, v2 = typeof b > "u" ? a[0] : d2(b)) => k(v2), measure: (b, v2) => this.measure(d2, b, v2), getSVG: (b, v2, M) => this.getSVG(d2, b, v2, M) }; + let p = D(y); + return p ? (p._trackBrokenChars = [], p.stringToGlyphs(y), p._trackBrokenChars.length ? (p._trackBrokenChars = void 0, false) : true) : false; + }, baseline: (y, p = typeof y > "u" ? s[0] : E(y)) => { + let b = Q(p), R2 = d2(p), U = b - R2; + return b + (m2(p) - U) / 2; + }, height: (y, p = typeof y > "u" ? s[0] : E(y)) => m2(p), measure: (y, p) => this.measure(E, y, p), getSVG: (y, p, b) => this.getSVG(E, y, p, b) }; } patchFontFallbackResolver(e, t) { let r = []; e._trackBrokenChars = r; let n = e.stringToGlyphs; return e.stringToGlyphs = (i, ...o) => { - let a = n.call(e, i, ...o); - for (let u2 = 0; u2 < a.length; u2++) - if (a[u2].unicode === void 0) { - let l2 = r.shift(), I = t(l2); - if (I !== e) { - let E = I.charToGlyph(l2), C = e.unitsPerEm / I.unitsPerEm, d2 = new opentype_module_default.Path(); - d2.unitsPerEm = e.unitsPerEm, d2.commands = E.path.commands.map((y) => { - let k = { ...y }; - for (let x2 in k) - typeof k[x2] == "number" && (k[x2] *= C); - return k; + let s = n.call(e, i, ...o); + for (let a = 0; a < s.length; a++) + if (s[a].unicode === void 0) { + let I = r.shift(), g2 = t(I); + if (g2 !== e) { + let c2 = g2.charToGlyph(I), B = e.unitsPerEm / g2.unitsPerEm, E = new opentype_module_default.Path(); + E.unitsPerEm = e.unitsPerEm, E.commands = c2.path.commands.map((d2) => { + let m2 = { ...d2 }; + for (let D in m2) + typeof m2[D] == "number" && (m2[D] *= B); + return m2; }); - let p = new opentype_module_default.Glyph({ ...E, advanceWidth: E.advanceWidth * C, xMin: E.xMin * C, xMax: E.xMax * C, yMin: E.yMin * C, yMax: E.yMax * C, path: d2 }); - a[u2] = p; + let Q = new opentype_module_default.Glyph({ ...c2, advanceWidth: c2.advanceWidth * B, xMin: c2.xMin * B, xMax: c2.xMax * B, yMin: c2.yMin * B, yMax: c2.yMax * B, path: E }); + s[a] = Q; } } - return a; + return s; }, () => { e.stringToGlyphs = n, e._trackBrokenChars = void 0; }; @@ -19856,192 +18911,192 @@ var ir = class { o(); } } - getSVG(e, t, { fontSize: r, top: n, left: i, letterSpacing: o = 0 }, a) { - let u2 = e(t), l2 = this.patchFontFallbackResolver(u2, e); + getSVG(e, t, { fontSize: r, top: n, left: i, letterSpacing: o = 0 }, s) { + let a = e(t), I = this.patchFontFallbackResolver(a, e); try { if (r === 0) return { path: "", boxes: [] }; - let I = new opentype_module_default.Path(), E = [], C = { letterSpacing: o / r }, d2 = /* @__PURE__ */ new WeakMap(); - return u2.forEachGlyph(t.replace(/\n/g, ""), i, n, r, C, function(p, y, k, x2) { - let F; - if (!d2.has(p)) - F = p.getPath(y, k, x2, C), d2.set(p, [y, k, F]); + let g2 = new opentype_module_default.Path(), c2 = [], B = { letterSpacing: o / r }, E = /* @__PURE__ */ new WeakMap(); + return a.forEachGlyph(t.replace(/\n/g, ""), i, n, r, B, function(Q, d2, m2, D) { + let x2; + if (!E.has(Q)) + x2 = Q.getPath(d2, m2, D, B), E.set(Q, [d2, m2, x2]); else { - let [v2, M, L] = d2.get(p); - F = new opentype_module_default.Path(), F.commands = L.commands.map((O) => { - let J = { ...O }; - for (let j in J) - typeof J[j] == "number" && ((j === "x" || j === "x1" || j === "x2") && (J[j] += y - v2), (j === "y" || j === "y1" || j === "y2") && (J[j] += k - M)); - return J; + let [p, b, R2] = E.get(Q); + x2 = new opentype_module_default.Path(), x2.commands = R2.commands.map((U) => { + let P2 = { ...U }; + for (let q in P2) + typeof P2[q] == "number" && ((q === "x" || q === "x1" || q === "x2") && (P2[q] += d2 - p), (q === "y" || q === "y1" || q === "y2") && (P2[q] += m2 - b)); + return P2; }); } - let b = a ? Zl(F.commands, a) : []; - b.length && E.push(...b), I.extend(F); - }), { path: I.toPathData(1), boxes: E }; + let y = s ? Yl(x2.commands, s) : []; + y.length && c2.push(...y), g2.extend(x2); + }), { path: g2.toPathData(1), boxes: c2 }; } finally { - l2(); + I(); } } }; -function $l(A) { +function Xl(A) { let e = A.split("_"), t = e[e.length - 1]; - return t === xa ? void 0 : t; + return t === ya ? void 0 : t; } -function mi({ width: A, height: e, content: t }) { - return H("svg", { width: A, height: e, viewBox: `0 0 ${A} ${e}`, xmlns: "http://www.w3.org/2000/svg" }, t); +function si({ width: A, height: e, content: t }) { + return M("svg", { width: A, height: e, viewBox: `0 0 ${A} ${e}`, xmlns: "http://www.w3.org/2000/svg" }, t); } -var gI = CI(Tu()); -var TC = ["ios", "android", "windows", "macos", "web"]; -function _u(A) { - return TC.includes(A); +var tu = fu(FI()); +var LC = ["ios", "android", "windows", "macos", "web"]; +function LI(A) { + return LC.includes(A); } -var PC = ["portrait", "landscape"]; -function Ju(A) { - return PC.includes(A); +var GC2 = ["portrait", "landscape"]; +function GI(A) { + return GC2.includes(A); } -var Pu; +var MI; (function(A) { A.fontSize = "fontSize", A.lineHeight = "lineHeight"; -})(Pu || (Pu = {})); -var QA; +})(MI || (MI = {})); +var aA; (function(A) { A.rem = "rem", A.em = "em", A.px = "px", A.percent = "%", A.vw = "vw", A.vh = "vh", A.none = ""; -})(QA || (QA = {})); -function Vo(A) { +})(aA || (aA = {})); +function Mo(A) { return typeof A == "string"; } -function zo(A) { +function Lo(A) { return typeof A == "object"; } -var Zo; -function R2(A) { +var Go; +function w2(A) { return { kind: "complete", style: A }; } -function VA(A, e = {}) { +function LA(A, e = {}) { let { fractions: t } = e; if (t && A.includes("/")) { - let [i = "", o = ""] = A.split("/", 2), a = VA(i), u2 = VA(o); - return !a || !u2 ? null : [a[0] / u2[0], u2[1]]; + let [i = "", o = ""] = A.split("/", 2), s = LA(i), a = LA(o); + return !s || !a ? null : [s[0] / a[0], a[1]]; } let r = parseFloat(A); if (Number.isNaN(r)) return null; let n = A.match(/(([a-z]{2,}|%))$/); if (!n) - return [r, QA.none]; + return [r, aA.none]; switch (n == null ? void 0 : n[1]) { case "rem": - return [r, QA.rem]; + return [r, aA.rem]; case "px": - return [r, QA.px]; + return [r, aA.px]; case "em": - return [r, QA.em]; + return [r, aA.em]; case "%": - return [r, QA.percent]; + return [r, aA.percent]; case "vw": - return [r, QA.vw]; + return [r, aA.vw]; case "vh": - return [r, QA.vh]; + return [r, aA.vh]; default: return null; } } -function At(A, e, t = {}) { - let r = We(e, t); - return r === null ? null : R2({ [A]: r }); +function _e(A, e, t = {}) { + let r = Re(e, t); + return r === null ? null : w2({ [A]: r }); } -function Rn(A, e, t) { - let r = We(e); +function mn(A, e, t) { + let r = Re(e); return r !== null && (t[A] = r), t; } -function Ku(A, e) { - let t = We(e); +function HI(A, e) { + let t = Re(e); return t === null ? null : { [A]: t }; } -function We(A, e = {}) { +function Re(A, e = {}) { if (A === void 0) return null; - let t = VA(String(A), e); - return t ? gt(...t, e) : null; + let t = LA(String(A), e); + return t ? je(...t, e) : null; } -function gt(A, e, t = {}) { +function je(A, e, t = {}) { let { isNegative: r, device: n } = t; switch (e) { - case QA.rem: + case aA.rem: return A * 16 * (r ? -1 : 1); - case QA.px: + case aA.px: return A * (r ? -1 : 1); - case QA.percent: + case aA.percent: return `${r ? "-" : ""}${A}%`; - case QA.none: + case aA.none: return A * (r ? -1 : 1); - case QA.vw: - return n != null && n.windowDimensions ? n.windowDimensions.width * (A / 100) : (me("`vw` CSS unit requires configuration with `useDeviceContext()`"), null); - case QA.vh: - return n != null && n.windowDimensions ? n.windowDimensions.height * (A / 100) : (me("`vh` CSS unit requires configuration with `useDeviceContext()`"), null); + case aA.vw: + return n != null && n.windowDimensions ? n.windowDimensions.width * (A / 100) : (ZA("`vw` CSS unit requires configuration with `useDeviceContext()`"), null); + case aA.vh: + return n != null && n.windowDimensions ? n.windowDimensions.height * (A / 100) : (ZA("`vh` CSS unit requires configuration with `useDeviceContext()`"), null); default: return null; } } -function jo(A) { - let e = VA(A); +function Uo(A) { + let e = LA(A); if (!e) return null; let [t, r] = e; switch (r) { - case QA.rem: + case aA.rem: return t * 16; - case QA.px: + case aA.px: return t; default: return null; } } -var _C = { t: "Top", tr: "TopRight", tl: "TopLeft", b: "Bottom", br: "BottomRight", bl: "BottomLeft", l: "Left", r: "Right", x: "Horizontal", y: "Vertical" }; -function $o(A) { - return _C[A ?? ""] || "All"; +var UC = { t: "Top", tr: "TopRight", tl: "TopLeft", b: "Bottom", br: "BottomRight", bl: "BottomLeft", l: "Left", r: "Right", x: "Horizontal", y: "Vertical" }; +function Ho(A) { + return UC[A ?? ""] || "All"; } -function As(A) { +function Oo(A) { let e = "All"; - return [A.replace(/^-(t|b|r|l|tr|tl|br|bl)(-|$)/, (r, n) => (e = $o(n), "")), e]; + return [A.replace(/^-(t|b|r|l|tr|tl|br|bl)(-|$)/, (r, n) => (e = Ho(n), "")), e]; } -function mt(A, e = {}) { +function gt(A, e = {}) { if (A.includes("/")) { - let t = Wu(A, { ...e, fractions: true }); + let t = UI(A, { ...e, fractions: true }); if (t) return t; } - return A[0] === "[" && (A = A.slice(1, -1)), Wu(A, e); + return A[0] === "[" && (A = A.slice(1, -1)), UI(A, e); } -function Le(A, e, t = {}) { - let r = mt(e, t); - return r === null ? null : R2({ [A]: r }); +function ce(A, e, t = {}) { + let r = gt(e, t); + return r === null ? null : w2({ [A]: r }); } -function Wu(A, e = {}) { +function UI(A, e = {}) { if (A === "px") return 1; - let t = VA(A, e); + let t = LA(A, e); if (!t) return null; let [r, n] = t; - return e.fractions && (n = QA.percent, r *= 100), n === QA.none && (r = r / 4, n = QA.rem), gt(r, n, e); + return e.fractions && (n = aA.percent, r *= 100), n === aA.none && (r = r / 4, n = aA.rem), je(r, n, e); } -function JC(...A) { +function HC(...A) { console.warn(...A); } -function WC(...A) { +function OC(...A) { } -var me = typeof process > "u" || ((Zo = process == null ? void 0 : process.env) === null || Zo === void 0 ? void 0 : Zo.JEST_WORKER_ID) === void 0 ? JC : WC; -var KC = [["aspect-square", R2({ aspectRatio: 1 })], ["aspect-video", R2({ aspectRatio: 16 / 9 })], ["items-center", R2({ alignItems: "center" })], ["items-start", R2({ alignItems: "flex-start" })], ["items-end", R2({ alignItems: "flex-end" })], ["items-baseline", R2({ alignItems: "baseline" })], ["items-stretch", R2({ alignItems: "stretch" })], ["justify-start", R2({ justifyContent: "flex-start" })], ["justify-end", R2({ justifyContent: "flex-end" })], ["justify-center", R2({ justifyContent: "center" })], ["justify-between", R2({ justifyContent: "space-between" })], ["justify-around", R2({ justifyContent: "space-around" })], ["justify-evenly", R2({ justifyContent: "space-evenly" })], ["content-start", R2({ alignContent: "flex-start" })], ["content-end", R2({ alignContent: "flex-end" })], ["content-between", R2({ alignContent: "space-between" })], ["content-around", R2({ alignContent: "space-around" })], ["content-stretch", R2({ alignContent: "stretch" })], ["content-center", R2({ alignContent: "center" })], ["self-auto", R2({ alignSelf: "auto" })], ["self-start", R2({ alignSelf: "flex-start" })], ["self-end", R2({ alignSelf: "flex-end" })], ["self-center", R2({ alignSelf: "center" })], ["self-stretch", R2({ alignSelf: "stretch" })], ["self-baseline", R2({ alignSelf: "baseline" })], ["direction-inherit", R2({ direction: "inherit" })], ["direction-ltr", R2({ direction: "ltr" })], ["direction-rtl", R2({ direction: "rtl" })], ["hidden", R2({ display: "none" })], ["flex", R2({ display: "flex" })], ["flex-row", R2({ flexDirection: "row" })], ["flex-row-reverse", R2({ flexDirection: "row-reverse" })], ["flex-col", R2({ flexDirection: "column" })], ["flex-col-reverse", R2({ flexDirection: "column-reverse" })], ["flex-wrap", R2({ flexWrap: "wrap" })], ["flex-wrap-reverse", R2({ flexWrap: "wrap-reverse" })], ["flex-nowrap", R2({ flexWrap: "nowrap" })], ["flex-auto", R2({ flexGrow: 1, flexShrink: 1, flexBasis: "auto" })], ["flex-initial", R2({ flexGrow: 0, flexShrink: 1, flexBasis: "auto" })], ["flex-none", R2({ flexGrow: 0, flexShrink: 0, flexBasis: "auto" })], ["overflow-hidden", R2({ overflow: "hidden" })], ["overflow-visible", R2({ overflow: "visible" })], ["overflow-scroll", R2({ overflow: "scroll" })], ["absolute", R2({ position: "absolute" })], ["relative", R2({ position: "relative" })], ["italic", R2({ fontStyle: "italic" })], ["not-italic", R2({ fontStyle: "normal" })], ["oldstyle-nums", Gr("oldstyle-nums")], ["small-caps", Gr("small-caps")], ["lining-nums", Gr("lining-nums")], ["tabular-nums", Gr("tabular-nums")], ["proportional-nums", Gr("proportional-nums")], ["font-thin", R2({ fontWeight: "100" })], ["font-100", R2({ fontWeight: "100" })], ["font-extralight", R2({ fontWeight: "200" })], ["font-200", R2({ fontWeight: "200" })], ["font-light", R2({ fontWeight: "300" })], ["font-300", R2({ fontWeight: "300" })], ["font-normal", R2({ fontWeight: "normal" })], ["font-400", R2({ fontWeight: "400" })], ["font-medium", R2({ fontWeight: "500" })], ["font-500", R2({ fontWeight: "500" })], ["font-semibold", R2({ fontWeight: "600" })], ["font-600", R2({ fontWeight: "600" })], ["font-bold", R2({ fontWeight: "bold" })], ["font-700", R2({ fontWeight: "700" })], ["font-extrabold", R2({ fontWeight: "800" })], ["font-800", R2({ fontWeight: "800" })], ["font-black", R2({ fontWeight: "900" })], ["font-900", R2({ fontWeight: "900" })], ["include-font-padding", R2({ includeFontPadding: true })], ["remove-font-padding", R2({ includeFontPadding: false })], ["max-w-none", R2({ maxWidth: "99999%" })], ["text-left", R2({ textAlign: "left" })], ["text-center", R2({ textAlign: "center" })], ["text-right", R2({ textAlign: "right" })], ["text-justify", R2({ textAlign: "justify" })], ["text-auto", R2({ textAlign: "auto" })], ["underline", R2({ textDecorationLine: "underline" })], ["line-through", R2({ textDecorationLine: "line-through" })], ["no-underline", R2({ textDecorationLine: "none" })], ["uppercase", R2({ textTransform: "uppercase" })], ["lowercase", R2({ textTransform: "lowercase" })], ["capitalize", R2({ textTransform: "capitalize" })], ["normal-case", R2({ textTransform: "none" })], ["w-auto", R2({ width: "auto" })], ["h-auto", R2({ height: "auto" })], ["shadow-sm", R2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.025, elevation: 1 })], ["shadow", R2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.075, elevation: 2 })], ["shadow-md", R2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 3, shadowOpacity: 0.125, elevation: 3 })], ["shadow-lg", R2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.15, shadowRadius: 8, elevation: 8 })], ["shadow-xl", R2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.19, shadowRadius: 20, elevation: 12 })], ["shadow-2xl", R2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.25, shadowRadius: 30, elevation: 16 })], ["shadow-none", R2({ shadowOffset: { width: 0, height: 0 }, shadowColor: "#000", shadowRadius: 0, shadowOpacity: 0, elevation: 0 })]]; -var es = KC; -function Gr(A) { +var ZA = typeof process > "u" || ((Go = process == null ? void 0 : process.env) === null || Go === void 0 ? void 0 : Go.JEST_WORKER_ID) === void 0 ? HC : OC; +var TC = [["aspect-square", w2({ aspectRatio: 1 })], ["aspect-video", w2({ aspectRatio: 16 / 9 })], ["items-center", w2({ alignItems: "center" })], ["items-start", w2({ alignItems: "flex-start" })], ["items-end", w2({ alignItems: "flex-end" })], ["items-baseline", w2({ alignItems: "baseline" })], ["items-stretch", w2({ alignItems: "stretch" })], ["justify-start", w2({ justifyContent: "flex-start" })], ["justify-end", w2({ justifyContent: "flex-end" })], ["justify-center", w2({ justifyContent: "center" })], ["justify-between", w2({ justifyContent: "space-between" })], ["justify-around", w2({ justifyContent: "space-around" })], ["justify-evenly", w2({ justifyContent: "space-evenly" })], ["content-start", w2({ alignContent: "flex-start" })], ["content-end", w2({ alignContent: "flex-end" })], ["content-between", w2({ alignContent: "space-between" })], ["content-around", w2({ alignContent: "space-around" })], ["content-stretch", w2({ alignContent: "stretch" })], ["content-center", w2({ alignContent: "center" })], ["self-auto", w2({ alignSelf: "auto" })], ["self-start", w2({ alignSelf: "flex-start" })], ["self-end", w2({ alignSelf: "flex-end" })], ["self-center", w2({ alignSelf: "center" })], ["self-stretch", w2({ alignSelf: "stretch" })], ["self-baseline", w2({ alignSelf: "baseline" })], ["direction-inherit", w2({ direction: "inherit" })], ["direction-ltr", w2({ direction: "ltr" })], ["direction-rtl", w2({ direction: "rtl" })], ["hidden", w2({ display: "none" })], ["flex", w2({ display: "flex" })], ["flex-row", w2({ flexDirection: "row" })], ["flex-row-reverse", w2({ flexDirection: "row-reverse" })], ["flex-col", w2({ flexDirection: "column" })], ["flex-col-reverse", w2({ flexDirection: "column-reverse" })], ["flex-wrap", w2({ flexWrap: "wrap" })], ["flex-wrap-reverse", w2({ flexWrap: "wrap-reverse" })], ["flex-nowrap", w2({ flexWrap: "nowrap" })], ["flex-auto", w2({ flexGrow: 1, flexShrink: 1, flexBasis: "auto" })], ["flex-initial", w2({ flexGrow: 0, flexShrink: 1, flexBasis: "auto" })], ["flex-none", w2({ flexGrow: 0, flexShrink: 0, flexBasis: "auto" })], ["overflow-hidden", w2({ overflow: "hidden" })], ["overflow-visible", w2({ overflow: "visible" })], ["overflow-scroll", w2({ overflow: "scroll" })], ["absolute", w2({ position: "absolute" })], ["relative", w2({ position: "relative" })], ["italic", w2({ fontStyle: "italic" })], ["not-italic", w2({ fontStyle: "normal" })], ["oldstyle-nums", mr("oldstyle-nums")], ["small-caps", mr("small-caps")], ["lining-nums", mr("lining-nums")], ["tabular-nums", mr("tabular-nums")], ["proportional-nums", mr("proportional-nums")], ["font-thin", w2({ fontWeight: "100" })], ["font-100", w2({ fontWeight: "100" })], ["font-extralight", w2({ fontWeight: "200" })], ["font-200", w2({ fontWeight: "200" })], ["font-light", w2({ fontWeight: "300" })], ["font-300", w2({ fontWeight: "300" })], ["font-normal", w2({ fontWeight: "normal" })], ["font-400", w2({ fontWeight: "400" })], ["font-medium", w2({ fontWeight: "500" })], ["font-500", w2({ fontWeight: "500" })], ["font-semibold", w2({ fontWeight: "600" })], ["font-600", w2({ fontWeight: "600" })], ["font-bold", w2({ fontWeight: "bold" })], ["font-700", w2({ fontWeight: "700" })], ["font-extrabold", w2({ fontWeight: "800" })], ["font-800", w2({ fontWeight: "800" })], ["font-black", w2({ fontWeight: "900" })], ["font-900", w2({ fontWeight: "900" })], ["include-font-padding", w2({ includeFontPadding: true })], ["remove-font-padding", w2({ includeFontPadding: false })], ["max-w-none", w2({ maxWidth: "99999%" })], ["text-left", w2({ textAlign: "left" })], ["text-center", w2({ textAlign: "center" })], ["text-right", w2({ textAlign: "right" })], ["text-justify", w2({ textAlign: "justify" })], ["text-auto", w2({ textAlign: "auto" })], ["underline", w2({ textDecorationLine: "underline" })], ["line-through", w2({ textDecorationLine: "line-through" })], ["no-underline", w2({ textDecorationLine: "none" })], ["uppercase", w2({ textTransform: "uppercase" })], ["lowercase", w2({ textTransform: "lowercase" })], ["capitalize", w2({ textTransform: "capitalize" })], ["normal-case", w2({ textTransform: "none" })], ["w-auto", w2({ width: "auto" })], ["h-auto", w2({ height: "auto" })], ["shadow-sm", w2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.025, elevation: 1 })], ["shadow", w2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 1, shadowOpacity: 0.075, elevation: 2 })], ["shadow-md", w2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowRadius: 3, shadowOpacity: 0.125, elevation: 3 })], ["shadow-lg", w2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.15, shadowRadius: 8, elevation: 8 })], ["shadow-xl", w2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.19, shadowRadius: 20, elevation: 12 })], ["shadow-2xl", w2({ shadowOffset: { width: 1, height: 1 }, shadowColor: "#000", shadowOpacity: 0.25, shadowRadius: 30, elevation: 16 })], ["shadow-none", w2({ shadowOffset: { width: 0, height: 0 }, shadowColor: "#000", shadowRadius: 0, shadowOpacity: 0, elevation: 0 })]]; +var To = TC; +function mr(A) { return { kind: "dependent", complete(e) { (!e.fontVariant || !Array.isArray(e.fontVariant)) && (e.fontVariant = []), e.fontVariant.push(A); } }; } -var Ur = class { +var yr = class { constructor(e) { - this.ir = new Map(es), this.styles = /* @__PURE__ */ new Map(), this.prefixes = /* @__PURE__ */ new Map(), this.ir = new Map([...es, ...e ?? []]); + this.ir = new Map(To), this.styles = /* @__PURE__ */ new Map(), this.prefixes = /* @__PURE__ */ new Map(), this.ir = new Map([...To, ...e ?? []]); } getStyle(e) { return this.styles.get(e); @@ -20062,68 +19117,68 @@ var Ur = class { this.prefixes.set(e, t); } }; -function ts(A, e, t = {}) { +function Po(A, e, t = {}) { let r = e == null ? void 0 : e[A]; if (!r) - return Le("fontSize", A, t); + return ce("fontSize", A, t); if (typeof r == "string") - return At("fontSize", r); - let n = {}, [i, o] = r, a = Ku("fontSize", i); - if (a && (n = a), typeof o == "string") - return R2(Rn("lineHeight", Yu(o, n), n)); - let { lineHeight: u2, letterSpacing: l2 } = o; - return u2 && Rn("lineHeight", Yu(u2, n), n), l2 && Rn("letterSpacing", l2, n), R2(n); -} -function Yu(A, e) { - let t = VA(A); + return _e("fontSize", r); + let n = {}, [i, o] = r, s = HI("fontSize", i); + if (s && (n = s), typeof o == "string") + return w2(mn("lineHeight", OI(o, n), n)); + let { lineHeight: a, letterSpacing: I } = o; + return a && mn("lineHeight", OI(a, n), n), I && mn("letterSpacing", I, n), w2(n); +} +function OI(A, e) { + let t = LA(A); if (t) { let [r, n] = t; - if ((n === QA.none || n === QA.em) && typeof e.fontSize == "number") + if ((n === aA.none || n === aA.em) && typeof e.fontSize == "number") return e.fontSize * r; } return A; } -function rs(A, e) { +function _o(A, e) { var t; - let r = (t = e == null ? void 0 : e[A]) !== null && t !== void 0 ? t : A.startsWith("[") ? A.slice(1, -1) : A, n = VA(r); + let r = (t = e == null ? void 0 : e[A]) !== null && t !== void 0 ? t : A.startsWith("[") ? A.slice(1, -1) : A, n = LA(r); if (!n) return null; let [i, o] = n; - if (o === QA.none) - return { kind: "dependent", complete(u2) { - if (typeof u2.fontSize != "number") + if (o === aA.none) + return { kind: "dependent", complete(a) { + if (typeof a.fontSize != "number") return "relative line-height utilities require that font-size be set"; - u2.lineHeight = u2.fontSize * i; + a.lineHeight = a.fontSize * i; } }; - let a = gt(i, o); - return a !== null ? R2({ lineHeight: a }) : null; + let s = je(i, o); + return s !== null ? w2({ lineHeight: s }) : null; } -function ns(A, e, t, r, n) { +function Jo(A, e, t, r, n) { let i = ""; if (r[0] === "[") i = r.slice(1, -1); else { - let l2 = n == null ? void 0 : n[r]; - if (l2) - i = l2; + let I = n == null ? void 0 : n[r]; + if (I) + i = I; else { - let I = mt(r); - return I && typeof I == "number" ? qu(I, QA.px, e, A) : null; + let g2 = gt(r); + return g2 && typeof g2 == "number" ? TI(g2, aA.px, e, A) : null; } } if (i === "auto") - return Xu(e, A, "auto"); - let o = VA(i); + return PI(e, A, "auto"); + let o = LA(i); if (!o) return null; - let [a, u2] = o; - return t && (a = -a), qu(a, u2, e, A); + let [s, a] = o; + return t && (s = -s), TI(s, a, e, A); } -function qu(A, e, t, r) { - let n = gt(A, e); - return n === null ? null : Xu(t, r, n); +function TI(A, e, t, r) { + let n = je(A, e); + return n === null ? null : PI(t, r, n); } -function Xu(A, e, t) { +function PI(A, e, t) { switch (A) { case "All": return { kind: "complete", style: { [`${e}Top`]: t, [`${e}Right`]: t, [`${e}Bottom`]: t, [`${e}Left`]: t } }; @@ -20140,98 +19195,98 @@ function Xu(A, e, t) { return null; } } -function is(A) { +function Ko(A) { if (!A) return {}; let e = Object.entries(A).reduce((n, [i, o]) => { - let a = [0, 1 / 0, 0], u2 = typeof o == "string" ? { min: o } : o, l2 = u2.min ? jo(u2.min) : 0; - l2 === null ? me(`invalid screen config value: ${i}->min: ${u2.min}`) : a[0] = l2; - let I = u2.max ? jo(u2.max) : 1 / 0; - return I === null ? me(`invalid screen config value: ${i}->max: ${u2.max}`) : a[1] = I, n[i] = a, n; + let s = [0, 1 / 0, 0], a = typeof o == "string" ? { min: o } : o, I = a.min ? Uo(a.min) : 0; + I === null ? ZA(`invalid screen config value: ${i}->min: ${a.min}`) : s[0] = I; + let g2 = a.max ? Uo(a.max) : 1 / 0; + return g2 === null ? ZA(`invalid screen config value: ${i}->max: ${a.max}`) : s[1] = g2, n[i] = s, n; }, {}), t = Object.values(e); t.sort((n, i) => { - let [o, a] = n, [u2, l2] = i; - return a === 1 / 0 || l2 === 1 / 0 ? o - u2 : a - l2; + let [o, s] = n, [a, I] = i; + return s === 1 / 0 || I === 1 / 0 ? o - a : s - I; }); let r = 0; return t.forEach((n) => n[2] = r++), e; } -function os(A, e) { +function Wo(A, e) { let t = e == null ? void 0 : e[A]; if (!t) return null; if (typeof t == "string") - return R2({ fontFamily: t }); + return w2({ fontFamily: t }); let r = t[0]; - return r ? R2({ fontFamily: r }) : null; + return r ? w2({ fontFamily: r }) : null; } -function yt(A, e, t) { +function It(A, e, t) { if (!t) return null; let r; e.includes("/") && ([e = "", r] = e.split("/", 2)); let n = ""; - if (e.startsWith("[#") || e.startsWith("[rgb") ? n = e.slice(1, -1) : n = Zu(e, t), !n) + if (e.startsWith("[#") || e.startsWith("[rgb") ? n = e.slice(1, -1) : n = KI(e, t), !n) return null; if (r) { let i = Number(r); if (!Number.isNaN(i)) - return n = Vu(n, i / 100), R2({ [Nn[A].color]: n }); + return n = _I(n, i / 100), w2({ [yn[A].color]: n }); } return { kind: "dependent", complete(i) { - let o = Nn[A].opacity, a = i[o]; - typeof a == "number" && (n = Vu(n, a)), i[Nn[A].color] = n; + let o = yn[A].opacity, s = i[o]; + typeof s == "number" && (n = _I(n, s)), i[yn[A].color] = n; } }; } -function Hr(A, e) { +function wr(A, e) { let t = parseInt(e, 10); if (Number.isNaN(t)) return null; let r = t / 100; - return { kind: "complete", style: { [Nn[A].opacity]: r } }; + return { kind: "complete", style: { [yn[A].opacity]: r } }; } -function Vu(A, e) { - return A.startsWith("#") ? A = YC(A) : A.startsWith("rgb(") && (A = A.replace(/^rgb\(/, "rgba(").replace(/\)$/, ", 1)")), A.replace(/, ?\d*\.?(\d+)\)$/, `, ${e})`); +function _I(A, e) { + return A.startsWith("#") ? A = PC(A) : A.startsWith("rgb(") && (A = A.replace(/^rgb\(/, "rgba(").replace(/\)$/, ", 1)")), A.replace(/, ?\d*\.?(\d+)\)$/, `, ${e})`); } -function zu(A) { +function JI(A) { for (let e in A) e.startsWith("__opacity_") && delete A[e]; } -var Nn = { bg: { opacity: "__opacity_bg", color: "backgroundColor" }, text: { opacity: "__opacity_text", color: "color" }, border: { opacity: "__opacity_border", color: "borderColor" }, borderTop: { opacity: "__opacity_border", color: "borderTopColor" }, borderBottom: { opacity: "__opacity_border", color: "borderBottomColor" }, borderLeft: { opacity: "__opacity_border", color: "borderLeftColor" }, borderRight: { opacity: "__opacity_border", color: "borderRightColor" }, shadow: { opacity: "__opacity_shadow", color: "shadowColor" }, tint: { opacity: "__opacity_tint", color: "tintColor" } }; -function YC(A) { +var yn = { bg: { opacity: "__opacity_bg", color: "backgroundColor" }, text: { opacity: "__opacity_text", color: "color" }, border: { opacity: "__opacity_border", color: "borderColor" }, borderTop: { opacity: "__opacity_border", color: "borderTopColor" }, borderBottom: { opacity: "__opacity_border", color: "borderBottomColor" }, borderLeft: { opacity: "__opacity_border", color: "borderLeftColor" }, borderRight: { opacity: "__opacity_border", color: "borderRightColor" }, shadow: { opacity: "__opacity_shadow", color: "shadowColor" }, tint: { opacity: "__opacity_tint", color: "tintColor" } }; +function PC(A) { let e = A; - A = A.replace(qC, (o, a, u2, l2) => a + a + u2 + u2 + l2 + l2); - let t = XC.exec(A); + A = A.replace(_C, (o, s, a, I) => s + s + a + a + I + I); + let t = JC.exec(A); if (!t) - return me(`invalid config hex color value: ${e}`), "rgba(0, 0, 0, 1)"; + return ZA(`invalid config hex color value: ${e}`), "rgba(0, 0, 0, 1)"; let r = parseInt(t[1], 16), n = parseInt(t[2], 16), i = parseInt(t[3], 16); return `rgba(${r}, ${n}, ${i}, 1)`; } -function Zu(A, e) { +function KI(A, e) { let t = e[A]; - if (Vo(t)) + if (Mo(t)) return t; - if (zo(t) && Vo(t.DEFAULT)) + if (Lo(t) && Mo(t.DEFAULT)) return t.DEFAULT; let [r = "", ...n] = A.split("-"); for (; r !== A; ) { let i = e[r]; - if (zo(i)) - return Zu(n.join("-"), i); + if (Lo(i)) + return KI(n.join("-"), i); if (n.length === 0) return ""; r = `${r}-${n.shift()}`; } return ""; } -var qC = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; -var XC = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i; -function $u(A, e) { - let [t, r] = As(A); +var _C = /^#?([a-f\d])([a-f\d])([a-f\d])$/i; +var JC = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i; +function YI(A, e) { + let [t, r] = Oo(A); if (t.match(/^(-?(\d)+)?$/)) - return VC(t, r, e == null ? void 0 : e.borderWidth); + return KC(t, r, e == null ? void 0 : e.borderWidth); if (t = t.replace(/^-/, ""), ["dashed", "solid", "dotted"].includes(t)) - return R2({ borderStyle: t }); + return w2({ borderStyle: t }); let i = "border"; switch (r) { case "Bottom": @@ -20247,15 +19302,15 @@ function $u(A, e) { i = "borderRight"; break; } - let o = yt(i, t, e == null ? void 0 : e.borderColor); + let o = It(i, t, e == null ? void 0 : e.borderColor); if (o) return o; - let a = `border${r === "All" ? "" : r}Width`; + let s = `border${r === "All" ? "" : r}Width`; t = t.replace(/^-/, ""); - let u2 = t.slice(1, -1), l2 = Le(a, u2); - return typeof (l2 == null ? void 0 : l2.style[a]) != "number" ? null : l2; + let a = t.slice(1, -1), I = ce(s, a); + return typeof (I == null ? void 0 : I.style[s]) != "number" ? null : I; } -function VC(A, e, t) { +function KC(A, e, t) { if (!t) return null; A = A.replace(/^-/, ""); @@ -20263,20 +19318,20 @@ function VC(A, e, t) { if (n === void 0) return null; let i = `border${e === "All" ? "" : e}Width`; - return At(i, n); + return _e(i, n); } -function AI(A, e) { +function qI(A, e) { if (!e) return null; - let [t, r] = As(A); + let [t, r] = Oo(A); t = t.replace(/^-/, ""), t === "" && (t = "DEFAULT"); let n = `border${r === "All" ? "" : r}Radius`, i = e[t]; if (i) - return ju(At(n, i)); - let o = Le(n, t); - return typeof (o == null ? void 0 : o.style[n]) != "number" ? null : ju(o); + return WI(_e(n, i)); + let o = ce(n, t); + return typeof (o == null ? void 0 : o.style[n]) != "number" ? null : WI(o); } -function ju(A) { +function WI(A) { if ((A == null ? void 0 : A.kind) !== "complete") return A; let e = A.style.borderTopRadius; @@ -20288,80 +19343,80 @@ function ju(A) { let n = A.style.borderRightRadius; return n !== void 0 && (A.style.borderBottomRightRadius = n, A.style.borderTopRightRadius = n, delete A.style.borderRightRadius), A; } -function _t(A, e, t, r) { +function St(A, e, t, r) { let n = null; - A === "inset" && (e = e.replace(/^(x|y)-/, (a, u2) => (n = u2 === "x" ? "x" : "y", ""))); + A === "inset" && (e = e.replace(/^(x|y)-/, (s, a) => (n = a === "x" ? "x" : "y", ""))); let i = r == null ? void 0 : r[e]; if (i) { - let a = We(i, { isNegative: t }); - if (a !== null) - return eI(A, n, a); + let s = Re(i, { isNegative: t }); + if (s !== null) + return XI(A, n, s); } - let o = mt(e, { isNegative: t }); - return o !== null ? eI(A, n, o) : null; + let o = gt(e, { isNegative: t }); + return o !== null ? XI(A, n, o) : null; } -function eI(A, e, t) { +function XI(A, e, t) { if (A !== "inset") - return R2({ [A]: t }); + return w2({ [A]: t }); switch (e) { case null: - return R2({ top: t, left: t, right: t, bottom: t }); + return w2({ top: t, left: t, right: t, bottom: t }); case "y": - return R2({ top: t, bottom: t }); + return w2({ top: t, bottom: t }); case "x": - return R2({ left: t, right: t }); + return w2({ left: t, right: t }); } } -function Or(A, e, t) { +function Dr(A, e, t) { var r; e = e.replace(/^-/, ""); let n = e === "" ? "DEFAULT" : e, i = Number((r = t == null ? void 0 : t[n]) !== null && r !== void 0 ? r : e); - return Number.isNaN(i) ? null : R2({ [`flex${A}`]: i }); + return Number.isNaN(i) ? null : w2({ [`flex${A}`]: i }); } -function tI(A, e) { +function VI(A, e) { var t, r; if (A = (e == null ? void 0 : e[A]) || A, ["min-content", "revert", "unset"].includes(A)) return null; if (A.match(/^\d+(\.\d+)?$/)) - return R2({ flexGrow: Number(A), flexBasis: "0%" }); + return w2({ flexGrow: Number(A), flexBasis: "0%" }); let n = A.match(/^(\d+)\s+(\d+)$/); if (n) - return R2({ flexGrow: Number(n[1]), flexShrink: Number(n[2]) }); + return w2({ flexGrow: Number(n[1]), flexShrink: Number(n[2]) }); if (n = A.match(/^(\d+)\s+([^ ]+)$/), n) { - let i = We((t = n[2]) !== null && t !== void 0 ? t : ""); - return i ? R2({ flexGrow: Number(n[1]), flexBasis: i }) : null; + let i = Re((t = n[2]) !== null && t !== void 0 ? t : ""); + return i ? w2({ flexGrow: Number(n[1]), flexBasis: i }) : null; } if (n = A.match(/^(\d+)\s+(\d+)\s+(.+)$/), n) { - let i = We((r = n[3]) !== null && r !== void 0 ? r : ""); - return i ? R2({ flexGrow: Number(n[1]), flexShrink: Number(n[2]), flexBasis: i }) : null; + let i = Re((r = n[3]) !== null && r !== void 0 ? r : ""); + return i ? w2({ flexGrow: Number(n[1]), flexShrink: Number(n[2]), flexBasis: i }) : null; } return null; } -function ss(A, e, t = {}, r) { +function Yo(A, e, t = {}, r) { let n = r == null ? void 0 : r[e]; - return n !== void 0 ? At(A, n, t) : Le(A, e, t); + return n !== void 0 ? _e(A, n, t) : ce(A, e, t); } -function Tr(A, e, t = {}, r) { - let n = We(r == null ? void 0 : r[e], t); - return n ? R2({ [A]: n }) : (e === "screen" && (e = A.includes("Width") ? "100vw" : "100vh"), Le(A, e, t)); +function Sr(A, e, t = {}, r) { + let n = Re(r == null ? void 0 : r[e], t); + return n ? w2({ [A]: n }) : (e === "screen" && (e = A.includes("Width") ? "100vw" : "100vh"), ce(A, e, t)); } -function rI(A, e, t) { +function zI(A, e, t) { let r = t == null ? void 0 : t[A]; if (r) { - let n = VA(r, { isNegative: e }); + let n = LA(r, { isNegative: e }); if (!n) return null; let [i, o] = n; - if (o === QA.em) - return zC(i); - if (o === QA.percent) - return me("percentage-based letter-spacing configuration currently unsupported, switch to `em`s, or open an issue if you'd like to see support added."), null; - let a = gt(i, o, { isNegative: e }); - return a !== null ? R2({ letterSpacing: a }) : null; + if (o === aA.em) + return WC(i); + if (o === aA.percent) + return ZA("percentage-based letter-spacing configuration currently unsupported, switch to `em`s, or open an issue if you'd like to see support added."), null; + let s = je(i, o, { isNegative: e }); + return s !== null ? w2({ letterSpacing: s }) : null; } - return Le("letterSpacing", A, { isNegative: e }); + return ce("letterSpacing", A, { isNegative: e }); } -function zC(A) { +function WC(A) { return { kind: "dependent", complete(e) { let t = e.fontSize; if (typeof t != "number" || Number.isNaN(t)) @@ -20369,51 +19424,51 @@ function zC(A) { e.letterSpacing = Math.round((A * t + Number.EPSILON) * 100) / 100; } }; } -function nI(A, e) { +function ZI(A, e) { let t = e == null ? void 0 : e[A]; if (t) { - let n = VA(String(t)); + let n = LA(String(t)); if (n) - return R2({ opacity: n[0] }); + return w2({ opacity: n[0] }); } - let r = VA(A); - return r ? R2({ opacity: r[0] / 100 }) : null; + let r = LA(A); + return r ? w2({ opacity: r[0] / 100 }) : null; } -function iI(A) { +function jI(A) { let e = parseInt(A, 10); return Number.isNaN(e) ? null : { kind: "complete", style: { shadowOpacity: e / 100 } }; } -function oI(A) { +function $I(A) { if (A.includes("/")) { - let [t = "", r = ""] = A.split("/", 2), n = as(t), i = as(r); + let [t = "", r = ""] = A.split("/", 2), n = qo(t), i = qo(r); return n === null || i === null ? null : { kind: "complete", style: { shadowOffset: { width: n, height: i } } }; } - let e = as(A); + let e = qo(A); return e === null ? null : { kind: "complete", style: { shadowOffset: { width: e, height: e } } }; } -function as(A) { - let e = mt(A); +function qo(A) { + let e = gt(A); return typeof e == "number" ? e : null; } -var Jt = class { +var bt = class { constructor(e, t = {}, r, n, i) { - var o, a, u2, l2, I, E; + var o, s, a, I, g2, c2; this.config = t, this.cache = r, this.position = 0, this.isNull = false, this.isNegative = false, this.context = {}, this.context.device = n; - let C = e.trim().split(":"), d2 = []; - C.length === 1 ? this.string = e : (this.string = (o = C.pop()) !== null && o !== void 0 ? o : "", d2 = C), this.char = this.string[0]; - let p = is((a = this.config.theme) === null || a === void 0 ? void 0 : a.screens); - for (let y of d2) - if (p[y]) { - let k = (u2 = p[y]) === null || u2 === void 0 ? void 0 : u2[2]; - k !== void 0 && (this.order = ((l2 = this.order) !== null && l2 !== void 0 ? l2 : 0) + k); - let x2 = (I = n.windowDimensions) === null || I === void 0 ? void 0 : I.width; - if (x2) { - let [F, b] = (E = p[y]) !== null && E !== void 0 ? E : [0, 0]; - (x2 <= F || x2 > b) && (this.isNull = true); + let B = e.trim().split(":"), E = []; + B.length === 1 ? this.string = e : (this.string = (o = B.pop()) !== null && o !== void 0 ? o : "", E = B), this.char = this.string[0]; + let Q = Ko((s = this.config.theme) === null || s === void 0 ? void 0 : s.screens); + for (let d2 of E) + if (Q[d2]) { + let m2 = (a = Q[d2]) === null || a === void 0 ? void 0 : a[2]; + m2 !== void 0 && (this.order = ((I = this.order) !== null && I !== void 0 ? I : 0) + m2); + let D = (g2 = n.windowDimensions) === null || g2 === void 0 ? void 0 : g2.width; + if (D) { + let [x2, y] = (c2 = Q[d2]) !== null && c2 !== void 0 ? c2 : [0, 0]; + (D <= x2 || D > y) && (this.isNull = true); } else this.isNull = true; } else - _u(y) ? this.isNull = y !== i : Ju(y) ? n.windowDimensions ? (n.windowDimensions.width > n.windowDimensions.height ? "landscape" : "portrait") !== y ? this.isNull = true : this.incrementOrder() : this.isNull = true : y === "retina" ? n.pixelDensity === 2 ? this.incrementOrder() : this.isNull = true : y === "dark" ? n.colorScheme !== "dark" ? this.isNull = true : this.incrementOrder() : this.handlePossibleArbitraryBreakpointPrefix(y) || (this.isNull = true); + LI(d2) ? this.isNull = d2 !== i : GI(d2) ? n.windowDimensions ? (n.windowDimensions.width > n.windowDimensions.height ? "landscape" : "portrait") !== d2 ? this.isNull = true : this.incrementOrder() : this.isNull = true : d2 === "retina" ? n.pixelDensity === 2 ? this.incrementOrder() : this.isNull = true : d2 === "dark" ? n.colorScheme !== "dark" ? this.isNull = true : this.incrementOrder() : this.handlePossibleArbitraryBreakpointPrefix(d2) || (this.isNull = true); } parse() { if (this.isNull) @@ -20427,35 +19482,35 @@ var Jt = class { } parseUtility() { var e, t, r, n, i; - let o = this.config.theme, a = null; + let o = this.config.theme, s = null; switch (this.char) { case "m": case "p": { - let u2 = this.peekSlice(1, 3).match(/^(t|b|r|l|x|y)?-/); - if (u2) { - let l2 = this.char === "m" ? "margin" : "padding"; - this.advance(((t = (e = u2[0]) === null || e === void 0 ? void 0 : e.length) !== null && t !== void 0 ? t : 0) + 1); - let I = $o(u2[1]), E = ns(l2, I, this.isNegative, this.rest, (r = this.config.theme) === null || r === void 0 ? void 0 : r[l2]); - if (E) - return E; + let a = this.peekSlice(1, 3).match(/^(t|b|r|l|x|y)?-/); + if (a) { + let I = this.char === "m" ? "margin" : "padding"; + this.advance(((t = (e = a[0]) === null || e === void 0 ? void 0 : e.length) !== null && t !== void 0 ? t : 0) + 1); + let g2 = Ho(a[1]), c2 = Jo(I, g2, this.isNegative, this.rest, (r = this.config.theme) === null || r === void 0 ? void 0 : r[I]); + if (c2) + return c2; } } } - if (this.consumePeeked("h-") && (a = ss("height", this.rest, this.context, o == null ? void 0 : o.height), a) || this.consumePeeked("w-") && (a = ss("width", this.rest, this.context, o == null ? void 0 : o.width), a) || this.consumePeeked("min-w-") && (a = Tr("minWidth", this.rest, this.context, o == null ? void 0 : o.minWidth), a) || this.consumePeeked("min-h-") && (a = Tr("minHeight", this.rest, this.context, o == null ? void 0 : o.minHeight), a) || this.consumePeeked("max-w-") && (a = Tr("maxWidth", this.rest, this.context, o == null ? void 0 : o.maxWidth), a) || this.consumePeeked("max-h-") && (a = Tr("maxHeight", this.rest, this.context, o == null ? void 0 : o.maxHeight), a) || this.consumePeeked("leading-") && (a = rs(this.rest, o == null ? void 0 : o.lineHeight), a) || this.consumePeeked("text-") && (a = ts(this.rest, o == null ? void 0 : o.fontSize, this.context), a || (a = yt("text", this.rest, o == null ? void 0 : o.textColor), a) || this.consumePeeked("opacity-") && (a = Hr("text", this.rest), a)) || this.consumePeeked("font-") && (a = os(this.rest, o == null ? void 0 : o.fontFamily), a) || this.consumePeeked("aspect-") && (this.consumePeeked("ratio-") && me("`aspect-ratio-{ratio}` is deprecated, use `aspect-{ratio}` instead"), a = At("aspectRatio", this.rest, { fractions: true }), a) || this.consumePeeked("tint-") && (a = yt("tint", this.rest, o == null ? void 0 : o.colors), a) || this.consumePeeked("bg-") && (a = yt("bg", this.rest, o == null ? void 0 : o.backgroundColor), a || this.consumePeeked("opacity-") && (a = Hr("bg", this.rest), a)) || this.consumePeeked("border") && (a = $u(this.rest, o), a || this.consumePeeked("-opacity-") && (a = Hr("border", this.rest), a)) || this.consumePeeked("rounded") && (a = AI(this.rest, o == null ? void 0 : o.borderRadius), a) || this.consumePeeked("bottom-") && (a = _t("bottom", this.rest, this.isNegative, o == null ? void 0 : o.inset), a) || this.consumePeeked("top-") && (a = _t("top", this.rest, this.isNegative, o == null ? void 0 : o.inset), a) || this.consumePeeked("left-") && (a = _t("left", this.rest, this.isNegative, o == null ? void 0 : o.inset), a) || this.consumePeeked("right-") && (a = _t("right", this.rest, this.isNegative, o == null ? void 0 : o.inset), a) || this.consumePeeked("inset-") && (a = _t("inset", this.rest, this.isNegative, o == null ? void 0 : o.inset), a) || this.consumePeeked("flex-") && (this.consumePeeked("grow") ? a = Or("Grow", this.rest, o == null ? void 0 : o.flexGrow) : this.consumePeeked("shrink") ? a = Or("Shrink", this.rest, o == null ? void 0 : o.flexShrink) : a = tI(this.rest, o == null ? void 0 : o.flex), a) || this.consumePeeked("grow") && (a = Or("Grow", this.rest, o == null ? void 0 : o.flexGrow), a) || this.consumePeeked("shrink") && (a = Or("Shrink", this.rest, o == null ? void 0 : o.flexShrink), a) || this.consumePeeked("shadow-color-opacity-") && (a = Hr("shadow", this.rest), a) || this.consumePeeked("shadow-opacity-") && (a = iI(this.rest), a) || this.consumePeeked("shadow-offset-") && (a = oI(this.rest), a) || this.consumePeeked("shadow-radius-") && (a = Le("shadowRadius", this.rest), a) || this.consumePeeked("shadow-") && (a = yt("shadow", this.rest, o == null ? void 0 : o.colors), a)) - return a; + if (this.consumePeeked("h-") && (s = Yo("height", this.rest, this.context, o == null ? void 0 : o.height), s) || this.consumePeeked("w-") && (s = Yo("width", this.rest, this.context, o == null ? void 0 : o.width), s) || this.consumePeeked("min-w-") && (s = Sr("minWidth", this.rest, this.context, o == null ? void 0 : o.minWidth), s) || this.consumePeeked("min-h-") && (s = Sr("minHeight", this.rest, this.context, o == null ? void 0 : o.minHeight), s) || this.consumePeeked("max-w-") && (s = Sr("maxWidth", this.rest, this.context, o == null ? void 0 : o.maxWidth), s) || this.consumePeeked("max-h-") && (s = Sr("maxHeight", this.rest, this.context, o == null ? void 0 : o.maxHeight), s) || this.consumePeeked("leading-") && (s = _o(this.rest, o == null ? void 0 : o.lineHeight), s) || this.consumePeeked("text-") && (s = Po(this.rest, o == null ? void 0 : o.fontSize, this.context), s || (s = It("text", this.rest, o == null ? void 0 : o.textColor), s) || this.consumePeeked("opacity-") && (s = wr("text", this.rest), s)) || this.consumePeeked("font-") && (s = Wo(this.rest, o == null ? void 0 : o.fontFamily), s) || this.consumePeeked("aspect-") && (this.consumePeeked("ratio-") && ZA("`aspect-ratio-{ratio}` is deprecated, use `aspect-{ratio}` instead"), s = _e("aspectRatio", this.rest, { fractions: true }), s) || this.consumePeeked("tint-") && (s = It("tint", this.rest, o == null ? void 0 : o.colors), s) || this.consumePeeked("bg-") && (s = It("bg", this.rest, o == null ? void 0 : o.backgroundColor), s || this.consumePeeked("opacity-") && (s = wr("bg", this.rest), s)) || this.consumePeeked("border") && (s = YI(this.rest, o), s || this.consumePeeked("-opacity-") && (s = wr("border", this.rest), s)) || this.consumePeeked("rounded") && (s = qI(this.rest, o == null ? void 0 : o.borderRadius), s) || this.consumePeeked("bottom-") && (s = St("bottom", this.rest, this.isNegative, o == null ? void 0 : o.inset), s) || this.consumePeeked("top-") && (s = St("top", this.rest, this.isNegative, o == null ? void 0 : o.inset), s) || this.consumePeeked("left-") && (s = St("left", this.rest, this.isNegative, o == null ? void 0 : o.inset), s) || this.consumePeeked("right-") && (s = St("right", this.rest, this.isNegative, o == null ? void 0 : o.inset), s) || this.consumePeeked("inset-") && (s = St("inset", this.rest, this.isNegative, o == null ? void 0 : o.inset), s) || this.consumePeeked("flex-") && (this.consumePeeked("grow") ? s = Dr("Grow", this.rest, o == null ? void 0 : o.flexGrow) : this.consumePeeked("shrink") ? s = Dr("Shrink", this.rest, o == null ? void 0 : o.flexShrink) : s = VI(this.rest, o == null ? void 0 : o.flex), s) || this.consumePeeked("grow") && (s = Dr("Grow", this.rest, o == null ? void 0 : o.flexGrow), s) || this.consumePeeked("shrink") && (s = Dr("Shrink", this.rest, o == null ? void 0 : o.flexShrink), s) || this.consumePeeked("shadow-color-opacity-") && (s = wr("shadow", this.rest), s) || this.consumePeeked("shadow-opacity-") && (s = jI(this.rest), s) || this.consumePeeked("shadow-offset-") && (s = $I(this.rest), s) || this.consumePeeked("shadow-radius-") && (s = ce("shadowRadius", this.rest), s) || this.consumePeeked("shadow-") && (s = It("shadow", this.rest, o == null ? void 0 : o.colors), s)) + return s; if (this.consumePeeked("elevation-")) { - let u2 = parseInt(this.rest, 10); - if (!Number.isNaN(u2)) - return R2({ elevation: u2 }); + let a = parseInt(this.rest, 10); + if (!Number.isNaN(a)) + return w2({ elevation: a }); } - if (this.consumePeeked("opacity-") && (a = nI(this.rest, o == null ? void 0 : o.opacity), a) || this.consumePeeked("tracking-") && (a = rI(this.rest, this.isNegative, o == null ? void 0 : o.letterSpacing), a)) - return a; + if (this.consumePeeked("opacity-") && (s = ZI(this.rest, o == null ? void 0 : o.opacity), s) || this.consumePeeked("tracking-") && (s = zI(this.rest, this.isNegative, o == null ? void 0 : o.letterSpacing), s)) + return s; if (this.consumePeeked("z-")) { - let u2 = Number((i = (n = o == null ? void 0 : o.zIndex) === null || n === void 0 ? void 0 : n[this.rest]) !== null && i !== void 0 ? i : this.rest); - if (!Number.isNaN(u2)) - return R2({ zIndex: u2 }); + let a = Number((i = (n = o == null ? void 0 : o.zIndex) === null || n === void 0 ? void 0 : n[this.rest]) !== null && i !== void 0 ? i : this.rest); + if (!Number.isNaN(a)) + return w2({ zIndex: a }); } - return me(`\`${this.rest}\` unknown or invalid utility`), null; + return ZA(`\`${this.rest}\` unknown or invalid utility`), null; } handlePossibleArbitraryBreakpointPrefix(e) { var t; @@ -20466,11 +19521,11 @@ var Jt = class { return false; if (!(!((t = this.context.device) === null || t === void 0) && t.windowDimensions)) return this.isNull = true, true; - let n = this.context.device.windowDimensions, [, i = "", o = "", a = ""] = r, u2 = o === "w" ? n.width : n.height, l2 = VA(a, this.context); - if (l2 === null) + let n = this.context.device.windowDimensions, [, i = "", o = "", s = ""] = r, a = o === "w" ? n.width : n.height, I = LA(s, this.context); + if (I === null) return this.isNull = true, true; - let [I, E] = l2; - return E !== "px" && (this.isNull = true), (i === "min" ? u2 >= I : u2 <= I) ? this.incrementOrder() : this.isNull = true, true; + let [g2, c2] = I; + return c2 !== "px" && (this.isNull = true), (i === "min" ? a >= g2 : a <= g2) ? this.incrementOrder() : this.isNull = true, true; } advance(e = 1) { this.position += e, this.char = this.string[this.position]; @@ -20492,189 +19547,189 @@ var Jt = class { this.order = ((e = this.order) !== null && e !== void 0 ? e : 0) + 1; } }; -function sI(A) { +function Au(A) { let e = [], t = null; return A.forEach((r) => { if (typeof r == "string") - e = [...e, ...gs(r)]; + e = [...e, ...Xo(r)]; else if (Array.isArray(r)) - e = [...e, ...r.flatMap(gs)]; + e = [...e, ...r.flatMap(Xo)]; else if (typeof r == "object" && r !== null) for (let [n, i] of Object.entries(r)) - typeof i == "boolean" ? e = [...e, ...i ? gs(n) : []] : t ? t[n] = i : t = { [n]: i }; - }), [e.filter(Boolean).filter(ZC), t]; + typeof i == "boolean" ? e = [...e, ...i ? Xo(n) : []] : t ? t[n] = i : t = { [n]: i }; + }), [e.filter(Boolean).filter(YC), t]; } -function gs(A) { +function Xo(A) { return A.trim().split(/\s+/); } -function ZC(A, e, t) { +function YC(A, e, t) { return t.indexOf(A) === e; } -function aI(A) { +function eu(A) { var e; - return (e = A == null ? void 0 : A.reduce((t, r) => ({ ...t, ...jC(r.handler) }), {})) !== null && e !== void 0 ? e : {}; + return (e = A == null ? void 0 : A.reduce((t, r) => ({ ...t, ...qC(r.handler) }), {})) !== null && e !== void 0 ? e : {}; } -function jC(A) { +function qC(A) { let e = {}; return A({ addUtilities: (t) => { e = t; - }, ...$C }), e; + }, ...XC }), e; } -function Ke(A) { +function ve(A) { throw new Error(`tailwindcss plugin function argument object prop "${A}" not implemented`); } -var $C = { addComponents: Ke, addBase: Ke, addVariant: Ke, e: Ke, prefix: Ke, theme: Ke, variants: Ke, config: Ke, corePlugins: Ke, matchUtilities: Ke, postcss: null }; -function uI(A, e) { - let t = (0, gI.default)(Ad(A)), r = {}, n = aI(t.plugins), i = {}, o = Object.entries(n).map(([p, y]) => typeof y == "string" ? (i[p] = y, [p, { kind: "null" }]) : [p, R2(y)]).filter(([, p]) => p.kind !== "null"); - function a() { +var XC = { addComponents: ve, addBase: ve, addVariant: ve, e: ve, prefix: ve, theme: ve, variants: ve, config: ve, corePlugins: ve, matchUtilities: ve, postcss: null }; +function ru(A, e) { + let t = (0, tu.default)(VC(A)), r = {}, n = eu(t.plugins), i = {}, o = Object.entries(n).map(([Q, d2]) => typeof d2 == "string" ? (i[Q] = d2, [Q, { kind: "null" }]) : [Q, w2(d2)]).filter(([, Q]) => Q.kind !== "null"); + function s() { return [r.windowDimensions ? `w${r.windowDimensions.width}` : false, r.windowDimensions ? `h${r.windowDimensions.height}` : false, r.fontScale ? `fs${r.fontScale}` : false, r.colorScheme === "dark" ? "dark" : false, r.pixelDensity === 2 ? "retina" : false].filter(Boolean).join("--") || "default"; } - let u2 = a(), l2 = {}; - function I() { - let p = l2[u2]; - if (p) - return p; - let y = new Ur(o); - return l2[u2] = y, y; - } - function E(...p) { - let y = I(), k = {}, x2 = [], F = [], [b, v2] = sI(p), M = b.join(" "), L = y.getStyle(M); - if (L) - return { ...L, ...v2 || {} }; - for (let O of b) { - let J = y.getIr(O); - if (!J && O in i) { - let CA = E(i[O]); - y.setIr(O, R2(CA)), k = { ...k, ...CA }; + let a = s(), I = {}; + function g2() { + let Q = I[a]; + if (Q) + return Q; + let d2 = new yr(o); + return I[a] = d2, d2; + } + function c2(...Q) { + let d2 = g2(), m2 = {}, D = [], x2 = [], [y, p] = Au(Q), b = y.join(" "), R2 = d2.getStyle(b); + if (R2) + return { ...R2, ...p || {} }; + for (let U of y) { + let P2 = d2.getIr(U); + if (!P2 && U in i) { + let lA = c2(i[U]); + d2.setIr(U, w2(lA)), m2 = { ...m2, ...lA }; continue; } - switch (J = new Jt(O, t, y, r, e).parse(), J.kind) { + switch (P2 = new bt(U, t, d2, r, e).parse(), P2.kind) { case "complete": - k = { ...k, ...J.style }, y.setIr(O, J); + m2 = { ...m2, ...P2.style }, d2.setIr(U, P2); break; case "dependent": - x2.push(J); + D.push(P2); break; case "ordered": - F.push(J); + x2.push(P2); break; case "null": - y.setIr(O, J); + d2.setIr(U, P2); break; } } - if (F.length > 0) { - F.sort((O, J) => O.order - J.order); - for (let O of F) - switch (O.styleIr.kind) { + if (x2.length > 0) { + x2.sort((U, P2) => U.order - P2.order); + for (let U of x2) + switch (U.styleIr.kind) { case "complete": - k = { ...k, ...O.styleIr.style }; + m2 = { ...m2, ...U.styleIr.style }; break; case "dependent": - x2.push(O.styleIr); + D.push(U.styleIr); break; } } - if (x2.length > 0) { - for (let O of x2) { - let J = O.complete(k); - J && me(J); + if (D.length > 0) { + for (let U of D) { + let P2 = U.complete(m2); + P2 && ZA(P2); } - zu(k); + JI(m2); } - return M !== "" && y.setStyle(M, k), v2 && (k = { ...k, ...v2 }), k; + return b !== "" && d2.setStyle(b, m2), p && (m2 = { ...m2, ...p }), m2; } - function C(p) { - let y = E(p.split(/\s+/g).map((k) => k.replace(/^(bg|text|border)-/, "")).map((k) => `bg-${k}`).join(" ")); - return typeof y.backgroundColor == "string" ? y.backgroundColor : void 0; + function B(Q) { + let d2 = c2(Q.split(/\s+/g).map((m2) => m2.replace(/^(bg|text|border)-/, "")).map((m2) => `bg-${m2}`).join(" ")); + return typeof d2.backgroundColor == "string" ? d2.backgroundColor : void 0; } - let d2 = (p, ...y) => { - let k = ""; - return p.forEach((x2, F) => { - var b; - k += x2 + ((b = y[F]) !== null && b !== void 0 ? b : ""); - }), E(k); + let E = (Q, ...d2) => { + let m2 = ""; + return Q.forEach((D, x2) => { + var y; + m2 += D + ((y = d2[x2]) !== null && y !== void 0 ? y : ""); + }), c2(m2); }; - return d2.style = E, d2.color = C, d2.prefixMatch = (...p) => { - let y = p.sort().join(":"), k = I(), x2 = k.getPrefixMatch(y); - if (x2 !== void 0) - return x2; - let v2 = new Jt(`${y}:flex`, t, k, r, e).parse().kind !== "null"; - return k.setPrefixMatch(y, v2), v2; - }, d2.setWindowDimensions = (p) => { - r.windowDimensions = p, u2 = a(); - }, d2.setFontScale = (p) => { - r.fontScale = p, u2 = a(); - }, d2.setPixelDensity = (p) => { - r.pixelDensity = p, u2 = a(); - }, d2.setColorScheme = (p) => { - r.colorScheme = p, u2 = a(); - }, d2; -} -function Ad(A) { + return E.style = c2, E.color = B, E.prefixMatch = (...Q) => { + let d2 = Q.sort().join(":"), m2 = g2(), D = m2.getPrefixMatch(d2); + if (D !== void 0) + return D; + let p = new bt(`${d2}:flex`, t, m2, r, e).parse().kind !== "null"; + return m2.setPrefixMatch(d2, p), p; + }, E.setWindowDimensions = (Q) => { + r.windowDimensions = Q, a = s(); + }, E.setFontScale = (Q) => { + r.fontScale = Q, a = s(); + }, E.setPixelDensity = (Q) => { + r.pixelDensity = Q, a = s(); + }, E.setColorScheme = (Q) => { + r.colorScheme = Q, a = s(); + }, E; +} +function VC(A) { return { ...A, content: ["_no_warnings_please"] }; } -var td2 = { handler: ({ addUtilities: A }) => { +var ZC = { handler: ({ addUtilities: A }) => { A({ "shadow-sm": { boxShadow: "0 1px 2px 0 rgb(0 0 0 / 0.05)" }, shadow: { boxShadow: "0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1)" }, "shadow-md": { boxShadow: "0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)" }, "shadow-lg": { boxShadow: "0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1)" }, "shadow-xl": { boxShadow: "0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1)" }, "shadow-2xl": { boxShadow: "0 25px 50px -12px rgb(0 0 0 / 0.25)" }, "shadow-inner": { boxShadow: "inset 0 2px 4px 0 rgb(0 0 0 / 0.05)" }, "shadow-none": { boxShadow: "0 0 #0000" } }); } }; -function rd(A) { - return uI({ ...A, plugins: [...(A == null ? void 0 : A.plugins) ?? [], td2] }, "web"); +function jC(A) { + return ru({ ...A, plugins: [...(A == null ? void 0 : A.plugins) ?? [], ZC] }, "web"); } -var Mn; -function us({ width: A, height: e, config: t }) { - return Mn || (Mn = rd(t)), Mn.setWindowDimensions({ width: +A, height: +e }), Mn; +var wn; +function Vo({ width: A, height: e, config: t }) { + return wn || (wn = jC(t)), wn.setWindowDimensions({ width: +A, height: +e }), wn; } -var Is = /* @__PURE__ */ new WeakMap(); -async function lI(A, e) { - let t = await rt(); +var zo = /* @__PURE__ */ new WeakMap(); +async function iu(A, e) { + let t = await Ye(); if (!t || !t.Node) throw new Error("Satori is not initialized: expect `yoga` to be loaded, got " + t); e.fonts = e.fonts || []; let r; - Is.has(e.fonts) ? r = Is.get(e.fonts) : Is.set(e.fonts, r = new ir(e.fonts)); - let n = "width" in e ? e.width : void 0, i = "height" in e ? e.height : void 0, o = nd(t, e.pointScaleFactor); + zo.has(e.fonts) ? r = zo.get(e.fonts) : zo.set(e.fonts, r = new Wt(e.fonts)); + let n = "width" in e ? e.width : void 0, i = "height" in e ? e.height : void 0, o = $C(t, e.pointScaleFactor); n && o.setWidth(n), i && o.setHeight(i), o.setFlexDirection(t.FLEX_DIRECTION_ROW), o.setFlexWrap(t.WRAP_WRAP), o.setAlignContent(t.ALIGN_AUTO), o.setAlignItems(t.ALIGN_FLEX_START), o.setJustifyContent(t.JUSTIFY_FLEX_START), o.setOverflow(t.OVERFLOW_HIDDEN); - let a = { ...e.graphemeImages }, u2 = /* @__PURE__ */ new Set(); - _e.clear(), Xt.clear(), await Ws(A); - let l2 = rr(A, { id: "id", parentStyle: {}, inheritedStyle: { fontSize: 16, fontWeight: "normal", fontFamily: "serif", fontStyle: "normal", lineHeight: "normal", color: "black", opacity: 1, whiteSpace: "normal", _viewportWidth: n, _viewportHeight: i }, parent: o, font: r, embedFont: e.embedFont, debug: e.debug, graphemeImages: a, canLoadAdditionalAssets: !!e.loadAdditionalAsset, onNodeDetected: e.onNodeDetected, getTwStyles: (p, y) => { - let x2 = { ...us({ width: n, height: i, config: e.tailwindConfig })([p]) }; - return typeof x2.lineHeight == "number" && (x2.lineHeight = x2.lineHeight / (+x2.fontSize || y.fontSize || 16)), x2.shadowColor && x2.boxShadow && (x2.boxShadow = x2.boxShadow.replace(/rgba?\([^)]+\)/, x2.shadowColor)), x2; - } }), I = (await l2.next()).value; - if (e.loadAdditionalAsset && I.length) { - let p = id(I), y = [], k = {}; - await Promise.all(Object.entries(p).flatMap(([x2, F]) => F.map((b) => { - let v2 = `${x2}_${b}`; - return u2.has(v2) ? null : (u2.add(v2), e.loadAdditionalAsset(x2, b).then((M) => { - typeof M == "string" ? k[b] = M : M && (Array.isArray(M) ? y.push(...M) : y.push(M)); + let s = Object.assign(/* @__PURE__ */ Object.create(null), e.graphemeImages), a = /* @__PURE__ */ new Set(); + ke.clear(), Mt.clear(), await Us(A); + let I = Jt(A, { id: "id", parentStyle: {}, inheritedStyle: { fontSize: 16, fontWeight: "normal", fontFamily: "serif", fontStyle: "normal", lineHeight: "normal", color: "black", opacity: 1, whiteSpace: "normal", _viewportWidth: n, _viewportHeight: i }, parent: o, font: r, embedFont: e.embedFont, debug: e.debug, graphemeImages: s, canLoadAdditionalAssets: !!e.loadAdditionalAsset, onNodeDetected: e.onNodeDetected, getTwStyles: (Q, d2) => { + let D = { ...Vo({ width: n, height: i, config: e.tailwindConfig })([Q]) }; + return typeof D.lineHeight == "number" && (D.lineHeight = D.lineHeight / (+D.fontSize || d2.fontSize || 16)), D.shadowColor && D.boxShadow && (D.boxShadow = D.boxShadow.replace(/rgba?\([^)]+\)/, D.shadowColor)), D; + } }), g2 = (await I.next()).value; + if (e.loadAdditionalAsset && g2.length) { + let Q = Ad(g2), d2 = [], m2 = {}; + await Promise.all(Object.entries(Q).flatMap(([D, x2]) => x2.map((y) => { + let p = `${D}_${y}`; + return a.has(p) ? null : (a.add(p), e.loadAdditionalAsset(D, y).then((b) => { + typeof b == "string" ? m2[y] = b : b && (Array.isArray(b) ? d2.push(...b) : d2.push(b)); })); - }))), r.addFonts(y), Object.assign(a, k); + }))), r.addFonts(d2), Object.assign(s, m2); } - await l2.next(), o.calculateLayout(n, i, t.DIRECTION_LTR); - let E = (await l2.next([0, 0])).value, C = o.getComputedWidth(), d2 = o.getComputedHeight(); - return o.freeRecursive(), mi({ width: C, height: d2, content: E }); + await I.next(), o.calculateLayout(n, i, t.DIRECTION_LTR); + let c2 = (await I.next([0, 0])).value, B = o.getComputedWidth(), E = o.getComputedHeight(); + return o.freeRecursive(), si({ width: B, height: E, content: c2 }); } -function nd(A, e) { +function $C(A, e) { if (e) { let t = A.Config.create(); return t.setPointScaleFactor(e), A.Node.createWithConfig(t); } else return A.Node.create(); } -function id(A) { +function Ad(A) { let e = {}, t = {}; for (let { word: r, locale: n } of A) { - let i = va(r, n).join("|"); + let i = pa(r, n).join("|"); t[i] = t[i] || "", t[i] += r; } return Object.keys(t).forEach((r) => { - e[r] = e[r] || [], r === "emoji" ? e[r].push(...II(ge(t[r], "grapheme"))) : (e[r][0] = e[r][0] || "", e[r][0] += II(ge(t[r], "grapheme", r === "unknown" ? void 0 : r)).join("")); + e[r] = e[r] || [], r === "emoji" ? e[r].push(...nu(WA(t[r], "grapheme"))) : (e[r][0] = e[r][0] || "", e[r][0] += nu(WA(t[r], "grapheme", r === "unknown" ? void 0 : r)).join("")); }), e; } -function II(A) { +function nu(A) { return Array.from(new Set(A)); } -// node_modules/.pnpm/@resvg+resvg-wasm@2.4.0/node_modules/@resvg/resvg-wasm/index.mjs +// node_modules/.pnpm/@resvg+resvg-wasm@2.4.1/node_modules/@resvg/resvg-wasm/index.mjs var resvg_wasm_exports = {}; __export(resvg_wasm_exports, { Resvg: () => Resvg2, @@ -21362,7 +20417,7 @@ async function loadGoogleFont(font, text) { var detector = new FontDetector(); var assetCache = /* @__PURE__ */ new Map(); var loadDynamicAsset = ({ emoji }) => { - const fn2 = async (code, text) => { + const fn = async (code, text) => { if (code === "emoji") { return `data:image/svg+xml;base64,` + btoa(await (await loadEmoji(getIconCode(text), emoji)).text()); } @@ -21392,7 +20447,7 @@ var loadDynamicAsset = ({ emoji }) => { const cache = assetCache.get(key); if (cache) return cache; - const asset = await fn2(...args); + const asset = await fn(...args); assetCache.set(key, asset); return asset; }; @@ -21434,7 +20489,7 @@ async function render(satori2, resvg, sharp, opts, defaultFonts, element) { } // src/index.node.ts -var satori = lI.default || lI; +var satori = iu.default || iu; var fontData = fs2.readFileSync( fileURLToPath(new URL("./Geist-Regular.ttf", import.meta.url)) ); diff --git a/packages/next/src/compiled/@vercel/og/package.json b/packages/next/src/compiled/@vercel/og/package.json index 5ad2ea143028..708c1475fd0c 100644 --- a/packages/next/src/compiled/@vercel/og/package.json +++ b/packages/next/src/compiled/@vercel/og/package.json @@ -1,6 +1,6 @@ { "name": "@vercel/og", - "version": "0.11.1", + "version": "1.0.1", "license": "MPL-2.0", "type": "module", "main": "./index.node.js", diff --git a/packages/next/src/compiled/@vercel/og/resvg.wasm b/packages/next/src/compiled/@vercel/og/resvg.wasm index a41b05ea4ff3..6db69182cf29 100644 Binary files a/packages/next/src/compiled/@vercel/og/resvg.wasm and b/packages/next/src/compiled/@vercel/og/resvg.wasm differ diff --git a/packages/next/src/server/lib/router-utils/instrumentation-globals.external.ts b/packages/next/src/server/lib/router-utils/instrumentation-globals.external.ts index 9af0ab0dd73d..b0616a8c7d47 100644 --- a/packages/next/src/server/lib/router-utils/instrumentation-globals.external.ts +++ b/packages/next/src/server/lib/router-utils/instrumentation-globals.external.ts @@ -7,8 +7,57 @@ import type { } from '../../instrumentation/types' import { interopDefault } from '../../../lib/interop-default' import { afterRegistration as extendInstrumentationAfterRegistration } from './instrumentation-node-extensions' +import { getTracer, SpanStatusCode } from '../trace/tracer' +import { InstrumentationSpan } from '../trace/constants' let cachedInstrumentationModule: InstrumentationModule +let instrumentationModuleLoadTiming: InstrumentationSpanTiming | undefined + +type InstrumentationSpanTiming = { + startTime: number + endTime: number + error?: unknown +} + +function getInstrumentationTimestamp() { + // Date.now() is treated as synchronous I/O while Cache Components render. + return performance.timeOrigin + performance.now() +} + +function traceBackdatedInstrumentationSpan( + type: InstrumentationSpan, + spanName: string, + { startTime, endTime, error }: InstrumentationSpanTiming +) { + getTracer().trace( + type, + { spanName, startTime, endTime }, + error === undefined + ? () => undefined + : (span) => { + span?.recordException(error as Error) + if (isError(error)) { + span?.setAttribute('error.type', error.name) + } + span?.setStatus({ + code: SpanStatusCode.ERROR, + message: isError(error) ? error.message : undefined, + }) + } + ) +} + +function traceInstrumentationModuleLoad() { + if (!instrumentationModuleLoadTiming) return + + const timing = instrumentationModuleLoadTiming + instrumentationModuleLoadTiming = undefined + traceBackdatedInstrumentationSpan( + InstrumentationSpan.loadModule, + 'load instrumentation module', + timing + ) +} export async function getInstrumentationModule( projectDir: string, @@ -18,6 +67,8 @@ export async function getInstrumentationModule( return cachedInstrumentationModule } + const startTime = getInstrumentationTimestamp() + let error: unknown try { cachedInstrumentationModule = interopDefault( await require( @@ -37,8 +88,15 @@ export async function getInstrumentationModule( err.code !== 'MODULE_NOT_FOUND' && err.code !== 'ERR_MODULE_NOT_FOUND' ) { + error = err throw err } + } finally { + instrumentationModuleLoadTiming ??= { + startTime, + endTime: getInstrumentationTimestamp(), + error, + } } } @@ -52,15 +110,38 @@ async function registerInstrumentation(projectDir: string, distDir: string) { if (!instrumentationModulePromise) { instrumentationModulePromise = getInstrumentationModule(projectDir, distDir) } - const instrumentation = await instrumentationModulePromise + let instrumentation: InstrumentationModule | undefined + try { + instrumentation = await instrumentationModulePromise + } catch (err) { + // A load error is only exportable when a provider was already installed. + traceInstrumentationModuleLoad() + throw err + } if (instrumentation?.register) { + const startTime = getInstrumentationTimestamp() + let error: unknown try { await instrumentation.register() extendInstrumentationAfterRegistration() } catch (err: any) { + error = err err.message = `An error occurred while loading instrumentation hook: ${err.message}` throw err + } finally { + const endTime = getInstrumentationTimestamp() + + // register() commonly installs the provider, so emit both lifecycle + // spans afterward with their original timestamps. + traceInstrumentationModuleLoad() + traceBackdatedInstrumentationSpan( + InstrumentationSpan.register, + 'register instrumentation', + { startTime, endTime, error } + ) } + } else { + traceInstrumentationModuleLoad() } } diff --git a/packages/next/src/server/lib/trace/constants.ts b/packages/next/src/server/lib/trace/constants.ts index f3fd99a887f2..7b384b319423 100644 --- a/packages/next/src/server/lib/trace/constants.ts +++ b/packages/next/src/server/lib/trace/constants.ts @@ -25,6 +25,12 @@ enum BaseServerSpan { enum LoadComponentsSpan { loadDefaultErrorComponents = 'LoadComponents.loadDefaultErrorComponents', loadComponents = 'LoadComponents.loadComponents', + loadRouteModule = 'LoadComponents.loadRouteModule', +} + +enum InstrumentationSpan { + loadModule = 'Instrumentation.loadModule', + register = 'Instrumentation.register', } enum NextServerSpan { @@ -115,6 +121,10 @@ enum AppRouteRouteHandlersSpan { runHandler = 'AppRouteRouteHandlers.runHandler', } +enum RouteModuleSpan { + prepare = 'RouteModule.prepare', + loadManifests = 'RouteModule.loadManifests', +} enum ResolveMetadataSpan { generateMetadata = 'ResolveMetadata.generateMetadata', generateViewport = 'ResolveMetadata.generateViewport', @@ -127,6 +137,7 @@ enum MiddlewareSpan { type SpanTypes = | `${BaseServerSpan}` | `${LoadComponentsSpan}` + | `${InstrumentationSpan}` | `${NextServerSpan}` | `${StartServerSpan}` | `${NextNodeServerSpan}` @@ -137,6 +148,7 @@ type SpanTypes = | `${DevBundlerServiceSpan}` | `${NodeSpan}` | `${AppRouteRouteHandlersSpan}` + | `${RouteModuleSpan}` | `${ResolveMetadataSpan}` | `${MiddlewareSpan}` @@ -148,9 +160,13 @@ export const NextVanillaSpanAllowlist = new Set([ RenderSpan.getStaticProps, AppRenderSpan.fetch, AppRenderSpan.getBodyResult, + LoadComponentsSpan.loadRouteModule, RenderSpan.renderDocument, NodeSpan.runHandler, AppRouteRouteHandlersSpan.runHandler, + RouteModuleSpan.prepare, + InstrumentationSpan.loadModule, + InstrumentationSpan.register, ResolveMetadataSpan.generateMetadata, ResolveMetadataSpan.generateViewport, NextNodeServerSpan.createComponentTree, @@ -171,6 +187,7 @@ export const LogSpanAllowList = new Set([ export { BaseServerSpan, LoadComponentsSpan, + InstrumentationSpan, NextServerSpan, NextNodeServerSpan, StartServerSpan, @@ -181,6 +198,7 @@ export { DevBundlerServiceSpan, NodeSpan, AppRouteRouteHandlersSpan, + RouteModuleSpan, ResolveMetadataSpan, MiddlewareSpan, } diff --git a/packages/next/src/server/lib/trace/tracer.test.ts b/packages/next/src/server/lib/trace/tracer.test.ts index fadb8c9fe64c..21d5d485b464 100644 --- a/packages/next/src/server/lib/trace/tracer.test.ts +++ b/packages/next/src/server/lib/trace/tracer.test.ts @@ -26,9 +26,11 @@ import { import { AppRenderSpan, BaseServerSpan, + InstrumentationSpan, LoadComponentsSpan, NextNodeServerSpan, NodeSpan, + RouteModuleSpan, } from './constants' import { SpanKind, SpanStatusCode, getTracer } from './tracer' @@ -259,9 +261,38 @@ describe('local span recording', () => { getTracer().trace(NodeSpan.runHandler, () => undefined) expect(exportedSpans).toEqual([NodeSpan.runHandler]) + getTracer().trace(LoadComponentsSpan.loadRouteModule, () => undefined) + expect(exportedSpans).toEqual([ + NodeSpan.runHandler, + LoadComponentsSpan.loadRouteModule, + ]) + + getTracer().trace(RouteModuleSpan.prepare, () => undefined) + getTracer().trace(RouteModuleSpan.loadManifests, () => undefined) + getTracer().trace(InstrumentationSpan.register, () => undefined) + getTracer().trace(InstrumentationSpan.loadModule, () => undefined) + expect(exportedSpans).toEqual([ + NodeSpan.runHandler, + LoadComponentsSpan.loadRouteModule, + RouteModuleSpan.prepare, + InstrumentationSpan.register, + InstrumentationSpan.loadModule, + ]) + process.env.NEXT_OTEL_VERBOSE = '1' getTracer().trace(BaseServerSpan.render, () => undefined) - expect(exportedSpans).toEqual([NodeSpan.runHandler, BaseServerSpan.render]) + getTracer().trace(RouteModuleSpan.loadManifests, () => undefined) + getTracer().trace(InstrumentationSpan.loadModule, () => undefined) + expect(exportedSpans).toEqual([ + NodeSpan.runHandler, + LoadComponentsSpan.loadRouteModule, + RouteModuleSpan.prepare, + InstrumentationSpan.register, + InstrumentationSpan.loadModule, + BaseServerSpan.render, + RouteModuleSpan.loadManifests, + InstrumentationSpan.loadModule, + ]) }) it('does not record or export hidden spans', () => { @@ -330,6 +361,21 @@ describe('local span recording', () => { ]) }) + it('records an explicit end time', () => { + const startTime = Date.now() - 10 + const endTime = startTime + 5 + + getTracer().trace( + InstrumentationSpan.register, + { startTime, endTime }, + () => undefined + ) + + expect(getSpanRecords({ name: InstrumentationSpan.register })).toEqual([ + expect.objectContaining({ durationMs: 5 }), + ]) + }) + it('records app render fetch spans without an OTel provider', async () => { const result = await getTracer().trace( AppRenderSpan.fetch, diff --git a/packages/next/src/server/lib/trace/tracer.ts b/packages/next/src/server/lib/trace/tracer.ts index 14a8949c6851..3fe7fede1d9f 100644 --- a/packages/next/src/server/lib/trace/tracer.ts +++ b/packages/next/src/server/lib/trace/tracer.ts @@ -67,7 +67,11 @@ export function isBubbledError(error: unknown): error is BubbledError { return error instanceof BubbledError } -const closeSpanWithError = (span: Span, error?: Error) => { +const closeSpanWithError = ( + span: Span, + error?: Error, + endTime?: Parameters[0] +) => { if (isBubbledError(error) && error.bubble) { span.setAttribute('next.bubble', true) } else { @@ -77,10 +81,11 @@ const closeSpanWithError = (span: Span, error?: Error) => { } span.setStatus({ code: SpanStatusCode.ERROR, message: error?.message }) } - span.end() + span.end(endTime) } type TracerSpanOptions = Omit & { + endTime?: Parameters[0] parentSpan?: Span spanName?: string attributes?: Partial> @@ -475,13 +480,13 @@ class NextTracerImpl implements NextTracer { try { return fn(span, (err) => { if (err) { - closeSpanWithError(span, err) + closeSpanWithError(span, err, options.endTime) } else { - span.end() + span.end(options.endTime) } }) } catch (err: any) { - closeSpanWithError(span, err) + closeSpanWithError(span, err, options.endTime) throw err } finally { onCleanup() @@ -494,24 +499,24 @@ class NextTracerImpl implements NextTracer { // If there's error make sure it throws return result .then((res) => { - span.end() + span.end(options.endTime) // Need to pass down the promise result, // it could be react stream response with error { error, stream } return res }) .catch((err) => { - closeSpanWithError(span, err) + closeSpanWithError(span, err, options.endTime) throw err }) .finally(onCleanup) } else { - span.end() + span.end(options.endTime) onCleanup() } return result } catch (err: any) { - closeSpanWithError(span, err) + closeSpanWithError(span, err, options.endTime) onCleanup() throw err } diff --git a/packages/next/src/server/load-components.ts b/packages/next/src/server/load-components.ts index cfc1ee125fae..e8b6b83f850d 100644 --- a/packages/next/src/server/load-components.ts +++ b/packages/next/src/server/load-components.ts @@ -172,6 +172,14 @@ export async function loadClientReferenceManifestForPage( } } +function loadRouteModule(page: string, distDir: string, isAppPath: boolean) { + return getTracer().trace( + LoadComponentsSpan.loadRouteModule, + { spanName: 'load route module' }, + () => requirePage(page, distDir, isAppPath) + ) +} + async function loadComponentsImpl< N extends GenericComponentMod = GenericComponentMod, >({ @@ -305,7 +313,7 @@ async function loadComponentsImpl< }) } - const ComponentMod = await requirePage(page, distDir, isAppPath) + const ComponentMod = await loadRouteModule(page, distDir, isAppPath) const Component = interopDefault(ComponentMod) const Document = interopDefault(DocumentMod) @@ -334,7 +342,7 @@ async function loadComponentsImpl< routeModule, } } else { - const ComponentMod = await requirePage(page, distDir, isAppPath) + const ComponentMod = await loadRouteModule(page, distDir, isAppPath) const Component = interopDefault(ComponentMod) const Document = interopDefault(DocumentMod) diff --git a/packages/next/src/server/route-modules/route-module.ts b/packages/next/src/server/route-modules/route-module.ts index 7c4f0f3966d7..d2fccc4fffc3 100644 --- a/packages/next/src/server/route-modules/route-module.ts +++ b/packages/next/src/server/route-modules/route-module.ts @@ -68,6 +68,8 @@ import { import { decodePathParams } from '../lib/router-utils/decode-path-params' import { removeTrailingSlash } from '../../shared/lib/router/utils/remove-trailing-slash' import { isInterceptionRouteRewrite } from '../../lib/is-interception-route-rewrite' +import { getTracer } from '../lib/trace/tracer' +import { RouteModuleSpan } from '../lib/trace/constants' /** * RouteModuleOptions is the options that are passed to the route module, other @@ -592,7 +594,22 @@ export abstract class RouteModule< return { nextConfig, deploymentId } } - public async prepare( + public prepare( + req: IncomingMessage | BaseNextRequest, + res: ServerResponse | null, + options: { + srcPage: string + multiZoneDraftMode?: boolean + } + ) { + return getTracer().trace( + RouteModuleSpan.prepare, + { spanName: 'prepare route module' }, + () => this.prepareImpl(req, res, options) + ) + } + + private async prepareImpl( req: IncomingMessage | BaseNextRequest, res: ServerResponse | null, { @@ -677,7 +694,11 @@ export abstract class RouteModule< // before the userland route handler runs. await ensureInstrumentationRegistered(absoluteProjectDir, this.distDir) } - const manifests = this.loadManifests(srcPage, absoluteProjectDir) + const manifests = getTracer().trace( + RouteModuleSpan.loadManifests, + { spanName: 'load route manifests' }, + () => this.loadManifests(srcPage, absoluteProjectDir) + ) const { routesManifest, prerenderManifest, serverFilesManifest } = manifests const { basePath, i18n, rewrites } = routesManifest diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 73666ff9ed95..b7f1fb30f897 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -254,8 +254,8 @@ importers: specifier: 3.0.0 version: 3.0.0 '@vercel/og': - specifier: 0.11.1 - version: 0.11.1 + specifier: 1.0.1 + version: 1.0.1(@types/node@20.17.7(patch_hash=fe6957869a9b616ec526ededb72bbe846b863bd2349204218772df5c1e62d6ab)) abort-controller: specifier: 3.0.0 version: 3.0.0 @@ -563,8 +563,8 @@ importers: specifier: 1.54.0 version: 1.54.0 satori: - specifier: 0.25.0 - version: 0.25.0 + specifier: 0.29.0 + version: 0.29.0 scheduler-builtin: specifier: npm:scheduler@0.28.0-canary-22e4f993-20260811 version: scheduler@0.28.0-canary-22e4f993-20260811 @@ -6262,8 +6262,8 @@ packages: '@radix-ui/rect@1.1.1': resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==} - '@resvg/resvg-wasm@2.4.0': - resolution: {integrity: sha512-C7c51Nn4yTxXFKvgh2txJFNweaVcfUPQxwEUFw4aWsCmfiBDJsTSwviIF8EcwjQ6k8bPyMWCl1vw4BdxE569Cg==} + '@resvg/resvg-wasm@2.4.1': + resolution: {integrity: sha512-yi6R0HyHtsoWTRA06Col4WoDs7SvlXU3DLMNP2bdAgs7HK18dTEVl1weXgxRzi8gwLteGUbIg29zulxIB3GSdg==} engines: {node: '>= 10'} '@rollup/plugin-alias@3.1.1': @@ -7701,9 +7701,9 @@ packages: engines: {node: '>=20'} hasBin: true - '@vercel/og@0.11.1': - resolution: {integrity: sha512-02rXXRABFq1B03w3aNhcVfxkY+8Ba5QFi4ax0zS0oOiD/LL9WUd/LA7BjVPakrQmVhIBjuo2oBM5U25R9IuXMg==} - engines: {node: '>=16'} + '@vercel/og@1.0.1': + resolution: {integrity: sha512-uLTgu6ZIYuPuDnPpwkYhJsOjogqIhMnjjLREFpRAXjsMpCIQ2RmNX8Iz/5shDXfva1A2V0kC5j+KFVUSc4TVew==} + engines: {node: '>=22'} '@vercel/oidc@3.1.0': resolution: {integrity: sha512-Fw28YZpRnA3cAHHDlkt7xQHiJ0fcL+NRcIqsocZQUSmbzeIKRpwttJjik5ZGanXP+vlA4SbTg+AbA3bP363l+w==} @@ -16698,8 +16698,8 @@ packages: engines: {node: '>=14.0.0'} hasBin: true - satori@0.25.0: - resolution: {integrity: sha512-utINfLxrYrmSnLvxFT4ZwgwWa8KOjrz7ans32V5wItgHVmzESl/9i33nE38uG0miycab8hUqQtDlOpqrIpB/iw==} + satori@0.29.0: + resolution: {integrity: sha512-fPAfrwNaIQ7EsJLhY382STEqpczN6ZEH9NsKXDQgRcxUXNNPB73iAjSshzFwTaaScT68pxV0pmG6TBzDQ4sEGw==} engines: {node: '>=16'} sax@1.2.4: @@ -23457,7 +23457,7 @@ snapshots: '@radix-ui/rect@1.1.1': {} - '@resvg/resvg-wasm@2.4.0': {} + '@resvg/resvg-wasm@2.4.1': {} '@rollup/plugin-alias@3.1.1(rollup@2.35.1)': dependencies: @@ -25058,12 +25058,14 @@ snapshots: - rollup - supports-color - '@vercel/og@0.11.1': + '@vercel/og@1.0.1(@types/node@20.17.7(patch_hash=fe6957869a9b616ec526ededb72bbe846b863bd2349204218772df5c1e62d6ab))': dependencies: - '@resvg/resvg-wasm': 2.4.0 - satori: 0.25.0 + '@resvg/resvg-wasm': 2.4.1 + satori: 0.29.0 optionalDependencies: - sharp: 0.34.5 + sharp: 0.35.3(@types/node@20.17.7(patch_hash=fe6957869a9b616ec526ededb72bbe846b863bd2349204218772df5c1e62d6ab)) + transitivePeerDependencies: + - '@types/node' '@vercel/oidc@3.1.0': {} @@ -36308,7 +36310,7 @@ snapshots: immutable: 4.3.7 source-map-js: 1.2.1 - satori@0.25.0: + satori@0.29.0: dependencies: '@shuding/opentype.js': 1.4.0-beta.0 css-background-parser: 0.1.0 diff --git a/test/development/app-dir/request-insights-route-preparation/request-insights-route-preparation.test.ts b/test/development/app-dir/request-insights-route-preparation/request-insights-route-preparation.test.ts index 2b06057046d4..be76bcc83b99 100644 --- a/test/development/app-dir/request-insights-route-preparation/request-insights-route-preparation.test.ts +++ b/test/development/app-dir/request-insights-route-preparation/request-insights-route-preparation.test.ts @@ -26,6 +26,8 @@ describe('request-insights-route-preparation', () => { const routePreparationSpanType = 'DevRouteMatcherManager.ensureRoute' const matcherReloadSpanType = 'DevRouteMatcherManager.reloadMatchers' const routeCompilationSpanType = 'DevBundlerService.ensurePage' + const routeModulePrepareSpanType = 'RouteModule.prepare' + const routeManifestLoadSpanType = 'RouteModule.loadManifests' async function getRequestInsights() { return (await next @@ -173,6 +175,47 @@ describe('request-insights-route-preparation', () => { expect(routeCompilationSpan.traceId).toBe(rootSpan?.traceId) } + function expectRouteModulePreparationSpans(request: RequestInsight) { + const rootSpan = request.spans.find( + (span) => + span.attributes?.['next.span_type'] === 'BaseServer.handleRequest' + ) + const prepareSpans = request.spans.filter( + (span) => + span.attributes?.['next.span_type'] === routeModulePrepareSpanType + ) + const manifestLoadSpans = request.spans.filter( + (span) => + span.attributes?.['next.span_type'] === routeManifestLoadSpanType + ) + + expect(prepareSpans).toEqual([ + expect.objectContaining({ + name: 'prepare route module', + status: 'ok', + traceId: rootSpan?.traceId, + attributes: { + 'next.span_category': 'nextjs', + 'next.span_name': 'prepare route module', + 'next.span_type': routeModulePrepareSpanType, + }, + }), + ]) + expect(manifestLoadSpans).toEqual([ + expect.objectContaining({ + name: 'load route manifests', + status: 'ok', + traceId: rootSpan?.traceId, + parentSpanId: prepareSpans[0].spanId, + attributes: { + 'next.span_category': 'nextjs', + 'next.span_name': 'load route manifests', + 'next.span_type': routeManifestLoadSpanType, + }, + }), + ]) + } + it('records route preparation for first and subsequent App Page requests', async () => { const coldRequest = await captureRequest('/', async () => { const response = await next.fetch('/') @@ -187,6 +230,8 @@ describe('request-insights-route-preparation', () => { expectRoutePreparationSpans(coldRequest) expectRoutePreparationSpans(warmRequest) + expectRouteModulePreparationSpans(coldRequest) + expectRouteModulePreparationSpans(warmRequest) }) it('records route preparation for first and subsequent App Route requests', async () => { @@ -204,5 +249,7 @@ describe('request-insights-route-preparation', () => { expectRoutePreparationSpans(coldRequest) expectRoutePreparationSpans(warmRequest) + expectRouteModulePreparationSpans(coldRequest) + expectRouteModulePreparationSpans(warmRequest) }) }) diff --git a/test/e2e/app-dir/use-cache-private/app/route-handler/route.ts b/test/e2e/app-dir/use-cache-private/app/route-handler/route.ts new file mode 100644 index 000000000000..da2fc9ed2080 --- /dev/null +++ b/test/e2e/app-dir/use-cache-private/app/route-handler/route.ts @@ -0,0 +1,46 @@ +import { cacheLife } from 'next/cache' +import { cookies } from 'next/headers' +import type { NextRequest } from 'next/server' +import { setTimeout } from 'timers/promises' + +async function getPrivateValue(params: { id: string }) { + 'use cache: private' + + // Setting a stale time doesn't have an effect in a route handler, but this + // might be a cache function that's shared with server components, so the + // cacheLife call should still be allowed. + cacheLife({ stale: 1000 }) + + // Simulate I/O latency so the concurrent calls below overlap. + await setTimeout(200) + + // Reading cookies is allowed inside a private cache, also in a route handler. + const testCookie = (await cookies()).get('use-cache-private-test') + + return `${params.id}:${testCookie?.value ?? ''}:${Math.random()}` +} + +export async function GET(request: NextRequest) { + // The private cache already makes this route dynamic. The search param gives + // each test its own `id`, and therefore its own cache key, so the entry that + // dev persists for one test is never served to another. + const id = request.nextUrl.searchParams.get('id') ?? 'default' + + // Each call passes a fresh object literal, so the React.cache memo that wraps + // every cache function misses on reference equality and the lookup falls + // through to the serialized cache key. + const [concurrentA, concurrentB] = await Promise.all([ + getPrivateValue({ id }), + getPrivateValue({ id }), + ]) + + // The map of pending intra-request invocations drops an entry once its fill + // completes, so this delay puts the call below outside the in-flight window. + // Reuse then depends on the completed entry that the request retains, not on + // joining a pending fill. + await setTimeout(100) + + const sequential = await getPrivateValue({ id }) + + return Response.json({ concurrentA, concurrentB, sequential }) +} diff --git a/test/e2e/app-dir/use-cache-private/use-cache-private.test.ts b/test/e2e/app-dir/use-cache-private/use-cache-private.test.ts index 252b6c38abb1..20dc88942357 100644 --- a/test/e2e/app-dir/use-cache-private/use-cache-private.test.ts +++ b/test/e2e/app-dir/use-cache-private/use-cache-private.test.ts @@ -121,6 +121,51 @@ describe('use-cache-private', () => { } }) + it('dedupes private caches within a route handler request', async () => { + const response = await next.fetch('/route-handler?id=dedupe', { + headers: { cookie: 'use-cache-private-test=from-cookie' }, + }) + + const { concurrentA, concurrentB, sequential } = await response.json() + + // The cache function read the request's cookie. + expect(concurrentA).toStartWith('dedupe:from-cookie:') + + // Two concurrent calls join a single in-flight invocation. + expect(concurrentB).toBe(concurrentA) + + // A call made after the in-flight window has closed is served the entry + // that the request retained. + expect(sequential).toBe(concurrentA) + }) + + it('does not share a route handler private cache entry across requests', async () => { + const fetchValue = async () => { + const response = await next.fetch('/route-handler?id=cross-request') + const { concurrentA } = await response.json() + + return concurrentA + } + + const initialValue = await fetchValue() + + if (isNextDev) { + // In dev the private entry is persisted and forced to `revalidate: 0`, so + // it is always stale and served immediately on the next request while a + // fresh entry warms in the background. + expect(await fetchValue()).toBe(initialValue) + + // A subsequent request reflects the freshly warmed value. + await retry(async () => { + expect(await fetchValue()).not.toBe(initialValue) + }) + } else { + // In production private entries are neither persisted nor deduped across + // requests, so every request re-runs the cache function. + expect(await fetchValue()).not.toBe(initialValue) + } + }) + it('revalidates a persisted entry by tag in dev', async () => { if (!isNextDev) { // Private caches are only persisted in development, so tag revalidation diff --git a/test/e2e/i18n-api-support/index.test.ts b/test/e2e/i18n-api-support/index.test.ts index 65fca0b6ae1d..f2112bb25c8b 100644 --- a/test/e2e/i18n-api-support/index.test.ts +++ b/test/e2e/i18n-api-support/index.test.ts @@ -1,9 +1,6 @@ import { nextTestSetup } from 'e2e-utils' import { fetchViaHTTP } from 'next-test-utils' -const isTurbopackTest = Boolean(process.env.IS_TURBOPACK_TEST) -const isAdapterTest = process.env.NEXT_ENABLE_ADAPTER === '1' - describe('i18n API support', () => { const { next } = nextTestSetup({ files: { @@ -37,8 +34,6 @@ describe('i18n API support', () => { }, }, dependencies: {}, - // FIXME: Fails to deploy - skipDeployment: isAdapterTest && isTurbopackTest, }) it('should respond to normal API request', async () => { diff --git a/test/e2e/opentelemetry/instrumentation/opentelemetry.test.ts b/test/e2e/opentelemetry/instrumentation/opentelemetry.test.ts index 179a6ac14904..3b6af409337f 100644 --- a/test/e2e/opentelemetry/instrumentation/opentelemetry.test.ts +++ b/test/e2e/opentelemetry/instrumentation/opentelemetry.test.ts @@ -12,6 +12,8 @@ const EXTERNAL = { } as const const COLLECTOR_PORT = 9001 +const ROUTE_PREPARATION_COLLECTOR_PORT = 9002 +const INSTRUMENTATION_STARTUP_COLLECTOR_PORT = 9003 function setup({ useDirectEntrypointHandler, useNodeMiddleware }) { let collector: Collector @@ -420,6 +422,81 @@ describe.each( ]) }) + if (env.name === 'root context' && !useDirectEntrypointHandler) { + it.each(['/api/app/param/data', '/pages/param/getServerSideProps'])( + 'should trace route module loading for %s', + async (pathname) => { + await next.fetch(pathname) + + await retry(async () => { + const spans = getCollector().getSpans() + const rootSpan = spans.find( + (span) => + span.attributes?.['next.span_type'] === + 'BaseServer.handleRequest' && + span.attributes?.['http.target'] === pathname + ) + const loadSpans = spans.filter( + (span) => + span.attributes?.['next.span_type'] === + 'LoadComponents.loadRouteModule' && + span.traceId === rootSpan?.traceId + ) + + expect(rootSpan).toBeDefined() + expect(loadSpans).toEqual([ + expect.objectContaining({ + runtime: 'nodejs', + name: 'load route module', + traceId: rootSpan?.traceId, + attributes: { + 'next.span_category': 'nextjs', + 'next.span_name': 'load route module', + 'next.span_type': 'LoadComponents.loadRouteModule', + }, + status: { code: 0 }, + }), + ]) + }) + } + ) + + it('should trace route module preparation', async () => { + const pathname = '/api/app/param/data' + await next.fetch(pathname) + + await retry(async () => { + const spans = getCollector().getSpans() + const rootSpan = spans.find( + (span) => + span.attributes?.['next.span_type'] === + 'BaseServer.handleRequest' && + span.attributes?.['http.target'] === pathname + ) + const prepareSpans = spans.filter( + (span) => + span.attributes?.['next.span_type'] === + 'RouteModule.prepare' && + span.traceId === rootSpan?.traceId + ) + + expect(rootSpan).toBeDefined() + expect(prepareSpans).toEqual([ + expect.objectContaining({ + runtime: 'nodejs', + name: 'prepare route module', + traceId: rootSpan?.traceId, + attributes: { + 'next.span_category': 'nextjs', + 'next.span_name': 'prepare route module', + 'next.span_type': 'RouteModule.prepare', + }, + status: { code: 0 }, + }), + ]) + }) + }) + } it('should handle route handlers in app router', async () => { await next.fetch('/api/app/param/data', env.fetchInit) @@ -1457,6 +1534,72 @@ describe.each( } }) +if (isNextStart) { + describe('opentelemetry route module preparation with direct entrypoint handler', () => { + let collector: Collector | undefined + const { next, skipped } = nextTestSetup({ + files: __dirname, + skipDeployment: true, + skipStart: true, + dependencies: require('./package.json').dependencies, + startCommand: 'pnpm start-entrypoint', + packageJson: { + scripts: { + 'start-entrypoint': + 'pnpm tsx custom-entrypoint-server.ts --without-parent-span', + }, + }, + serverReadyPattern: /- Local:/, + env: { + TEST_OTEL_COLLECTOR_PORT: String(ROUTE_PREPARATION_COLLECTOR_PORT), + NEXT_TELEMETRY_DISABLED: '1', + NODE_ENV: 'production', + }, + }) + + if (skipped) { + return + } + + afterAll(async () => { + await collector?.shutdown() + }) + + it('should trace route module preparation', async () => { + const connectedCollector = await connectCollector({ + port: ROUTE_PREPARATION_COLLECTOR_PORT, + }) + collector = connectedCollector + await next.start() + + await next.fetch('/app/param/rsc-fetch') + await next.fetch('/api/app/param/data') + + await retry(async () => { + const prepareSpans = connectedCollector + .getSpans() + .filter( + (span) => + span.attributes?.['next.span_type'] === 'RouteModule.prepare' + ) + + expect(prepareSpans).toEqual([ + expect.objectContaining({ + runtime: 'nodejs', + name: 'prepare route module', + attributes: { + 'next.span_category': 'nextjs', + 'next.span_name': 'prepare route module', + 'next.span_type': 'RouteModule.prepare', + }, + status: { code: 0 }, + }), + ]) + }) + }) + }) +} + describe.each( [ { name: 'default', useDirectEntrypointHandler: false }, @@ -1553,6 +1696,115 @@ describe.each( } }) }) + +describe.each( + [ + { name: 'default' }, + isNextStart && { + name: 'direct entrypoints', + useDirectEntrypointHandler: true, + }, + ].filter(Boolean) +)( + 'opentelemetry instrumentation startup - $name', + ({ useDirectEntrypointHandler }) => { + let collector: Collector | undefined + const { next, skipped } = nextTestSetup({ + files: __dirname, + skipDeployment: true, + skipStart: true, + dependencies: require('./package.json').dependencies, + ...(!useDirectEntrypointHandler + ? { + env: { + TEST_OTEL_COLLECTOR_PORT: String( + INSTRUMENTATION_STARTUP_COLLECTOR_PORT + ), + NEXT_TELEMETRY_DISABLED: '1', + }, + } + : { + startCommand: 'pnpm start-entrypoint', + packageJson: { + scripts: { + 'start-entrypoint': + 'pnpm tsx custom-entrypoint-server.ts --without-parent-span', + }, + }, + serverReadyPattern: /- Local:/, + env: { + TEST_OTEL_COLLECTOR_PORT: String( + INSTRUMENTATION_STARTUP_COLLECTOR_PORT + ), + NEXT_TELEMETRY_DISABLED: '1', + NODE_ENV: 'production', + }, + }), + }) + + if (skipped) { + return + } + + afterAll(async () => { + await collector?.shutdown() + }) + + it('should trace instrumentation startup', async () => { + collector = await connectCollector({ + port: INSTRUMENTATION_STARTUP_COLLECTOR_PORT, + }) + await next.start() + await next.fetch('/app/param/rsc-fetch') + + await retry(async () => { + const spans = collector?.getSpans() ?? [] + const loadModuleSpan = spans.find( + (span) => + span.attributes?.['next.span_type'] === 'Instrumentation.loadModule' + ) + const registerSpan = spans.find( + (span) => + span.attributes?.['next.span_type'] === 'Instrumentation.register' + ) + + expect( + spans.filter((span) => + ['Instrumentation.loadModule', 'Instrumentation.register'].includes( + span.attributes?.['next.span_type'] as string + ) + ) + ).toEqual( + expect.arrayContaining([ + expect.objectContaining({ + runtime: 'nodejs', + name: 'load instrumentation module', + attributes: { + 'next.span_category': 'nextjs', + 'next.span_name': 'load instrumentation module', + 'next.span_type': 'Instrumentation.loadModule', + }, + status: { code: 0 }, + }), + expect.objectContaining({ + runtime: 'nodejs', + name: 'register instrumentation', + attributes: { + 'next.span_category': 'nextjs', + 'next.span_name': 'register instrumentation', + 'next.span_type': 'Instrumentation.register', + }, + status: { code: 0 }, + }), + ]) + ) + expect(loadModuleSpan?.timestamp).toBeLessThanOrEqual( + registerSpan!.timestamp! + ) + }) + }) + } +) ;(process.env.__NEXT_CACHE_COMPONENTS ? describe.skip : describe)( 'opentelemetry NEXT_OTEL_VERBOSE=1', () => { @@ -2026,7 +2278,17 @@ async function expectTrace( ) await retry(async () => { - const traces = collector.getSpans() + const traces = collector + .getSpans() + .filter( + (span) => + ![ + 'LoadComponents.loadRouteModule', + 'RouteModule.prepare', + 'Instrumentation.loadModule', + 'Instrumentation.register', + ].includes(span.attributes?.['next.span_type'] as string) + ) const tree: HierSavedSpan[] = [] const spansForTree: HierSavedSpan[] = traces.map((span) => ({ diff --git a/test/e2e/pages-app-router-filenames/pages-app-router-filenames.test.ts b/test/e2e/pages-app-router-filenames/pages-app-router-filenames.test.ts new file mode 100644 index 000000000000..96a7392de68c --- /dev/null +++ b/test/e2e/pages-app-router-filenames/pages-app-router-filenames.test.ts @@ -0,0 +1,22 @@ +import { nextTestSetup } from 'e2e-utils' + +describe('pages-app-router-filenames', () => { + const { next } = nextTestSetup({ + files: __dirname, + }) + + it('should support getStaticProps in a page named sitemap', async () => { + const $ = await next.render$('/sitemap') + expect($('#page').text()).toBe('sitemap') + }) + + it('should support getServerSideProps in a page named robots', async () => { + const $ = await next.render$('/robots') + expect($('#page').text()).toBe('robots') + }) + + it('should support getStaticProps in a page named page', async () => { + const $ = await next.render$('/page') + expect($('#page').text()).toBe('page') + }) +}) diff --git a/test/e2e/pages-app-router-filenames/pages/page.js b/test/e2e/pages-app-router-filenames/pages/page.js new file mode 100644 index 000000000000..c53182f5d963 --- /dev/null +++ b/test/e2e/pages-app-router-filenames/pages/page.js @@ -0,0 +1,7 @@ +export function getStaticProps() { + return { props: { name: 'page' } } +} + +export default function Page({ name }) { + return

{name}

+} diff --git a/test/e2e/pages-app-router-filenames/pages/robots.js b/test/e2e/pages-app-router-filenames/pages/robots.js new file mode 100644 index 000000000000..cefc5011dcae --- /dev/null +++ b/test/e2e/pages-app-router-filenames/pages/robots.js @@ -0,0 +1,7 @@ +export function getServerSideProps() { + return { props: { name: 'robots' } } +} + +export default function Robots({ name }) { + return

{name}

+} diff --git a/test/e2e/pages-app-router-filenames/pages/sitemap.js b/test/e2e/pages-app-router-filenames/pages/sitemap.js new file mode 100644 index 000000000000..b6042d184124 --- /dev/null +++ b/test/e2e/pages-app-router-filenames/pages/sitemap.js @@ -0,0 +1,7 @@ +export function getStaticProps() { + return { props: { name: 'sitemap' } } +} + +export default function Sitemap({ name }) { + return

{name}

+} diff --git a/test/production/adapter-pages-api-runtime/.gitignore b/test/production/adapter-pages-api-runtime/.gitignore new file mode 100644 index 000000000000..c57e61aa659a --- /dev/null +++ b/test/production/adapter-pages-api-runtime/.gitignore @@ -0,0 +1,2 @@ +!node_modules +build-complete.json diff --git a/test/production/adapter-pages-api-runtime/adapter-pages-api-runtime.test.ts b/test/production/adapter-pages-api-runtime/adapter-pages-api-runtime.test.ts new file mode 100644 index 000000000000..c1a6ce6f0c4b --- /dev/null +++ b/test/production/adapter-pages-api-runtime/adapter-pages-api-runtime.test.ts @@ -0,0 +1,74 @@ +import fs from 'fs/promises' +import os from 'os' +import path from 'path' +import execa from 'execa' +import { nextTestSetup } from 'e2e-utils' +import type { NextAdapter } from 'next' + +describe('adapter-pages-api-runtime', () => { + const { next } = nextTestSetup({ + files: __dirname, + skipStart: true, + }) + + it('loads an external next/head dependency from a Pages API output', async () => { + await next.build() + + const { outputs, repoRoot }: Parameters[0] = + await next.readJSON('build-complete.json') + const apiOutput = outputs.pagesApi.find( + (output) => output.pathname === '/api/hello' + ) + + expect(apiOutput).toBeDefined() + + const functionDir = await fs.mkdtemp( + path.join(os.tmpdir(), 'next-adapter-pages-api-') + ) + + try { + for (const [target, source] of Object.entries(apiOutput!.assets)) { + const destination = path.join(functionDir, target) + await fs.mkdir(path.dirname(destination), { recursive: true }) + await fs.cp(source, destination, { + recursive: true, + verbatimSymlinks: true, + }) + } + + const entryPath = path.relative(repoRoot, apiOutput!.filePath) + const entryDestination = path.join(functionDir, entryPath) + await fs.mkdir(path.dirname(entryDestination), { recursive: true }) + await fs.copyFile(apiOutput!.filePath, entryDestination) + + const env: NodeJS.ProcessEnv = { + ...process.env, + NODE_ENV: 'production', + } + if (process.env.IS_TURBOPACK_TEST) { + env.TURBOPACK = '1' + } else { + delete env.TURBOPACK + } + + await execa( + process.execPath, + [ + // Newer Node.js versions select @swc/helpers' `module-sync` export, + // which is unrelated to the Pages runtime behavior under test and is + // not represented in Turbopack's current output trace. + ...(process.allowedNodeEnvironmentFlags.has( + '--no-experimental-require-module' + ) + ? ['--no-experimental-require-module'] + : []), + '-e', + `require('next/setup-node-env'); const mod = require(${JSON.stringify(entryDestination)}); if (typeof mod.handler !== 'function') process.exit(1)`, + ], + { cwd: functionDir, env } + ) + } finally { + await fs.rm(functionDir, { recursive: true, force: true }) + } + }) +}) diff --git a/test/production/adapter-pages-api-runtime/next.config.mjs b/test/production/adapter-pages-api-runtime/next.config.mjs new file mode 100644 index 000000000000..874c5ccadeda --- /dev/null +++ b/test/production/adapter-pages-api-runtime/next.config.mjs @@ -0,0 +1,11 @@ +import { createRequire } from 'module' + +const require = createRequire(import.meta.url) + +/** @type {import('next').NextConfig} */ +const nextConfig = { + adapterPath: require.resolve('./test-adapter.mjs'), + serverExternalPackages: ['test-storyblok-external'], +} + +export default nextConfig diff --git a/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/index.d.ts b/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/index.d.ts new file mode 100644 index 000000000000..3114eb4b9f46 --- /dev/null +++ b/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/index.d.ts @@ -0,0 +1,2 @@ +declare const storyblok: { Head: unknown } +export = storyblok diff --git a/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/index.js b/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/index.js new file mode 100644 index 000000000000..3120226b8214 --- /dev/null +++ b/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/index.js @@ -0,0 +1,3 @@ +const Head = require('next/head') + +module.exports = { Head } diff --git a/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/package.json b/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/package.json new file mode 100644 index 000000000000..dd64e169d516 --- /dev/null +++ b/test/production/adapter-pages-api-runtime/node_modules/test-storyblok-external/package.json @@ -0,0 +1,6 @@ +{ + "name": "test-storyblok-external", + "version": "1.0.0", + "main": "index.js", + "types": "index.d.ts" +} diff --git a/test/production/adapter-pages-api-runtime/pages/api/hello.ts b/test/production/adapter-pages-api-runtime/pages/api/hello.ts new file mode 100644 index 000000000000..3e88568326a0 --- /dev/null +++ b/test/production/adapter-pages-api-runtime/pages/api/hello.ts @@ -0,0 +1,7 @@ +import type { NextApiRequest, NextApiResponse } from 'next' +import storyblok from 'test-storyblok-external' + +export default function handler(_req: NextApiRequest, res: NextApiResponse) { + void storyblok + res.status(200).json({ hello: 'world' }) +} diff --git a/test/production/adapter-pages-api-runtime/test-adapter.mjs b/test/production/adapter-pages-api-runtime/test-adapter.mjs new file mode 100644 index 000000000000..3b248a5471f6 --- /dev/null +++ b/test/production/adapter-pages-api-runtime/test-adapter.mjs @@ -0,0 +1,14 @@ +import fs from 'fs/promises' + +/** @type {import('next').NextAdapter} */ +const adapter = { + name: 'test-adapter', + async onBuildComplete(ctx) { + await fs.writeFile( + new URL('build-complete.json', import.meta.url), + JSON.stringify(ctx) + ) + }, +} + +export default adapter diff --git a/test/production/image-generation/image-generation.test.ts b/test/production/image-generation/image-generation.test.ts index 1f425a18e514..76c821f5aa31 100644 --- a/test/production/image-generation/image-generation.test.ts +++ b/test/production/image-generation/image-generation.test.ts @@ -5,7 +5,7 @@ describe('image-generation', () => { const { next, isNextStart } = nextTestSetup({ files: __dirname, dependencies: { - '@vercel/og': '0.11.1', + '@vercel/og': 'latest', }, }) diff --git a/test/production/next-server-nft/next-server-nft.test.ts b/test/production/next-server-nft/next-server-nft.test.ts index 9c1328263276..09f16a69d05e 100644 --- a/test/production/next-server-nft/next-server-nft.test.ts +++ b/test/production/next-server-nft/next-server-nft.test.ts @@ -722,5 +722,41 @@ async function readNormalizedNFT(next, name) { `) }) }) + + describe('with adapters and output:standalone', () => { + const { next, skipped } = nextTestSetup({ + files: __dirname, + dependencies: { + typescript: '5.9.2', + }, + nextConfig: { + output: 'standalone', + adapterPath: path.join(__dirname, './my-adapter.mjs'), + }, + }) + + if (skipped) { + return + } + + // Regression test for #96646: with an adapter configured, the whole-app server NFTs were + // suppressed while `copyTracedFiles` (which runs for `output: 'standalone'`, adapter or + // not) still reads `next-server.js.nft.json` unconditionally — crashing the build with + // ENOENT. + it('should emit both whole-app server NFTs and complete the build', async () => { + const serverTrace = await next.readJSON('.next/next-server.js.nft.json') + expect(Array.isArray(serverTrace.files)).toBe(true) + expect(serverTrace.files.length).toBeGreaterThan(0) + + const minimalTrace = await next.readJSON( + '.next/next-minimal-server.js.nft.json' + ) + expect(Array.isArray(minimalTrace.files)).toBe(true) + + // The adapter still ran (my-adapter.mjs writes build-complete.json). + const buildComplete = await next.readJSON('build-complete.json') + expect(buildComplete).toBeTruthy() + }) + }) } )