diff --git a/.editorconfig b/.editorconfig deleted file mode 100755 index 9142239..0000000 --- a/.editorconfig +++ /dev/null @@ -1,13 +0,0 @@ -# editorconfig.org -root = true - -[*] -indent_size = 2 -indent_style = space -end_of_line = lf -charset = utf-8 -trim_trailing_whitespace = true -insert_final_newline = true - -[*.md] -trim_trailing_whitespace = false diff --git a/.env.example b/.env.example deleted file mode 100644 index 8f0079c..0000000 --- a/.env.example +++ /dev/null @@ -1,5 +0,0 @@ -# Production license for @nuxt/ui-pro, get one at https://ui.nuxt.com/pro/purchase -NUXT_UI_PRO_LICENSE= - -# Public URL, used for OG Image when running nuxt generate -NUXT_PUBLIC_SITE_URL= diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 6bbb425..0000000 --- a/.gitignore +++ /dev/null @@ -1,27 +0,0 @@ -# Nuxt dev/build outputs -.output -.data -.nuxt -.nitro -.cache -dist - -# Node dependencies -node_modules - -# Logs -logs -*.log - -# Misc -.DS_Store -.fleet -.idea - -# Local env files -.env -.env.* -!.env.example - -# VSC -.history diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/.npmrc b/.npmrc deleted file mode 100644 index bf2e764..0000000 --- a/.npmrc +++ /dev/null @@ -1 +0,0 @@ -shamefully-hoist=true diff --git a/200.html b/200.html new file mode 100644 index 0000000..665ef99 --- /dev/null +++ b/200.html @@ -0,0 +1,47 @@ +
\ No newline at end of file diff --git a/404.html b/404.html new file mode 100644 index 0000000..665ef99 --- /dev/null +++ b/404.html @@ -0,0 +1,47 @@ +
\ No newline at end of file diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..4e44ea5 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +nuxtstore-docs.nuxt.space diff --git a/README.md b/README.md deleted file mode 100644 index 015eb03..0000000 --- a/README.md +++ /dev/null @@ -1,127 +0,0 @@ -![nuxt-ui-docs-social-card](https://github.com/nuxt-ui-pro/docs/assets/739984/f64e13d9-9ae0-4e03-bf7f-6be4c36cd9ba) - -# Nuxt UI Pro - Docs template - -[![Nuxt UI Pro](https://img.shields.io/badge/Made%20with-Nuxt%20UI%20Pro-00DC82?logo=nuxt.js&labelColor=020420)](https://ui.nuxt.com/pro) -[![Nuxt Studio](https://img.shields.io/badge/Open%20in%20Nuxt%20Studio-18181B?&logo=nuxt.js&logoColor=3BB5EC)](https://nuxt.studio/themes/docs) - -- [Live demo](https://docs-template.nuxt.dev/) -- [Play on Stackblitz](https://stackblitz.com/github/nuxt-ui-pro/docs) -- [Documentation](https://ui.nuxt.com/pro/getting-started) -- [Clone on Nuxt Studio](https://nuxt.studio/templates/docs) - -[![Deploy to NuxtHub](https://hub.nuxt.com/button.svg)](https://hub.nuxt.com/new?repo=nuxt-ui-pro/docs) - -## Quick Start - -```bash [Terminal] -npx nuxi init -t github:nuxt-ui-pro/docs -``` - -## Setup - -Make sure to install the dependencies: - -```bash -# npm -npm install - -# pnpm -pnpm install - -# yarn -yarn install - -# bun -bun install -``` - -## Development Server - -Start the development server on `http://localhost:3000`: - -```bash -# npm -npm run dev - -# pnpm -pnpm run dev - -# yarn -yarn dev - -# bun -bun run dev -``` - -## Production - -Build the application for production: - -```bash -# npm -npm run build - -# pnpm -pnpm run build - -# yarn -yarn build - -# bun -bun run build -``` - -Locally preview production build: - -```bash -# npm -npm run preview - -# pnpm -pnpm run preview - -# yarn -yarn preview - -# bun -bun run preview -``` - -Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information. - -## Nuxt Studio integration - -Add `@nuxthq/studio` dependency to your package.json: - -```bash -# npm -npm install --save-dev @nuxthq/studio - -# pnpm -pnpm add -D @nuxthq/studio - -# yarn -yarn add -D @nuxthq/studio - -# bun -bun add -d @nuxthq/studio -``` - -Add this module to your `nuxt.config.ts`: - -```ts -export default defineNuxtConfig({ - ... - modules: [ - ... - '@nuxthq/studio' - ] -}) -``` - -Read more on [Nuxt Studio docs](https://nuxt.studio/docs/get-started/setup). - -## Renovate integration - -Install [Renovate GitHub app](https://github.com/apps/renovate/installations/select_target) on your repository and you are good to go. diff --git a/__og-image__/static/getting-started/code-of-conduct/og.png b/__og-image__/static/getting-started/code-of-conduct/og.png new file mode 100644 index 0000000..9e2fab5 Binary files /dev/null and b/__og-image__/static/getting-started/code-of-conduct/og.png differ diff --git a/__og-image__/static/getting-started/og.png b/__og-image__/static/getting-started/og.png new file mode 100644 index 0000000..d0646d5 Binary files /dev/null and b/__og-image__/static/getting-started/og.png differ diff --git a/__og-image__/static/mobile-app/onboarding/og.png b/__og-image__/static/mobile-app/onboarding/og.png new file mode 100644 index 0000000..30d6a3a Binary files /dev/null and b/__og-image__/static/mobile-app/onboarding/og.png differ diff --git a/__og-image__/static/mobile-app/onboarding/tech-stack/og.png b/__og-image__/static/mobile-app/onboarding/tech-stack/og.png new file mode 100644 index 0000000..f225d9c Binary files /dev/null and b/__og-image__/static/mobile-app/onboarding/tech-stack/og.png differ diff --git a/__og-image__/static/mobile-app/poc/architecture/og.png b/__og-image__/static/mobile-app/poc/architecture/og.png new file mode 100644 index 0000000..1d3afa8 Binary files /dev/null and b/__og-image__/static/mobile-app/poc/architecture/og.png differ diff --git a/__og-image__/static/mobile-app/poc/code-generation/og.png b/__og-image__/static/mobile-app/poc/code-generation/og.png new file mode 100644 index 0000000..d353673 Binary files /dev/null and b/__og-image__/static/mobile-app/poc/code-generation/og.png differ diff --git a/__og-image__/static/mobile-app/poc/og.png b/__og-image__/static/mobile-app/poc/og.png new file mode 100644 index 0000000..00bec02 Binary files /dev/null and b/__og-image__/static/mobile-app/poc/og.png differ diff --git a/__og-image__/static/mobile-app/thought-processses/architecture/og.png b/__og-image__/static/mobile-app/thought-processses/architecture/og.png new file mode 100644 index 0000000..d373ab3 Binary files /dev/null and b/__og-image__/static/mobile-app/thought-processses/architecture/og.png differ diff --git a/__og-image__/static/mobile-app/thought-processses/decoupling/og.png b/__og-image__/static/mobile-app/thought-processses/decoupling/og.png new file mode 100644 index 0000000..33ed984 Binary files /dev/null and b/__og-image__/static/mobile-app/thought-processses/decoupling/og.png differ diff --git a/__og-image__/static/mobile-app/thought-processses/og.png b/__og-image__/static/mobile-app/thought-processses/og.png new file mode 100644 index 0000000..e988a56 Binary files /dev/null and b/__og-image__/static/mobile-app/thought-processses/og.png differ diff --git a/__og-image__/static/mobile-app/thought-processses/state-management/og.png b/__og-image__/static/mobile-app/thought-processses/state-management/og.png new file mode 100644 index 0000000..4647474 Binary files /dev/null and b/__og-image__/static/mobile-app/thought-processses/state-management/og.png differ diff --git a/__og-image__/static/web/guide/og.png b/__og-image__/static/web/guide/og.png new file mode 100644 index 0000000..f8d4a78 Binary files /dev/null and b/__og-image__/static/web/guide/og.png differ diff --git a/__studio.json b/__studio.json new file mode 100644 index 0000000..1a2fe35 --- /dev/null +++ b/__studio.json @@ -0,0 +1 @@ +{"version":"2.2.1","tokens":"","gitInfo":{"name":"nuxtstore-docs","owner":"webreinvent","url":"https://github.com/webreinvent/nuxtstore-docs"},"contentSchema":{},"appConfigSchema":{"properties":{"id":"#appConfig","properties":{"icon":{"title":"Nuxt Icon","description":"Configure Nuxt Icon module preferences.","tags":["@studioIcon material-symbols:star"],"id":"#appConfig/icon","properties":{"size":{"title":"Icon Size","description":"Set the default icon size.","tags":["@studioIcon material-symbols:format-size-rounded"],"tsType":"string | undefined","id":"#appConfig/icon/size","default":{},"type":"any"},"class":{"title":"CSS Class","description":"Set the default CSS class.","tags":["@studioIcon material-symbols:css"],"id":"#appConfig/icon/class","default":"","type":"string"},"attrs":{"title":"Default Attributes","description":"Attributes applied to every icon component.\n\n@default { \"aria-hidden\": true }","tags":["@studioIcon material-symbols:settings"],"tsType":"Record","id":"#appConfig/icon/attrs","default":{"aria-hidden":true},"type":"object"},"mode":{"title":"Default Rendering Mode","description":"Set the default rendering mode for the icon component","enum":["css","svg"],"tags":["@studioIcon material-symbols:move-down-rounded"],"id":"#appConfig/icon/mode","default":"css","type":"string"},"aliases":{"title":"Icon aliases","description":"Define Icon aliases to update them easily without code changes.","tags":["@studioIcon material-symbols:star-rounded"],"tsType":"{ [alias: string]: string }","id":"#appConfig/icon/aliases","default":{},"type":"object"},"cssSelectorPrefix":{"title":"CSS Selector Prefix","description":"Set the default CSS selector prefix.","tags":["@studioIcon material-symbols:format-textdirection-l-to-r"],"id":"#appConfig/icon/cssSelectorPrefix","default":"i-","type":"string"},"cssLayer":{"title":"CSS Layer Name","description":"Set the default CSS `@layer` name.","tags":["@studioIcon material-symbols:layers"],"tsType":"string | undefined","id":"#appConfig/icon/cssLayer","default":{},"type":"any"},"cssWherePseudo":{"title":"Use CSS `:where()` Pseudo Selector","description":"Use CSS `:where()` pseudo selector to reduce specificity.","tags":["@studioIcon material-symbols:low-priority"],"id":"#appConfig/icon/cssWherePseudo","default":true,"type":"boolean"},"collections":{"title":"Icon Collections","description":"List of known icon collections name. Used to resolve collection name ambiguity.\ne.g. `simple-icons-github` -> `simple-icons:github` instead of `simple:icons-github`\n\nWhen not provided, will use the full Iconify collection list.","tags":["@studioIcon material-symbols:format-list-bulleted"],"tsType":"string[] | null","id":"#appConfig/icon/collections","default":"","type":"any"},"provider":{"title":"Icon Provider","description":"Provider to use for fetching icons\n\n- `server` - Fetch icons with a server handler\n- `iconify` - Fetch icons with Iconify API, purely client-side\n\n`server` by default; `iconify` when `ssr: false`","enum":["server","iconify"],"tags":["@studioIcon material-symbols:cloud"],"type":"\"server\" | \"iconify\" | undefined","id":"#appConfig/icon/provider","default":""},"iconifyApiEndpoint":{"title":"Iconify API Endpoint URL","description":"Define a custom Iconify API endpoint URL. Useful if you want to use a self-hosted Iconify API. Learn more: https://iconify.design/docs/api.","tags":["@studioIcon material-symbols:api"],"id":"#appConfig/icon/iconifyApiEndpoint","default":"https://api.iconify.design","type":"string"},"fallbackToApi":{"title":"Fallback to Iconify API","description":"Fallback to Iconify API if server provider fails to found the collection.","tags":["@studioIcon material-symbols:public"],"enum":[true,false,"server-only","client-only"],"type":"boolean | \"server-only\" | \"client-only\"","id":"#appConfig/icon/fallbackToApi","default":true},"localApiEndpoint":{"title":"Local API Endpoint Path","description":"Define a custom path for the local API endpoint.","tags":["@studioIcon material-symbols:api"],"id":"#appConfig/icon/localApiEndpoint","default":"/api/_nuxt_icon","type":"string"},"fetchTimeout":{"title":"Fetch Timeout","description":"Set the timeout for fetching icons.","tags":["@studioIcon material-symbols:timer"],"id":"#appConfig/icon/fetchTimeout","default":1500,"type":"number"},"customize":{"title":"Customize callback","description":"Customize icon content (replace stroke-width, colors, etc...).","tags":["@studioIcon material-symbols:edit"],"type":"IconifyIconCustomizeCallback","id":"#appConfig/icon/customize","default":""}},"type":"object","default":{"size":{},"class":"","attrs":{"aria-hidden":true},"mode":"css","aliases":{},"cssSelectorPrefix":"i-","cssLayer":{},"cssWherePseudo":true,"collections":"","provider":"","iconifyApiEndpoint":"https://api.iconify.design","fallbackToApi":true,"localApiEndpoint":"/api/_nuxt_icon","fetchTimeout":1500,"customize":""}},"ui":{"title":"UI","description":"UI Customization.","tags":["@studioIcon i-mdi-palette-outline"],"id":"#appConfig/ui","properties":{"icons":{"title":"Icons","description":"Manage icons used in UI Pro.","tags":["@studioIcon i-mdi-application-settings-outline"],"id":"#appConfig/ui/icons","properties":{"search":{"type":"string","title":"Search Bar","description":"Icon to display in the search bar.","default":"i-heroicons-magnifying-glass-20-solid","tags":["@studioInput icon","@studioIcon i-mdi-magnify"],"id":"#appConfig/ui/icons/search"},"dark":{"type":"string","title":"Dark mode","description":"Icon of color mode button for dark mode.","default":"i-heroicons-moon-20-solid","tags":["@studioInput icon","@studioIcon i-mdi-moon-waning-crescent"],"id":"#appConfig/ui/icons/dark"},"light":{"type":"string","title":"Light mode","description":"Icon of color mode button for light mode.","default":"i-heroicons-sun-20-solid","tags":["@studioInput icon","@studioIcon i-mdi-white-balance-sunny"],"id":"#appConfig/ui/icons/light"},"external":{"type":"string","title":"External Link","description":"Icon for external link.","default":"i-heroicons-arrow-up-right-20-solid","tags":["@studioInput icon","@studioIcon i-mdi-arrow-top-right"],"id":"#appConfig/ui/icons/external"},"chevron":{"type":"string","title":"Chevron","description":"Icon for chevron.","default":"i-heroicons-chevron-down-20-solid","tags":["@studioInput icon","@studioIcon i-mdi-chevron-down"],"id":"#appConfig/ui/icons/chevron"},"hash":{"type":"string","title":"Hash","description":"Icon for hash anchors.","default":"i-heroicons-hashtag-20-solid","tags":["@studioInput icon","@studioIcon i-ph-hash"],"id":"#appConfig/ui/icons/hash"}},"type":"object","default":{"search":"i-heroicons-magnifying-glass-20-solid","dark":"i-heroicons-moon-20-solid","light":"i-heroicons-sun-20-solid","external":"i-heroicons-arrow-up-right-20-solid","chevron":"i-heroicons-chevron-down-20-solid","hash":"i-heroicons-hashtag-20-solid"}},"primary":{"type":"string","title":"Primary","description":"Primary color of your UI.","default":"green","required":["sky","mint","rose","amber","violet","emerald","fuchsia","indigo","lime","orange","pink","purple","red","teal","yellow","green","blue","cyan","gray","white","black"],"tags":["@studioInput string","@studioIcon i-mdi-palette-outline"],"id":"#appConfig/ui/primary"},"gray":{"type":"string","title":"Gray","description":"Gray color of your UI.","default":"slate","required":["slate","cool","zinc","neutral","stone"],"tags":["@studioInput string","@studioIcon i-mdi-palette-outline"],"id":"#appConfig/ui/gray"}},"type":"object","default":{"icons":{"search":"i-heroicons-magnifying-glass-20-solid","dark":"i-heroicons-moon-20-solid","light":"i-heroicons-sun-20-solid","external":"i-heroicons-arrow-up-right-20-solid","chevron":"i-heroicons-chevron-down-20-solid","hash":"i-heroicons-hashtag-20-solid"},"primary":"green","gray":"slate"}},"seo":{"title":"SEO","description":"SEO configuration.","tags":["@studioIcon i-ph-app-window"],"id":"#appConfig/seo","properties":{"siteName":{"type":"string","title":"Site Name","description":"Name used in ogSiteName and used as second part of your page title (My page title - Nuxt UI Pro).","default":[],"tags":["@studioInput string","@studioIcon i-mdi-web"],"id":"#appConfig/seo/siteName"}},"type":"object","default":{"siteName":[]}},"header":{"title":"Header","description":"Header configuration.","tags":["@studioIcon i-mdi-page-layout-header"],"id":"#appConfig/header","properties":{"logo":{"title":"Logo","description":"Header logo configuration.","tags":["@studioIcon i-mdi-image-filter-center-focus-strong-outline"],"id":"#appConfig/header/logo","properties":{"light":{"type":"string","title":"Light Mode Logo","description":"Pick an image from your gallery.","default":"","tags":["@studioInput media","@studioIcon i-mdi-white-balance-sunny"],"id":"#appConfig/header/logo/light"},"dark":{"type":"string","title":"Dark Mode Logo","description":"Pick an image from your gallery.","default":"","tags":["@studioInput media","@studioIcon i-mdi-moon-waning-crescent"],"id":"#appConfig/header/logo/dark"},"alt":{"type":"string","title":"Alt","description":"Alt to display for accessibility.","default":"","tags":["@studioInput string","@studioIcon i-mdi-alphabet-latin"],"id":"#appConfig/header/logo/alt"}},"type":"object","default":{"light":"","dark":"","alt":""}},"search":{"type":"boolean","title":"Search Bar","description":"Hide or display the search bar.","default":true,"tags":["@studioInput boolean","@studioIcon i-mdi-magnify"],"id":"#appConfig/header/search"},"colorMode":{"type":"boolean","title":"Color Mode","description":"Hide or display the color mode button in your header.","default":true,"tags":["@studioInput boolean","@studioIcon i-mdi-moon-waning-crescent"],"id":"#appConfig/header/colorMode"},"links":{"type":"array","title":"Links","description":"Array of link object displayed in header.","default":[],"tags":["@studioInput array","@studioIcon i-mdi-link-variant"],"id":"#appConfig/header/links","items":{"type":"any"}}},"type":"object","default":{"logo":{"light":"","dark":"","alt":""},"search":true,"colorMode":true,"links":[]}},"footer":{"title":"Footer","description":"Footer configuration.","tags":["@studioIcon i-mdi-page-layout-footer"],"id":"#appConfig/footer","properties":{"credits":{"type":"string","title":"Footer credits section","description":"Text to display as credits in the footer.","default":"","tags":["@studioInput string","@studioIcon i-mdi-circle-edit-outline"],"id":"#appConfig/footer/credits"},"colorMode":{"type":"boolean","title":"Color Mode","description":"Hide or display the color mode button in the footer.","default":false,"tags":["@studioInput boolean","@studioIcon i-mdi-moon-waning-crescent"],"id":"#appConfig/footer/colorMode"},"links":{"type":"array","title":"Links","description":"Array of link object displayed in footer.","default":[],"tags":["@studioInput array","@studioIcon i-mdi-link-variant"],"id":"#appConfig/footer/links","items":{"type":"any"}}},"type":"object","default":{"credits":"","colorMode":false,"links":[]}},"toc":{"title":"Table of contents","description":"TOC configuration.","tags":["@studioIcon i-mdi-table-of-contents"],"id":"#appConfig/toc","properties":{"title":{"type":"string","title":"Title","description":"Text to display as title of the main toc.","default":"","tags":["@studioInput string","@studioIcon i-mdi-format-title"],"id":"#appConfig/toc/title"},"bottom":{"title":"Bottom","description":"Bottom TOC configuration.","tags":["@studioIcon i-mdi-table-of-contents"],"id":"#appConfig/toc/bottom","properties":{"title":{"type":"string","title":"Title","description":"Text to display as title of the bottom toc.","default":"","tags":["@studioInput string","@studioIcon i-mdi-format-title"],"id":"#appConfig/toc/bottom/title"},"edit":{"type":"string","title":"Edit Page Link","description":"URL of your repository content folder.","default":"","tags":["@studioInput string","@studioIcon i-ph-note-pencil"],"id":"#appConfig/toc/bottom/edit"},"links":{"type":"array","title":"Links","description":"Array of link object displayed in bottom toc.","default":[],"tags":["@studioInput array","@studioIcon i-mdi-link-variant"],"id":"#appConfig/toc/bottom/links","items":{"type":"any"}}},"type":"object","default":{"title":"","edit":"","links":[]}}},"type":"object","default":{"title":"","bottom":{"title":"","edit":"","links":[]}}}},"type":"object","default":{"icon":{"size":{},"class":"","attrs":{"aria-hidden":true},"mode":"css","aliases":{},"cssSelectorPrefix":"i-","cssLayer":{},"cssWherePseudo":true,"collections":"","provider":"","iconifyApiEndpoint":"https://api.iconify.design","fallbackToApi":true,"localApiEndpoint":"/api/_nuxt_icon","fetchTimeout":1500,"customize":""},"ui":{"icons":{"search":"i-heroicons-magnifying-glass-20-solid","dark":"i-heroicons-moon-20-solid","light":"i-heroicons-sun-20-solid","external":"i-heroicons-arrow-up-right-20-solid","chevron":"i-heroicons-chevron-down-20-solid","hash":"i-heroicons-hashtag-20-solid"},"primary":"green","gray":"slate"},"seo":{"siteName":[]},"header":{"logo":{"light":"","dark":"","alt":""},"search":true,"colorMode":true,"links":[]},"footer":{"credits":"","colorMode":false,"links":[]},"toc":{"title":"","bottom":{"title":"","edit":"","links":[]}}}},"default":{"icon":{"size":{},"class":"","attrs":{"aria-hidden":true},"mode":"css","aliases":{},"cssSelectorPrefix":"i-","cssLayer":{},"cssWherePseudo":true,"collections":"","provider":"","iconifyApiEndpoint":"https://api.iconify.design","fallbackToApi":true,"localApiEndpoint":"/api/_nuxt_icon","fetchTimeout":1500,"customize":""},"ui":{"icons":{"search":"i-heroicons-magnifying-glass-20-solid","dark":"i-heroicons-moon-20-solid","light":"i-heroicons-sun-20-solid","external":"i-heroicons-arrow-up-right-20-solid","chevron":"i-heroicons-chevron-down-20-solid","hash":"i-heroicons-hashtag-20-solid"},"primary":"green","gray":"slate"},"seo":{"siteName":[]},"header":{"logo":{"light":"","dark":"","alt":""},"search":true,"colorMode":true,"links":[]},"footer":{"credits":"","colorMode":false,"links":[]},"toc":{"title":"","bottom":{"title":"","edit":"","links":[]}}}},"appConfig":{"nuxt":{},"icon":{"provider":"server","class":"","aliases":{},"iconifyApiEndpoint":"https://api.iconify.design","localApiEndpoint":"/api/_nuxt_icon","fallbackToApi":true,"cssSelectorPrefix":"i-","cssWherePseudo":true,"mode":"css","attrs":{"aria-hidden":true},"collections":["academicons","akar-icons","ant-design","arcticons","basil","bi","bitcoin-icons","bpmn","brandico","bx","bxl","bxs","bytesize","carbon","catppuccin","cbi","charm","ci","cib","cif","cil","circle-flags","circum","clarity","codicon","covid","cryptocurrency","cryptocurrency-color","dashicons","devicon","devicon-plain","ei","el","emojione","emojione-monotone","emojione-v1","entypo","entypo-social","eos-icons","ep","et","eva","f7","fa","fa-brands","fa-regular","fa-solid","fa6-brands","fa6-regular","fa6-solid","fad","fe","feather","file-icons","flag","flagpack","flat-color-icons","flat-ui","flowbite","fluent","fluent-emoji","fluent-emoji-flat","fluent-emoji-high-contrast","fluent-mdl2","fontelico","fontisto","formkit","foundation","fxemoji","gala","game-icons","geo","gg","gis","gravity-ui","gridicons","grommet-icons","guidance","healthicons","heroicons","heroicons-outline","heroicons-solid","hugeicons","humbleicons","ic","icomoon-free","icon-park","icon-park-outline","icon-park-solid","icon-park-twotone","iconamoon","iconoir","icons8","il","ion","iwwa","jam","la","lets-icons","line-md","logos","ls","lucide","lucide-lab","mage","majesticons","maki","map","marketeq","material-symbols","material-symbols-light","mdi","mdi-light","medical-icon","memory","meteocons","mi","mingcute","mono-icons","mynaui","nimbus","nonicons","noto","noto-v1","octicon","oi","ooui","openmoji","oui","pajamas","pepicons","pepicons-pencil","pepicons-pop","pepicons-print","ph","pixelarticons","prime","ps","quill","radix-icons","raphael","ri","rivet-icons","si-glyph","simple-icons","simple-line-icons","skill-icons","solar","streamline","streamline-emojis","subway","svg-spinners","system-uicons","tabler","tdesign","teenyicons","token","token-branded","topcoat","twemoji","typcn","uil","uim","uis","uit","uiw","unjs","vaadin","vs","vscode-icons","websymbol","weui","whh","wi","wpf","zmdi","zondicons"],"fetchTimeout":1500},"ui":{"primary":"green","gray":"slate","colors":["red","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink","rose","primary"],"strategy":"merge","variables":{"light":{"background":"255 255 255","foreground":"var(--color-gray-700)"},"dark":{"background":"var(--color-gray-900)","foreground":"var(--color-gray-200)"},"header":{"height":"4rem"}},"icons":{"dark":"i-heroicons-moon-20-solid","light":"i-heroicons-sun-20-solid","system":"i-heroicons-computer-desktop-20-solid","search":"i-heroicons-magnifying-glass-20-solid","external":"i-heroicons-arrow-up-right-20-solid","chevron":"i-heroicons-chevron-down-20-solid","hash":"i-heroicons-hashtag-20-solid","menu":"i-heroicons-bars-3-20-solid","close":"i-heroicons-x-mark-20-solid","check":"i-heroicons-check-circle-20-solid"},"presets":{"button":{"primary":{"color":"white","variant":"solid"},"secondary":{"color":"gray","variant":"ghost"},"input":{"color":"white","variant":"outline","ui":{"font":"","color":{"white":{"outline":"ring-1 ring-inset ring-gray-300 dark:ring-gray-700 hover:ring-gray-300 dark:hover:ring-gray-700 hover:bg-gray-100/50 dark:hover:bg-gray-800/50 text-gray-400 dark:text-gray-500 hover:text-gray-700 dark:hover:text-gray-200 focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"}}}}}},"footer":{"bottom":{"left":"text-sm text-gray-500 dark:text-gray-400","wrapper":"border-t border-gray-200 dark:border-gray-800"}}},"seo":{"siteName":"Nuxt UI Pro - Docs template"},"header":{"logo":{"alt":"","light":"","dark":""},"search":true,"colorMode":true,"links":[{"icon":"i-simple-icons-github","to":"https://github.com/nuxt-ui-pro/docs","target":"_blank","aria-label":"Docs template on GitHub"}]},"footer":{"credits":"Copyright © 2023","colorMode":false,"links":[{"icon":"i-simple-icons-nuxtdotjs","to":"https://nuxt.com","target":"_blank","aria-label":"Nuxt Website"},{"icon":"i-simple-icons-discord","to":"https://discord.com/invite/ps2h6QT","target":"_blank","aria-label":"Nuxt UI on Discord"},{"icon":"i-simple-icons-x","to":"https://x.com/nuxt_js","target":"_blank","aria-label":"Nuxt on X"},{"icon":"i-simple-icons-github","to":"https://github.com/nuxt/ui","target":"_blank","aria-label":"Nuxt UI on GitHub"}]},"toc":{"title":"Table of Contents","bottom":{"title":"Community","edit":"https://github.com/nuxt-ui-pro/docs/edit/main/content","links":[{"icon":"i-heroicons-star","label":"Star on GitHub","to":"https://github.com/nuxt/ui","target":"_blank"},{"icon":"i-heroicons-book-open","label":"Nuxt UI Pro docs","to":"https://ui.nuxt.com/pro/guide","target":"_blank"},{"icon":"i-simple-icons-nuxtdotjs","label":"Purchase a license","to":"https://ui.nuxt.com/pro/purchase","target":"_blank"}]}}},"content":{"sources":{},"ignores":[],"locales":[],"defaultLocale":"","highlight":{"theme":{"light":"material-theme-lighter","default":"material-theme","dark":"material-theme-palenight"},"preload":["json","js","ts","html","css","vue","diff","shell","markdown","yaml","bash","ini"],"highlighter":"shiki","shikiEngine":"oniguruma","langs":["js","jsx","json","ts","tsx","vue","css","html","bash","md","mdc","yaml","json","js","ts","html","css","vue","diff","shell","markdown","yaml","bash","ini"]},"navigation":{"fields":["icon","to","target"]},"documentDriven":false,"experimental":{"clientDB":false,"cacheContents":true,"stripQueryParameters":false,"advanceQuery":false,"search":""}},"components":[{"name":"Callout","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/Callout.vue","meta":{"props":[{"name":"icon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"color","global":false,"description":"","tags":[],"required":false,"type":"\"red\" | \"orange\" | \"amber\" | \"yellow\" | \"lime\" | \"green\" | \"emerald\" | \"teal\" | \"cyan\" | \"sky\" | \"blue\" | \"indigo\" | \"violet\" | \"purple\" | \"fuchsia\" | \"pink\" | \"rose\" | \"primary\"","schema":{"kind":"enum","type":"\"red\" | \"orange\" | \"amber\" | \"yellow\" | \"lime\" | \"green\" | \"emerald\" | \"teal\" | \"cyan\" | \"sky\" | \"blue\" | \"indigo\" | \"violet\" | \"purple\" | \"fuchsia\" | \"pink\" | \"rose\" | \"primary\"","schema":{"0":"\"red\"","1":"\"orange\"","2":"\"amber\"","3":"\"yellow\"","4":"\"lime\"","5":"\"green\"","6":"\"emerald\"","7":"\"teal\"","8":"\"cyan\"","9":"\"sky\"","10":"\"blue\"","11":"\"indigo\"","12":"\"violet\"","13":"\"purple\"","14":"\"fuchsia\"","15":"\"pink\"","16":"\"rose\"","17":"\"primary\""}},"default":"\"primary\""},{"name":"to","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"target","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"ui","global":false,"description":"","tags":[],"required":false,"type":"any","schema":"any","default":"{}"}],"slots":[{"name":"default","type":"{ unwrap: string; }","description":"","schema":{"kind":"object","type":"{ unwrap: string; }","schema":{"unwrap":{"name":"unwrap","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}}}}],"events":[]}},{"name":"Card","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/Card.vue","meta":{"props":[{"name":"icon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"color","global":false,"description":"","tags":[],"required":false,"type":"\"red\" | \"orange\" | \"amber\" | \"yellow\" | \"lime\" | \"green\" | \"emerald\" | \"teal\" | \"cyan\" | \"sky\" | \"blue\" | \"indigo\" | \"violet\" | \"purple\" | \"fuchsia\" | \"pink\" | \"rose\" | \"primary\"","schema":{"kind":"enum","type":"\"red\" | \"orange\" | \"amber\" | \"yellow\" | \"lime\" | \"green\" | \"emerald\" | \"teal\" | \"cyan\" | \"sky\" | \"blue\" | \"indigo\" | \"violet\" | \"purple\" | \"fuchsia\" | \"pink\" | \"rose\" | \"primary\"","schema":{"0":"\"red\"","1":"\"orange\"","2":"\"amber\"","3":"\"yellow\"","4":"\"lime\"","5":"\"green\"","6":"\"emerald\"","7":"\"teal\"","8":"\"cyan\"","9":"\"sky\"","10":"\"blue\"","11":"\"indigo\"","12":"\"violet\"","13":"\"purple\"","14":"\"fuchsia\"","15":"\"pink\"","16":"\"rose\"","17":"\"primary\""}},"default":"\"primary\""},{"name":"to","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"target","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"title","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"ui","global":false,"description":"","tags":[],"required":false,"type":"any","schema":"any","default":"{}"}],"slots":[{"name":"default","type":"{ unwrap: string; }","description":"","schema":{"kind":"object","type":"{ unwrap: string; }","schema":{"unwrap":{"name":"unwrap","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}}}}],"events":[]}},{"name":"CardGroup","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/CardGroup.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"CodeGroup","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/CodeGroup.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"Collapsible","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/Collapsible.vue","meta":{"props":[{"name":"name","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"properties\""},{"name":"openText","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"Show\""},{"name":"closeText","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"Hide\""}],"slots":[{"name":"default","type":"{ unwrap: string; }","description":"","schema":{"kind":"object","type":"{ unwrap: string; }","schema":{"unwrap":{"name":"unwrap","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}}}}],"events":[]}},{"name":"Field","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/Field.vue","meta":{"props":[{"name":"name","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"},{"name":"default","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"type","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"ui","global":false,"description":"","tags":[],"required":false,"type":"Partial<{ wrapper: string; container: string; name: string; required: string; type: string; label: string; description: string; }>","schema":"Partial<{ wrapper: string; container: string; name: string; required: string; type: string; label: string; description: string; }>","default":"{}"},{"name":"description","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"required","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"FieldGroup","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/FieldGroup.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"Shortcut","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/Shortcut.vue","meta":{"props":[{"name":"value","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}],"slots":[],"events":[]}},{"name":"Tabs","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/Tabs.vue","meta":{"props":[{"name":"selectedIndex","global":false,"description":"","tags":[],"required":false,"type":"number","schema":"number","default":"0"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseCode","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/prose/ProseCode.vue","meta":{"props":[{"name":"code","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"},{"name":"icon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"language","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"filename","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"highlights","global":false,"description":"","tags":[],"required":false,"type":"number[]","schema":{"kind":"array","type":"number[]","schema":{"0":"number"}},"default":"undefined"},{"name":"meta","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"hideHeader","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseCodeButton","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/prose/ProseCodeButton.vue","meta":{"props":[{"name":"code","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}],"slots":[],"events":[]}},{"name":"ProseCodeIcon","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/prose/ProseCodeIcon.vue","meta":{"props":[{"name":"icon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"},{"name":"filename","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"undefined"}],"slots":[],"events":[]}},{"name":"ProseH1","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/prose/ProseH1.vue","meta":{"props":[{"name":"id","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseH2","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/prose/ProseH2.vue","meta":{"props":[{"name":"id","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseH3","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/prose/ProseH3.vue","meta":{"props":[{"name":"id","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseH4","path":"node_modules/.pnpm/@nuxt+ui-pro@1.5.0_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22._h64ipphqof4k65kh4pbwnylrua/node_modules/@nuxt/ui-pro/modules/pro/runtime/components/global/prose/ProseH4.vue","meta":{"props":[{"name":"id","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseCodeInline","path":"node_modules/.pnpm/@nuxt+content@2.13.4_ioredis@5.4.1_magicast@0.3.5_nuxt@3.14.159_@parcel+watcher@2.4.1_@types+_wtayxspreinlrl4f6bthpz5whi/node_modules/@nuxt/content/dist/runtime/components/Prose/ProseCodeInline.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProsePre","path":"node_modules/.pnpm/@nuxt+content@2.13.4_ioredis@5.4.1_magicast@0.3.5_nuxt@3.14.159_@parcel+watcher@2.4.1_@types+_wtayxspreinlrl4f6bthpz5whi/node_modules/@nuxt/content/dist/runtime/components/Prose/ProsePre.vue","meta":{"props":[{"name":"code","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"\""},{"name":"language","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"null"},{"name":"filename","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"null"},{"name":"highlights","global":false,"description":"","tags":[],"required":false,"type":"number[]","schema":{"kind":"array","type":"number[]","schema":{"0":"number"}},"default":"[]"},{"name":"meta","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"null"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseA","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseA.vue","meta":{"props":[{"name":"href","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"\""},{"name":"target","global":false,"description":"","tags":[],"required":false,"type":"\"_blank\" | \"_parent\" | \"_self\" | \"_top\"","schema":{"kind":"enum","type":"\"_blank\" | \"_parent\" | \"_self\" | \"_top\"","schema":{"0":"\"_blank\"","1":"\"_parent\"","2":"\"_self\"","3":"\"_top\""}},"default":"undefined"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseBlockquote","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseBlockquote.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseEm","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseEm.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseH5","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseH5.vue","meta":{"props":[{"name":"id","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseH6","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseH6.vue","meta":{"props":[{"name":"id","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseHr","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseHr.vue","meta":{"props":[],"slots":[],"events":[]}},{"name":"ProseImg","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseImg.vue","meta":{"props":[{"name":"src","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"\""},{"name":"alt","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"\""},{"name":"width","global":false,"description":"","tags":[],"required":false,"type":"string | number","schema":{"kind":"enum","type":"string | number","schema":{"0":"string","1":"number"}},"default":"undefined"},{"name":"height","global":false,"description":"","tags":[],"required":false,"type":"string | number","schema":{"kind":"enum","type":"string | number","schema":{"0":"string","1":"number"}},"default":"undefined"}],"slots":[],"events":[]}},{"name":"ProseLi","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseLi.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseOl","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseOl.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseP","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseP.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseScript","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseScript.vue","meta":{"props":[{"name":"src","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"\""}],"slots":[],"events":[]}},{"name":"ProseStrong","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseStrong.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseTable","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseTable.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseTbody","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseTbody.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseTd","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseTd.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseTh","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseTh.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseThead","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseThead.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseTr","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseTr.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"ProseUl","path":"node_modules/.pnpm/@nuxtjs+mdc@0.9.2_magicast@0.3.5_rollup@4.27.2/node_modules/@nuxtjs/mdc/dist/runtime/components/prose/ProseUl.vue","meta":{"props":[],"slots":[{"name":"default","type":"{}","description":"","schema":{"kind":"object","type":"{}","schema":{}}}],"events":[]}},{"name":"UButton","path":"node_modules/.pnpm/@nuxt+ui@2.19.2_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22.7.7_q3dal5o4w4rtlsceghlswtiofm/node_modules/@nuxt/ui/dist/runtime/components/elements/Button.vue","meta":{"props":[{"name":"type","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"\"button\""},{"name":"size","global":false,"description":"","tags":[],"required":false,"type":"ButtonSize","schema":{"kind":"enum","type":"ButtonSize","schema":{"0":"\"xs\"","1":"\"md\"","2":"\"2xs\"","3":"\"sm\"","4":"\"lg\"","5":"\"xl\""}},"default":"config.default.size"},{"name":"to","global":false,"description":"","tags":[],"required":false,"type":"string | RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric","schema":{"kind":"enum","type":"string | RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric","schema":{"0":"string","1":{"kind":"object","type":"RouteLocationAsRelativeGeneric","schema":{"name":{"name":"name","global":false,"description":"","tags":[],"required":false,"type":"RouteRecordNameGeneric","schema":{"kind":"enum","type":"RouteRecordNameGeneric","schema":{"0":"string","1":"symbol"}}},"params":{"name":"params","global":false,"description":"","tags":[],"required":false,"type":"RouteParamsRawGeneric","schema":"RouteParamsRawGeneric"},"path":{"name":"path","global":false,"description":"A relative path to the current location. This property should be removed","tags":[],"required":false,"type":"undefined","schema":"undefined"},"query":{"name":"query","global":false,"description":"","tags":[],"required":false,"type":"LocationQueryRaw","schema":"LocationQueryRaw"},"hash":{"name":"hash","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"replace":{"name":"replace","global":false,"description":"Replace the entry in the history instead of pushing a new entry","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}}},"force":{"name":"force","global":false,"description":"Triggers the navigation even if the location is the same as the current one.\r\nNote this will also add a new entry to the history unless `replace: true`\r\nis passed.","tags":[],"required":false,"type":"boolean","schema":"boolean"},"state":{"name":"state","global":false,"description":"State to save using the History API. This cannot contain any reactive\r\nvalues and some primitives like Symbols are forbidden. More info at\r\nhttps://developer.mozilla.org/en-US/docs/Web/API/History/state","tags":[],"required":false,"type":"HistoryState","schema":{"kind":"object","type":"HistoryState","schema":{}}}}},"2":{"kind":"object","type":"RouteLocationAsPathGeneric","schema":{"path":{"name":"path","global":false,"description":"Percentage encoded pathname section of the URL.","tags":[],"required":true,"type":"string","schema":"string"},"query":{"name":"query","global":false,"description":"","tags":[],"required":false,"type":"LocationQueryRaw","schema":"LocationQueryRaw"},"hash":{"name":"hash","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"replace":{"name":"replace","global":false,"description":"Replace the entry in the history instead of pushing a new entry","tags":[],"required":false,"type":"boolean","schema":"boolean"},"force":{"name":"force","global":false,"description":"Triggers the navigation even if the location is the same as the current one.\r\nNote this will also add a new entry to the history unless `replace: true`\r\nis passed.","tags":[],"required":false,"type":"boolean","schema":"boolean"},"state":{"name":"state","global":false,"description":"State to save using the History API. This cannot contain any reactive\r\nvalues and some primitives like Symbols are forbidden. More info at\r\nhttps://developer.mozilla.org/en-US/docs/Web/API/History/state","tags":[],"required":false,"type":"HistoryState","schema":"HistoryState"}}}}}},{"name":"target","global":false,"description":"","tags":[],"required":false,"type":"\"_blank\" | \"_parent\" | \"_self\" | \"_top\" | (string & {})","schema":{"kind":"enum","type":"\"_blank\" | \"_parent\" | \"_self\" | \"_top\" | (string & {})","schema":{"0":"\"_blank\"","1":"\"_parent\"","2":"\"_self\"","3":"\"_top\"","4":{"kind":"object","type":"string & {}","schema":{}}}}},{"name":"activeClass","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},{"name":"exactActiveClass","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},{"name":"ariaCurrentValue","global":false,"description":"","tags":[],"required":false,"type":"\"false\" | \"page\" | \"step\" | \"location\" | \"date\" | \"time\" | \"true\"","schema":{"kind":"enum","type":"\"false\" | \"page\" | \"step\" | \"location\" | \"date\" | \"time\" | \"true\"","schema":{"0":"\"false\"","1":"\"page\"","2":"\"step\"","3":"\"location\"","4":"\"date\"","5":"\"time\"","6":"\"true\""}}},{"name":"prefetchedClass","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},{"name":"color","global":false,"description":"","tags":[],"required":false,"type":"ButtonColor","schema":{"kind":"enum","type":"ButtonColor","schema":{"0":"\"gray\"","1":"\"white\"","2":"\"black\"","3":"\"red\"","4":"\"orange\"","5":"\"amber\"","6":"\"yellow\"","7":"\"lime\"","8":"\"green\"","9":"\"emerald\"","10":"\"teal\"","11":"\"cyan\"","12":"\"sky\"","13":"\"blue\"","14":"\"indigo\"","15":"\"violet\"","16":"\"purple\"","17":"\"fuchsia\"","18":"\"pink\"","19":"\"rose\"","20":"\"primary\""}},"default":"config.default.color"},{"name":"variant","global":false,"description":"","tags":[],"required":false,"type":"ButtonVariant","schema":{"kind":"enum","type":"ButtonVariant","schema":{"0":"\"link\"","1":"\"solid\"","2":"\"outline\"","3":"\"soft\"","4":"\"ghost\""}},"default":"config.default.variant"},{"name":"href","global":false,"description":"","tags":[],"required":false,"type":"string | RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric","schema":{"kind":"enum","type":"string | RouteLocationAsRelativeGeneric | RouteLocationAsPathGeneric","schema":{"0":"string","1":{"kind":"object","type":"RouteLocationAsRelativeGeneric","schema":{"name":{"name":"name","global":false,"description":"","tags":[],"required":false,"type":"RouteRecordNameGeneric","schema":{"kind":"enum","type":"RouteRecordNameGeneric","schema":{"0":"string","1":"symbol"}}},"params":{"name":"params","global":false,"description":"","tags":[],"required":false,"type":"RouteParamsRawGeneric","schema":"RouteParamsRawGeneric"},"path":{"name":"path","global":false,"description":"A relative path to the current location. This property should be removed","tags":[],"required":false,"type":"undefined","schema":"undefined"},"query":{"name":"query","global":false,"description":"","tags":[],"required":false,"type":"LocationQueryRaw","schema":"LocationQueryRaw"},"hash":{"name":"hash","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"replace":{"name":"replace","global":false,"description":"Replace the entry in the history instead of pushing a new entry","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}}},"force":{"name":"force","global":false,"description":"Triggers the navigation even if the location is the same as the current one.\r\nNote this will also add a new entry to the history unless `replace: true`\r\nis passed.","tags":[],"required":false,"type":"boolean","schema":"boolean"},"state":{"name":"state","global":false,"description":"State to save using the History API. This cannot contain any reactive\r\nvalues and some primitives like Symbols are forbidden. More info at\r\nhttps://developer.mozilla.org/en-US/docs/Web/API/History/state","tags":[],"required":false,"type":"HistoryState","schema":{"kind":"object","type":"HistoryState","schema":{}}}}},"2":{"kind":"object","type":"RouteLocationAsPathGeneric","schema":{"path":{"name":"path","global":false,"description":"Percentage encoded pathname section of the URL.","tags":[],"required":true,"type":"string","schema":"string"},"query":{"name":"query","global":false,"description":"","tags":[],"required":false,"type":"LocationQueryRaw","schema":"LocationQueryRaw"},"hash":{"name":"hash","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"replace":{"name":"replace","global":false,"description":"Replace the entry in the history instead of pushing a new entry","tags":[],"required":false,"type":"boolean","schema":"boolean"},"force":{"name":"force","global":false,"description":"Triggers the navigation even if the location is the same as the current one.\r\nNote this will also add a new entry to the history unless `replace: true`\r\nis passed.","tags":[],"required":false,"type":"boolean","schema":"boolean"},"state":{"name":"state","global":false,"description":"State to save using the History API. This cannot contain any reactive\r\nvalues and some primitives like Symbols are forbidden. More info at\r\nhttps://developer.mozilla.org/en-US/docs/Web/API/History/state","tags":[],"required":false,"type":"HistoryState","schema":"HistoryState"}}}}}},{"name":"rel","global":false,"description":"","tags":[],"required":false,"type":"any","schema":"any"},{"name":"label","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"null"},{"name":"ui","global":false,"description":"","tags":[],"required":false,"type":"{ base?: string; font?: string; rounded?: string; truncate?: string; block?: string; inline?: string; size?: DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>; ... 6 more ...; default?: DeepPartial<...>; } & { ...; } & { ...; }","schema":{"kind":"object","type":"{ base?: string; font?: string; rounded?: string; truncate?: string; block?: string; inline?: string; size?: DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>; ... 6 more ...; default?: DeepPartial<...>; } & { ...; } & { ...; }","schema":{"base":{"name":"base","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"font":{"name":"font","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"rounded":{"name":"rounded","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"truncate":{"name":"truncate","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"block":{"name":"block","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"inline":{"name":"inline","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"size":{"name":"size","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"2xs":{"name":"2xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xs":{"name":"xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"sm":{"name":"sm","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"md":{"name":"md","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"lg":{"name":"lg","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xl":{"name":"xl","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"gap":{"name":"gap","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"2xs":{"name":"2xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xs":{"name":"xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"sm":{"name":"sm","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"md":{"name":"md","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"lg":{"name":"lg","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xl":{"name":"xl","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"padding":{"name":"padding","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"2xs":{"name":"2xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xs":{"name":"xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"sm":{"name":"sm","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"md":{"name":"md","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"lg":{"name":"lg","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xl":{"name":"xl","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"square":{"name":"square","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"2xs":{"name":"2xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xs":{"name":"xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"sm":{"name":"sm","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"md":{"name":"md","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"lg":{"name":"lg","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xl":{"name":"xl","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"color":{"name":"color","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ white: { solid: string; ghost: string; }; gray: { solid: string; ghost: string; link: string; }; black: { solid: string; link: string; }; }, any>","schema":{"kind":"object","type":"DeepPartial<{ white: { solid: string; ghost: string; }; gray: { solid: string; ghost: string; link: string; }; black: { solid: string; link: string; }; }, any>","schema":{"white":{"name":"white","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ solid: string; ghost: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ solid: string; ghost: string; }, any>","schema":{"solid":{"name":"solid","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"ghost":{"name":"ghost","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"gray":{"name":"gray","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ solid: string; ghost: string; link: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ solid: string; ghost: string; link: string; }, any>","schema":{"solid":{"name":"solid","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"ghost":{"name":"ghost","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"link":{"name":"link","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"black":{"name":"black","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ solid: string; link: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ solid: string; link: string; }, any>","schema":{"solid":{"name":"solid","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"link":{"name":"link","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}}}}},"variant":{"name":"variant","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ solid: string; outline: string; soft: string; ghost: string; link: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ solid: string; outline: string; soft: string; ghost: string; link: string; }, any>","schema":{"solid":{"name":"solid","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"outline":{"name":"outline","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"soft":{"name":"soft","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"ghost":{"name":"ghost","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"link":{"name":"link","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"icon":{"name":"icon","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ base: string; loading: string; size: { '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }; }, any>","schema":{"kind":"object","type":"DeepPartial<{ base: string; loading: string; size: { '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }; }, any>","schema":{"base":{"name":"base","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"loading":{"name":"loading","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"size":{"name":"size","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ '2xs': string; xs: string; sm: string; md: string; lg: string; xl: string; }, any>","schema":{"2xs":{"name":"2xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xs":{"name":"xs","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"sm":{"name":"sm","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"md":{"name":"md","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"lg":{"name":"lg","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"xl":{"name":"xl","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}}}}},"default":{"name":"default","global":false,"description":"","tags":[],"required":false,"type":"DeepPartial<{ size: string; variant: string; color: string; loadingIcon: string; }, any>","schema":{"kind":"object","type":"DeepPartial<{ size: string; variant: string; color: string; loadingIcon: string; }, any>","schema":{"size":{"name":"size","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"variant":{"name":"variant","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"color":{"name":"color","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"},"loadingIcon":{"name":"loadingIcon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string"}}}},"strategy":{"name":"strategy","global":false,"description":"","tags":[],"required":false,"type":"Strategy","schema":{"kind":"enum","type":"Strategy","schema":{"0":"\"merge\"","1":"\"override\""}}}}},"default":"{}"},{"name":"icon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"null"},{"name":"loadingIcon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"config.default.loadingIcon"},{"name":"leadingIcon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"null"},{"name":"trailingIcon","global":false,"description":"","tags":[],"required":false,"type":"string","schema":"string","default":"null"},{"name":"disabled","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"},{"name":"truncate","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"},{"name":"replace","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}}},{"name":"noRel","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}}},{"name":"prefetch","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}}},{"name":"noPrefetch","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}}},{"name":"external","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}}},{"name":"leading","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"},{"name":"block","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"},{"name":"square","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"},{"name":"loading","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"},{"name":"padded","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"true"},{"name":"trailing","global":false,"description":"","tags":[],"required":false,"type":"boolean","schema":{"kind":"enum","type":"boolean","schema":{"0":"false","1":"true"}},"default":"false"}],"slots":[],"events":[]}},{"name":"UIcon","path":"node_modules/.pnpm/@nuxt+ui@2.19.2_change-case@5.4.4_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22.7.7_q3dal5o4w4rtlsceghlswtiofm/node_modules/@nuxt/ui/dist/runtime/components/elements/Icon.vue","meta":{"props":[{"name":"name","global":false,"description":"","tags":[],"required":true,"type":"string","schema":"string"},{"name":"mode","global":false,"description":"","tags":[],"required":false,"type":"\"svg\" | \"css\"","schema":{"kind":"enum","type":"\"svg\" | \"css\"","schema":{"0":"\"svg\"","1":"\"css\""}},"default":"null"},{"name":"size","global":false,"description":"","tags":[],"required":false,"type":"string | number","schema":{"kind":"enum","type":"string | number","schema":{"0":"string","1":"number"}},"default":"null"},{"name":"customize","global":false,"description":"","tags":[],"required":false,"type":"Function","schema":{"kind":"object","type":"Function","schema":{}},"default":"null"}],"slots":[],"events":[]}},{"name":"Icon","path":"node_modules/.pnpm/@nuxt+icon@1.7.5_magicast@0.3.5_rollup@4.27.2_vite@5.4.11_@types+node@22.7.7_terser@5.36.0__vue@3.5.12_typescript@5.6.3_/node_modules/@nuxt/icon/dist/runtime/components/index.js","meta":{"props":[],"slots":[],"events":[]}}]} \ No newline at end of file diff --git a/_fonts/rP2Wp2ywxg089UriCZaSExd86J3t9jz86MvyyKK58UfivUw4aw-SK92LTmKP0.woff2 b/_fonts/rP2Wp2ywxg089UriCZaSExd86J3t9jz86MvyyKK58UfivUw4aw-SK92LTmKP0.woff2 new file mode 100644 index 0000000..bd34161 Binary files /dev/null and b/_fonts/rP2Wp2ywxg089UriCZaSExd86J3t9jz86MvyyKK58UfivUw4aw-SK92LTmKP0.woff2 differ diff --git a/_fonts/rP2Wp2ywxg089UriCZaSExd86J3t9jz86MvyyKy58UfivUw-9uYm8d48E4.woff2 b/_fonts/rP2Wp2ywxg089UriCZaSExd86J3t9jz86MvyyKy58UfivUw-9uYm8d48E4.woff2 new file mode 100644 index 0000000..c9de121 Binary files /dev/null and b/_fonts/rP2Wp2ywxg089UriCZaSExd86J3t9jz86MvyyKy58UfivUw-9uYm8d48E4.woff2 differ diff --git a/_fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K6z9mXg-VNw7NHvqnp.woff2 b/_fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K6z9mXg-VNw7NHvqnp.woff2 new file mode 100644 index 0000000..273c248 Binary files /dev/null and b/_fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu0-K6z9mXg-VNw7NHvqnp.woff2 differ diff --git a/_fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6z9mXgjU0-EkYdMs3MAX.woff2 b/_fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6z9mXgjU0-EkYdMs3MAX.woff2 new file mode 100644 index 0000000..fb61588 Binary files /dev/null and b/_fonts/rP2Yp2ywxg089UriI5-g4vlH9VoD8Cmcqbu6-K6z9mXgjU0-EkYdMs3MAX.woff2 differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-7DW3w-R7n06NbhGy.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-7DW3w-R7n06NbhGy.woff new file mode 100644 index 0000000..5e24aa8 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-7DW3w-R7n06NbhGy.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDG3w-leGNfkTmsj.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDG3w-leGNfkTmsj.woff new file mode 100644 index 0000000..84575b6 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDG3w-leGNfkTmsj.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW3w-ciElMF03ku.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW3w-ciElMF03ku.woff new file mode 100644 index 0000000..2636d95 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat-JDW3w-ciElMF03ku.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JCm3w-sB722Uoa0f.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JCm3w-sB722Uoa0f.woff new file mode 100644 index 0000000..b6da26e Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JCm3w-sB722Uoa0f.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JDW3w-PBDI1JDjwV.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JDW3w-PBDI1JDjwV.woff new file mode 100644 index 0000000..a423036 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8JDW3w-PBDI1JDjwV.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8gCm3w-0q1hqVn09O.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8gCm3w-0q1hqVn09O.woff new file mode 100644 index 0000000..b71d044 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat8gCm3w-0q1hqVn09O.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9XCm3w-ByvzuLy2fa.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9XCm3w-ByvzuLy2fa.woff new file mode 100644 index 0000000..8e5eb04 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9XCm3w-ByvzuLy2fa.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9uCm3w-5TKCIs6EEw.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9uCm3w-5TKCIs6EEw.woff new file mode 100644 index 0000000..0be5436 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat9uCm3w-5TKCIs6EEw.woff differ diff --git a/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat_XDW3w-r2swRDGfn2.woff b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat_XDW3w-r2swRDGfn2.woff new file mode 100644 index 0000000..01270e0 Binary files /dev/null and b/_fonts/rP2rp2ywxg089UriCZaSExd86J3t9jz86Mvy4qCRAL19DksVat_XDW3w-r2swRDGfn2.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAC5thTQ-ldB60l5U8r.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAC5thTQ-ldB60l5U8r.woff new file mode 100644 index 0000000..0821cfd Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAC5thTQ-ldB60l5U8r.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpthTQ-wbFKGFDrgo.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpthTQ-wbFKGFDrgo.woff new file mode 100644 index 0000000..a6cf364 Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpthTQ-wbFKGFDrgo.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpxhTQ-LLUBv5jskj.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpxhTQ-LLUBv5jskj.woff new file mode 100644 index 0000000..dd97388 Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAIpxhTQ-LLUBv5jskj.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthTQ-F71RdTRbNg.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthTQ-F71RdTRbNg.woff new file mode 100644 index 0000000..4b5991a Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwARZthTQ-F71RdTRbNg.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwA_JxhTQ-6nh65gZkc0.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwA_JxhTQ-6nh65gZkc0.woff new file mode 100644 index 0000000..670e1ea Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwA_JxhTQ-6nh65gZkc0.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJthTQ-aMoWEJLmTt.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJthTQ-aMoWEJLmTt.woff new file mode 100644 index 0000000..81186a9 Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAfJthTQ-aMoWEJLmTt.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAkJxhTQ-WMBvmLOgKm.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAkJxhTQ-WMBvmLOgKm.woff new file mode 100644 index 0000000..41d8057 Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAkJxhTQ-WMBvmLOgKm.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAop1hTQ-utGC2hnWq2.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAop1hTQ-utGC2hnWq2.woff new file mode 100644 index 0000000..542f35f Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAop1hTQ-utGC2hnWq2.woff differ diff --git a/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhTQ-YpyTieVa5B.woff b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhTQ-YpyTieVa5B.woff new file mode 100644 index 0000000..b1d8633 Binary files /dev/null and b/_fonts/rP2tp2ywxg089UriI5-g4vlH9VoD8CmcqZG40F9JadbnoEwAopxhTQ-YpyTieVa5B.woff differ diff --git a/_nuxt/-1x9XUuu.js b/_nuxt/-1x9XUuu.js new file mode 100644 index 0000000..e0d34ab --- /dev/null +++ b/_nuxt/-1x9XUuu.js @@ -0,0 +1 @@ +import{k as r,c as t,e as a,ah as o}from"./WKNqgS7_.js";const s={};function c(e,n){return t(),a("thead",null,[o(e.$slots,"default")])}const d=r(s,[["render",c]]);export{d as default}; diff --git a/_nuxt/4UyRv5WE.js b/_nuxt/4UyRv5WE.js new file mode 100644 index 0000000..9bb3454 --- /dev/null +++ b/_nuxt/4UyRv5WE.js @@ -0,0 +1 @@ +import{d as h,an as v,ao as f,c as m,e as g,f as o,n as l,C as e,ah as n,h as k,i as r,ai as b,by as y,a1 as $,ag as C,w as i,aZ as w,bz as x,bA as A,aV as N}from"./WKNqgS7_.js";const U={class:"relative"},B=h({inheritAttrs:!1,__name:"Aside",props:{links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(c){const p={wrapper:"hidden overflow-y-auto lg:block lg:max-h-[calc(100vh-var(--header-height))] lg:sticky lg:top-[--header-height] py-8 lg:px-4 lg:-mx-4",top:{wrapper:"sticky -top-8 -mt-8 pointer-events-none z-[1]",header:"h-8 bg-background -mx-4 px-4",body:"bg-background relative pointer-events-auto flex -mx-4 px-4",footer:"h-8 bg-gradient-to-b from-background -mx-4 px-4"}},t=c,{ui:s,attrs:d}=v("aside",f(t,"ui"),p,f(t,"class"),!0);return(a,_)=>{const u=y;return m(),g("aside",b({class:e(s).wrapper},e(d)),[o("div",U,[a.$slots.top?(m(),g("div",{key:0,class:l(e(s).top.wrapper)},[o("div",{class:l(e(s).top.header)},null,2),o("div",{class:l(e(s).top.body)},[n(a.$slots,"top")],2),o("div",{class:l(e(s).top.footer)},null,2)],2)):k("",!0),n(a.$slots,"links",{},()=>[r(u,{links:c.links},null,8,["links"])]),n(a.$slots,"default"),n(a.$slots,"bottom")])],16)}}}),j=h({__name:"docs",setup(c){const p=$("navigation");return(t,s)=>{const d=A,a=B,_=N,u=w;return m(),C(u,null,{default:i(()=>[r(_,null,{left:i(()=>[r(a,null,{default:i(()=>[r(d,{links:("mapContentNavigation"in t?t.mapContentNavigation:e(x))(e(p))},null,8,["links"])]),_:1})]),default:i(()=>[n(t.$slots,"default")]),_:3})]),_:3})}}});export{j as default}; diff --git a/_nuxt/5APy8Axm.js b/_nuxt/5APy8Axm.js new file mode 100644 index 0000000..49a3a7a --- /dev/null +++ b/_nuxt/5APy8Axm.js @@ -0,0 +1 @@ +import{d as l,x as u,B as d,an as m,c as h,e as _,i as s,w as f,f as x,n as o,C as a,ah as g,a9 as w,aJ as v}from"./WKNqgS7_.js";const y=["id"],b=l({__name:"ProseH3",props:{id:{type:String,required:!0}},setup(n){const t=u(),r=d(()=>({wrapper:"scroll-mt-[calc(48px+32px+var(--header-height))] lg:scroll-mt-[calc(32px+var(--header-height))]",icon:{wrapper:"-ml-6 pr-2 py-2 inline-flex opacity-0 group-hover:lg:opacity-100 transition-opacity absolute",base:"w-4 h-4 text-primary",name:t.ui.icons.hash}})),{ui:e}=m("content.prose.h3",void 0,r,void 0,!0);return(c,C)=>{const i=w,p=v;return h(),_("h3",{id:n.id,class:o(a(e).wrapper)},[s(p,{href:`#${n.id}`,class:"group"},{default:f(()=>[x("div",{class:o(a(e).icon.wrapper)},[s(i,{name:a(e).icon.name,class:o(a(e).icon.base)},null,8,["name","class"])],2),g(c.$slots,"default")]),_:3},8,["href"])],10,y)}}});export{b as default}; diff --git a/_nuxt/B0m2ddpp.js b/_nuxt/B0m2ddpp.js new file mode 100644 index 0000000..6f25cb8 --- /dev/null +++ b/_nuxt/B0m2ddpp.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#FAFAFA","activityBar.border":"#FAFAFA60","activityBar.dropBackground":"#E5393580","activityBar.foreground":"#90A4AE","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#CCD7DA30","badge.foreground":"#90A4AE","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#FAFAFA","breadcrumb.focusForeground":"#90A4AE","breadcrumb.foreground":"#758a95","breadcrumbPicker.background":"#FAFAFA","button.background":"#80CBC440","button.foreground":"#ffffff","debugConsole.errorForeground":"#E53935","debugConsole.infoForeground":"#39ADB5","debugConsole.warningForeground":"#E2931D","debugToolBar.background":"#FAFAFA","diffEditor.insertedTextBackground":"#39ADB520","diffEditor.removedTextBackground":"#FF537020","dropdown.background":"#FAFAFA","dropdown.border":"#00000010","editor.background":"#FAFAFA","editor.findMatchBackground":"#00000020","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#90A4AE","editor.findMatchHighlightBackground":"#00000010","editor.findMatchHighlightBorder":"#00000030","editor.findRangeHighlightBackground":"#E2931D30","editor.foreground":"#90A4AE","editor.lineHighlightBackground":"#CCD7DA50","editor.lineHighlightBorder":"#CCD7DA00","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#80CBC440","editor.selectionHighlightBackground":"#27272720","editor.wordHighlightBackground":"#FF537030","editor.wordHighlightStrongBackground":"#91B85930","editorBracketMatch.background":"#FAFAFA","editorBracketMatch.border":"#27272750","editorCursor.foreground":"#272727","editorError.foreground":"#E5393570","editorGroup.border":"#00000020","editorGroup.dropBackground":"#E5393580","editorGroup.focusedEmptyBorder":"#E53935","editorGroupHeader.tabsBackground":"#FAFAFA","editorGutter.addedBackground":"#91B85960","editorGutter.deletedBackground":"#E5393560","editorGutter.modifiedBackground":"#6182B860","editorHoverWidget.background":"#FAFAFA","editorHoverWidget.border":"#00000010","editorIndentGuide.activeBackground":"#B0BEC5","editorIndentGuide.background":"#B0BEC570","editorInfo.foreground":"#6182B870","editorLineNumber.activeForeground":"#758a95","editorLineNumber.foreground":"#CFD8DC","editorLink.activeForeground":"#90A4AE","editorMarkerNavigation.background":"#90A4AE05","editorOverviewRuler.border":"#FAFAFA","editorOverviewRuler.errorForeground":"#E5393540","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#6182B840","editorOverviewRuler.warningForeground":"#E2931D40","editorRuler.foreground":"#B0BEC5","editorSuggestWidget.background":"#FAFAFA","editorSuggestWidget.border":"#00000010","editorSuggestWidget.foreground":"#90A4AE","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#CCD7DA50","editorWarning.foreground":"#E2931D70","editorWhitespace.foreground":"#90A4AE40","editorWidget.background":"#FAFAFA","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#90A4AE","extensionButton.prominentBackground":"#91B85990","extensionButton.prominentForeground":"#90A4AE","extensionButton.prominentHoverBackground":"#91B859","focusBorder":"#FFFFFF00","foreground":"#90A4AE","gitDecoration.conflictingResourceForeground":"#E2931D90","gitDecoration.deletedResourceForeground":"#E5393590","gitDecoration.ignoredResourceForeground":"#758a9590","gitDecoration.modifiedResourceForeground":"#6182B890","gitDecoration.untrackedResourceForeground":"#91B85990","input.background":"#EEEEEE","input.border":"#00000010","input.foreground":"#90A4AE","input.placeholderForeground":"#90A4AE60","inputOption.activeBackground":"#90A4AE30","inputOption.activeBorder":"#90A4AE30","inputValidation.errorBorder":"#E53935","inputValidation.infoBorder":"#6182B8","inputValidation.warningBorder":"#E2931D","list.activeSelectionBackground":"#FAFAFA","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#E5393580","list.focusBackground":"#90A4AE20","list.focusForeground":"#90A4AE","list.highlightForeground":"#80CBC4","list.hoverBackground":"#FAFAFA","list.hoverForeground":"#B1C7D3","list.inactiveSelectionBackground":"#CCD7DA50","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#CCD7DA50","listFilterWidget.noMatchesOutline":"#CCD7DA50","listFilterWidget.outline":"#CCD7DA50","menu.background":"#FAFAFA","menu.foreground":"#90A4AE","menu.selectionBackground":"#CCD7DA50","menu.selectionBorder":"#CCD7DA50","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#90A4AE","menubar.selectionBackground":"#CCD7DA50","menubar.selectionBorder":"#CCD7DA50","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#FAFAFA","notifications.foreground":"#90A4AE","panel.background":"#FAFAFA","panel.border":"#FAFAFA60","panel.dropBackground":"#90A4AE","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#000000","panelTitle.inactiveForeground":"#90A4AE","peekView.border":"#00000020","peekViewEditor.background":"#EEEEEE","peekViewEditor.matchHighlightBackground":"#80CBC440","peekViewEditorGutter.background":"#EEEEEE","peekViewResult.background":"#EEEEEE","peekViewResult.matchHighlightBackground":"#80CBC440","peekViewResult.selectionBackground":"#758a9570","peekViewTitle.background":"#EEEEEE","peekViewTitleDescription.foreground":"#90A4AE60","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#FAFAFA","quickInput.foreground":"#758a95","quickInput.list.focusBackground":"#90A4AE20","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000020","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#90A4AE20","scrollbarSlider.hoverBackground":"#90A4AE10","selection.background":"#CCD7DA80","settings.checkboxBackground":"#FAFAFA","settings.checkboxForeground":"#90A4AE","settings.dropdownBackground":"#FAFAFA","settings.dropdownForeground":"#90A4AE","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#FAFAFA","settings.numberInputForeground":"#90A4AE","settings.textInputBackground":"#FAFAFA","settings.textInputForeground":"#90A4AE","sideBar.background":"#FAFAFA","sideBar.border":"#FAFAFA60","sideBar.foreground":"#758a95","sideBarSectionHeader.background":"#FAFAFA","sideBarSectionHeader.border":"#FAFAFA60","sideBarTitle.foreground":"#90A4AE","statusBar.background":"#FAFAFA","statusBar.border":"#FAFAFA60","statusBar.debuggingBackground":"#9C3EDA","statusBar.debuggingForeground":"#FFFFFF","statusBar.foreground":"#7E939E","statusBar.noFolderBackground":"#FAFAFA","statusBarItem.activeBackground":"#E5393580","statusBarItem.hoverBackground":"#90A4AE20","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#FAFAFA","tab.activeBorder":"#80CBC4","tab.activeForeground":"#000000","tab.activeModifiedBorder":"#758a95","tab.border":"#FAFAFA","tab.inactiveBackground":"#FAFAFA","tab.inactiveForeground":"#758a95","tab.inactiveModifiedBorder":"#89221f","tab.unfocusedActiveBorder":"#90A4AE","tab.unfocusedActiveForeground":"#90A4AE","tab.unfocusedActiveModifiedBorder":"#b72d2a","tab.unfocusedInactiveModifiedBorder":"#89221f","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#6182B8","terminal.ansiBrightBlack":"#90A4AE","terminal.ansiBrightBlue":"#6182B8","terminal.ansiBrightCyan":"#39ADB5","terminal.ansiBrightGreen":"#91B859","terminal.ansiBrightMagenta":"#9C3EDA","terminal.ansiBrightRed":"#E53935","terminal.ansiBrightWhite":"#FFFFFF","terminal.ansiBrightYellow":"#E2931D","terminal.ansiCyan":"#39ADB5","terminal.ansiGreen":"#91B859","terminal.ansiMagenta":"#9C3EDA","terminal.ansiRed":"#E53935","terminal.ansiWhite":"#FFFFFF","terminal.ansiYellow":"#E2931D","terminalCursor.background":"#000000","terminalCursor.foreground":"#E2931D","textLink.activeForeground":"#90A4AE","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#FAFAFA","titleBar.activeForeground":"#90A4AE","titleBar.border":"#FAFAFA60","titleBar.inactiveBackground":"#FAFAFA","titleBar.inactiveForeground":"#758a95","tree.indentGuidesStroke":"#B0BEC5","widget.shadow":"#00000020"},"displayName":"Material Theme Lighter","name":"material-theme-lighter","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#FAFAFA","foreground":"#90A4AE"}},{"scope":"string","settings":{"foreground":"#91B859"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#39ADB5"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#90A4AE"}},{"scope":"constant.language.boolean","settings":{"foreground":"#FF5370"}},{"scope":"constant.numeric","settings":{"foreground":"#F76D47"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#90A4AE"}},{"scope":"keyword.other","settings":{"foreground":"#F76D47"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#39ADB5"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#6182B8"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#9C3EDA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#E53935"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#E2931D"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#E2931D"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#90A4AE"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#90A4AE"}},{"scope":"punctuation","settings":{"foreground":"#39ADB5"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#E2931D"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#E53935"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#E53935"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#6182B8"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#39ADB5"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#90A4AE"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#E53935"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#E53935"}},{"scope":"constant.language.json","settings":{"foreground":"#39ADB5"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#E2931D"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F76D47"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#E2931D"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#8796B0"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#39ADB5"}},{"scope":"entity.name.tag","settings":{"foreground":"#E53935"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#9C3EDA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#90A4AE"}},{"scope":"markup.heading","settings":{"foreground":"#39ADB5"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#E53935"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#39ADB5"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#E53935"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#E53935"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#E53935"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#91B859"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#91B859"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#E53935"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#39ADB5"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#E2931D"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#E53935"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#6182B8"}},{"scope":"source.cs storage.type","settings":{"foreground":"#E2931D"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#E2931D"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#90A4AE"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#90A4AE"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#90A4AE"}},{"scope":"support.class.component","settings":{"foreground":"#E2931D"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#90A4AE"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#E53935"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#6182B8"}},{"scope":"meta.block","settings":{"foreground":"#E53935"}},{"scope":"entity.name.function.call","settings":{"foreground":"#6182B8"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#90A4AE"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#39ADB5"}},{"scope":"entity.name.function","settings":{"foreground":"#6182B8"}},{"settings":{"background":"#FAFAFA","foreground":"#90A4AE"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#E53935"}},{"scope":["markup.deleted"],"settings":{"foreground":"#E53935"}},{"scope":["markup.inserted"],"settings":{"foreground":"#91B859"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#39ADB5"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#E53935"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F76D47"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#39ADB5"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#90A4AE90"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#FF5370"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#9C3EDA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#E2931D"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F76D47"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#E53935"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#6182B8"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FF5370"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#9C3EDA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#91B859"}}],"type":"light"}'));export{e as default}; diff --git a/_nuxt/BBZIarDJ.js b/_nuxt/BBZIarDJ.js new file mode 100644 index 0000000..0b2078f --- /dev/null +++ b/_nuxt/BBZIarDJ.js @@ -0,0 +1 @@ +import{d as C,x as S,B as l,an as A,ao as m,b5 as s,c as n,ag as i,w as f,C as e,f as y,h as c,n as u,t as B,e as I,ai as U,aJ as D,a9 as L}from"./WKNqgS7_.js";import{_ as $}from"./COj52qHV.js";import{r as E}from"./Cv00pZP1.js";import"./BneCoJRQ.js";const T=C({inheritAttrs:!1,__name:"Card",props:{icon:{type:String,default:void 0},color:{type:String,default:"primary"},to:{type:String,default:void 0},target:{type:String,default:void 0},title:{type:String,default:void 0},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(o){const x=S(),b=l(()=>({wrapper:"relative group overflow-hidden flex items-center rounded-lg",to:"hover:ring-1 hover:ring-[--color-light] dark:hover:ring-[--color-dark] hover:bg-gray-100/50 dark:hover:bg-gray-800/50",icon:{base:"w-6 h-6 mb-4 inline-flex items-center text-[--color-light] dark:text-[--color-dark] pointer-events-none"},body:{base:"flex-1"},externalIcon:{name:x.ui.icons.external,base:"w-4 h-4 absolute right-2 top-2 text-gray-400 dark:text-gray-500 group-hover:text-[--color-light] dark:group-hover:text-[--color-dark]"},title:"text-gray-900 dark:text-white font-semibold text-base my-0",description:"text-[15px] text-gray-500 dark:text-gray-400 mt-1 mb-0"})),t=o,{ui:r,attrs:h}=A("content.card",m(t,"ui"),b,m(t,"class"),!0),k=l(()=>{var a;return t.color==="primary"?"rgb(var(--color-primary-DEFAULT))":((a=s[t.color])==null?void 0:a["500"])||s[t.color]||t.color}),v=l(()=>{var a;return t.color==="primary"?"rgb(var(--color-primary-DEFAULT))":((a=s[t.color])==null?void 0:a["400"])||s[t.color]||t.color}),d=l(()=>t.target||(t.to&&t.to.startsWith("http")?"_blank":void 0));return(a,g)=>{const _=D,p=L,w=$;return n(),i(w,U({class:[e(r).wrapper,o.to&&e(r).to]},e(h),{ui:e(r),style:{"--color-light":e(k),"--color-dark":e(v)}}),{default:f(()=>[o.to?(n(),i(_,{key:0,to:o.to,target:e(d),class:"focus:outline-none",tabindex:"-1"},{default:f(()=>g[0]||(g[0]=[y("span",{class:"absolute inset-0","aria-hidden":"true"},null,-1)])),_:1},8,["to","target"])):c("",!0),o.icon?(n(),i(p,{key:1,name:o.icon,class:u(e(r).icon.base)},null,8,["name","class"])):c("",!0),o.to&&e(d)==="_blank"?(n(),i(p,{key:2,name:e(r).externalIcon.name,class:u(e(r).externalIcon.base)},null,8,["name","class"])):c("",!0),y("p",{class:u(e(r).title)},B(o.title),3),a.$slots.default?(n(),I("p",{key:3,class:u(e(r).description)},[E(a.$slots,"default",{unwrap:"p"})],2)):c("",!0)]),_:3},16,["class","ui","style"])}}});export{T as default}; diff --git a/_nuxt/BV-5FLB8.js b/_nuxt/BV-5FLB8.js new file mode 100644 index 0000000..2711eea --- /dev/null +++ b/_nuxt/BV-5FLB8.js @@ -0,0 +1 @@ +import{k as r,c as t,e as o,ah as s}from"./WKNqgS7_.js";const c={};function n(e,a){return t(),o("th",null,[s(e.$slots,"default")])}const f=r(c,[["render",n]]);export{f as default}; diff --git a/_nuxt/BZfx9C-e.js b/_nuxt/BZfx9C-e.js new file mode 100644 index 0000000..cd50671 --- /dev/null +++ b/_nuxt/BZfx9C-e.js @@ -0,0 +1 @@ +import{k as r,c as o,e as s,ah as t}from"./WKNqgS7_.js";const c={};function n(e,a){return o(),s("li",null,[t(e.$slots,"default")])}const f=r(c,[["render",n]]);export{f as default}; diff --git a/_nuxt/Bb-sXBL5.js b/_nuxt/Bb-sXBL5.js new file mode 100644 index 0000000..c8e47bb --- /dev/null +++ b/_nuxt/Bb-sXBL5.js @@ -0,0 +1 @@ +import{k as r,c as o,e as s,ah as t}from"./WKNqgS7_.js";const c={};function n(e,a){return o(),s("p",null,[t(e.$slots,"default")])}const f=r(c,[["render",n]]);export{f as default}; diff --git a/_nuxt/Bb3iJIYE.js b/_nuxt/Bb3iJIYE.js new file mode 100644 index 0000000..7182e36 --- /dev/null +++ b/_nuxt/Bb3iJIYE.js @@ -0,0 +1,2 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./rNYH57DI.js","./WKNqgS7_.js","./bNaE6FFb.js"])))=>i.map(i=>d[i]); +import{_ as f}from"./WKNqgS7_.js";import{v as y,t as d}from"./DY7OrFLh.js";import"./CtS59gnC.js";import"./BneCoJRQ.js";import"./Cpj98o6Y.js";import"./COj52qHV.js";function N(i){const e=i;return async r=>{const h=[],o=[];y(r,s=>{var t,l;return["pre","code"].includes(s.tagName)&&!!((t=s.properties)!=null&&t.language||(l=s.properties)!=null&&l.highlights)},s=>{const t=s,l=typeof t.properties.highlights=="string"?t.properties.highlights.split(/[,\s]+/).map(Number):Array.isArray(t.properties.highlights)?t.properties.highlights.map(Number):[],m=e.highlighter(d(s),t.properties.language,e.theme,{highlights:l.filter(Boolean),meta:t.properties.meta}).then(({tree:a,className:c,style:n,inlineStyle:u})=>{var g;t.properties.className=((t.properties.className||"")+" "+c).trim(),t.properties.style=((t.properties.style||"")+" "+u).trim(),((g=t.children[0])==null?void 0:g.tagName)==="code"?t.children[0].children=a:t.children=a[0].children||a,n&&o.push(n)});h.push(m)}),h.length&&(await Promise.all(h),r.children.push({type:"element",tagName:"style",children:[{type:"text",value:_(o.join(""))}],properties:{}}))}}const _=i=>{const e=i.split("}").filter(r=>!!r.trim()).map(r=>r.trim()+"}");return Array.from(new Set(e)).join("")},p={theme:{},async highlighter(i,e,r,h){var o,s;try{return window.sessionStorage.getItem("mdc-shiki-highlighter")==="browser"?f(()=>import("./rNYH57DI.js").then(t=>t.m),__vite__mapDeps([0,1,2]),import.meta.url).then(t=>t.default(i,e,r,h)).catch(()=>({})):await $fetch("/api/_mdc/highlight",{params:{code:i,lang:e,theme:JSON.stringify(r),options:JSON.stringify(h)}})}catch(t){if(((o=t==null?void 0:t.response)==null?void 0:o.status)===404)return window.sessionStorage.setItem("mdc-shiki-highlighter","browser"),(s=this.highlighter)==null?void 0:s.call(this,i,e,r,h)}return Promise.resolve({tree:[{type:"text",value:i}],className:"",style:""})}};function w(i={}){const e={...p,...i};return typeof e.highlighter!="function"&&(e.highlighter=p.highlighter),N(e)}const x={},I={highlight:{instance:w,options:{}}},O={theme:{light:"material-theme-lighter",default:"material-theme",dark:"material-theme-palenight"}};export{O as highlight,I as rehypePlugins,x as remarkPlugins}; diff --git a/_nuxt/Bcmapgcr.js b/_nuxt/Bcmapgcr.js new file mode 100644 index 0000000..2418a31 --- /dev/null +++ b/_nuxt/Bcmapgcr.js @@ -0,0 +1 @@ +import{k as r,c as o,e as s,ah as t}from"./WKNqgS7_.js";const c={};function n(e,a){return o(),s("em",null,[t(e.$slots,"default")])}const f=r(c,[["render",n]]);export{f as default}; diff --git a/_nuxt/BeSffZBD.js b/_nuxt/BeSffZBD.js new file mode 100644 index 0000000..e9045cc --- /dev/null +++ b/_nuxt/BeSffZBD.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?]|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^yield|[^\\\\._$0-9A-Za-z]yield|^throw|[^\\\\._$0-9A-Za-z]throw|^in|[^\\\\._$0-9A-Za-z]in|^of|[^\\\\._$0-9A-Za-z]of|^typeof|[^\\\\._$0-9A-Za-z]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?)","name":"meta.arrow.ts"},{"begin":"(?:(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=\\\\}|\\\\S)(?)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?)","name":"cast.expr.ts"},{"begin":"(?:(?*?\\\\&\\\\|\\\\^]|[^_$0-9A-Za-z](?:\\\\+\\\\+|--)|[^+]\\\\+|[^\\\\-]-))\\\\s*(<)(?!)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?:(?<=^))\\\\s*(<)(?=[_$A-Za-z][_$0-9A-Za-z]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"()|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|\'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\'))|[^*\\\\\\\\])*?\'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\'\'\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ts"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$0-9A-Za-z])(!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","end":"(?<=>)(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*[{\\\\[(]\\\\s*$))","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"},{"match":"([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])","name":"variable.other.constant.ts"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s+instanceof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\(|<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[(<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\\'\\\\\\"\\\\`])","end":"(?=:)|((?<=[\\\\\'\\\\\\"\\\\`])(?=((\\\\s*[(<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"(?:[_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=,|\\\\})","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|^|((?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$0-9A-Za-z]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^\\\\d])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?])|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?])|(?=^\\\\s*$)|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?)(?:?]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?)(?]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?)))))))|(:\\\\s*(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?:&|{?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[;,=}]|((?)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[,);}\\\\]]|((?]|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^yield|[^\\\\._$0-9A-Za-z]yield|^throw|[^\\\\._$0-9A-Za-z]throw|^in|[^\\\\._$0-9A-Za-z]in|^of|[^\\\\._$0-9A-Za-z]of|^typeof|[^\\\\._$0-9A-Za-z]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.js"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js"}},"name":"meta.objectliteral.js","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js"},"2":{"name":"punctuation.definition.binding-pattern.array.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js"},"2":{"name":"punctuation.definition.binding-pattern.array.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.js"}},"name":"meta.array.literal.js","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"variable.parameter.js"}},"match":"(?:(?)","name":"meta.arrow.js"},{"begin":"(?:(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.js","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js"}},"end":"((?<=\\\\}|\\\\S)(?)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.js","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.js","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.js"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.js","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.js"},"2":{"name":"entity.name.tag.directive.js"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.js"}},"name":"meta.tag.js","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.js"},{"match":"=","name":"keyword.operator.assignment.js"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"()|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.js"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.js"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!'))|[^*\\\\\\\\])*?'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([''\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"variable.parameter.js variable.language.this.js"},"4":{"name":"variable.parameter.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.js"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.js"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.js"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.js"},{"captures":{"1":{"name":"keyword.operator.logical.js"},"2":{"name":"keyword.operator.assignment.compound.js"},"3":{"name":"keyword.operator.arithmetic.js"}},"match":"(?<=[_$0-9A-Za-z])(!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.js"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.js"},{"match":"=","name":"keyword.operator.assignment.js"},{"match":"--","name":"keyword.operator.decrement.js"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.js"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.js"},{"begin":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.js"},"2":{"name":"keyword.operator.arithmetic.js"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.js"},"2":{"name":"keyword.operator.arithmetic.js"}},"match":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#jsx"},{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.property.js variable.object.property.js"},{"match":"\\\\?","name":"keyword.operator.optional.js"},{"match":"!","name":"keyword.operator.definiteassignment.js"}]},"for-loop":{"begin":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\\\\())","name":"meta.function-call.js","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","end":"(?<=>)(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*[{\\\\[(]\\\\s*$))","name":"meta.function-call.js","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.js punctuation.accessor.optional.js"},{"match":"!","name":"meta.function-call.js keyword.operator.definiteassignment.js"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.js"}]},"function-declaration":{"begin":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.js"},"2":{"name":"punctuation.accessor.optional.js"},"3":{"name":"variable.other.constant.property.js"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])"},{"captures":{"1":{"name":"punctuation.accessor.js"},"2":{"name":"punctuation.accessor.optional.js"},"3":{"name":"variable.other.property.js"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"},{"match":"([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])","name":"variable.other.constant.js"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"variable.other.readwrite.js"}]},"if-statement":{"patterns":[{"begin":"(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s+instanceof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?))","end":"(/>)|(?:())","endCaptures":{"1":{"name":"punctuation.definition.tag.end.js"},"2":{"name":"punctuation.definition.tag.begin.js"},"3":{"name":"entity.name.tag.namespace.js"},"4":{"name":"punctuation.separator.namespace.js"},"5":{"name":"entity.name.tag.js"},"6":{"name":"support.class.component.js"},"7":{"name":"punctuation.definition.tag.end.js"}},"name":"meta.tag.js","patterns":[{"begin":"(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js"},"2":{"name":"entity.name.tag.namespace.js"},"3":{"name":"punctuation.separator.namespace.js"},"4":{"name":"entity.name.tag.js"},"5":{"name":"support.class.component.js"}},"end":"(?=[/]?>)","patterns":[{"include":"#comment"},{"include":"#type-arguments"},{"include":"#jsx-tag-attributes"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.js"}},"contentName":"meta.jsx.children.js","end":"(?=|/\\\\*|//)"},"jsx-tag-attributes":{"begin":"\\\\s+","end":"(?=[/]?>)","name":"meta.tag.attributes.js","patterns":[{"include":"#comment"},{"include":"#jsx-tag-attribute-name"},{"include":"#jsx-tag-attribute-assignment"},{"include":"#jsx-string-double-quoted"},{"include":"#jsx-string-single-quoted"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-tag-attributes-illegal"}]},"jsx-tag-attributes-illegal":{"match":"\\\\S+","name":"invalid.illegal.attribute.js"},"jsx-tag-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^default|[^\\\\._$0-9A-Za-z]default|^yield|[^\\\\._$0-9A-Za-z]yield|^)\\\\s*(?!<\\\\s*[_$A-Za-z][_$0-9A-Za-z]*((\\\\s+extends\\\\s+[^=>])|,))(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))","end":"(?!(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))","patterns":[{"include":"#jsx-tag"}]},"jsx-tag-without-attributes":{"begin":"(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js"},"2":{"name":"entity.name.tag.namespace.js"},"3":{"name":"punctuation.separator.namespace.js"},"4":{"name":"entity.name.tag.js"},"5":{"name":"support.class.component.js"},"6":{"name":"punctuation.definition.tag.end.js"}},"contentName":"meta.jsx.children.js","end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.js"},"2":{"name":"entity.name.tag.namespace.js"},"3":{"name":"punctuation.separator.namespace.js"},"4":{"name":"entity.name.tag.js"},"5":{"name":"support.class.component.js"},"6":{"name":"punctuation.definition.tag.end.js"}},"name":"meta.tag.without-attributes.js","patterns":[{"include":"#jsx-children"}]},"jsx-tag-without-attributes-in-expression":{"begin":"(?:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^default|[^\\\\._$0-9A-Za-z]default|^yield|[^\\\\._$0-9A-Za-z]yield|^)\\\\s*(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))","end":"(?!(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?))","patterns":[{"include":"#jsx-tag-without-attributes"}]},"label":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.js"},"2":{"name":"punctuation.separator.label.js"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.js"},"2":{"name":"punctuation.separator.label.js"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.js"},"2":{"name":"storage.modifier.js"},"3":{"name":"storage.modifier.js"},"4":{"name":"storage.modifier.async.js"},"5":{"name":"keyword.operator.new.js"},"6":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.js"},"2":{"name":"storage.modifier.js"},"3":{"name":"storage.modifier.js"},"4":{"name":"storage.modifier.async.js"},"5":{"name":"storage.type.property.js"},"6":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"storage.type.property.js"},"3":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.js","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"storage.type.property.js"},"3":{"name":"keyword.generator.asterisk.js"}},"end":"(?=\\\\(|<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[(<]))","name":"meta.object.member.js meta.object-literal.key.js","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\'\\\\\\"\\\\\`])","end":"(?=:)|((?<=[\\\\'\\\\\\"\\\\\`])(?=((\\\\s*[(<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.js meta.object-literal.key.js","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.js"},{"captures":{"0":{"name":"meta.object-literal.key.js"}},"match":"(?:[_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.js"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js"}},"end":"(?=,|\\\\})","name":"meta.object.member.js","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.js"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.js"},{"captures":{"1":{"name":"keyword.control.as.js"},"2":{"name":"storage.modifier.js"}},"match":"(?]|\\\\|\\\\||\\\\&\\\\&|!==|$|^|((?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js"},"2":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js"},"2":{"name":"punctuation.definition.binding-pattern.array.js"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.js"}},"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"variable.parameter.js variable.language.this.js"},"4":{"name":"variable.parameter.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?])","name":"meta.type.annotation.js","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$0-9A-Za-z]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.js meta.return.type.arrow.js keyword.operator.type.annotation.js"}},"contentName":"meta.arrow.js meta.return.type.arrow.js","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.js"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js"},"2":{"name":"keyword.other.js"}},"name":"string.regexp.js","patterns":[{"include":"#regexp"}]},{"begin":"((?"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js"}},"end":"(?]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.js"},"2":{"name":"support.type.object.module.js"},"3":{"name":"punctuation.accessor.js"},"4":{"name":"punctuation.accessor.optional.js"},"5":{"name":"support.type.object.module.js"}},"match":"(?\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\`)","end":"(?=\`)","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)?\`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.tagged-template.js"}]},{"include":"#type-arguments"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?))*(?)*(?\\\\s*)\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js"}},"end":"(?=\`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js"}},"contentName":"meta.embedded.line.js","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js"}},"name":"meta.template.expression.js","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js"},"2":{"name":"string.template.js punctuation.definition.string.template.begin.js"}},"contentName":"string.template.js","end":"\`","endCaptures":{"0":{"name":"string.template.js punctuation.definition.string.template.end.js"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js"}},"contentName":"meta.embedded.line.js","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js"}},"name":"meta.template.expression.js","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^\\\\d])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.js"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.js"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?])|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js"}},"end":"(?])|(?=^\\\\s*$)|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.js"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.js"}},"name":"meta.type.parameters.js","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.js"}},"match":"(?)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?))))))","end":"(?<=\\\\))","name":"meta.type.function.js","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.js"}},"end":"(?)(?:?]|//|$)","name":"meta.type.function.return.js","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js"}},"end":"(?)(?]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.js","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.js"},"2":{"name":"entity.name.type.js"},"3":{"name":"keyword.operator.expression.extends.js"}},"match":"(?)","endCaptures":{"1":{"name":"meta.type.parameters.js punctuation.definition.typeparameters.end.js"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.js"},"2":{"name":"meta.type.parameters.js punctuation.definition.typeparameters.begin.js"}},"contentName":"meta.type.parameters.js","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.js punctuation.definition.typeparameters.end.js"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.js"},"2":{"name":"punctuation.accessor.js"},"3":{"name":"punctuation.accessor.optional.js"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"entity.name.type.js"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js"}},"name":"meta.object.type.js","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.js"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.js"}},"end":"(?=\\\\S)"},{"match":"(?)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.js"}},"name":"meta.type.parameters.js","patterns":[{"include":"#comment"},{"match":"(?)","name":"keyword.operator.assignment.js"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js"}},"name":"meta.type.paren.cover.js","patterns":[{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"entity.name.function.js variable.language.this.js"},"4":{"name":"entity.name.function.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?)))))))|(:\\\\s*(?(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.js"},"2":{"name":"keyword.operator.rest.js"},"3":{"name":"variable.parameter.js variable.language.this.js"},"4":{"name":"variable.parameter.js"},"5":{"name":"keyword.operator.optional.js"}},"match":"(?:(?:&|{?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js variable.other.constant.js entity.name.function.js"}},"end":"(?=$|^|[;,=}]|((?)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js entity.name.function.js"},"2":{"name":"keyword.operator.definiteassignment.js"}},"end":"(?=$|^|[;,=}]|((?\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.js"}},"end":"(?=$|^|[,);}\\\\]]|((?({wrapper:"scroll-mt-[calc(48px+24px+var(--header-height))] lg:scroll-mt-[calc(24px+var(--header-height))]",icon:{wrapper:"-ml-6 pr-2 py-1 inline-flex opacity-0 group-hover:lg:opacity-100 transition-opacity absolute",base:"w-4 h-4 text-primary",name:t.ui.icons.hash}})),{ui:e}=m("content.prose.h4",void 0,r,void 0,!0);return(c,C)=>{const i=w,p=v;return h(),_("h4",{id:n.id,class:o(a(e).wrapper)},[s(p,{href:`#${n.id}`,class:"group"},{default:f(()=>[x("div",{class:o(a(e).icon.wrapper)},[s(i,{name:a(e).icon.name,class:o(a(e).icon.base)},null,8,["name","class"])],2),g(c.$slots,"default")]),_:3},8,["href"])],10,y)}}});export{b as default}; diff --git a/_nuxt/Bh0h7kXY.js b/_nuxt/Bh0h7kXY.js new file mode 100644 index 0000000..cef7a66 --- /dev/null +++ b/_nuxt/Bh0h7kXY.js @@ -0,0 +1 @@ +import{k as r,c as o,e as t,ah as n}from"./WKNqgS7_.js";const s={};function c(e,a){return o(),t("strong",null,[n(e.$slots,"default")])}const f=r(s,[["render",c]]);export{f as default}; diff --git a/_nuxt/BjABl1g7.js b/_nuxt/BjABl1g7.js new file mode 100644 index 0000000..f0ca105 --- /dev/null +++ b/_nuxt/BjABl1g7.js @@ -0,0 +1 @@ +const n=Object.freeze(JSON.parse(`{"displayName":"INI","name":"ini","patterns":[{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.number-sign.ini"}]},{"begin":"(^[ \\\\t]+)?(?=;)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ini"}},"end":"(?!\\\\G)","patterns":[{"begin":";","beginCaptures":{"0":{"name":"punctuation.definition.comment.ini"}},"end":"\\\\n","name":"comment.line.semicolon.ini"}]},{"captures":{"1":{"name":"keyword.other.definition.ini"},"2":{"name":"punctuation.separator.key-value.ini"}},"match":"\\\\b([a-zA-Z0-9_.-]+)\\\\b\\\\s*(=)"},{"captures":{"1":{"name":"punctuation.definition.entity.ini"},"3":{"name":"punctuation.definition.entity.ini"}},"match":"^(\\\\[)(.*?)(\\\\])","name":"entity.name.section.group-title.ini"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.single.ini","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.ini"}]},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ini"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.ini"}},"name":"string.quoted.double.ini"}],"scopeName":"source.ini","aliases":["properties"]}`)),i=[n];export{i as default}; diff --git a/_nuxt/Bm8GSR-O.js b/_nuxt/Bm8GSR-O.js new file mode 100644 index 0000000..6f0305e --- /dev/null +++ b/_nuxt/Bm8GSR-O.js @@ -0,0 +1 @@ +import t from"./D0ybgVpa.js";import n from"./g_GSZ1hr.js";import e from"./Begb3drz.js";import a from"./BeSffZBD.js";import i from"./DWmkr0yC.js";import{h as s}from"./Dt1gzhwr.js";const u=Object.freeze(JSON.parse('{"fileTypes":[],"injectTo":["text.html.markdown"],"injectionSelector":"L:text.html.markdown","name":"markdown-vue","patterns":[{"include":"#vue-code-block"}],"repository":{"vue-code-block":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(vue)((\\\\s+|:|,|\\\\{|\\\\?)[^`~]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown","patterns":[]}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"include":"source.vue"}]}},"scopeName":"markdown.vue.codeblock"}')),m=[u],r=Object.freeze(JSON.parse('{"fileTypes":[],"injectTo":["source.vue","text.html.markdown","text.html.derivative","text.pug"],"injectionSelector":"L:meta.tag -meta.attribute -meta.ng-binding -entity.name.tag.pug -attribute_value -source.tsx -source.js.jsx, L:meta.element -meta.attribute","name":"vue-directives","patterns":[{"include":"source.vue#vue-directives"}],"scopeName":"vue.directives"}')),c=[r],o=Object.freeze(JSON.parse('{"fileTypes":[],"injectTo":["source.vue","text.html.markdown","text.html.derivative","text.pug"],"injectionSelector":"L:text.pug -comment -string.comment, L:text.html.derivative -comment.block, L:text.html.markdown -comment.block","name":"vue-interpolations","patterns":[{"include":"source.vue#vue-interpolations"}],"scopeName":"vue.interpolations"}')),l=[o],d=Object.freeze(JSON.parse(`{"fileTypes":[],"injectTo":["source.vue"],"injectionSelector":"L:source.css -comment, L:source.postcss -comment, L:source.sass -comment, L:source.stylus -comment","name":"vue-sfc-style-variable-injection","patterns":[{"include":"#vue-sfc-style-variable-injection"}],"repository":{"vue-sfc-style-variable-injection":{"begin":"\\\\b(v-bind)\\\\s*\\\\(","beginCaptures":{"1":{"name":"entity.name.function"}},"end":"\\\\)","name":"vue.sfc.style.variable.injection.v-bind","patterns":[{"begin":"('|\\")","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"}},"end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"source.ts.embedded.html.vue","patterns":[{"include":"source.js"}]},{"include":"source.js"}]}},"scopeName":"vue.sfc.style.variable.injection","embeddedLangs":["javascript"]}`)),g=[...e,d],p=Object.freeze(JSON.parse(`{"displayName":"Vue","name":"vue","patterns":[{"include":"text.html.basic#comment"},{"include":"#self-closing-tag"},{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"patterns":[{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)md\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text.html.markdown","patterns":[{"include":"text.html.markdown"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)html\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text.html.derivative","patterns":[{"include":"#html-stuff"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)pug\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text.pug","patterns":[{"include":"text.pug"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)stylus\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.stylus","patterns":[{"include":"source.stylus"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)postcss\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.postcss","patterns":[{"include":"source.postcss"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)sass\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.sass","patterns":[{"include":"source.sass"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)css\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.css","patterns":[{"include":"source.css"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)scss\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.css.scss","patterns":[{"include":"source.css.scss"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)less\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.css.less","patterns":[{"include":"source.css.less"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)js\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.js","patterns":[{"include":"source.js"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)ts\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.ts","patterns":[{"include":"source.ts"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)jsx\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.js.jsx","patterns":[{"include":"source.js.jsx"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)tsx\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.tsx","patterns":[{"include":"source.tsx"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)coffee\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.coffee","patterns":[{"include":"source.coffee"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)json\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.json","patterns":[{"include":"source.json"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)jsonc\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.json.comments","patterns":[{"include":"source.json.comments"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)json5\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.json5","patterns":[{"include":"source.json5"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)yaml\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.yaml","patterns":[{"include":"source.yaml"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)toml\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.toml","patterns":[{"include":"source.toml"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)(gql|graphql)\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.graphql","patterns":[{"include":"source.graphql"}]}]},{"begin":"([a-zA-Z0-9:-]+)\\\\b(?=[^>]*\\\\blang\\\\s*=\\\\s*(['\\"]?)vue\\\\b\\\\2)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"source.vue","patterns":[{"include":"source.vue"}]}]},{"begin":"(template)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/template\\\\b)","name":"text.html.derivative","patterns":[{"include":"#html-stuff"}]}]},{"begin":"(script)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/script\\\\b)","name":"source.js","patterns":[{"include":"source.js"}]}]},{"begin":"(style)\\\\b","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/style\\\\b)","name":"source.css","patterns":[{"include":"source.css"}]}]},{"begin":"([a-zA-Z0-9:-]+)","beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"end":"()","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"patterns":[{"include":"#tag-stuff"},{"begin":"(?<=>)","end":"(?=<\\\\/)","name":"text"}]}]}],"repository":{"html-stuff":{"patterns":[{"include":"#template-tag"},{"include":"text.html.derivative"},{"include":"text.html.basic"}]},"self-closing-tag":{"begin":"(<)([a-zA-Z0-9:-]+)(?=([^>]+/>))","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"end":"(/>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"self-closing-tag","patterns":[{"include":"#tag-stuff"}]},"tag-stuff":{"begin":"\\\\G","end":"(?=/>)|(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"meta.tag-stuff","patterns":[{"include":"#vue-directives"},{"include":"text.html.basic#attribute"}]},"template-tag":{"patterns":[{"include":"#template-tag-1"},{"include":"#template-tag-2"}]},"template-tag-1":{"begin":"(<)(template)\\\\b(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"},"3":{"name":"punctuation.definition.tag.end.html.vue"}},"end":"(/?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"meta.template-tag.start","patterns":[{"begin":"\\\\G","end":"(?=/>)|(()","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}},"name":"meta.template-tag.start","patterns":[{"begin":"\\\\G","end":"(?=/>)|((|\\\\/>))","patterns":[{"begin":"(?=[^'\\"\`])","end":"(?=(\\\\s|>|\\\\/>))","name":"source.ts.embedded.html.vue","patterns":[{"include":"source.ts#expression"}]}]}]},"vue-directives-generic-attr":{"begin":"\\\\b(generic)\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"}},"end":"(?<='|\\")","name":"meta.attribute.generic.vue","patterns":[{"begin":"('|\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.html.vue"}},"comment":"https://github.com/microsoft/vscode/blob/fd4346210f59135fad81a8b8c4cea7bf5a9ca6b4/extensions/typescript-basics/syntaxes/TypeScript.tmLanguage.json#L4002-L4020","end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}},"name":"meta.type.parameters.vue","patterns":[{"include":"source.ts#comment"},{"match":"(?)","name":"keyword.operator.assignment.ts"}]}]},"vue-directives-original":{"begin":"(?:(?:(v-[\\\\w-]+)(:)?)|([:\\\\.])|(@)|(#))(?:(?:(\\\\[)([^\\\\]]*)(\\\\]))|([\\\\w-]+))?","beginCaptures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"},"3":{"name":"punctuation.attribute-shorthand.bind.html.vue"},"4":{"name":"punctuation.attribute-shorthand.event.html.vue"},"5":{"name":"punctuation.attribute-shorthand.slot.html.vue"},"6":{"name":"punctuation.separator.key-value.html.vue"},"7":{"name":"source.ts.embedded.html.vue","patterns":[{"include":"source.ts#expression"}]},"8":{"name":"punctuation.separator.key-value.html.vue"},"9":{"name":"entity.other.attribute-name.html.vue"}},"end":"(?=\\\\s*[^=\\\\s])","endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}},"name":"meta.attribute.directive.vue","patterns":[{"1":{"name":"punctuation.separator.key-value.html.vue"},"2":{"name":"entity.other.attribute-name.html.vue"},"match":"(\\\\.)([\\\\w-]*)"},{"include":"#vue-directives-expression"}]},"vue-directives-style-attr":{"begin":"\\\\b(style)\\\\s*(=)","captures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"}},"end":"(?<='|\\")","name":"meta.attribute.style.vue","patterns":[{"begin":"('|\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.html.vue"}},"comment":"Copy from source.css#rule-list-innards","end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}},"name":"source.css.embedded.html.vue","patterns":[{"include":"source.css#comment-block"},{"include":"source.css#escapes"},{"include":"source.css#font-features"},{"match":"(?h(e,t));let i=r;return t.some(e=>e==="*"||f(r,e))&&(i=l(r)||r,!Array.isArray(i)&&y.some(e=>f(r,e))&&(i=[i])),i}function p(r,t=[]){return r=Array.isArray(r)?r:[r],t.length?r.flatMap(i=>p(h(i,[t[0]]),t.slice(1))).filter(i=>!(u(i)&&n(i).trim()==="")):r}function a(r,t=[]){return typeof t=="string"&&(t=t.split(",").map(i=>i.trim()).filter(Boolean)),t.length?p(r,t).reduce((i,e)=>(u(e)?typeof i[i.length-1]=="string"?i[i.length-1]+=e.children:i.push(e.children):i.push(e),i),[]):r}export{a as f,n}; diff --git a/_nuxt/Bq6KmDO_.js b/_nuxt/Bq6KmDO_.js new file mode 100644 index 0000000..0900631 --- /dev/null +++ b/_nuxt/Bq6KmDO_.js @@ -0,0 +1 @@ +import{d as m,an as y,ao as u,c as s,e as i,f as n,n as r,C as e,t as d,h as l,ah as g,g as x,ai as v}from"./WKNqgS7_.js";const b=m({inheritAttrs:!1,__name:"Field",props:{name:{type:String,required:!0},description:{type:String,default:void 0},type:{type:String,default:void 0},required:{type:Boolean,default:!1},default:{type:String,default:void 0},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(t){const p={wrapper:"mt-5",container:"flex items-start gap-x-2.5 font-mono text-sm",name:"rounded-md font-semibold text-primary",required:"text-gray-500 dark:text-gray-400",type:"text-right",label:"flex flex-1 gap-x-2.5",description:"mt-3 mb-0 text-gray-600 dark:text-gray-300 text-sm space-y-3"},o=t,{ui:a,attrs:f}=y("content.field",u(o,"ui"),p,u(o,"class"),!0);return(c,k)=>(s(),i("div",v({class:e(a).wrapper},e(f)),[n("div",{class:r(e(a).container)},[n("div",{class:r(e(a).label)},[n("span",{class:r(e(a).name)},d(t.name),3),t.required?(s(),i("span",{key:0,class:r(e(a).required)},"required",2)):l("",!0)],2),t.type?(s(),i("div",{key:0,class:r(e(a).type)},d(t.type),3)):l("",!0)],2),c.$slots.default||t.description?(s(),i("div",{key:0,class:r(e(a).description)},[g(c.$slots,"default",{},()=>[x(d(t.description),1)])],2)):l("",!0)],16))}});export{b as default}; diff --git a/_nuxt/Bt1lc6BL.js b/_nuxt/Bt1lc6BL.js new file mode 100644 index 0000000..b59485b --- /dev/null +++ b/_nuxt/Bt1lc6BL.js @@ -0,0 +1 @@ +import{d as p,p as f,B as i,c as s,e as n,C as u,ah as r}from"./WKNqgS7_.js";const l=["id"],d=["href"],_=p({__name:"ProseH6",props:{id:{}},setup(c){const t=c,{headings:o}=f().public.mdc,a=i(()=>{var e;return t.id&&(typeof(o==null?void 0:o.anchorLinks)=="boolean"&&(o==null?void 0:o.anchorLinks)===!0||typeof(o==null?void 0:o.anchorLinks)=="object"&&((e=o==null?void 0:o.anchorLinks)==null?void 0:e.h6))});return(e,m)=>(s(),n("h6",{id:t.id},[t.id&&u(a)?(s(),n("a",{key:0,href:`#${t.id}`},[r(e.$slots,"default")],8,d)):r(e.$slots,"default",{key:1})],8,l))}});export{_ as default}; diff --git a/_nuxt/C58JAWZH.js b/_nuxt/C58JAWZH.js new file mode 100644 index 0000000..9974a90 --- /dev/null +++ b/_nuxt/C58JAWZH.js @@ -0,0 +1,4 @@ +import{B as C,C as K,D as zt,E as X,G as Ye,H as Dt,r as B,b as it,I as Fe,J as be,K as lt,d as se,L as fe,M as Nt,N as z,A as oe,O as Vt,P as at,Q as jt,R as Me,o as ye,S as Ce,U as Kt,V as Wt,W as Ht,X as Te,Y as je,F as Ee,Z as Ke,$ as ke,a0 as Ut,a1 as rt,a2 as Gt,a3 as qt,a4 as ee,a5 as ut,a6 as Je,a7 as Yt,a8 as J,k as We,a9 as $e,aa as ct,ab as dt,ac as He,ad as Ue,ae as te,c as L,e as H,n as F,t as ie,h as q,f as Y,af as xe,ag as j,w as U,ah as le,ai as ae,aj as Jt,g as Qt,ak as ht,al as Re,am as ft,an as Ge,ao as Se,ap as pt,aq as vt,ar as Xt,as as Zt,i as ge,at as en,au as mt,av as tn,aw as nn,ax as sn,ay as on,az as gt,aA as ln,x as an,a as rn,aB as un,aC as cn,aD as dn,aE as hn,aF as fn,aG as pn,aH as vn,aI as mn}from"./WKNqgS7_.js";const gn={wrapper:"flex flex-col flex-1 min-h-0 divide-y divide-gray-100 dark:divide-gray-800",container:"relative flex-1 overflow-y-auto divide-y divide-gray-100 dark:divide-gray-800 scroll-py-2",input:{wrapper:"relative flex items-center",base:"w-full placeholder-gray-400 dark:placeholder-gray-500 bg-transparent border-0 text-gray-900 dark:text-white focus:ring-0 focus:outline-none",padding:"px-4",height:"h-12",size:"sm:text-sm",icon:{base:"pointer-events-none absolute start-4 text-gray-400 dark:text-gray-500",loading:"animate-spin",size:"h-5 w-5",padding:"ps-11"},closeButton:{base:"absolute end-4",padding:"pe-10"}},emptyState:{wrapper:"flex flex-col items-center justify-center flex-1 px-6 py-14 sm:px-14",label:"text-sm text-center text-gray-900 dark:text-white",queryLabel:"text-sm text-center text-gray-900 dark:text-white",icon:"w-6 h-6 mx-auto text-gray-400 dark:text-gray-500 mb-4"},group:{wrapper:"p-2",label:"px-2.5 my-2 text-xs font-semibold text-gray-900 dark:text-white",container:"text-sm text-gray-700 dark:text-gray-200",command:{base:"flex justify-between select-none items-center rounded-md px-2.5 py-1.5 gap-2 relative",active:"bg-gray-100 dark:bg-gray-800 text-gray-900 dark:text-white",inactive:"",label:"flex items-center gap-1.5 min-w-0",prefix:"text-gray-400 dark:text-gray-500",suffix:"text-gray-400 dark:text-gray-500",container:"flex items-center gap-1.5 min-w-0",icon:{base:"flex-shrink-0 w-5 h-5",active:"text-gray-900 dark:text-white",inactive:"text-gray-400 dark:text-gray-500"},selectedIcon:{base:"h-5 w-5 text-gray-900 dark:text-white flex-shrink-0"},avatar:{base:"flex-shrink-0",size:"2xs"},chip:{base:"flex-shrink-0 w-2 h-2 mx-1 rounded-full"},disabled:"opacity-50",shortcuts:"hidden md:inline-flex flex-shrink-0 gap-0.5"},active:"flex-shrink-0 text-gray-500 dark:text-gray-400",inactive:"flex-shrink-0 text-gray-500 dark:text-gray-400"},default:{icon:"i-heroicons-magnifying-glass-20-solid",loadingIcon:"i-heroicons-arrow-path-20-solid",emptyState:{icon:"i-heroicons-magnifying-glass-20-solid",label:"We couldn't find any items.",queryLabel:"We couldn't find any items with that term. Please try again."},closeButton:null,selectedIcon:"i-heroicons-check-20-solid"}},bn={wrapper:"relative z-50",inner:"fixed inset-0 overflow-y-auto",container:"flex min-h-full items-end sm:items-center justify-center text-center",padding:"p-4 sm:p-0",margin:"sm:my-8",base:"relative text-left rtl:text-right flex flex-col",overlay:{base:"fixed inset-0 transition-opacity",background:"bg-gray-200/75 dark:bg-gray-800/75",transition:{enter:"ease-out duration-300",enterFrom:"opacity-0",enterTo:"opacity-100",leave:"ease-in duration-200",leaveFrom:"opacity-100",leaveTo:"opacity-0"}},background:"bg-white dark:bg-gray-900",ring:"",rounded:"rounded-lg",shadow:"shadow-xl",width:"w-full sm:max-w-lg",height:"",fullscreen:"w-screen h-screen",transition:{enter:"ease-out duration-300",enterFrom:"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95",enterTo:"opacity-100 translate-y-0 sm:scale-100",leave:"ease-in duration-200",leaveFrom:"opacity-100 translate-y-0 sm:scale-100",leaveTo:"opacity-0 translate-y-4 sm:translate-y-0 sm:scale-95"}};function de(e,s,t){let o=t.initialDeps??[],n;return()=>{var i,a,l,c;let u;t.key&&((i=t.debug)!=null&&i.call(t))&&(u=Date.now());const r=e();if(!(r.length!==o.length||r.some((b,w)=>o[w]!==b)))return n;o=r;let f;if(t.key&&((a=t.debug)!=null&&a.call(t))&&(f=Date.now()),n=s(...r),t.key&&((l=t.debug)!=null&&l.call(t))){const b=Math.round((Date.now()-u)*100)/100,w=Math.round((Date.now()-f)*100)/100,R=w/16,_=(A,O)=>{for(A=String(A);A.lengthMath.abs(e-s)<1,xn=(e,s,t)=>{let o;return function(...n){e.clearTimeout(o),o=e.setTimeout(()=>s.apply(this,n),t)}},Sn=e=>e,In=e=>{const s=Math.max(e.startIndex-e.overscan,0),t=Math.min(e.endIndex+e.overscan,e.count-1),o=[];for(let n=s;n<=t;n++)o.push(n);return o},wn=(e,s)=>{const t=e.scrollElement;if(!t)return;const o=e.targetWindow;if(!o)return;const n=a=>{const{width:l,height:c}=a;s({width:Math.round(l),height:Math.round(c)})};if(n(t.getBoundingClientRect()),!o.ResizeObserver)return()=>{};const i=new o.ResizeObserver(a=>{const l=a[0];if(l!=null&&l.borderBoxSize){const c=l.borderBoxSize[0];if(c){n({width:c.inlineSize,height:c.blockSize});return}}n(t.getBoundingClientRect())});return i.observe(t,{box:"border-box"}),()=>{i.unobserve(t)}},Qe={passive:!0},On=typeof window>"u"?!0:"onscrollend"in window,Mn=(e,s)=>{const t=e.scrollElement;if(!t)return;const o=e.targetWindow;if(!o)return;let n=0;const i=On?()=>{}:xn(o,()=>{s(n,!1)},e.options.isScrollingResetDelay),a=u=>()=>{const{horizontal:r,isRtl:d}=e.options;n=r?t.scrollLeft*(d&&-1||1):t.scrollTop,i(),s(n,u)},l=a(!0),c=a(!1);return c(),t.addEventListener("scroll",l,Qe),t.addEventListener("scrollend",c,Qe),()=>{t.removeEventListener("scroll",l),t.removeEventListener("scrollend",c)}},Cn=(e,s,t)=>{if(s!=null&&s.borderBoxSize){const o=s.borderBoxSize[0];if(o)return Math.round(o[t.options.horizontal?"inlineSize":"blockSize"])}return Math.round(e.getBoundingClientRect()[t.options.horizontal?"width":"height"])},En=(e,{adjustments:s=0,behavior:t},o)=>{var n,i;const a=e+s;(i=(n=o.scrollElement)==null?void 0:n.scrollTo)==null||i.call(n,{[o.options.horizontal?"left":"top"]:a,behavior:t})};class kn{constructor(s){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollToIndexTimeoutId=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.pendingMeasuredCacheIndexes=[],this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let t=null;const o=()=>t||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:t=new this.targetWindow.ResizeObserver(n=>{n.forEach(i=>{this._measureElement(i.target,i)})}));return{disconnect:()=>{var n;(n=o())==null||n.disconnect(),t=null},observe:n=>{var i;return(i=o())==null?void 0:i.observe(n,{box:"border-box"})},unobserve:n=>{var i;return(i=o())==null?void 0:i.unobserve(n)}}})(),this.range=null,this.setOptions=t=>{Object.entries(t).forEach(([o,n])=>{typeof n>"u"&&delete t[o]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Sn,rangeExtractor:In,onChange:()=>{},measureElement:Cn,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,...t}},this.notify=t=>{var o,n;(n=(o=this.options).onChange)==null||n.call(o,this,t)},this.maybeNotify=de(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),t=>{this.notify(t)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(t=>t()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var t;const o=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==o){if(this.cleanup(),!o){this.maybeNotify();return}this.scrollElement=o,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((t=this.scrollElement)==null?void 0:t.window)??null,this.elementsCache.forEach(n=>{this.observer.observe(n)}),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0}),this.unsubs.push(this.options.observeElementRect(this,n=>{this.scrollRect=n,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(n,i)=>{this.scrollAdjustments=0,this.scrollDirection=i?this.getScrollOffset()this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(t,o)=>{const n=new Map,i=new Map;for(let a=o-1;a>=0;a--){const l=t[a];if(n.has(l.lane))continue;const c=i.get(l.lane);if(c==null||l.end>c.end?i.set(l.lane,l):l.enda.end===l.end?a.index-l.index:a.end-l.end)[0]:void 0},this.getMeasurementOptions=de(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled],(t,o,n,i,a)=>(this.pendingMeasuredCacheIndexes=[],{count:t,paddingStart:o,scrollMargin:n,getItemKey:i,enabled:a}),{key:!1}),this.getMeasurements=de(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:t,paddingStart:o,scrollMargin:n,getItemKey:i,enabled:a},l)=>{if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),[];this.measurementsCache.length===0&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(r=>{this.itemSizeCache.set(r.key,r.size)}));const c=this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[];const u=this.measurementsCache.slice(0,c);for(let r=c;rthis.options.debug}),this.calculateRange=de(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset()],(t,o,n)=>this.range=t.length>0&&o>0?Rn({measurements:t,outerSize:o,scrollOffset:n}):null,{key:!1,debug:()=>this.options.debug}),this.getIndexes=de(()=>[this.options.rangeExtractor,this.calculateRange(),this.options.overscan,this.options.count],(t,o,n,i)=>o===null?[]:t({startIndex:o.startIndex,endIndex:o.endIndex,overscan:n,count:i}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=t=>{const o=this.options.indexAttribute,n=t.getAttribute(o);return n?parseInt(n,10):(console.warn(`Missing attribute name '${o}={index}' on measured element.`),-1)},this._measureElement=(t,o)=>{const n=this.indexFromElement(t),i=this.measurementsCache[n];if(!i)return;const a=i.key,l=this.elementsCache.get(a);l!==t&&(l&&this.observer.unobserve(l),this.observer.observe(t),this.elementsCache.set(a,t)),t.isConnected&&this.resizeItem(n,this.options.measureElement(t,o,this))},this.resizeItem=(t,o)=>{const n=this.measurementsCache[t];if(!n)return;const i=this.itemSizeCache.get(n.key)??n.size,a=o-i;a!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(n,a,this):n.start{if(!t){this.elementsCache.forEach((o,n)=>{o.isConnected||(this.observer.unobserve(o),this.elementsCache.delete(n))});return}this._measureElement(t,void 0)},this.getVirtualItems=de(()=>[this.getIndexes(),this.getMeasurements()],(t,o)=>{const n=[];for(let i=0,a=t.length;ithis.options.debug}),this.getVirtualItemForOffset=t=>{const o=this.getMeasurements();if(o.length!==0)return Pe(o[bt(0,o.length-1,n=>Pe(o[n]).start,t)])},this.getOffsetForAlignment=(t,o)=>{const n=this.getSize(),i=this.getScrollOffset();o==="auto"&&(t<=i?o="start":t>=i+n?o="end":o="start"),o==="start"?t=t:o==="end"?t=t-n:o==="center"&&(t=t-n/2);const a=this.options.horizontal?"scrollWidth":"scrollHeight",c=(this.scrollElement?"document"in this.scrollElement?this.scrollElement.document.documentElement[a]:this.scrollElement[a]:0)-n;return Math.max(Math.min(c,t),0)},this.getOffsetForIndex=(t,o="auto")=>{t=Math.max(0,Math.min(t,this.options.count-1));const n=this.measurementsCache[t];if(!n)return;const i=this.getSize(),a=this.getScrollOffset();if(o==="auto")if(n.end>=a+i-this.options.scrollPaddingEnd)o="end";else if(n.start<=a+this.options.scrollPaddingStart)o="start";else return[a,o];const l=o==="end"?n.end+this.options.scrollPaddingEnd:n.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(l,o),o]},this.isDynamicMode=()=>this.elementsCache.size>0,this.cancelScrollToIndex=()=>{this.scrollToIndexTimeoutId!==null&&this.targetWindow&&(this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId),this.scrollToIndexTimeoutId=null)},this.scrollToOffset=(t,{align:o="start",behavior:n}={})=>{this.cancelScrollToIndex(),n==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(t,o),{adjustments:void 0,behavior:n})},this.scrollToIndex=(t,{align:o="auto",behavior:n}={})=>{t=Math.max(0,Math.min(t,this.options.count-1)),this.cancelScrollToIndex(),n==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size.");const i=this.getOffsetForIndex(t,o);if(!i)return;const[a,l]=i;this._scrollToOffset(a,{adjustments:void 0,behavior:n}),n!=="smooth"&&this.isDynamicMode()&&this.targetWindow&&(this.scrollToIndexTimeoutId=this.targetWindow.setTimeout(()=>{if(this.scrollToIndexTimeoutId=null,this.elementsCache.has(this.options.getItemKey(t))){const[u]=Pe(this.getOffsetForIndex(t,l));yn(u,this.getScrollOffset())||this.scrollToIndex(t,{align:l,behavior:n})}else this.scrollToIndex(t,{align:l,behavior:n})}))},this.scrollBy=(t,{behavior:o}={})=>{this.cancelScrollToIndex(),o==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+t,{adjustments:void 0,behavior:o})},this.getTotalSize=()=>{var t;const o=this.getMeasurements();let n;return o.length===0?n=this.options.paddingStart:n=this.options.lanes===1?((t=o[o.length-1])==null?void 0:t.end)??0:Math.max(...o.slice(-this.options.lanes).map(i=>i.end)),Math.max(n-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(t,{adjustments:o,behavior:n})=>{this.options.scrollToFn(t,{behavior:n,adjustments:o},this)},this.measure=()=>{this.itemSizeCache=new Map,this.notify(!1)},this.setOptions(s)}}const bt=(e,s,t,o)=>{for(;e<=s;){const n=(e+s)/2|0,i=t(n);if(io)s=n-1;else return n}return e>0?e-1:0};function Rn({measurements:e,outerSize:s,scrollOffset:t}){const o=e.length-1,i=bt(0,o,l=>e[l].start,t);let a=i;for(;aK(e).getScrollElement(),n=>{n&&s._willUpdate()},{immediate:!0}),X(()=>K(e),n=>{s.setOptions({...n,onChange:(i,a)=>{var l;Ye(t),(l=n.onChange)==null||l.call(n,i,a)}}),s._willUpdate(),Ye(t)},{immediate:!0}),Dt(o),t}function Tn(e){return An(C(()=>({observeElementRect:wn,observeElementOffset:Mn,scrollToFn:En,...K(e)})))}function $n(e,s,t){let o=B(t==null?void 0:t.value),n=C(()=>e.value!==void 0);return[C(()=>n.value?e.value:o.value),function(i){return n.value||(o.value=i),s==null?void 0:s(i)}]}function Pn(){let e=Fe();return it(()=>e.dispose()),e}function _n(){let e=Pn();return s=>{e.dispose(),e.nextFrame(s)}}function Xe(e){return[e.screenX,e.screenY]}function Fn(){let e=B([-1,-1]);return{wasMoved(s){let t=Xe(s);return e.value[0]===t[0]&&e.value[1]===t[1]?!1:(e.value=t,!0)},update(s){e.value=Xe(s)}}}function Ln({container:e,accept:s,walk:t,enabled:o}){be(()=>{let n=e.value;if(!n||o!==void 0&&!o.value)return;let i=lt(e);if(!i)return;let a=Object.assign(c=>s(c),{acceptNode:s}),l=i.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,a,!1);for(;l.nextNode();)t(l.currentNode)})}var yt=(e=>(e[e.Left=0]="Left",e[e.Right=2]="Right",e))(yt||{});function Bn(e){throw new Error("Unexpected object: "+e)}var V=(e=>(e[e.First=0]="First",e[e.Previous=1]="Previous",e[e.Next=2]="Next",e[e.Last=3]="Last",e[e.Specific=4]="Specific",e[e.Nothing=5]="Nothing",e))(V||{});function Ze(e,s){let t=s.resolveItems();if(t.length<=0)return null;let o=s.resolveActiveIndex(),n=o??-1;switch(e.focus){case 0:{for(let i=0;i=0;--i)if(!s.resolveDisabled(t[i],i,t))return i;return o}case 2:{for(let i=n+1;i=0;--i)if(!s.resolveDisabled(t[i],i,t))return i;return o}case 4:{for(let i=0;i(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(Nn||{}),Vn=(e=>(e[e.Single=0]="Single",e[e.Multi=1]="Multi",e))(Vn||{}),jn=(e=>(e[e.Pointer=0]="Pointer",e[e.Focus=1]="Focus",e[e.Other=2]="Other",e))(jn||{});let wt=Symbol("ComboboxContext");function Ie(e){let s=rt(wt,null);if(s===null){let t=new Error(`<${e} /> is missing a parent component.`);throw Error.captureStackTrace&&Error.captureStackTrace(t,Ie),t}return s}let Ot=Symbol("VirtualContext"),Kn=se({name:"VirtualProvider",setup(e,{slots:s}){let t=Ie("VirtualProvider"),o=C(()=>{let l=z(t.optionsRef);if(!l)return{start:0,end:0};let c=window.getComputedStyle(l);return{start:parseFloat(c.paddingBlockStart||c.paddingTop),end:parseFloat(c.paddingBlockEnd||c.paddingBottom)}}),n=Tn(C(()=>({scrollPaddingStart:o.value.start,scrollPaddingEnd:o.value.end,count:t.virtual.value.options.length,estimateSize(){return 40},getScrollElement(){return z(t.optionsRef)},overscan:12}))),i=C(()=>{var l;return(l=t.virtual.value)==null?void 0:l.options}),a=B(0);return X([i],()=>{a.value+=1}),at(Ot,t.virtual.value?n:null),()=>[Ce("div",{style:{position:"relative",width:"100%",height:`${n.value.getTotalSize()}px`},ref:l=>{if(l){if(typeof process<"u"&&zn.JEST_WORKER_ID!==void 0||t.activationTrigger.value===0)return;t.activeOptionIndex.value!==null&&t.virtual.value.options.length>t.activeOptionIndex.value&&n.value.scrollToIndex(t.activeOptionIndex.value)}}},n.value.getVirtualItems().map(l=>Gt(s.default({option:t.virtual.value.options[l.index],open:t.comboboxState.value===0})[0],{key:`${a.value}-${l.index}`,"data-index":l.index,"aria-setsize":t.virtual.value.options.length,"aria-posinset":l.index+1,style:{position:"absolute",top:0,left:0,transform:`translateY(${l.start}px)`,overflowAnchor:"none"}})))]}}),Wn=se({name:"Combobox",emits:{"update:modelValue":e=>!0},props:{as:{type:[Object,String],default:"template"},disabled:{type:[Boolean],default:!1},by:{type:[String,Function],nullable:!0,default:null},modelValue:{type:[Object,String,Number,Boolean],default:void 0},defaultValue:{type:[Object,String,Number,Boolean],default:void 0},form:{type:String,optional:!0},name:{type:String,optional:!0},nullable:{type:Boolean,default:!1},multiple:{type:[Boolean],default:!1},immediate:{type:[Boolean],default:!1},virtual:{type:Object,default:null}},inheritAttrs:!1,setup(e,{slots:s,attrs:t,emit:o}){let n=B(1),i=B(null),a=B(null),l=B(null),c=B(null),u=B({static:!1,hold:!1}),r=B([]),d=B(null),f=B(2),b=B(!1);function w(g=m=>m){let m=d.value!==null?r.value[d.value]:null,S=g(r.value.slice()),h=S.length>0&&S[0].dataRef.order.value!==null?S.sort((I,M)=>I.dataRef.order.value-M.dataRef.order.value):qt(S,I=>z(I.dataRef.domRef)),v=m?h.indexOf(m):null;return v===-1&&(v=null),{options:h,activeOptionIndex:v}}let R=C(()=>e.multiple?1:0),_=C(()=>e.nullable),[A,O]=$n(C(()=>e.modelValue),g=>o("update:modelValue",g),C(()=>e.defaultValue)),T=C(()=>A.value===void 0?fe(R.value,{1:[],0:void 0}):A.value),D=null,x=null;function P(g){return fe(R.value,{0(){return O==null?void 0:O(g)},1:()=>{let m=oe(p.value.value).slice(),S=oe(g),h=m.findIndex(v=>p.compare(S,oe(v)));return h===-1?m.push(S):m.splice(h,1),O==null?void 0:O(m)}})}let y=C(()=>{});X([y],([g],[m])=>{if(p.virtual.value&&g&&m&&d.value!==null){let S=g.indexOf(m[d.value]);S!==-1?d.value=S:d.value=null}});let p={comboboxState:n,value:T,mode:R,compare(g,m){if(typeof e.by=="string"){let S=e.by;return(g==null?void 0:g[S])===(m==null?void 0:m[S])}return e.by===null?Dn(g,m):e.by(g,m)},calculateIndex(g){return p.virtual.value?e.by===null?p.virtual.value.options.indexOf(g):p.virtual.value.options.findIndex(m=>p.compare(m,g)):r.value.findIndex(m=>p.compare(m.dataRef.value,g))},defaultValue:C(()=>e.defaultValue),nullable:_,immediate:C(()=>!1),virtual:C(()=>null),inputRef:a,labelRef:i,buttonRef:l,optionsRef:c,disabled:C(()=>e.disabled),options:r,change(g){O(g)},activeOptionIndex:C(()=>{if(b.value&&d.value===null&&(p.virtual.value?p.virtual.value.options.length>0:r.value.length>0)){if(p.virtual.value){let m=p.virtual.value.options.findIndex(S=>{var h;return!((h=p.virtual.value)!=null&&h.disabled(S))});if(m!==-1)return m}let g=r.value.findIndex(m=>!m.dataRef.disabled);if(g!==-1)return g}return d.value}),activationTrigger:f,optionsPropsRef:u,closeCombobox(){b.value=!1,!e.disabled&&n.value!==1&&(n.value=1,d.value=null)},openCombobox(){if(b.value=!0,!e.disabled&&n.value!==0){if(p.value.value){let g=p.calculateIndex(p.value.value);g!==-1&&(d.value=g)}n.value=0}},setActivationTrigger(g){f.value=g},goToOption(g,m,S){b.value=!1,D!==null&&cancelAnimationFrame(D),D=requestAnimationFrame(()=>{if(e.disabled||c.value&&!u.value.static&&n.value===1)return;if(p.virtual.value){d.value=g===V.Specific?m:Ze({focus:g},{resolveItems:()=>p.virtual.value.options,resolveActiveIndex:()=>{var I,M;return(M=(I=p.activeOptionIndex.value)!=null?I:p.virtual.value.options.findIndex($=>{var N;return!((N=p.virtual.value)!=null&&N.disabled($))}))!=null?M:null},resolveDisabled:I=>p.virtual.value.disabled(I),resolveId(){throw new Error("Function not implemented.")}}),f.value=S??2;return}let h=w();if(h.activeOptionIndex===null){let I=h.options.findIndex(M=>!M.dataRef.disabled);I!==-1&&(h.activeOptionIndex=I)}let v=g===V.Specific?m:Ze({focus:g},{resolveItems:()=>h.options,resolveActiveIndex:()=>h.activeOptionIndex,resolveId:I=>I.id,resolveDisabled:I=>I.dataRef.disabled});d.value=v,f.value=S??2,r.value=h.options})},selectOption(g){let m=r.value.find(h=>h.id===g);if(!m)return;let{dataRef:S}=m;P(S.value)},selectActiveOption(){if(p.activeOptionIndex.value!==null){if(p.virtual.value)P(p.virtual.value.options[p.activeOptionIndex.value]);else{let{dataRef:g}=r.value[p.activeOptionIndex.value];P(g.value)}p.goToOption(V.Specific,p.activeOptionIndex.value)}},registerOption(g,m){let S=Nt({id:g,dataRef:m});if(p.virtual.value){r.value.push(S);return}x&&cancelAnimationFrame(x);let h=w(v=>(v.push(S),v));d.value===null&&p.isSelected(m.value.value)&&(h.activeOptionIndex=h.options.indexOf(S)),r.value=h.options,d.value=h.activeOptionIndex,f.value=2,h.options.some(v=>!z(v.dataRef.domRef))&&(x=requestAnimationFrame(()=>{let v=w();r.value=v.options,d.value=v.activeOptionIndex}))},unregisterOption(g,m){if(D!==null&&cancelAnimationFrame(D),m&&(b.value=!0),p.virtual.value){r.value=r.value.filter(h=>h.id!==g);return}let S=w(h=>{let v=h.findIndex(I=>I.id===g);return v!==-1&&h.splice(v,1),h});r.value=S.options,d.value=S.activeOptionIndex,f.value=2},isSelected(g){return fe(R.value,{0:()=>p.compare(oe(p.value.value),oe(g)),1:()=>oe(p.value.value).some(m=>p.compare(oe(m),oe(g)))})},isActive(g){return d.value===p.calculateIndex(g)}};Vt([a,l,c],()=>p.closeCombobox(),C(()=>n.value===0)),at(wt,p),jt(C(()=>fe(n.value,{0:Me.Open,1:Me.Closed})));let E=C(()=>{var g;return(g=z(a))==null?void 0:g.closest("form")});return ye(()=>{X([E],()=>{if(!E.value||e.defaultValue===void 0)return;function g(){p.change(e.defaultValue)}return E.value.addEventListener("reset",g),()=>{var m;(m=E.value)==null||m.removeEventListener("reset",g)}},{immediate:!0})}),()=>{var g,m,S;let{name:h,disabled:v,form:I,...M}=e,$={open:n.value===0,disabled:v,activeIndex:p.activeOptionIndex.value,activeOption:p.activeOptionIndex.value===null?null:p.virtual.value?p.virtual.value.options[(g=p.activeOptionIndex.value)!=null?g:0]:(S=(m=p.options.value[p.activeOptionIndex.value])==null?void 0:m.dataRef.value)!=null?S:null,value:T.value};return Ce(Ee,[...h!=null&&T.value!=null?xt({[h]:T.value}).map(([N,Z])=>Ce(Kt,Wt({features:Ht.Hidden,key:N,as:"input",type:"hidden",hidden:!0,readOnly:!0,form:I,disabled:v,name:N,value:Z}))):[],Te({theirProps:{...t,...je(M,["by","defaultValue","immediate","modelValue","multiple","nullable","onUpdate:modelValue","virtual"])},ourProps:{},slot:$,slots:s,attrs:t,name:"Combobox"})])}}}),Hn=se({name:"ComboboxInput",props:{as:{type:[Object,String],default:"input"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},displayValue:{type:Function},defaultValue:{type:String,default:void 0},id:{type:String,default:null}},emits:{change:e=>!0},setup(e,{emit:s,attrs:t,slots:o,expose:n}){var i;let a=(i=e.id)!=null?i:`headlessui-combobox-input-${Ke()}`,l=Ie("ComboboxInput"),c=C(()=>lt(z(l.inputRef))),u={value:!1};n({el:l.inputRef,$el:l.inputRef});function r(){l.change(null);let x=z(l.optionsRef);x&&(x.scrollTop=0),l.goToOption(V.Nothing)}let d=C(()=>{var x;let P=l.value.value;return z(l.inputRef)?typeof e.displayValue<"u"&&P!==void 0?(x=e.displayValue(P))!=null?x:"":typeof P=="string"?P:"":""});ye(()=>{X([d,l.comboboxState,c],([x,P],[y,p])=>{if(u.value)return;let E=z(l.inputRef);E&&((p===0&&P===1||x!==y)&&(E.value=x),requestAnimationFrame(()=>{var g;if(u.value||!E||((g=c.value)==null?void 0:g.activeElement)!==E)return;let{selectionStart:m,selectionEnd:S}=E;Math.abs((S??0)-(m??0))===0&&m===0&&E.setSelectionRange(E.value.length,E.value.length)}))},{immediate:!0}),X([l.comboboxState],([x],[P])=>{if(x===0&&P===1){if(u.value)return;let y=z(l.inputRef);if(!y)return;let p=y.value,{selectionStart:E,selectionEnd:g,selectionDirection:m}=y;y.value="",y.value=p,m!==null?y.setSelectionRange(E,g,m):y.setSelectionRange(E,g)}})});let f=B(!1);function b(){f.value=!0}function w(){Fe().nextFrame(()=>{f.value=!1})}let R=_n();function _(x){switch(u.value=!0,R(()=>{u.value=!1}),x.key){case ee.Enter:if(u.value=!1,l.comboboxState.value!==0||f.value)return;if(x.preventDefault(),x.stopPropagation(),l.activeOptionIndex.value===null){l.closeCombobox();return}l.selectActiveOption(),l.mode.value===0&&l.closeCombobox();break;case ee.ArrowDown:return u.value=!1,x.preventDefault(),x.stopPropagation(),fe(l.comboboxState.value,{0:()=>l.goToOption(V.Next),1:()=>l.openCombobox()});case ee.ArrowUp:return u.value=!1,x.preventDefault(),x.stopPropagation(),fe(l.comboboxState.value,{0:()=>l.goToOption(V.Previous),1:()=>{l.openCombobox(),ut(()=>{l.value.value||l.goToOption(V.Last)})}});case ee.Home:if(x.shiftKey)break;return u.value=!1,x.preventDefault(),x.stopPropagation(),l.goToOption(V.First);case ee.PageUp:return u.value=!1,x.preventDefault(),x.stopPropagation(),l.goToOption(V.First);case ee.End:if(x.shiftKey)break;return u.value=!1,x.preventDefault(),x.stopPropagation(),l.goToOption(V.Last);case ee.PageDown:return u.value=!1,x.preventDefault(),x.stopPropagation(),l.goToOption(V.Last);case ee.Escape:if(u.value=!1,l.comboboxState.value!==0)return;x.preventDefault(),l.optionsRef.value&&!l.optionsPropsRef.value.static&&x.stopPropagation(),l.nullable.value&&l.mode.value===0&&l.value.value===null&&r(),l.closeCombobox();break;case ee.Tab:if(u.value=!1,l.comboboxState.value!==0)return;l.mode.value===0&&l.activationTrigger.value!==1&&l.selectActiveOption(),l.closeCombobox();break}}function A(x){s("change",x),l.nullable.value&&l.mode.value===0&&x.target.value===""&&r(),l.openCombobox()}function O(x){var P,y,p;let E=(P=x.relatedTarget)!=null?P:Je.find(g=>g!==x.currentTarget);if(u.value=!1,!((y=z(l.optionsRef))!=null&&y.contains(E))&&!((p=z(l.buttonRef))!=null&&p.contains(E))&&l.comboboxState.value===0)return x.preventDefault(),l.mode.value===0&&(l.nullable.value&&l.value.value===null?r():l.activationTrigger.value!==1&&l.selectActiveOption()),l.closeCombobox()}function T(x){var P,y,p;let E=(P=x.relatedTarget)!=null?P:Je.find(g=>g!==x.currentTarget);(y=z(l.buttonRef))!=null&&y.contains(E)||(p=z(l.optionsRef))!=null&&p.contains(E)||l.disabled.value||l.immediate.value&&l.comboboxState.value!==0&&(l.openCombobox(),Fe().nextFrame(()=>{l.setActivationTrigger(1)}))}let D=C(()=>{var x,P,y,p;return(p=(y=(P=e.defaultValue)!=null?P:l.defaultValue.value!==void 0?(x=e.displayValue)==null?void 0:x.call(e,l.defaultValue.value):null)!=null?y:l.defaultValue.value)!=null?p:""});return()=>{var x,P,y,p,E,g,m;let S={open:l.comboboxState.value===0},{displayValue:h,onChange:v,...I}=e,M={"aria-controls":(x=l.optionsRef.value)==null?void 0:x.id,"aria-expanded":l.comboboxState.value===0,"aria-activedescendant":l.activeOptionIndex.value===null?void 0:l.virtual.value?(P=l.options.value.find($=>!l.virtual.value.disabled($.dataRef.value)&&l.compare($.dataRef.value,l.virtual.value.options[l.activeOptionIndex.value])))==null?void 0:P.id:(y=l.options.value[l.activeOptionIndex.value])==null?void 0:y.id,"aria-labelledby":(g=(p=z(l.labelRef))==null?void 0:p.id)!=null?g:(E=z(l.buttonRef))==null?void 0:E.id,"aria-autocomplete":"list",id:a,onCompositionstart:b,onCompositionend:w,onKeydown:_,onInput:A,onFocus:T,onBlur:O,role:"combobox",type:(m=t.type)!=null?m:"text",tabIndex:0,ref:l.inputRef,defaultValue:D.value,disabled:l.disabled.value===!0?!0:void 0};return Te({ourProps:M,theirProps:I,slot:S,attrs:t,slots:o,features:ke.RenderStrategy|ke.Static,name:"ComboboxInput"})}}}),Un=se({name:"ComboboxOptions",props:{as:{type:[Object,String],default:"ul"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},hold:{type:[Boolean],default:!1}},setup(e,{attrs:s,slots:t,expose:o}){let n=Ie("ComboboxOptions"),i=`headlessui-combobox-options-${Ke()}`;o({el:n.optionsRef,$el:n.optionsRef}),be(()=>{n.optionsPropsRef.value.static=e.static}),be(()=>{n.optionsPropsRef.value.hold=e.hold});let a=Ut(),l=C(()=>a!==null?(a.value&Me.Open)===Me.Open:n.comboboxState.value===0);Ln({container:C(()=>z(n.optionsRef)),enabled:C(()=>n.comboboxState.value===0),accept(u){return u.getAttribute("role")==="option"?NodeFilter.FILTER_REJECT:u.hasAttribute("role")?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT},walk(u){u.setAttribute("role","none")}});function c(u){u.preventDefault()}return()=>{var u,r,d;let f={open:n.comboboxState.value===0},b={"aria-labelledby":(d=(u=z(n.labelRef))==null?void 0:u.id)!=null?d:(r=z(n.buttonRef))==null?void 0:r.id,id:i,ref:n.optionsRef,role:"listbox","aria-multiselectable":n.mode.value===1?!0:void 0,onMousedown:c},w=je(e,["hold"]);return Te({ourProps:b,theirProps:w,slot:f,attrs:s,slots:n.virtual.value&&n.comboboxState.value===0?{...t,default:()=>[Ce(Kn,{},t.default)]}:t,features:ke.RenderStrategy|ke.Static,visible:l.value,name:"ComboboxOptions"})}}}),Gn=se({name:"ComboboxOption",props:{as:{type:[Object,String],default:"li"},value:{type:[Object,String,Number,Boolean]},disabled:{type:Boolean,default:!1},order:{type:[Number],default:null}},setup(e,{slots:s,attrs:t,expose:o}){let n=Ie("ComboboxOption"),i=`headlessui-combobox-option-${Ke()}`,a=B(null),l=C(()=>e.disabled);o({el:a,$el:a});let c=C(()=>{var O;return n.virtual.value?n.activeOptionIndex.value===n.calculateIndex(e.value):n.activeOptionIndex.value===null?!1:((O=n.options.value[n.activeOptionIndex.value])==null?void 0:O.id)===i}),u=C(()=>n.isSelected(e.value)),r=rt(Ot,null),d=C(()=>({disabled:e.disabled,value:e.value,domRef:a,order:C(()=>e.order)}));ye(()=>n.registerOption(i,d)),it(()=>n.unregisterOption(i,c.value)),be(()=>{let O=z(a);O&&(r==null||r.value.measureElement(O))}),be(()=>{n.comboboxState.value===0&&c.value&&(n.virtual.value||n.activationTrigger.value!==0&&ut(()=>{var O,T;return(T=(O=z(a))==null?void 0:O.scrollIntoView)==null?void 0:T.call(O,{block:"nearest"})}))});function f(O){O.preventDefault(),O.button===yt.Left&&(l.value||(n.selectOption(i),Yt()||requestAnimationFrame(()=>{var T;return(T=z(n.inputRef))==null?void 0:T.focus({preventScroll:!0})}),n.mode.value===0&&n.closeCombobox()))}function b(){var O;if(e.disabled||(O=n.virtual.value)!=null&&O.disabled(e.value))return n.goToOption(V.Nothing);let T=n.calculateIndex(e.value);n.goToOption(V.Specific,T)}let w=Fn();function R(O){w.update(O)}function _(O){var T;if(!w.wasMoved(O)||e.disabled||(T=n.virtual.value)!=null&&T.disabled(e.value)||c.value)return;let D=n.calculateIndex(e.value);n.goToOption(V.Specific,D,0)}function A(O){var T;w.wasMoved(O)&&(e.disabled||(T=n.virtual.value)!=null&&T.disabled(e.value)||c.value&&(n.optionsPropsRef.value.hold||n.goToOption(V.Nothing)))}return()=>{let{disabled:O}=e,T={active:c.value,selected:u.value,disabled:O},D={id:i,ref:a,role:"option",tabIndex:O===!0?void 0:-1,"aria-disabled":O===!0?!0:void 0,"aria-selected":u.value,disabled:void 0,onMousedown:f,onFocus:b,onPointerenter:R,onMouseenter:R,onPointermove:_,onMousemove:_,onPointerleave:A,onMouseleave:A},x=je(e,["order","value"]);return Te({ourProps:D,theirProps:x,slot:T,attrs:t,slots:s,name:"ComboboxOption"})}}});function ne(e){return Array.isArray?Array.isArray(e):Et(e)==="[object Array]"}const qn=1/0;function Yn(e){if(typeof e=="string")return e;let s=e+"";return s=="0"&&1/e==-qn?"-0":s}function Jn(e){return e==null?"":Yn(e)}function Q(e){return typeof e=="string"}function Mt(e){return typeof e=="number"}function Qn(e){return e===!0||e===!1||Xn(e)&&Et(e)=="[object Boolean]"}function Ct(e){return typeof e=="object"}function Xn(e){return Ct(e)&&e!==null}function W(e){return e!=null}function _e(e){return!e.trim().length}function Et(e){return e==null?e===void 0?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const Zn="Incorrect 'index' type",es=e=>`Invalid value for key ${e}`,ts=e=>`Pattern length exceeds max of ${e}.`,ns=e=>`Missing ${e} property in key`,ss=e=>`Property 'weight' in key '${e}' must be a positive integer`,et=Object.prototype.hasOwnProperty;class os{constructor(s){this._keys=[],this._keyMap={};let t=0;s.forEach(o=>{let n=kt(o);this._keys.push(n),this._keyMap[n.id]=n,t+=n.weight}),this._keys.forEach(o=>{o.weight/=t})}get(s){return this._keyMap[s]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function kt(e){let s=null,t=null,o=null,n=1,i=null;if(Q(e)||ne(e))o=e,s=tt(e),t=Le(e);else{if(!et.call(e,"name"))throw new Error(ns("name"));const a=e.name;if(o=a,et.call(e,"weight")&&(n=e.weight,n<=0))throw new Error(ss(a));s=tt(a),t=Le(a),i=e.getFn}return{path:s,id:t,weight:n,src:o,getFn:i}}function tt(e){return ne(e)?e:e.split(".")}function Le(e){return ne(e)?e.join("."):e}function is(e,s){let t=[],o=!1;const n=(i,a,l)=>{if(W(i))if(!a[l])t.push(i);else{let c=a[l];const u=i[c];if(!W(u))return;if(l===a.length-1&&(Q(u)||Mt(u)||Qn(u)))t.push(Jn(u));else if(ne(u)){o=!0;for(let r=0,d=u.length;re.score===s.score?e.idx{this._keysMap[t.id]=o})}create(){this.isCreated||!this.docs.length||(this.isCreated=!0,Q(this.docs[0])?this.docs.forEach((s,t)=>{this._addString(s,t)}):this.docs.forEach((s,t)=>{this._addObject(s,t)}),this.norm.clear())}add(s){const t=this.size();Q(s)?this._addString(s,t):this._addObject(s,t)}removeAt(s){this.records.splice(s,1);for(let t=s,o=this.size();t{let a=n.getFn?n.getFn(s):this.getFn(s,n.path);if(W(a)){if(ne(a)){let l=[];const c=[{nestedArrIndex:-1,value:a}];for(;c.length;){const{nestedArrIndex:u,value:r}=c.pop();if(W(r))if(Q(r)&&!_e(r)){let d={v:r,i:u,n:this.norm.get(r)};l.push(d)}else ne(r)&&r.forEach((d,f)=>{c.push({nestedArrIndex:f,value:d})})}o.$[i]=l}else if(Q(a)&&!_e(a)){let l={v:a,n:this.norm.get(a)};o.$[i]=l}}}),this.records.push(o)}toJSON(){return{keys:this.keys,records:this.records}}}function Rt(e,s,{getFn:t=k.getFn,fieldNormWeight:o=k.fieldNormWeight}={}){const n=new qe({getFn:t,fieldNormWeight:o});return n.setKeys(e.map(kt)),n.setSources(s),n.create(),n}function hs(e,{getFn:s=k.getFn,fieldNormWeight:t=k.fieldNormWeight}={}){const{keys:o,records:n}=e,i=new qe({getFn:s,fieldNormWeight:t});return i.setKeys(o),i.setIndexRecords(n),i}function Oe(e,{errors:s=0,currentLocation:t=0,expectedLocation:o=0,distance:n=k.distance,ignoreLocation:i=k.ignoreLocation}={}){const a=s/e.length;if(i)return a;const l=Math.abs(o-t);return n?a+l/n:l?1:a}function fs(e=[],s=k.minMatchCharLength){let t=[],o=-1,n=-1,i=0;for(let a=e.length;i=s&&t.push([o,n]),o=-1)}return e[i-1]&&i-o>=s&&t.push([o,i-1]),t}const ce=32;function ps(e,s,t,{location:o=k.location,distance:n=k.distance,threshold:i=k.threshold,findAllMatches:a=k.findAllMatches,minMatchCharLength:l=k.minMatchCharLength,includeMatches:c=k.includeMatches,ignoreLocation:u=k.ignoreLocation}={}){if(s.length>ce)throw new Error(ts(ce));const r=s.length,d=e.length,f=Math.max(0,Math.min(o,d));let b=i,w=f;const R=l>1||c,_=R?Array(d):[];let A;for(;(A=e.indexOf(s,w))>-1;){let y=Oe(s,{currentLocation:A,expectedLocation:f,distance:n,ignoreLocation:u});if(b=Math.min(y,b),w=A+r,R){let p=0;for(;p=g;v-=1){let I=v-1,M=t[e.charAt(I)];if(R&&(_[I]=+!!M),S[v]=(S[v+1]<<1|1)&M,y&&(S[v]|=(O[v+1]|O[v])<<1|1|O[v+1]),S[v]&x&&(T=Oe(s,{errors:y,currentLocation:I,expectedLocation:f,distance:n,ignoreLocation:u}),T<=b)){if(b=T,w=I,w<=f)break;g=Math.max(1,2*f-w)}}if(Oe(s,{errors:y+1,currentLocation:f,expectedLocation:f,distance:n,ignoreLocation:u})>b)break;O=S}const P={isMatch:w>=0,score:Math.max(.001,T)};if(R){const y=fs(_,l);y.length?c&&(P.indices=y):P.isMatch=!1}return P}function vs(e){let s={};for(let t=0,o=e.length;t{this.chunks.push({pattern:f,alphabet:vs(f),startIndex:b})},d=this.pattern.length;if(d>ce){let f=0;const b=d%ce,w=d-b;for(;f{const{isMatch:A,score:O,indices:T}=ps(s,w,R,{location:n+_,distance:i,threshold:a,findAllMatches:l,minMatchCharLength:c,includeMatches:o,ignoreLocation:u});A&&(f=!0),d+=O,A&&T&&(r=[...r,...T])});let b={isMatch:f,score:f?d/this.chunks.length:1};return f&&o&&(b.indices=r),b}}class re{constructor(s){this.pattern=s}static isMultiMatch(s){return nt(s,this.multiRegex)}static isSingleMatch(s){return nt(s,this.singleRegex)}search(){}}function nt(e,s){const t=e.match(s);return t?t[1]:null}class ms extends re{constructor(s){super(s)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(s){const t=s===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}}class gs extends re{constructor(s){super(s)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(s){const o=s.indexOf(this.pattern)===-1;return{isMatch:o,score:o?0:1,indices:[0,s.length-1]}}}class bs extends re{constructor(s){super(s)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(s){const t=s.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}}class ys extends re{constructor(s){super(s)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(s){const t=!s.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,s.length-1]}}}class xs extends re{constructor(s){super(s)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(s){const t=s.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[s.length-this.pattern.length,s.length-1]}}}class Ss extends re{constructor(s){super(s)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(s){const t=!s.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,s.length-1]}}}class Tt extends re{constructor(s,{location:t=k.location,threshold:o=k.threshold,distance:n=k.distance,includeMatches:i=k.includeMatches,findAllMatches:a=k.findAllMatches,minMatchCharLength:l=k.minMatchCharLength,isCaseSensitive:c=k.isCaseSensitive,ignoreLocation:u=k.ignoreLocation}={}){super(s),this._bitapSearch=new At(s,{location:t,threshold:o,distance:n,includeMatches:i,findAllMatches:a,minMatchCharLength:l,isCaseSensitive:c,ignoreLocation:u})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(s){return this._bitapSearch.searchIn(s)}}class $t extends re{constructor(s){super(s)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(s){let t=0,o;const n=[],i=this.pattern.length;for(;(o=s.indexOf(this.pattern,t))>-1;)t=o+i,n.push([o,t-1]);const a=!!n.length;return{isMatch:a,score:a?0:1,indices:n}}}const Be=[ms,$t,bs,ys,Ss,xs,gs,Tt],st=Be.length,Is=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,ws="|";function Os(e,s={}){return e.split(ws).map(t=>{let o=t.trim().split(Is).filter(i=>i&&!!i.trim()),n=[];for(let i=0,a=o.length;i!!(e[Ae.AND]||e[Ae.OR]),ks=e=>!!e[Ne.PATH],Rs=e=>!ne(e)&&Ct(e)&&!Ve(e),ot=e=>({[Ae.AND]:Object.keys(e).map(s=>({[s]:e[s]}))});function Pt(e,s,{auto:t=!0}={}){const o=n=>{let i=Object.keys(n);const a=ks(n);if(!a&&i.length>1&&!Ve(n))return o(ot(n));if(Rs(n)){const c=a?n[Ne.PATH]:i[0],u=a?n[Ne.PATTERN]:n[c];if(!Q(u))throw new Error(es(c));const r={keyId:Le(c),pattern:u};return t&&(r.searcher=De(u,s)),r}let l={children:[],operator:i[0]};return i.forEach(c=>{const u=n[c];ne(u)&&u.forEach(r=>{l.children.push(o(r))})}),l};return Ve(e)||(e=ot(e)),o(e)}function As(e,{ignoreFieldNorm:s=k.ignoreFieldNorm}){e.forEach(t=>{let o=1;t.matches.forEach(({key:n,norm:i,score:a})=>{const l=n?n.weight:null;o*=Math.pow(a===0&&l?Number.EPSILON:a,(l||1)*(s?1:i))}),t.score=o})}function Ts(e,s){const t=e.matches;s.matches=[],W(t)&&t.forEach(o=>{if(!W(o.indices)||!o.indices.length)return;const{indices:n,value:i}=o;let a={indices:n,value:i};o.key&&(a.key=o.key.src),o.idx>-1&&(a.refIndex=o.idx),s.matches.push(a)})}function $s(e,s){s.score=e.score}function Ps(e,s,{includeMatches:t=k.includeMatches,includeScore:o=k.includeScore}={}){const n=[];return t&&n.push(Ts),o&&n.push($s),e.map(i=>{const{idx:a}=i,l={item:s[a],refIndex:a};return n.length&&n.forEach(c=>{c(i,l)}),l})}class pe{constructor(s,t={},o){this.options={...k,...t},this.options.useExtendedSearch,this._keyStore=new os(this.options.keys),this.setCollection(s,o)}setCollection(s,t){if(this._docs=s,t&&!(t instanceof qe))throw new Error(Zn);this._myIndex=t||Rt(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(s){W(s)&&(this._docs.push(s),this._myIndex.add(s))}remove(s=()=>!1){const t=[];for(let o=0,n=this._docs.length;o-1&&(c=c.slice(0,t)),Ps(c,this._docs,{includeMatches:o,includeScore:n})}_searchStringList(s){const t=De(s,this.options),{records:o}=this._myIndex,n=[];return o.forEach(({v:i,i:a,n:l})=>{if(!W(i))return;const{isMatch:c,score:u,indices:r}=t.searchIn(i);c&&n.push({item:i,idx:a,matches:[{score:u,value:i,norm:l,indices:r}]})}),n}_searchLogical(s){const t=Pt(s,this.options),o=(l,c,u)=>{if(!l.children){const{keyId:d,searcher:f}=l,b=this._findMatches({key:this._keyStore.get(d),value:this._myIndex.getValueForItemAtKeyId(c,d),searcher:f});return b&&b.length?[{idx:u,item:c,matches:b}]:[]}const r=[];for(let d=0,f=l.children.length;d{if(W(l)){let u=o(t,l,c);u.length&&(i[c]||(i[c]={idx:c,item:l,matches:[]},a.push(i[c])),u.forEach(({matches:r})=>{i[c].matches.push(...r)}))}}),a}_searchObjectList(s){const t=De(s,this.options),{keys:o,records:n}=this._myIndex,i=[];return n.forEach(({$:a,i:l})=>{if(!W(a))return;let c=[];o.forEach((u,r)=>{c.push(...this._findMatches({key:u,value:a[r],searcher:t}))}),c.length&&i.push({idx:l,item:a,matches:c})}),i}_findMatches({key:s,value:t,searcher:o}){if(!W(t))return[];let n=[];if(ne(t))t.forEach(({v:i,i:a,n:l})=>{if(!W(i))return;const{isMatch:c,score:u,indices:r}=o.searchIn(i);c&&n.push({score:u,key:s,value:i,idx:a,norm:l,indices:r})});else{const{v:i,n:a}=t,{isMatch:l,score:c,indices:u}=o.searchIn(i);l&&n.push({score:c,key:s,value:i,norm:a,indices:u})}return n}}pe.version="7.0.0";pe.createIndex=Rt;pe.parseIndex=hs;pe.config=k;pe.parseQuery=Pt;Es(Cs);function _s(e,s,t){const o=()=>{var a,l;return new pe((a=J(s))!=null?a:[],(l=J(t))==null?void 0:l.fuseOptions)},n=B(o());X(()=>{var a;return(a=J(t))==null?void 0:a.fuseOptions},()=>{n.value=o()},{deep:!0}),X(()=>J(s),a=>{n.value.setCollection(a)},{deep:!0});const i=C(()=>{const a=J(t);if(a!=null&&a.matchAllWhenSearchEmpty&&!J(e))return J(s).map((c,u)=>({item:c,refIndex:u}));const l=a==null?void 0:a.resultLimit;return n.value.search(J(e),l?{limit:l}:void 0)});return{fuse:n,results:i}}const Fs=se({components:{HComboboxOption:Gn,UIcon:$e,UAvatar:ct,UKbd:dt},props:{group:{type:Object,required:!0},query:{type:String,default:""},groupAttribute:{type:String,required:!0},commandAttribute:{type:String,required:!0},selectedIcon:{type:String,required:!0},ui:{type:Object,required:!0}},setup(e){const s=C(()=>{const o=e.group[e.groupAttribute];return typeof o=="function"?o(e.query):o});function t(o,{indices:n,value:i}){if(o===i)return"";let a="",l=0;n.forEach(u=>{const r=u[1]+1,d=r-u[0]>=e.query.length;a+=[i.substring(l,u[0]),d&&"",i.substring(u[0],r),d&&""].filter(Boolean).join(""),l=r}),a+=i.substring(l);const c=a.indexOf("");return c>60&&(a=`...${a.substring(c-60)}`),a}return He(()=>Ue()),{label:s,highlight:t}}}),Ls=["aria-label"],Bs=["innerHTML"];function zs(e,s,t,o,n,i){const a=$e,l=ct,c=dt,u=te("HComboboxOption");return L(),H("div",{class:F(e.ui.group.wrapper)},[e.label?(L(),H("h2",{key:0,class:F(e.ui.group.label)},ie(e.label),3)):q("",!0),Y("div",{class:F(e.ui.group.container),"aria-label":e.group[e.groupAttribute]},[(L(!0),H(Ee,null,xe(e.group.commands,(r,d)=>(L(),j(u,{key:`${e.group.key}-${d}`,value:r,disabled:r.disabled,as:"template"},{default:U(({active:f,selected:b})=>[Y("div",{class:F([e.ui.group.command.base,f?e.ui.group.command.active:e.ui.group.command.inactive,r.disabled?"cursor-not-allowed":"cursor-pointer"])},[Y("div",{class:F(e.ui.group.command.container)},[le(e.$slots,`${e.group.key}-icon`,{group:e.group,command:r,active:f,selected:b},()=>[r.icon?(L(),j(a,{key:0,name:r.icon,class:F([e.ui.group.command.icon.base,f?e.ui.group.command.icon.active:e.ui.group.command.icon.inactive,r.iconClass]),"aria-hidden":"true"},null,8,["name","class"])):r.avatar?(L(),j(l,ae({key:1,ref_for:!0},{size:e.ui.group.command.avatar.size,...r.avatar},{class:e.ui.group.command.avatar.base,"aria-hidden":"true"}),null,16,["class"])):r.chip?(L(),H("span",{key:2,class:F(e.ui.group.command.chip.base),style:Jt({background:`#${r.chip}`})},null,6)):q("",!0)]),Y("div",{class:F([e.ui.group.command.label,r.disabled&&e.ui.group.command.disabled])},[le(e.$slots,`${e.group.key}-command`,{group:e.group,command:r,active:f,selected:b},()=>{var w,R;return[r.prefix?(L(),H("span",{key:0,class:F(["flex-shrink-0",r.prefixClass||e.ui.group.command.prefix])},ie(r.prefix),3)):q("",!0),Y("span",{class:F(["truncate",{"flex-none":r.suffix||((w=r.matches)==null?void 0:w.length)}])},ie(r[e.commandAttribute]),3),(R=r.matches)!=null&&R.length?(L(),H("span",{key:1,class:F(["truncate",r.suffixClass||e.ui.group.command.suffix]),innerHTML:e.highlight(r[e.commandAttribute],r.matches[0])},null,10,Bs)):r.suffix?(L(),H("span",{key:2,class:F(["truncate",r.suffixClass||e.ui.group.command.suffix])},ie(r.suffix),3)):q("",!0)]})],2)],2),b?(L(),j(a,{key:0,name:e.selectedIcon,class:F(e.ui.group.command.selectedIcon.base),"aria-hidden":"true"},null,8,["name","class"])):f&&(e.group.active||e.$slots[`${e.group.key}-active`])?le(e.$slots,`${e.group.key}-active`,{key:1,group:e.group,command:r,active:f,selected:b},()=>[e.group.active?(L(),H("span",{key:0,class:F(e.ui.group.active)},ie(e.group.active),3)):q("",!0)]):le(e.$slots,`${e.group.key}-inactive`,{key:2,group:e.group,command:r,active:f,selected:b},()=>{var w;return[(w=r.shortcuts)!=null&&w.length?(L(),H("span",{key:0,class:F(e.ui.group.command.shortcuts)},[(L(!0),H(Ee,null,xe(r.shortcuts,R=>(L(),j(c,{key:R},{default:U(()=>[Qt(ie(R),1)]),_:2},1024))),128))],2)):!r.disabled&&e.group.inactive?(L(),H("span",{key:1,class:F(e.ui.group.inactive)},ie(e.group.inactive),3)):q("",!0)]})],2)]),_:2},1032,["value","disabled"]))),128))],10,Ls)],2)}const Ds=We(Fs,[["render",zs]]),he=ht(Re.ui.strategy,Re.ui.commandPalette,gn),Ns=se({components:{HCombobox:Wn,HComboboxInput:Hn,HComboboxOptions:Un,UIcon:$e,UButton:ft,CommandPaletteGroup:Ds},inheritAttrs:!1,props:{modelValue:{type:[String,Number,Object,Array],default:null},by:{type:String,default:"id"},multiple:{type:Boolean,default:!1},nullable:{type:Boolean,default:!1},searchable:{type:Boolean,default:!0},loading:{type:Boolean,default:!1},groups:{type:Array,default:()=>[]},icon:{type:String,default:()=>he.default.icon},loadingIcon:{type:String,default:()=>he.default.loadingIcon},selectedIcon:{type:String,default:()=>he.default.selectedIcon},closeButton:{type:Object,default:()=>he.default.closeButton},emptyState:{type:Object,default:()=>he.default.emptyState},placeholder:{type:String,default:"Search..."},groupAttribute:{type:String,default:"label"},commandAttribute:{type:String,default:"label"},autoselect:{type:Boolean,default:!0},autoclear:{type:Boolean,default:!0},debounce:{type:Number,default:200},fuse:{type:Object,default:()=>({})},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["update:modelValue","close"],setup(e,{emit:s,expose:t}){const{ui:o,attrs:n}=Ge("commandPalette",Se(e,"ui"),he,Se(e,"class")),i=B(""),a=B(),l=B(null),c=B(!1);ye(()=>{e.autoselect&&D()}),ye(()=>{setTimeout(()=>{var E;const y=(E=a.value)==null?void 0:E.$.provides;if(!y)return;const p=Object.getOwnPropertySymbols(y);l.value=p.length&&y[p[0]]},200)});const u=C(()=>pt({},e.fuse,{fuseOptions:{keys:[e.commandAttribute]},resultLimit:12,matchAllWhenSearchEmpty:!0})),r=C(()=>{var p;const y=[];for(const E of e.groups)!E.search&&!E.static&&y.push(...((p=E.commands)==null?void 0:p.map(g=>({...g,group:E.key})))||[]);return y}),d=B({}),{results:f}=_s(i,r,u);function b(y,p){if(y)return y.filter&&typeof y.filter=="function"&&(p=y.filter(i.value,p)),{...y,commands:p.slice(0,u.value.resultLimit)}}const w=C(()=>{if(!f.value)return[];const y=f.value.reduce((m,S)=>{var I;const{item:h,...v}=S;return h.group&&(m[I=h.group]||(m[I]=[]),m[h.group].push({...h,...v})),m},{}),p=Object.entries(y).map(([m,S])=>{const h=e.groups.find(v=>v.key===m);return h?b(h,S):null}).filter(Boolean),E=e.groups.filter(m=>{var S;return!!m.search&&((S=d.value[m.key])==null?void 0:S.length)}).map(m=>{const S=d.value[m.key]||[];return b(m,[...S])}),g=e.groups.filter(m=>{var S;return m.static&&((S=m.commands)==null?void 0:S.length)}).map(m=>b(m,m.commands));return[...p,...E,...g]}),R=vt(async()=>{const y=e.groups.filter(p=>!!p.search);y.length&&(c.value=!0,await Promise.all(y.map(async p=>{d.value[p.key]=await p.search(i.value)})),c.value=!1,T())},e.debounce);X(i,()=>{R(),T()});const _=C(()=>(e.loading||c.value)&&e.loadingIcon?e.loadingIcon:e.icon),A=C(()=>Xt(o.value.input.icon.base,o.value.input.icon.size,(e.loading||c.value)&&e.loadingIcon&&o.value.input.icon.loading)),O=C(()=>e.emptyState===null?null:{...o.value.default.emptyState,...e.emptyState});function T(){setTimeout(()=>{var y;(y=a.value)==null||y.$el.dispatchEvent(new KeyboardEvent("keydown",{key:"PageUp"}))},0)}function D(){setTimeout(()=>{var y;(y=a.value)==null||y.$el.dispatchEvent(new KeyboardEvent("keydown",{key:"ArrowDown"}))},0)}function x(y){s("update:modelValue",y,{query:i.value}),e.autoclear&&setTimeout(()=>{i.value=""},0)}function P(){i.value?i.value="":s("close")}return t({query:i,updateQuery:y=>{i.value=y},comboboxApi:l,results:f}),He(()=>Ue()),{ui:o,attrs:n,groups:w,comboboxInput:a,query:i,iconName:_,iconClass:A,emptyState:O,onSelect:x,onClear:P}}});function Vs(e,s,t,o,n,i){const a=$e,l=te("HComboboxInput"),c=ft,u=te("CommandPaletteGroup"),r=te("HComboboxOptions"),d=te("HCombobox");return L(),j(d,ae({by:e.by,"model-value":e.modelValue,multiple:e.multiple,nullable:e.nullable,class:e.ui.wrapper},e.attrs,{as:"div","onUpdate:modelValue":e.onSelect}),{default:U(()=>[Zt(Y("div",{class:F(e.ui.input.wrapper)},[e.iconName?(L(),j(a,{key:0,name:e.iconName,class:F(e.iconClass),"aria-hidden":"true"},null,8,["name","class"])):q("",!0),ge(l,{ref:"comboboxInput",value:e.query,class:F([e.ui.input.base,e.ui.input.size,e.ui.input.height,e.ui.input.padding,e.icon&&e.ui.input.icon.padding,e.closeButton&&e.ui.input.closeButton.padding]),placeholder:e.placeholder,"aria-label":e.placeholder,autocomplete:"off",onChange:s[0]||(s[0]=f=>e.query=f.target.value)},null,8,["value","class","placeholder","aria-label"]),e.closeButton?(L(),j(c,ae({key:1,"aria-label":"Close"},{...e.ui.default.closeButton||{},...e.closeButton},{class:e.ui.input.closeButton.base,onClick:e.onClear}),null,16,["class","onClick"])):q("",!0)],2),[[en,e.searchable]]),e.groups.length?(L(),j(r,{key:0,static:"",hold:"",as:"div","aria-label":"Commands",class:F(e.ui.container)},{default:U(()=>[(L(!0),H(Ee,null,xe(e.groups,f=>(L(),j(u,{key:f.key,query:e.query,group:f,"group-attribute":e.groupAttribute,"command-attribute":e.commandAttribute,"selected-icon":e.selectedIcon,ui:e.ui},mt({_:2},[xe(e.$slots,(b,w)=>({name:w,fn:U(R=>[le(e.$slots,w,ae({ref_for:!0},R))])}))]),1032,["query","group","group-attribute","command-attribute","selected-icon","ui"]))),128))]),_:3},8,["class"])):e.emptyState?le(e.$slots,"empty-state",{key:1},()=>[Y("div",{class:F(e.ui.emptyState.wrapper)},[e.emptyState.icon?(L(),j(a,{key:0,name:e.emptyState.icon,class:F(e.ui.emptyState.icon),"aria-hidden":"true"},null,8,["name","class"])):q("",!0),Y("p",{class:F(e.query?e.ui.emptyState.queryLabel:e.ui.emptyState.label)},ie(e.query?e.emptyState.queryLabel:e.emptyState.label),3)],2)]):q("",!0)]),_:3},16,["by","model-value","multiple","nullable","class","onUpdate:modelValue"])}const js=We(Ns,[["render",Vs]]),Ks=ht(Re.ui.strategy,Re.ui.modal,bn),Ws=se({components:{HDialog:tn,HDialogPanel:nn,TransitionRoot:sn,TransitionChild:on},inheritAttrs:!1,props:{modelValue:{type:Boolean,default:!1},appear:{type:Boolean,default:!1},overlay:{type:Boolean,default:!0},transition:{type:Boolean,default:!0},preventClose:{type:Boolean,default:!1},fullscreen:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["update:modelValue","close","close-prevented","after-leave"],setup(e,{emit:s}){const{ui:t,attrs:o}=Ge("modal",Se(e,"ui"),Ks,Se(e,"class")),n=C({get(){return e.modelValue},set(c){s("update:modelValue",c)}}),i=C(()=>e.transition?{...t.value.transition}:{});function a(c){if(e.preventClose){s("close-prevented");return}n.value=c,s("close")}const l=()=>{s("after-leave")};return He(()=>Ue()),{ui:t,attrs:o,isOpen:n,transitionClass:i,onAfterLeave:l,close:a}}});function Hs(e,s,t,o,n,i){const a=te("TransitionChild"),l=te("HDialogPanel"),c=te("HDialog"),u=te("TransitionRoot");return L(),j(u,{appear:e.appear,show:e.isOpen,as:"template",onAfterLeave:e.onAfterLeave},{default:U(()=>[ge(c,ae({class:e.ui.wrapper},e.attrs,{onClose:e.close}),{default:U(()=>[e.overlay?(L(),j(a,ae({key:0,as:"template",appear:e.appear},e.ui.overlay.transition,{class:e.ui.overlay.transition.enterFrom}),{default:U(()=>[Y("div",{class:F([e.ui.overlay.base,e.ui.overlay.background])},null,2)]),_:1},16,["appear","class"])):q("",!0),Y("div",{class:F(e.ui.inner)},[Y("div",{class:F([e.ui.container,!e.fullscreen&&e.ui.padding])},[ge(a,ae({as:"template",appear:e.appear},e.transitionClass,{class:e.transitionClass.enterFrom}),{default:U(()=>[ge(l,{class:F([e.ui.base,e.ui.background,e.ui.ring,e.ui.shadow,e.fullscreen?e.ui.fullscreen:[e.ui.width,e.ui.height,e.ui.rounded,e.ui.margin]])},{default:U(()=>[le(e.$slots,"default")]),_:3},8,["class"])]),_:3},16,["appear","class"])],2)],2)]),_:3},16,["class","onClose"])]),_:3},8,["appear","show","onAfterLeave"])}const Us=We(Ws,[["render",Hs]]),_t=e=>{if(!e.children)return e._path;for(const s of(e==null?void 0:e.children)||[]){const t=_t(s);if(t)return t}},Ft=(e,s)=>{for(const t of s){if(t._path===e&&!t._id)return t.children;if(t.children){const o=Ft(e,t.children);if(o)return o}}},Lt=(e,s)=>{for(const t of s){if(t._path===e)return t;if(t.children){const o=Lt(e,t.children);if(o)return o}}},Gs=(e,s,t)=>{let o;const n=(i,a)=>{for(const l of a)if(!(i!=="/"&&l._path==="/")){if(i!=null&&i.startsWith(l._path)&&l[s]&&(o=l[s]),l._path===i)return;l.children&&n(i,l.children)}};return n(e,t),o},qs=()=>({navBottomLink:_t,navDirFromPath:Ft,navPageFromPath:Lt,navKeyFromPath:Gs});function Ys(...e){return C(()=>e.every(s=>J(s)))}function Js(e){return C(()=>!J(e))}const Qs=/^[^-]+.*-.*[^-]+$/,Xs=/^[^_]+.*_.*[^_]+$/,Zs=(e,s={})=>{const{macOS:t,usingInput:o}=gt();let n=[];const i=B([]),a=()=>{i.value.splice(0,i.value.length)},l=vt(a,s.chainDelay??800),c=u=>{if(!u.key)return;const r=/^[a-z]$/i.test(u.key);let d;if(i.value.push(u.key),i.value.length>=2){d=i.value.slice(-2).join("-");for(const f of n.filter(b=>b.chained))if(f.key===d){f.condition.value&&(u.preventDefault(),f.handler()),a();return}}for(const f of n.filter(b=>!b.chained))if(u.key.toLowerCase()===f.key&&u.metaKey===f.metaKey&&u.ctrlKey===f.ctrlKey&&!(r&&u.shiftKey!==f.shiftKey)){f.condition.value&&(u.preventDefault(),f.handler()),a();return}l()};n=Object.entries(e).map(([u,r])=>{var w,R;if(!r)return null;let d;u.includes("-")&&u!=="-"&&!((w=u.match(Qs))!=null&&w.length)&&console.trace(`[Shortcut] Invalid key: "${u}"`),u.includes("_")&&u!=="_"&&!((R=u.match(Xs))!=null&&R.length)&&console.trace(`[Shortcut] Invalid key: "${u}"`);const f=u.includes("-")&&u!=="-";if(f)d={key:u.toLowerCase(),metaKey:!1,ctrlKey:!1,shiftKey:!1,altKey:!1};else{const _=u.toLowerCase().split("_").map(A=>A);d={key:_.filter(A=>!["meta","ctrl","shift","alt"].includes(A)).join("_"),metaKey:_.includes("meta"),ctrlKey:_.includes("ctrl"),shiftKey:_.includes("shift"),altKey:_.includes("alt")}}if(d.chained=f,!t.value&&d.metaKey&&!d.ctrlKey&&(d.metaKey=!1,d.ctrlKey=!0),typeof r=="function"?d.handler=r:typeof r=="object"&&(d={...d,handler:r.handler}),!d.handler)return console.trace("[Shortcut] Invalid value"),null;const b=[];return r.usingInput?typeof r.usingInput=="string"&&b.push(C(()=>o.value===r.usingInput)):b.push(Js(o)),d.condition=Ys(...b,...r.whenever||[]),d}).filter(Boolean),ln("keydown",c)},to=se({inheritAttrs:!1,__name:"ContentSearch",props:{modelValue:{type:Boolean,default:void 0},files:{type:Array,default:()=>[]},navigation:{type:Array,default:()=>[]},links:{type:Array,default:()=>[]},groups:{type:Array,default:()=>[]},fuse:{type:Object,default:()=>({})},hideColorMode:{type:Boolean,default:!1},ui:{type:Object,default:()=>({})}},emits:["update:modelValue"],setup(e,{expose:s,emit:t}){const o=an(),n=C(()=>({padding:"p-0 sm:p-4",rounded:"rounded-none sm:rounded-lg",width:"sm:max-w-3xl",height:"h-dvh sm:h-[28rem]",commandPalette:{input:{height:"h-[--header-height] sm:h-12",icon:{size:"h-5 w-5",padding:"ps-11"}},group:{command:{prefix:"!text-foreground after:content-['_>']"}},container:"scroll-py-10"},fileIcon:{name:"i-heroicons-document-text"},default:{closeButton:{icon:o.ui.icons.close,color:"gray",variant:"ghost",size:"sm"}}})),i=e,a=t,l=rn(),{navKeyFromPath:c}=qs(),{usingInput:u}=gt(),{isContentSearchModalOpen:r}=un(),d=cn(mn),f=dn(),{ui:b,attrs:w}=Ge("content.search",Se(i,"ui"),n,void 0,!0),R=d.smaller("sm"),_=B();function A(h){var v;return h.icon?h.icon:(v=h.navigation)!=null&&v.icon?h.navigation.icon:(i.navigation&&(h.icon=c(h._path,"icon",i.navigation)),h.icon||b.value.fileIcon.name)}const O=C({get(){return i.modelValue!==void 0?i.modelValue:r.value},set(h){i.modelValue!==void 0?a("update:modelValue",h):r.value=h}}),T=C(()=>pt({},i.fuse,{fuseOptions:{ignoreLocation:!0,includeMatches:!0,threshold:.1,keys:[{name:"title",weight:5},{name:"label",weight:5},{name:"suffix",weight:3},"children.children.value","children.children.children.value","children.children.children.children.value","children.children.children.children.children.value"]},resultLimit:12}));function D(h,v){return h?v:v==null?void 0:v.filter(I=>!I.child)}const x=C(()=>{var v,I;let h=[];return(v=i.navigation)!=null&&v.length&&(i.navigation.some(M=>{var $;return!!(($=M.children)!=null&&$.length)})?h=(i.navigation||[]).map(M=>({key:M._path,label:M.title,commands:(i.files||[]).filter($=>{var N;return(N=$._path)==null?void 0:N.startsWith(M._path)}).flatMap($=>y($,M)),filter:D})):h=[{key:"docs",commands:(i.files||[]).flatMap(M=>y(M)),filter:D}]),[((I=i.links)==null?void 0:I.length)&&{key:"links",label:"Links",commands:i.links.flatMap(M=>[M.to&&{id:l.resolve(M.to).fullPath,...M,icon:M.icon||b.value.fileIcon.name},...(M.children||[]).map($=>({id:l.resolve($.to).fullPath,prefix:M.label,suffix:$.description,...$,icon:$.icon||M.icon||b.value.fileIcon.name}))]).filter(Boolean)},...h,...i.groups||[],!(f!=null&&f.forced)&&!i.hideColorMode&&{key:"theme",label:"Theme",commands:[{id:"theme-light",label:"Light",icon:o.ui.icons.light,disabled:f.preference==="light",click:()=>{f.preference="light"}},{id:"theme-dark",label:"Dark",icon:o.ui.icons.dark,disabled:f.preference==="dark",click:()=>{f.preference="dark"}}]}].filter(Boolean)}),P=C(()=>O.value||!u.value);function y(h,v){var M,$,N,Z,ve;const I=(M=hn((v==null?void 0:v.children)||[],h))==null?void 0:M.map(({title:G})=>G).join(" > ");return[{id:h._id,label:(($=h.navigation)==null?void 0:$.title)||h.title,title:((N=h.navigation)==null?void 0:N.title)||h.title,prefix:I,to:h._path,suffix:h.description,children:E(g(((Z=h==null?void 0:h.body)==null?void 0:Z.children)||[])),icon:A(h)},...Object.entries(m(((ve=h==null?void 0:h.body)==null?void 0:ve.children)||[])).map(([G,{title:ue,children:we}])=>{var me;if(ue)return{id:`${h._path}${G}`,label:ue,prefix:(I?`${I} > `:"")+`${((me=h.navigation)==null?void 0:me.title)||h.title}`,to:`${h._path}${G}`,children:E(we),icon:A(h),child:!0}})].filter(Boolean)}function p(h){return(h==null?void 0:h.map(v=>{var I,M;if(["code","code-inline","em","a","strong"].includes(v.tag))return{type:"text",value:((M=(I=v.children)==null?void 0:I.find($=>$.type==="text"))==null?void 0:M.value)||""};if(v.type==="text")return v}).filter(Boolean))||[]}function E(h){return h.map(v=>{if(["pre","style","video"].includes(v.tag))return;let I=[...v.children||[]];return["p","h1","h2","h3","h4","h5","h6","li","td","th"].includes(v.tag)&&I.length?(I=p(I).reduce((M,$)=>(M.length&&M[M.length-1].type==="text"?M[M.length-1].value+=$.value||"":M.push({...$}),M),[]),{...v,children:I}):{...v,children:E(I)}}).filter(Boolean)}function g(h){const v=[];for(const I of h){if(["h1","h2","h3"].includes(I.tag))break;v.push(I)}return v}function m(h){var $,N,Z,ve;const v={};let I="",M="";for(const G of h)["h1","h2","h3"].includes(G.tag)&&(M=((Z=(N=($=G.children)==null?void 0:$.map(ue=>{var we,me;if(ue.type==="text")return ue.value;if(["code","code-inline","em","a","strong"].includes(ue.tag))return(me=(we=ue.children)==null?void 0:we.find(Bt=>Bt.type==="text"))==null?void 0:me.value}))==null?void 0:N.filter(Boolean))==null?void 0:Z.join(" "))||"",M&&((ve=G.props)!=null&&ve.id)&&(I=`#${encodeURIComponent(G.props.id)}`)),v[I]?v[I].children.push(G):v[I]={children:[G],title:M};return v}function S(h){O.value=!1;const v=h[0];v&&(v.click?v.click():v.to?v.target==="_blank"||v.to.startsWith("http")?window.open(v.to,v.target||"_blank"):l.push(v.to):v.href&&window.open(v.href,"_blank"))}return Zs({meta_k:{usingInput:!0,whenever:[P],handler:()=>{O.value=!O.value}},escape:{usingInput:!0,whenever:[O],handler:()=>{O.value=!1}}}),s({commandPaletteRef:_}),(h,v)=>{const I=js,M=Us;return L(),j(M,{modelValue:K(O),"onUpdate:modelValue":v[1]||(v[1]=$=>vn(O)?O.value=$:null),overlay:!K(R),transition:!K(R),ui:K(b)},{default:U(()=>[ge(I,ae({ref_key:"commandPaletteRef",ref:_,"model-value":[],groups:K(x),ui:K(b).commandPalette,"close-button":K(b).default.closeButton,fuse:K(T),multiple:""},K(w),{"onUpdate:modelValue":S,onClose:v[0]||(v[0]=$=>O.value=!1)}),mt({_:2},[xe(h.$slots,($,N)=>({name:N,fn:U(Z=>[le(h.$slots,N,fn(pn(Z)))])}))]),1040,["groups","ui","close-button","fuse"])]),_:3},8,["modelValue","overlay","transition","ui"])}}});export{to as default}; diff --git a/_nuxt/C71A92y3.js b/_nuxt/C71A92y3.js new file mode 100644 index 0000000..9e2ff83 --- /dev/null +++ b/_nuxt/C71A92y3.js @@ -0,0 +1 @@ +import{k as r,c as t,e as o,ah as s}from"./WKNqgS7_.js";const c={};function n(e,a){return t(),o("tr",null,[s(e.$slots,"default")])}const f=r(c,[["render",n]]);export{f as default}; diff --git a/_nuxt/C8G3FUCM.js b/_nuxt/C8G3FUCM.js new file mode 100644 index 0000000..91c5da5 --- /dev/null +++ b/_nuxt/C8G3FUCM.js @@ -0,0 +1 @@ +import{k as o,c as r,e as s,ah as t}from"./WKNqgS7_.js";const c={};function n(e,a){return r(),s("ol",null,[t(e.$slots,"default")])}const f=o(c,[["render",n]]);export{f as default}; diff --git a/_nuxt/C9Mei_rU.js b/_nuxt/C9Mei_rU.js new file mode 100644 index 0000000..30feaad --- /dev/null +++ b/_nuxt/C9Mei_rU.js @@ -0,0 +1 @@ +import{_ as C}from"./CWTHGu1v.js";import{d as B,b6 as S,an as w,ao as I,r as $,B as b,c as l,e as p,f as g,F as A,af as D,n as m,C as a,i as F,t as G,ag as N,ba as P,ai as V}from"./WKNqgS7_.js";const j=["onClick"],M=B({inheritAttrs:!1,__name:"CodeGroup",props:{class:{type:[String,Object,Array],default:void 0}},setup(y,{expose:v}){const _={wrapper:"relative [&>div:last-child]:!my-0 [&>div:last-child]:!static my-5",header:"flex items-center gap-1 border border-gray-200 dark:border-gray-700 border-b-0 rounded-t-md overflow-hidden p-2",tab:{base:"px-2 py-1.5 focus:outline-none text-gray-700 dark:text-gray-200 text-sm rounded-md flex items-center gap-1.5",active:"bg-gray-100 dark:bg-gray-800",inactive:"hover:bg-gray-50 dark:hover:bg-gray-800/50",icon:{base:""}}},h=y,d=S(),{ui:r,attrs:k}=w("content.codeGroup",void 0,_,I(h,"class"),!0),s=$(0);v({selectedIndex:s});function u(e,t){var i,c,o,n;return typeof e.type=="symbol"?(i=e.children)==null?void 0:i.map(u):{label:((c=e.props)==null?void 0:c.filename)||((o=e.props)==null?void 0:o.label)||`${t}`,icon:(n=e.props)==null?void 0:n.icon,component:e}}const f=b(()=>{var e,t;return((t=(e=d.default)==null?void 0:e.call(d))==null?void 0:t.flatMap(u).filter(Boolean))||[]}),x=b(()=>f.value.find((e,t)=>t===s.value));return(e,t)=>{var c;const i=C;return l(),p("div",V({class:a(r).wrapper},a(k)),[g("div",{class:m(a(r).header)},[(l(!0),p(A,null,D(a(f),(o,n)=>(l(),p("button",{key:n,tabindex:"-1",class:m([a(r).tab.base,a(s)===n?a(r).tab.active:a(r).tab.inactive]),onClick:z=>s.value=n},[F(i,{icon:o.icon,filename:o.label,class:m(a(r).tab.icon.base)},null,8,["icon","filename","class"]),g("span",null,G(o.label),1)],10,j))),128))],2),(l(),N(P((c=a(x))==null?void 0:c.component),{key:a(s),"hide-header":""}))],16)}}});export{M as default}; diff --git a/_nuxt/CAXRF4Ia.js b/_nuxt/CAXRF4Ia.js new file mode 100644 index 0000000..01e2f86 --- /dev/null +++ b/_nuxt/CAXRF4Ia.js @@ -0,0 +1 @@ +import{d as p,x as m,B as f,an as b,ac as g,c as x,ag as v,w as n,i as s,C as a,bb as y,n as o,f as _,t as c,bc as h,bd as C,ad as S,a9 as k}from"./WKNqgS7_.js";import{r as w}from"./Cv00pZP1.js";import"./BneCoJRQ.js";const V=p({__name:"Collapsible",props:{name:{type:String,default:"properties"},openText:{type:String,default:"Show"},closeText:{type:String,default:"Hide"}},setup(t){const i=m(),l=f(()=>({button:{base:"flex items-center gap-1 text-sm text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200",icon:{name:i.ui.icons.chevron,base:"w-4 h-4 transform transition-transform duration-200",active:"",inactive:"-rotate-90"}},panel:"mt-4 ml-2 py-2.5 pl-4 border-l border-gray-200 dark:border-gray-800 [&>div]:!mt-0"})),{ui:e}=b("content.collapsible",void 0,l,void 0,!0);return g(()=>S()),(u,B)=>{const d=k;return x(),v(a(C),{as:"div"},{default:n(({open:r})=>[s(a(y),{class:o(a(e).button.base)},{default:n(()=>[s(d,{name:a(e).button.icon.name,class:o([a(e).button.icon.base,r?a(e).button.icon.active:a(e).button.icon.inactive])},null,8,["name","class"]),_("span",null,c(r?t.closeText:t.openText)+" "+c(t.name),1)]),_:2},1032,["class"]),s(a(h),{class:o(a(e).panel)},{default:n(()=>[w(u.$slots,"default",{unwrap:"p"})]),_:3},8,["class"])]),_:3})}}});export{V as default}; diff --git a/_nuxt/CG6Dc4jp.js b/_nuxt/CG6Dc4jp.js new file mode 100644 index 0000000..32735f7 --- /dev/null +++ b/_nuxt/CG6Dc4jp.js @@ -0,0 +1 @@ +var Q=Uint8Array.from(atob("AGFzbQEAAAABoQEWYAJ/fwF/YAF/AX9gA39/fwF/YAR/f39/AX9gAX8AYAV/f39/fwF/YAN/f38AYAJ/fwBgBn9/f39/fwF/YAd/f39/f39/AX9gAAF/YAl/f39/f39/f38Bf2AIf39/f39/f38Bf2AAAGAEf39/fwBgA39+fwF+YAZ/fH9/f38Bf2AAAXxgBn9/f39/fwBgAnx/AXxgAn5/AX9gBX9/f39/AAJ1BANlbnYVZW1zY3JpcHRlbl9tZW1jcHlfYmlnAAYDZW52EmVtc2NyaXB0ZW5fZ2V0X25vdwARFndhc2lfc25hcHNob3RfcHJldmlldzEIZmRfd3JpdGUAAwNlbnYWZW1zY3JpcHRlbl9yZXNpemVfaGVhcAABA9MB0QENBAABAAECAgsCAAIEBAACAQEAAQMCAwkCBgUDBQgCAwwMAwkJAwgDAQIFAwMEAQUHCwgCAgsABQUBAgQCBgIAAQACBAIABwMHBgcAAwACAAICAAQBAgcAAgUCAAEBBgYABgQACAUICQsJDAAAAAAAAAACAgIDAAIDAgADAQABAAACBQICAAESAQEEAgIGAgUDAQUAAgEBAAoBAAEAAwMCAAACBgIOAgEPAQEBChMCBQkGAQ4UFRAHAwIBAAEECggCAQgIBwcNAQQABwABCgQBBQQFAXABMzMFBwEBgAKAgAIGDgJ/AUHQj9MCC38BQQALB5QCDwZtZW1vcnkCABFfX3dhc21fY2FsbF9jdG9ycwAEGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBABBfX2Vycm5vX2xvY2F0aW9uALABB29tYWxsb2MAwAEFb2ZyZWUAwQEQZ2V0TGFzdE9uaWdFcnJvcgDCARFjcmVhdGVPbmlnU2Nhbm5lcgDEAQ9mcmVlT25pZ1NjYW5uZXIAxQEYZmluZE5leHRPbmlnU2Nhbm5lck1hdGNoAMYBG2ZpbmROZXh0T25pZ1NjYW5uZXJNYXRjaERiZwDHAQlzdGFja1NhdmUA0QEMc3RhY2tSZXN0b3JlANIBCnN0YWNrQWxsb2MA0wEMZHluQ2FsbF9qaWppANQBCVIBAEEBCzIFCgsPHC9vcHRxcnN1ugG7Ab0BBgcICYABfoEBggGDAX97fIUBmwF9hAFvnAFvnQGeAZ8BoAGhAZIBogGYAZcBowGkAaUBqwGqAawB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ACADNgIEIA0oAgBBATYCCEEADwsgACgCDCABEE8iA0EASARAIAMPCyACIAIoAowBIgVBAWo2AowBIAFBOxBRIgQNCyABKAIIIANBBWo2AgQgAUHNABBRIgQNCyABKAIIIAU2AgQgASgCCEEANgIIIAAoAgwgASACEEIiBA0LIAFBPhBRIgAhBCAADQsgASgCCCAFNgIEIAFBPRBRIgAhBCAADQsgAUE5EFEPCyMAQRBrIgkkAAJAIAAoAhQgACgCGEYEQCACIAIoAowBIgdBAWo2AowBAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBkEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgVFDQIgASAFNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBjYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHNADYCACABKAIIIAc2AgQgASgCCEEANgIIAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBkEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgVFDQIgASAFNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBjYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHKADYCACABKAIIIAAoAhQ2AgQgASgCCEEANgIIIAEoAghBATYCDCAAKAIMIAEgAhBCIgMNAQJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIQQAhAyAAQQA2AhAgAEIANwIIIABCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQcwANgIAIAEoAgggBzYCBCABKAIIQQA2AggMAQsgACgCICIDBEAgAyABIAkgAkEAEF0iA0EASA0BAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiB0EATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIgZFDQIgASAGNgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBzYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHJADYCACABKAIIQQAgCSgCAGs2AgQgACgCICABIAIQQiIDDQELIAIgAigCjAEiB0EBajYCjAECQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiBUUNASABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc4ANgIAIAEoAghBAjYCBCABKAIIIAc2AggCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiBUUNASABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc8ANgIAIAEoAghBBDYCBCACIAIoAowBIgZBAWo2AowBAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHNADYCACABKAIIIAY2AgQgASgCCEEANgIIAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE7NgIAIAEoAghBAjYCBAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgVBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIIRQ0BIAEgCDYCACABKAIEIARBA3QQzQEiBEUNASABIAU2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOjYCACABKAIIQQM2AgQCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCEUNASABIAg2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc8ANgIAIAEoAghBAjYCBCABKAIIIAc2AgggASgCCEEANgIMAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE5NgIAIAFBygAQUSIDDQAgACgCGCEDIAEoAgggACgCFCIENgIEIAEoAghBfyADIARrIANBf0YbNgIIIAEoAghBAjYCDCABQcsAEFEiAw0AIAAoAgwgASACEEIiAw0AIAFBKBBRIgMNACABKAIIQQE2AgQgAUHMABBRIgMNACABKAIIIAY2AgQgASgCCEEANgIIIAFBzwAQUSIDDQAgASgCCEECNgIEIAEoAgggBzYCCCABKAIIQQE2AgxBACEDCyAJQRBqJAAgAw8LIwBBEGsiCiQAIAAoAgwgARBPIQggACgCGCEGIAAoAhQhBSACIAIoAowBIgdBAWo2AowBIAEoAhAhBCABKAIMIQMCQCAFIAZGBEACQCADIARJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAwtBeyEDIAEoAgAgBEEobBDNASIFRQ0CIAEgBTYCACABKAIEIARBA3QQzQEiBEUNAiABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzQA2AgAgASgCCCAHNgIEIAEoAghBADYCCAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAwtBeyEDIAEoAgAgBEEobBDNASIFRQ0CIAEgBTYCACABKAIEIARBA3QQzQEiBEUNAiABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOzYCACABKAIIIAhBBGo2AgQCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIGQQBMBEBBdSEDDAMLQXshAyABKAIAIARBKGwQzQEiBUUNAiABIAU2AgAgASgCBCAEQQN0EM0BIgRFDQIgASAGNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQcoANgIAIAEoAgggACgCFDYCBCABKAIIQQA2AgggASgCCEEBNgIMIAAoAgwgASACEEIiAw0BAkAgASgCDCIAIAEoAhAiAkkNACACRQ0AIAJBAXQiAEEATARAQXUhAwwDC0F7IQMgASgCACACQShsEM0BIgRFDQIgASAENgIAIAEoAgQgAkEDdBDNASICRQ0CIAEgADYCECABIAI2AgQgASgCDCEACyABIABBAWo2AgwgASABKAIAIABBFGxqIgA2AgggAEEANgIQIABCADcCCCAAQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akE+NgIAIAEoAgggBzYCBAJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIIABBADYCECAAQgA3AgggAEIANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBOTYCAAJAIAEoAgwiACABKAIQIgJJDQAgAkUNACACQQF0IgBBAEwEQEF1IQMMAwtBeyEDIAEoAgAgAkEobBDNASIERQ0CIAEgBDYCACABKAIEIAJBA3QQzQEiAkUNAiABIAA2AhAgASACNgIEIAEoAgwhAAsgASAAQQFqNgIMIAEgASgCACAAQRRsaiIANgIIQQAhAyAAQQA2AhAgAEIANwIIIABCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQT02AgAMAQsCQCADIARJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIFRQ0BIAEgBTYCACABKAIEIARBA3QQzQEiBEUNASABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzgA2AgAgASgCCEECNgIEIAEoAgggBzYCCAJAIAEoAgwiAyABKAIQIgRJDQAgBEUNACAEQQF0IgZBAEwEQEF1IQMMAgtBeyEDIAEoAgAgBEEobBDNASIFRQ0BIAEgBTYCACABKAIEIARBA3QQzQEiBEUNASABIAY2AhAgASAENgIEIAEoAgwhAwsgASADQQFqNgIMIAEgASgCACADQRRsaiIDNgIIIANBADYCECADQgA3AgggA0IANwIAIAEoAgQgASgCCCABKAIAa0EUbUECdGpBzwA2AgAgASgCCEEENgIEIAIgAigCjAEiBkEBajYCjAECQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCUUNASABIAk2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQc0ANgIAIAEoAgggBjYCBCABKAIIQQA2AggCQCABKAIMIgMgASgCECIESQ0AIARFDQAgBEEBdCIFQQBMBEBBdSEDDAILQXshAyABKAIAIARBKGwQzQEiCUUNASABIAk2AgAgASgCBCAEQQN0EM0BIgRFDQEgASAFNgIQIAEgBDYCBCABKAIMIQMLIAEgA0EBajYCDCABIAEoAgAgA0EUbGoiAzYCCCADQQA2AhAgA0IANwIIIANCADcCACABKAIEIAEoAgggASgCAGtBFG1BAnRqQTs2AgAgASgCCCAIQQhqNgIEIAAoAiAiAwRAIAMgARBPIQMgASgCCCIEIAMgBCgCBGpBAWo2AgQgACgCICABIAogAkEAEF0iA0EASA0BAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwDC0F7IQMgASgCACAEQShsEM0BIghFDQIgASAINgIAIAEoAgQgBEEDdBDNASIERQ0CIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHJADYCACABKAIIQQAgCigCAGs2AgQgACgCICABIAIQQiIDDQELAkAgASgCDCIDIAEoAhAiBEkNACAERQ0AIARBAXQiBUEATARAQXUhAwwCC0F7IQMgASgCACAEQShsEM0BIghFDQEgASAINgIAIAEoAgQgBEEDdBDNASIERQ0BIAEgBTYCECABIAQ2AgQgASgCDCEDCyABIANBAWo2AgwgASABKAIAIANBFGxqIgM2AgggA0EANgIQIANCADcCCCADQgA3AgAgASgCBCABKAIIIAEoAgBrQRRtQQJ0akHKADYCACAAKAIYIQMgASgCCCAA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AgANACAAKAIwDQAgACgCDCECIAAgAEEYaiIENgIMIAAgBCAAKAIQIAJrajYCEAsgBSgCAA0BIAUoAjANASAFKAIMIQAgBSAFQRhqIgI2AgwgBSACIAUoAhAgAGtqNgIQIAMQEAwGCyAGQcACaiIFIABBMGoiAikCADcDACAGQbgCaiIEIABBKGoiASkCADcDACAGQbACaiIJIABBIGoiCykCADcDACAGQagCaiIHIABBGGoiCikCADcDACAGQaACaiIOIABBEGoiDSkCADcDACAGQZgCaiIQIABBCGoiDCkCADcDACAGIAApAgA3A5ACIAIgA0EwaiIVKQIANwIAIAEgA0EoaiICKQIANwIAIAsgA0EgaiIBKQIANwIAIAogA0EYaiILKQIANwIAIA0gA0EQaiIKKQIANwIAIAwgA0EIaiINKQIANwIAIAAgAykCADcCACAVIAUpAwA3AgAgAiAEKQMANwIAIAEgCSkDADcCACALIAcpAwA3AgAgCiAOKQMANwIAIA0gECkDADcCACADIAYpA5ACNwIAAkAgACgCAA0AIAAoAjANACAAKAIMIQUgACAAQRhqIgI2AgwgACACIAAoAhAgBWtqNgIQCyADKAIADQAgAygCMA0AIAMoAgwhBSADIANBGGoiADYCDCADIAAgAygCECAFa2o2AhALIAMQEAwECyAGQcACaiIFIABBMGoiAikCADcDACAGQbgCaiIEIABBKGoiAykCADcDACAGQbACaiIBIABBIGoiCSkCADcDACAGQagCaiILIABBGGoiBykCADcDACAGQaACaiIKIABBEGoiDikCADcDACAGQZgCaiINIABBCGoiECkCADcDACAGIAApAgA3A5ACIAIgCEEwaiIMKQIANwIAIAMgCEEoaiICKQIANwIAIAkgCEEgaiIDKQIANwIAIAcgCEEYaiIJKQIANwIAIA4gCEEQaiIHKQIANwIAIBAgCEEIaiIOKQIANwIAIAAgCCkCADcCACAMIAUpAwA3AgAgAiAEKQMANwIAIAMgASkDADcCACAJIAspAwA3AgAgByAKKQMANwIAIA4gDSkDADcCACAIIAYpA5ACNwIAAkAgACgCAA0AIAAoAjANACAAKAIMIQUgACAAQRhqIgI2AgwgACACIAAoAhAgBWtqNgIQCwJAIAgoAgANACAIKAIwDQAgCCgC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QQFrQQZ0aiIBKAIAIAUoAhhHBEAgAUIANwIAIAFCADcCOCABQgA3AjAgAUIANwIoIAFCADcCICABQgA3AhggAUIANwIQIAFCADcCCCABIAUoAhg2AgALIAEoAghBACABKAIEGyECCyAAKAIIIgFBAEwNACAAKAIoKAIoIgUoAhwiBiABQQFrIghBBnRqIgEoAgAgBSgCGEcEQCABQgA3AgAgAUIANwI4IAFCADcCMCABQgA3AiggAUIANwIgIAFCADcCGCABQgA3AhAgAUIANwIIIAEgBSgCGDYCAAsCQCABKAIERQRAIAAoAgwgACgCCBAOIgFFDQIgASgCBEEBRw0CIAEoAkQiAyABKAJIIgUgBygCRCgCFBEAACEIQQAhBiAFIAMgBygCRCgCABEBACADaiIBSwRAIAEgBSAHKAJEKAIUEQAAIQZBmH4hAyABIAcoAkQoAgARAQAgAWogBUcNAwtBmH4hAwJ/AkACQAJAAkAgCEEhaw4eAQcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHAgADBwtBACAGQT1GDQMaDAYLQQEgBkE9Rg0CGgwFC0EEIAZBPUYNARogBg0EQQIMAQtBBSAGQT1GDQAaIAYNA0EDCyEBQWIhAyAAKAIIIgdBAEwNAiAAKAIoKAIoIgMoAhwgB0EGdGpBQGoiAEEBNgIEIAAgBTYCDCAAIAE2AgggACADKAIYNgIADAELIAYgCEEGdGooAgghAQtBACEAAkACQAJAAkACQAJAAkAgAQ4GAAECAwQFBgsgAiAERiEADAULIAIgBEchAAwECyACIARKIQAMAwsgAiAESCEADAILIAIgBE4hAAwBCyACIARMIQALIABBAXMhAwsgAws/AQF/AkAgACgCDCIAIAIgAWsiA2oQywEiAkUNACACIAEgAxCmASEBIABBAEwNACABIANqQQAgABCoARoLIAILJgAgAiABIAIgACgCOBEAACIBSwR/IAEgACgCABEBACABagUgAQsLHgEBfyABIAJJBH8gASACQQFrIAAoAjgRAAAFIAMLCzsAAkAgAkUNAANAIANBAEwEQCACDwsgASACTw0BIANBAWshAyABIAJBAWsgACgCOBEAACICDQALC0EAC2gBBH8gASECA0ACQCACLQAADQAgACgCDCIDQQFHBEAgAiEEIANBAkgNAQNAIAQtAAENAiAEQQFqIQQgA0ECSiEFIANBAWshAyAFDQALCyACIAFrDwsgAiAAKAIAEQEAIAJqIQIMAAsAC3UBBH8jAEEQayIAJAACQANAIAAgBEEDdEHQJWoiAygCBCIFNgIMIAMoAgAiBiAAQQxqQQEgAiABEQMAIgMNASAAIAY2AgwgBSAAQQxqQQEgAiABEQMAIgMNASAEQQFqIgRBGkcNAAtBACEDCyAAQRBqJAAgAwtOAEEgIQACfyABLQAAIgJBwQBrQf8BcUEaTwRAQWAhAEEAIAJB4QBrQf8BcUEZSw0BGgsgA0KBgICAEDcCACADIAAgAS0AAGo2AghBAQsLBABBfgscAAJ/IAAgAUkEQEEBIAAtAABBCkYNARoLQQALCyUAIAMgASgCAC0AAEHQH2otAAA6AAAgASABKAIAQQFqNgIAQQELBABBAQsHACAALQAACw4AQQFB8HwgAEGAAkkbCwsAIAEgADoAAEEBCwQAIAELzgEBBn8gASACSQRAIAEhAwNAIAVBAWohBSADIAAoAgARAQAgA2oiAyACSQ0ACwtBAEHAmhFqIQMgBEHHCWohBANAAkAgBSADIgYuAQgiB0cNACAFIQggASEDAkAgB0EATA0AA0AgAiADSwRAIAMgAiAAKAIUEQAAIAQtAABHDQMgBEEBaiEEIAMgACgCABEBACADaiEDIAhBAUshByAIQQFrIQggBw0BDAILCyAELQAADQELIAYoAgQPCyAGQQxqIQMgBigCDCIEDQALQaF+C2gBAX8CQCAEQQBKBEADQCABIAJPBEAgAy0AAA8LIAEgAiAAKAIUEQAAIQUgAy0AACAFayIFDQIgA0EBaiEDIAEgACgCABEBACABaiEBIARBAUshBSAEQQFrIQQgBQ0ACwtBACEFCyAFCy4BAX8gASACIAAoAhQRAAAiAEH/AE0EfyAAQQF0QdAhai8BAEEMdkEBcQUgAwsLPgEDfwJAIAJBAEwNAANAIAAgA0ECdCIFaigCACABIAVqKAIARgRAIAIgA0EBaiIDRw0BDAILC0F/IQQLIAQLJwEBfyAAIAFBA20iAkECdGooAgBBECABIAJBA2xrQQN0a3ZB/wFxC7YIAQF/Qc0JIQECQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB9ANqDvQDTU5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTkxOTktKMzZOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTklIR0ZFRENCQUA/Pj08Ozo5ODc1NE4yMTAvLi0sKyopKE5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4nJiUkIyIhIB8eHRwbGhkYThcWFRQTEhFOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk4QTk5OTk5ODw4NTgcGBQQDDAsKCU5OTk4IAk4BAE9OC0GzDA8LQbMNDwtBjQ4PC0GEDw8LQfAPDwtByRAPC0G+EQ8LQf8RDwtBwBIPC0HnEg8LQZYTDwtBuhMPC0HkEw8LQf4TDwtBvBQPC0GEFQ8LQZcVDwtBrhUPC0HNFQ8LQewVDwtBnhYPC0HyFg8LQYoXDwtBoBcPC0G5Fw8LQdUXDwtB9BcPC0GYGA8LQbsYDwtB7BgPC0GgJw8LQcUnDwtB3CcPC0H4Jw8LQZ8oDwtBtCgPC0HLKA8LQeAoDwtB+ygPC0GaKQ8LQb0pDwtBzCkPC0HsKQ8LQZgqDwtBsioPC0HlKg8LQZIrDwtBsisPC0HJKw8LQeUrDwtBliwPC0GoLA8LQcAsDwtB2SwPC0HsLA8LQYUtDwtBmS0P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AUYNAQsLIAILoQEBBH9BASEEAkAgACABTw0AA0BBACEEIAAtAAAiAkHAAXFBgAFGDQEgAEEBaiEDAkAgAkHAAWtBNEsEQCADIQAMAQsgAEECIAJBAnRBkIoRaigCACICIAJBAkwbIgVqIQBBASECA0AgASADRg0DIAMtAABBwAFxQYABRw0DIANBAWohAyACQQFqIgIgBUcNAAsLIAAgAUkNAAtBASEECyAEC4AEAQN/IAJBgARPBEAgACABIAIQACAADwsgACACaiEDAkAgACABc0EDcUUEQAJAIABBA3FFBEAgACECDAELIAJFBEAgACECDAELIAAhAgNAIAIgAS0AADoAACABQQFqIQEgAkEBaiICQQNxRQ0BIAIgA0kNAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgACADQQRrIgRLBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAvoAgECfwJAIAAgAUYNACABIAAgAmoiA2tBACACQQF0a00EQCAAIAEgAhCmARoPCyAAIAFzQQNxIQQCQAJAIAAgAUkEQCAEBEAgACEDDAMLIABBA3FFBEAgACEDDAILIAAhAwNAIAJFDQQgAyABLQAAOgAAIAFBAWohASACQQFrIQIgA0EBaiIDQQNxDQALDAELAkAgBA0AIANBA3EEQANAIAJFDQUgACACQQFrIgJqIgMgASACai0AADoAACADQQNxDQALCyACQQNNDQADQCAAIAJBBGsi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AmogASACQf////8Hc0obIQELIAAgA0EBajYCACABIQIgAywAARCvAQ0ACyABC7YEAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAFBCWsOEgABAgUDBAYHCAkKCwwNDg8QERILIAIgAigCACIBQQRqNgIAIAAgASgCADYCAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASkDADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATQCADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATUCADcDAA8LIAIgAigCAEEHakF4cSIBQQhqNgIAIAAgASsDADkDAA8LIAAgAiADEQcACwuDAQIDfwF+AkAgAEKAgICAEFQEQCAAIQUMAQsDQCABQQFrIgEgACAAQgqAIgVCCn59p0EwcjoAACAAQv////+fAVYhAiAFIQAgAg0ACwsgBaciAgRAA0AgAUEBayIBIAIgAkEKbiIDQQpsa0EwcjoAACACQQlLIQQgAyECIAQNAAsLIAELcgEBfyMAQYACayIFJAACQCACIANMDQAgBEGAwARxDQAgBSABQf8BcSACIANrIgNBgAIgA0GAAkkiAhsQqAEaIAJFBEADQCAAIAVBgAIQtQEgA0GAAmsiA0H/AUsNAAsLIAAgBSADELUBCyAFQYACaiQAC8kYAxJ/AXwCfiMAQbAEayIKJAAgCkEANgIsAkAgAb0iGUIAUwRA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IQsgBUEgcSEIIAooAiwhByAGQQJrIg0gBUEPajoAACAGQQFrQS1BKyAHQQBIGzoAACAEQQhxIQkgCkEQaiEHA0AgByIGAn8gAZlEAAAAAAAA4EFjBEAgAaoMAQtBgICAgHgLIgdB4JURai0AACAIcjoAACABIAe3oUQAAAAAAAAwQKIhAQJAIAZBAWoiByAKQRBqa0EBRw0AAkAgCQ0AIANBAEoNACABRAAAAAAAAAAAYQ0BCyAGQS46AAEgBkECaiEHCyABRAAAAAAAAAAAYg0AC0F/IQlB/f///wcgCyASIA1rIhBqIgZrIANIDQAgAEEgIAICfwJAIANFDQAgByAKQRBqayIIQQJrIANODQAgA0ECagwBCyAHIApBEGprIggLIgcgBmoiBiAEELkBIAAgDiALELUBIABBMCACIAYgBEGAgARzELkBIAAgCkEQaiAIELUBIABBMCAHIAhrQQBBABC5ASAAIA0gEBC1ASAAQSAgAiAGIARBgMAAcxC5ASAGIAIgAiAGSBshCQsgCkGwBGokACAJC40FAgZ+An8gASABKAIAQQdqQXhxIgFBEGo2AgAgACABKQMAIQQgASkDCCEFIwBBIGsiACQAAkAgBUL///////////8AgyIDQoCAgICAgMCAPH0gA0KAgICAgIDA/8MAfVQEQCAFQgSGIARCPIiEIQMgBEL//////////w+DIgRCgYCAgICAgIAIWgRAIANCgYCAgICAgIDAAHwhAgwCCyADQoCAgICAgICAQH0hAiAEQoCAgICAgICACFINASACIANCAYN8IQIMAQsgBFAgA0KAgICAgIDA//8AVCADQoCAgICAgMD//wBRG0UEQCAFQgSGIARCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiADQv///////7//wwBWDQBCACECIANCMIinIgFBkfcASQ0AIABBEGohCSAEIQIgBUL///////8/g0KAgICAgIDAAIQiAyEGAkAgAUGB9wBrIghBwABxBEAgAiAIQUBqrYYhBkIAIQIMAQsgCEUNACAGIAitIgeGIAJBwAAgCGutiIQhBiACIAeGIQILIAkgAjcDACAJIAY3AwgCQEGB+AAgAWsiAUHAAHEEQCADIAFBQGqtiCEEQgAhAwwBCyABRQ0AIANBwAAgAWuthiAEIAGtIgKIhCEEIAMgAoghAwsgACAENwMAIAAgAzcDCCAAKQMIQgSGIAApAwAiA0I8iIQhAiAAKQMQIAApAxiEQgBSrSADQv//////////D4OEIgNCgYCAgICAgIAIWgRAIAJCAXwhAgwBCyADQoCAgICAgICACFINACACQgGDIAJ8IQILIABBIGokACACIAVCgICAgICAgICAf4OEvzkDAAugAQECfyMAQaABayIEJABBfyEFIAQgAUEBa0EAIAEbNgKUASAEIAAgBEGeAWogARsiADYCkAEgBEEAQZABEKgBIgRBfzYCTCAEQRA2AiQgBEF/NgJQIAQgBEGfAWo2AiwgBCAEQZABajYCVAJAIAFBAEgEQEHoyhJBPTYCAAwBCyAAQQA6AAAgBCACIANBDkEPELMBIQULIARBoAFqJAAgBQurAQEEfyAAKAJUIgMoAgQiBSAAKAIUIAAoAhwiBmsiBCAEIAVLGyIEBEAgAygCACAGIAQQpgEaIAMgAygCACAEajYCACADIAMoAgQgBGsiBTYCBAsgAygCACEEIAUgAiACIAVLGyIFBEAgBCABIAUQpgEaIAMgAygCACAFaiIENgIAIAMgAygCBCAFazYCBAsgBEEAOgAAIAAgACgCLCIDNgIcIAAgAzYCFCACCxYAIABFBEBBAA8LQejKEiAANgIAQX8LogIAIABFBEBBAA8LAn8CQCAABH8gAUH/AE0NAQJAQfzLEigCACgCAEUEQCABQYB/cUGAvwNGDQNB6MoSQRk2AgAMAQsgAUH/D00EQCAAIAFBP3FBgAFyOgABIAAgAUEGdkHAAXI6AABBAgwECyABQYBAcUGAwANHIAFBgLADT3FFBEAgACABQT9xQYABcjoAAiAAIAFBDHZB4AFyOgAAIAAgAUEGdkE/cUGAAXI6AAFBAwwECyABQYCABGtB//8/TQRAIAAgAUE/cUGAAXI6AAMgACABQRJ2QfABcjoAACAAIAFBBnZBP3FBgAFyOgACIAAgAUEMdkE/cUGAAXI6AAFBBAwEC0HoyhJBGTYCAAtBfwVBAQsMAQsgACABOgAAQQELCwcAIAAQywELBwAgABDMAQu9BQEJfyMAQRBrIggkACAIQZjMEjYCAEGUzBIoAgAhByMAQYABayIBJAAgASAINgJcAkAgB0GhfkcgB0HcAWpBBk9xRQRAIAEgASgCXCICQQRqNgJcAn9BACACKAIAIgAoAgQiAkUNABogACgCCCEEIAAoAgAiBigCDEECTgRAA0ACQCACIARPDQACfyACIAQgBigCFBEAACIAQYABTwRAAkAgAEGAgARJDQAgA0ERSg0AIAEgAEEYdjYCMCABQeAAaiADaiIFQQVBqzIgAUEwahCpASABIABBEHZB/wFxNgIgIAVBBGpBA0GmMiABQSBqEKkBIAEgAEEIdkH/AXE2AhAgBUEGakEDQaYyIAFBEGoQqQEgASAAQf8BcTYCACAFQQhqQQNBpjIgARCpASADQQpqDAILIANBFUoNAiABIABBCHZB/wFxNgJQIAFB4ABqIANqIgVBBUGrMiABQdAAahCpASABIABB/wFxNgJAIAVBBGpBA0GmMiABQUBrEKkBIANBBmoMAQsgAUHgAGogA2ogADoAACADQQFqCyEDIAIgBigCABEBACACaiECIANBG0gNAQsLIAIgBEkMAQsgAUHgAGogAkEbIAQgAmsiACAAQRtOGyIDEKYBGiAAQRtKCyEFIAcQigEhAkGwzBIhAANAAkACQCACLQAAIgRBJUcEQCAERQ0BDAILIAJBAWohBiACLQABIgRB7gBHBEAgBiECDAILIAAgAUHgAGogAxCmASADaiEAIAUEQCAAQaIyLwAAOwAAIABBpDItAAA6AAIgAEEDaiEACyAGQQFqIQIMAgsgAEEAOgAADAMLIAAgBDoAACAAQQFqIQAgAkEBaiECDAALAAtBlL0SIAcQigEiABB6IQJBsMwSIAAgAhCmASACakEAOgAACyABQYABaiQAIAhBEGokAEGwzBIL4wEBAX8CQAJAAkACfyAALQAQBEBBACEBIABBDGogACgCCCACIAIgA2oiBiACIARqIAYgACgCDCAFEG1BAE4NARpBACEGDAMLAkAgACgCFCABRw0AIAAoAhwgBUcNACAAKAIYIARKDQAgAC0AIEUEQEEADwsgACgCDCIGKAIIKAIAIARODQQLIAAgBTYCHCAAIAQ2AhggACABNgIUQQAhASAAKAIIIAIgAiADaiIGIAIgBGogBiAAKAIMIAUQbUEASA0BIABBDGoLKAIAIQZBASEBDAELQQAhBgsgACABOgAgCyAGC7gzARp/IwBBEGsiGCQAIAJBAnQiChDLASEbIAoQywEhGSACQQBK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JyB3aXRob3V0IGVzY2FwZQBXb3JkAEFscGhhAEVVQy1DTgBGQUlMAChudWxsKQAARgBBAEkATAAAAEYAQQBJAEwAAAAAYWJvcnQAQmxhbmsAIyVkAEFscGhhAFsATUlTTUFUQ0gAAE0ASQBTAE0AQQBUAEMASAAAAE0ASQBTAE0AQQBUAEMASAAAAAAtMFgrMFggMFgtMHgrMHggMHgAZmFpbCB0byBtZW1vcnkgYWxsb2NhdGlvbgBDbnRybABIaXJhZ2FuYQBNQVgALQBPTklHLU1PTklUT1I6ICUtNHMgJXMgYXQ6ICVkIFslZCAtICVkXSBsZW46ICVkCgAATQBBAFgAAABNAEEAWAAAAABEaWdpdABtYXRjaC1zdGFjayBsaW1pdCBvdmVyAEFsbnVtAGluZgBjaGFyYWN0ZXIgY2xhc3MgaGFzICclcycgd2l0aG91dCBlc2NhcGUARVJST1IAPT4AAEUAUgBSAE8AUgAAAEUAUgBSAE8AUgAAAABwYXJzZSBkZXB0aCBsaW1pdCBvdmVyAGFsbnVtAEdyYXBoAEthdGFrYW5hAENPVU5UAElORgA8PQAAQwBPAFUATgBUAAAAQwBPAFUATgBUAAAAAExvd2VyAHJldHJ5LWxpbWl0LWluLW1hdGNoIG92ZXIAbmFuAGFscGhhAFRPVEFMX0NPVU5UAEFTQ0lJAABUAE8AVABBAEwAXwBDAE8AVQBOAFQAAABUAE8AVABBAEwAXwBDAE8AVQBOAFQAAAAAUHJpbnQAWERpZ2l0AHJldHJ5LWxpbWl0LWluLXNlYXJjaCBvdmVyAGJsYW5rAENNUABOQU4AAEMATQBQAAAAQwBNAFAAAAAAUHVuY3QAc3ViZXhwLWNhbGwtbGltaXQtaW4tc2VhcmNoIG92ZXIAY250cmwAQ250cmwALgBkaWdpdABCbGFuawBTcGFjZQB1bmRlZmluZWQgdHlwZSAoYnVnKQBQdW5jdABVcHBlcgBncmFwaABpbnRlcm5hbCBwYXJzZXIgZXJyb3IgKGJ1ZykAUHJpbnQAWERpZ2l0AGxvd2VyAHN0YWNrIGVycm9yIChidWcpAHByaW50AFVwcGVyAEFTQ0lJAHVuZGVmaW5lZCBieXRlY29kZSAoYnVnKQBwdW5jdABTcGFjZQBXb3JkAHVuZXhwZWN0ZWQgYnl0ZWNvZGUgKGJ1ZykAZGVmYXVsdCBtdWx0aWJ5dGUtZW5jb2RpbmcgaXMgbm90IHNldABMb3dlcgBzcGFjZQB1cHBlcgBHcmFwaABjYW4ndCBjb252ZXJ0IHRvIHdpZGUtY2hhciBvbiBzcGVjaWZpZWQgbXVsdGlieXRlLWVuY29kaW5nAHhkaWdpdABEaWdpdABmYWlsIHRvIGluaXRpYWxpemUAaW52YWxpZCBhcmd1bWVudABhc2NpaQBlbmQgcGF0dGVybiBhdCBsZWZ0IGJyYWNlAHdvcmQAZW5kIHBhdHRlcm4gYXQgbGVmdCBicmFja2V0ADpdAGVtcHR5IGNoYXItY2xhc3MAcmVkdW5kYW50IG5lc3RlZCByZXBlYXQgb3BlcmF0b3IAcHJlbWF0dXJlIGVuZCBvZiBjaGFyLWNsYXNzAG5lc3RlZCByZXBlYXQgb3BlcmF0b3IgJXMgYW5kICVzIHdhcyByZXBsYWNlZCB3aXRoICclcycAZW5kIHBhdHRlcm4gYXQgZXNjYXBlAD8AZW5kIHBhdHRlcm4gYXQgbWV0YQAqAGVuZCBwYXR0ZXJuIGF0IGNvbnRyb2wAKwBpbnZhbGlkIG1ldGEtY29kZSBzeW50YXgAPz8AaW52YWxpZCBjb250cm9sLWNvZGUgc3ludGF4ACo/AGNoYXItY2xhc3MgdmFsdWUgYXQgZW5kIG9mIHJhbmdlACs/AGNoYXItY2xhc3MgdmFsdWUgYXQgc3RhcnQgb2YgcmFuZ2UAdW5tYXRjaGVkIHJhbmdlIHNwZWNpZmllciBpbiBjaGFyLWNsYXNzACsgYW5kID8/AHRhcmdldCBvZiByZXBlYXQgb3BlcmF0b3IgaXMgbm90IHNwZWNpZmllZAArPyBhbmQgPwAPAAAADgAAAHQ+AwB8PgMA6AP0AU0B+gDIAKcAjwB9AG8AZABbAFMATQBHAEMAPwA7ADgANQAyADAALQArACoAKAAmACUAJAAiACEAIAAfAB4AHQAdABwAGwAaABoAGQAYABgAFwAXABYAFgAVABUAFAAUABQAEwATABMAEgASABIAEQARABEAEAAQABAAEAAPAA8ADwAPAA4ADgAOAA4ADgAOAA0ADQANAA0ADQANAAwADAAMAAwADAAMAAsACwALAAsACwALAAsACwALAAoACgAKAAoA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b2RlIHJhbmdlcyBhcmUgc3BlY2lmaWVkAHRvbyBzaG9ydCBtdWx0aWJ5dGUgY29kZSBzdHJpbmcAdG9vIGJpZyBiYWNrcmVmIG51bWJlcgBpbnZhbGlkIGJhY2tyZWYgbnVtYmVyL25hbWUAbnVtYmVyZWQgYmFja3JlZi9jYWxsIGlzIG5vdCBhbGxvd2VkLiAodXNlIG5hbWUpAHRvbyBtYW55IGNhcHR1cmVzAHRvbyBiaWcgd2lkZS1jaGFyIHZhbHVlAHRvbyBsb25nIHdpZGUtY2hhciB2YWx1ZQB1bmRlZmluZWQgb3BlcmF0b3IAaW52YWxpZCBjb2RlIHBvaW50IHZhbHVlAGdyb3VwIG5hbWUgaXMgZW1wdHkAaW52YWxpZCBncm91cCBuYW1lIDwlbj4AaW52YWxpZCBjaGFyIGluIGdyb3VwIG5hbWUgPCVuPgB1bmRlZmluZWQgbmFtZSA8JW4+IHJlZmVyZW5jZQB1bmRlZmluZWQgZ3JvdXAgPCVuPiByZWZlcmVuY2UAbXVsdGlwbGV4IGRlZmluZWQgbmFtZSA8JW4+AG11bHRpcGxleCBkZWZpbml0aW9uIG5hbWUgPCVuPiBjYWxsAG5ldmVyIGVuZGluZyByZWN1cnNpb24AZ3JvdXAgbnVtYmVyIGlzIHRvbyBiaWcgZm9yIGNhcHR1cmUgaGlzdG9yeQBpbnZhbGlkIGNoYXJhY3RlciBwcm9wZXJ0eSBuYW1lIHslbn0AaW52YWxpZCBpZi1lbHNlIHN5bnRheABpbnZhbGlkIGFic2VudCBncm91cCBwYXR0ZXJuAGludmFsaWQgYWJzZW50IGdyb3VwIGdlbmVyYXRvciBwYXR0ZXJuAGludmFsaWQgY2FsbG91dCBwYXR0ZXJuAGludmFsaWQgY2FsbG91dCBuYW1lAHVuZGVmaW5lZCBjYWxsb3V0IG5hbWUAaW52YWxpZCBjYWxsb3V0IGJvZHkAaW52YWxpZCBjYWxsb3V0IHRhZyBuYW1lAGludmFsaWQgY2FsbG91dCBhcmcAbm90IHN1cHBvcnRlZCBlbmNvZGluZyBjb21iaW5hdGlvbgBpbnZhbGlkIGNvbWJpbmF0aW9uIG9mIG9wdGlvbnMAdmVyeSBpbmVmZmljaWVudCBwYXR0ZXJuAGxpYnJhcnkgaXMg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ALYJAAC5CQAAvAkAAMQJAADHCQAAyAkAAMsJAADOCQAA1wkAANcJAADcCQAA3QkAAN8JAADjCQAA5gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdgoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADxCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAAggsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC+CwAAwgsAAMYLAADICwAAygsAAM0LAADQCwAA0AsAANcLAADXCwAA5gsAAPoLAAAADAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAADwMAABEDAAARgwAAEgMAABKDAAATQwAAFUMAABWDAAAWAwAAFoMAABdDAAAXQwAAGAMAABjDAAAZgwAAG8MAAB3DAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwAAMQMAADGDAAAyAwAAMoMAADNDAAA1QwAANYMAADdDAAA3gwAAOAMAADjDAAA5gwAAO8MAADxDAAA8gwAAAANAAAMDQAADg0AABANAAASDQAARA0AAEYNAABIDQAASg0AAE8NAABUDQAAYw0AAGYNAAB/DQAAgQ0AAIMNAACFDQAAlg0AAJoNAACxDQAAsw0AALsNAAC9DQAAvQ0AAMANAADGDQAAyg0AAMoNAADPDQAA1A0AANYNAADWDQAA2A0AAN8NAADmDQAA7w0AAPINAAD0DQAAAQ4A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AKoAAACqAAAAtQAAALUAAAC6AAAAugAAAN8AAAD2AAAA+AAAAP8AAAABAQAAAQEAAAMBAAADAQAABQEAAAUBAAAHAQAABwEAAAkBAAAJAQAACwEAAAsBAAANAQAADQEAAA8BAAAPAQAAEQEAABEBAAATAQAAEwEAABUBAAAVAQAAFwEAABcBAAAZAQAAGQEAABsBAAAbAQAAHQEAAB0BAAAfAQAAHwEAACEBAAAhAQAAIwEAACMBAAAlAQAAJQEAACcBAAAnAQAAKQEAACkBAAArAQAAKwEAAC0BAAAtAQAALwEAAC8BAAAxAQAAMQEAADMBAAAzAQAANQEAADUBAAA3AQAAOAEAADoBAAA6AQAAPAEAADwBAAA+AQAAPgEAAEABAABAAQAAQgEAAEIBAABEAQAARAEAAEYBAABGAQAASAEAAEkBAABLAQAASwEAAE0BAABNAQAATwEAAE8BAABRAQAAUQEAAFMBAABTAQAAVQEAAFUBAABXAQAAVwEAAFkBAABZAQAAWwEAAFsBAABdAQAAXQEAAF8BAABfAQAAYQEAAGEBAABjAQAAYwEAAGUBAABlAQAAZwEAAGcBAABpAQAAaQEAAGsBAABrAQAAbQEAAG0BAABvAQAAbwEAAHEBAABxAQAAcwEAAHMBAAB1AQAAdQEAAHcBAAB3AQAAegEAAHoBAAB8AQAAfAEAAH4BAACAAQAAgwEAAIMBAACFAQAAhQEAAIgBAACIAQAAjAEAAI0BAACSAQAAkgEAAJUBAACVAQAAmQEAAJsBAACeAQAAngEAAKEBAAChAQAAowEAAKMBAAClAQAApQEAAKgBAACoAQAAqgEAAKsBAACtAQAArQEAALABAACwAQAAtAEAALQBAAC2AQAAtgEAALkBAAC6AQAAvQEAAL8BAADGAQAAxgEAAMkBAADJAQAAzAEAAMwBAADOAQAAzgEAANABAADQAQAA0gEAANIBAADUAQAA1AEAANYBAADWAQAA2AEAANgBAADaAQAA2gEAANwBAADdAQAA3wEAAN8BAADhAQAA4QEAAOMBAADjAQAA5QEAAOUBAADnAQAA5wEAAOkBAADpAQAA6wEAAOsBAADtAQAA7QEAAO8BAADwAQAA8wEAAPMBAAD1AQAA9QEAAPkBAAD5AQAA+wEAAPsBAAD9AQAA/QEAAP8BAAD/AQAAAQIAAAECAAADAgAAAwIAAAUCAAAFAgAABwIAAAcCAAAJAgAACQIAAAsCAAALAgAADQIAAA0CAAAPAgAADwIAABECAAARAgAAEwIAABMCAAAVAgAAFQIAABcCAAAXAgAAGQIAABkCAAAbAgAAGwIAAB0CAAAdAgAAHwIAAB8CAAAhAgAAIQIAACMCAAAjAgAAJQIAACUCAAAnAgAAJwIAACkCAAApAgAAKwIAACsCAAAtAgAALQIAAC8CAAAvAgAAMQIAADECAAAzAgAAOQIAADwCAAA8AgAAPwIAAEACAABCAgAAQgIAAEcCAABHAgAASQIAAEkCAABLAgAASwIAAE0CAABNAgAATwIAAJMCAACVAgAAuAIAAMACAADBAgAA4AIAAOQCAABFAwAARQMAAHEDAABxAwAAcwMAAHMDAAB3AwAAdwMAAHoDAAB9AwAAkAMAAJADAACsAwAAzgMAANADAADRAwAA1QMAANcDAADZAwAA2QMAANsDAADbAwAA3QMAAN0DAADfAwAA3wMAAOEDAADhAwAA4wMAAOMDAADlAwAA5QMAAOcDAADnAwAA6QMAAOkDAADrAwAA6wMAAO0DAADtAwAA7wMAAPMDAAD1AwAA9QMAAPgDAAD4AwAA+wMAAPwDAAAwBAAAXwQAAGEEAABhBAAAYwQAAGMEAABlBAAAZQQAAGcEAABnBAAAaQQAAGkEAABrBAAAawQAAG0EAABtBAAAbwQAAG8EAABxBAAAcQQAAHMEAABzBAAAdQQAAHUEAAB3BAAAdwQAAHkEAAB5BAAAewQAAHsEAAB9BAAAfQQAAH8EAAB/BAAAgQQAAIEEAACLBAAAiwQAAI0EAACNBAAAjwQAAI8EAACRBAAAkQQAAJMEAACTBAAAlQQAAJUEAACXBAAAlwQAAJkEAACZBAAAmwQAAJsEAACdBAAAnQQAAJ8EAACfBAAAoQQAAKEEAACjBAAAowQAAKUEAAClBAAApwQAAKcEAACpBAAAqQQAAKsEAACrBAAArQQAAK0EAACvBAAArwQAALEEAACxBAAAswQAALMEAAC1BAAAtQQAALcEAAC3BAAAuQQAALkEAAC7BAAAuwQAAL0EAAC9BAAAvwQAAL8EAADCBAAAwgQAAMQEAADEBAAAxgQAAMYEAADIBAAAyAQAAMoEAADKBAAAzAQAAMwEAADOBAAAzwQAANEEAADRBAAA0wQAANMEAADVBAAA1QQAANcEAADXBAAA2QQAANkEAADbBAAA2wQAAN0EAADdBAAA3wQAAN8EAADhBAAA4QQAAOMEAADjBAAA5QQAAOUEAADnBAAA5wQAAOkEAADpBAAA6wQAAOsEAADtBAAA7QQAAO8EAADvBAAA8QQAAPEEAADzBAAA8wQAAPUEAAD1BAAA9wQAAPcEAAD5BAAA+QQAAPsEAAD7BAAA/QQAAP0EAAD/BAAA/wQAAAEFAAABBQAAAwUAAAMFAAAFBQAABQUAAAcFAAAHBQAACQUAAAkFAAALBQAACwUAAA0FAAANBQAADwUAAA8FAAARBQAAEQUAABMFAAATBQAAFQUAABUFAAAXBQAAFwUAABkFAAAZBQAAGwUAABsFAAAdBQAAHQUAAB8FAAAfBQAAIQUAACEFAAAjBQAAIwUAACUFAAAlBQAAJwUAACcFAAApBQAAKQUAACsFAAArBQAALQUAAC0FAAAvBQAALwUAAGAFAACIBQAA0BAAAPoQAAD9EAAA/xAAAPgTAAD9EwAAgBwAAIgcAAAAHQAAvx0AAAEeAAABHgAAAx4AAAMeAAAFHgAABR4AAAceAAAHHgAACR4AAAkeAAALHgAACx4AAA0eAAANHgAADx4AAA8eAAARHgAAER4AABMeAAATHgAAFR4AABUeAAAXHgAAFx4AABkeAAAZHgAAGx4AABseAAAdHgAAHR4AAB8eAAAfHgAAIR4AACEeAAAjHgAAIx4AACUeAAAlHgAAJx4AACceAAApHgAAKR4AACseAAArHgAALR4AAC0eAAAvHgAALx4AADEeAAAxHgAAMx4AADMeAAA1HgAANR4AADceAAA3HgAAOR4AADkeAAA7HgAAOx4AAD0eAAA9HgAAPx4AAD8eAABBHgAAQR4AAEMeAABDHgAARR4AAEUeAABHHgAARx4AAEkeAABJHgAASx4AAEseAABNHgAATR4AAE8eAABPHgAAUR4AAFEeAABTHgAAUx4AAFUeAABVHgAAVx4AAFceAABZHgAAWR4AAFseAABbHgAAXR4AAF0eAABfHgAAXx4AAGEeAABhHgAAYx4AAGMeAABlHgAAZR4AAGceAABnHgAAaR4AAGkeAABrHgAAax4AAG0eAABtHgAAbx4AAG8eAABxHgAAcR4AAHMeAABzHgAAdR4AAHUeAAB3HgAAdx4AAHkeAAB5HgAAex4AAHseAAB9HgAAfR4AAH8eAAB/HgAAgR4AAIEeAACDHgAAgx4AAIUeAACFHgAAhx4AAIceAACJHgAAiR4AAIseAACLHgAAjR4AAI0eAACPHgAAjx4AAJEeAACRHgAAkx4AAJMeAACVHgAAnR4AAJ8eAACfHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAhx8AAJAfAACXHwAAoB8AAKcfAACwHwAAtB8AALYfAAC3HwAAvh8AAL4fAADCHwAAxB8AAMYfAADHHwAA0B8AANMfAADWHwAA1x8AAOAfAADnHwAA8h8AAPQfAAD2HwAA9x8AAHEgAABxIAAAfyAAAH8gAACQIAAAnCAAAAohAAAKIQAADiEAAA8hAAATIQAAEyEAAC8hAAAvIQAANCEAADQhAAA5IQAAOSEAADwhAAA9IQAARiEAAEkhAABOIQAATiEAAHAhAAB/IQAAhCEAAIQhAADQJAAA6SQAADAsAABfLAAAYSwAAGEsAABlLAAAZiwAAGgsAABoLAAAaiwAAGosAABsLAAAbCwAAHEsAABxLAAAcywAAHQsAAB2LAAAfSwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOQsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAnaYAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAxpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacA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XR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAxB8AAMYfAADTHwAA1h8AANsfAADdHwAA7x8AAPIfAAD0HwAA9h8AAP4fAAAAIAAAJyAAACogAABkIAAAZiAAAHEgAAB0IAAAjiAAAJAgAACcIAAAoCAAAMAgAADQIAAA8CAAAAAhAACLIQAAkCEAACYkAABAJAAASiQAAGAkAABzKwAAdisAAJUrAACXKwAA8ywAAPksAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAHAtAAB/LQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAADgLQAAXS4AAIAuAACZLgAAmy4AAPMuAAAALwAA1S8AAPAvAAD7LwAAADAAAD8wAABBMAAAljAAAJkwAAD/MAAABTEAAC8xAAAxMQAAjjEAAJAxAADjMQAA8DEAAB4yAAAgMgAAjKQAAJCkAADGpAAA0KQAACumAABApgAA96YAAACnAADKpwAA0KcAANGnAADTpwAA06cAANWnAADZpwAA8qcAACyoAAAwqAAAOagAAECoAAB3qAAAgKgAAMWoAADOqAAA2agAAOCoAABTqQAAX6kAAHypAACAqQAAzakAAM+pAADZqQAA3qkAAP6pAAAAqgAANqoAAECqAABNqgAAUKoAAFmqAABcqgAAwqoAANuqAAD2qgAAAasAAAarAAAJqwAADqsAABGrAAAWqwAAIKsAACarAAAoqwAALqsAADCrAABrqwAAcKsAAO2rAADwqwAA+asAAACsAACj1wAAsNcAAMbXAADL1wAA+9cAAADgAABt+gAAcPoAANn6AAAA+wAABvsAABP7AAAX+wAAHfsAADb7AAA4+wAAPPsAAD77AAA++wAAQPsAAEH7AABD+wAARPsAAEb7AADC+wAA0/sAAI/9AACS/QAAx/0AAM/9AADP/QAA8P0AABn+AAAg/gAAUv4AAFT+AABm/gAAaP4AAGv+AABw/gAAdP4AAHb+AAD8/gAA//4AAP/+AAAB/wAAvv8AAML/AADH/wAAyv8AAM//AADS/wAA1/8AANr/AADc/wAA4P8AAOb/AADo/wAA7v8AAPn/AAD9/wAAAAABAAsAAQANAAEAJgABACgAAQA6AAEA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AAIBAAACAQAABAEAAAQBAAAGAQAABgEAAAgBAAAIAQAACgEAAAoBAAAMAQAADAEAAA4BAAAOAQAAEAEAABABAAASAQAAEgEAABQBAAAUAQAAFgEAABYBAAAYAQAAGAEAABoBAAAaAQAAHAEAABwBAAAeAQAAHgEAACABAAAgAQAAIgEAACIBAAAkAQAAJAEAACYBAAAmAQAAKAEAACgBAAAqAQAAKgEAACwBAAAsAQAALgEAAC4BAAAwAQAAMAEAADIBAAAyAQAANAEAADQBAAA2AQAANgEAADkBAAA5AQAAOwEAADsBAAA9AQAAPQEAAD8BAAA/AQAAQQEAAEEBAABDAQAAQwEAAEUBAABFAQAARwEAAEcBAABKAQAASgEAAEwBAABMAQAATgEAAE4BAABQAQAAUAEAAFIBAABSAQAAVAEAAFQBAABWAQAAVgEAAFgBAABYAQAAWgEAAFoBAABcAQAAXAEAAF4BAABeAQAAYAEAAGABAABiAQAAYgEAAGQBAABkAQAAZgEAAGYBAABoAQAAaAEAAGoBAABqAQAAbAEAAGwBAABuAQAAbgEAAHABAABwAQAAcgEAAHIBAAB0AQAAdAEAAHYBAAB2AQAAeAEAAHkBAAB7AQAAewEAAH0BAAB9AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxAEAAMcBAADHAQAAygEAAMoBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPEBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABwAwAAcAMAAHIDAAByAwAAdgMAAHYDAAB/AwAAfwMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAACPAwAAkQMAAKEDAACjAwAAqwMAAM8DAADPAwAA0gMAANQDAADYAwAA2AMAANoDAADaAwAA3AMAANwDAADeAwAA3gMAAOADAADgAwAA4gMAAOIDAADkAwAA5AMAAOYDAADmAwAA6AMAAOgDAADqAwAA6gMAAOwDAADsAwAA7gMAAO4DAAD0AwAA9AMAAPcDAAD3AwAA+QMAAPoDAAD9AwAALwQAAGAEAABgBAAAYgQAAGIEAABkBAAAZAQAAGYEAABmBAAAaAQAAGgEAABqBAAAagQAAGwEAABsBAAAbgQAAG4EAABwBAAAcAQAAHIEAAByBAAAdAQAAHQEAAB2BAAAdgQAAHgEAAB4BAAAegQAAHoEAAB8BAAAfAQAAH4EAAB+BAAAgAQAAIAEAACKBAAAigQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxQQAAMUEAADHBAAAxwQAAMkEAADJBAAAywQAAMsEAADNBAAAzQQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA9gQAAPYEAAD4BAAA+AQAAPoEAAD6BAAA/AQAAPwEAAD+BAAA/gQAAAAFAAAABQAAAgUAAAIFAAAEBQAABAUAAAYFAAAGBQAACAUAAAgFAAAKBQAACgUAAAwFAAAMBQAADgUAAA4FAAAQBQAAEAUAABIFAAASBQAAFAUAABQFAAAWBQAAFgUAABgFAAAYBQAAGgUAABoFAAAcBQAAHAUAAB4FAAAeBQAAIAUAACAFAAAiBQAAIgUAACQFAAAkBQAAJgUAACYFAAAoBQAAKAUAACoFAAAqBQAALAUAACwFAAAuBQAALgUAADEFAABWBQAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAAoBMAAPUTAACQHAAAuhwAAL0cAAC/HAAAAB4AAAAeAAACHgAAAh4AAAQeAAAEHgAABh4AAAYeAAAIHgAACB4AAAoeAAAKHgAADB4AAAweAAAOHgAADh4AABAeAAAQHgAAEh4AABIeAAAUHgAAFB4AABYeAAAWHgAAGB4AABgeAAAaHgAAGh4AABweAAAcHgAAHh4AAB4eAAAgHgAAIB4AACIeAAAiHgAAJB4AACQeAAAmHgAAJh4AACgeAAAoHgAAKh4AACoeAAAsHgAALB4AAC4eAAAuHgAAMB4AADAeAAAyHgAAMh4AADQeAAA0HgAANh4AADYeAAA4HgAAOB4AADoeAAA6HgAAPB4AADweAAA+HgAAPh4AAEAeAABAHgAAQh4AAEIeAABEHgAARB4AAEYeAABGHgAASB4AAEgeAABKHgAASh4AAEweAABMHgAATh4AAE4eAABQHgAAUB4AAFIeAABSHgAAVB4AAFQeAABWHgAAVh4AAFgeAABYHgAAWh4AAFoeAABcHgAAXB4AAF4eAABeHgAAYB4AAGAeAABiHgAAYh4AAGQeAABkHgAAZh4AAGYeAABoHgAAaB4AAGoeAABqHgAAbB4AAGweAABuHgAAbh4AAHAeAABwHgAAch4AAHIeAAB0HgAAdB4AAHYeAAB2HgAAeB4AAHgeAAB6HgAAeh4AAHweAAB8HgAAfh4AAH4eAACAHgAAgB4AAIIeAACCHgAAhB4AAIQeAACGHgAAhh4AAIgeAACIHgAAih4AAIoeAACMHgAAjB4AAI4eAACOHgAAkB4AAJAeAACSHgAAkh4AAJQeAACUHgAAnh4AAJ4eAACgHgAAoB4AAKIeAACiHgAApB4AAKQeAACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AALgfAAC7HwAAyB8AAMsfAADYHwAA2x8AAOgfAADsHwAA+B8AAPsfAAACIQAAAiEAAAchAAAHIQAACyEAAA0hAAAQIQAAEiEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAADAhAAAzIQAAPiEAAD8hAABFIQAARSEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADUAQAZ1AEANNQBAE3UAQBo1AEAgdQBAJzUAQCc1AEAntQBAJ/UAQCi1AEAotQBAKXUAQCm1AEAqdQBAKzUAQCu1AEAtdQBANDUAQDp1AEABNUBAAXVAQAH1QEACtUBAA3VAQAU1QEAFtUBABzVAQA41QEAOdUBADvVAQA+1QEAQNUBAETVAQBG1QEARtUBAErVAQBQ1QEAbNUBAIXVAQCg1QEAudUBANTVAQDt1QEACNYBACHWAQA81gEAVdYBAHDWAQCJ1gEAqNYBAMDWAQDi1gEA+tYBABzXAQA01wEAVtcBAG7XAQCQ1wEAqNcBAMrXAQDK1wEAAOkBACHpAQAw8QEASfEBAFDxAQBp8QEAcPEBAInxAQAAAAAAAwAAADAAAAA5AAAAQQAAAEYAAABhAAAAZgAAAAAAAAD2AgAAMAAAADkAAABBAAAAWgAAAF8AAABfAAAAYQAAAHoAAACqAAAAqgAAALUAAAC1AAAAugAAALoAAADAAAAA1gAAANgAAAD2AAAA+AAAAMECAADGAgAA0QIAAOACAADkAgAA7AIAAOwCAADuAgAA7gIAAAADAAB0AwAAdgMAAHcDAAB6AwAAfQMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAKEDAACjAwAA9QMAAPcDAACBBAAAgwQAAC8FAAAxBQAAVgUAAFkFAABZBQAAYAUAAIgFAACRBQAAvQUAAL8FAAC/BQAAwQUAAMIFAADEBQAAxQUAAMcFAADHBQAA0AUAAOoFAADvBQAA8gUAABAGAAAaBgAAIAYAAGkGAABuBgAA0wYAANUGAADcBgAA3wYAAOgGAADqBgAA/AYAAP8GAAD/BgAAEAcAAEoHAABNBwAAsQcAAMAHAAD1BwAA+gcAAPoHAAD9BwAA/QcAAAAIAAAtCAAAQAgAAFsIAABgCAAAaggAAHAIAACHCAAAiQgAAI4IAACYCAAA4QgAAOMIAABjCQAAZgkAAG8JAABxCQAAgwkAAIUJAACMCQAAjwkAAJAJAACTCQAAqAkAAKoJAACwCQAAsgkAALIJAAC2CQAAuQkAALwJAADECQAAxwkAAMgJAADLCQAAzgkAANcJAADXCQAA3AkAAN0JAADfCQAA4wkAAOYJAADxCQAA/AkAAPwJAAD+CQAA/gkAAAEKAAADCgAABQoAAAoKAAAPCgAAEAoAABMKAAAoCgAAKgoAADAKAAAyCgAAMwoAADUKAAA2CgAAOAoAADkKAAA8CgAAPAoAAD4KAABCCgAARwoAAEgKAABLCgAATQoAAFEKAABRCgAAWQoAAFwKAABeCgAAXgoAAGYKAAB1CgAAgQoAAIMKAACFCgAAjQoAAI8KAACRCgAAkwoAAKgKAACqCgAAsAoAALIKAACzCgAAtQoAALkKAAC8CgAAxQoAAMcKAADJCgAAywoAAM0KAADQCgAA0AoAAOAKAADjCgAA5goAAO8KAAD5CgAA/woAAAELAAADCwAABQsAAAwLAAAPCwAAEAsAABMLAAAoCwAAKgsAADALAAAyCwAAMwsAADULAAA5CwAAPAsAAEQLAABHCwAASAsAAEsLAABNCwAAVQsAAFcLAABcCwAAXQsAAF8LAABjCwAAZgsAAG8LAABxCwAAcQsAAIILAACDCwAAhQsAAIoLAACOCwAAkAsAAJILAACVCwAAmQsAAJoLAACcCwAAnAsAAJ4LAACfCwAAowsAAKQLAACoCwAAqgsAAK4LAAC5CwAAvgsAAMILAADGCwAAyAsAAMoLAADNCwAA0AsAANALAADXCwAA1wsAAOYLAADvCwAAAAwAAAwMAAAODAAAEAwAABIMAAAoDAAAKgwAADkMAAA8DAAARAwAAEYMAABIDAAASgwAAE0MAABVDAAAVgwAAFgMAABaDAAAXQwAAF0MAABgDAAAYwwAAGYMAABvDAAAgAwAAIMMAACFDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwAAMQMAADGDAAAyAwAAMoMAADNDAAA1QwAANYMAADdDAAA3gwAAOAMAADjDAAA5gwAAO8MAADxDAAA8gwAAAANAAAMDQAADg0AABANAAASDQAARA0AAEYNAABIDQAASg0AAE4NAABUDQAAVw0AAF8NAABjDQAAZg0AAG8NAAB6DQAAfw0AAIENAACDDQAAhQ0AAJYNAACaDQAAsQ0AALMNAAC7DQAAvQ0AAL0NAADADQAAxg0AAMoNAADKDQAAzw0AANQNAADWDQAA1g0AANgNAADfDQAA5g0AAO8NAADyDQAA8w0AAAEOAAA6DgAAQA4AAE4OAABQDgAAWQ4AAIEOAACCDgAAhA4AAIQOAACGDgAAig4AAIwOAACjDgAApQ4AAKUOAACnDgAAvQ4AAMAOAADEDgAAxg4AAMYOAADIDgAAzQ4AANAOAADZDgAA3A4AAN8OAAAADwAAAA8AABgPAAAZDwAAIA8AACkPAAA1DwAANQ8AADcPAAA3DwAAOQ8AADkPAAA+DwAARw8AAEkPAABsDwAAcQ8AAIQPAACGDwAAlw8AAJkPAAC8DwAAxg8AAMYPAAAAEAAASRAAAFAQAACdEAAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAA0BAAAPoQAAD8EAAASBIAAEoSAABNEgAAUBIAAFYSAABYEgAAWBIAAFoSAABdEgAAYBIAAIgSAACKEgAAjRIAAJASAACwEgAAshIAALUSAAC4EgAAvhIAAMASAADAEgAAwhIAAMUSAADIEgAA1hIAANgSAAAQEwAAEhMAABUTAAAYEwAAWhMAAF0TAABfEwAAgBMAAI8TAACgEwAA9RMAAPgTAAD9EwAAARQAAGwWAABvFgAAfxYAAIEWAACaFgAAoBYAAOoWAADuFgAA+BYAAAAXAAAVFwAAHxcAADQXAABAFwAAUxcAAGAXAABsFwAAbhcAAHAXAAByFwAAcxcAAIAXAADTFwAA1xcAANcXAADcFwAA3RcAAOAXAADpFwAACxgAAA0YAAAPGAAAGRgAACAYAAB4GAAAgBgAAKoYAACwGAAA9RgAAAAZAAAeGQAAIBkAACsZAAAwGQAAOxkAAEYZAABtGQAAcBkAAHQZAACAGQAAqxkAALAZAADJGQAA0BkAANkZAAAAGgAAGxoAACAaAABeGgAAYBoAAHwaAAB/GgAAiRoAAJAaAACZGgAApxoAAKcaAACwGgAAzhoAAAAbAABMGwAAUBsAAFkbAABrGwAAcxsAAIAbAADzGwAAABwAADccAABAHAAASRwAAE0cAAB9HAAAgBwAAIgcAACQHAAAuhwAAL0cAAC/HAAA0BwAANIcAADUHAAA+hwAAAAdAAAVHwAAGB8AAB0fAAAgHwAARR8AAEgfAABNHwAAUB8AAFcfAABZHwAAWR8AAFsfAABbHwAAXR8AAF0fAABfHwAAfR8AAIAfAAC0HwAAth8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMwfAADQHwAA0x8AANYfAADbHwAA4B8AAOwfAADyHwAA9B8AAPYfAAD8HwAAPyAAAEAgAABUIAAAVCAAAHEgAABxIAAAfyAAAH8gAACQIAAAnCAAANAgAADwIAAAAiEAAAIhAAAHIQAAByEAAAohAAATIQAAFSEAABUhAAAZIQAAHSEAACQhAAAkIQAAJiEAACYhAAAoIQAAKCEAACohAAAtIQAALyEAADkhAAA8IQAAPyEAAEUhAABJIQAATiEAAE4hAABgIQAAiCEAALYkAADpJAAAACwAAOQsAADrLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AADAtAABnLQAAby0AAG8tAAB/LQAAli0AAKAtAACmLQAAqC0AAK4tAACwLQAAti0AALgtAAC+LQAAwC0AAMYtAADILQAAzi0AANAtAADWLQAA2C0AAN4tAADgLQAA/y0AAC8uAAAvLgAABTAAAAcwAAAhMAAALzAAADEwAAA1MAAAODAAADwwAABBMAAAljAAAJkwAACaMAAAnTAAAJ8wAAChMAAA+jAAAPwwAAD/MAAABTEAAC8xAAAxMQAAjjEAAKAxAAC/MQAA8DEAAP8xAAAANAAAv00AAABOAACMpAAA0KQAAP2kAAAApQAADKYAABCmAAArpgAAQKYAAHKmAAB0pgAAfaYAAH+mAADxpgAAF6cAAB+nAAAipwAAiKcAAIunAADKpwAA0KcA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AIQDAACKAwAAjAMAAIwDAACOAwAAoQMAAKMDAAAvBQAAMQUAAFYFAABZBQAAigUAAI0FAACPBQAAkQUAAMcFAADQBQAA6gUAAO8FAAD0BQAAAAYAAA0HAAAPBwAASgcAAE0HAACxBwAAwAcAAPoHAAD9BwAALQgAADAIAAA+CAAAQAgAAFsIAABeCAAAXggAAGAIAABqCAAAcAgAAI4IAACQCAAAkQgAAJgIAACDCQAAhQkAAIwJAACPCQAAkAkAAJMJAACoCQAAqgkAALAJAACyCQAAsgkAALYJAAC5CQAAvAkAAMQJAADHCQAAyAkAAMsJAADOCQAA1wkAANcJAADcCQAA3QkAAN8JAADjCQAA5gkAAP4JAAABCgAAAwoAAAUKAAAKCgAADwoAABAKAAATCgAAKAoAACoKAAAwCgAAMgoAADMKAAA1CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdgoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADxCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAAB3CwAAggsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC+CwAAwgsAAMYLAADICwAAygsAAM0LAADQCwAA0AsAANcLAADXCwAA5gsAAPoLAAAADAAADAwAAA4MAAAQDAAAEgwAACgMAAAqDAAAOQwAADwMAABEDAAARgwAAEgMAABKDAAATQwAAFUMAABWDAAAWAwAAFoMAABdDAAAXQwAAGAMAABjDAAAZgwAAG8MAAB3DAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvAwA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AMUJAADGCQAAyQkAAMoJAADPCQAA1gkAANgJAADbCQAA3gkAAN4JAADkCQAA5QkAAP8JAAAACgAABAoAAAQKAAALCgAADgoAABEKAAASCgAAKQoAACkKAAAxCgAAMQoAADQKAAA0CgAANwoAADcKAAA6CgAAOwoAAD0KAAA9CgAAQwoAAEYKAABJCgAASgoAAE4KAABQCgAAUgoAAFgKAABdCgAAXQoAAF8KAABlCgAAdwoAAIAKAACECgAAhAoAAI4KAACOCgAAkgoAAJIKAACpCgAAqQoAALEKAACxCgAAtAoAALQKAAC6CgAAuwoAAMYKAADGCgAAygoAAMoKAADOCgAAzwoAANEKAADfCgAA5AoAAOUKAADyCgAA+AoAAAALAAAACwAABAsAAAQLAAANCwAADgsAABELAAASCwAAKQsAACkLAAAxCwAAMQsAADQLAAA0CwAAOgsAADsLAABFCwAARgsAAEkLAABKCwAATgsAAFQLAABYCwAAWwsAAF4LAABeCwAAZAsAAGULAAB4CwAAgQsAAIQLAACECwAAiwsAAI0LAACRCwAAkQsAAJYLAACYCwAAmwsAAJsLAACdCwAAnQsAAKALAACiCwAApQsAAKcLAACrCwAArQsAALoLAAC9CwAAwwsAAMULAADJCwAAyQsAAM4LAADPCwAA0QsAANYLAADYCwAA5QsAAPsLAAD/CwAADQwAAA0MAAARDAAAEQwAACkMAAApDAAAOgwAADsMAABFDAAARQwAAEkMAABJDAAATgwAAFQMAABXDAAAVwwAAFsMAABcDAAAXgwAAF8MAABkDAAAZQwAAHAMAAB2DAAAjQwAAI0MAACRDAAAkQwAAKkMAACpDAAAtAwAALQMAAC6DAAAuwwAAMUMAADFDAAAyQwAAMkMAADODAAA1AwAANcMAADcDAAA3wwAAN8MAADkDAAA5QwAAPAMAADwDAAA8wwAAP8MAAANDQAADQ0AABENAAARDQAARQ0AAEUNAABJDQAASQ0AAFANAABTDQAAZA0AAGUNAACADQAAgA0AAIQNAACEDQAAlw0AAJkNAACyDQAAsg0AALwNAAC8DQAAvg0AAL8NAADHDQAAyQ0AAMsNAADODQAA1Q0AANUNAADXDQAA1w0AAOANAADlDQAA8A0AAPENAAD1DQAAAA4AADsOAAA+DgAAXA4A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AQAAcAEAAHIBAAByAQAAdAEAAHQBAAB2AQAAdgEAAHgBAAB5AQAAewEAAHsBAAB9AQAAfQEAAH8BAAB/AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxQEAAMcBAADIAQAAygEAAMsBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPIBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABFAwAARQMAAHADAABwAwAAcgMAAHIDAAB2AwAAdgMAAH8DAAB/AwAAhgMAAIYDAACIAwAAigMAAIwDAACMAwAAjgMAAI8DAACRAwAAoQMAAKMDAACrAwAAwgMAAMIDAADPAwAA0QMAANUDAADWAwAA2AMAANgDAADaAwAA2gMAANwDAADcAwAA3gMAAN4DAADgAwAA4AMAAOIDAADiAwAA5AMAAOQDAADmAwAA5gMAAOgDAADoAwAA6gMAAOoDAADsAwAA7AMAAO4DAADuAwAA8AMAAPEDAAD0AwAA9QMAAPcDAAD3AwAA+QMAAPoDAAD9AwAALwQAAGAEAABgBAAAYgQAAGIEAABkBAAAZAQAAGYEAABmBAAAaAQAAGgEAABqBAAAagQAAGwEAABsBAAAbgQAAG4EAABwBAAAcAQAAHIEAAByBAAAdAQAAHQEAAB2BAAAdgQAAHgEAAB4BAAAegQAAHoEAAB8BAAAfAQAAH4EAAB+BAAAgAQAAIAEAACKBAAAigQAAIwEAACMBAAAjgQAAI4EAACQBAAAkAQAAJIEAACSBAAAlAQAAJQEAACWBAAAlgQAAJgEAACYBAAAmgQAAJoEAACcBAAAnAQAAJ4EAACeBAAAoAQAAKAEAACiBAAAogQAAKQEAACkBAAApgQAAKYEAACoBAAAqAQAAKoEAACqBAAArAQAAKwEAACuBAAArgQAALAEAACwBAAAsgQAALIEAAC0BAAAtAQAALYEAAC2BAAAuAQAALgEAAC6BAAAugQAALwEAAC8BAAAvgQAAL4EAADABAAAwQQAAMMEAADDBAAAxQQAAMUEAADHBAAAxwQAAMkEAADJBAAAywQAAMsEAADNBAAAzQQAANAEAADQBAAA0gQAANIEAADUBAAA1AQAANYEAADWBAAA2AQAANgEAADaBAAA2gQAANwEAADcBAAA3gQAAN4EAADgBAAA4AQAAOIEAADiBAAA5AQAAOQEAADmBAAA5gQAAOgEAADoBAAA6gQAAOoEAADsBAAA7AQAAO4EAADuBAAA8AQAAPAEAADyBAAA8gQAAPQEAAD0BAAA9gQAAPYEAAD4BAAA+AQAAPoEAAD6BAAA/AQAAPwEAAD+BAAA/gQAAAAFAAAABQAAAgUAAAIFAAAEBQAABAUAAAYFAAAGBQAACAUAAAgFAAAKBQAACgUAAAwFAAAMBQAADgUAAA4FAAAQBQAAEAUAABIFAAASBQAAFAUAABQFAAAWBQAAFgUAABgFAAAYBQAAGgUAABoFAAAcBQAAHAUAAB4FAAAeBQAAIAUAACAFAAAiBQAAIgUAACQFAAAkBQAAJgUAACYFAAAoBQAAKAUAACoFAAAqBQAALAUAACwFAAAuBQAALgUAADEFAABWBQAAhwUAAIcFAACgEAAAxRAAAMcQAADHEAAAzRAAAM0QAAD4EwAA/RMAAIAcAACIHAAAkBwAALocAAC9HAAAvxwAAAAeAAAAHgAAAh4AAAIeAAAEHgAABB4AAAYeAAAGHgAACB4AAAgeAAAKHgAACh4AAAweAAAMHgAADh4AAA4eAAAQHgAAEB4AABIeAAASHgAAFB4AABQeAAAWHgAAFh4AABgeAAAYHgAAGh4AABoeAAAcHgAAHB4AAB4eAAAeHgAAIB4AACAeAAAiHgAAIh4AACQeAAAkHgAAJh4AACYeAAAoHgAAKB4AACoeAAAqHgAALB4AACweAAAuHgAALh4AADAeAAAwHgAAMh4AADIeAAA0HgAANB4AADYeAAA2HgAAOB4AADgeAAA6HgAAOh4AADweAAA8HgAAPh4AAD4eAABAHgAAQB4AAEIeAABCHgAARB4AAEQeAABGHgAARh4AAEgeAABIHgAASh4AAEoeAABMHgAATB4AAE4eAABOHgAAUB4AAFAeAABSHgAAUh4AAFQeAABUHgAAVh4AAFYeAABYHgAAWB4AAFoeAABaHgAAXB4AAFweAABeHgAAXh4AAGAeAABgHgAAYh4AAGIeAABkHgAAZB4AAGYeAABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJoeAACbHgAAnh4AAJ4eAACgHgAAoB4AAKIeAACiHgAApB4AAKQeAACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AAIAfAACvHwAAsh8AALQfAAC3HwAAvB8AAMIfAADEHwAAxx8AAMwfAADYHwAA2x8AAOgfAADsHwAA8h8AAPQfAAD3HwAA/B8AACYhAAAmIQAAKiEAACshAAAyIQAAMiEAAGAhAABvIQAAgyEAAIMhAAC2JAAAzyQAAAAsAAAvLAAAYCwAAGAsAABiLAAAZCwAAGcsAABnLAAAaSwAAGksAABrLAAAaywAAG0sAABwLAAAciwAAHIsAAB1LAAAdSwAAH4sAACALAAAgiwAAIIsAACELAAAhCwAAIYsAACGLAAAiCwAAIgsAACKLAAAiiwAAIwsAACMLAAAjiwAAI4sAACQLAAAkCwAAJIsAACSLAAAlCwAAJQsAACWLAAAliwAAJgsAACYLAAAmiwAAJosAACcLAAAnCwAAJ4sAACeLAAAoCwAAKAsAACiLAAAoiwAAKQsAACkLAAApiwAAKYsAACoLAAAqCwAAKosAACqLAAArCwAAKwsAACuLAAAriwAALAsAACwLAAAsiwAALIsAAC0LAAAtCwAALYsAAC2LAAAuCwAALgsAAC6LAAAuiwAALwsAAC8LAAAviwAAL4sAADALAAAwCwAAMIsAADCLAAAxCwAAMQsAADGLAAAxiwAAMgsAADILAAAyiwAAMosAADMLAAAzCwAAM4sAADOLAAA0CwAANAsAADSLAAA0iwAANQsAADULAAA1iwAANYsAADYLAAA2CwAANosAADaLAAA3CwAANwsAADeLAAA3iwAAOAsAADgLAAA4iwAAOIsAADrLAAA6ywAAO0sAADtLAAA8iwAAPIsAABApgAAQKYAAEKmAABCpgAARKYAAESmAABGpgAARqYAAEimAABIpgAASqYAAEqmAABMpgAATKYAAE6mAABOpgAAUKYAAFCmAABSpgAAUqYAAFSmAABUpgAAVqYAAFamAABYpgAAWKYAAFqmAABapgAAXKYAAFymAABepgAAXqYAAGCmAABgpgAAYqYAAGKmAABkpgAAZKYAAGamAABmpgAAaKYAAGimAABqpgAAaqYAAGymAABspgAAgKYAAICmAACCpgAAgqYAAISmAACEpgAAhqYAAIamAACIpgAAiKYAAIqmAACKpgAAjKYAAIymAACOpgAAjqYAAJCmAACQpgAAkqYAAJKmAACUpgAAlKYAAJamAACWpgAAmKYAAJimAACapgAAmqYAACKnAAAipwAAJKcAACSnAAAmpwAAJqcAACinAAAopwAAKqcAACqnAAAspwAALKcAAC6nAAAupwAAMqcAADKnAAA0pwAANKcAADanAAA2pwAAOKcAADinAAA6pwAAOqcAADynAAA8pwAAPqcAAD6nAABApwAAQKcAAEKnAABCpwAARKcAAESnAABGpwAARqcAAEinAABIpwAASqcAAEqnAABMpwAATKcAAE6nAABOpwAAUKcAAFCnAABSpwAAUqcAAFSnAABUpwAAVqcAAFanAABYpwAAWKcAAFqnAABapwAAXKcAAFynAABepwAAXqcAAGCnAABgpwAAYqcAAGKnAABkpwAAZKcAAGanAABmpwAAaKcAAGinAABqpwAAaqcAAGynAABspwAAbqcAAG6nAAB5pwAAeacAAHunAAB7pwAAfacAAH6nAACApwAAgKcAAIKnAACCpwAAhKcAAISnAACGpwAAhqcAAIunAACLpwAAjacAAI2nAACQpwAAkKcAAJKnAACSpwAAlqcAAJanAACYpwAAmKcAAJqnAACapwAAnKcAAJynAACepwAAnqcAAKCnAACgpwAAoqcAAKKnAACkpwAApKcAAKanAACmpwAAqKcAAKinAACqpwAArqcAALCnAAC0pwAAtqcAALanAAC4pwAAuKcAALqnAAC6pwAAvKcAALynAAC+pwAAvqcAAMCnAADApwAAwqcAAMKnAADEpwAAx6cAAMmnAADJpwAA0KcAANCnAADWpwAA1qcAANinAADYpwAA9acAAPWnAABwqwAAv6sAAAD7AAAG+wAAE/sAABf7AAAh/wAAOv8AAAAEAQAnBAEAsAQBANMEAQBwBQEAegUBAHwFAQCKBQEAjAUBAJIFAQCUBQEAlQUBAIAMAQCyDAEAoBgBAL8YAQBAbgEAX24BAADpAQAh6QEAQdCOBgvDVYMAAABBAAAAWgAAAGEAAAB6AAAAtQAAALUAAADAAAAA1gAAANgAAAD2AAAA+AAAADcBAAA5AQAAjAEAAI4BAACaAQAAnAEAAKkBAACsAQAAuQEAALwBAAC9AQAAvwEAAL8BAADEAQAAIAIAACICAAAzAgAAOgIAAFQCAABWAgAAVwIAAFkCAABZAgAAWwIAAFwCAABgAgAAYQIAAGMCAABjAgAAZQIAAGYCAABoAgAAbAIAAG8CAABvAgAAcQIAAHICAAB1AgAAdQIAAH0CAAB9AgAAgAIAAIACAACCAgAAgwIAAIcCAACMAgAAkgIAAJICAACdAgAAngIAAEUDAABFAwAAcAMAAHMDAAB2AwAAdwMAAHsDAAB9AwAAfwMAAH8DAACGAwAAhgMAAIgDAACKAwAAjAMAAIwDAACOAwAAoQMAAKMDAADRAwAA1QMAAPUDAAD3AwAA+wMAAP0DAACBBAAAigQAAC8FAAAxBQAAVgUAAGEFAACHBQAAoBAAAMUQAADHEAAAxxAAAM0QAADNEAAA0BAAAPoQAAD9EAAA/xAAAKATAAD1EwAA+BMAAP0TAACAHAAAiBwAAJAcAAC6HAAAvRwAAL8cAAB5HQAAeR0AAH0dAAB9HQAAjh0AAI4dAAAAHgAAmx4AAJ4eAACeHgAAoB4AABUfAAAYHwAAHR8AACAfAABFHwAASB8AAE0fAABQHwAAVx8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAAB9HwAAgB8AALQfAAC2HwAAvB8AAL4fAAC+HwAAwh8AAMQfAADGHwAAzB8AANAfAADTHwAA1h8AANsfAADgHwAA7B8AAPIfAAD0HwAA9h8AAPwfAAAmIQAAJiEAACohAAArIQAAMiEAADIhAABOIQAATiEAAGAhAAB/IQAAgyEAAIQhAAC2JAAA6SQAAAAsAABwLAAAciwAAHMsAAB1LAAAdiwAAH4sAADjLAAA6ywAAO4sAADyLAAA8ywAAAAtAAAlLQAAJy0AACctAAAtLQAALS0AAECmAABtpgAAgKYAAJumAAAipwAAL6cAADKnAABvpwAAeacAAIenAACLpwAAjacAAJCnAACUpwAAlqcAAK6nAACwpwAAyqcAANCnAADRpwAA1qcAANmnAAD1pwAA9qcAAFOrAABTqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAIf8AADr/AABB/wAAWv8AAAAEAQBPBAEAsAQBANMEAQDYBAEA+wQBAHAFAQB6BQEAfAUBAIoFAQCMBQEAkgUBAJQFAQCVBQEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQCADAEAsgwBAMAMAQDyDAEAoBgBAN8YAQBAbgEAf24BAADpAQBD6QEAAAAAAGECAABBAAAAWgAAAMAAAADWAAAA2AAAAN4AAAAAAQAAAAEAAAIBAAACAQAABAEAAAQBAAAGAQAABgEAAAgBAAAIAQAACgEAAAoBAAAMAQAADAEAAA4BAAAOAQAAEAEAABABAAASAQAAEgEAABQBAAAUAQAAFgEAABYBAAAYAQAAGAEAABoBAAAaAQAAHAEAABwBAAAeAQAAHgEAACABAAAgAQAAIgEAACIBAAAkAQAAJAEAACYBAAAmAQAAKAEAACgBAAAqAQAAKgEAACwBAAAsAQAALgEAAC4BAAAwAQAAMAEAADIBAAAyAQAANAEAADQBAAA2AQAANgEAADkBAAA5AQAAOwEAADsBAAA9AQAAPQEAAD8BAAA/AQAAQQEAAEEBAABDAQAAQwEAAEUBAABFAQAARwEAAEcBAABKAQAASgEAAEwBAABMAQAATgEAAE4BAABQAQAAUAEAAFIBAABSAQAAVAEAAFQBAABWAQAAVgEAAFgBAABYAQAAWgEAAFoBAABcAQAAXAEAAF4BAABeAQAAYAEAAGABAABiAQAAYgEAAGQBAABkAQAAZgEAAGYBAABoAQAAaAEAAGoBAABqAQAAbAEAAGwBAABuAQAAbgEAAHABAABwAQAAcgEAAHIBAAB0AQAAdAEAAHYBAAB2AQAAeAEAAHkBAAB7AQAAewEAAH0BAAB9AQAAgQEAAIIBAACEAQAAhAEAAIYBAACHAQAAiQEAAIsBAACOAQAAkQEAAJMBAACUAQAAlgEAAJgBAACcAQAAnQEAAJ8BAACgAQAAogEAAKIBAACkAQAApAEAAKYBAACnAQAAqQEAAKkBAACsAQAArAEAAK4BAACvAQAAsQEAALMBAAC1AQAAtQEAALcBAAC4AQAAvAEAALwBAADEAQAAxQEAAMcBAADIAQAAygEAAMsBAADNAQAAzQEAAM8BAADPAQAA0QEAANEBAADTAQAA0wEAANUBAADVAQAA1wEAANcBAADZAQAA2QEAANsBAADbAQAA3gEAAN4BAADgAQAA4AEAAOIBAADiAQAA5AEAAOQBAADmAQAA5gEAAOgBAADoAQAA6gEAAOoBAADsAQAA7AEAAO4BAADuAQAA8QEAAPIBAAD0AQAA9AEAAPYBAAD4AQAA+gEAAPoBAAD8AQAA/AEAAP4BAAD+AQAAAAIAAAACAAACAgAAAgIAAAQCAAAEAgAABgIAAAYCAAAIAgAACAIAAAoCAAAKAgAADAIAAAwCAAAOAgAADgIAABACAAAQAgAAEgIAABICAAAUAgAAFAIAABYCAAAWAgAAGAIAABgCAAAaAgAAGgIAABwCAAAcAgAAHgIAAB4CAAAgAgAAIAIAACICAAAiAgAAJAIAACQCAAAmAgAAJgIAACgCAAAoAgAAKgIAACoCAAAsAgAALAIAAC4CAAAuAgAAMAIAADACAAAyAgAAMgIAADoCAAA7AgAAPQIAAD4CAABBAgAAQQIAAEMCAABGAgAASAIAAEgCAABKAgAASgIAAEwCAABMAgAATgIAAE4CAABwAwAAcAMAAHIDAAByAwAAdgMAAHYDAAB/AwAAfwMAAIYDAACGAwAAiAMAAIoDAACMAwAAjAMAAI4DAACPAwAAkQMAAKEDAACjAwAAqwMAAM8DAADPAwAA2AMAANgDAADaAwAA2gMAANwDAADcAwAA3gMAAN4DAADgAwAA4AMAAOIDAADiAwAA5AMAAOQDAADmAwAA5gMAAOgDAADoAwAA6gMAAOoDAADsAwAA7AMAAO4DAADuAwAA9AMAAPQDAAD3AwAA9wMAAPkDAAD6AwAA/QMAAC8EAABgBAAAYAQAAGIEAABiBAAAZAQAAGQEAABmBAAAZgQAAGgEAABoBAAAagQAAGoEAABsBAAAbAQAAG4EAABuBAAAcAQAAHAEAAByBAAAcgQAAHQEAAB0BAAAdgQAAHYEAAB4BAAAeAQAAHoEAAB6BAAAfAQAAHwEAAB+BAAAfgQAAIAEAACABAAAigQAAIoEAACMBAAAjAQAAI4EAACOBAAAkAQAAJAEAACSBAAAkgQAAJQEAACUBAAAlgQAAJYEAACYBAAAmAQAAJoEAACaBAAAnAQAAJwEAACeBAAAngQAAKAEAACgBAAAogQAAKIEAACkBAAApAQAAKYEAACmBAAAqAQAAKgEAACqBAAAqgQAAKwEAACsBAAArgQAAK4EAACwBAAAsAQAALIEAACyBAAAtAQAALQEAAC2BAAAtgQAALgEAAC4BAAAugQAALoEAAC8BAAAvAQAAL4EAAC+BAAAwAQAAMEEAADDBAAAwwQAAMUEAADFBAAAxwQAAMcEAADJBAAAyQQAAMsEAADLBAAAzQQAAM0EAADQBAAA0AQAANIEAADSBAAA1AQAANQEAADWBAAA1gQAANgEAADYBAAA2gQAANoEAADcBAAA3AQAAN4EAADeBAAA4AQAAOAEAADiBAAA4gQAAOQEAADkBAAA5gQAAOYEAADoBAAA6AQAAOoEAADqBAAA7AQAAOwEAADuBAAA7gQAAPAEAADwBAAA8gQAAPIEAAD0BAAA9AQAAPYEAAD2BAAA+AQAAPgEAAD6BAAA+gQAAPwEAAD8BAAA/gQAAP4EAAAABQAAAAUAAAIFAAACBQAABAUAAAQFAAAGBQAABgUAAAgFAAAIBQAACgUAAAoFAAAMBQAADAUAAA4FAAAOBQAAEAUAABAFAAASBQAAEgUAABQFAAAUBQAAFgUAABYFAAAYBQAAGAUAABoFAAAaBQAAHAUAABwFAAAeBQAAHgUAACAFAAAgBQAAIgUAACIFAAAkBQAAJAUAACYFAAAmBQAAKAUAACgFAAAqBQAAKgUAACwFAAAsBQAALgUAAC4FAAAxBQAAVgUAAKAQAADFEAAAxxAAAMcQAADNEAAAzRAAAKATAAD1EwAAkBwAALocAAC9HAAAvxwAAAAeAAAAHgAAAh4AAAIeAAAEHgAABB4AAAYeAAAGHgAACB4AAAgeAAAKHgAACh4AAAweAAAMHgAADh4AAA4eAAAQHgAAEB4AABIeAAASHgAAFB4AABQeAAAWHgAAFh4AABgeAAAYHgAAGh4AABoeAAAcHgAAHB4AAB4eAAAeHgAAIB4AACAeAAAiHgAAIh4AACQeAAAkHgAAJh4AACYeAAAoHgAAKB4AACoeAAAqHgAALB4AACweAAAuHgAALh4AADAeAAAwHgAAMh4AADIeAAA0HgAANB4AADYeAAA2HgAAOB4AADgeAAA6HgAAOh4AADweAAA8HgAAPh4AAD4eAABAHgAAQB4AAEIeAABCHgAARB4AAEQeAABGHgAARh4AAEgeAABIHgAASh4AAEoeAABMHgAATB4AAE4eAABOHgAAUB4AAFAeAABSHgAAUh4AAFQeAABUHgAAVh4AAFYeAABYHgAAWB4AAFoeAABaHgAAXB4AAFweAABeHgAAXh4AAGAeAABgHgAAYh4AAGIeAABkHgAAZB4AAGYeAABmHgAAaB4AAGgeAABqHgAAah4AAGweAABsHgAAbh4AAG4eAABwHgAAcB4AAHIeAAByHgAAdB4AAHQeAAB2HgAAdh4AAHgeAAB4HgAAeh4AAHoeAAB8HgAAfB4AAH4eAAB+HgAAgB4AAIAeAACCHgAAgh4AAIQeAACEHgAAhh4AAIYeAACIHgAAiB4AAIoeAACKHgAAjB4AAIweAACOHgAAjh4AAJAeAACQHgAAkh4AAJIeAACUHgAAlB4AAJ4eAACeHgAAoB4AAKAeAACiHgAAoh4AAKQeAACkHgAAph4AAKYeAACoHgAAqB4AAKoeAACqHgAArB4AAKweAACuHgAArh4AALAeAACwHgAAsh4AALIeAAC0HgAAtB4AALYeAAC2HgAAuB4AALgeAAC6HgAAuh4AALweAAC8HgAAvh4AAL4eAADAHgAAwB4AAMIeAADCHgAAxB4AAMQeAADGHgAAxh4AAMgeAADIHgAAyh4AAMoeAADMHgAAzB4AAM4eAADOHgAA0B4AANAeAADSHgAA0h4AANQeAADUHgAA1h4AANYeAADYHgAA2B4AANoeAADaHgAA3B4AANweAADeHgAA3h4AAOAeAADgHgAA4h4AAOIeAADkHgAA5B4AAOYeAADmHgAA6B4AAOgeAADqHgAA6h4AAOweAADsHgAA7h4AAO4eAADwHgAA8B4AAPIeAADyHgAA9B4AAPQeAAD2HgAA9h4AAPgeAAD4HgAA+h4AAPoeAAD8HgAA/B4AAP4eAAD+HgAACB8AAA8fAAAYHwAAHR8AACgfAAAvHwAAOB8AAD8fAABIHwAATR8AAFkfAABZHwAAWx8AAFsfAABdHwAAXR8AAF8fAABfHwAAaB8AAG8fAACIHwAAjx8AAJgfAACfHwAAqB8AAK8fAAC4HwAAvB8AAMgfAADMHwAA2B8AANsfAADoHwAA7B8AAPgfAAD8HwAAJiEAACYhAAAqIQAAKyEAADIhAAAyIQAAYCEAAG8hAACDIQAAgyEAALYkAADPJAAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEan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AAC/HgAAwR4AAMEeAADDHgAAwx4AAMUeAADFHgAAxx4AAMceAADJHgAAyR4AAMseAADLHgAAzR4AAM0eAADPHgAAzx4AANEeAADRHgAA0x4AANMeAADVHgAA1R4AANceAADXHgAA2R4AANkeAADbHgAA2x4AAN0eAADdHgAA3x4AAN8eAADhHgAA4R4AAOMeAADjHgAA5R4AAOUeAADnHgAA5x4AAOkeAADpHgAA6x4AAOseAADtHgAA7R4AAO8eAADvHgAA8R4AAPEeAADzHgAA8x4AAPUeAAD1HgAA9x4AAPceAAD5HgAA+R4AAPseAAD7HgAA/R4AAP0eAAD/HgAABx8AABAfAAAVHwAAIB8AACcfAAAwHwAANx8AAEAfAABFHwAAUB8AAFcfAABgHwAAZx8AAHAfAAB9HwAAgB8AAIcfAACQHwAAlx8AAKAfAACnHwAAsB8AALQfAAC2HwAAtx8AAL4fAAC+HwAAwh8AAMQfAADGHwAAxx8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAABOIQAATiEAAHAhAAB/IQAAhCEAAIQhAADQJAAA6SQAADAsAABfLAAAYSwAAGEsAABlLAAAZiwAAGgsAABoLAAAaiwAAGosAABsLAAAbCwAAHMsAABzLAAAdiwAAHYsAACBLAAAgSwAAIMsAACDLAAAhSwAAIUsAACHLAAAhywAAIksAACJLAAAiywAAIssAACNLAAAjSwAAI8sAACPLAAAkSwAAJEsAACTLAAAkywAAJUsAACVLAAAlywAAJcsAACZLAAAmSwAAJssAACbLAAAnSwAAJ0sAACfLAAAnywAAKEsAAChLAAAoywAAKMsAAClLAAApSwAAKcsAACnLAAAqSwAAKksAACrLAAAqywAAK0sAACtLAAArywAAK8sAACxLAAAsSwAALMsAACzLAAAtSwAALUsAAC3LAAAtywAALksAAC5LAAAuywAALssAAC9LAAAvSwAAL8sAAC/LAAAwSwAAMEsAADDLAAAwywAAMUsAADFLAAAxywAAMcsAADJLAAAySwAAMssAADLLAAAzSwAAM0sAADPLAAAzywAANEsAADRLAAA0ywAANMsAADVLAAA1SwAANcsAADXLAAA2SwAANksAADbLAAA2ywAAN0sAADdLAAA3ywAAN8sAADhLAAA4SwAAOMsAADjLAAA7CwAAOwsAADuLAAA7iwAAPMsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAQaYAAEGmAABDpgAAQ6YAAEWmAABFpgAAR6YAAEemAABJpgAASaYAAEumAABLpgAATaYAAE2mAABPpgAAT6YAAFGmAABRpgAAU6YAAFOmAABVpgAAVaYAAFemAABXpgAAWaYAAFmmAABbpgAAW6YAAF2mAABdpgAAX6YAAF+mAABhpgAAYaYAAGOmAABjpgAAZaYAAGWmAABnpgAAZ6YAAGmmAABppgAAa6YAAGumAABtpgAAbaYAAIGmAACBpgAAg6YAAIOmAACFpgAAhaYAAIemAACHpgAAiaYAAImmAACLpgAAi6YAAI2mAACNpgAAj6YAAI+mAACRpgAAkaYAAJOmAACTpgAAlaYAAJWmAACXpgAAl6YAAJmmAACZpgAAm6YAAJumAAAjpwAAI6cAACWnAAAlpwAAJ6cAACenAAAppwAAKacAACunAAArpwAALacAAC2nAAAvpwAAL6cAADOnAAAzpwAANacAADWnAAA3pwAAN6cAADmnAAA5pwAAO6cAADunAAA9pwAAPacAAD+nAAA/pwAAQacAAEGnAABDpwAAQ6cAAEWnAABFpwAAR6cAAEenAABJpwAASacAAEunAABLpwAATacAAE2nAABPpwAAT6cAAFGnAABRpwAAU6cAAFOnAABVpwAAVacAAFenAABXpwAAWacAAFmnAABbpwAAW6cAAF2nAABdpwAAX6cAAF+nAABhpwAAYacAAGOnAABjpwAAZacAAGWnAABnpwAAZ6cAAGmnAABppwAAa6cAAGunAABtpwAAbacAAG+nAABvpwAAeqcAAHqnAAB8pwAAfKcAAH+nAAB/pwAAgacAAIGnAACDpwAAg6cAAIWnAACFpwAAh6cAAIenAACMpwAAjKcAAJGnAACRpwAAk6cAAJSnAACXpwAAl6cAAJmnAACZpwAAm6cAAJunAACdpwAAnacAAJ+nAACfpwAAoacAAKGnAACjpwAAo6cAAKWnAAClpwAAp6cAAKenAACppwAAqacAALWnAAC1pwAAt6cAALenAAC5pwAAuacAALunAAC7pwAAvacAAL2nAAC/pwAAv6cAAMGnAADBpwAAw6cAAMOnAADIpwAAyKcAAMqnAADKpwAA0acAANGnAADXpwAA16cAANmnAADZpwAA9qcAAPanAABTqwAAU6sAAHCrAAC/qwAAAPsAAAb7AAAT+wAAF/sAAEH/AABa/wAAKAQBAE8EAQDYBAEA+wQBAJcFAQChBQEAowUBALEFAQCzBQEAuQUBALsFAQC8BQEAwAwBAPIMAQDAGAEA3xgBAGBuAQB/bgEAIukBAEPpAQBBoOQGC8cncwIAAGEAAAB6AAAAtQAAALUAAADfAAAA9gAAAPgAAAD/AAAAAQEAAAEBAAADAQAAAwEAAAUBAAAFAQAABwEAAAcBAAAJAQAACQEAAAsBAAALAQAADQEAAA0BAAAPAQAADwEAABEBAAARAQAAEwEAABMBAAAVAQAAFQEAABcBAAAXAQAAGQEAABkBAAAbAQAAGwEAAB0BAAAdAQAAHwEAAB8BAAAhAQAAIQEAACMBAAAjAQAAJQEAACUBAAAnAQAAJwEAACkBAAApAQAAKwEAACsBAAAtAQAALQEAAC8BAAAvAQAAMQEAADEBAAAzAQAAMwEAADUBAAA1AQAANwEAADcBAAA6AQAAOgEAADwBAAA8AQAAPgEAAD4BAABAAQAAQAEAAEIBAABCAQAARAEAAEQBAABGAQAARgEAAEgBAABJAQAASwEAAEsBAABNAQAATQEAAE8BAABPAQAAUQEAAFEBAABTAQAAUwEAAFUBAABVAQAAVwEAAFcBAABZAQAAWQEAAFsBAABbAQAAXQEAAF0BAABfAQAAXwEAAGEBAABhAQAAYwEAAGMBAABlAQAAZQEAAGcBAABnAQAAaQEAAGkBAABrAQAAawEAAG0BAABtAQAAbwEAAG8BAABxAQAAcQEAAHMBAABzAQAAdQEAAHUBAAB3AQAAdwEAAHoBAAB6AQAAfAEAAHwBAAB+AQAAgAEAAIMBAACDAQAAhQEAAIUBAACIAQAAiAEAAIwBAACMAQAAkgEAAJIBAACVAQAAlQEAAJkBAACaAQAAngEAAJ4BAAChAQAAoQEAAKMBAACjAQAApQEAAKUBAACoAQAAqAEAAK0BAACtAQAAsAEAALABAAC0AQAAtAEAALYBAAC2AQAAuQEAALkBAAC9AQAAvQEAAL8BAAC/AQAAxQEAAMYBAADIAQAAyQEAAMsBAADMAQAAzgEAAM4BAADQAQAA0AEAANIBAADSAQAA1AEAANQBAADWAQAA1gEAANgBAADYAQAA2gEAANoBAADcAQAA3QEAAN8BAADfAQAA4QEAAOEBAADjAQAA4wEAAOUBAADlAQAA5wEAAOcBAADpAQAA6QEAAOsBAADrAQAA7QEAAO0BAADvAQAA8AEAAPIBAADzAQAA9QEAAPUBAAD5AQAA+QEAAPsBAAD7AQAA/QEAAP0BAAD/AQAA/wEAAAECAAABAgAAAwIAAAMCAAAFAgAABQIAAAcCAAAHAgAACQIAAAkCAAALAgAACwIAAA0CAAANAgAADwIAAA8CAAARAgAAEQIAABMCAAATAgAAFQIAABUCAAAXAgAAFwIAABkCAAAZAgAAGwIAABsCAAAdAgAAHQIAAB8CAAAfAgAAIwIAACMCAAAlAgAAJQIAACcCAAAnAgAAKQIAACkCAAArAgAAKwIAAC0CAAAtAgAALwIAAC8CAAAxAgAAMQIAADMCAAAzAgAAPAIAADwCAAA/AgAAQAIAAEICAABCAgAARwIAAEcCAABJAgAASQIAAEsCAABLAgAATQIAAE0CAABPAgAAVAIAAFYCAABXAgAAWQIAAFkCAABbAgAAXAIAAGACAABhAgAAYwIAAGMCAABlAgAAZgIAAGgCAABsAgAAbwIAAG8CAABxAgAAcgIAAHUCAAB1AgAAfQIAAH0CAACAAgAAgAIAAIICAACDAgAAhwIAAIwCAACSAgAAkgIAAJ0CAACeAgAARQMAAEUDAABxAwAAcQMAAHMDAABzAwAAdwMAAHcDAAB7AwAAfQMAAJADAACQAwAArAMAAM4DAADQAwAA0QMAANUDAADXAwAA2QMAANkDAADbAwAA2wMAAN0DAADdAwAA3wMAAN8DAADhAwAA4QMAAOMDAADjAwAA5QMAAOUDAADnAwAA5wMAAOkDAADpAwAA6wMAAOsDAADtAwAA7QMAAO8DAADzAwAA9QMAAPUDAAD4AwAA+AMAAPsDAAD7AwAAMAQAAF8EAABhBAAAYQQAAGMEAABjBAAAZQQAAGUEAABnBAAAZwQAAGkEAABpBAAAawQAAGsEAABtBAAAbQQAAG8EAABvBAAAcQQAAHEEAABzBAAAcwQAAHUEAAB1BAAAdwQAAHcEAAB5BAAAeQQAAHsEAAB7BAAAfQQAAH0EAAB/BAAAfwQAAIEEAACBBAAAiwQAAIsEAACNBAAAjQQAAI8EAACPBAAAkQQAAJEEAACTBAAAkwQAAJUEAACVBAAAlwQAAJcEAACZBAAAmQQAAJsEAACbBAAAnQQAAJ0EAACfBAAAnwQAAKEEAAChBAAAowQAAKMEAAClBAAApQQAAKcEAACnBAAAqQQAAKkEAACrBAAAqwQAAK0EAACtBAAArwQAAK8EAACxBAAAsQQAALMEAACzBAAAtQQAALUEAAC3BAAAtwQAALkEAAC5BAAAuwQAALsEAAC9BAAAvQQAAL8EAAC/BAAAwgQAAMIEAADEBAAAxAQAAMYEAADGBAAAyAQAAMgEAADKBAAAygQAAMwEAADMBAAAzgQAAM8EAADRBAAA0QQAANMEAADTBAAA1QQAANUEAADXBAAA1wQAANkEAADZBAAA2wQAANsEAADdBAAA3QQAAN8EAADfBAAA4QQAAOEEAADjBAAA4wQAAOUEAADlBAAA5wQAAOcEAADpBAAA6QQAAOsEAADrBAAA7QQAAO0EAADvBAAA7wQAAPEEAADxBAAA8wQAAPMEAAD1BAAA9QQAAPcEAAD3BAAA+QQAAPkEAAD7BAAA+wQAAP0EAAD9BAAA/wQAAP8EAAABBQAAAQUAAAMFAAADBQAABQUAAAUFAAAHBQAABwUAAAkFAAAJBQAACwUAAAsFAAANBQAADQUAAA8FAAAPBQAAEQUAABEFAAATBQAAEwUAABUFAAAVBQAAFwUAABcFAAAZBQAAGQUAABsFAAAbBQAAHQUAAB0FAAAfBQAAHwUAACEFAAAhBQAAIwUAACMFAAAlBQAAJQUAACcFAAAnBQAAKQUAACkFAAArBQAAKwUAAC0FAAAtBQAALwUAAC8FAABhBQAAhwUAANAQAAD6EAAA/RAAAP8QAAD4EwAA/RMAAIAcAACIHAAAeR0AAHkdAAB9HQAAfR0AAI4dAACOHQAAAR4AAAEeAAADHgAAAx4AAAUeAAAFHgAABx4AAAceAAAJHgAACR4AAAseAAALHgAADR4AAA0eAAAPHgAADx4AABEeAAARHgAAEx4AABMeAAAVHgAAFR4AABceAAAXHgAAGR4AABkeAAAbHgAAGx4AAB0eAAAdHgAAHx4AAB8eAAAhHgAAIR4AACMeAAAjHgAAJR4AACUeAAAnHgAAJx4AACkeAAApHgAAKx4AACseAAAtHgAALR4AAC8eAAAvHgAAMR4AADEeAAAzHgAAMx4AADUeAAA1HgAANx4AADceAAA5HgAAOR4AADseAAA7HgAAPR4AAD0eAAA/HgAAPx4AAEEeAABBHgAAQx4AAEMeAABFHgAARR4AAEceAABHHgAASR4AAEkeAABLHgAASx4AAE0eAABNHgAATx4AAE8eAABRHgAAUR4AAFMeAABTHgAAVR4AAFUeAABXHgAAVx4AAFkeAABZHgAAWx4AAFseAABdHgAAXR4AAF8eAABfHgAAYR4AAGEeAABjHgAAYx4AAGUeAABlHgAAZx4AAGceAABpHgAAaR4AAGseAABrHgAAbR4AAG0eAABvHgAAbx4AAHEeAABxHgAAcx4AAHMeAAB1HgAAdR4AAHceAAB3HgAAeR4AAHkeAAB7HgAAex4AAH0eAAB9HgAAfx4AAH8eAACBHgAAgR4AAIMeAACDHgAAhR4AAIUeAACHHgAAhx4AAIkeAACJHgAAix4AAIseAACNHgAAjR4AAI8eAACPHgAAkR4AAJEeAACTHgAAkx4AAJUeAACbHgAAoR4AAKEeAACjHgAAox4AAKUeAAClHgAApx4AAKceAACpHgAAqR4AAKseAACrHgAArR4AAK0eAACvHgAArx4AALEeAACxHgAAsx4AALMeAAC1HgAAtR4AALceAAC3HgAAuR4AALkeAAC7HgAAux4AAL0eAAC9HgAAvx4AAL8eAADBHgAAwR4AAMMeAADDHgAAxR4AAMUeAADHHgAAxx4AAMkeAADJHgAAyx4AAMseAADNHgAAzR4AAM8eAADPHgAA0R4AANEeAADTHgAA0x4AANUeAADVHgAA1x4AANceAADZHgAA2R4AANseAADbHgAA3R4AAN0eAADfHgAA3x4AAOEeAADhHgAA4x4AAOMeAADlHgAA5R4AAOceAADnHgAA6R4AAOkeAADrHgAA6x4AAO0eAADtHgAA7x4AAO8eAADxHgAA8R4AAPMeAADzHgAA9R4AAPUeAAD3HgAA9x4AAPkeAAD5HgAA+x4AAPseAAD9HgAA/R4AAP8eAAAHHwAAEB8AABUfAAAgHwAAJx8AADAfAAA3HwAAQB8AAEUfAABQHwAAVx8AAGAfAABnHwAAcB8AAH0fAACAHwAAtB8AALYfAAC3HwAAvB8AALwfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADMHwAAzB8AANAfAADTHwAA1h8AANcfAADgHwAA5x8AAPIfAAD0HwAA9h8AAPcfAAD8HwAA/B8AAE4hAABOIQAAcCEAAH8hAACEIQAAhCEAANAkAADpJAAAMCwAAF8sAABhLAAAYSwAAGUsAABmLAAAaCwAAGgsAABqLAAAaiwAAGwsAABsLAAAcywAAHMsAAB2LAAAdiwAAIEsAACBLAAAgywAAIMsAACFLAAAhSwAAIcsAACHLAAAiSwAAIksAACLLAAAiywAAI0sAACNLAAAjywAAI8sAACRLAAAkSwAAJMsAACTLAAAlSwAAJUsAACXLAAAlywAAJksAACZLAAAmywAAJssAACdLAAAnSwAAJ8sAACfLAAAoSwAAKEsAACjLAAAoywAAKUsAAClLAAApywAAKcsAACpLAAAqSwAAKssAACrLAAArSwAAK0sAACvLAAArywAALEsAACxLAAAsywAALMsAAC1LAAAtSwAALcsAAC3LAAAuSwAALksAAC7LAAAuywAAL0sAAC9LAAAvywAAL8sAADBLAAAwSwAAMMsAADDLAAAxSwAAMUsAADHLAAAxywAAMksAADJLAAAyywAAMssAADNLAAAzSwAAM8sAADPLAAA0SwAANEsAADTLAAA0ywAANUsAADVLAAA1ywAANcsAADZLAAA2SwAANssAADbLAAA3SwAAN0sAADfLAAA3ywAAOEsAADhLAAA4ywAAOMsAADsLAAA7CwAAO4sAADuLAAA8ywAAPMsAAAALQAAJS0AACctAAAnLQAALS0AAC0tAABBpgAAQaYAAEOmAABDpgAARaYAAEWmAABHpgAAR6YAAEmmAABJpgAAS6YAAEumAABNpgAATaYAAE+mAABPpgAAUaYAAFGmAABTpgAAU6YAAFWmAABVpgAAV6YAAFemAABZpgAAWaYAAFumAABbpgAAXaYAAF2mAABfpgAAX6YAAGGmAABhpgAAY6YAAGOmAABlpgAAZaYAAGemAABnpgAAaaYAAGmmAABrpgAAa6YAAG2mAABtpgAAgaYAAIGmAACDpgAAg6YAAIWmAACFpgAAh6YAAIemAACJpgAAiaYAAIumAACLpgAAjaYAAI2mAACPpgAAj6YAAJGmAACRpgAAk6YAAJOmAACVpgAAlaYAAJemAACXpgAAmaYAAJmmAACbpgAAm6YAACOnAAAjpwAAJacAACWnAAAnpwAAJ6cAACmnAAAppwAAK6cAACunAAAtpwAALacAAC+nAAAvpwAAM6cAADOnAAA1pwAANacAADenAAA3pwAAOacAADmnAAA7pwAAO6cAAD2nAAA9pwAAP6cAAD+nAABBpwAAQacAAEOnAABDpwAARacAAEWnAABHpwAAR6cAAEmnAABJpwAAS6cAAEunAABNpwAATacAAE+nAABPpwAAUacAAFGnAABTpwAAU6cAAFWnAABVpwAAV6cAAFenAABZpwAAWacAAFunAABbpwAAXacAAF2nAABfpwAAX6cAAGGnAABhpwAAY6cAAGOnAABlpwAAZacAAGenAABnpwAAaacAAGmnAABrpwAAa6cAAG2nAABtpwAAb6cAAG+nAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAkacAAJGnAACTpwAAlKcAAJenAACXpwAAmacAAJmnAACbpwAAm6cAAJ2nAACdpwAAn6cAAJ+nAAChpwAAoacAAKOnAACjpwAApacAAKWnAACnpwAAp6cAAKmnAACppwAAtacAALWnAAC3pwAAt6cAALmnAAC5pwAAu6cAALunAAC9pwAAvacAAL+nAAC/pwAAwacAAMGnAADDpwAAw6cAAMinAADIpwAAyqcAAMqnAADRpwAA0acAANenAADXpwAA2acAANmnAAD2pwAA9qcAAFOrAABTqwAAcKsAAL+rAAAA+wAABvsAABP7AAAX+wAAQf8AAFr/AAAoBAEATwQBANgEAQD7BAEAlwUBAKEFAQCjBQEAsQUBALMFAQC5BQEAuwUBALwFAQDADAEA8gwBAMAYAQDfGAEAYG4BAH9uAQAi6QEAQ+kBAAAAAAADAAAAoBMAAPUTAAD4EwAA/RMAAHCrAAC/qwAAAQAAALAPAQDLDwEAQfCLBwvTK7oCAAB4AwAAeQMAAIADAACDAwAAiwMAAIsDAACNAwAAjQMAAKIDAACiAwAAMAUAADAFAABXBQAAWAUAAIsFAACMBQAAkAUAAJAFAADIBQAAzwUAAOsFAADuBQAA9QUAAP8FAAAOBwAADgcAAEsHAABMBwAAsgcAAL8HAAD7BwAA/AcAAC4IAAAvCAAAPwgAAD8IAABcCAAAXQgAAF8IAABfCAAA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CQAAggkAAIMJAACFCQAAjAkAAI8JAACQCQAAkwkAAKgJAACqCQAAsAkAALIJAACyCQAAtgkAALkJAAC9CQAAvQkAAL8JAADACQAAxwkAAMgJAADLCQAAzAkAAM4JAADOCQAA3AkAAN0JAADfCQAA4QkAAOYJAAD9CQAAAwoAAAMKAAAFCgAACgoAAA8KAAAQCgAAEwoAACgKAAAqCgAAMAoAADIKAAAzCgAANQoAADYKAAA4CgAAOQoAAD4KAABACgAAWQoAAFwKAABeCgAAXgoAAGYKAABvCgAAcgoAAHQKAAB2CgAAdgoAAIMKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvQoAAMAKAADJCgAAyQoAAMsKAADMCgAA0AoAANAKAADgCgAA4QoAAOYKAADxCgAA+QoAAPkKAAACCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAAD0LAAA9CwAAQAsAAEALAABHCwAASAsAAEsLAABMCwAAXAsAAF0LAABfCwAAYQsAAGYLAAB3CwAAgwsAAIMLAACFCwAAigsAAI4LAACQCwAAkgsAAJULAACZCwAAmgsAAJwLAACcCwAAngsAAJ8LAACjCwAApAsAAKgLAACqCwAArgsAALkLAAC/CwAAvwsAAMELAADCCwAAxgsAAMgLAADKCwAAzAsAANALAADQCwAA5gsAAPoLAAABDAAAAwwAAAUMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAA5DAAAPQwAAD0MAABBDAAARAwAAFgMAABaDAAAXQwAAF0MAABgDAAAYQwAAGYMAABvDAAAdwwAAIAMAACCDAAAjAwAAI4MAACQDAAAkgwAAKgMAACqDAAAswwAALUMAAC5DAAAvQwAAL4MAADADAAAwQwAAMMMAADEDAAAxwwAAMgMAADKDAAAywwAAN0MAADeDAAA4AwAAOEMAADmDAAA7wwAAPEMAADyDAAAAg0AAAwNAAAODQAAEA0AABINAAA6DQAAPQ0AAD0NAAA/DQAAQA0AAEYNAABIDQAASg0AAEwNAABODQAATw0AAFQNAABWDQAAWA0AAGENAABmDQAAfw0AAIINAACDDQAAhQ0AAJYNAACa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CgAANgoAADgKAAA5CgAAPAoAADwKAAA+CgAAQgoAAEcKAABICgAASwoAAE0KAABRCgAAUQoAAFkKAABcCgAAXgoAAF4KAABmCgAAdQoAAIEKAACDCgAAhQoAAI0KAACPCgAAkQoAAJMKAACoCgAAqgoAALAKAACyCgAAswoAALUKAAC5CgAAvAoAAMUKAADHCgAAyQoAAMsKAADNCgAA0AoAANAKAADgCgAA4woAAOYKAADvCgAA+QoAAP8KAAABCwAAAwsAAAULAAAMCwAADwsAABALAAATCwAAKAsAACoLAAAwCwAAMgsAADMLAAA1CwAAOQsAADwLAABECwAARwsAAEgLAABLCwAATQsAAFULAABXCwAAXAsAAF0LAABfCwAAYwsAAGYLAABvCwAAcQsAAHELAACCCwAAgwsAAIULAACKCwAAjgsAAJALAACSCwAAlQsAAJkLAACaCwAAnAsAAJwLAACeCwAAnwsAAKMLAACkCwAAqAsAAKoLAACuCwAAuQsAAL4LAADCCwAAxgsAAMgLAADKCwAAzQsAANALAADQCwAA1wsAANcLAADmCwAA7wsAAAAMAAAMDAAADgwAABAMAAASDAAAKAwAACoMAAA5DAAAPAwAAEQMAABGDAAASAwAAEoMAABNDAAAVQwAAFYMAABYDAAAWgwAAF0MAABdDAAAYAwAAGMMAABmDAAAbwwAAIAMAACDDAAAhQwAAIwMAACODAAAkAwAAJIMAACoDAAAqgwAALMMAAC1DAAAuQwAALwMAADEDAAAxgwAAMgMAADKDAAAzQwAANUMAADWDAAA3QwAAN4MAADgDAAA4wwAAOYMAADvDAAA8QwAAPIMAAAADQAADA0AAA4NAAAQDQAAEg0AAEQNAABGDQAASA0AAEoNAABODQAAVA0AAFcNAABfDQAAYw0AAGYNAABvDQAAeg0AAH8NAACBDQAAgw0AAIUNAACWDQAAmg0AALENAACzDQAAuw0AAL0NAAC9DQAAwA0AAMYNAADKDQAAyg0AAM8NAADUDQAA1g0AANYNAADYDQAA3w0AAOYNAADvDQAA8g0AAPMNAAABDgAAOg4AAEAOAABODgAAUA4AAFkOAACBDgAAgg4AAIQOAACEDgAAhg4AAIoOAACMDgAAow4AAKUOAAClDgAApw4AAL0OAADADgAAxA4AAMYOAADG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vx4AAMEeAADBHgAAwx4AAMMeAADFHgAAxR4AAMceAADHHgAAyR4AAMkeAADLHgAAyx4AAM0eAADNHgAAzx4AAM8eAADRHgAA0R4AANMeAADTHgAA1R4AANUeAADXHgAA1x4AANkeAADZHgAA2x4AANseAADdHgAA3R4AAN8eAADfHgAA4R4AAOEeAADjHgAA4x4AAOUeAADlHgAA5x4AAOceAADpHgAA6R4AAOseAADrHgAA7R4AAO0eAADvHgAA7x4AAPEeAADxHgAA8x4AAPMeAAD1HgAA9R4AAPceAAD3HgAA+R4AAPkeAAD7HgAA+x4AAP0eAAD9HgAA/x4AAAcfAAAQHwAAFR8AACAfAAAnHwAAMB8AADcfAABAHwAARR8AAFAfAABXHwAAYB8AAGcfAABwHwAAfR8AAIAfAACHHwAAkB8AAJcfAACgHwAApx8AALAfAAC0HwAAth8AALcfAAC+HwAAvh8AAMIfAADEHwAAxh8AAMcfAADQHwAA0x8AANYfAADXHwAA4B8AAOcfAADyHwAA9B8AAPYfAAD3HwAACiEAAAohAAAOIQAADyEAABMhAAATIQAALyEAAC8hAAA0IQAANCEAADkhAAA5IQAAPCEAAD0hAABGIQAASSEAAE4hAABOIQAAhCEAAIQhAAAwLAAAXywAAGEsAABhLAAAZSwAAGYsAABoLAAAaCwAAGosAABqLAAAbCwAAGwsAABxLAAAcSwAAHMsAAB0LAAAdiwAAHssAACBLAAAgSwAAIMsAACDLAAAhSwAAIUsAACHLAAAhywAAIksAACJLAAAiywAAIssAACNLAAAjSwAAI8sAACPLAAAkSwAAJEsAACTLAAAkywAAJUsAACVLAAAlywAAJcsAACZLAAAmSwAAJssAACbLAAAnSwAAJ0sAACfLAAAnywAAKEsAAChLAAAoywAAKMsAAClLAAApSwAAKcsAACnLAAAqSwAAKksAACrLAAAqywAAK0sAACtLAAArywAAK8sAACxLAAAsSwAALMsAACzLAAAtSwAALUsAAC3LAAAtywAALksAAC5LAAAuywAALssAAC9LAAAvSwAAL8sAAC/LAAAwSwAAMEsAADDLAAAwywAAMUsAADFLAAAxywAAMcsAADJLAAAySwAAMssAADLLAAAzSwAAM0sAADPLAAAzywAANEsAADRLAAA0ywAANMsAADVLAAA1SwAANcsAADXLAAA2SwAANksAADbLAAA2ywAAN0sAADdLAAA3ywAAN8sAADhLAAA4SwAAOMsAADkLAAA7CwAAOwsAADuLAAA7iwAAPMsAADzLAAAAC0AACUtAAAnLQAAJy0AAC0tAAAtLQAAQaYAAEGmAABDpgAAQ6YAAEWmAABFpgAAR6YAAEemAABJpgAASaYAAEumAABLpgAATaYAAE2mAABPpgAAT6YAAFGmAABRpgAAU6YAAFOmAABVpgAAVaYAAFemAABXpgAAWaYAAFmmAABbpgAAW6YAAF2mAABdpgAAX6YAAF+mAABhpgAAYaYAAGOmAABjpgAAZaYAAGWmAABnpgAAZ6YAAGmmAABppgAAa6YAAGumAABtpgAAbaYAAIGmAACBpgAAg6YAAIOmAACFpgAAhaYAAIemAACHpgAAiaYAAImmAACLpgAAi6YAAI2mAACNpgAAj6YAAI+mAACRpgAAkaYAAJOmAACTpgAAlaYAAJWmAACXpgAAl6YAAJmmAACZpgAAm6YAAJumAAAjpwAAI6cAACWnAAAlpwAAJ6cAACenAAAppwAAKacAACunAAArpwAALacAAC2nAAAvpwAAMacAADOnAAAzpwAANacAADWnAAA3pwAAN6cAADmnAAA5pwAAO6cAADunAAA9pwAAPacAAD+nAAA/pwAAQacAAEGnAABDpwAAQ6cAAEWnAABFpwAAR6cAAEenAABJpwAASacAAEunAABLpwAATacAAE2nAABPpwAAT6cAAFGnAABRpwAAU6cAAFOnAABVpwAAVacAAFenAABXpwAAWacAAFmnAABbpwAAW6cAAF2nAABdpwAAX6cAAF+nAABhpwAAYacAAGOnAABjpwAAZacAAGWnAABnpwAAZ6cAAGmnAABppwAAa6cAAGunAABtpwAAbacAAG+nAABvpwAAcacAAHinAAB6pwAAeqcAAHynAAB8pwAAf6cAAH+nAACBpwAAgacAAIOnAACDpwAAhacAAIWnAACHpwAAh6cAAIynAACMpwAAjqcAAI6nAACRpwAAkacAAJOnAACVpwAAl6cAAJenAACZpwAAmacAAJunAACbpwAAnacAAJ2nAACfpwAAn6cAAKGnAAChpwAAo6cAAKOnAAClpwAApacAAKenAACnpwAAqacAAKmnAACvpwAA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AACmHgAAph4AAKgeAACoHgAAqh4AAKoeAACsHgAArB4AAK4eAACuHgAAsB4AALAeAACyHgAAsh4AALQeAAC0HgAAth4AALYeAAC4HgAAuB4AALoeAAC6HgAAvB4AALweAAC+HgAAvh4AAMAeAADAHgAAwh4AAMIeAADEHgAAxB4AAMYeAADGHgAAyB4AAMgeAADKHgAAyh4AAMweAADMHgAAzh4AAM4eAADQHgAA0B4AANIeAADSHgAA1B4AANQeAADWHgAA1h4AANgeAADYHgAA2h4AANoeAADcHgAA3B4AAN4eAADeHgAA4B4AAOAeAADiHgAA4h4AAOQeAADkHgAA5h4AAOYeAADoHgAA6B4AAOoeAADqHgAA7B4AAOweAADuHgAA7h4AAPAeAADwHgAA8h4AAPIeAAD0HgAA9B4AAPYeAAD2HgAA+B4AAPgeAAD6HgAA+h4AAPweAAD8HgAA/h4AAP4eAAAIHwAADx8AABgfAAAdHwAAKB8AAC8fAAA4HwAAPx8AAEgfAABNHwAAWR8AAFkfAABbHwAAWx8AAF0fAABdHwAAXx8AAF8fAABoHwAAbx8AALgfAAC7HwAAyB8AAMsfAADYHwAA2x8AAOgfAADsHwAA+B8AAPsfAAACIQAAAiEAAAchAAAHIQAACyEAAA0hAAAQIQAAEiEAABUhAAAVIQAAGSEAAB0hAAAkIQAAJCEAACYhAAAmIQAAKCEAACghAAAqIQAALSEAADAhAAAzIQAAPiEAAD8hAABFIQAARSEAAIMhAACDIQAAACwAAC8sAABgLAAAYCwAAGIsAABkLAAAZywAAGcsAABpLAAAaSwAAGssAABrLAAAbSwAAHAsAAByLAAAciwAAHUsAAB1LAAAfiwAAIAsAACCLAAAgiwAAIQsAACELAAAhiwAAIYsAACILAAAiCwAAIosAACKLAAAjCwAAIwsAACOLAAAjiwAAJAsAACQLAAAkiwAAJIsAACULAAAlCwAAJYsAACWLAAAmCwAAJgsAACaLAAAmiwAAJwsAACcLAAAniwAAJ4sAACgLAAAoCwAAKIsAACiLAAApCwAAKQsAACmLAAApiwAAKgsAACoLAAAqiwAAKosAACsLAAArCwAAK4sAACuLAAAsCwAALAsAACyLAAAsiwAALQsAAC0LAAAtiwAALYsAAC4LAAAuCwAALosAAC6LAAAvCwAALwsAAC+LAAAviwAAMAsAADALAAAwiwAAMIsAADELAAAxCwAAMYsAADGLAAAyCwAAMgsAADKLAAAyiwAAMwsAADMLAAAziwAAM4sAADQLAAA0CwAANIsAADSLAAA1CwAANQsAADWLAAA1iwAANgsAADYLAAA2iwAANosAADcLAAA3CwAAN4sAADeLAAA4CwAAOAsAADiLAAA4iwAAOssAADrLAAA7SwAAO0sAADyLAAA8iwAAECmAABApgAAQqYAAEKmAABEpgAARKYAAEamAABGpgAASKYAAEimAABKpgAASqYAAEymAABMpgAATqYAAE6mAABQpgAAUKYAAFKmAABSpgAAVKYAAFSmAABWpgAAVqYAAFimAABYpgAAWqYAAFqmAABcpgAAXKYAAF6mAABepgAAYKYAAGCmAABipgAAYqYAAGSmAABkpgAAZqYAAGamAABopgAAaKYAAGqmAABqpgAAbKYAAGymAACApgAAgKYAAIKmAACCpgAAhKYAAISmAACGpgAAhqYAAIimAACIpgAAiqYAAIqmAACMpgAAjKYAAI6mAACOpgAAkKYAAJCmAACSpgAAkqYAAJSmAACUpgAAlqYAAJamAACYpgAAmKYAAJqmAACapgAAIqcAACKnAAAkpwAAJKcAACanAAAmpwAAKKcAACinAAAqpwAAKqcAACynAAAspwAALqcAAC6nAAAypwAAMqcAADSnAAA0pwAANqcAADanAAA4pwAAOKcAADqnAAA6pwAAPKcAADynAAA+pwAAPqcAAECnAABApwAAQqcAAEKnAABEpwAARKcAAEanAABGpwAASKcAAEinAABKpwAASqcAAEynAABMpwAATqcAAE6nAABQpwAAUKcAAFKnAABSpwAAVKcAAFSnAABWpwAAVqcAAFinAABYpwAAWqcAAFqnAABcpwAAXKcAAF6nAABepwAAYKcAAGCnAABipwAAYqcAAGSnAABkpwAAZqcAAGanAABopwAAaKcAAGqnAABqpwAAbKcAAGynAABupwAAbqcAAHmnAAB5pwAAe6cAAHunAAB9pwAAfqcAAICnAACApwAAgqcAAIKnAACEpwAAhKcAAIanAACGpwAAi6cAAIunAACNpwAAjacAAJCnAACQpwAAkqcAAJKnAACWpwAAlqcAAJinAACYpwAAmqcAAJqn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ADAFAABXBQAAWAUAAIsFAACMBQAAkAUAAJAFAADIBQAAzwUAAOsFAADuBQAA9QUAAP8FAAAOBwAADgcAAEsHAABMBwAAsgcAAL8HAAD7BwAA/AcAAC4IAAAvCAAAPwgAAD8IAABcCAAAXQgAAF8IAABfCAAAawgAAG8IAACPCAAAjwgAAJIIAACXCAAAhAkAAIQJAACNCQAAjgkAAJEJAACSCQAAqQkAAKkJAACxCQAAsQkAALMJAAC1CQAAugkAALsJAADFCQAAxgkAAMkJAADKCQAAzwkAANYJAADYCQAA2wkAAN4JAADeCQAA5AkAAOUJAAD/CQAAAAoAAAQKAAAECgAACwoAAA4KAAARCgAAEgoAACkKAAApCgAAMQoAADEKAAA0CgAANAoAADcKAAA3CgAAOgoAADsKAAA9CgAAPQoAAEMKAABGCgAASQoAAEoKAABOCgAAUAoAAFIKAABYCgAAXQoAAF0KAABfCgAAZQoAAHcKAACACgAAhAoAAIQKAACOCgAAjgoAAJIKAACSCgAAqQoAAKkKAACxCgAAsQoAALQKAAC0CgAAugoAALsKAADGCgAAxgoAAMoKAADKCgAAzgoAAM8KAADRCgAA3woAAOQKAADlCgAA8goAAPgKAAAACwAAAAsAAAQLAAAECwAADQsAAA4LAAARCwAAEgsAACkLAAApCwAAMQsAADELAAA0CwAANAsAADoLAAA7CwAARQsAAEYLAABJCwAASgsAAE4LAABUCwAAWAsAAFsLAABeCwAAXgsAAGQLAABlCwAAeAsAAIELAACECwAAhAsAAIsLAACNCwAAkQsAAJELAACWCwAAmAsAAJsLAACbCwAAnQsAAJ0LAACgCwAAogsAAKULAACnCwAAqwsAAK0LAAC6CwAAvQsAAMMLAADFCwAAyQsAAMkLAADOCwAAzwsAANELAADWCwAA2AsAAOULAAD7CwAA/wsAAA0MAAANDAAAEQwAABEMAAApDAAAKQwAADoMAAA7DAAARQwAAEUMAABJDAAASQwAAE4MAABUDAAAVwwAAFcMAABbDAAAXAwAAF4MAABfDAAAZAwAAGUMAABwDAAAdgwAAI0MAACNDAAAkQwAAJEMAACpDAAAqQwAALQMAAC0DAAAugwAALsMAADFDAAAxQwAAMkMAADJDAAAzgwAANQMAADXDAAA3AwA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AD0AAwH//wAAQgCdAEcADQH//wAA//8AAP//AAD//wAA//8AAP//AABMACQB//8AAFIANwD//wAA//8AAFUAlwD//wAA//8AAP//AABYAIcA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXABWAP//AABhANIA//8AAP//AAD//wAAZACBAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABsAI0A//8AAHEAJwB2ACcA//8AAP//AAB9ANMAgACaAP//AAD//wAAjQBaAP//AACSAM4A//8AAP//AACVAJkA//8AAKEA2AGuAFMAswBaAP//AAD//wAA//8AALkAoQC9AKEA//8AAMIAdADHAJwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADMAI0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzgCUANMALQD//wAA//8AAP//AAD//wAA2ADIAf//AAD//wAA4gDbAf//AAD//wAA//8AAO8AHgH//wAA//8AAP//AAD//wAA+gATAgABGAL//wAA//8AAP//AAAHASUA//8AAP//AAD//wAA//8AAP//AAD//wAACQHtAf//AAD//wAAEgE4AP//AAD//wAAGQGRAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACEBNwH//wAA//8AAP//AAD//wAAKwEIAv//AAD//wAA//8AAP//AAA1AW0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADoBGQL//wAA//8AAP//AABdAUQB//8AAP//AABlASYA//8AAGoB1AD//wAAhQGFAIgBkwD//wAA//8AAP//AAD//wAA//8AAP//AACNAcwAogE/AaoBvwH//wAAswHcAf//AAC9AY0AywEMAv//AAD//wAA//8AAP//AADsAZsA//8AAP//AAD//wAA//8AAP//AADxAegB/gG1AAMC+wEKAhgB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABoCPAH//wAA//8AAP//AAD//wAA//8AACUC7wH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALwKPAP//AAD//wAA//8AADcCYgH//wAA//8AAP//AAD//wAAQAJ8AP//AABDApQA//8AAP//AAD//wAAUAILAv//AAD//wAA//8AAP//AAD//wAA//8AAFwClgD//wAA//8AAF8CKwD//wAA//8AAP//AABiAgACdAIRAf//AAD//wAA//8AAIICFgD//wAA//8AAIcC1wCNAmwA//8AAP//AACSAiUB//8AAP//AAD//wAA//8AAP//AAD//wAAngIWAP//AACnAgUCsQIGAv//AADAAjkA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADFAswA//8AAP//AAD//wAA//8AAMgCbwDeAn4A//8AAP//AAD//wAA4wJ+AP//AADpAtkA//8AAP//AADsAiMB//8AAP//AAD//wAA//8AAP//AAD//wAA9QJKAf//AAD//wAABAOBAQ8DHAEaAzQB//8AACEDnwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAKAPrAf//AAD//wAA//8AADEDEwE0A5kA//8AAP//AAD//wAA//8AAP//AAD//wAAOQPSAP//AAD//wAA//8AAEwDOgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABPAyEB//8AAFgD1AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXAP6Af//AAD//wAA//8AAP//AABkA9UA//8AAP//AABnA5EA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGwDIAL//wAA//8AAP//AAD//wAAfAOaAIEDnwD//wAAhgN0AP//AACPA2sA//8AAJQDbwD//wAA//8AAP//AACZAw0B//8AAP//AACgA34B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAwwMLAc8DIgD//wAA//8AAP//AAD//wAA1AMOAP//AADaAzcA//8AAP//AADlAxUA//8AAP//AADsA6AB/wPjAf//AAD//wAA//8AABQEewD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAGwT/Af//AAD//wAA//8AAP//AAD//wAAKQSmAf//AAD//wAA//8AAP//AAD//wAA//8AADcE2gH//wAA//8AAEkEswFhBHMA//8AAP//AABmBHMAbgStAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAiwR7AP//AACNBPgB//8AAP//AAD//wAAlAS3Af//AAD//wAA//8AAP//AAD//wAA//8AAJ8EQQK4BDQCxwSrAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1AQXAuIECwHnBEYC//8AAP//AAD//wAA//8AAP//AAD2BD8C//8AAP//AAD//wAA//8AAP//AAACBc0B//8AAP//AAD//wAA//8AAP//AAAMBTUB//8AAP//AAASBSEA//8AABkFwQH//wAA//8AAP//AAD//wAA//8AAP//AAAlBW0B//8AAP//AABJBaAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFMFDAFYBdYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAZwVZAP//AAD//wAA//8AAP//AABuBXcA//8AAP//AAD//wAAcwVPAX8F5QH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAjAVVAJMFvAH//wAA//8AAP//AACkBZsA//8AAP//AAC0BXUA//8AAP//AAC5BSsA//8AAP//AADBBcoA0wU1Av//AAD//wAA//8AAP//AAD//wAA2wXmAP//AADeBYkA//8AAP//AAD//wAA//8AAOEFJgH//wAA//8AAP//AAD//wAA//8AAOsFlgEEBk4C//8AACsG6AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAC4GaQAyBtkB//8AAP//AAD//wAA//8AAP//AAD//wAARAbIAP//AABJBr4B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFIGMQL//wAA//8AAP//AAD//wAA//8AAFkGZwD//wAAawYfAnwGhgH//wAA//8AAIkG6wCOBhoA//8AAP//AAD//wAAlAZmAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALIGOgL//wAA//8AAP//AADABhwAxQZYAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADLBhwA//8AANEGygD//wAA//8AAP//AAD//wAA//8AAP//AADXBjIB//8AAOMGkwH//wAA//8AAP//AAD//wAA//8AAP//AAD5BiECDgcbAP//AAD//wAA//8AAP//AAD//wAA//8AABMHagD//wAA//8AABcHBwD//wAA//8AAB0HuQH//wAA//8AADAHTAE6BycC//8AAP//AAD//wAA//8AAP//AABLByUC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGUH3QD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGoHlQH//wAAeAf1AX8H3QD//wAA//8AAP//AACJB9wA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACLB3EAkQdlAf//AAD//wAAoweDAKgHywCtB2sB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMQHKALiB3MB//8AAAII5wD//wAA//8AAAUIPgL//wAAKgjEAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1CM0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADgIswD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAD0IDQD//wAA//8AAP//AAD//wAA//8AAP//AABDCG0A//8AAEgI/QH//wAA//8AAP//AABVCBYB//8AAP//AAD//wAA//8AAP//AABmCJgBcwhIAf//AAB7COAB//8AAIcIaQD//wAA//8AAP//AAD//wAA//8AAJII4gH//wAA//8AAKMI3wD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAApghoAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKsIpAG8CAYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADCCBkA//8AAMcIgAH//wAA//8AAP//AADSCMsB5gjGAf//AAD//wAA8AgCAP//AAD//wAA9ggZAQ8JNAD//wAA//8AAP//AAAYCdUB//8AACEJ0QD//wAA//8AACwJNAD//wAAMQkdADkJkwD//wAA//8AAEEJMgL//wAA//8AAP//AAD//wAA//8AAEoJWQD//wAA//8AAFcJGQBgCWoA//8AAP//AAD//wAAaAkvAf//AABwCfIB//8AAP//AAD//wAA//8AAP//AAB6CS4A//8AAH8JLQD//wAAhglyAI0J7gGYCVcA//8AAP//AAD//wAA//8AAKUJPgH//wAA//8AAP//AACtCSkA//8AAP//AACzCaIB//8AAP//AADLCXkA0gm7Af//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADoCdsA7Ql2AP//AAD//wAA//8AAP//AADyCZIA/QmIAAcKJgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABoKUgEkCp0A//8AAP//AAApCjoB//8AAP//AAD//wAANAp6AP//AAD//wAA//8AAP//AAA5CjAA//8AAD4KDQL//wAA//8AAFcKhAD//wAA//8AAP//AABaChEB//8AAP//AABdCjMB//8AAP//AAD//wAA//8AAP//AABnCvMB//8AAP//AABzCgwB//8AAP//AAD//wAA//8AAHwKCwD//wAAgwofAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAiQo1AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACUCvcB//8AAP//AAD//wAAngorAv//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAtAoRALkKNQD//wAA//8AAP//AAD//wAA//8AAL4KeADDCucB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAM8K9AH//wAA2QoaAP//AADeCm4A//8AAP//AADzClwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD4CqAA//8AAP//AAD//wAA//8AAP0KdQEOC0kB//8AAP//AAD//wAA//8AAP//AAD//wAAGgsQAB8LyQH//wAA//8AAP//AAD//wAA//8AACcLXAE8C1MA//8AAEULdgBQC+UA//8AAP//AAD//wAA//8AAFgLeAD//wAA//8AAP//AAD//wAA//8AAF4L4AD//wAAZAt8AP//AAD//wAAcAuiAP//AAD//wAAeAtcAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAhQuVAP//AACKCx0B//8AAP//AACfCzgB//8AAKoLVQD//wAA//8AAP//AAD//wAA//8AAP//AACvC6UBxAtUAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzwvXAN0LAgH//wAA4wuKAf//AAAEDHEAEAzbAP//AAD//wAA//8AAP//AAD//wAA//8AABYMRQH//wAA//8AAP//AAD//wAA//8AAP//AAAiDEsA//8AACgMTAJJDFYA//8AAP//AAD//wAA//8AAP//AABRDPYB//8AAFsM0wH//wAA//8AAP//AAD//wAA//8AAP//AABkDBAA//8AAP//AAD//wAAagyKAP//AABtDBwC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAIEMcgD//wAAhgwsAf//AACRDO0A//8AAP//AAD//wAA//8AAP//AAD//wAAmwzhAf//AAD//wAA//8AAP//AACqDPUAsAwKAsIMuwDIDJABzgwhAP//AAD//wAA//8AANMMZAH//wAA7AwFAfAMBQH//wAA//8AAPUM3gD//wAA//8AAP//AAD//wAA//8AAP//AAD6DF0A//8AAP8M8gD//wAA//8AAP//AAAFDW0A//8AAA8NywD//wAA//8AABkNEAEeDQgA//8AACQNggD//wAA//8AAP//AAD//wAAKQ1dADIN9QD//wAA//8AAP//AAD//wAANw3SAf//AAD//wAA//8AAP//AABDDYQB//8AAEwNhwBiDQQC//8AAG4NSgL//wAA//8AAI8NWACeDcoB//8AAP//AACoDewB//8AAP//AAC2DV4A//8AAP//AAD//wAA//8AALoNXgC/DYAA//8AAP//AADFDTYA//8AANAN2AD//wAA//8AANgNYQD//wAA3Q2EAP//AAD//wAA//8AAP//AAD//wAA//8AAO0NAwD//wAA8w2MAf//AAD//wAACg6CAP//AAD//wAA//8AAP//AAD//wAAEg4RAv//AAApDmEA//8AAP//AAD//wAA//8AADEO8QE6DloBVA5nAf//AABsDhMA//8AAP//AACBDqQA//8AAIMOTQD//wAA//8AAJEO6QD//wAA//8AAP//AAD//wAAlA5lAP//AAD//wAA//8AAJkO4wD//wAA//8AAP//AAD//wAA//8AAP//AACeDoAA//8AAKMOHgD//wAAqA5uAP//AACtDqYA//8AAP//AAC5DqwAvA7eAP//AADHDhQC0A4yANQOHgD//wAA//8AAN4OGwHvDqoA8w6qAPgO+gD//wAA//8AAP0OvAADD7YA//8AAAgP9wD//wAADQ/3ABQPmgH//wAA//8AAB4PxgD//wAA//8AACAPLgH//wAAKA/kATEPIAE6D9QB//8AAP//AABHD8cBUQ8fAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAXQ89Av//AAB9DwkB//8AAIIPogD//wAA//8AAIcP1gGdD+UA//8AAP//AACiD+IA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKoPfQH//wAA//8AAP//AAD//wAA//8AALsPlwD//wAAyQ8VAM4P8AH//wAA//8AAOYPIgD//wAA7g9BAf//AAD4D70A//8AAP//AAD9Dx0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAAhAUAQ8QrwH//wAA//8AACoQPQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALxDZAP//AAD//wAA//8AAEEQPAJiEE4A//8AAHQQWwH//wAA//8AAP//AAD//wAA//8AAIQQfwCJEPwBkRAsAP//AAD//wAA//8AAP//AACYEIsAnRCLAP//AAD//wAApBBEAP//AACoEL0B//8AAP//AAD//wAAtxBAAP//AAD//wAAuhBFAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAL8QAwHHEFcA//8AAM4QowD//wAA//8AANMQowD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AANsQSwL//wAA/BBNAP//AAD//wAA//8AAP//AAABEWoB//8AABMRDgL//wAAIRFVAf//AAD//wAA//8AADcRAAH//wAA//8AADwRVABBEfQA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEkRDwBXEb8A//8AAFsRxgD//wAA//8AAP//AABnEQYB//8AAP//AAD//wAAahHtAG8RAQJ5EdAB//8AAP//AAD//wAA//8AAP//AAD//wAAixFQAZMRlAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKQRIgL//wAA//8AAKwRNgH//wAA//8AAP//AAC2EasB//8AAP//AAD//wAA//8AAMYRYgDNEWkB//8AAP//AAD//wAA//8AAP//AAD//wAA3RHmAecRbAH//wAA//8AAPIR6QH//wAA//8AAPwRKgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAJEkwA//8AAP//AAD//wAAGBKHAf//AAD//wAA//8AAP//AAA1EmsAQRI5AP//AABIEmEB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFYSYgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFsSiQH//wAA//8AAG4SHgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAfhLJAIwSGACUEikB//8AAP//AAD//wAAphLqAP//AAD//wAArhK3ALMSGgL//wAAvBI5AMESBQD//wAA//8AAP//AAD//wAAxxLBAP//AAD//wAAzBImAv//AAD//wAA5hLdAf4SRAD//wAACBPeAf//AAD//wAA//8AAP//AAAfEykC//8AAP//AAAvE54B//8AAP//AAD//wAA//8AAP//AABCE1ACSRNwAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAE4TPAD//wAAUxOmAP//AAD//wAA//8AAP//AAD//wAAWBPJAF8T8gD//wAAZBPCAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGkT4AD//wAAehNsAP//AAD//wAA//8AAIoT+gCeE4wAoxOMAP//AACqEyAA//8AAP//AAD//wAArxNwAP//AAC4EzEA//8AALwTQwLWE8UB//8AAP//AADjE0AC//8AAP//AAD//wAA//8AAPgTbwH//wAAChSwAR8UKAD//wAA//8AAP//AAAtFI4B//8AAP//AAD//wAA//8AAP//AAD//wAAOhRUAkQUsQH//wAA//8AAP//AAD//wAAVBQ7Af//AAD//wAA//8AAP//AABpFOEA//8AAP//AAD//wAA//8AAHEUTgH//wAAfBRWAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAI4UDACTFHEB//8AALcU9gD//wAAvBSxAMEUZwD//wAA//8AAP//AADGFMMA//8AAP//AAD//wAAzRSnANsUGAD//wAA4BR6Af//AAD//wAA//8AAP//AAD0FLEA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPwU4QD//wAA//8AAAEVKgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAFhWhASAVAQH//wAA//8AACUVfwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABAFSAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEkVjwH//wAA//8AAP//AABQFcMB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFwV4wBkFRAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAB0FRcA//8AAP//AAD//wAAfRWYAP//AACCFc4AkxW4AJgV6wD//wAA//8AAP//AACkFVECwxU5AdAVmADcFdAA4RUJAv//AAD//wAA8hV2AfsVJwH//wAA//8AAP//AAD//wAADhacAf//AAD//wAAJBY+AP//AAD//wAA//8AAP//AAD//wAA//8AACkWJAL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEMWUwH//wAA//8AAFcWWwD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFwWMwD//wAAYBZbAP//AAD//wAA//8AAGkWlgD//wAA//8AAHUWAQB7FpAA//8AAIAW0QH//wAA//8AAIwWkAD//wAA//8AAP//AAD//wAAlhYJAP//AAD//wAAnBZRAf//AAD//wAA//8AAKUWyAD//wAA//8AAP//AAD//wAArxbsAP//AAD//wAA//8AAP//AAD//wAA//8AALQWnAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADIFjsA//8AAM0WMAH//wAA//8AANYWmQH//wAA6xbXAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD9FkIAAhf7AP//AAD//wAA//8AAP//AAAHF/sADhcjABMX/AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAGBfqAP//AAAdF4kA//8AAP//AAD//wAALRcsAv//AAD//wAA//8AAE8XuQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAFQXKgD//wAA//8AAP//AABmF5IB//8AAG4XQgD//wAA//8AAHYXdwGLFyMA//8AAJQXDwH//wAA//8AAP//AAD//wAA//8AAJ4XtAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAshf/AP//AAD//wAA//8AALcX6gH//wAA//8AAP//AADAF6cA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMMX0QD//wAA//8AAP//AAD//wAA//8AAP//AADIF6kA//8AAP//AAD//wAA//8AAM0XGgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOkXjgDuF18B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AABQYtgD//wAAHxiOAP//AAAoGPMA//8AAP//AAD//wAAMBioADoYAAD//wAA//8AAEIY7wD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABHGPkB//8AAP//AAD//wAAXRgCAv//AAD//wAAixjiAP//AAD//wAA//8AAP//AAD//wAAkBgkAJUYBwGeGKQA//8AAP//AAD//wAApRgtArkYBgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAyxhQAP//AADQGH8A//8AAP//AAD//wAA1xj/AP//AAD//wAA3xhgAP//AAD//wAA//8AAP//AAD//wAA//8AAOQYDwD//wAA//8AAP//AAD//wAA//8AAP//AADpGMAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP4YCAH//wAA//8AAP//AAD//wAABRlPAv//AAD//wAA//8AAP//AAAmGXkA//8AAP//AAD//wAA//8AAP//AAD//wAAKxk7AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1GSMC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEAZAQFJGUcC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGoZtQD//wAA//8AAP//AAD//wAAdBlZAf//AAD//wAA//8AAP//AAD//wAA//8AAJoZegD//wAA//8AAP//AAD//wAApBn4AKkZ7wD//wAA//8AALAZ8QD//wAA//8AAP//AAD//wAAuRmFAP//AAD//wAA//8AAP//AAD//wAAyBleAf//AADaGTAC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADxGfYA//8AAP//AAD//wAA//8AAPcZqAD//wAA/BnCAf//AAD//wAA//8AAAUaPQEqGggB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALxpNAVMasABYGvkAXRpoAP//AAD//wAA//8AAP//AABwGisBehqrAP//AAD//wAA//8AAP//AAB9GjoA//8AAP//AAD//wAA//8AAP//AAD//wAAhxpOAP//AAD//wAAjRpfAJIaSwH//wAA//8AAP//AAD//wAA//8AAJ0a5wCoGswB//8AAP//AACzGgcB//8AAP//AAD//wAAuBp8Af//AAD//wAA//8AAP//AAD//wAA0BotAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA2xp0AegaBwL//wAA//8AAP//AAD3GtAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP8aLwAEG60AChvBABobCgH//wAA//8AAP//AAD//wAA//8AAP//AAAlG7gBOBvkAP//AAD//wAA//8AAD0bJQD//wAA//8AAP//AAD//wAA//8AAEMbZQD//wAATBuXAVYbrABiG5sB//8AAP//AAD//wAA//8AAP//AABrG7wAcBtJAv//AAD//wAA//8AAP//AAD//wAAkRtAAZsbFQL//wAA//8AAP//AAD//wAA//8AAKYb+AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAK0bxwCyG4gB//8AAP//AAD//wAA//8AAP//AAD//wAA0BvfAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAN8bRwH//wAA//8AAOcbQgH//wAA//8AAP//AAD//wAA//8AAO8bowEDHO4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAgcPwD//wAADRwJAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAYHL4AHxyzAP//AAD//wAA//8AACkcNwL//wAA//8AAP//AAD//wAA//8AAD8cEwH//wAAThwVAf//AAD//wAA//8AAP//AABhHL4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAHEcMAD//wAAhxy6Af//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAlxxGAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADEHCQA//8AAP//AAD//wAAyhydAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADVHD4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADeHEYA//8AAOQcrQD//wAA//8AAP//AAD//wAA//8AAP//AAD6HKcB//8AAP//AAD//wAADB0bAP//AAAVHWAB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACkdsgE+HTgC//8AAP//AAD//wAA//8AAP//AABkHbsA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAaR2sAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAB6HTIAkB1GAP//AAD//wAA//8AAP//AAD//wAAlR1jAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAJodQwH//wAA//8AAP//AAD//wAA//8AAP//AAClHXgB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAsB2CAf//AAD//wAA//8AAP//AAD//wAA//8AALsdtADAHdoA//8AAP//AADFHa4B4x1NAv//AAAEHkgC//8AAP//AAD//wAA//8AACAesgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAALR7PAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA+HgMCSh7fAf//AAD//wAA//8AAP//AAD//wAAWx4SAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAF4e1gD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGMetQH//wAA//8AAP//AAD//wAA//8AAP//AAB+Hp4A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAI0eQwD//wAA//8AAP//AAD//wAA//8AAP//AACSHvQAlx6vAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACcHkMA//8AAP//AAD//wAA//8AAP//AACnHncA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAC5HnUA//8AAP//AAD//wAA//8AAMEeEgL//wAA0x7uAP//AAD//wAA3x79AP//AAD//wAA//8AAOQeTwD//wAA6h79AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA8h5JAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD3Hr0A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD/Hv4B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAwfuQD//wAA//8AAP//AAD//wAA//8AABYfMQD//wAA//8AAP//AAD//wAALB89ADgfeQH//wAA//8AAP//AAD//wAASx9PAP//AAD//wAAXR8UAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAYR/DAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAcB+6AHUfHwF+H+kA//8AAIkfYwH//wAA//8AAKEfQgK1HzkCxB9fAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADLH1IA//8AAP//AADPH8QA1R8bAv//AAD//wAA//8AAOgfhgD//wAA//8AAPQfpQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA+R+lAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAAMgrgAIIBIB//8AAP//AAD//wAA//8AAP//AAAbICgB//8AAP//AAD//wAA//8AAP//AAAtIC4C//8AAP//AAD//wAA//8AAP//AAA+IDMA//8AAP//AAD//wAA//8AAFQgsgBZIDsCaCAiAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAeyCLAf//AAD//wAA//8AAJMgVwH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKggxQC3IMIA//8AAP//AAD//wAA//8AAMQgSQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMwgSgD//wAA//8AAP//AADRICwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1CA2Av//AAD//wAA6CDoAP//AAD//wAA//8AAP//AAD0IFIA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD9IFEA//8AAP//AAD//wAA//8AAP//AAAFIQoB//8AAP//AAD//wAADCHPAP//AAAPIUoA//8AAP//AAD//wAA//8AAP//AAAXIR0C//8AACohPAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAyIdwA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAOSGRAf//AABNIV0B//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABpIY0B//8AAP//AAD//wAA//8AAP//AAD//wAAdyFYAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACWIbcA//8AAP//AAChIVQB//8AAP//AAD//wAA//8AAP//AAD//wAAtCETAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAuSEEAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAvyGoAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AANUhqgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPAhFgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA/iGwAP//AAD//wAA//8AAP//AAD//wAA//8AAAQibgH//wAA//8AABoixQD//wAA//8AACEiKgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AACYixAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADAirgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AADYi7AA+IhcB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAE8iEgD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABaIkQC//8AAP//AABwInIB//8AAP//AAD//wAAlCK/AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAsyJBAP//AAD//wAAviK0AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAziLPAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA4SJRAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD2IgIB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAHI8cA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAEyNFAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAB4j5AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAKiPxAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAvI/4A//8AAP//AAA4IwoA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAD4jtgH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAWyMEAf//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAGUjUAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABuI+YA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAfSPTAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACOI9oA//8AAJUjMwL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAqSP+AP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAK4jZAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALIjewH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAzCPwAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADRI84B//8AAP//AAD//wAA//8AAOIj8AD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADqI2AA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAPkjTAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP8jLwL//wAA//8AAP//AAD//wAA//8AABYkZAD//wAAHyQvAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA1JM0A//8AAP//AAD//wAA//8AAP//AABFJLgAVSRHAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAAWiQPAv//AABwJPkA//8AAP//AAD//wAAdySKAP//AAD//wAA//8AAP//AAD//wAA//8AAIckEAL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACqJGYA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACxJGMA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AALgkqQH//wAA//8AAMkkOAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAM4kwAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADVJMAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOkkQQD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAO0kcAH//wAA//8AAAMlQAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAAdJYMB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAA3JboA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAEElUgL//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABgJYUB//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AABzJUUC//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AACXJa8A//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAKwl1QD//wAA//8AAP//AAD//wAA//8AAP//AAC8JUgA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AADBJUcA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAMolaAH//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA1yVIAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAOslUwJsYW5hAGxpbmEAegB5aQBtbgBjbgBtYWthAHlpaWkAbWFuaQBpbmthbm5hZGEAY2kAbG8AbGFvAGxhb28Aenp6egBtaWFvAHllemkAaW5ua28AY28AbWUAbG9lAGdyYW4AcGkAbGluZWFyYQBtYXJrAGNhcmkAY2FyaWFuAHBvAG1lbmRla2lrYWt1aQBncmVrAHBlAG1lZXRlaW1heWVrAGlua2hhcm9zaHRoaQBnZW9yAGdyZWVrAG1ybwBtcm9vAGthbmEAbWVybwBtAGdvbm0AY2FrbQBpbm9zbWFueWEAaW5tYW5pY2hhZWFuAGluYXJtZW5pYW4AaW5tcm8AaW5taWFvAGMAaW5jaGFrbWEAY29tbW9uAG1hbmRhaWMAaW5teWFubWFyAGlubWFrYXNhcgBxYWFpAGluaWRlb2dyYXBoaWNzeW1ib2xzYW5kcHVuY3R1YXRpb24AaW5raG1lcgBjYW5zAHByZXBlbmRlZGNvbmNhdGVuYXRpb25tYXJrAGxtAG1hcmMAY29ubmVjdG9ycHVuY3R1YXRpb24AaW5ydW5pYwBpbmNhcmlhbgBpbmF2ZXN0YW4AY29tYmluaW5nbWFyawBpbmN1bmVpZm9ybW51bWJlcnNhbmRwdW5jdHVhdGlvbgBtZXJjAGluY2hvcmFzbWlhbgBwZXJtAGluYWhvbQBpbmlwYWV4dGVuc2lvbnMAaW5jaGVyb2tlZQBpbnNoYXJhZGEAbWFrYXNhcgBpbmFycm93cwBsYwBtYXNhcmFtZ29uZGkAaW5jdW5laWZvcm0AbWMAY2MAaW56YW5hYmF6YXJzcXVhcmUAbGluZXNlcGFyYXRvcgBhcm1uAHFtYXJrAGFybWkAaW5zYW1hcml0YW4AYXJtZW5pYW4AaW5tYXJjaGVuAGlubWFzYXJhbWdvbmRpAHFhYWMAcGMAaW5zY3JpcHRpb25hbHBhcnRoaWFuAGxhdG4AbGF0aW4AcmkAaW50aGFhbmEAaW5raG1lcnN5bWJvbHMAaW5rYXRha2FuYQBpbmN5cmlsbGljAGludGhhaQBpbmNoYW0AaW5rYWl0aGkAenMAbXRlaQBpbml0aWFscHVuY3R1YXRpb24AY3MAaW5zeXJpYWMAcGNtAGludGFrcmkAcHMAbWFuZABpbmthbmFleHRlbmRlZGEAbWVuZABtb2RpAGthdGFrYW5hAGlkZW8AcHJ0aQB5ZXppZGkAaW5pZGVvZ3JhcGhpY2Rlc2NyaXB0aW9uY2hhcmFjdGVycwB4aWRjb250aW51ZQBicmFpAGFzY2lpAHByaXZhdGV1c2UAYXJhYmljAGlubXlhbm1hcmV4dGVuZGVkYQBpbnJ1bWludW1lcmFsc3ltYm9scwBsZXR0ZXIAaW5uYW5kaW5hZ2FyaQBpbm1lZXRlaW1heWVrAGlub2xkbm9ydGhhcmFiaWFuAGluY2prY29tcGF0aWJpbGl0eWZvcm1zAGtuZGEAa2FubmFkYQBpbmNqa2NvbXBhdGliaWxpdHlpZGVvZ3JhcGhzAGwAaW5tb2RpAGluc3BlY2lhbHMAaW50cmFuc3BvcnRhbmRtYXBzeW1ib2xzAGlubWVuZGVraWtha3VpAGxldHRlcm51bWJlcgBpbm1lZGVmYWlkcmluAHhpZGMAaW5jaGVzc3N5bWJvbHMAaW5lbW90aWNvbnMAaW5saW5lYXJhAGlubGFvAGJyYWhtaQBpbm9sZGl0YWxpYwBpbm1pc2NlbGxhbmVvdXNtYXRoZW1hdGljYWxzeW1ib2xzYQBtb25nb2xpYW4AeGlkcwBwc2FsdGVycGFobGF2aQBncmxpbmsAa2l0cwBpbnN1bmRhbmVzZQBpbm9sZHNvZ2RpYW4AZ290aGljAGluYW5jaWVudHN5bWJvbHMAbWVyb2l0aWNjdXJzaXZlAGthbGkAY29udHJvbABwYXR0ZXJud2hpdGVzcGFjZQBpbmFkbGFtAHNrAGx0AGlubWFuZGFpYwBpbmNvbW1vbmluZGljbnVtYmVyZm9ybXMAaW5jamtjb21wYXRpYmlsaXR5aWRlb2dyYXBoc3N1cHBsZW1lbnQAc28AaWRjAGlub2xkc291dGhhcmFiaWFuAHBhbG0AaW5seWNpYW4AaW50b3RvAGlkc2JpbmFyeW9wZXJhdG9yAGlua2FuYXN1cHBsZW1lbnQAaW5jamtzdHJva2VzAHNvcmEAYmFtdW0AaW5vcHRpY2FsY2hhcmFjdGVycmVjb2duaXRpb24AaW5kb21pbm90aWxlcwBiYXRrAGdyZXh0AGJhdGFrAHBhdHdzAGlubWFsYXlhbGFtAGlubW9kaWZpZXJ0b25lbGV0dGVycwBpbnNtYWxsa2FuYWV4dGVuc2lvbgBiYXNzAGlkcwBwcmludABpbmxpbmVhcmJpZGVvZ3JhbXMAaW50YWl0aGFtAGlubXVzaWNhbHN5bWJvbHMAaW56bmFtZW5ueW11c2ljYWxub3RhdGlvbgBzYW1yAGluc3lsb3RpbmFncmkAaW5uZXdhAHNhbWFyaXRhbgBzAGpvaW5jAGluY29udHJvbHBpY3R1cmVzAGxpc3UAcGF1YwBpbm1pc2NlbGxhbmVvdXNzeW1ib2xzAGluYW5jaWVudGdyZWVrbXVzaWNhbG5vdGF0aW9uAGlubWlzY2VsbGFuZW91c3N5bWJvbHNhbmRhcnJvd3MAc20AaW5taXNjZWxsYW5lb3Vzc3ltYm9sc2FuZHBpY3RvZ3JhcGhzAGludWdhcml0aWMAcGQAaXRhbABhbG51bQB6aW5oAGlud2FyYW5nY2l0aQBpbmxhdGluZXh0ZW5kZWRhAGluc2F1cmFzaHRyYQBpbnRhaWxlAGlub2xkdHVya2ljAGlkY29udGludWUAaW5oYW5pZmlyb2hpbmd5YQBzYwBpZHN0AGlubGF0aW5leHRlbmRlZGUAbG93ZXIAYmFsaQBpbmhpcmFnYW5hAGluY2F1Y2FzaWFuYWxiYW5pYW4AaW5kZXNlcmV0AGJsYW5rAGluc3BhY2luZ21vZGlmaWVybGV0dGVycwBjaGVyb2tlZQBpbmx5ZGlhbgBwaG9lbmljaWFuAGNoZXIAYmVuZ2FsaQBtYXJjaGVuAGlud2FuY2hvAGdyYXBoZW1lbGluawBiYWxpbmVzZQBpZHN0YXJ0AGludGFtaWwAaW5tdWx0YW5pAGNoYW0AY2hha21hAGthaXRoaQBpbm1haGFqYW5pAGdyYXBoZW1lYmFzZQBpbm9naGFtAGNhc2VkAGlubWVldGVpbWF5ZWtleHRlbnNpb25zAGtob2praQBpbmFuY2llbnRncmVla251bWJlcnMAcnVucgBraGFyAG1hbmljaGFlYW4AbG93ZXJjYXNlAGNhbmFkaWFuYWJvcmlnaW5hbABpbm9sY2hpa2kAcGxyZABpbmV0aGlvcGljAHNpbmQAY3djbQBpbmVhcmx5ZHluYXN0aWNjdW5laWZvcm0AbGwAemwAaW5zaW5oYWxhAGlua2h1ZGF3YWRpAHhpZHN0YXJ0AHhkaWdpdABiaWRpYwBjaG9yYXNtaWFuAGluc2lkZGhhbQBpbmNvdW50aW5ncm9kbnVtZXJhbHMAYWhvbQBjaHJzAGtobXIAaW5vbGR1eWdodXIAaW5ncmFudGhhAGJhbXUAaW5zY3JpcHRpb25hbHBhaGxhdmkAZ29uZwBtb25nAGlubGF0aW5leHRlbmRlZGMAaW5uZXd0YWlsdWUAYWRsbQBpbm9zYWdlAGluZ2VuZXJhbHB1bmN0dWF0aW9uAGdlb3JnaWFuAGtoYXJvc2h0aGkAc2luaGFsYQBraG1lcgBzdGVybQBjYXNlZGxldHRlcgBtdWx0YW5pAGd1bmphbGFnb25kaQBtYXRoAGluY3lyaWxsaWNzdXBwbGVtZW50AGluZ2VvcmdpYW4AZ290aABpbmNoZXJva2Vlc3VwcGxlbWVudABnbGFnb2xpdGljAHF1b3RhdGlvbm1hcmsAdWlkZW8AaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmEAam9pbmNvbnRyb2wAcnVuaWMAaW5tb25nb2xpYW4AZW1vamkAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmUAZ3JhbnRoYQBpbnRpcmh1dGEAaW5oYXRyYW4AYWRsYW0AbHUAaW5raGl0YW5zbWFsbHNjcmlwdABrdGhpAGluZ3VybXVraGkAc3VuZGFuZXNlAGlub2xkaHVuZ2FyaWFuAHRha3JpAGludGFtaWxzdXBwbGVtZW50AG9yaXlhAGludmFpAGJyYWgAaW5taXNjZWxsYW5lb3VzdGVjaG5pY2FsAHZhaQB2YWlpAHNhdXIAZ3VydQB0YWlsZQBpbmhlcml0ZWQAcGF1Y2luaGF1AHphbmIAcHVuY3QAbGluYgBndXJtdWtoaQB0YWtyAGlubmFiYXRhZWFuAGlua2FuYnVuAGxvZ2ljYWxvcmRlcmV4Y2VwdGlvbgBpbmJoYWlrc3VraQBpbmNqa3VuaWZpZWRpZGVvZ3JhcGhzZXh0ZW5zaW9uYwBncmFwaGVtZWV4dGVuZABpbmVsYmFzYW4AaW5zb3Jhc29tcGVuZwBoYW4AaGFuaQBsaW1idQB1bmFzc2lnbmVkAHJhZGljYWwAaGFubwBsb3dlcmNhc2VsZXR0ZXIAY250cmwAaW5jamt1bmlmaWVkaWRlb2dyYXBocwBsaW5lYXJiAGluYW5hdG9saWFuaGllcm9nbHlwaHMAaGFudW5vbwBpbmtob2praQBpbmxhdGluZXh0ZW5kZWRhZGRpdGlvbmFsAGluZW5jbG9zZWRhbHBoYW51bWVyaWNzAGFuYXRvbGlhbmhpZXJvZ2x5cGhzAG4AZW1vamltb2RpZmllcgBzZABoaXJhAHNpZGQAbGltYgBiaGtzAHBobGkAbmFuZGluYWdhcmkAbm8Ac2F1cmFzaHRyYQBpbnRhbmdzYQBjd3QAYmhhaWtzdWtpAGluZ3JlZWthbmRjb3B0aWMAbmtvAG5rb28AdGVybQBvc2FnZQB4cGVvAHRuc2EAdGFuZ3NhAGlua2F5YWhsaQBwAGlub3JpeWEAaW55ZXppZGkAaW5hcmFiaWMAaW5waG9lbmljaWFuAGluc2hhdmlhbgBiaWRpY29udHJvbABpbmVuY2xvc2VkaWRlb2dyYXBoaWNzdXBwbGVtZW50AHdhcmEAbXVsdABpbm1lcm9pdGljaGllcm9nbHlwaHMAc2luaABzaGF2aWFuAGlua2FuZ3hpcmFkaWNhbHMAZW5jbG9zaW5nbWFyawBhcmFiAGluc2luaGFsYWFyY2hhaWNudW1iZXJzAGJyYWlsbGUAaW5oYW51bm9vAG9zbWEAYmVuZwBpbmJhc2ljbGF0aW4AaW5hcmFiaWNwcmVzZW50YXRpb25mb3Jtc2EAY3BtbgByZWdpb25hbGluZGljYXRvcgBpbmVuY2xvc2VkYWxwaGFudW1lcmljc3VwcGxlbWVudABlbW9qaW1vZGlmaWVyYmFzZQBpbmdyZWVrZXh0ZW5kZWQAbGVwYwBpbmRvZ3JhAGZvcm1hdABseWNpAGx5Y2lhbgBkaWEAaW5waGFpc3Rvc2Rpc2MAZGkAZGlhawB1bmtub3duAGdyYmFzZQBteW1yAG15YW5tYXIAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmQAZW1vZABpbmdlb21ldHJpY3NoYXBlcwBpbmN5cHJvbWlub2FuAGluc3VuZGFuZXNlc3VwcGxlbWVudAB0b3RvAGdsYWcAdGFpdmlldABhc2NpaWhleGRpZ2l0AG9kaQBwdW5jdHVhdGlvbgB2cwBzdW5kAGluc295b21ibwBpbmltcGVyaWFsYXJhbWFpYwBpbmJhdGFrAGlubGF0aW5leHRlbmRlZGQAaW5udXNodQBpbnRpYmV0YW4AaW5sb3dzdXJyb2dhdGVzAGhhdHJhbgBpbmJsb2NrZWxlbWVudHMAaW5zb2dkaWFuAGluZGluZ2JhdHMAaW5lbHltYWljAGluZGV2YW5hZ2FyaQBlbW9qaWNvbXBvbmVudABpbmthdGFrYW5hcGhvbmV0aWNleHRlbnNpb25zAGlkZW9ncmFwaGljAGNvcHRpYwBpbm51bWJlcmZvcm1zAGhhdHIAaW5jamtjb21wYXRpYmlsaXR5AGlua2FuYWV4dGVuZGVkYgBwYXR0ZXJuc3ludGF4AGF2ZXN0YW4AaW5hcmFiaWNleHRlbmRlZGEAc29nZGlhbgBzb2dvAGludGFuZ3V0AGNvcHQAZ3JhcGgAb2lkYwBpbmJ5emFudGluZW11c2ljYWxzeW1ib2xzAGluaW5zY3JpcHRpb25hbHBhcnRoaWFuAGRpYWNyaXRpYwBpbmluc2NyaXB0aW9uYWxwYWhsYXZpAGlubWF5YW5udW1lcmFscwBpbm15YW5tYXJleHRlbmRlZGIAaW50YWdzAGphdmEAY3BydABuYW5kAHBhdHN5bgB0YWxlAG9pZHMAc2VudGVuY2V0ZXJtaW5hbABpbXBlcmlhbGFyYW1haWMAdGVybWluYWxwdW5jdHVhdGlvbgBseWRpAGx5ZGlhbgBib3BvAGphdmFuZXNlAGN3bABpbmdlb21ldHJpY3NoYXBlc2V4dGVuZGVkAGlub2xkcGVyc2lhbgBpbm9ybmFtZW50YWxkaW5nYmF0cwBpbmJyYWlsbGVwYXR0ZXJucwBpbnZhcmlhdGlvbnNlbGVjdG9ycwBjYXNlaWdub3JhYmxlAGlueWlyYWRpY2FscwBpbm5vYmxvY2sAaW52ZXJ0aWNhbGZvcm1zAGluZXRoaW9waWNzdXBwbGVtZW50AHNoYXJhZGEAaW5iYWxpbmVzZQBpbnZlZGljZXh0ZW5zaW9ucwB3b3JkAGlubWlzY2VsbGFuZW91c21hdGhlbWF0aWNhbHN5bWJvbHNiAHRhbWwAb2xjawBpZHNiAG9sb3dlcgBkZWNpbWFsbnVtYmVyAGF2c3QAaW5jeXJpbGxpY2V4dGVuZGVkYQBvbGNoaWtpAHNocmQAaW50YWl4dWFuamluZ3N5bWJvbHMAaW50YWl2aWV0AHVnYXIAaW5jamtzeW1ib2xzYW5kcHVuY3R1YXRpb24AYm9wb21vZm8AaW5saXN1AGlub2xkcGVybWljAHNpZGRoYW0AemFuYWJhemFyc3F1YXJlAGFzc2lnbmVkAG1lZGYAY2xvc2VwdW5jdHVhdGlvbgBzYXJiAHNvcmFzb21wZW5nAGludmFyaWF0aW9uc2VsZWN0b3Jzc3VwcGxlbWVudABpbmhhbmd1bGphbW8AbWVkZWZhaWRyaW4AcGhhZwBpbmxpc3VzdXBwbGVtZW50AGluY29wdGljAGluc3lyaWFjc3VwcGxlbWVudABpbmhhbmd1bGphbW9leHRlbmRlZGEAY3lybABpbnNob3J0aGFuZGZvcm1hdGNvbnRyb2xzAGluY3lyaWxsaWNleHRlbmRlZGMAZ3VqcgBjd3UAZ3VqYXJhdGkAc3BhY2luZ21hcmsAYWxwaGEAbWx5bQBpbnBhbG15cmVuZQBtYWxheWFsYW0Ac3BhY2UAaW5sZXBjaGEAcGFsbXlyZW5lAHNveW8AbWVyb2l0aWNoaWVyb2dseXBocwB4c3V4AGludGVsdWd1AGluZGV2YW5hZ2FyaWV4dGVuZGVkAGlubWVyb2l0aWNjdXJzaXZlAGRzcnQAdGhhYQB0aGFhbmEAYnVnaQB0aGFpAHNvZ2QAdGl0bGVjYXNlbGV0dGVyAGlubWF0aGVtYXRpY2FsYWxwaGFudW1lcmljc3ltYm9scwBvcmtoAGNhdWNhc2lhbmFsYmFuaWFuAGluYmFtdW0AZGVzZXJldABpbmdlb3JnaWFuc3VwcGxlbWVudABidWdpbmVzZQBzZXBhcmF0b3IAaW5zbWFsbGZvcm12YXJpYW50cwB0aXJoAGluYnJhaG1pAG5kAHBobngAbmV3YQBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3MAbWFoagBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3Nmb3JzeW1ib2xzAG9sZHBlcnNpYW4AbWFoYWphbmkAdGFpdGhhbQBuZXd0YWlsdWUAbmV3bGluZQBzeXJjAGlubW9uZ29saWFuc3VwcGxlbWVudABpbnVuaWZpZWRjYW5hZGlhbmFib3JpZ2luYWxzeWxsYWJpY3NleHRlbmRlZGEAc2hhdwBidWhkAHZpdGhrdXFpAG51bWJlcgBpbnN1dHRvbnNpZ253cml0aW5nAHZhcmlhdGlvbnNlbGVjdG9yAGV0aGkAbGVwY2hhAHRpcmh1dGEAcm9oZwBhaGV4AGluY29wdGljZXBhY3RudW1iZXJzAHdhbmNobwBpbmNqa3VuaWZpZWRpZGVvZ3JhcGhzZXh0ZW5zaW9uZwBraG9qAGN1bmVpZm9ybQBpbmR1cGxveWFuAHVnYXJpdGljAGluc3ltYm9sc2FuZHBpY3RvZ3JhcGhzZXh0ZW5kZWRhAG9sZHBlcm1pYwBpbmNvbWJpbmluZ2RpYWNyaXRpY2FsbWFya3NzdXBwbGVtZW50AGtodWRhd2FkaQB0YW5nAHN5cmlhYwB0YWdiYW53YQBtb2RpZmllcmxldHRlcgBpbmN1cnJlbmN5c3ltYm9scwBpbm55aWFrZW5ncHVhY2h1ZWhtb25nAHRhbWlsAHRhbHUAaW5nb3RoaWMAaW51bmlmaWVkY2FuYWRpYW5hYm9yaWdpbmFsc3lsbGFiaWNzAHdjaG8AaW5jb21iaW5pbmdkaWFjcml0aWNhbG1hcmtzZXh0ZW5kZWQAb2dhbQB0ZWx1AGlkc3RyaW5hcnlvcGVyYXRvcgBpbmJlbmdhbGkAbmwAc3Vycm9nYXRlAGViYXNlAGhhbmcAaW5idWdpbmVzZQBtYXRoc3ltYm9sAGludml0aGt1cWkAdml0aABpbmNqa3JhZGljYWxzc3VwcGxlbWVudABpbmd1amFyYXRpAGluZ2xhZ29saXRpYwBpbmd1bmphbGFnb25kaQBwaGFnc3BhAGN3Y2YAbmNoYXIAb3RoZXJpZGNvbnRpbnVlAHdoaXRlc3BhY2UAaW5saW5lYXJic3lsbGFiYXJ5AHNnbncAb3RoZXIAaGlyYWdhbmEAaW5waGFnc3BhAG90aGVybnVtYmVyAGlucmVqYW5nAG9zZ2UAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmIAaW50YWdhbG9nAGluYmFzc2F2YWgAdGFuZ3V0AGhtbmcAaW5lbmNsb3NlZGNqa2xldHRlcnNhbmRtb250aHMAY3VycmVuY3lzeW1ib2wAaW5saW1idQBpbmJ1aGlkAGluZXRoaW9waWNleHRlbmRlZGEAc3lsbwBkYXNoAHdhcmFuZ2NpdGkAb2FscGhhAG9sZGl0YWxpYwBpbm90dG9tYW5zaXlhcW51bWJlcnMAc3BhY2VzZXBhcmF0b3IAaW5sYXRpbjFzdXBwbGVtZW50AG90aGVyYWxwaGFiZXRpYwBjaGFuZ2Vzd2hlbmNhc2VtYXBwZWQAaW5hZWdlYW5udW1iZXJzAGludW5pZmllZGNhbmFkaWFuYWJvcmlnaW5hbHN5bGxhYmljc2V4dGVuZGVkAGJ1aGlkAGluamF2YW5lc2UAY3lyaWxsaWMAZG9ncmEAbm9uY2hhcmFjdGVyY29kZXBvaW50AGluaGFuZ3Vsc3lsbGFibGVzAGJhc3NhdmFoAGlubGV0dGVybGlrZXN5bWJvbHMAaW5jb21iaW5pbmdoYWxmbWFya3MAaW5hcmFiaWNtYXRoZW1hdGljYWxhbHBoYWJldGljc3ltYm9scwBvcnlhAGlucHJpdmF0ZXVzZWFyZWEAY2hhbmdlc3doZW50aXRsZWNhc2VkAGRvZ3IAaGVicgBpbnRhZ2JhbndhAGludGlmaW5hZ2gAaW5ib3BvbW9mbwBuYXJiAHJqbmcAaW5hbHBoYWJldGljcHJlc2VudGF0aW9uZm9ybXMAaW5jamt1bmlmaWVkaWRlb2dyYXBoc2V4dGVuc2lvbmYAaW5zeW1ib2xzZm9ybGVnYWN5Y29tcHV0aW5nAG9sZGh1bmdhcmlhbgBmaW5hbHB1bmN0dWF0aW9uAGlucGF1Y2luaGF1AGlucHNhbHRlcnBhaGxhdmkAenAAcGhscABpbmFyYWJpY3ByZXNlbnRhdGlvbmZvcm1zYgBub25zcGFjaW5nbWFyawBkZXZhAHRhdnQAaG1ucABkZXZhbmFnYXJpAGtoaXRhbnNtYWxsc2NyaXB0AGtheWFobGkAaW5iYW11bXN1cHBsZW1lbnQAc3lsb3RpbmFncmkAdGlidABlcHJlcwB0aWJldGFuAGVsYmEAb3NtYW55YQBpbmRpdmVzYWt1cnUAb2xkdHVya2ljAGNoYW5nZXN3aGVubG93ZXJjYXNlZABjeXByb21pbm9hbgBpbmV0aGlvcGljZXh0ZW5kZWQAZW1vamlwcmVzZW50YXRpb24AYW55AG90aGVybG93ZXJjYXNlAG91Z3IAaW5oZWJyZXcAc29mdGRvdHRlZABpbm1hdGhlbWF0aWNhbG9wZXJhdG9ycwBpbmFsY2hlbWljYWxzeW1ib2xzAGlubWFoam9uZ3RpbGVzAGhhbmd1bABleHQAb21hdGgAaW50YW5ndXRjb21wb25lbnRzAG90aGVybGV0dGVyAG5iYXQAbmFiYXRhZWFuAG5zaHUAcGFyYWdyYXBoc2VwYXJhdG9yAGluYXJhYmljZXh0ZW5kZWRiAGlubGF0aW5leHRlbmRlZGcAY2hhbmdlc3doZW51cHBlcmNhc2VkAGh1bmcAaW5wbGF5aW5nY2FyZHMAaW5hcmFiaWNzdXBwbGVtZW50AGlueWlqaW5naGV4YWdyYW1zeW1ib2xzAGlucGhvbmV0aWNleHRlbnNpb25zAG90aGVydXBwZXJjYXNlAG90aGVyaWRzdGFydABlbGJhc2FuAGVseW0AY2YAaW5pbmRpY3NpeWFxbnVtYmVycwBvdGhlcnN5bWJvbABleHRlbmRlcgBleHRwaWN0AHdzcGFjZQBwZgBlbHltYWljAGludGFuZ3V0c3VwcGxlbWVudABjeXByaW90AHN5bWJvbABpbmN5cmlsbGljZXh0ZW5kZWRiAGluc3VwZXJzY3JpcHRzYW5kc3Vic2NyaXB0cwBpbnlpc3lsbGFibGVzAGlucGhvbmV0aWNleHRlbnNpb25zc3VwcGxlbWVudABvbGRzb2dkaWFuAGluZ2VvcmdpYW5leHRlbmRlZABobHV3AGRpZ2l0AGluaGFuZ3VsamFtb2V4dGVuZGVkYgBpbmhpZ2hwcml2YXRldXNlc3Vycm9nYXRlcwBpbnBhaGF3aGhtb25nAG9naGFtAGluc3VwcGxlbWVudGFsYXJyb3dzYQBvdXBwZXIAYWdoYgBvdGhlcm1hdGgAbnVzaHUAc295b21ibwBpbmxhdGluZXh0ZW5kZWRiAGFscGhhYmV0aWMAaW5zdXBwbGVtZW50YWxhcnJvd3NjAGluc3VwcGxlbWVudGFsbWF0aGVtYXRpY2Fsb3BlcmF0b3JzAG90aGVyZGVmYXVsdGlnbm9yYWJsZWNvZGVwb2ludABkZXByZWNhdGVkAG9sZG5vcnRoYXJhYmlhbgBpbmN5cHJpb3RzeWxsYWJhcnkAZXh0ZW5kZWRwaWN0b2dyYXBoaWMAdW5pZmllZGlkZW9ncmFwaABwYWhhd2hobW9uZwBkaXZlc2FrdXJ1AHNpZ253cml0aW5nAHRhZ2IAdGlmaW5hZ2gAdXBwZXIAaW5oYWxmd2lkdGhhbmRmdWxsd2lkdGhmb3JtcwB1cHBlcmNhc2UAZXRoaW9waWMAbW9kaWZpZXJzeW1ib2wAb3RoZXJwdW5jdHVhdGlvbgByZWphbmcAaW5ldGhpb3BpY2V4dGVuZGVkYgB0Zm5nAGhleABpbnN1cHBsZW1lbnRhbHB1bmN0dWF0aW9uAHRnbGcAaW5sYXRpbmV4dGVuZGVkZgB0YWdhbG9nAGhhbmlmaXJvaGluZ3lhAGVjb21wAGluZ2xhZ29saXRpY3N1cHBsZW1lbnQAaGV4ZGlnaXQAY2hhbmdlc3doZW5jYXNlZm9sZGVkAGRhc2hwdW5jdHVhdGlvbgBvbGRzb3V0aGFyYWJpYW4AZHVwbABpbmVneXB0aWFuaGllcm9nbHlwaHMAdGVsdWd1AHVwcGVyY2FzZWxldHRlcgBpbmVneXB0aWFuaGllcm9nbHlwaGZvcm1hdGNvbnRyb2xzAGh5cGhlbgBoZWJyZXcAaW5oaWdoc3Vycm9nYXRlcwB6eXl5AG9ncmV4dABvdGhlcmdyYXBoZW1lZXh0ZW5kAGRlcABpbnN1cHBsZW1lbnRhbGFycm93c2IAZGVmYXVsdGlnbm9yYWJsZWNvZGVwb2ludABpbmhhbmd1bGNvbXBhdGliaWxpdHlqYW1vAG9sZHV5Z2h1cgBpbnN1cHBsZW1lbnRhcnlwcml2YXRldXNlYXJlYWEAaW5ib3BvbW9mb2V4dGVuZGVkAGluc3VwcGxlbWVudGFsc3ltYm9sc2FuZHBpY3RvZ3JhcGhzAG55aWFrZW5ncHVhY2h1ZWhtb25nAG9wZW5wdW5jdHVh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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7KBQnJiUOBSQUBxkiHSAQOx87OwIBOxkPOw47Oxw7Ajs7Ows7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Oxg7Fjs7Czs7Ozs7BzsAOzsQOwE7OxA7OzsPOzs7Bjs7OzsAOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OwYDDg4ODg4OAQ4ODg4ODg4ODg4ADg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgAODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgQODgUODgQODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgoODg4ODgkOAQ4ODg4ODg4ODg4OAA4ODggODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg44ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4OAADChk4OB4AODgAFDg4OA84OBQ4HjgAADg4ODg4ODg4Dzg4ODg4GTgKODg4OAU4ADgAOAU4OBQ4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODgAAwoZODgeADg4ABQ4ODgPODgUOB44AAA4ODg4ODg4OA84ODg4OBk4Cjg4ODgFOAA4ADgFODgUODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4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AGwHAQBKbgEAzw8BABYBAADMAAEA2iwAAD8LAQDaBAAAwwQBANoeAACECAEA2h8AAF8JAQC8JAAA1AkBAJoDAAAKAwEAxBAAAMMLAQDaAAAAmQABABQEAQCnDQEAFCwAAEwKAQAUBAAAjQMBABQeAABpBwEAuiQAAM4JAQAUAQAAyQABAP///////wAAwhAAAL0LAQCOAwAARwMBABoEAQC5DQEAGiwAAF4KAQAaBAAAoAMBABoeAAByBwEAGh8AANsIAQAaAQAA0gABAP///////wAAtiQAAMIJAQD///////8AAP///////wAAigMAAOYCAQAYBAEAsw0BABgsAABYCgEAGAQAAJoDAQAYHgAAbwcBABgfAADVCAEAGAEAAM8AAQAOBAEAlQ0BAA4sAAA6CgEADgQAABEEAQAOHgAAYAcBAA4fAADPCAEADgEAAMAAAQAC6QEAFxABAP///////wAAxyQAAPUJAQAMBAEAjw0BAAwsAAA0CgEADAQAAAsEAQAMHgAAXQcBAAwfAADJCAEADAEAAL0AAQAIBAEAgw0BAAgsAAAoCgEACAQAAP8DAQAIHgAAVwcBAAgfAAC9CAEACAEAALcAAQAGBAEAfQ0BAAYsAAAiCgEABgQAAPkDAQAGHgAAVAcBAP///////wAABgEAALQAAQD///////8AAAIFAAD/BAEABAQBAHcNAQAELAAAHAoBAAQEAADzAwEABB4AAFEHAQD///////8AAAQBAACxAAEAAAQBAGsNAQAALAAAEAoBAAAEAADnAwEAAB4AAEsHAQD///////8AAAABAACrAAEA////////AAB1BQEAXg4BAJQFAQCyDgEAKiwAAI4KAQAqBAAA1AMBACoeAACKBwEAKh8AAO0IAQAqAQAA6gABACqnAABLDAEAwgMAACYDAQAmBAEA3Q0BACYsAACCCgEAJgQAAMgDAQAmHgAAhAcBALcEAQD4DQEAJgEAAOQAAQAmpwAARQwBAJ4DAAAYAwEAtx8AAAoAAwC3AQAAwgIBAJIFAQCvDgEAt6sAABUHAQD///////8AALccAAArBgEAewEAAFwBAQB7pwAAtAwBAHurAABhBgEAjAMAAEQDAQAuLAAAmgoBAC4EAADhAwEALh4AAJAHAQAuHwAA+QgBAC4BAADwAAEALqcAAFEMAQCPHwAApAACAI8BAABxAgEA////////AACPqwAAnQYBAAL7AAAMAAIAiAMAAOACAQCPDAEA5Q4BAP///////wAALCwAAJQKAQAsBAAA2wMBACweAACNBwEALB8AAPMIAQAsAQAA7QABACynAABODAEAKCwAAIgKAQAoBAAAzgMBACgeAACHBwEAKB8AAOcIAQAoAQAA5wABACinAABIDAEA////////AAD///////8AAIYFAQCODgEAJAQBANcNAQAkLAAAfAoBACQEAADCAwEAJB4AAIEHAQBHBQAAhgUBACQBAADhAAEAJKcAAEIMAQAiBAEA0Q0BACIsAAB2CgEAIgQAALoDAQAiHgAAfgcBADP/AABTDQEAIgEAAN4AAQAipwAAPwwBANoDAABTAwEAwAQBABMOAQDALAAAGAsBAMAEAACxBAEAwB4AAF0IAQAx/wAATQ0BADsCAABBAgEAwKcAAAINAQCzBAEA7A0BAMAAAABNAAEA////////AAAqIQAAGwABALMfAAA+AAIAswEAAJIBAQCzpwAAGg0BALOrAAAJBwEA////////AACzHAAAHwYBAP///////wAAJiEAADoDAQA1BQAAUAUBALcQAACcCwEAsQQBAOYNAQD///////8AALcYAQCWDwEASgIAAFMCAQCOBQEAow4BALEBAAC5AgEAsacAALACAQCxqwAAAwcBAP///////wAAsRwAABkGAQCxDAEASw8BADwFAABlBQEA////////AAAcAgAAIAIBAE4eAADABwEAigUBAJoOAQBOAQAAGgEBAE6nAAB+DAEAqx8AAOAAAgBOAAAAJQABAKunAAB3AgEAq6sAAPEGAQAWAgAAFwIBAKscAAAHBgEAqwwBADkPAQCXHgAAIgACAJcfAADMAAIAlwEAAIkCAQBOpgAA5QsBAJerAAC1BgEAggUBAIIOAQCXHAAAywUBAJcMAQD9DgEA////////AABObgEA2w8BAHEFAQBSDgEAFAIAABQCAQDEJAAA7AkBAH4sAABEAgEAfgQAAEUEAQB+HgAACQgBACr/AAA4DQEAgAUBAHwOAQB+pwAAtwwBAH6rAABqBgEAGgIAAB0CAQDCJAAA5gkBAKkfAADWAAIAqQEAAK0CAQAm/wAALA0BAKmrAADrBgEAjQUBAKAOAQCpHAAAAQYBAKkMAQAzDwEA////////AAD///////8AABgCAAAaAgEAwBAAALcLAQAgBAEAyw0BACAsAABwCgEAIAQAALMDAQAgHgAAewcBAA4CAAALAgEAIAEAANsAAQCzEAAAkAsBAP///////wAALv8AAEQNAQCzGAEAig8BAP///////wAAkR8AAK4AAgCRAQAAcQEBAAwCAAAIAgEAkasAAKMGAQD///////8AAJEcAAC5BQEAkQwBAOsOAQD///////8AAAgCAAACAgEAsRAAAIoLAQDVAQAAuQEBACz/AAA+DQEAsRgBAIQPAQDVAAAAjQABAAYCAAD/AQEAjwMAAEoDAQD///////8AACj/AAAyDQEA1CwAADYLAQDUBAAAugQBANQeAAB7CAEAjAUBAJ0OAQAEAgAA/AEBAKsQAAB4CwEAOwUAAGIFAQDUAAAAigABAKsYAQByDwEAJP8AACYNAQAAAgAA9gEBAP///////wAA////////AAAc6QEAZRABAP///////wAAiAUBAJQOAQAi/wAAIA0BAP///////wAAKgIAADICAQD///////8AAP4EAAD5BAEA/h4AALoIAQAW6QEAUxABAP4BAADzAQEA////////AABKBQAAjwUBACYCAAAsAgEAHgQBAMUNAQAeLAAAagoBAB4EAACsAwEAHh4AAHgHAQD///////8AAB4BAADYAAEA////////AACpEAAAcgsBABwFAAAmBQEAFOkBAE0QAQCpGAEAbA8BANIEAQBJDgEA0iwAADMLAQDSBAAAtwQBANIeAAB4CAEA0h8AABQAAwAuAgAAOAIBABYFAAAdBQEAGukBAF8QAQDSAAAAhAABAKcfAAD0AAIApwEAAIkBAQD///////8AAKerAADlBgEA////////AACnHAAA+wUBAKcMAQAtDwEA////////AAD///////8AABjpAQBZEAEALAIAADUCAQAUBQAAGgUBAHwEAABCBAEAfB4AAAYIAQAzBQAASgUBAA7pAQA7EAEAKAIAAC8CAQB8qwAAZAYBAEgeAAC3BwEASB8AABcJAQAaBQAAIwUBAEinAAB1DAEAMQUAAEQFAQBIAAAAFQABAAzpAQA1EAEAaywAAK8KAQAkAgAAKQIBAKsDAABBAwEAax8AAD4JAQD///////8AAAjpAQApEAEAGAUAACAFAQBIpgAA2wsBACICAAAmAgEA////////AACXAwAA/QIBAAbpAQAjEAEADgUAABEFAQBIbgEAyQ8BAP///////wAAVh4AAMwHAQBWHwAAPgADAFYBAAAmAQEAVqcAAIoMAQAE6QEAHRABAFYAAAA+AAEADAUAAA4FAQD///////8AABb7AAB9AAIA////////AAAA6QEAERABAP///////wAACAUAAAgFAQD///////8AAFamAADxCwEA////////AACpAwAAOgMBAP///////wAABgUAAAUFAQD///////8AAFZuAQDzDwEA////////AAAU+wAAbQACAP///////wAAtyQAAMUJAQD///////8AAAQFAAACBQEA4iwAAEsLAQDiBAAAzwQBAOIeAACQCAEA4h8AACQAAwDiAQAAzgEBAAAFAAD8BAEATgIAAFkCAQCnEAAAbAsBAP///////wAA////////AACnGAEAZg8BAJEDAADpAgEA////////AAAqBQAAOwUBAFQeAADJBwEAVB8AADkAAwBUAQAAIwEBAFSnAACHDAEA////////AABUAAAAOAABANUDAAAwAwEAJgUAADUFAQA5HwAAAgkBADkBAAD8AAEAEgQBAKENAQASLAAARgoBABIEAACGAwEAEh4AAGYHAQBUpgAA7gsBABIBAADGAAEAEAQBAJsNAQAQLAAAQAoBABAEAACAAwEAEB4AAGMHAQBUbgEA7Q8BABABAADDAAEA////////AABrIQAAsAkBAC4FAABBBQEAjwUBAKYOAQA/HwAAFAkBAD8BAAAFAQEABvsAAB0AAgBSHgAAxgcBAFIfAAA0AAMAUgEAACABAQBSpwAAhAwBAP///////wAAUgAAADEAAQD///////8AAAT7AAAFAAMA/gMAANcCAQAsBQAAPgUBACACAAB9AQEA////////AADAJAAA4AkBAAD7AAAEAAIAUqYAAOsLAQAoBQAAOAUBAFAeAADDBwEAUB8AAFQAAgBQAQAAHQEBAFCnAACBDAEAUm4BAOcPAQBQAAAAKwABAP///////wAAygQBADEOAQDKLAAAJwsBACQFAAAyBQEAyh4AAGwIAQDKHwAAWQkBAMoBAACpAQEA////////AABQpgAA6AsBAMoAAABsAAEAIgUAAC8FAQCnAwAANAMBAPAEAADkBAEA8B4AAKUIAQBQbgEA4Q8BAPABAAAUAAIA2CwAADwLAQDYBAAAwAQBANgeAACBCAEA2B8AAH0JAQD///////8AANinAAAUDQEA////////AADYAAAAkwABANYsAAA5CwEA1gQAAL0EAQDWHgAAfggBANYfAABMAAIA////////AADWpwAAEQ0BAP///////wAA1gAAAJAAAQDIBAEAKw4BAMgsAAAkCwEAuQQBAP4NAQDIHgAAaQgBAMgfAABTCQEAyAEAAKUBAQC5HwAAegkBAP///////wAAyAAAAGYAAQC5qwAAGwcBAP///////wAAuRwAADEGAQAeAgAAIwIBAMYEAQAlDgEAxiwAACELAQD///////8AAMYeAABmCAEAxh8AAEMAAgBOBQAAmwUBAManAABIBwEAxQQBACIOAQDGAAAAYAABAMUEAACiBAEAuwQBAAQOAQC1BAEA8g0BAMUBAAChAQEAxacAAKoCAQC7HwAAUAkBAMUAAABcAAEAtQEAAJUBAQC7qwAAIQcBALWrAAAPBwEAtQAAABEDAQC1HAAAJQYBAK8fAAD0AAIArwEAAI8BAQD///////8AAK+rAAD9BgEAaSwAAKwKAQCvHAAAEwYBAK8MAQBFDwEAaR8AADgJAQB+BQEAdg4BACDpAQBxEAEA////////AAClHwAA6gACAP///////wAASAIAAFACAQClqwAA3wYBAOIDAABfAwEApRwAAPUFAQClDAEAJw8BAP///////wAAOf8AAGUNAQCjHwAA4AACAP///////wAA////////AACjqwAA2QYBAKEfAADWAAIAoxwAAO8FAQCjDAEAIQ8BAKGrAADTBgEA////////AAChHAAA6QUBAKEMAQAbDwEAIAUAACwFAQCHHwAApAACAIcBAABrAQEA////////AACHqwAAhQYBAJEFAQCsDgEAhxwAABoEAQCHDAEAzQ4BAP///////wAA////////AAByLAAAsgoBAHIEAAAzBAEAch4AAPcHAQBNHwAAJgkBAHIBAABQAQEAuRAAAKILAQByqwAARgYBAE0AAAAiAAEAuRgBAJwPAQBwLAAAYgIBAHAEAAAwBAEAcB4AAPQHAQD///////8AAHABAABNAQEA////////AABwqwAAQAYBAG4sAACbAgEAbgQAAC0EAQBuHgAA8QcBAG4fAABHCQEAbgEAAEoBAQBupwAArgwBAE1uAQDYDwEAxRAAAMYLAQAe6QEAaxABAEUBAAAOAQEAuxAAAKgLAQC1EAAAlgsBAEUAAAAMAAEAuxgBAKIPAQC1GAEAkA8BAO4EAADhBAEA7h4AAKIIAQCvEAAAhAsBAO4BAADgAQEA////////AACvGAEAfg8BAGwEAAAqBAEAbB4AAO4HAQBsHwAAQQkBAGwBAABHAQEAbKcAAKsMAQBpIQAAqgkBAEVuAQDADwEApRAAAGYLAQD///////8AAB4FAAApBQEApRgBAGAPAQASAgAAEQIBAP///////wAA8AMAAAoDAQD///////8AAGymAAASDAEAoxAAAGALAQAQAgAADgIBANgDAABQAwEAoxgBAFoPAQChEAAAWgsBAP///////wAA////////AAChGAEAVA8BAP///////wAA////////AADWAwAAHgMBAGoEAAAnBAEAah4AAOsHAQBqHwAAOwkBAGoBAABEAQEAaqcAAKgMAQBoBAAAJAQBAGgeAADoBwEAaB8AADUJAQBoAQAAQQEBAGinAAClDAEAfAUBAHAOAQD///////8AAP///////wAARh4AALQHAQD///////8AAGqmAAAPDAEARqcAAHIMAQBIBQAAiQUBAEYAAAAPAAEA////////AABopgAADAwBAGQsAACkAgEAZAQAAB4EAQBkHgAA4gcBAP///////wAAZAEAADsBAQBkpwAAnwwBAEamAADYCwEA3iwAAEULAQDeBAAAyQQBAN4eAACKCAEAbiEAALkJAQDeAQAAyAEBAEZuAQDDDwEA////////AADeAAAApQABADAeAACTBwEAZKYAAAYMAQAwAQAABQECAFYFAACzBQEAYiwAAJICAQBiBAAAGgQBAGIeAADfBwEA////////AABiAQAAOAEBAGKnAACcDAEA////////AAD///////8AAP///////wAApQMAAC0DAQD///////8AAGwhAACzCQEARB4AALEHAQD///////8AAP///////wAARKcAAG8MAQBipgAAAwwBAEQAAAAJAAEAowMAACYDAQB5AQAAWQEBAHmnAACxDAEAeasAAFsGAQChAwAAIgMBAGAsAACgCgEAYAQAABcEAQBgHgAA2wcBAESmAADVCwEAYAEAADUBAQBgpwAAmQwBAP///////wAA////////AAAS6QEARxABAERuAQC9DwEAMh4AAJYHAQD///////8AADIBAADzAAEAMqcAAFQMAQAQ6QEAQRABAGohAACtCQEAYKYAAAAMAQBUBQAArQUBAP///////wAAcgMAAM4CAQBoIQAApwkBAM0EAQA6DgEA////////AADNBAAArgQBADkFAABcBQEA////////AADNAQAArQEBAP///////wAAcAMAAMsCAQDNAAAAdQABABIFAAAXBQEAzAQBADcOAQDMLAAAKgsBAM8EAQBADgEAzB4AAG8IAQDMHwAARwACABAFAAAUBQEAZCEAAJsJAQDPAQAAsAEBAMwAAAByAAEARQMAAAUDAQDPAAAAewABAD8FAABuBQEAywQBADQOAQDKJAAA/gkBAMsEAACrBAEAUgUAAKcFAQDLHwAAXAkBAMsBAACpAQEA7gMAAHEDAQDDBAEAHA4BAMsAAABvAAEAwwQAAJ8EAQDJBAEALg4BAMMfAABHAAIAyQQAAKgEAQBiIQAAlQkBAMkfAABWCQEAwwAAAFYAAQDJpwAACw0BAL8EAQAQDgEAyQAAAGkAAQBQBQAAoQUBAFUAAAA7AAEAvQQBAAoOAQB2BAAAOQQBAHYeAAD9BwEAv6sAAC0HAQB2AQAAVgEBAL8cAAA9BgEAdqsAAFIGAQC9qwAAJwcBAP///////wAAvRwAADcGAQD///////8AAMgkAAD4CQEA////////AAC5JAAAywkBAFVuAQDwDwEAYCEAAI8JAQCfHwAAzAACAJ8BAAChAgEAwQQBABYOAQCfqwAAzQYBAMEEAACcBAEAnxwAAOMFAQCfDAEAFQ8BADIhAACMCQEAxiQAAPIJAQBFAgAAvwIBAMEAAABQAAEAnR8AAMIAAgCdAQAAngIBAP///////wAAnasAAMcGAQDFJAAA7wkBAJ0cAADdBQEAnQwBAA8PAQC7JAAA0QkBAM0QAADMCwEAmx4AANsHAQCbHwAAuAACADD/AABKDQEA////////AACbqwAAwQYBAEMBAAALAQEAmxwAANcFAQCbDAEACQ8BAEMAAAAGAAEAmR4AACoAAgCZHwAArgACAN4DAABZAwEA////////AACZqwAAuwYBAJUfAADCAAIAmRwAANEFAQCZDAEAAw8B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ANEAAACBAAEA////////AAD0AwAAAAMBABUEAQCqDQEAFSwAAE8KAQAVBAAAkQMBABMEAQCkDQEAEywAAEkKAQATBAAAigMBAOwDAABuAwEAIf8AAB0NAQAPBAEAmA0BAA8sAAA9CgEADwQAABQEAQD///////8AAA8fAADSCAEA////////AADBJAAA4wkBAFUFAACwBQEA6gMAAGsDAQD///////8AAA0EAQCSDQEADSwAADcKAQANBAAADgQBAHYFAQBhDgEADR8AAMwIAQD///////8AAOgDAABoAwEA////////AAD///////8AADb/AABcDQEACwQBAIwNAQALLAAAMQoBAAsEAAAIBAEA////////AAALHwAAxggBAP///////wAA////////AADmAwAAZQMBAAkEAQCGDQEACSwAACsKAQAJBAAAAgQBAOQDAABiAwEACR8AAMAIAQAFBAEAeg0BAAUsAAAfCgEABQQAAPYDAQADBAEAdA0BAAMsAAAZCgEAAwQAAPADAQD///////8AANwDAABWAwEA////////AAArIQAAXAABAAEEAQBuDQEAASwAABMKAQABBAAA6gMBAPwEAAD2BAEA/B4AALcIAQD8HwAAYAACAPwBAADwAQEA////////AAD///////8AAEMFAAB6BQEA+AQAAPAEAQD4HgAAsQgBAPgfAABlCQEA+AEAAOoBAQAnBAEA4A0BACcsAACFCgEAJwQAAMsDAQCVBQEAtQ4BAPYEAADtBAEA9h4AAK4IAQD2HwAAXAACAPYBAAB0AQEAegQAAD8EAQB6HgAAAwgBAEsfAAAgCQEA////////AAA+AgAApgoBAHqrAABeBgEASwAAABsAAQAfBAEAyA0BAB8sAABtCgEAHwQAALADAQCDBQEAhQ4BAP///////wAAOP8AAGINAQD///////8AADoFAABfBQEALywAAJ0KAQAvBAAA5AMBAP///////wAALx8AAPwIAQBJBQAAjAUBAP///////wAAS24BANIPAQA0/wAAVg0BAC0sAACXCgEALQQAAN4DAQD///////8AAC0fAAD2CAEAgQUBAH8OAQB/BQEAeQ4BACv/AAA7DQEAKSwAAIsKAQApBAAA0QMBAP///////wAAKR8AAOoIAQAlBAEA2g0BACUsAAB/CgEAJQQAAMUDAQAjBAEA1A0BACMsAAB5CgEAIwQAAL8DAQARBAEAng0BABEsAABDCgEAEQQAAIMDAQAHBAEAgA0BAAcsAAAlCgEABwQAAPwDAQD///////8AAP///////wAAziQAAAoKAQD///////8AAEECAABKAgEA////////AAD///////8AAPwTAAA8BwEA////////AABCBQAAdwUBAP///////wAA////////AAD///////8AAP///////wAA+BMAADAHAQD///////8AAP///////wAA0QMAAAADAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAh6QEAdBABAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAD4FAABrBQEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAn/wAALw0BAP///////wAA////////AAA2BQAAUwUBAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAUwUAAKoFAQD///////8AAP///////wAA////////AABABQAAcQUBAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAC//AABHDQEA////////AAD///////8AAP///////wAAeAUBAGcOAQD///////8AABfpAQBWEAEA////////AAAt/wAAQQ0BAP///////wAAdAUBAFsOAQD///////8AAP///////wAAQQUAAHQFAQD///////8AACn/AAA1DQEA////////AAD///////8AAP///////wAA////////AAAl/wAAKQ0BAP///////wAA////////AAAj/wAAIw0BAB3pAQBoEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAFEFAACkBQEA////////AAD///////8AAP///////wAA////////AAD///////8AADgFAABZBQEA////////AAD///////8AAP///////wAAG+kBAGIQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAANAUAAE0FAQAZ6QEAXBABAP///////wAA////////AAD///////8AAE8FAACeBQEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAFekBAFAQAQD///////8AAP///////wAAE+kBAEoQAQD///////8AAP///////wAA////////AAD///////8AAA/pAQA+EAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAF/sAAHUAAgD///////8AAP///////wAADekBADgQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAL6QEAMhABAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAACekBACwQAQD///////8AAP///////wAA////////AAD///////8AAAXpAQAgEAEA////////AAD///////8AAAPpAQAaEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAAAekBABQQAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAV+wAAcQACAP///////wAA////////AAAT+wAAeQACAP///////wAA////////AAD///////8AAB/pAQBuEAEA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAB6BQEAbQ4BAP///////wAASwUAAJIFAQD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAD///////8AABHpAQBEEAEABfsAAB0AAgD///////8AAAfpAQAmEAEAA/sAAAAAAwD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////AAAB+wAACAACAP//////////cgdLB9IAqwBuDYcHzwznAG4BIwX8BEgMxgxzDjgFHQL2ATAIbwSDAS8CvwLrCuQMcA7rBycERAHACBsA8wioDEwGMQBiBZUNwwiUA3cFnwCSAiIKDwxJBp4C4gceBDsB0g8MAKMKnwznD9UIUAVGBlMJQA6uCO0EgwKVCQYMEQleDtsHFwQ1AcAPAACgCpkMRAlSDkQF+A2KCMkEyAEFBH0CRQsADI4K/g2NCMwEywG0D1AASAtXBzgJtwBxDagLWgtxAcMLXQcIBb0A/QYRBF0L+QMCApoKDgWCCsICAweGCWgNCAIKDpMI0gTRAWsCXACHC6sLBA6QCM8EzgGxC1YASwuFDnsHawHbALkC8g2HCMYExQFcDSwFQgsPB4kJaQezAskACQB9DV4GCQe9CE0FGgXmDYEIwAQrBuoIFAI8CxQN9wZgBHcBFQ+9D9wK1QxVDkEJ5Ah+CL0EGw/jBacFOQsRDTkMegHrBqoCswXpBVgOcgsWDpkI2ATXAbUOaQC/DX4LwgMLAXcN5QZMClkDEA6WCNUE1AEnD2MA7wkLBFwDlAaaBpQKIQ8bB/UF9QmfC64PVwtcASMJdwLvBbQMDw+6C5UFFQcmDewNhAjDBAMA+QjdBT8LjgZHBZYLYgMFEAAIPAQDD3EJRwABCl8DrQWzCYwFtw+lANEF+wk7CfEGdQi0BFYD/Q6ZCzALDg38D4EL6QmoBGgJfQHLBb8JCw2qCWQOYwQzD6gPUAPfCtgMWw7IAtMGgAndCQEGvA2uB78DLQ88DL4GSQpsDE0DnA/fBxoEOAH7BQYA1wmcDEMO0gtKBREDGAOTAHsLaAOAApYPAwwgCScIVwQNCgkPug/TCswMIw0+CWUD9wczBFAB1wU0ALIKBwowDAoDegX0BzAETQF1Cy4A1wJvCz0O//90BesOOgaQAOoPFw2bAnkOVglTA9YOuQVvCJgJ5A///+MJKgtQCTQOqAjnBOMBkgmHAFQLUgaiDygOogjhBOABag57ACIOnwjeBN0BxwZ1ALoI+QTzAcUJqAA+AzkHHA6cCNsE2gFABm8A//+EDy0H6AckBEEBLgZ3ECcHpQxvD5UBXAXlByEEPgGmDhIAjAKiDAwMIQdWBQ0ONw4XEMwPJhBgAIoACQx6A8YH8AMgAYIGxg95CoQM7QhKCToOqwjqBOcBKAaNAGUC3w7rCxIHPAfOAv/////MB/wDJgFNECwJhQqKDMsCaw3//0UPHwZTDT8HoAZuAj8P8QuuBK0BEwb9BzkEVgHnCEEADQYyCUcDOQ+GBT0GwwfqAx0BXw13A3MKgQwHBv//sAH//8oG9g9xA3gPXwJiCegL//9uA70LpAngDcAH5AMaASoPKQltCn4MKRD//2sD0AZ9CU0N+AUiBlkC///lC9oNvQfeAxcBuA76AmcKewzUDboH2AMUAf//JQZhCngMVgJHDeILtwtMDrQI8wTtAVMCnADeCwQKtg2rB7YDXwElAOIOQwppDEENawWbBR4Dewi6BP//NRA7DTYLzwuMDZYHigPzANsPCxAZClQM6A4aCVEP+gc2BFMBuQk7AD4CHQ22Bd8GgAVKA3gItwT//9ECoQIzCwgJ//9RCJAEmAGsDvAPDAv2DK8OXAl7D/EHLQRKAZ4JKAAvEK4M///ZBm4FwgndDYgG4QMdEJgCiwZqCu4HKgRHAYEPIgDeD6sMdgb//2gFzwcCBCkB//9mBIsKjQwSDOIK2wxhDv/////YD/cOcQKMCfQLxQJEDckH9gMjAf//xQV/CocMhAf//+QAfQP/////RQxpBGUNNQXuC+UK3gxnDv//LALxDs4NtwfRAy8J/////1sKdQz//78F/AhZDdEJyA20B8sDUAL//9sLVQpyDPMDegKQD3QQfArCDbEHxQNNArEP2AtPCm8MNQloAjUNuQ0AA7oDCAHLCQUDRgrVCy4OpQjkBP//Lw2BAOwCig9KAiYJVg2PAZgNnAeXA/kAlw4pDSUKWgwdCUgH//+SDZkHkQP2ADMHIA0fClcMeg2NB8kL7QBwBncJgQdODOEAFAk+Bf//QgwGCEIEMgU1An4H///eAA4JKQKYBT8M+w3//y8F7w2kAk0AwgHpDSYC9gi/AeMNCBBpCLwBpQF0CWAIJAtiAfAItgkbCwUNRQiEBKEFAAeDCQAL9AaaDqcC/wPuBksPXQiICugGuwb//xgLAg2pBv//GQYREFoImQSeAXMGegkVC/8MpQtXCJYEmwFUCJMEEgv8DKMGDwv5DLIO//9iDeEITgiNBP//zAudBgkL8wypDsYLPwh+BIwBlwbtA/oKkQaODnYKWQHAC0oAGA+xDP//DA+PBYUGYgIGDyMQ///mBQAP0w7aBWcGSQ7BDtQF/w///5kAzgVrCdoCSwiKBFANrQn//wYL8AyjDrANqAewA7sO2wj//z0KZgznA///8gn//3AK5gmTCzoDRALgCX8GJgP//9oJXAL//6UP///pAs8Inw8zCHIEhgGZD2wP7grnDHYOWg8iAy0IbASAAUoN///oCuEMbQ7JCF0EGwMDCD8E2QrSDE8OTwZUDxUD//+SBQ4DDwiRDmUBNgxDBrsKvQz//24QqgX9Ao0LAhC5Af//rQJuCRgMQgfgAmoGsAk0BtIHCAQsATEORBCRCpAMsw2EALMDBQFpC///QAriBnQCJQ73C4YNkweDA3gAUQtHAhMK//+ADZAH///wADYHYwv2AlEMOwIXCUEFdA2KB/UN6gD//zgCKgdLDP//Agk7Bf//Rg6xCPAE6gEyApYAHw7//xMOBw62AXIATgtmAFkAAQ6zAfoG/////1MAcgixBKsEqQFsCC0LZgj6Dv//Jwv//yELJAfcBhgHDAebDcgFmgPWBtQCBgcoCk4P///jAs0GxAYgEKUEwQb//7UGHAYIDacNQg+mA/8A/////zQK//+iBKEBYwgQBgwISATUCR4LQQK4CroMuAaLDqQF//90AxIPkw///x8ArwoVDEgIhwRlBbIG4AUDC68GnQ6VAmQGPA/0DjAPJA8xBv//1Q/uDnEQHg8KBsIF/gXyBeUO3A55BrwF2Q7sBc0O//9CCIEE/////+wJ/QpQEJQO////////iQGqDaUHqQOrD38OShA3CmMM0A7OCQoK/gn//zIQbQbICUQD+AkaEEEDjQ80A8oOWAb//8cOhw8bCEsEFBD//ysOxwp+D3UP//9+AHIP//9mDzkIeAS8AjcDJAz0Cu0Mgg42CHUECQhFBP//8QrqDHwOtwwwAzAHngUtA2kPEgjdAmgB//9bBr4KwAz/////sAX//w4QVQZjDz4AtQpgDxsM8AKDBbwJDwCmCrcI9gTwAVMFogD//9gHFAQyAYYC8w+dCpYMZgdfCcYA///DD///oQn//0cJFwX9C9UHDgQvAeYCEQKXCpMMpA2iB6MD/////0gPMQpgDJ8E3gj6C54NnwedA2MHFgbDACsKXQxUBxkOtABRBxQFsQBsAP////8FBQ4CTgcCBa4ArAb/ATwIewT8Af///wT3CtgIiA5oEP//+QHSCB4H///MCCoIWgR0ASQIVATWCv//xgjQCskM//9hBv//////////FQgzDDcGRAAtDMEKwwz//4kFOADLDZALzgMRAX0FsAJYCh4M//8rAP//jw35D40DcQX//2UJHArtD///xA6nCVkJ//8YAKwK//+bCeEPXwX/////TQmKCzYPjwIyDY8JbAsLCf//ZgucBM8PBAYVAKkK/////2ALWQXFDf//yAMOASoDiQJSCmsQrQ3//6wDAgH//8kPOgr//6YGoQ0+EKAD/AD//10PLgoYCIkNOBCGA4MNxAqAAxYK//94BxAK2AAsDSwQ//+2Av//IQwpBXUH1w3VANsD//8jApIBZAr//yYFBQmgDm8H/wjPACACbAdgB8wAwABaByAFugAhCFEEHQURBRoCzQoLBXwGFwILAh4ITgQFAr4OPg3KCtENKgzUA///UxD//14K//////////8nDP////////////////////////////9fEEUH/////////////////////////////zgN////////////////////////tAv///////9XD/////////////+uC/////////////////////////////+iC////////5wLhAv/////eAv////////////////////////////////zAv//////////////////YhD/////////////Gg3//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1wQ//////////////////////////9WEP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////0cQ/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////2UQ/////////////////////1kQ//////////////////9BEP////87EAAAAAAAAGUA/QBMAB0AGADvAGAARwBcAEMABAA+AAgAOgDqAG0ApABYAFQAUADWAAAANgAFATIAaQB5AH0AAQEqACYA+QAuAHUADABxAPQA5QDgANsA0QAQAMwAxwDCAL0AuACzAK4AqQAUACIAnwCaAJUAkACLAIYAgQBB8IkRC+EIPgAvAB8AOQApABkANAAkABQAQwAPAAoABQAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAMAAAADAAAAAwAAAAMA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AAAABAUAAAcFAAABAAAABgUAAAkFAAABAAAACAUAAAsFAAABAAAACgUAAA0FAAABAAAADAUAAA8FAAABAAAADgUAABEFAAABAAAAEAUAABMFAAABAAAAEgUAABUFAAABAAAAFAUAABcFAAABAAAAFgUAABkFAAABAAAAGAUAABsFAAABAAAAGgUAAB0FAAABAAAAHAUAAB8FAAABAAAAHgUAACEFAAABAAAAIAUAACMFAAABAAAAIgUAACUFAAABAAAAJAUAACcFAAABAAAAJgUAACkFAAABAAAAKAUAACsFAAABAAAAKgUAAC0FAAABAAAALAUAAC8FAAABAAAALgUAAGEFAAABAAAAMQUAAGIFAAABAAAAMgUAAGMFAAABAAAAMwUAAGQFAAABAAAANAUAAGUFAAABAAAANQUAAGYFAAABAAAANgUAAGcFAAABAAAANwUAAGgFAAABAAAAOAUAAGkFAAABAAAAOQUAAGoFAAABAAAAOgUAAGsFAAABAAAAOwUAAGwFAAABAAAAPAUAAG0FAAABAAAAPQUAAG4FAAABAAAAPgUAAG8FAAABAAAAPwUAAHAFAAABAAAAQAUAAHEFAAABAAAAQQUAAHIFAAABAAAAQgUAAHMFAAABAAAAQwUAAHQFAAABAAAARAUAAHUFAAABAAAARQUAAHYFAAABAAAARgUAAHcFAAABAAAARwUAAHgFAAABAAAASAUAAHkFAAABAAAASQUAAHoFAAABAAAASgUAAHsFAAABAAAASwUAAHwFAAABAAAATAUAAH0FAAABAAAATQUAAH4FAAABAAAATgUAAH8FAAABAAAATwUAAIAFAAABAAAAUAUAAIEFAAABAAAAUQUAAIIFAAABAAAAUgUAAIMFAAABAAAAUwUAAIQFAAABAAAAVAUAAIUFAAABAAAAVQUAAIYFAAABAAAAVgUAANAQAAABAAAAkBwAANEQAAABAAAAkRwAANIQAAABAAAAkhwAANMQAAABAAAAkxwAANQQAAABAAAAlBwAANUQAAABAAAAlRwAANYQAAABAAAAlhwAANcQAAABAAAAlxwAANgQAAABAAAAmBwAANkQAAABAAAAmRwAANoQAAABAAAAmhwAANsQAAABAAAAmxwAANwQAAABAAAAnBwAAN0QAAABAAAAnRwAAN4QAAABAAAAnhwAAN8QAAABAAAAnxwAAOAQAAABAAAAoBwAAOEQAAABAAAAoRwAAOIQAAABAAAAohwAAOMQAAABAAAAoxwAAOQQAAABAAAApBwAAOUQAAABAAAApRwAAOYQAAABAAAAphwAAOcQAAABAAAApxwAAOgQAAABAAAAqBwAAOkQAAABAAAAqRwAAOoQAAABAAAAqhwAAOsQAAABAAAAqxwAAOwQAAABAAAArBwAAO0QAAABAAAArRwAAO4QAAABAAAArhwAAO8QAAABAAAArxwAAPAQAAABAAAAsBwAAPEQAAABAAAAsRwAAPIQAAABAAAAshwAAPMQAAABAAAAsxwAAPQQAAABAAAAtBwAAPUQAAABAAAAtRwAAPYQAAABAAAAthwAAPcQAAABAAAAtxwAAPgQAAABAAAAuBwAAPkQAAABAAAAuRwAAPoQAAABAAAAuhwAAP0QAAABAAAAvRwAAP4QAAABAAAAvhwAAP8QAAABAAAAvxwAAKATAAABAAAAcKsAAKETAAABAAAAcasAAKITAAABAAAAcqsAAKMTAAABAAAAc6sAAKQTAAABAAAAdKsAAKUTAAABAAAAdasAAKYTAAABAAAAdqsAAKcTAAABAAAAd6sAAKgTAAABAAAAeKsAAKkTAAABAAAAeasAAKoTAAABAAAAeqsAAKsTAAABAAAAe6sAAKwTAAABAAAAfKsAAK0TAAABAAAAfasAAK4TAAABAAAAfqsAAK8TAAABAAAAf6sAALATAAABAAAAgKsAALETAAABAAAAgasAALITAAABAAAAgqsAALMTAAABAAAAg6sAALQTAAABAAAAhKsAALUTAAABAAAAhasAALYTAAABAAAAhqsAALcTAAABAAAAh6sAALgTAAABAAAAiKsAALkTAAABAAAAiasAALoTAAABAAAAiqsAALsTAAABAAAAi6sAALwTAAABAAAAjKsAAL0TAAABAAAAjasAAL4TAAABAAAAjqsAAL8TAAABAAAAj6sAAMATAAABAAAAkKsAAMETAAABAAAAkasAAMITAAABAAAAkqsAAMMTAAABAAAAk6sAAMQTAAABAAAAlKsAAMUTAAABAAAAlasAAMYTAAABAAAAlqsAAMcTAAABAAAAl6sAAMgTAAABAAAAmKsAAMkTAAABAAAAmasAAMoTAAABAAAAmqsAAMsTAAABAAAAm6sAAMwTAAABAAAAnKsAAM0TAAABAAAAnasAAM4TAAABAAAAnqsAAM8TAAABAAAAn6sAANATAAABAAAAoKsAANETAAABAAAAoasAANITAAABAAAAoqsAANMTAAABAAAAo6sAANQTAAABAAAApKsAANUTAAABAAAApasAANYTAAABAAAApqsAANcTAAABAAAAp6sAANgTAAABAAAAqKsAANkTAAABAAAAqasAANoTAAABAAAAqqsAANsTAAABAAAAq6sAANwTAAABAAAArKsAAN0TAAABAAAArasAAN4TAAABAAAArqsAAN8TAAABAAAAr6sAAOATAAABAAAAsKsAAOETAAABAAAAsasAAOITAAABAAAAsqsAAOMTAAABAAAAs6sAAOQTAAABAAAAtKsAAOUTAAABAAAAtasAAOYTAAABAAAAtqsAAOcTAAABAAAAt6sAAOgTAAABAAAAuKsAAOkTAAABAAAAuasAAOoTAAABAAAAuqsAAOsTAAABAAAAu6sAAOwTAAABAAAAvKsAAO0TAAABAAAAvasAAO4TAAABAAAAvqsAAO8TAAABAAAAv6sAAPATAAABAAAA+BMAAPETAAABAAAA+RMAAPITAAABAAAA+hMAAPMTAAABAAAA+xMAAPQTAAABAAAA/BMAAPUTAAABAAAA/RMAAHkdAAABAAAAfacAAH0dAAABAAAAYywAAI4dAAABAAAAxqcAAAEeAAABAAAAAB4AAAMeAAABAAAAAh4AAAUeAAABAAAABB4AAAceAAABAAAABh4AAAkeAAABAAAACB4AAAseAAABAAAACh4AAA0eAAABAAAADB4AAA8eAAABAAAADh4AABEeAAABAAAAEB4AABMeAAABAAAAEh4AABUeAAABAAAAFB4AABceAAABAAAAFh4AABkeAAABAAAAGB4AABseAAABAAAAGh4AAB0eAAABAAAAHB4AAB8eAAABAAAAHh4AACEeAAABAAAAIB4AACMeAAABAAAAIh4AACUeAAABAAAAJB4AACceAAABAAAAJh4AACkeAAABAAAAKB4AACseAAABAAAAKh4AAC0eAAABAAAALB4AAC8eAAABAAAALh4AADEeAAABAAAAMB4AADMeAAABAAAAMh4AADUeAAABAAAANB4AADceAAABAAAANh4AADkeAAABAAAAOB4AADseAAABAAAAOh4AAD0eAAAB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LAAAAQAAABMsAABELAAAAQAAABQsAABFLAAAAQAAABUsAABGLAAAAQAAABYsAABHLAAAAQAAABcsAABILAAAAQAAABgsAABJLAAAAQAAABksAABKLAAAAQAAABosAABLLAAAAQAAABssAABMLAAAAQAAABwsAABNLAAAAQAAAB0sAABOLAAAAQAAAB4sAABPLAAAAQAAAB8sAABQLAAAAQAAACAsAABRLAAAAQAAACEsAABSLAAAAQAAACIsAABTLAAAAQAAACMsAABULAAAAQAAACQsAABVLAAAAQAAACUsAABWLAAAAQAAACYsAABXLAAAAQAAACcsAABYLAAAAQAAACgsAABZLAAAAQAAACksAABaLAAAAQAAACosAABbLAAAAQAAACssAABcLAAAAQAAACwsAABdLAAAAQAAAC0sAABeLAAAAQAAAC4sAABfLAAAAQAAAC8sAABhLAAAAQAAAGAsAABlLAAAAQAAADoCAABmLAAAAQAAAD4CAABoLAAAAQAAAGcsAABqLAAAAQAAAGksAABsLAAAAQAAAGssAABzLAAAAQAAAHIsAAB2LAAAAQAAAHUsAACBLAAAAQAAAIAsAACDLAAAAQAAAIIsAACFLAAAAQAAAIQsAACHLAAAAQAAAIYsAACJLAAAAQAAAIgsAACLLAAAAQAAAIosAACNLAAAAQAAAIwsAACPLAAAAQAAAI4sAACRLAAAAQAAAJAsAACTLAAAAQAAAJIsAACVLAAAAQAAAJQsAACXLAAAAQAAAJYsAACZLAAAAQAAAJgsAACbLAAAAQAAAJosAACdLAAAAQAAAJwsAACfLAAAAQAAAJ4sAAChLAAAAQAAAKAsAACjLAAAAQAAAKIsAAClLAAAAQAAAKQsAACnLAAAAQAAAKYsAACpLAAAAQAAAKgsAACrLAAAAQAAAKosAACtLAAAAQAAAKwsAACvLAAAAQAAAK4sAACxLAAAAQAAALAsAACzLAAAAQAAALIsAAC1LAAAAQAAALQsAAC3LAAAAQAAALYsAAC5LAAAAQAAALgsAAC7LAAAAQAAALosAAC9LAAAAQAAALwsAAC/LAAAAQAAAL4sAADBLAAAAQAAAMAsAADDLAAAAQAAAMIsAADFLAAAAQAAAMQsAADHLAAAAQAAAMYsAADJLAAAAQAAAMgsAADLLAAAAQAAAMosAADN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AgAwJgIAgCYCAOAmAgD0JgIAACcCALA+AgAAUwIAoFMCAMBTAgCwVAIA0FQCAPBUAgAMVQIAIFUCAEBVAgCwVQIAcFYCAJBWAgDgVgIAAFcCADBXAgBQVwIAcFcCAMBrAgBAcAIAoHACAOBxAgAAcgIAMHICAFByAgCQcgIAsHICAECHAgBwiQIAIJkCAOC6AABgmQIAwJkCAPStAgAArgIAIK4CAHy3AgCItwIAoLcCAOC3AgAAuAIAILgCAEC4AgCAuAIA4LwCAHDCAgCcwgIAsMICANDCAgDwwgIADMMCACDDAgBAwwIA0M0CAPDNAgAwzgIAUM4CAIDOAgCgzgIA4NICAADTAgDgogAAINMCAFDTAgBw0wIAkNMCAADUAgBA1gIA4NYCAADXAgAk1wIAMNcCAEDXAgBg1wIAdNcCAIDXAgCQ1wIApNcCALDXAgC81wIAyNcCAODXAgBg2AIAgNgCAKDYAgDw3wIAUOACACDhAgBQ4QIAgOECAFDiAgCQ5gIAwOUAAMDmAgDs5gIAAOcCAPDnAgAc6AIAMOgCAHDoAgAQ6QIAgOsCANTrAgDg6wIAAOwCAGDsAgAw8gIAcPICAPD0AgAQ9QIAgPUCAJz1AgCw9QIA0PUCAPD1AgBQ/QIAcP0CAJD9AgBA/gIAvAADAMgAAwDgAAMAAAEDACABAwCQAQMAkAIDAKAEAwCACgMAhAsDAJALAwCkCwMAsAsDAMQLAwDQCwMAAAwDACAMAwBADAMAYAwDAJAMAwCwDAMA0AwDAHANAwCQDQMAwA0DADAOAwCMEQMAoBEDAMARAwAAEgMAIBIDADQSAwBAEgMAYBIDAOASAwAQ7AAApCgDALAoAwDgKAMAMCkDAFApAwCw6wAAcCkDAFBBAwDQVQMA8FUDABBWAwBUVgMAYFYDAGxWAwCAVgMAFDABALxWAwDIVgMA1FYDAOBWAwDsVgMA+FYDAARXAwAQVwMAHFcDAChXAwA0VwMAQFcDAExXAwBYVwMAZFcDAHBXAwB8VwMAiFcDAJRXAwCgVwMArFcDALhXAwDEVwMA0FcDANxXAwDoVwMA9FcDAABYAwAMWAMAGFgDACRYAwAwWAMAPFgDAEhYAwBUWAMAYFgDAGxYAwB4WAMAhFgDAJBYAwCcWAMAqFgDALRYAwDAWAMAzFgDANhYAwDkWAMA8FgDAPxYAwAIWQMAFFkDACBZAwAsWQMAOFkDAERZAwBQWQMAXFkDAGhZAwB0WQMAgFkDAIxZAwAw1wIAmFkDAKRZAwCwWQMAvFkDAMhZAwDUWQMA4FkDAOxZAwD4WQMABFoDABBaAwAcWgMAKFoDADRaAwBAWgMATFoDAFhaAwBkWgMAcFoDAHxaAwCIWgMAlFoDAKBaAwCsWgMAuFoDAMRaAwDQWgMA3FoDABxKAQDoWgMA9FoDAABbAwAMWwMAGFsDACRbAwAwWwMAPFsDAEhbAwBUWwMAYFsDAGxbAwB4WwMAhFsDAJBbAwCcWwMAqFsDALRbAwDAWwMAzFsDANhbAwDkWwMA8FsDAPxbAwAIXAMAFFwDACBcAwAsXAMAOFwDAERcAwBQXAMAXFwDAGhcAwB0XAMAgFwDAIxcAwCYXAMApFwDALBcAwC8XAMAyFwDANRcAwDgXAMA7FwDAPhcAwAEXQMAEF0DABxdAwAoXQMANF0DAEBdAwBMXQMAWF0DAGRdAwBwXQMAfF0DAIhdAwCUXQMAoF0DAKxdAwC4XQMAxF0DANBdAwDcXQMA6F0DAPRdAwAAXgMADF4DABheAwAkXgMAMF4DADxeAwBIXgMAVF4DAGBeAwBsXgMAeF4DAIReAwCQXgMAnF4DAKheAwC0XgMAwF4DAMxeAwDYXgMA5F4DAPTjAQDIAAMA8F4DAPxeAwAIXwMAFF8DACBfAwAsXwMAOF8DAERfAwBQXwMA7OYCAFxfAwBoXwMAdF8DAIBfAwAMwwIAjF8DAJhfAwCw1wIAdNcCAKRfAwCwXwMAvF8DAMhfAwDUXwMA4F8DAOxfAwD4XwMABGADABBgAwAcYAMAKGADADRgAwBAYAMATGADAFhgAwBkYAMAcGADAHxgAwCIYAMAvAADAJRgAwCgYAMArGADALhgAwDEYAMA0GADANxgAwDoYAMA9GADAABhAwAMYQMAGGEDACRhAwAwYQMAPGEDAEhhAwBUYQMAYGEDAGxhAwB4YQMAhGEDAJBhAwCcYQMAqGEDALRhAwDAYQMAzGEDANhhAwDkYQMA8GEDAPxhAwAIYgMAFGIDACBiAwAsYgMAOGIDAERiAwBQYgMAXGIDAGhiAwB0YgMAgGIDAIxiAwCYYgMApGIDALBiAwC8YgMAyGIDANRiAwDgYgMA7GIDAPhiAwAEYwMAEGMDABxjAwAoYwMANGMDAEBjAwBMYwMAWGMDAGRjAwBwYwMAfGMDAIhjAwCUYwMAoGMDAKxjAwC4YwMAxGMDANBjAwDcYwMA6GMDAPRjAwAAZAMADGQDABhkAwAkZAMAMGQDADxkAwBIZAMAVGQDAGBkAwBsZAMAeGQDAIRkAwCQZAMAnGQDAKhkAwC0ZAMAwGQDAMxkAwDYZAMA5GQDAPBkAwD8ZAMACGUDABRlAwAgZQMALGUDADhlAwBQZQMAFQAAAAsFAAABAAAAAQAAABYAAAAXAAAAGAAAABkAAAAaAAAAGwAAABwAAAAdAAAAHgAAAB8AAAAgAAAAIQAAACIAAAAAAAAAIwAAAAUAQey9Egs9JAAAAEMFAAAEAAAAAQAAABYAAAAlAAAAJgAAACcAAAAoAAAAKQAAACoAAAArAAAALAAAAC0AAAAuAAAAIQBBtL4SCwUvAAAAHwBByL4SCwEFAEHUvhILATAAQey+EgsOMQAAADIAAABooQQAAAQAQYS/EgsBAQBBlL8SCwX/////CgBB2L8SCwPQx1Q="),A=>A.charCodeAt(0));const g=Q,E=async A=>WebAssembly.instantiate(g,A).then(B=>B.instance.exports);export{E as default,E as getWasmInstance,g as wasmBinary}; diff --git a/_nuxt/CIiI48o2.js b/_nuxt/CIiI48o2.js new file mode 100644 index 0000000..18075ee --- /dev/null +++ b/_nuxt/CIiI48o2.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse(`{"displayName":"YAML","fileTypes":["yaml","yml","rviz","reek","clang-format","yaml-tmlanguage","syntax","sublime-syntax"],"firstLineMatch":"^%YAML( ?1.\\\\d+)?","name":"yaml","patterns":[{"include":"#comment"},{"include":"#property"},{"include":"#directive"},{"match":"^---","name":"entity.other.document.begin.yaml"},{"match":"^\\\\.{3}","name":"entity.other.document.end.yaml"},{"include":"#node"}],"repository":{"block-collection":{"patterns":[{"include":"#block-sequence"},{"include":"#block-mapping"}]},"block-mapping":{"patterns":[{"include":"#block-pair"}]},"block-node":{"patterns":[{"include":"#prototype"},{"include":"#block-scalar"},{"include":"#block-collection"},{"include":"#flow-scalar-plain-out"},{"include":"#flow-node"}]},"block-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"1":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=\\\\?)|^ *(:)|(:)","endCaptures":{"1":{"name":"punctuation.separator.key-value.mapping.yaml"},"2":{"name":"invalid.illegal.expected-newline.yaml"}},"name":"meta.block-mapping.yaml","patterns":[{"include":"#block-node"}]},{"begin":"(?=(?:[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-]\\\\S)([^\\\\s:]|:\\\\S|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$))","patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-]\\\\S","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},{"match":":(?=\\\\s|$)","name":"punctuation.separator.key-value.mapping.yaml"}]},"block-scalar":{"begin":"(?:(\\\\|)|(>))([1-9])?([-+])?(.*\\\\n?)","beginCaptures":{"1":{"name":"keyword.control.flow.block-scalar.literal.yaml"},"2":{"name":"keyword.control.flow.block-scalar.folded.yaml"},"3":{"name":"constant.numeric.indentation-indicator.yaml"},"4":{"name":"storage.modifier.chomping-indicator.yaml"},"5":{"patterns":[{"include":"#comment"},{"match":".+","name":"invalid.illegal.expected-comment-or-newline.yaml"}]}},"end":"^(?=\\\\S)|(?!\\\\G)","patterns":[{"begin":"^([ ]+)(?! )","end":"^(?!\\\\1|\\\\s*$)","name":"string.unquoted.block.yaml"}]},"block-sequence":{"match":"(-)(?!\\\\S)","name":"punctuation.definition.block.sequence.item.yaml"},"comment":{"begin":"(?:(^[ \\\\t]*)|[ \\\\t]+)(?=#\\\\p{Print}*$)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.yaml"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.yaml"}},"end":"\\\\n","name":"comment.line.number-sign.yaml"}]},"directive":{"begin":"^%","beginCaptures":{"0":{"name":"punctuation.definition.directive.begin.yaml"}},"end":"(?=$|[ \\\\t]+($|#))","name":"meta.directive.yaml","patterns":[{"captures":{"1":{"name":"keyword.other.directive.yaml.yaml"},"2":{"name":"constant.numeric.yaml-version.yaml"}},"match":"\\\\G(YAML)[ \\\\t]+(\\\\d+\\\\.\\\\d+)"},{"captures":{"1":{"name":"keyword.other.directive.tag.yaml"},"2":{"name":"storage.type.tag-handle.yaml"},"3":{"name":"support.type.tag-prefix.yaml"}},"match":"\\\\G(TAG)(?:[ \\\\t]+((?:!(?:[0-9A-Za-z\\\\-]*!)?))(?:[ \\\\t]+(!(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$,_.!~*'()\\\\[\\\\]])*|(?![,!\\\\[\\\\]{}])(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$,_.!~*'()\\\\[\\\\]])+))?)?"},{"captures":{"1":{"name":"support.other.directive.reserved.yaml"},"2":{"name":"string.unquoted.directive-name.yaml"},"3":{"name":"string.unquoted.directive-parameter.yaml"}},"match":"\\\\G(\\\\w+)(?:[ \\\\t]+(\\\\w+)(?:[ \\\\t]+(\\\\w+))?)?"},{"match":"\\\\S+","name":"invalid.illegal.unrecognized.yaml"}]},"flow-alias":{"captures":{"1":{"name":"keyword.control.flow.alias.yaml"},"2":{"name":"punctuation.definition.alias.yaml"},"3":{"name":"variable.other.alias.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"((\\\\*))([^\\\\s\\\\[\\\\]/{/},]+)([^\\\\s\\\\]},]\\\\S*)?"},"flow-collection":{"patterns":[{"include":"#flow-sequence"},{"include":"#flow-mapping"}]},"flow-mapping":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.mapping.begin.yaml"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.mapping.end.yaml"}},"name":"meta.flow-mapping.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.mapping.yaml"},{"include":"#flow-pair"}]},"flow-node":{"patterns":[{"include":"#prototype"},{"include":"#flow-alias"},{"include":"#flow-collection"},{"include":"#flow-scalar"}]},"flow-pair":{"patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"punctuation.definition.key-value.begin.yaml"}},"end":"(?=[},\\\\]])","name":"meta.flow-pair.explicit.yaml","patterns":[{"include":"#prototype"},{"include":"#flow-pair"},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[\\\\[\\\\]{},])","beginCaptures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[},\\\\]])","patterns":[{"include":"#flow-value"}]}]},{"begin":"(?=(?:[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-][^\\\\s[\\\\[\\\\]{},]])([^\\\\s:[\\\\[\\\\]{},]]|:[^\\\\s[\\\\[\\\\]{},]]|\\\\s+(?![#\\\\s]))*\\\\s*:(\\\\s|$))","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},])","name":"meta.flow-pair.key.yaml","patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-][^\\\\s[\\\\[\\\\]{},]]","beginCaptures":{"0":{"name":"entity.name.tag.yaml"}},"contentName":"entity.name.tag.yaml","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},])","name":"string.unquoted.plain.in.yaml"}]},{"include":"#flow-node"},{"begin":":(?=\\\\s|$|[\\\\[\\\\]{},])","captures":{"0":{"name":"punctuation.separator.key-value.mapping.yaml"}},"end":"(?=[},\\\\]])","name":"meta.flow-pair.yaml","patterns":[{"include":"#flow-value"}]}]},"flow-scalar":{"patterns":[{"include":"#flow-scalar-double-quoted"},{"include":"#flow-scalar-single-quoted"},{"include":"#flow-scalar-plain-in"}]},"flow-scalar-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.double.yaml","patterns":[{"match":"\\\\\\\\([0abtnvfre \\"/\\\\\\\\N_Lp]|x\\\\d\\\\d|u\\\\d{4}|U\\\\d{8})","name":"constant.character.escape.yaml"},{"match":"\\\\\\\\\\\\n","name":"constant.character.escape.double-quoted.newline.yaml"}]},"flow-scalar-plain-in":{"patterns":[{"include":"#flow-scalar-plain-in-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-][^\\\\s[\\\\[\\\\]{},]]","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},])","name":"string.unquoted.plain.in.yaml"}]},"flow-scalar-plain-in-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|(y|Y|yes|Yes|YES|n|N|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|((?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[0-9a-fA-F_]+|[-+]?[1-9][0-9_]*(?::[0-5]?\\\\d)+))|((?:[-+]?(?:\\\\d[0-9_]*)?\\\\.[0-9.]*(?:[eE][-+]\\\\d+)?|[-+]?\\\\d[0-9_]*(?::[0-5]?\\\\d)+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN)))|((?:\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[ \\\\t]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:(?:[ \\\\t]*)Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?))|(=)|(<<))(?:(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)|\\\\s*:[\\\\[\\\\]{},]|\\\\s*[\\\\[\\\\]{},]))"}]},"flow-scalar-plain-out":{"patterns":[{"include":"#flow-scalar-plain-out-implicit-type"},{"begin":"[^\\\\s[-?:,\\\\[\\\\]{}#&*!|>'\\"%@\`]]|[?:-]\\\\S","end":"(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$))","name":"string.unquoted.plain.out.yaml"}]},"flow-scalar-plain-out-implicit-type":{"patterns":[{"captures":{"1":{"name":"constant.language.null.yaml"},"2":{"name":"constant.language.boolean.yaml"},"3":{"name":"constant.numeric.integer.yaml"},"4":{"name":"constant.numeric.float.yaml"},"5":{"name":"constant.other.timestamp.yaml"},"6":{"name":"constant.language.value.yaml"},"7":{"name":"constant.language.merge.yaml"}},"match":"(?:(null|Null|NULL|~)|(y|Y|yes|Yes|YES|n|N|no|No|NO|true|True|TRUE|false|False|FALSE|on|On|ON|off|Off|OFF)|((?:[-+]?0b[0-1_]+|[-+]?0[0-7_]+|[-+]?(?:0|[1-9][0-9_]*)|[-+]?0x[0-9a-fA-F_]+|[-+]?[1-9][0-9_]*(?::[0-5]?\\\\d)+))|((?:[-+]?(?:\\\\d[0-9_]*)?\\\\.[0-9.]*(?:[eE][-+]\\\\d+)?|[-+]?\\\\d[0-9_]*(?::[0-5]?\\\\d)+\\\\.[0-9_]*|[-+]?\\\\.(?:inf|Inf|INF)|\\\\.(?:nan|NaN|NAN)))|((?:\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d{4}-\\\\d{1,2}-\\\\d{1,2}(?:[Tt]|[ \\\\t]+)\\\\d{1,2}:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:(?:[ \\\\t]*)Z|[-+]\\\\d{1,2}(?::\\\\d{1,2})?)?))|(=)|(<<))(?:(?=\\\\s*$|\\\\s+\\\\#|\\\\s*:(\\\\s|$)))"}]},"flow-scalar-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.yaml"}},"end":"'(?!')","endCaptures":{"0":{"name":"punctuation.definition.string.end.yaml"}},"name":"string.quoted.single.yaml","patterns":[{"match":"''","name":"constant.character.escape.single-quoted.yaml"}]},"flow-sequence":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.sequence.begin.yaml"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.sequence.end.yaml"}},"name":"meta.flow-sequence.yaml","patterns":[{"include":"#prototype"},{"match":",","name":"punctuation.separator.sequence.yaml"},{"include":"#flow-pair"},{"include":"#flow-node"}]},"flow-value":{"patterns":[{"begin":"\\\\G(?![},\\\\]])","end":"(?=[},\\\\]])","name":"meta.flow-pair.value.yaml","patterns":[{"include":"#flow-node"}]}]},"node":{"patterns":[{"include":"#block-node"}]},"property":{"begin":"(?=!|&)","end":"(?!\\\\G)","name":"meta.property.yaml","patterns":[{"captures":{"1":{"name":"keyword.control.property.anchor.yaml"},"2":{"name":"punctuation.definition.anchor.yaml"},"3":{"name":"entity.name.type.anchor.yaml"},"4":{"name":"invalid.illegal.character.anchor.yaml"}},"match":"\\\\G((&))([^\\\\s\\\\[\\\\]/{/},]+)(\\\\S+)?"},{"match":"\\\\G(?:!<(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$,_.!~*'()\\\\[\\\\]])+>|(?:!(?:[0-9A-Za-z\\\\-]*!)?)(?:%[0-9A-Fa-f]{2}|[0-9A-Za-z\\\\-#;/?:@&=+$_.~*'()])+|!)(?= |\\\\t|$)","name":"storage.type.tag-handle.yaml"},{"match":"\\\\S+","name":"invalid.illegal.tag-handle.yaml"}]},"prototype":{"patterns":[{"include":"#comment"},{"include":"#property"}]}},"scopeName":"source.yaml","aliases":["yml"]}`)),n=[e];export{n as default}; diff --git a/_nuxt/CMTZCMka.js b/_nuxt/CMTZCMka.js new file mode 100644 index 0000000..24210e0 --- /dev/null +++ b/_nuxt/CMTZCMka.js @@ -0,0 +1 @@ +import e from"./CNXuF1yM.js";import r from"./CIiI48o2.js";import{h as t}from"./Dt1gzhwr.js";import"./D0ybgVpa.js";import"./Begb3drz.js";import"./g_GSZ1hr.js";const a=Object.freeze(JSON.parse(`{"displayName":"MDC","injectionSelector":"L:text.html.markdown","name":"mdc","patterns":[{"include":"#component_block"},{"include":"#inline"}],"repository":{"attribute":{"patterns":[{"captures":{"2":{"name":"entity.other.attribute-name.html"},"3":{"patterns":[{"include":"#attribute-interior"}]}},"match":"(([^=><\\\\s]*)(=[\\"]([^\\"]*)([\\"])|[']([^']*)(['])|=[^\\\\s'\\"}]*)?\\\\s*)"}]},"attribute-interior":{"patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"#entities"}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},"attributes":{"captures":{"1":{"name":"punctuation.definition.tag.start.component"},"3":{"patterns":[{"include":"#attribute"}]},"4":{"name":"punctuation.definition.tag.end.component"}},"match":"(({)([^{]*)(}))","name":"attributes.mdc"},"block":{"patterns":[{"include":"#component_block"},{"include":"text.html.markdown#separator"},{"include":"#heading"},{"include":"#blockquote"},{"include":"#lists"},{"include":"text.html.markdown#fenced_code_block"},{"include":"text.html.markdown#link-def"},{"include":"text.html.markdown#html"},{"include":"#paragraph"}]},"blockquote":{"begin":"(^|\\\\G)[ ]*(>) ?","captures":{"2":{"name":"punctuation.definition.quote.begin.markdown"}},"name":"markup.quote.markdown","patterns":[{"include":"#block"}],"while":"(^|\\\\G)\\\\s*(>) ?"},"component_block":{"begin":"(^|\\\\G)(\\\\s*)(:{2,})(?i:(\\\\w[\\\\w\\\\d-]+)(\\\\s*|\\\\s*({[^{]*}))$)","beginCaptures":{"3":{"name":"punctuation.definition.tag.start.mdc"},"4":{"name":"entity.name.tag.mdc"},"5":{"patterns":[{"include":"#attributes"}]}},"end":"(^|\\\\G)(\\\\2)(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.tag.end.mdc"}},"name":"block.component.mdc","patterns":[{"captures":{"2":{"name":"punctuation.definition.tag.end.mdc"}},"match":"(^|\\\\G)\\\\s*([:]{2,})$"},{"include":"#content"}]},"component_inline":{"captures":{"2":{"name":"punctuation.definition.tag.start.component"},"3":{"name":"entity.name.tag.component"},"5":{"patterns":[{"include":"#attributes"}]},"6":{"patterns":[{"include":"#span"}]},"7":{"patterns":[{"include":"#span"}]},"8":{"patterns":[{"include":"#attributes"}]}},"match":"(^|\\\\G|\\\\s+)(:)(?i:(\\\\w[\\\\w\\\\d-]*))(({[^}]*})(\\\\[[^\\\\]]*\\\\])?|(\\\\[[^\\\\]]*\\\\])({[^}]*})?)?\\\\s","name":"inline.component.mdc"},"content":{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.mdc","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(-{3})(\\\\s*)$","end":"(^|\\\\G)(\\\\s*(-{3})(\\\\s*)$)","patterns":[{"include":"source.yaml"}]},{"captures":{"2":{"name":"entity.other.attribute-name.html"},"3":{"name":"comment.block.html"}},"match":"^(\\\\s*)(#[\\\\w\\\\-_]*)\\\\s*()?$"},{"include":"#block"}],"while":"(^|\\\\G)(?!\\\\s*([:]{2,})\\\\s*$)"},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"912":{"name":"punctuation.definition.entity.html"}},"match":"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)","name":"constant.character.entity.named.$2.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#\\\\d+(;)","name":"constant.character.entity.numeric.decimal.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#[xX][0-9a-fA-F]+(;)","name":"constant.character.entity.numeric.hexadecimal.html"},{"match":"&(?=[a-zA-Z0-9]+;)","name":"invalid.illegal.ambiguous-ampersand.html"}]},"heading":{"captures":{"1":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{6})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.6.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{5})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.5.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{4})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.4.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{3})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.3.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{2})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.2.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{1})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.1.markdown"}]}},"match":"(?:^|\\\\G)[ ]*(#{1,6}\\\\s+(.*?)(\\\\s+#{1,6})?\\\\s*)$","name":"markup.heading.markdown","patterns":[{"include":"text.html.markdown#inline"}]},"heading-setext":{"patterns":[{"match":"^(={3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.1.markdown"},{"match":"^(-{3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.2.markdown"}]},"inline":{"patterns":[{"include":"#component_inline"},{"include":"#span"},{"include":"#attributes"}]},"lists":{"patterns":[{"begin":"(^|\\\\G)([ ]*)([*+-])([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"name":"markup.list.unnumbered.markdown","patterns":[{"include":"#block"},{"include":"text.html.markdown#list_paragraph"}],"while":"((^|\\\\G)([ ]*|\\\\t))|(^[ \\\\t]*$)"},{"begin":"(^|\\\\G)([ ]*)(\\\\d+\\\\.)([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"name":"markup.list.numbered.markdown","patterns":[{"include":"#block"},{"include":"text.html.markdown#list_paragraph"}],"while":"((^|\\\\G)([ ]*|\\\\t))|(^[ \\\\t]*$)"}]},"paragraph":{"begin":"(^|\\\\G)[ ]*(?=\\\\S)","name":"meta.paragraph.markdown","patterns":[{"include":"text.html.markdown#inline"},{"include":"text.html.derivative"},{"include":"#heading-setext"}],"while":"(^|\\\\G)((?=\\\\s*[-=]{3,}\\\\s*$)|[ ]{4,}(?=\\\\S))"},"span":{"captures":{"1":{"name":"punctuation.definition.tag.start.component"},"2":{"name":"string.other.link.description.title.markdown"},"3":{"name":"punctuation.definition.tag.end.component"},"4":{"patterns":[{"include":"#attributes"}]}},"match":"(\\\\[)([^]]*)(\\\\])(({)([^{]*)(}))?\\\\s","name":"span.component.mdc"}},"scopeName":"text.markdown.mdc","embeddedLangs":["markdown","yaml","html-derivative"]}`)),u=[...e,...r,...t,a];export{u as default}; diff --git a/_nuxt/CNXuF1yM.js b/_nuxt/CNXuF1yM.js new file mode 100644 index 0000000..bd7bcd6 --- /dev/null +++ b/_nuxt/CNXuF1yM.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse('{"displayName":"Markdown","name":"markdown","patterns":[{"include":"#frontMatter"},{"include":"#block"}],"repository":{"ampersand":{"comment":"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.","match":"&(?!([a-zA-Z0-9]+|#\\\\d+|#x[0-9a-fA-F]+);)","name":"meta.other.valid-ampersand.markdown"},"block":{"patterns":[{"include":"#separator"},{"include":"#heading"},{"include":"#blockquote"},{"include":"#lists"},{"include":"#fenced_code_block"},{"include":"#raw_block"},{"include":"#link-def"},{"include":"#html"},{"include":"#table"},{"include":"#paragraph"}]},"blockquote":{"begin":"(^|\\\\G)[ ]{0,3}(>) ?","captures":{"2":{"name":"punctuation.definition.quote.begin.markdown"}},"name":"markup.quote.markdown","patterns":[{"include":"#block"}],"while":"(^|\\\\G)\\\\s*(>) ?"},"bold":{"begin":"(?(\\\\*\\\\*(?=\\\\w)|(?]*+>|(?`+)([^`]|(?!(?(?!`))`)*+\\\\k|\\\\\\\\[\\\\\\\\`*_{}\\\\[\\\\]()#.!+\\\\->]?+|\\\\[((?[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g*+\\\\])*+\\\\](([ ]?\\\\[[^\\\\]]*+\\\\])|(\\\\([ \\\\t]*+?[ \\\\t]*+((?[\'\\"])(.*?)\\\\k<title>)?\\\\))))|(?!(?<=\\\\S)\\\\k<open>).)++(?<=\\\\S)(?=__\\\\b|\\\\*\\\\*)\\\\k<open>)","captures":{"1":{"name":"punctuation.definition.bold.markdown"}},"end":"(?<=\\\\S)(\\\\1)","name":"markup.bold.markdown","patterns":[{"applyEndPatternLast":1,"begin":"(?=<[^>]*?>)","end":"(?<=>)","patterns":[{"include":"text.html.derivative"}]},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"},{"include":"#strikethrough"}]},"bracket":{"comment":"Markdown will convert this for us. We match it so that the HTML grammar will not mark it up as invalid.","match":"<(?![a-zA-Z/?$!])","name":"meta.other.valid-bracket.markdown"},"escape":{"match":"\\\\\\\\[-`*_#+.!(){}\\\\[\\\\]\\\\\\\\>]","name":"constant.character.escape.markdown"},"fenced_code_block":{"patterns":[{"include":"#fenced_code_block_css"},{"include":"#fenced_code_block_basic"},{"include":"#fenced_code_block_ini"},{"include":"#fenced_code_block_java"},{"include":"#fenced_code_block_lua"},{"include":"#fenced_code_block_makefile"},{"include":"#fenced_code_block_perl"},{"include":"#fenced_code_block_r"},{"include":"#fenced_code_block_ruby"},{"include":"#fenced_code_block_php"},{"include":"#fenced_code_block_sql"},{"include":"#fenced_code_block_vs_net"},{"include":"#fenced_code_block_xml"},{"include":"#fenced_code_block_xsl"},{"include":"#fenced_code_block_yaml"},{"include":"#fenced_code_block_dosbatch"},{"include":"#fenced_code_block_clojure"},{"include":"#fenced_code_block_coffee"},{"include":"#fenced_code_block_c"},{"include":"#fenced_code_block_cpp"},{"include":"#fenced_code_block_diff"},{"include":"#fenced_code_block_dockerfile"},{"include":"#fenced_code_block_git_commit"},{"include":"#fenced_code_block_git_rebase"},{"include":"#fenced_code_block_go"},{"include":"#fenced_code_block_groovy"},{"include":"#fenced_code_block_pug"},{"include":"#fenced_code_block_js"},{"include":"#fenced_code_block_js_regexp"},{"include":"#fenced_code_block_json"},{"include":"#fenced_code_block_jsonc"},{"include":"#fenced_code_block_less"},{"include":"#fenced_code_block_objc"},{"include":"#fenced_code_block_swift"},{"include":"#fenced_code_block_scss"},{"include":"#fenced_code_block_perl6"},{"include":"#fenced_code_block_powershell"},{"include":"#fenced_code_block_python"},{"include":"#fenced_code_block_julia"},{"include":"#fenced_code_block_regexp_python"},{"include":"#fenced_code_block_rust"},{"include":"#fenced_code_block_scala"},{"include":"#fenced_code_block_shell"},{"include":"#fenced_code_block_ts"},{"include":"#fenced_code_block_tsx"},{"include":"#fenced_code_block_csharp"},{"include":"#fenced_code_block_fsharp"},{"include":"#fenced_code_block_dart"},{"include":"#fenced_code_block_handlebars"},{"include":"#fenced_code_block_markdown"},{"include":"#fenced_code_block_log"},{"include":"#fenced_code_block_erlang"},{"include":"#fenced_code_block_elixir"},{"include":"#fenced_code_block_latex"},{"include":"#fenced_code_block_bibtex"},{"include":"#fenced_code_block_twig"},{"include":"#fenced_code_block_unknown"}]},"fenced_code_block_basic":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(html|htm|shtml|xhtml|inc|tmpl|tpl)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.html","patterns":[{"include":"text.html.basic"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_bibtex":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(bibtex)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.bibtex","patterns":[{"include":"text.bibtex"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_c":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(c|h)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.c","patterns":[{"include":"source.c"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_clojure":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(clj|cljs|clojure)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.clojure","patterns":[{"include":"source.clojure"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_coffee":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(coffee|Cakefile|coffee.erb)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.coffee","patterns":[{"include":"source.coffee"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_cpp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(cpp|c\\\\+\\\\+|cxx)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.cpp source.cpp","patterns":[{"include":"source.cpp"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_csharp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(cs|csharp|c#)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.csharp","patterns":[{"include":"source.cs"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_css":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(css|css.erb)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.css","patterns":[{"include":"source.css"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_dart":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(dart)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.dart","patterns":[{"include":"source.dart"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_diff":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(patch|diff|rej)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.diff","patterns":[{"include":"source.diff"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_dockerfile":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(dockerfile|Dockerfile)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.dockerfile","patterns":[{"include":"source.dockerfile"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_dosbatch":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(bat|batch)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.dosbatch","patterns":[{"include":"source.batchfile"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_elixir":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(elixir)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.elixir","patterns":[{"include":"source.elixir"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_erlang":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(erlang)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.erlang","patterns":[{"include":"source.erlang"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_fsharp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(fs|fsharp|f#)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.fsharp","patterns":[{"include":"source.fsharp"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_git_commit":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(COMMIT_EDITMSG|MERGE_MSG)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.git_commit","patterns":[{"include":"text.git-commit"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_git_rebase":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(git-rebase-todo)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.git_rebase","patterns":[{"include":"text.git-rebase"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_go":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(go|golang)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.go","patterns":[{"include":"source.go"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_groovy":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(groovy|gvy)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.groovy","patterns":[{"include":"source.groovy"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_handlebars":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(handlebars|hbs)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.handlebars","patterns":[{"include":"text.html.handlebars"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_ini":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(ini|conf)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.ini","patterns":[{"include":"source.ini"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_java":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(java|bsh)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.java","patterns":[{"include":"source.java"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_js":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(js|jsx|javascript|es6|mjs|cjs|dataviewjs|\\\\{\\\\.js.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.javascript","patterns":[{"include":"source.js"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_js_regexp":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(regexp)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.js_regexp","patterns":[{"include":"source.js.regexp"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_json":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(json|json5|sublime-settings|sublime-menu|sublime-keymap|sublime-mousemap|sublime-theme|sublime-build|sublime-project|sublime-completions)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.json","patterns":[{"include":"source.json"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_jsonc":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(jsonc)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.jsonc","patterns":[{"include":"source.json.comments"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_julia":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(julia|\\\\{\\\\.julia.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.julia","patterns":[{"include":"source.julia"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_latex":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(latex|tex)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.latex","patterns":[{"include":"text.tex.latex"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_less":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(less)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.less","patterns":[{"include":"source.css.less"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_log":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(log)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.log","patterns":[{"include":"text.log"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_lua":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(lua)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.lua","patterns":[{"include":"source.lua"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_makefile":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(Makefile|makefile|GNUmakefile|OCamlMakefile)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.makefile","patterns":[{"include":"source.makefile"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_markdown":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(markdown|md)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.markdown","patterns":[{"include":"text.html.markdown"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_objc":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(objectivec|objective-c|mm|objc|obj-c|m|h)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.objc","patterns":[{"include":"source.objc"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_perl":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(perl|pl|pm|pod|t|PL|psgi|vcl)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.perl","patterns":[{"include":"source.perl"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_perl6":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(perl6|p6|pl6|pm6|nqp)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.perl6","patterns":[{"include":"source.perl.6"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_php":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(php|php3|php4|php5|phpt|phtml|aw|ctp)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.php","patterns":[{"include":"text.html.basic"},{"include":"source.php"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_powershell":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(powershell|ps1|psm1|psd1|pwsh)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.powershell","patterns":[{"include":"source.powershell"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_pug":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(jade|pug)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.pug","patterns":[{"include":"text.pug"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_python":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(python|py|py3|rpy|pyw|cpy|SConstruct|Sconstruct|sconstruct|SConscript|gyp|gypi|\\\\{\\\\.python.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.python","patterns":[{"include":"source.python"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_r":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(R|r|s|S|Rprofile|\\\\{\\\\.r.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.r","patterns":[{"include":"source.r"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_regexp_python":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(re)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.regexp_python","patterns":[{"include":"source.regexp.python"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_ruby":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(ruby|rb|rbx|rjs|Rakefile|rake|cgi|fcgi|gemspec|irbrc|Capfile|ru|prawn|Cheffile|Gemfile|Guardfile|Hobofile|Vagrantfile|Appraisals|Rantfile|Berksfile|Berksfile.lock|Thorfile|Puppetfile)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.ruby","patterns":[{"include":"source.ruby"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_rust":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(rust|rs|\\\\{\\\\.rust.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.rust","patterns":[{"include":"source.rust"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_scala":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(scala|sbt)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.scala","patterns":[{"include":"source.scala"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_scss":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(scss)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.scss","patterns":[{"include":"source.css.scss"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_shell":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(shell|sh|bash|zsh|bashrc|bash_profile|bash_login|profile|bash_logout|.textmate_init|\\\\{\\\\.bash.+?\\\\})((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.shellscript","patterns":[{"include":"source.shell"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_sql":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(sql|ddl|dml)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.sql","patterns":[{"include":"source.sql"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_swift":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(swift)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.swift","patterns":[{"include":"source.swift"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_ts":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(typescript|ts)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.typescript","patterns":[{"include":"source.ts"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_tsx":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(tsx)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.typescriptreact","patterns":[{"include":"source.tsx"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_twig":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(twig)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.twig","patterns":[{"include":"source.twig"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_unknown":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?=([^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown"},"fenced_code_block_vs_net":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(vb)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.vs_net","patterns":[{"include":"source.asp.vb.net"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_xml":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(xml|xsd|tld|jsp|pt|cpt|dtml|rss|opml)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.xml","patterns":[{"include":"text.xml"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_xsl":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(xsl|xslt)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.xsl","patterns":[{"include":"text.xml.xsl"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"fenced_code_block_yaml":{"begin":"(^|\\\\G)(\\\\s*)(`{3,}|~{3,})\\\\s*(?i:(yaml|yml)((\\\\s+|:|,|\\\\{|\\\\?)[^`]*)?$)","beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"end":"(^|\\\\G)(\\\\2|\\\\s{0,3})(\\\\3)\\\\s*$","endCaptures":{"3":{"name":"punctuation.definition.markdown"}},"name":"markup.fenced_code.block.markdown","patterns":[{"begin":"(^|\\\\G)(\\\\s*)(.*)","contentName":"meta.embedded.block.yaml","patterns":[{"include":"source.yaml"}],"while":"(^|\\\\G)(?!\\\\s*([`~]{3,})\\\\s*$)"}]},"frontMatter":{"applyEndPatternLast":1,"begin":"\\\\A(?=(-{3,}))","end":"^ {,3}\\\\1-*[ \\\\t]*$|^[ \\\\t]*\\\\.{3}$","endCaptures":{"0":{"name":"punctuation.definition.end.frontmatter"}},"patterns":[{"begin":"\\\\A(-{3,})(.*)$","beginCaptures":{"1":{"name":"punctuation.definition.begin.frontmatter"},"2":{"name":"comment.frontmatter"}},"contentName":"meta.embedded.block.frontmatter","patterns":[{"include":"source.yaml"}],"while":"^(?! {,3}\\\\1-*[ \\\\t]*$|[ \\\\t]*\\\\.{3}$)"}]},"heading":{"captures":{"1":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{6})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.6.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{5})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.5.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{4})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.4.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{3})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.3.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{2})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.2.markdown"},{"captures":{"1":{"name":"punctuation.definition.heading.markdown"},"2":{"name":"entity.name.section.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"}]},"3":{"name":"punctuation.definition.heading.markdown"}},"match":"(#{1})\\\\s+(.*?)(?:\\\\s+(#+))?\\\\s*$","name":"heading.1.markdown"}]}},"match":"(?:^|\\\\G)[ ]{0,3}(#{1,6}\\\\s+(.*?)(\\\\s+#{1,6})?\\\\s*)$","name":"markup.heading.markdown"},"heading-setext":{"patterns":[{"match":"^(={3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.1.markdown"},{"match":"^(-{3,})(?=[ \\\\t]*$\\\\n?)","name":"markup.heading.setext.2.markdown"}]},"html":{"patterns":[{"begin":"(^|\\\\G)\\\\s*(<!--)","captures":{"1":{"name":"punctuation.definition.comment.html"},"2":{"name":"punctuation.definition.comment.html"}},"end":"(-->)","name":"comment.block.html"},{"begin":"(?i)(^|\\\\G)\\\\s*(?=<(script|style|pre)(\\\\s|$|>)(?!.*?</(script|style|pre)>))","end":"(?i)(.*)((</)(script|style|pre)(>))","endCaptures":{"1":{"patterns":[{"include":"text.html.derivative"}]},"2":{"name":"meta.tag.structure.$4.end.html"},"3":{"name":"punctuation.definition.tag.begin.html"},"4":{"name":"entity.name.tag.html"},"5":{"name":"punctuation.definition.tag.end.html"}},"patterns":[{"begin":"(\\\\s*|$)","patterns":[{"include":"text.html.derivative"}],"while":"(?i)^(?!.*</(script|style|pre)>)"}]},{"begin":"(?i)(^|\\\\G)\\\\s*(?=</?[a-zA-Z]+[^\\\\s/>]*(\\\\s|$|/?>))","patterns":[{"include":"text.html.derivative"}],"while":"^(?!\\\\s*$)"},{"begin":"(^|\\\\G)\\\\s*(?=(<[a-zA-Z0-9\\\\-](/?>|\\\\s.*?>)|</[a-zA-Z0-9\\\\-]>)\\\\s*$)","patterns":[{"include":"text.html.derivative"}],"while":"^(?!\\\\s*$)"}]},"image-inline":{"captures":{"1":{"name":"punctuation.definition.link.description.begin.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.link.description.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"markup.underline.link.image.markdown"},"9":{"name":"punctuation.definition.link.markdown"},"10":{"name":"markup.underline.link.image.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.begin.markdown"},"14":{"name":"punctuation.definition.string.end.markdown"},"15":{"name":"string.other.link.description.title.markdown"},"16":{"name":"punctuation.definition.string.begin.markdown"},"17":{"name":"punctuation.definition.string.end.markdown"},"18":{"name":"string.other.link.description.title.markdown"},"19":{"name":"punctuation.definition.string.begin.markdown"},"20":{"name":"punctuation.definition.string.end.markdown"},"21":{"name":"punctuation.definition.metadata.markdown"}},"match":"(!\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])(\\\\()[ \\\\t]*((<)((?:\\\\\\\\[<>]|[^<>\\\\n])*)(>)|((?<url>(?>[^\\\\s()]+)|\\\\(\\\\g<url>*\\\\))*))[ \\\\t]*(?:((\\\\().+?(\\\\)))|((\\").+?(\\"))|((\').+?(\')))?\\\\s*(\\\\))","name":"meta.image.inline.markdown"},"image-ref":{"captures":{"1":{"name":"punctuation.definition.link.description.begin.markdown"},"2":{"name":"string.other.link.description.markdown"},"4":{"name":"punctuation.definition.link.description.end.markdown"},"5":{"name":"punctuation.definition.constant.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.markdown"}},"match":"(!\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])[ ]?(\\\\[)(.*?)(\\\\])","name":"meta.image.reference.markdown"},"inline":{"patterns":[{"include":"#ampersand"},{"include":"#bracket"},{"include":"#bold"},{"include":"#italic"},{"include":"#raw"},{"include":"#strikethrough"},{"include":"#escape"},{"include":"#image-inline"},{"include":"#image-ref"},{"include":"#link-email"},{"include":"#link-inet"},{"include":"#link-inline"},{"include":"#link-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref-shortcut"}]},"italic":{"begin":"(?<open>(\\\\*(?=\\\\w)|(?<!\\\\w)\\\\*|(?<!\\\\w)\\\\b_))(?=\\\\S)(?=(<[^>]*+>|(?<raw>`+)([^`]|(?!(?<!`)\\\\k<raw>(?!`))`)*+\\\\k<raw>|\\\\\\\\[\\\\\\\\`*_{}\\\\[\\\\]()#.!+\\\\->]?+|\\\\[((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+\\\\](([ ]?\\\\[[^\\\\]]*+\\\\])|(\\\\([ \\\\t]*+<?(.*?)>?[ \\\\t]*+((?<title>[\'\\"])(.*?)\\\\k<title>)?\\\\))))|\\\\k<open>\\\\k<open>|(?!(?<=\\\\S)\\\\k<open>).)++(?<=\\\\S)(?=_\\\\b|\\\\*)\\\\k<open>)","captures":{"1":{"name":"punctuation.definition.italic.markdown"}},"end":"(?<=\\\\S)(\\\\1)((?!\\\\1)|(?=\\\\1\\\\1))","name":"markup.italic.markdown","patterns":[{"applyEndPatternLast":1,"begin":"(?=<[^>]*?>)","end":"(?<=>)","patterns":[{"include":"text.html.derivative"}]},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"},{"include":"#strikethrough"}]},"link-def":{"captures":{"1":{"name":"punctuation.definition.constant.markdown"},"2":{"name":"constant.other.reference.link.markdown"},"3":{"name":"punctuation.definition.constant.markdown"},"4":{"name":"punctuation.separator.key-value.markdown"},"5":{"name":"punctuation.definition.link.markdown"},"6":{"name":"markup.underline.link.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"markup.underline.link.markdown"},"9":{"name":"string.other.link.description.title.markdown"},"10":{"name":"punctuation.definition.string.begin.markdown"},"11":{"name":"punctuation.definition.string.end.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.begin.markdown"},"14":{"name":"punctuation.definition.string.end.markdown"},"15":{"name":"string.other.link.description.title.markdown"},"16":{"name":"punctuation.definition.string.begin.markdown"},"17":{"name":"punctuation.definition.string.end.markdown"}},"match":"\\\\s*(\\\\[)([^]]+?)(\\\\])(:)[ \\\\t]*(?:(<)((?:\\\\\\\\[<>]|[^<>\\\\n])*)(>)|(\\\\S+?))[ \\\\t]*(?:((\\\\().+?(\\\\)))|((\\").+?(\\"))|((\').+?(\')))?\\\\s*$","name":"meta.link.reference.def.markdown"},"link-email":{"captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"4":{"name":"punctuation.definition.link.markdown"}},"match":"(<)((?:mailto:)?[a-zA-Z0-9.!#$%&\'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\\\.[a-zA-Z0-9-]+)*)(>)","name":"meta.link.email.lt-gt.markdown"},"link-inet":{"captures":{"1":{"name":"punctuation.definition.link.markdown"},"2":{"name":"markup.underline.link.markdown"},"3":{"name":"punctuation.definition.link.markdown"}},"match":"(<)((?:https?|ftp)://.*?)(>)","name":"meta.link.inet.markdown"},"link-inline":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown","patterns":[{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#strikethrough"},{"include":"#image-inline"}]},"4":{"name":"punctuation.definition.link.title.end.markdown"},"5":{"name":"punctuation.definition.metadata.markdown"},"7":{"name":"punctuation.definition.link.markdown"},"8":{"name":"markup.underline.link.markdown"},"9":{"name":"punctuation.definition.link.markdown"},"10":{"name":"markup.underline.link.markdown"},"12":{"name":"string.other.link.description.title.markdown"},"13":{"name":"punctuation.definition.string.begin.markdown"},"14":{"name":"punctuation.definition.string.end.markdown"},"15":{"name":"string.other.link.description.title.markdown"},"16":{"name":"punctuation.definition.string.begin.markdown"},"17":{"name":"punctuation.definition.string.end.markdown"},"18":{"name":"string.other.link.description.title.markdown"},"19":{"name":"punctuation.definition.string.begin.markdown"},"20":{"name":"punctuation.definition.string.end.markdown"},"21":{"name":"punctuation.definition.metadata.markdown"}},"match":"(\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])(\\\\()[ \\\\t]*((<)((?:\\\\\\\\[<>]|[^<>\\\\n])*)(>)|((?<url>(?>[^\\\\s()]+)|\\\\(\\\\g<url>*\\\\))*))[ \\\\t]*(?:((\\\\()[^()]*(\\\\)))|((\\")[^\\"]*(\\"))|((\')[^\']*(\')))?\\\\s*(\\\\))","name":"meta.link.inline.markdown"},"link-ref":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown","patterns":[{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#strikethrough"},{"include":"#image-inline"}]},"4":{"name":"punctuation.definition.link.title.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"constant.other.reference.link.markdown"},"7":{"name":"punctuation.definition.constant.end.markdown"}},"match":"(?<![\\\\]\\\\\\\\])(\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])(\\\\[)([^\\\\]]*+)(\\\\])","name":"meta.link.reference.markdown"},"link-ref-literal":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"4":{"name":"punctuation.definition.link.title.end.markdown"},"5":{"name":"punctuation.definition.constant.begin.markdown"},"6":{"name":"punctuation.definition.constant.end.markdown"}},"match":"(?<![\\\\]\\\\\\\\])(\\\\[)((?<square>[^\\\\[\\\\]\\\\\\\\]|\\\\\\\\.|\\\\[\\\\g<square>*+\\\\])*+)(\\\\])[ ]?(\\\\[)(\\\\])","name":"meta.link.reference.literal.markdown"},"link-ref-shortcut":{"captures":{"1":{"name":"punctuation.definition.link.title.begin.markdown"},"2":{"name":"string.other.link.title.markdown"},"3":{"name":"punctuation.definition.link.title.end.markdown"}},"match":"(?<![\\\\]\\\\\\\\])(\\\\[)((?:[^\\\\s\\\\[\\\\]\\\\\\\\]|\\\\\\\\[\\\\[\\\\]])+?)((?<!\\\\\\\\)\\\\])","name":"meta.link.reference.markdown"},"list_paragraph":{"begin":"(^|\\\\G)(?=\\\\S)(?![*+->]\\\\s|\\\\d+\\\\.\\\\s)","name":"meta.paragraph.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"},{"include":"#heading-setext"}],"while":"(^|\\\\G)(?!\\\\s*$|#|[ ]{0,3}([-*_>][ ]{2,}){3,}[ \\\\t]*$\\\\n?|[ ]{0,3}[*+->]|[ ]{0,3}\\\\d+\\\\.)"},"lists":{"patterns":[{"begin":"(^|\\\\G)([ ]{0,3})([*+-])([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"comment":"Currently does not support un-indented second lines.","name":"markup.list.unnumbered.markdown","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"while":"((^|\\\\G)([ ]{2,4}|\\\\t))|(^[ \\\\t]*$)"},{"begin":"(^|\\\\G)([ ]{0,3})(\\\\d+[\\\\.)])([ \\\\t])","beginCaptures":{"3":{"name":"punctuation.definition.list.begin.markdown"}},"name":"markup.list.numbered.markdown","patterns":[{"include":"#block"},{"include":"#list_paragraph"}],"while":"((^|\\\\G)([ ]{2,4}|\\\\t))|(^[ \\\\t]*$)"}]},"paragraph":{"begin":"(^|\\\\G)[ ]{0,3}(?=[^ \\\\t\\\\n])","name":"meta.paragraph.markdown","patterns":[{"include":"#inline"},{"include":"text.html.derivative"},{"include":"#heading-setext"}],"while":"(^|\\\\G)((?=\\\\s*[-=]{3,}\\\\s*$)|[ ]{4,}(?=[^ \\\\t\\\\n]))"},"raw":{"captures":{"1":{"name":"punctuation.definition.raw.markdown"},"3":{"name":"punctuation.definition.raw.markdown"}},"match":"(`+)((?:[^`]|(?!(?<!`)\\\\1(?!`))`)*+)(\\\\1)","name":"markup.inline.raw.string.markdown"},"raw_block":{"begin":"(^|\\\\G)([ ]{4}|\\\\t)","name":"markup.raw.block.markdown","while":"(^|\\\\G)([ ]{4}|\\\\t)"},"separator":{"match":"(^|\\\\G)[ ]{0,3}([\\\\*\\\\-_])([ ]{0,2}\\\\2){2,}[ \\\\t]*$\\\\n?","name":"meta.separator.markdown"},"strikethrough":{"captures":{"1":{"name":"punctuation.definition.strikethrough.markdown"},"2":{"patterns":[{"applyEndPatternLast":1,"begin":"(?=<[^>]*?>)","end":"(?<=>)","patterns":[{"include":"text.html.derivative"}]},{"include":"#escape"},{"include":"#ampersand"},{"include":"#bracket"},{"include":"#raw"},{"include":"#bold"},{"include":"#italic"},{"include":"#image-inline"},{"include":"#link-inline"},{"include":"#link-inet"},{"include":"#link-email"},{"include":"#image-ref"},{"include":"#link-ref-literal"},{"include":"#link-ref"},{"include":"#link-ref-shortcut"}]},"3":{"name":"punctuation.definition.strikethrough.markdown"}},"match":"(?<!\\\\\\\\)(~{2,})((?:[^~]|(?!(?<![~\\\\\\\\])\\\\1(?!~))~)*+)(\\\\1)","name":"markup.strikethrough.markdown"},"table":{"begin":"(^|\\\\G)(\\\\|)(?=[^|].+\\\\|\\\\s*$)","beginCaptures":{"2":{"name":"punctuation.definition.table.markdown"}},"name":"markup.table.markdown","patterns":[{"match":"\\\\|","name":"punctuation.definition.table.markdown"},{"captures":{"1":{"name":"punctuation.separator.table.markdown"}},"match":"(?<=\\\\|)\\\\s*(:?-+:?)\\\\s*(?=\\\\|)"},{"captures":{"1":{"patterns":[{"include":"#inline"}]}},"match":"(?<=\\\\|)\\\\s*(?=\\\\S)((\\\\\\\\\\\\||[^|])+)(?<=\\\\S)\\\\s*(?=\\\\|)"}],"while":"(^|\\\\G)(?=\\\\|)"}},"scopeName":"text.html.markdown","embeddedLangs":[],"aliases":["md"],"embeddedLangsLazy":["css","html","ini","java","lua","make","perl","r","ruby","php","sql","vb","xml","xsl","yaml","bat","clojure","coffee","c","cpp","diff","docker","git-commit","git-rebase","go","groovy","pug","javascript","json","jsonc","less","objective-c","swift","scss","raku","powershell","python","julia","regexp","rust","scala","shellscript","typescript","tsx","csharp","fsharp","dart","handlebars","log","erlang","elixir","latex","bibtex","html-derivative"]}')),n=[e];export{n as default}; diff --git a/_nuxt/COj52qHV.js b/_nuxt/COj52qHV.js new file mode 100644 index 0000000..7ec695f --- /dev/null +++ b/_nuxt/COj52qHV.js @@ -0,0 +1 @@ +import{ak as l,al as u,k as g,d as p,an as c,ao as b,B as f,aK as y,ar as k,c as s,ag as m,w as v,e as r,n as d,ah as o,h as n,ai as h,ba as $}from"./WKNqgS7_.js";const C={base:"",background:"bg-white dark:bg-gray-900",divide:"divide-y divide-gray-200 dark:divide-gray-800",ring:"ring-1 ring-gray-200 dark:ring-gray-800",rounded:"rounded-lg",shadow:"shadow",body:{base:"",background:"",padding:"px-4 py-5 sm:p-6"},header:{base:"",background:"",padding:"px-4 py-5 sm:px-6"},footer:{base:"",background:"",padding:"px-4 py-4 sm:px-6"}},w=l(u.ui.strategy,u.ui.card,C),B=p({inheritAttrs:!1,props:{as:{type:String,default:"div"},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(a){const{ui:e,attrs:i}=c("card",b(a,"ui"),w),t=f(()=>y(k(e.value.base,e.value.rounded,e.value.divide,e.value.ring,e.value.shadow,e.value.background),a.class));return{ui:e,attrs:i,cardClass:t}}});function S(a,e,i,t,j,A){return s(),m($(a.$attrs.onSubmit?"form":a.as),h({class:a.cardClass},a.attrs),{default:v(()=>[a.$slots.header?(s(),r("div",{key:0,class:d([a.ui.header.base,a.ui.header.padding,a.ui.header.background])},[o(a.$slots,"header")],2)):n("",!0),a.$slots.default?(s(),r("div",{key:1,class:d([a.ui.body.base,a.ui.body.padding,a.ui.body.background])},[o(a.$slots,"default")],2)):n("",!0),a.$slots.footer?(s(),r("div",{key:2,class:d([a.ui.footer.base,a.ui.footer.padding,a.ui.footer.background])},[o(a.$slots,"footer")],2)):n("",!0)]),_:3},16,["class"])}const z=g(B,[["render",S]]);export{z as _}; diff --git a/_nuxt/CPdV1HBm.js b/_nuxt/CPdV1HBm.js new file mode 100644 index 0000000..b0a6269 --- /dev/null +++ b/_nuxt/CPdV1HBm.js @@ -0,0 +1 @@ +import{_ as m}from"./CuXcSdBY.js";import"./WKNqgS7_.js";export{m as default}; diff --git a/_nuxt/CRTu1PAQ.js b/_nuxt/CRTu1PAQ.js new file mode 100644 index 0000000..f3988b4 --- /dev/null +++ b/_nuxt/CRTu1PAQ.js @@ -0,0 +1 @@ +import{_ as m}from"./CWTHGu1v.js";import"./WKNqgS7_.js";export{m as default}; diff --git a/_nuxt/CUMxMy4f.js b/_nuxt/CUMxMy4f.js new file mode 100644 index 0000000..262846d --- /dev/null +++ b/_nuxt/CUMxMy4f.js @@ -0,0 +1 @@ +import{f as i}from"./BneCoJRQ.js";import{d as u,b6 as f,B as c,S as a,bk as d}from"./WKNqgS7_.js";const p=u({name:"MDCSlot",functional:!0,props:{name:{type:String,default:"default"},unwrap:{type:[Boolean,String],default:!1},use:{type:Function,default:void 0}},setup(t){const{parent:s}=d(),{default:n}=f(),r=c(()=>typeof t.unwrap=="string"?t.unwrap.split(" "):["*"]);return{fallbackSlot:n,tags:r,parent:s}},render({use:t,unwrap:s,fallbackSlot:n,tags:r,parent:e}){var l;try{let o=t;return typeof t=="string"&&(o=(e==null?void 0:e.slots[t])||((l=e==null?void 0:e.parent)==null?void 0:l.slots[t]),console.warn(`Please set :use="$slots.${t}" in <MDCSlot> component to enable reactivity`)),o?s?i(o(),r):[o()]:n?n():a("div")}catch{return a("div")}}}),g=u({props:{use:{type:Function,default:void 0},unwrap:{type:[Boolean,String],default:!1}},render(t){return a(p,t)}});export{g as default}; diff --git a/_nuxt/CWTHGu1v.js b/_nuxt/CWTHGu1v.js new file mode 100644 index 0000000..be411e1 --- /dev/null +++ b/_nuxt/CWTHGu1v.js @@ -0,0 +1 @@ +import{d as v,an as y,B as n,C as c,c as a,ag as r,h as u,a9 as m}from"./WKNqgS7_.js";const j=v({__name:"ProseCodeIcon",props:{icon:{type:String,default:void 0},filename:{type:String,default:void 0}},setup(t){const e=t,l={"package.json":"i-vscode-icons-file-type-node","tsconfig.json":"i-vscode-icons-file-type-tsconfig",".npmrc":"i-vscode-icons-file-type-npm",".editorconfig":"i-vscode-icons-file-type-editorconfig",".eslintrc":"i-vscode-icons-file-type-eslint",".eslintrc.cjs":"i-vscode-icons-file-type-eslint",".eslintignore":"i-vscode-icons-file-type-eslint","eslint.config.js":"i-vscode-icons-file-type-eslint","eslint.config.mjs":"i-vscode-icons-file-type-eslint","eslint.config.cjs":"i-vscode-icons-file-type-eslint",".gitignore":"i-vscode-icons-file-type-git","yarn.lock":"i-vscode-icons-file-type-yarn",".env":"i-vscode-icons-file-type-dotenv",".env.example":"i-vscode-icons-file-type-dotenv",".vscode/settings.json":"i-vscode-icons-file-type-vscode",nuxt:"i-vscode-icons-file-type-nuxt",".nuxtrc":"i-vscode-icons-file-type-nuxt",".nuxtignore":"i-vscode-icons-file-type-nuxt","nuxt.config.js":"i-vscode-icons-file-type-nuxt","nuxt.config.ts":"i-vscode-icons-file-type-nuxt","nuxt.schema.ts":"i-vscode-icons-file-type-nuxt","tailwind.config.js":"i-vscode-icons-file-type-tailwind","tailwind.config.ts":"i-vscode-icons-file-type-tailwind",vue:"i-vscode-icons-file-type-vue",ts:"i-vscode-icons-file-type-typescript",tsx:"i-vscode-icons-file-type-typescript",mjs:"i-vscode-icons-file-type-js",cjs:"i-vscode-icons-file-type-js",js:"i-vscode-icons-file-type-js",jsx:"i-vscode-icons-file-type-js",md:"i-vscode-icons-file-type-markdown",py:"i-vscode-icons-file-type-python",ico:"i-vscode-icons-file-type-favicon",npm:"i-vscode-icons-file-type-npm",pnpm:"i-vscode-icons-file-type-pnpm",npx:"i-vscode-icons-file-type-npm",yarn:"i-vscode-icons-file-type-yarn",bun:"i-vscode-icons-file-type-bun",yml:"i-vscode-icons-file-type-yaml",terminal:"i-heroicons-command-line",csv:"i-vscode-icons-file-type-text",cs:"i-vscode-icons-file-type-csharp",asm:"i-vscode-icons-file-type-assembly",f:"i-vscode-icons-file-type-fortran",hs:"i-vscode-icons-file-type-haskell",fs:"i-vscode-icons-file-type-fsharp",kt:"i-vscode-icons-file-type-kotlin",rs:"i-vscode-icons-file-type-rust",rb:"i-vscode-icons-file-type-ruby",lsp:"i-vscode-icons-file-type-lisp",exs:"i-vscode-icons-file-type-elixir",erl:"i-vscode-icons-file-type-erlang",sbt:"i-vscode-icons-file-type-scala",h:"i-vscode-icons-file-type-cppheader",ino:"i-vscode-icons-file-type-arduino",pl:"i-vscode-icons-file-type-perl",jl:"i-vscode-icons-file-type-julia",dart:"i-vscode-icons-file-type-dartlang"},{ui:i}=y("content.prose.code.icon",void 0,l,void 0,!0),s=n(()=>{var o;return(((o=e.filename)==null?void 0:o.split(".").pop())||"").toLowerCase()}),p=n(()=>e.icon||i.value[s.value]||e.filename.includes(".")),d=n(()=>e.icon??(e.filename&&(i.value[e.filename.split("/").pop()]??i.value[s.value]??`i-vscode-icons-file-type-${s.value}`)));return(o,g)=>{const f=m;return c(p)?(a(),r(f,{key:0,name:c(d).split(" ").pop(),class:"size-4"},null,8,["name"])):u("",!0)}}});export{j as _}; diff --git a/_nuxt/CXLurpFu.js b/_nuxt/CXLurpFu.js new file mode 100644 index 0000000..d3995fc --- /dev/null +++ b/_nuxt/CXLurpFu.js @@ -0,0 +1 @@ +import{bo as _,bB as B,bC as j,bD as O,bE as T,bF as W,bG as $,bH as P,bI as M,bt as J,bl as H,p as D,bJ as k,u as G,bj as N,bK as F}from"./WKNqgS7_.js";import{c as Z}from"./Cpj98o6Y.js";const q="memory",V=()=>{const t=new Map;return{name:q,getInstance:()=>t,hasItem(r){return t.has(r)},getItem(r){return t.get(r)??null},getItemRaw(r){return t.get(r)??null},setItem(r,n){t.set(r,n)},setItemRaw(r,n){t.set(r,n)},removeItem(r){t.delete(r)},getKeys(){return[...t.keys()]},clear(){t.clear()},dispose(){t.clear()}}};function Q(t){return!t||typeof t.then!="function"?Promise.resolve(t):t}function p(t,...r){try{return Q(t(...r))}catch(n){return Promise.reject(n)}}function X(t){const r=typeof t;return t===null||r!=="object"&&r!=="function"}function ee(t){const r=Object.getPrototypeOf(t);return!r||r.isPrototypeOf(Object)}function S(t){if(X(t))return String(t);if(ee(t)||Array.isArray(t))return JSON.stringify(t);if(typeof t.toJSON=="function")return S(t.toJSON());throw new Error("[unstorage] Cannot stringify value!")}function U(){if(typeof Buffer>"u")throw new TypeError("[unstorage] Buffer is not supported!")}const R="base64:";function te(t){if(typeof t=="string")return t;U();const r=Buffer.from(t).toString("base64");return R+r}function re(t){return typeof t!="string"||!t.startsWith(R)?t:(U(),Buffer.from(t.slice(R.length),"base64"))}const ne=["hasItem","getItem","getItemRaw","setItem","setItemRaw","removeItem","getMeta","setMeta","removeMeta","getKeys","clear","mount","unmount"];function ie(t,r){if(r=E(r),!r)return t;const n={...t};for(const a of ne)n[a]=(c="",...l)=>t[a](r+c,...l);return n.getKeys=(a="",...c)=>t.getKeys(r+a,...c).then(l=>l.map(o=>o.slice(r.length))),n}function y(t){return t?t.split("?")[0].replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,""):""}function ae(...t){return y(t.join(":"))}function E(t){return t=y(t),t?t+":":""}const se="memory",oe=()=>{const t=new Map;return{name:se,getInstance:()=>t,hasItem(r){return t.has(r)},getItem(r){return t.get(r)??null},getItemRaw(r){return t.get(r)??null},setItem(r,n){t.set(r,n)},setItemRaw(r,n){t.set(r,n)},removeItem(r){t.delete(r)},getKeys(){return[...t.keys()]},clear(){t.clear()},dispose(){t.clear()}}};function ue(t={}){const r={mounts:{"":t.driver||oe()},mountpoints:[""],watching:!1,watchListeners:[],unwatch:{}},n=e=>{for(const i of r.mountpoints)if(e.startsWith(i))return{base:i,relativeKey:e.slice(i.length),driver:r.mounts[i]};return{base:"",relativeKey:e,driver:r.mounts[""]}},a=(e,i)=>r.mountpoints.filter(s=>s.startsWith(e)||i&&e.startsWith(s)).map(s=>({relativeBase:e.length>s.length?e.slice(s.length):void 0,mountpoint:s,driver:r.mounts[s]})),c=(e,i)=>{if(r.watching){i=y(i);for(const s of r.watchListeners)s(e,i)}},l=async()=>{if(!r.watching){r.watching=!0;for(const e in r.mounts)r.unwatch[e]=await b(r.mounts[e],c,e)}},o=async()=>{if(r.watching){for(const e in r.unwatch)await r.unwatch[e]();r.unwatch={},r.watching=!1}},g=(e,i,s)=>{const u=new Map,m=f=>{let d=u.get(f.base);return d||(d={driver:f.driver,base:f.base,items:[]},u.set(f.base,d)),d};for(const f of e){const d=typeof f=="string",v=y(d?f:f.key),I=d?void 0:f.value,w=d||!f.options?i:{...i,...f.options},A=n(v);m(A).items.push({key:v,value:I,relativeKey:A.relativeKey,options:w})}return Promise.all([...u.values()].map(f=>s(f))).then(f=>f.flat())},h={hasItem(e,i={}){e=y(e);const{relativeKey:s,driver:u}=n(e);return p(u.hasItem,s,i)},getItem(e,i={}){e=y(e);const{relativeKey:s,driver:u}=n(e);return p(u.getItem,s,i).then(m=>_(m))},getItems(e,i){return g(e,i,s=>s.driver.getItems?p(s.driver.getItems,s.items.map(u=>({key:u.relativeKey,options:u.options})),i).then(u=>u.map(m=>({key:ae(s.base,m.key),value:_(m.value)}))):Promise.all(s.items.map(u=>p(s.driver.getItem,u.relativeKey,u.options).then(m=>({key:u.key,value:_(m)})))))},getItemRaw(e,i={}){e=y(e);const{relativeKey:s,driver:u}=n(e);return u.getItemRaw?p(u.getItemRaw,s,i):p(u.getItem,s,i).then(m=>re(m))},async setItem(e,i,s={}){if(i===void 0)return h.removeItem(e);e=y(e);const{relativeKey:u,driver:m}=n(e);m.setItem&&(await p(m.setItem,u,S(i),s),m.watch||c("update",e))},async setItems(e,i){await g(e,i,async s=>{if(s.driver.setItems)return p(s.driver.setItems,s.items.map(u=>({key:u.relativeKey,value:S(u.value),options:u.options})),i);s.driver.setItem&&await Promise.all(s.items.map(u=>p(s.driver.setItem,u.relativeKey,S(u.value),u.options)))})},async setItemRaw(e,i,s={}){if(i===void 0)return h.removeItem(e,s);e=y(e);const{relativeKey:u,driver:m}=n(e);if(m.setItemRaw)await p(m.setItemRaw,u,i,s);else if(m.setItem)await p(m.setItem,u,te(i),s);else return;m.watch||c("update",e)},async removeItem(e,i={}){typeof i=="boolean"&&(i={removeMeta:i}),e=y(e);const{relativeKey:s,driver:u}=n(e);u.removeItem&&(await p(u.removeItem,s,i),(i.removeMeta||i.removeMata)&&await p(u.removeItem,s+"$",i),u.watch||c("remove",e))},async getMeta(e,i={}){typeof i=="boolean"&&(i={nativeOnly:i}),e=y(e);const{relativeKey:s,driver:u}=n(e),m=Object.create(null);if(u.getMeta&&Object.assign(m,await p(u.getMeta,s,i)),!i.nativeOnly){const f=await p(u.getItem,s+"$",i).then(d=>_(d));f&&typeof f=="object"&&(typeof f.atime=="string"&&(f.atime=new Date(f.atime)),typeof f.mtime=="string"&&(f.mtime=new Date(f.mtime)),Object.assign(m,f))}return m},setMeta(e,i,s={}){return this.setItem(e+"$",i,s)},removeMeta(e,i={}){return this.removeItem(e+"$",i)},async getKeys(e,i={}){e=E(e);const s=a(e,!0);let u=[];const m=[];for(const f of s){const d=await p(f.driver.getKeys,f.relativeBase,i);for(const v of d){const I=f.mountpoint+y(v);u.some(w=>I.startsWith(w))||m.push(I)}u=[f.mountpoint,...u.filter(v=>!v.startsWith(f.mountpoint))]}return e?m.filter(f=>f.startsWith(e)&&f[f.length-1]!=="$"):m.filter(f=>f[f.length-1]!=="$")},async clear(e,i={}){e=E(e),await Promise.all(a(e,!1).map(async s=>{if(s.driver.clear)return p(s.driver.clear,s.relativeBase,i);if(s.driver.removeItem){const u=await s.driver.getKeys(s.relativeBase||"",i);return Promise.all(u.map(m=>s.driver.removeItem(m,i)))}}))},async dispose(){await Promise.all(Object.values(r.mounts).map(e=>x(e)))},async watch(e){return await l(),r.watchListeners.push(e),async()=>{r.watchListeners=r.watchListeners.filter(i=>i!==e),r.watchListeners.length===0&&await o()}},async unwatch(){r.watchListeners=[],await o()},mount(e,i){if(e=E(e),e&&r.mounts[e])throw new Error(`already mounted at ${e}`);return e&&(r.mountpoints.push(e),r.mountpoints.sort((s,u)=>u.length-s.length)),r.mounts[e]=i,r.watching&&Promise.resolve(b(i,c,e)).then(s=>{r.unwatch[e]=s}).catch(console.error),h},async unmount(e,i=!0){e=E(e),!(!e||!r.mounts[e])&&(r.watching&&e in r.unwatch&&(r.unwatch[e](),delete r.unwatch[e]),i&&await x(r.mounts[e]),r.mountpoints=r.mountpoints.filter(s=>s!==e),delete r.mounts[e])},getMount(e=""){e=y(e)+":";const i=n(e);return{driver:i.driver,base:i.base}},getMounts(e="",i={}){return e=y(e),a(e,i.parents).map(u=>({driver:u.driver,base:u.mountpoint}))},keys:(e,i={})=>h.getKeys(e,i),get:(e,i={})=>h.getItem(e,i),set:(e,i,s={})=>h.setItem(e,i,s),has:(e,i={})=>h.hasItem(e,i),del:(e,i={})=>h.removeItem(e,i),remove:(e,i={})=>h.removeItem(e,i)};return h}function b(t,r,n){return t.watch?t.watch((a,c)=>r(a,n+c)):()=>{}}async function x(t){typeof t.dispose=="function"&&await p(t.dispose)}function ce(t={}){const r=le(n,t.operators);function n(a,c){return typeof c!="object"||c instanceof RegExp?r.$eq(a,c):Object.keys(c||{}).every(l=>{const o=c[l];if(l.startsWith("$")&&r[l]){const g=r[l];return typeof g=="function"?g(a,o):!1}return n(B(a,l),o)})}return n}function le(t,r={}){return{$match:(n,a)=>t(n,a),$eq:(n,a)=>a instanceof RegExp?a.test(n):n===a,$ne:(n,a)=>a instanceof RegExp?!a.test(n):n!==a,$not:(n,a)=>!t(n,a),$and:(n,a)=>(j(a,"$and requires an array as condition"),a.every(c=>t(n,c))),$or:(n,a)=>(j(a,"$or requires an array as condition"),a.some(c=>t(n,c))),$in:(n,a)=>O(a).some(c=>Array.isArray(n)?t(n,{$contains:c}):t(n,c)),$contains:(n,a)=>(n=Array.isArray(n)?n:String(n),O(a).every(c=>n.includes(c))),$icontains:(n,a)=>{if(typeof a!="string")throw new TypeError("$icontains requires a string, use $contains instead");return n=String(n).toLocaleLowerCase(),O(a).every(c=>n.includes(c.toLocaleLowerCase()))},$containsAny:(n,a)=>(j(a,"$containsAny requires an array as condition"),n=Array.isArray(n)?n:String(n),a.some(c=>n.includes(c))),$exists:(n,a)=>a?typeof n<"u":typeof n>"u",$type:(n,a)=>typeof n===String(a),$regex:(n,a)=>{if(!(a instanceof RegExp)){const c=String(a).match(/\/(.*)\/([dgimsuy]*)$/);a=c!=null&&c[1]?new RegExp(c[1],c[2]||""):new RegExp(a)}return a.test(String(n||""))},$lt:(n,a)=>n<a,$lte:(n,a)=>n<=a,$gt:(n,a)=>n>a,$gte:(n,a)=>n>=a,...r||{}}}function fe(t){const r=ce(),n=(l,{query:o,before:g,after:h})=>{const e=typeof o=="string"?{_path:o}:o,i=l.findIndex(u=>r(u,e));g=g??1,h=h??1;const s=new Array(g+h).fill(null,0);return i===-1?s:s.map((u,m)=>l[i-g+m+ +(m>=g)]||null)},a=[(l,o)=>{const g=l.result.filter(h=>O(o.where).every(e=>r(h,e)));return{...l,result:g,total:g.length}},(l,o)=>O(o.sort).forEach(g=>W(l.result,g)),function(o,g,h){var e;if(g.surround){let i=n(((e=o.result)==null?void 0:e.length)===1?h:o.result,g.surround);i=$(P(g.without))(i),i=$(M(g.only))(i),o.surround=i}return o}],c=[(l,o)=>{if(o.skip)return{...l,result:l.result.slice(o.skip),skip:o.skip}},(l,o)=>{if(o.limit)return{...l,result:l.result.slice(0,o.limit),limit:o.limit}},function(o,g,h){var e,i,s;if(g.dirConfig){const u=((e=o.result[0])==null?void 0:e._path)||((s=(i=g.where)==null?void 0:i.find(m=>m._path))==null?void 0:s._path);if(typeof u=="string"){const m=h.find(f=>f._path===J(u,"_dir"));m&&(o.dirConfig={_path:m._path,...P(["_"])(m)})}}return o},(l,o)=>({...l,result:$(P(o.without))(l.result)}),(l,o)=>({...l,result:$(M(o.only))(l.result)})];return async l=>{const o=await t(),g=l.params(),h={result:o,limit:0,skip:0,total:o.length},e=a.reduce((s,u)=>u(s,g,o)||s,h);if(g.count)return{result:e.result.length};const i=c.reduce((s,u)=>u(s,g,o)||s,e);return g.first?{...T(["skip","limit","total"])(i),result:i.result[0]}:i}}function L(t){const r=fe(t);return async n=>{var l;n.params().first&&n.withDirConfig();const a=n.params(),c=await r(n);return a.surround?c==null?void 0:c.surround:(c!=null&&c.dirConfig&&(c.result={_path:(l=c.dirConfig)==null?void 0:l._path,...c.result,_dir:c.dirConfig}),c==null?void 0:c.result)}}var me={exports:{}};(function(t,r){(function(n,a,c){t.exports=c(),t.exports.default=c()})("slugify",Z,function(){var n=JSON.parse(`{"$":"dollar","%":"percent","&":"and","<":"less",">":"greater","|":"or","¢":"cent","£":"pound","¤":"currency","¥":"yen","©":"(c)","ª":"a","®":"(r)","º":"o","À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","Æ":"AE","Ç":"C","È":"E","É":"E","Ê":"E","Ë":"E","Ì":"I","Í":"I","Î":"I","Ï":"I","Ð":"D","Ñ":"N","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","Ù":"U","Ú":"U","Û":"U","Ü":"U","Ý":"Y","Þ":"TH","ß":"ss","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","æ":"ae","ç":"c","è":"e","é":"e","ê":"e","ë":"e","ì":"i","í":"i","î":"i","ï":"i","ð":"d","ñ":"n","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","ù":"u","ú":"u","û":"u","ü":"u","ý":"y","þ":"th","ÿ":"y","Ā":"A","ā":"a","Ă":"A","ă":"a","Ą":"A","ą":"a","Ć":"C","ć":"c","Č":"C","č":"c","Ď":"D","ď":"d","Đ":"DJ","đ":"dj","Ē":"E","ē":"e","Ė":"E","ė":"e","Ę":"e","ę":"e","Ě":"E","ě":"e","Ğ":"G","ğ":"g","Ģ":"G","ģ":"g","Ĩ":"I","ĩ":"i","Ī":"i","ī":"i","Į":"I","į":"i","İ":"I","ı":"i","Ķ":"k","ķ":"k","Ļ":"L","ļ":"l","Ľ":"L","ľ":"l","Ł":"L","ł":"l","Ń":"N","ń":"n","Ņ":"N","ņ":"n","Ň":"N","ň":"n","Ō":"O","ō":"o","Ő":"O","ő":"o","Œ":"OE","œ":"oe","Ŕ":"R","ŕ":"r","Ř":"R","ř":"r","Ś":"S","ś":"s","Ş":"S","ş":"s","Š":"S","š":"s","Ţ":"T","ţ":"t","Ť":"T","ť":"t","Ũ":"U","ũ":"u","Ū":"u","ū":"u","Ů":"U","ů":"u","Ű":"U","ű":"u","Ų":"U","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","ź":"z","Ż":"Z","ż":"z","Ž":"Z","ž":"z","Ə":"E","ƒ":"f","Ơ":"O","ơ":"o","Ư":"U","ư":"u","Lj":"LJ","lj":"lj","Nj":"NJ","nj":"nj","Ș":"S","ș":"s","Ț":"T","ț":"t","ə":"e","˚":"o","Ά":"A","Έ":"E","Ή":"H","Ί":"I","Ό":"O","Ύ":"Y","Ώ":"W","ΐ":"i","Α":"A","Β":"B","Γ":"G","Δ":"D","Ε":"E","Ζ":"Z","Η":"H","Θ":"8","Ι":"I","Κ":"K","Λ":"L","Μ":"M","Ν":"N","Ξ":"3","Ο":"O","Π":"P","Ρ":"R","Σ":"S","Τ":"T","Υ":"Y","Φ":"F","Χ":"X","Ψ":"PS","Ω":"W","Ϊ":"I","Ϋ":"Y","ά":"a","έ":"e","ή":"h","ί":"i","ΰ":"y","α":"a","β":"b","γ":"g","δ":"d","ε":"e","ζ":"z","η":"h","θ":"8","ι":"i","κ":"k","λ":"l","μ":"m","ν":"n","ξ":"3","ο":"o","π":"p","ρ":"r","ς":"s","σ":"s","τ":"t","υ":"y","φ":"f","χ":"x","ψ":"ps","ω":"w","ϊ":"i","ϋ":"y","ό":"o","ύ":"y","ώ":"w","Ё":"Yo","Ђ":"DJ","Є":"Ye","І":"I","Ї":"Yi","Ј":"J","Љ":"LJ","Њ":"NJ","Ћ":"C","Џ":"DZ","А":"A","Б":"B","В":"V","Г":"G","Д":"D","Е":"E","Ж":"Zh","З":"Z","И":"I","Й":"J","К":"K","Л":"L","М":"M","Н":"N","О":"O","П":"P","Р":"R","С":"S","Т":"T","У":"U","Ф":"F","Х":"H","Ц":"C","Ч":"Ch","Ш":"Sh","Щ":"Sh","Ъ":"U","Ы":"Y","Ь":"","Э":"E","Ю":"Yu","Я":"Ya","а":"a","б":"b","в":"v","г":"g","д":"d","е":"e","ж":"zh","з":"z","и":"i","й":"j","к":"k","л":"l","м":"m","н":"n","о":"o","п":"p","р":"r","с":"s","т":"t","у":"u","ф":"f","х":"h","ц":"c","ч":"ch","ш":"sh","щ":"sh","ъ":"u","ы":"y","ь":"","э":"e","ю":"yu","я":"ya","ё":"yo","ђ":"dj","є":"ye","і":"i","ї":"yi","ј":"j","љ":"lj","њ":"nj","ћ":"c","ѝ":"u","џ":"dz","Ґ":"G","ґ":"g","Ғ":"GH","ғ":"gh","Қ":"KH","қ":"kh","Ң":"NG","ң":"ng","Ү":"UE","ү":"ue","Ұ":"U","ұ":"u","Һ":"H","һ":"h","Ә":"AE","ә":"ae","Ө":"OE","ө":"oe","Ա":"A","Բ":"B","Գ":"G","Դ":"D","Ե":"E","Զ":"Z","Է":"E'","Ը":"Y'","Թ":"T'","Ժ":"JH","Ի":"I","Լ":"L","Խ":"X","Ծ":"C'","Կ":"K","Հ":"H","Ձ":"D'","Ղ":"GH","Ճ":"TW","Մ":"M","Յ":"Y","Ն":"N","Շ":"SH","Չ":"CH","Պ":"P","Ջ":"J","Ռ":"R'","Ս":"S","Վ":"V","Տ":"T","Ր":"R","Ց":"C","Փ":"P'","Ք":"Q'","Օ":"O''","Ֆ":"F","և":"EV","ء":"a","آ":"aa","أ":"a","ؤ":"u","إ":"i","ئ":"e","ا":"a","ب":"b","ة":"h","ت":"t","ث":"th","ج":"j","ح":"h","خ":"kh","د":"d","ذ":"th","ر":"r","ز":"z","س":"s","ش":"sh","ص":"s","ض":"dh","ط":"t","ظ":"z","ع":"a","غ":"gh","ف":"f","ق":"q","ك":"k","ل":"l","م":"m","ن":"n","ه":"h","و":"w","ى":"a","ي":"y","ً":"an","ٌ":"on","ٍ":"en","َ":"a","ُ":"u","ِ":"e","ْ":"","٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9","پ":"p","چ":"ch","ژ":"zh","ک":"k","گ":"g","ی":"y","۰":"0","۱":"1","۲":"2","۳":"3","۴":"4","۵":"5","۶":"6","۷":"7","۸":"8","۹":"9","฿":"baht","ა":"a","ბ":"b","გ":"g","დ":"d","ე":"e","ვ":"v","ზ":"z","თ":"t","ი":"i","კ":"k","ლ":"l","მ":"m","ნ":"n","ო":"o","პ":"p","ჟ":"zh","რ":"r","ს":"s","ტ":"t","უ":"u","ფ":"f","ქ":"k","ღ":"gh","ყ":"q","შ":"sh","ჩ":"ch","ც":"ts","ძ":"dz","წ":"ts","ჭ":"ch","ხ":"kh","ჯ":"j","ჰ":"h","Ṣ":"S","ṣ":"s","Ẁ":"W","ẁ":"w","Ẃ":"W","ẃ":"w","Ẅ":"W","ẅ":"w","ẞ":"SS","Ạ":"A","ạ":"a","Ả":"A","ả":"a","Ấ":"A","ấ":"a","Ầ":"A","ầ":"a","Ẩ":"A","ẩ":"a","Ẫ":"A","ẫ":"a","Ậ":"A","ậ":"a","Ắ":"A","ắ":"a","Ằ":"A","ằ":"a","Ẳ":"A","ẳ":"a","Ẵ":"A","ẵ":"a","Ặ":"A","ặ":"a","Ẹ":"E","ẹ":"e","Ẻ":"E","ẻ":"e","Ẽ":"E","ẽ":"e","Ế":"E","ế":"e","Ề":"E","ề":"e","Ể":"E","ể":"e","Ễ":"E","ễ":"e","Ệ":"E","ệ":"e","Ỉ":"I","ỉ":"i","Ị":"I","ị":"i","Ọ":"O","ọ":"o","Ỏ":"O","ỏ":"o","Ố":"O","ố":"o","Ồ":"O","ồ":"o","Ổ":"O","ổ":"o","Ỗ":"O","ỗ":"o","Ộ":"O","ộ":"o","Ớ":"O","ớ":"o","Ờ":"O","ờ":"o","Ở":"O","ở":"o","Ỡ":"O","ỡ":"o","Ợ":"O","ợ":"o","Ụ":"U","ụ":"u","Ủ":"U","ủ":"u","Ứ":"U","ứ":"u","Ừ":"U","ừ":"u","Ử":"U","ử":"u","Ữ":"U","ữ":"u","Ự":"U","ự":"u","Ỳ":"Y","ỳ":"y","Ỵ":"Y","ỵ":"y","Ỷ":"Y","ỷ":"y","Ỹ":"Y","ỹ":"y","–":"-","‘":"'","’":"'","“":"\\"","”":"\\"","„":"\\"","†":"+","•":"*","…":"...","₠":"ecu","₢":"cruzeiro","₣":"french franc","₤":"lira","₥":"mill","₦":"naira","₧":"peseta","₨":"rupee","₩":"won","₪":"new shequel","₫":"dong","€":"euro","₭":"kip","₮":"tugrik","₯":"drachma","₰":"penny","₱":"peso","₲":"guarani","₳":"austral","₴":"hryvnia","₵":"cedi","₸":"kazakhstani tenge","₹":"indian rupee","₺":"turkish lira","₽":"russian ruble","₿":"bitcoin","℠":"sm","™":"tm","∂":"d","∆":"delta","∑":"sum","∞":"infinity","♥":"love","元":"yuan","円":"yen","﷼":"rial","ﻵ":"laa","ﻷ":"laa","ﻹ":"lai","ﻻ":"la"}`),a=JSON.parse('{"bg":{"Й":"Y","Ц":"Ts","Щ":"Sht","Ъ":"A","Ь":"Y","й":"y","ц":"ts","щ":"sht","ъ":"a","ь":"y"},"de":{"Ä":"AE","ä":"ae","Ö":"OE","ö":"oe","Ü":"UE","ü":"ue","ß":"ss","%":"prozent","&":"und","|":"oder","∑":"summe","∞":"unendlich","♥":"liebe"},"es":{"%":"por ciento","&":"y","<":"menor que",">":"mayor que","|":"o","¢":"centavos","£":"libras","¤":"moneda","₣":"francos","∑":"suma","∞":"infinito","♥":"amor"},"fr":{"%":"pourcent","&":"et","<":"plus petit",">":"plus grand","|":"ou","¢":"centime","£":"livre","¤":"devise","₣":"franc","∑":"somme","∞":"infini","♥":"amour"},"pt":{"%":"porcento","&":"e","<":"menor",">":"maior","|":"ou","¢":"centavo","∑":"soma","£":"libra","∞":"infinito","♥":"amor"},"uk":{"И":"Y","и":"y","Й":"Y","й":"y","Ц":"Ts","ц":"ts","Х":"Kh","х":"kh","Щ":"Shch","щ":"shch","Г":"H","г":"h"},"vi":{"Đ":"D","đ":"d"},"da":{"Ø":"OE","ø":"oe","Å":"AA","å":"aa","%":"procent","&":"og","|":"eller","$":"dollar","<":"mindre end",">":"større end"},"nb":{"&":"og","Å":"AA","Æ":"AE","Ø":"OE","å":"aa","æ":"ae","ø":"oe"},"it":{"&":"e"},"nl":{"&":"en"},"sv":{"&":"och","Å":"AA","Ä":"AE","Ö":"OE","å":"aa","ä":"ae","ö":"oe"}}');function c(l,o){if(typeof l!="string")throw new Error("slugify: string argument expected");o=typeof o=="string"?{replacement:o}:o||{};var g=a[o.locale]||{},h=o.replacement===void 0?"-":o.replacement,e=o.trim===void 0?!0:o.trim,i=l.normalize().split("").reduce(function(s,u){var m=g[u];return m===void 0&&(m=n[u]),m===void 0&&(m=u),m===h&&(m=" "),s+m.replace(o.remove||/[^\w\s$*_+~.()'"!\-:@]+/g,"")},"");return o.strict&&(i=i.replace(/[^A-Za-z0-9\s]/g,"")),e&&(i=i.trim()),i=i.replace(/\s+/g,h),o.lower&&(i=i.toLowerCase()),i}return c.extend=function(l){Object.assign(n,l)},c})})(me);const he=t=>t.split(/[\s-]/g).map(H).join(" ");function ge(t,r){const{navigation:n}=D().public.content;if(n===!1)return[];const a=l=>({...de(["title",...n.fields])(l),...ye(l==null?void 0:l.navigation)?l.navigation:{}}),c=t.sort((l,o)=>l._path.localeCompare(o._path)).reduce((l,o)=>{var m;const g=o._path.substring(1).split("/"),h=o._id.split(":").slice(1),e=!!((m=h[h.length-1])!=null&&m.match(/([1-9][0-9]*\.)?index.md/g)),i=f=>({title:f.title,_path:f._path,_file:f._file,children:[],...a(f),...f._draft?{_draft:!0}:{}}),s=i(o);if(e){const f=r[s._path];if(typeof(f==null?void 0:f.navigation)<"u"&&!(f!=null&&f.navigation))return l;if(o._path!=="/"){const d=i(o);s.children.push(d)}f&&Object.assign(s,a(f))}return g.length===1?(l.push(s),l):(g.slice(0,-1).reduce((f,d,v)=>{const I="/"+g.slice(0,v+1).join("/"),w=r[I];if(typeof(w==null?void 0:w.navigation)<"u"&&!w.navigation)return[];let A=f.find(Y=>Y._path===I);return A||(A={title:he(d),_path:I,_file:o._file,children:[],...w&&a(w)},f.push(A)),A.children},l).push(s),l)},[]);return z(c)}const pe=new Intl.Collator(void 0,{numeric:!0,sensitivity:"base"});function z(t){var n;t.forEach(a=>{a._file=a._file.split(".").slice(0,-1).join(".")});const r=t.sort((a,c)=>pe.compare(a._file,c._file));for(const a of r)(n=a.children)!=null&&n.length?z(a.children):delete a.children,delete a._file;return t}function de(t){return r=>(r=r||{},t&&t.length?t.filter(n=>typeof r[n]<"u").reduce((n,a)=>Object.assign(n,{[a]:r[a]}),{}):r)}function ye(t){return Object.prototype.toString.call(t)==="[object Object]"}const we=t=>F(t,D().public.content.api.baseURL),ve=ie(ue({driver:V()}),"@content");function Ie(t){async function r(){const n=new Set(await t.getKeys("cache:")),a=N().getPreviewToken();if(a){const l=await t.getItem(`${a}$`).then(h=>h||{});if(Array.isArray(l.ignoreSources)){const h=l.ignoreSources.map(e=>`cache:${e.trim()}:`);for(const e of n)h.some(i=>e.startsWith(i))&&n.delete(e)}const o=await t.getKeys(`${a}:`),g=await Promise.all(o.map(h=>t.getItem(h)));for(const h of g)n.delete(`cache:${h._id}`),h.__deleted||n.add(`${a}:${h._id}`)}return await Promise.all(Array.from(n).map(l=>t.getItem(l)))}return{storage:t,fetch:L(r),query:n=>k(L(r),{initialParams:n,legacy:!0})}}let C=null,K=null;async function Ae(){return K?await K:C||(K=Ee(),C=await K),C}async function Ee(){const t=G(),{content:r}=D().public,n=Ie(ve),a=await n.storage.getItem("integrity");if(r.integrity!==+(a||0)){const{contents:c,navigation:l}=await $fetch(we(r.integrity?`cache.${r.integrity}.json`:"cache.json"));await Promise.all(c.map(o=>n.storage.setItem(`cache:${o._id}`,o))),await n.storage.setItem("navigation",l),await n.storage.setItem("integrity",r.integrity)}return await t.callHook("content:storage",n.storage),n}async function $e(t){const r=await Ae();if(!N().getPreviewToken()&&Object.keys(t||{}).length===0)return r.storage.getItem("navigation");const n=await r.query(t).where({_partial:!1,navigation:{$ne:!1}}).find(),c=(await r.query().where({_path:/\/_dir$/i,_partial:!0}).find()).reduce((l,o)=>{var h;((h=o.title)==null?void 0:h.toLowerCase())==="dir"&&(o.title=void 0);const g=o._path.split("/").slice(0,-1).join("/")||"/";return l[g]={...o,...o.body},l},{});return ge(n,c)}export{ve as contentStorage,Ie as createDB,$e as generateNavigation,Ae as useContentDatabase}; diff --git a/_nuxt/CboE8M4c.js b/_nuxt/CboE8M4c.js new file mode 100644 index 0000000..611af60 --- /dev/null +++ b/_nuxt/CboE8M4c.js @@ -0,0 +1 @@ +import{d as p,p as f,B as i,c as s,e as n,C as u,ah as r}from"./WKNqgS7_.js";const l=["id"],d=["href"],_=p({__name:"ProseH5",props:{id:{}},setup(c){const t=c,{headings:o}=f().public.mdc,a=i(()=>{var e;return t.id&&(typeof(o==null?void 0:o.anchorLinks)=="boolean"&&(o==null?void 0:o.anchorLinks)===!0||typeof(o==null?void 0:o.anchorLinks)=="object"&&((e=o==null?void 0:o.anchorLinks)==null?void 0:e.h5))});return(e,m)=>(s(),n("h5",{id:t.id},[t.id&&u(a)?(s(),n("a",{key:0,href:`#${t.id}`},[r(e.$slots,"default")],8,d)):r(e.$slots,"default",{key:1})],8,l))}});export{_ as default}; diff --git a/_nuxt/ContentSearch.BnrkXUn-.css b/_nuxt/ContentSearch.BnrkXUn-.css new file mode 100644 index 0000000..12b78dc --- /dev/null +++ b/_nuxt/ContentSearch.BnrkXUn-.css @@ -0,0 +1 @@ +mark{--tw-bg-opacity:1;background-color:rgb(var(--color-primary-400)/var(--tw-bg-opacity))} diff --git a/_nuxt/Cpj98o6Y.js b/_nuxt/Cpj98o6Y.js new file mode 100644 index 0000000..b285ce5 --- /dev/null +++ b/_nuxt/Cpj98o6Y.js @@ -0,0 +1 @@ +var o=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function l(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}export{o as c,l as g}; diff --git a/_nuxt/Csfq5Kiy.js b/_nuxt/Csfq5Kiy.js new file mode 100644 index 0000000..54d78a7 --- /dev/null +++ b/_nuxt/Csfq5Kiy.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#292D3E","activityBar.border":"#292D3E60","activityBar.dropBackground":"#f0717880","activityBar.foreground":"#babed8","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#00000030","badge.foreground":"#676E95","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#292D3E","breadcrumb.focusForeground":"#babed8","breadcrumb.foreground":"#676E95","breadcrumbPicker.background":"#292D3E","button.background":"#717CB450","button.foreground":"#ffffff","debugConsole.errorForeground":"#f07178","debugConsole.infoForeground":"#89DDFF","debugConsole.warningForeground":"#FFCB6B","debugToolBar.background":"#292D3E","diffEditor.insertedTextBackground":"#89DDFF20","diffEditor.removedTextBackground":"#ff9cac20","dropdown.background":"#292D3E","dropdown.border":"#FFFFFF10","editor.background":"#292D3E","editor.findMatchBackground":"#000000","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#babed8","editor.findMatchHighlightBackground":"#00000050","editor.findMatchHighlightBorder":"#ffffff30","editor.findRangeHighlightBackground":"#FFCB6B30","editor.foreground":"#babed8","editor.lineHighlightBackground":"#00000050","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#717CB450","editor.selectionHighlightBackground":"#FFCC0020","editor.wordHighlightBackground":"#ff9cac30","editor.wordHighlightStrongBackground":"#C3E88D30","editorBracketMatch.background":"#292D3E","editorBracketMatch.border":"#FFCC0050","editorCursor.foreground":"#FFCC00","editorError.foreground":"#f0717870","editorGroup.border":"#00000030","editorGroup.dropBackground":"#f0717880","editorGroup.focusedEmptyBorder":"#f07178","editorGroupHeader.tabsBackground":"#292D3E","editorGutter.addedBackground":"#C3E88D60","editorGutter.deletedBackground":"#f0717860","editorGutter.modifiedBackground":"#82AAFF60","editorHoverWidget.background":"#292D3E","editorHoverWidget.border":"#FFFFFF10","editorIndentGuide.activeBackground":"#4E5579","editorIndentGuide.background":"#4E557970","editorInfo.foreground":"#82AAFF70","editorLineNumber.activeForeground":"#676E95","editorLineNumber.foreground":"#3A3F58","editorLink.activeForeground":"#babed8","editorMarkerNavigation.background":"#babed805","editorOverviewRuler.border":"#292D3E","editorOverviewRuler.errorForeground":"#f0717840","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#82AAFF40","editorOverviewRuler.warningForeground":"#FFCB6B40","editorRuler.foreground":"#4E5579","editorSuggestWidget.background":"#292D3E","editorSuggestWidget.border":"#FFFFFF10","editorSuggestWidget.foreground":"#babed8","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#00000050","editorWarning.foreground":"#FFCB6B70","editorWhitespace.foreground":"#babed840","editorWidget.background":"#292D3E","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#babed8","extensionButton.prominentBackground":"#C3E88D90","extensionButton.prominentForeground":"#babed8","extensionButton.prominentHoverBackground":"#C3E88D","focusBorder":"#FFFFFF00","foreground":"#babed8","gitDecoration.conflictingResourceForeground":"#FFCB6B90","gitDecoration.deletedResourceForeground":"#f0717890","gitDecoration.ignoredResourceForeground":"#676E9590","gitDecoration.modifiedResourceForeground":"#82AAFF90","gitDecoration.untrackedResourceForeground":"#C3E88D90","input.background":"#333747","input.border":"#FFFFFF10","input.foreground":"#babed8","input.placeholderForeground":"#babed860","inputOption.activeBackground":"#babed830","inputOption.activeBorder":"#babed830","inputValidation.errorBorder":"#f07178","inputValidation.infoBorder":"#82AAFF","inputValidation.warningBorder":"#FFCB6B","list.activeSelectionBackground":"#292D3E","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#f0717880","list.focusBackground":"#babed820","list.focusForeground":"#babed8","list.highlightForeground":"#80CBC4","list.hoverBackground":"#292D3E","list.hoverForeground":"#FFFFFF","list.inactiveSelectionBackground":"#00000030","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#00000030","listFilterWidget.noMatchesOutline":"#00000030","listFilterWidget.outline":"#00000030","menu.background":"#292D3E","menu.foreground":"#babed8","menu.selectionBackground":"#00000050","menu.selectionBorder":"#00000030","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#babed8","menubar.selectionBackground":"#00000030","menubar.selectionBorder":"#00000030","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#292D3E","notifications.foreground":"#babed8","panel.background":"#292D3E","panel.border":"#292D3E60","panel.dropBackground":"#babed8","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#FFFFFF","panelTitle.inactiveForeground":"#babed8","peekView.border":"#00000030","peekViewEditor.background":"#333747","peekViewEditor.matchHighlightBackground":"#717CB450","peekViewEditorGutter.background":"#333747","peekViewResult.background":"#333747","peekViewResult.matchHighlightBackground":"#717CB450","peekViewResult.selectionBackground":"#676E9570","peekViewTitle.background":"#333747","peekViewTitleDescription.foreground":"#babed860","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#292D3E","quickInput.foreground":"#676E95","quickInput.list.focusBackground":"#babed820","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000030","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#A6ACCD20","scrollbarSlider.hoverBackground":"#A6ACCD10","selection.background":"#00000080","settings.checkboxBackground":"#292D3E","settings.checkboxForeground":"#babed8","settings.dropdownBackground":"#292D3E","settings.dropdownForeground":"#babed8","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#292D3E","settings.numberInputForeground":"#babed8","settings.textInputBackground":"#292D3E","settings.textInputForeground":"#babed8","sideBar.background":"#292D3E","sideBar.border":"#292D3E60","sideBar.foreground":"#676E95","sideBarSectionHeader.background":"#292D3E","sideBarSectionHeader.border":"#292D3E60","sideBarTitle.foreground":"#babed8","statusBar.background":"#292D3E","statusBar.border":"#292D3E60","statusBar.debuggingBackground":"#C792EA","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#676E95","statusBar.noFolderBackground":"#292D3E","statusBarItem.activeBackground":"#f0717880","statusBarItem.hoverBackground":"#676E9520","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#292D3E","tab.activeBorder":"#80CBC4","tab.activeForeground":"#FFFFFF","tab.activeModifiedBorder":"#676E95","tab.border":"#292D3E","tab.inactiveBackground":"#292D3E","tab.inactiveForeground":"#676E95","tab.inactiveModifiedBorder":"#904348","tab.unfocusedActiveBorder":"#676E95","tab.unfocusedActiveForeground":"#babed8","tab.unfocusedActiveModifiedBorder":"#c05a60","tab.unfocusedInactiveModifiedBorder":"#904348","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#82AAFF","terminal.ansiBrightBlack":"#676E95","terminal.ansiBrightBlue":"#82AAFF","terminal.ansiBrightCyan":"#89DDFF","terminal.ansiBrightGreen":"#C3E88D","terminal.ansiBrightMagenta":"#C792EA","terminal.ansiBrightRed":"#f07178","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#FFCB6B","terminal.ansiCyan":"#89DDFF","terminal.ansiGreen":"#C3E88D","terminal.ansiMagenta":"#C792EA","terminal.ansiRed":"#f07178","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#FFCB6B","terminalCursor.background":"#000000","terminalCursor.foreground":"#FFCB6B","textLink.activeForeground":"#babed8","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#292D3E","titleBar.activeForeground":"#babed8","titleBar.border":"#292D3E60","titleBar.inactiveBackground":"#292D3E","titleBar.inactiveForeground":"#676E95","tree.indentGuidesStroke":"#4E5579","widget.shadow":"#00000030"},"displayName":"Material Theme Palenight","name":"material-theme-palenight","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#292D3E","foreground":"#babed8"}},{"scope":"string","settings":{"foreground":"#C3E88D"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#89DDFF"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#babed8"}},{"scope":"constant.language.boolean","settings":{"foreground":"#ff9cac"}},{"scope":"constant.numeric","settings":{"foreground":"#F78C6C"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#babed8"}},{"scope":"keyword.other","settings":{"foreground":"#F78C6C"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#82AAFF"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#C792EA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#FFCB6B"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#676E95"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#676E95"}},{"scope":"punctuation","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#FFCB6B"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#89DDFF"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#babed8"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#f07178"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#f07178"}},{"scope":"constant.language.json","settings":{"foreground":"#89DDFF"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F78C6C"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#FFCB6B"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#B2CCD6"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.tag","settings":{"foreground":"#f07178"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#C792EA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#babed8"}},{"scope":"markup.heading","settings":{"foreground":"#89DDFF"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#f07178"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#89DDFF"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#f07178"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#f07178"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#89DDFF"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"source.cs storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#676E95"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#babed8"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#babed8"}},{"scope":"support.class.component","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#babed8"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#f07178"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#82AAFF"}},{"scope":"meta.block","settings":{"foreground":"#f07178"}},{"scope":"entity.name.function.call","settings":{"foreground":"#82AAFF"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#babed8"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":"entity.name.function","settings":{"foreground":"#82AAFF"}},{"settings":{"background":"#292D3E","foreground":"#babed8"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#f07178"}},{"scope":["markup.deleted"],"settings":{"foreground":"#f07178"}},{"scope":["markup.inserted"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F78C6C"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#babed890"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFCB6B"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F78C6C"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f07178"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C3E88D"}}],"type":"dark"}'));export{e as default}; diff --git a/_nuxt/CtS59gnC.js b/_nuxt/CtS59gnC.js new file mode 100644 index 0000000..d2ee78b --- /dev/null +++ b/_nuxt/CtS59gnC.js @@ -0,0 +1 @@ +import{d as Q,bk as nn,A as ln,B as en,S as O,ae as on,bl as H,bm as w,aX as tn,bn as rn,bo as an}from"./WKNqgS7_.js";import{f as un}from"./BneCoJRQ.js";class C{constructor(e,o,t){this.property=e,this.normal=o,t&&(this.space=t)}}C.prototype.property={};C.prototype.normal={};C.prototype.space=null;function _(n,e){const o={},t={};let r=-1;for(;++r<n.length;)Object.assign(o,n[r].property),Object.assign(t,n[r].normal);return new C(o,t,e)}function L(n){return n.toLowerCase()}class v{constructor(e,o){this.property=e,this.attribute=o}}v.prototype.space=null;v.prototype.boolean=!1;v.prototype.booleanish=!1;v.prototype.overloadedBoolean=!1;v.prototype.number=!1;v.prototype.commaSeparated=!1;v.prototype.spaceSeparated=!1;v.prototype.commaOrSpaceSeparated=!1;v.prototype.mustUseProperty=!1;v.prototype.defined=!1;let sn=0;const u=b(),g=b(),F=b(),l=b(),d=b(),k=b(),m=b();function b(){return 2**++sn}const M=Object.freeze(Object.defineProperty({__proto__:null,boolean:u,booleanish:g,commaOrSpaceSeparated:m,commaSeparated:k,number:l,overloadedBoolean:F,spaceSeparated:d},Symbol.toStringTag,{value:"Module"})),D=Object.keys(M);class A extends v{constructor(e,o,t,r){let a=-1;if(super(e,o),I(this,"space",r),typeof t=="number")for(;++a<D.length;){const s=D[a];I(this,D[a],(t&M[s])===M[s])}}}A.prototype.defined=!0;function I(n,e,o){o&&(n[e]=o)}const cn={}.hasOwnProperty;function S(n){const e={},o={};let t;for(t in n.properties)if(cn.call(n.properties,t)){const r=n.properties[t],a=new A(t,n.transform(n.attributes||{},t),r,n.space);n.mustUseProperty&&n.mustUseProperty.includes(t)&&(a.mustUseProperty=!0),e[t]=a,o[L(t)]=t,o[L(a.attribute)]=t}return new C(e,o,n.space)}const V=S({space:"xlink",transform(n,e){return"xlink:"+e.slice(5).toLowerCase()},properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}}),N=S({space:"xml",transform(n,e){return"xml:"+e.slice(3).toLowerCase()},properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function q(n,e){return e in n?n[e]:e}function W(n,e){return q(n,e.toLowerCase())}const K=S({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:W,properties:{xmlns:null,xmlnsXLink:null}}),X=S({transform(n,e){return e==="role"?e:"aria-"+e.slice(4).toLowerCase()},properties:{ariaActiveDescendant:null,ariaAtomic:g,ariaAutoComplete:null,ariaBusy:g,ariaChecked:g,ariaColCount:l,ariaColIndex:l,ariaColSpan:l,ariaControls:d,ariaCurrent:null,ariaDescribedBy:d,ariaDetails:null,ariaDisabled:g,ariaDropEffect:d,ariaErrorMessage:null,ariaExpanded:g,ariaFlowTo:d,ariaGrabbed:g,ariaHasPopup:null,ariaHidden:g,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:d,ariaLevel:l,ariaLive:null,ariaModal:g,ariaMultiLine:g,ariaMultiSelectable:g,ariaOrientation:null,ariaOwns:d,ariaPlaceholder:null,ariaPosInSet:l,ariaPressed:g,ariaReadOnly:g,ariaRelevant:null,ariaRequired:g,ariaRoleDescription:d,ariaRowCount:l,ariaRowIndex:l,ariaRowSpan:l,ariaSelected:g,ariaSetSize:l,ariaSort:null,ariaValueMax:l,ariaValueMin:l,ariaValueNow:l,ariaValueText:null,role:null}}),pn=S({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:W,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:k,acceptCharset:d,accessKey:d,action:null,allow:null,allowFullScreen:u,allowPaymentRequest:u,allowUserMedia:u,alt:null,as:null,async:u,autoCapitalize:null,autoComplete:d,autoFocus:u,autoPlay:u,blocking:d,capture:null,charSet:null,checked:u,cite:null,className:d,cols:l,colSpan:null,content:null,contentEditable:g,controls:u,controlsList:d,coords:l|k,crossOrigin:null,data:null,dateTime:null,decoding:null,default:u,defer:u,dir:null,dirName:null,disabled:u,download:F,draggable:g,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:u,formTarget:null,headers:d,height:l,hidden:u,high:l,href:null,hrefLang:null,htmlFor:d,httpEquiv:d,id:null,imageSizes:null,imageSrcSet:null,inert:u,inputMode:null,integrity:null,is:null,isMap:u,itemId:null,itemProp:d,itemRef:d,itemScope:u,itemType:d,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:u,low:l,manifest:null,max:null,maxLength:l,media:null,method:null,min:null,minLength:l,multiple:u,muted:u,name:null,nonce:null,noModule:u,noValidate:u,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:u,optimum:l,pattern:null,ping:d,placeholder:null,playsInline:u,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:u,referrerPolicy:null,rel:d,required:u,reversed:u,rows:l,rowSpan:l,sandbox:d,scope:null,scoped:u,seamless:u,selected:u,shadowRootClonable:u,shadowRootDelegatesFocus:u,shadowRootMode:null,shape:null,size:l,sizes:null,slot:null,span:l,spellCheck:g,src:null,srcDoc:null,srcLang:null,srcSet:null,start:l,step:null,style:null,tabIndex:l,target:null,title:null,translate:null,type:null,typeMustMatch:u,useMap:null,value:g,width:l,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:d,axis:null,background:null,bgColor:null,border:l,borderColor:null,bottomMargin:l,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:u,declare:u,event:null,face:null,frame:null,frameBorder:null,hSpace:l,leftMargin:l,link:null,longDesc:null,lowSrc:null,marginHeight:l,marginWidth:l,noResize:u,noHref:u,noShade:u,noWrap:u,object:null,profile:null,prompt:null,rev:null,rightMargin:l,rules:null,scheme:null,scrolling:g,standby:null,summary:null,text:null,topMargin:l,valueType:null,version:null,vAlign:null,vLink:null,vSpace:l,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:u,disableRemotePlayback:u,prefix:null,property:null,results:l,security:null,unselectable:null}}),dn=S({space:"svg",attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",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",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",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",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",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",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},transform:q,properties:{about:m,accentHeight:l,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:l,amplitude:l,arabicForm:null,ascent:l,attributeName:null,attributeType:null,azimuth:l,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:l,by:null,calcMode:null,capHeight:l,className:d,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:l,diffuseConstant:l,direction:null,display:null,dur:null,divisor:l,dominantBaseline:null,download:u,dx:null,dy:null,edgeMode:null,editable:null,elevation:l,enableBackground:null,end:null,event:null,exponent:l,externalResourcesRequired:null,fill:null,fillOpacity:l,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:k,g2:k,glyphName:k,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:l,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:l,horizOriginX:l,horizOriginY:l,id:null,ideographic:l,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:l,k:l,k1:l,k2:l,k3:l,k4:l,kernelMatrix:m,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:l,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:l,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:l,overlineThickness:l,paintOrder:null,panose1:null,path:null,pathLength:l,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:d,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:l,pointsAtY:l,pointsAtZ:l,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:m,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:m,rev:m,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:m,requiredFeatures:m,requiredFonts:m,requiredFormats:m,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:l,specularExponent:l,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:l,strikethroughThickness:l,string:null,stroke:null,strokeDashArray:m,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:l,strokeOpacity:l,strokeWidth:null,style:null,surfaceScale:l,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:m,tabIndex:l,tableValues:null,target:null,targetX:l,targetY:l,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:m,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:l,underlineThickness:l,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:l,values:null,vAlphabetic:l,vMathematical:l,vectorEffect:null,vHanging:l,vIdeographic:l,version:null,vertAdvY:l,vertOriginX:l,vertOriginY:l,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:l,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null}}),gn=/^data[-\w.:]+$/i,j=/-[a-z]/g,hn=/[A-Z]/g;function fn(n,e){const o=L(e);let t=e,r=v;if(o in n.normal)return n.property[n.normal[o]];if(o.length>4&&o.slice(0,4)==="data"&&gn.test(e)){if(e.charAt(4)==="-"){const a=e.slice(5).replace(j,yn);t="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=e.slice(4);if(!j.test(a)){let s=a.replace(hn,mn);s.charAt(0)!=="-"&&(s="-"+s),e="data"+s}}r=A}return new r(t,e)}function mn(n){return"-"+n.toLowerCase()}function yn(n){return n.charAt(1).toUpperCase()}const vn=_([N,V,K,X,pn],"html"),Un=_([N,V,K,X,dn],"svg"),E=["a","abbr","address","area","article","aside","audio","b","base","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","data","datalist","dd","del","details","dfn","dialog","div","dl","dt","em","embed","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","link","main","map","mark","math","menu","menuitem","meta","meter","nav","noscript","object","ol","optgroup","option","output","p","param","picture","pre","progress","q","rb","rp","rt","rtc","ruby","s","samp","script","section","select","slot","small","source","span","strong","style","sub","summary","sup","svg","table","tbody","td","template","textarea","tfoot","th","thead","time","title","tr","track","u","ul","var","video","wbr"],T="default",Y=/^@|^v-on:/,$=/^:|^v-bind:/,Z=/^v-model/,bn=["select","textarea","input"],kn=Object.fromEntries(["p","a","blockquote","code","pre","code","em","h1","h2","h3","h4","h5","h6","hr","img","ul","ol","li","strong","table","thead","tbody","td","th","tr","script"].map(n=>[n,`prose-${n}`])),Bn=Q({name:"MDCRenderer",props:{body:{type:Object,required:!0},data:{type:Object,default:()=>({})},class:{type:[String,Object],default:void 0},tag:{type:[String,Boolean],default:void 0},prose:{type:Boolean,default:void 0},components:{type:Object,default:()=>({})},unwrap:{type:[Boolean,String],default:!1}},async setup(n){var s,i,c,h,f,p,y,B;const e=(c=(i=(s=nn())==null?void 0:s.appContext)==null?void 0:i.app)==null?void 0:c.$nuxt,o=(e==null?void 0:e.$route)||(e==null?void 0:e._route),{mdc:t}=((h=e==null?void 0:e.$config)==null?void 0:h.public)||{},r={...(f=t==null?void 0:t.components)!=null&&f.prose&&n.prose!==!1?kn:{},...((p=t==null?void 0:t.components)==null?void 0:p.map)||{},...ln(((B=(y=n.data)==null?void 0:y.mdc)==null?void 0:B.components)||{}),...n.components},a=en(()=>{var z;const G=(((z=n.body)==null?void 0:z.children)||[]).map(x=>x.tag||x.type).filter(x=>!E.includes(x));return Array.from(new Set(G)).sort().join(".")});return await Rn(n.body,{tags:r}),{tags:r,contentKey:a,route:o}},render(n){var p,y;const{tags:e,tag:o,body:t,data:r,contentKey:a,route:s,unwrap:i}=n;if(!t)return null;const c={...r,tags:e,$route:s},h=o!==!1?U(o||((p=c.component)==null?void 0:p.name)||c.component||"div"):void 0;return h?O(h,{...(y=c.component)==null?void 0:y.props,class:n.class,...this.$attrs,key:a},{default:f}):f==null?void 0:f();function f(){return i?un(R(t,O,c,c).default(),typeof i=="string"?i.split(" "):["*"]):R(t,O,c,c).default()}}});function Sn(n,e,o,t={}){if(n.type==="text")return e(w,n.value);if(n.type==="comment")return e(rn,null,n.value);const r=n.tag,a=J(n,o.tags);if(n.tag==="binding")return Cn(n,e,o,t);const s=U(a);typeof s=="object"&&(s.tag=r);const i=xn(n,o);return e(s,i,R(n,e,o,{...t,...i}))}function Cn(n,e,o,t={}){var h,f;const r={...t,$document:o,$doc:o},a=/\.|\[(\d+)\]/,i=((h=n.props)==null?void 0:h.value.trim().split(a).filter(Boolean)).reduce((p,y)=>{if(p&&y in p)return typeof p[y]=="function"?p[y]():p[y]},r),c=(f=n.props)==null?void 0:f.defaultValue;return e(w,i??c??"")}function R(n,e,o,t){const a=(n.children||[]).reduce((i,c)=>{if(!Mn(c))return i[T].push(c),i;const h=Ln(c);return i[h]=i[h]||[],c.type==="element"&&i[h].push(...c.children||[]),i},{[T]:[]});return Object.entries(a).reduce((i,[c,h])=>(h.length&&(i[c]=()=>{const f=h.map(p=>Sn(p,e,o,t));return Tn(f)}),i),{})}function xn(n,e){const{tag:o="",props:t={}}=n;return Object.keys(t).reduce(function(r,a){if(a==="__ignoreMap")return r;const s=t[a];if(Z.test(a)&&!bn.includes(o))return wn(a,s,r,e);if(a==="v-bind")return Pn(a,s,r,e);if(Y.test(a))return On(a,s,r,e);if($.test(a))return Dn(a,s,r,e);const{attribute:i}=fn(vn,a);return Array.isArray(s)&&s.every(c=>typeof c=="string")?(r[i]=s.join(" "),r):(r[i]=s,r)},{})}function wn(n,e,o,t){const r=p=>+p,a=p=>p.trim(),s=p=>p,i=n.replace(Z,"").split(".").filter(p=>p).reduce((p,y)=>(p[y]=!0,p),{}),c="value",h=i.lazy?"change":"input",f=i.number?r:i.trim?a:s;return o[c]=P(e,t),o.on=o.on||{},o.on[h]=p=>t[e]=f(p),o}function Pn(n,e,o,t){const r=P(e,t);return o=Object.assign(o,r),o}function On(n,e,o,t){return n=n.replace(Y,""),o.on=o.on||{},o.on[n]=()=>P(e,t),o}function Dn(n,e,o,t){return n=n.replace($,""),o[n]=P(e,t),o}const U=n=>typeof n=="string"?E.includes(n)?n:on(H(n),!1):n;function P(n,e){const o=n.split(".").reduce((t,r)=>typeof t=="object"?t[r]:void 0,e);return typeof o>"u"?an(n):o}function Ln(n){let e="";for(const o of Object.keys(n.props||{}))if(!(!o.startsWith("#")&&!o.startsWith("v-slot:"))){e=o.split(/[:#]/,2)[1];break}return e||T}function Mn(n){return n.tag==="template"}function Tn(n){const e=[];for(const o of n){const t=e[e.length-1];o.type===w&&(t==null?void 0:t.type)===w?t.children=t.children+o.children:e.push(o)}return e}async function Rn(n,e){if(!n)return;const o=Array.from(new Set(t(n,e)));await Promise.all(o.map(async r=>{if(r!=null&&r.render||r!=null&&r.ssrRender||r!=null&&r.__ssrInlineRender)return;const a=U(r);a!=null&&a.__asyncLoader&&!a.__asyncResolved&&await a.__asyncLoader()}));function t(r,a){const s=r.tag;if(r.type==="text"||s==="binding"||r.type==="comment")return[];const i=J(r,a.tags),c=[];r.type!=="root"&&!E.includes(i)&&c.push(i);for(const h of r.children||[])c.push(...t(h,a));return c}}function J(n,e){var t;const o=n.tag;return!o||typeof((t=n.props)==null?void 0:t.__ignoreMap)<"u"?o:e[o]||e[H(o)]||e[tn(n.tag)]||o}export{Bn as _,E as a,fn as f,vn as h,L as n,Un as s}; diff --git a/_nuxt/CuXcSdBY.js b/_nuxt/CuXcSdBY.js new file mode 100644 index 0000000..df52cf8 --- /dev/null +++ b/_nuxt/CuXcSdBY.js @@ -0,0 +1 @@ +import{bp as d,bq as u,d as l,an as b,r as m,c as _,ag as y,C as f,am as C}from"./WKNqgS7_.js";function v(t={}){const{copy:c,isSupported:i}=d(),o=u();function r(e,n={},a={}){i&&c(e).then(()=>{!n.title&&!n.description||o.add({...n,...t})},function(p){o.add({...a,description:a.description||p.message,...t})})}return{copy:r}}const h=l({__name:"ProseCodeButton",props:{code:{type:String,required:!0}},setup(t){const c=t,i={icon:{copy:"i-heroicons-clipboard-document",copied:"i-heroicons-clipboard-document-check"}},{ui:o}=b("content.prose.code.button",void 0,i,void 0,!0),r=v({timeout:2e3}),e=m(o.value.icon.copy);function n(){r.copy(c.code,{title:"Copied to clipboard!"}),e.value=o.value.icon.copied,setTimeout(()=>{e.value=o.value.icon.copy},2e3)}return(a,p)=>{const s=C;return _(),y(s,{icon:f(e),color:"gray",variant:"link",size:"xs","aria-label":"Copy code to clipboard",tabindex:"-1",onClick:n},null,8,["icon"])}}});export{h as _}; diff --git a/_nuxt/Cv00pZP1.js b/_nuxt/Cv00pZP1.js new file mode 100644 index 0000000..61f178f --- /dev/null +++ b/_nuxt/Cv00pZP1.js @@ -0,0 +1 @@ +import{f as n}from"./BneCoJRQ.js";import{ah as i}from"./WKNqgS7_.js";const e=(t,r,f,...a)=>t[r]?i({...t,[r]:()=>n(t[r](),f==null?void 0:f.unwrap)},r,f,...a):i(t,r,f,...a);export{e as r}; diff --git a/_nuxt/D-llQu22.js b/_nuxt/D-llQu22.js new file mode 100644 index 0000000..2a7d7dc --- /dev/null +++ b/_nuxt/D-llQu22.js @@ -0,0 +1 @@ +import{_ as o}from"./g2z_gaTr.js";import{d as l,E as s,b6 as d,S as f}from"./WKNqgS7_.js";import"./CtS59gnC.js";import"./BneCoJRQ.js";const g=l({name:"ContentRenderer",props:{value:{type:Object,required:!1,default:()=>({})},excerpt:{type:Boolean,default:!1},tag:{type:String,default:"div"}},setup(t){s(()=>t.excerpt,n=>{var e,a,u;n&&!((e=t.value)!=null&&e.excerpt)&&(console.warn(`No excerpt found for document content/${(a=t==null?void 0:t.value)==null?void 0:a._path}.${(u=t==null?void 0:t.value)==null?void 0:u._extension}!`),console.warn("Make sure to use <!--more--> in your content if you want to use excerpt feature."))},{immediate:!0})},render(t){var i,c;const n=d(),{value:e,excerpt:a,tag:u}=t,r=a?e==null?void 0:e.excerpt:e==null?void 0:e.body;return!((i=r==null?void 0:r.children)!=null&&i.length)&&(n!=null&&n.empty)?n.empty({value:e,excerpt:a,tag:u,...this.$attrs}):n!=null&&n.default?n.default({value:e,excerpt:a,tag:u,...this.$attrs}):(r==null?void 0:r.type)==="root"&&((c=r==null?void 0:r.children)!=null&&c.length)?f(o,{value:e,excerpt:a,tag:u,...this.$attrs}):f("pre",null,JSON.stringify({message:"You should use slots with <ContentRenderer>",value:e,excerpt:a,tag:u},null,2))}});export{g as default}; diff --git a/_nuxt/D0ybgVpa.js b/_nuxt/D0ybgVpa.js new file mode 100644 index 0000000..f664452 --- /dev/null +++ b/_nuxt/D0ybgVpa.js @@ -0,0 +1 @@ +import t from"./Begb3drz.js";import e from"./g_GSZ1hr.js";const n=Object.freeze(JSON.parse(`{"displayName":"HTML","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"comment":"Uses R: to ensure this matches after any other injections.","patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"html","patterns":[{"include":"#xml-processing"},{"include":"#comment"},{"include":"#doctype"},{"include":"#cdata"},{"include":"#tags-valid"},{"include":"#tags-invalid"},{"include":"#entities"}],"repository":{"attribute":{"patterns":[{"begin":"(s(hape|cope|t(ep|art)|ize(s)?|p(ellcheck|an)|elected|lot|andbox|rc(set|doc|lang)?)|h(ttp-equiv|i(dden|gh)|e(ight|aders)|ref(lang)?)|n(o(nce|validate|module)|ame)|c(h(ecked|arset)|ite|o(nt(ent(editable)?|rols)|ords|l(s(pan)?|or))|lass|rossorigin)|t(ype(mustmatch)?|itle|a(rget|bindex)|ranslate)|i(s(map)?|n(tegrity|putmode)|tem(scope|type|id|prop|ref)|d)|op(timum|en)|d(i(sabled|r(name)?)|ownload|e(coding|f(er|ault))|at(etime|a)|raggable)|usemap|p(ing|oster|la(ysinline|ceholder)|attern|reload)|enctype|value|kind|for(m(novalidate|target|enctype|action|method)?)?|w(idth|rap)|l(ist|o(op|w)|a(ng|bel))|a(s(ync)?|c(ce(sskey|pt(-charset)?)|tion)|uto(c(omplete|apitalize)|play|focus)|l(t|low(usermedia|paymentrequest|fullscreen))|bbr)|r(ows(pan)?|e(versed|quired|ferrerpolicy|l|adonly))|m(in(length)?|u(ted|ltiple)|e(thod|dia)|a(nifest|x(length)?)))(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 attributes, not event handlers","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"style(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 style attribute","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.style.html","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"begin":"(?=[^\\\\s=<>\`/]|/(?!>))","end":"(?!\\\\G)","name":"meta.embedded.line.css","patterns":[{"captures":{"0":{"name":"source.css"}},"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.css","end":"(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.css"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.css","end":"(')","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.css"}},"name":"string.quoted.single.html","patterns":[{"include":"#entities"}]}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},{"begin":"on(s(croll|t(orage|alled)|u(spend|bmit)|e(curitypolicyviolation|ek(ing|ed)|lect))|hashchange|c(hange|o(ntextmenu|py)|u(t|echange)|l(ick|ose)|an(cel|play(through)?))|t(imeupdate|oggle)|in(put|valid)|o(nline|ffline)|d(urationchange|r(op|ag(start|over|e(n(ter|d)|xit)|leave)?)|blclick)|un(handledrejection|load)|p(opstate|lay(ing)?|a(ste|use|ge(show|hide))|rogress)|e(nded|rror|mptied)|volumechange|key(down|up|press)|focus|w(heel|aiting)|l(oad(start|e(nd|d(data|metadata)))?|anguagechange)|a(uxclick|fterprint|bort)|r(e(s(ize|et)|jectionhandled)|atechange)|m(ouse(o(ut|ver)|down|up|enter|leave|move)|essage(error)?)|b(efore(unload|print)|lur))(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 attributes, event handlers","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.event-handler.$1.html","patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"begin":"(?=[^\\\\s=<>\`/]|/(?!>))","end":"(?!\\\\G)","name":"meta.embedded.line.js","patterns":[{"captures":{"0":{"name":"source.js"},"1":{"patterns":[{"include":"source.js"}]}},"match":"(([^\\\\s\\"'=<>\`/]|/(?!>))+)","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.js","end":"(\\")","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.js"}},"name":"string.quoted.double.html","patterns":[{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"match":"([^\\\\n\\"/]|/(?![/*]))+"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=\\")|\\\\n","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.js"}},"end":"(?=\\")|\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.js"}},"name":"comment.block.js"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"contentName":"source.js","end":"(')","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"},"1":{"name":"source.js"}},"name":"string.quoted.single.html","patterns":[{"captures":{"0":{"patterns":[{"include":"source.js"}]}},"match":"([^\\\\n'/]|/(?![/*]))+"},{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=')|\\\\n","name":"comment.line.double-slash.js"},{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.js"}},"end":"(?=')|\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.js"}},"name":"comment.block.js"}]}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},{"begin":"(data-[a-z\\\\-]+)(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"HTML5 attributes, data-*","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.data-x.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"(align|bgcolor|border)(?![\\\\w:-])","beginCaptures":{"0":{"name":"invalid.deprecated.entity.other.attribute-name.html"}},"comment":"HTML attributes, deprecated","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"([^\\\\x{0020}\\"'<>/=\\\\x{0000}-\\\\x{001F}\\\\x{007F}-\\\\x{009F}\\\\x{FDD0}-\\\\x{FDEF}\\\\x{FFFE}\\\\x{FFFF}\\\\x{1FFFE}\\\\x{1FFFF}\\\\x{2FFFE}\\\\x{2FFFF}\\\\x{3FFFE}\\\\x{3FFFF}\\\\x{4FFFE}\\\\x{4FFFF}\\\\x{5FFFE}\\\\x{5FFFF}\\\\x{6FFFE}\\\\x{6FFFF}\\\\x{7FFFE}\\\\x{7FFFF}\\\\x{8FFFE}\\\\x{8FFFF}\\\\x{9FFFE}\\\\x{9FFFF}\\\\x{AFFFE}\\\\x{AFFFF}\\\\x{BFFFE}\\\\x{BFFFF}\\\\x{CFFFE}\\\\x{CFFFF}\\\\x{DFFFE}\\\\x{DFFFF}\\\\x{EFFFE}\\\\x{EFFFF}\\\\x{FFFFE}\\\\x{FFFFF}\\\\x{10FFFE}\\\\x{10FFFF}]+)","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"Anything else that is valid","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.unrecognized.$1.html","patterns":[{"include":"#attribute-interior"}]},{"match":"[^\\\\s>]+","name":"invalid.illegal.character-not-allowed-here.html"}]},"attribute-interior":{"patterns":[{"begin":"=","beginCaptures":{"0":{"name":"punctuation.separator.key-value.html"}},"end":"(?<=[^\\\\s=])(?!\\\\s*=)|(?=/?>)","patterns":[{"match":"([^\\\\s\\"'=<>\`/]|/(?!>))+","name":"string.unquoted.html"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.double.html","patterns":[{"include":"#entities"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}},"name":"string.quoted.single.html","patterns":[{"include":"#entities"}]},{"match":"=","name":"invalid.illegal.unexpected-equals-sign.html"}]}]},"cdata":{"begin":"<!\\\\[CDATA\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.html"}},"contentName":"string.other.inline-data.html","end":"]]>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.cdata.html"},"comment":{"begin":"<!--","captures":{"0":{"name":"punctuation.definition.comment.html"}},"end":"-->","name":"comment.block.html","patterns":[{"match":"\\\\G-?>","name":"invalid.illegal.characters-not-allowed-here.html"},{"match":"<!--(?!>)|<!-(?=-->)","name":"invalid.illegal.characters-not-allowed-here.html"},{"match":"--!>","name":"invalid.illegal.characters-not-allowed-here.html"}]},"core-minus-invalid":{"comment":"This should be the root pattern array includes minus #tags-invalid","patterns":[{"include":"#xml-processing"},{"include":"#comment"},{"include":"#doctype"},{"include":"#cdata"},{"include":"#tags-valid"},{"include":"#entities"}]},"doctype":{"begin":"<!(?=(?i:DOCTYPE\\\\s))","beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.doctype.html","patterns":[{"match":"\\\\G(?i:DOCTYPE)","name":"entity.name.tag.html"},{"begin":"\\"","end":"\\"","name":"string.quoted.double.html"},{"match":"[^\\\\s>]+","name":"entity.other.attribute-name.html"}]},"entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.html"},"912":{"name":"punctuation.definition.entity.html"}},"comment":"Yes this is a bit ridiculous, there are quite a lot of these","match":"(&)(?=[a-zA-Z])((a(s(ymp(eq)?|cr|t)|n(d(slope|d|v|and)?|g(s(t|ph)|zarr|e|le|rt(vb(d)?)?|msd(a(h|c|d|e|f|a|g|b))?)?)|c(y|irc|d|ute|E)?|tilde|o(pf|gon)|uml|p(id|os|prox(eq)?|e|E|acir)?|elig|f(r)?|w(conint|int)|l(pha|e(ph|fsym))|acute|ring|grave|m(p|a(cr|lg))|breve)|A(s(sign|cr)|nd|MP|c(y|irc)|tilde|o(pf|gon)|uml|pplyFunction|fr|Elig|lpha|acute|ring|grave|macr|breve))|(B(scr|cy|opf|umpeq|e(cause|ta|rnoullis)|fr|a(ckslash|r(v|wed))|reve)|b(s(cr|im(e)?|ol(hsub|b)?|emi)|n(ot|e(quiv)?)|c(y|ong)|ig(s(tar|qcup)|c(irc|up|ap)|triangle(down|up)|o(times|dot|plus)|uplus|vee|wedge)|o(t(tom)?|pf|wtie|x(h(d|u|D|U)?|times|H(d|u|D|U)?|d(R|l|r|L)|u(R|l|r|L)|plus|D(R|l|r|L)|v(R|h|H|l|r|L)?|U(R|l|r|L)|V(R|h|H|l|r|L)?|minus|box))|Not|dquo|u(ll(et)?|mp(e(q)?|E)?)|prime|e(caus(e)?|t(h|ween|a)|psi|rnou|mptyv)|karow|fr|l(ock|k(1(2|4)|34)|a(nk|ck(square|triangle(down|left|right)?|lozenge)))|a(ck(sim(eq)?|cong|prime|epsilon)|r(vee|wed(ge)?))|r(eve|vbar)|brk(tbrk)?))|(c(s(cr|u(p(e)?|b(e)?))|h(cy|i|eck(mark)?)|ylcty|c(irc|ups(sm)?|edil|a(ps|ron))|tdot|ir(scir|c(eq|le(d(R|circ|S|dash|ast)|arrow(left|right)))?|e|fnint|E|mid)?|o(n(int|g(dot)?)|p(y(sr)?|f|rod)|lon(e(q)?)?|m(p(fn|le(xes|ment))?|ma(t)?))|dot|u(darr(l|r)|p(s|c(up|ap)|or|dot|brcap)?|e(sc|pr)|vee|wed|larr(p)?|r(vearrow(left|right)|ly(eq(succ|prec)|vee|wedge)|arr(m)?|ren))|e(nt(erdot)?|dil|mptyv)|fr|w(conint|int)|lubs(uit)?|a(cute|p(s|c(up|ap)|dot|and|brcup)?|r(on|et))|r(oss|arr))|C(scr|hi|c(irc|onint|edil|aron)|ircle(Minus|Times|Dot|Plus)|Hcy|o(n(tourIntegral|int|gruent)|unterClockwiseContourIntegral|p(f|roduct)|lon(e)?)|dot|up(Cap)?|OPY|e(nterDot|dilla)|fr|lo(seCurly(DoubleQuote|Quote)|ckwiseContourIntegral)|a(yleys|cute|p(italDifferentialD)?)|ross))|(d(s(c(y|r)|trok|ol)|har(l|r)|c(y|aron)|t(dot|ri(f)?)|i(sin|e|v(ide(ontimes)?|onx)?|am(s|ond(suit)?)?|gamma)|Har|z(cy|igrarr)|o(t(square|plus|eq(dot)?|minus)?|ublebarwedge|pf|wn(harpoon(left|right)|downarrows|arrow)|llar)|d(otseq|a(rr|gger))?|u(har|arr)|jcy|e(lta|g|mptyv)|f(isht|r)|wangle|lc(orn|rop)|a(sh(v)?|leth|rr|gger)|r(c(orn|rop)|bkarow)|b(karow|lac)|Arr)|D(s(cr|trok)|c(y|aron)|Scy|i(fferentialD|a(critical(Grave|Tilde|Do(t|ubleAcute)|Acute)|mond))|o(t(Dot|Equal)?|uble(Right(Tee|Arrow)|ContourIntegral|Do(t|wnArrow)|Up(DownArrow|Arrow)|VerticalBar|L(ong(RightArrow|Left(RightArrow|Arrow))|eft(RightArrow|Tee|Arrow)))|pf|wn(Right(TeeVector|Vector(Bar)?)|Breve|Tee(Arrow)?|arrow|Left(RightVector|TeeVector|Vector(Bar)?)|Arrow(Bar|UpArrow)?))|Zcy|el(ta)?|D(otrahd)?|Jcy|fr|a(shv|rr|gger)))|(e(s(cr|im|dot)|n(sp|g)|c(y|ir(c)?|olon|aron)|t(h|a)|o(pf|gon)|dot|u(ro|ml)|p(si(v|lon)?|lus|ar(sl)?)|e|D(ot|Dot)|q(s(im|lant(less|gtr))|c(irc|olon)|u(iv(DD)?|est|als)|vparsl)|f(Dot|r)|l(s(dot)?|inters|l)?|a(ster|cute)|r(Dot|arr)|g(s(dot)?|rave)?|x(cl|ist|p(onentiale|ectation))|m(sp(1(3|4))?|pty(set|v)?|acr))|E(s(cr|im)|c(y|irc|aron)|ta|o(pf|gon)|NG|dot|uml|TH|psilon|qu(ilibrium|al(Tilde)?)|fr|lement|acute|grave|x(ists|ponentialE)|m(pty(SmallSquare|VerySmallSquare)|acr)))|(f(scr|nof|cy|ilig|o(pf|r(k(v)?|all))|jlig|partint|emale|f(ilig|l(ig|lig)|r)|l(tns|lig|at)|allingdotseq|r(own|a(sl|c(1(2|8|3|4|5|6)|78|2(3|5)|3(8|4|5)|45|5(8|6)))))|F(scr|cy|illed(SmallSquare|VerySmallSquare)|o(uriertrf|pf|rAll)|fr))|(G(scr|c(y|irc|edil)|t|opf|dot|T|Jcy|fr|amma(d)?|reater(Greater|SlantEqual|Tilde|Equal(Less)?|FullEqual|Less)|g|breve)|g(s(cr|im(e|l)?)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|irc)|t(c(c|ir)|dot|quest|lPar|r(sim|dot|eq(qless|less)|less|a(pprox|rr)))?|imel|opf|dot|jcy|e(s(cc|dot(o(l)?)?|l(es)?)?|q(slant|q)?|l)?|v(nE|ertneqq)|fr|E(l)?|l(j|E|a)?|a(cute|p|mma(d)?)|rave|g(g)?|breve))|(h(s(cr|trok|lash)|y(phen|bull)|circ|o(ok(leftarrow|rightarrow)|pf|arr|rbar|mtht)|e(llip|arts(uit)?|rcon)|ks(earow|warow)|fr|a(irsp|lf|r(dcy|r(cir|w)?)|milt)|bar|Arr)|H(s(cr|trok)|circ|ilbertSpace|o(pf|rizontalLine)|ump(DownHump|Equal)|fr|a(cek|t)|ARDcy))|(i(s(cr|in(s(v)?|dot|v|E)?)|n(care|t(cal|prod|e(rcal|gers)|larhk)?|odot|fin(tie)?)?|c(y|irc)?|t(ilde)?|i(nfin|i(nt|int)|ota)?|o(cy|ta|pf|gon)|u(kcy|ml)|jlig|prod|e(cy|xcl)|quest|f(f|r)|acute|grave|m(of|ped|a(cr|th|g(part|e|line))))|I(scr|n(t(e(rsection|gral))?|visible(Comma|Times))|c(y|irc)|tilde|o(ta|pf|gon)|dot|u(kcy|ml)|Ocy|Jlig|fr|Ecy|acute|grave|m(plies|a(cr|ginaryI))?))|(j(s(cr|ercy)|c(y|irc)|opf|ukcy|fr|math)|J(s(cr|ercy)|c(y|irc)|opf|ukcy|fr))|(k(scr|hcy|c(y|edil)|opf|jcy|fr|appa(v)?|green)|K(scr|c(y|edil)|Hcy|opf|Jcy|fr|appa))|(l(s(h|cr|trok|im(e|g)?|q(uo(r)?|b)|aquo)|h(ar(d|u(l)?)|blk)|n(sim|e(q(q)?)?|E|ap(prox)?)|c(y|ub|e(il|dil)|aron)|Barr|t(hree|c(c|ir)|imes|dot|quest|larr|r(i(e|f)?|Par))?|Har|o(ng(left(arrow|rightarrow)|rightarrow|mapsto)|times|z(enge|f)?|oparrow(left|right)|p(f|lus|ar)|w(ast|bar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|r(dhar|ushar))|ur(dshar|uhar)|jcy|par(lt)?|e(s(s(sim|dot|eq(qgtr|gtr)|approx|gtr)|cc|dot(o(r)?)?|g(es)?)?|q(slant|q)?|ft(harpoon(down|up)|threetimes|leftarrows|arrow(tail)?|right(squigarrow|harpoons|arrow(s)?))|g)?|v(nE|ertneqq)|f(isht|loor|r)|E(g)?|l(hard|corner|tri|arr)?|a(ng(d|le)?|cute|t(e(s)?|ail)?|p|emptyv|quo|rr(sim|hk|tl|pl|fs|lp|b(fs)?)?|gran|mbda)|r(har(d)?|corner|tri|arr|m)|g(E)?|m(idot|oust(ache)?)|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr))|L(s(h|cr|trok)|c(y|edil|aron)|t|o(ng(RightArrow|left(arrow|rightarrow)|rightarrow|Left(RightArrow|Arrow))|pf|wer(RightArrow|LeftArrow))|T|e(ss(Greater|SlantEqual|Tilde|EqualGreater|FullEqual|Less)|ft(Right(Vector|Arrow)|Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|rightarrow|Floor|A(ngleBracket|rrow(RightArrow|Bar)?)))|Jcy|fr|l(eftarrow)?|a(ng|cute|placetrf|rr|mbda)|midot))|(M(scr|cy|inusPlus|opf|u|e(diumSpace|llintrf)|fr|ap)|m(s(cr|tpos)|ho|nplus|c(y|omma)|i(nus(d(u)?|b)?|cro|d(cir|dot|ast)?)|o(dels|pf)|dash|u(ltimap|map)?|p|easuredangle|DDot|fr|l(cp|dr)|a(cr|p(sto(down|up|left)?)?|l(t(ese)?|e)|rker)))|(n(s(hort(parallel|mid)|c(cue|e|r)?|im(e(q)?)?|u(cc(eq)?|p(set(eq(q)?)?|e|E)?|b(set(eq(q)?)?|e|E)?)|par|qsu(pe|be)|mid)|Rightarrow|h(par|arr|Arr)|G(t(v)?|g)|c(y|ong(dot)?|up|edil|a(p|ron))|t(ilde|lg|riangle(left(eq)?|right(eq)?)|gl)|i(s(d)?|v)?|o(t(ni(v(c|a|b))?|in(dot|v(c|a|b)|E)?)?|pf)|dash|u(m(sp|ero)?)?|jcy|p(olint|ar(sl|t|allel)?|r(cue|e(c(eq)?)?)?)|e(s(im|ear)|dot|quiv|ar(hk|r(ow)?)|xist(s)?|Arr)?|v(sim|infin|Harr|dash|Dash|l(t(rie)?|e|Arr)|ap|r(trie|Arr)|g(t|e))|fr|w(near|ar(hk|r(ow)?)|Arr)|V(dash|Dash)|l(sim|t(ri(e)?)?|dr|e(s(s)?|q(slant|q)?|ft(arrow|rightarrow))?|E|arr|Arr)|a(ng|cute|tur(al(s)?)?|p(id|os|prox|E)?|bla)|r(tri(e)?|ightarrow|arr(c|w)?|Arr)|g(sim|t(r)?|e(s|q(slant|q)?)?|E)|mid|L(t(v)?|eft(arrow|rightarrow)|l)|b(sp|ump(e)?))|N(scr|c(y|edil|aron)|tilde|o(nBreakingSpace|Break|t(R(ightTriangle(Bar|Equal)?|everseElement)|Greater(Greater|SlantEqual|Tilde|Equal|FullEqual|Less)?|S(u(cceeds(SlantEqual|Tilde|Equal)?|perset(Equal)?|bset(Equal)?)|quareSu(perset(Equal)?|bset(Equal)?))|Hump(DownHump|Equal)|Nested(GreaterGreater|LessLess)|C(ongruent|upCap)|Tilde(Tilde|Equal|FullEqual)?|DoubleVerticalBar|Precedes(SlantEqual|Equal)?|E(qual(Tilde)?|lement|xists)|VerticalBar|Le(ss(Greater|SlantEqual|Tilde|Equal|Less)?|ftTriangle(Bar|Equal)?))?|pf)|u|e(sted(GreaterGreater|LessLess)|wLine|gative(MediumSpace|Thi(nSpace|ckSpace)|VeryThinSpace))|Jcy|fr|acute))|(o(s(cr|ol|lash)|h(m|bar)|c(y|ir(c)?)|ti(lde|mes(as)?)|S|int|opf|d(sold|iv|ot|ash|blac)|uml|p(erp|lus|ar)|elig|vbar|f(cir|r)|l(c(ir|ross)|t|ine|arr)|a(st|cute)|r(slope|igof|or|d(er(of)?|f|m)?|v|arr)?|g(t|on|rave)|m(i(nus|cron|d)|ega|acr))|O(s(cr|lash)|c(y|irc)|ti(lde|mes)|opf|dblac|uml|penCurly(DoubleQuote|Quote)|ver(B(ar|rac(e|ket))|Parenthesis)|fr|Elig|acute|r|grave|m(icron|ega|acr)))|(p(s(cr|i)|h(i(v)?|one|mmat)|cy|i(tchfork|v)?|o(intint|und|pf)|uncsp|er(cnt|tenk|iod|p|mil)|fr|l(us(sim|cir|two|d(o|u)|e|acir|mn|b)?|an(ck(h)?|kv))|ar(s(im|l)|t|a(llel)?)?|r(sim|n(sim|E|ap)|cue|ime(s)?|o(d|p(to)?|f(surf|line|alar))|urel|e(c(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?)?|E|ap)?|m)|P(s(cr|i)|hi|cy|i|o(incareplane|pf)|fr|lusMinus|artialD|r(ime|o(duct|portion(al)?)|ecedes(SlantEqual|Tilde|Equal)?)?))|(q(scr|int|opf|u(ot|est(eq)?|at(int|ernions))|prime|fr)|Q(scr|opf|UOT|fr))|(R(s(h|cr)|ho|c(y|edil|aron)|Barr|ight(Ceiling|T(ee(Vector|Arrow)?|riangle(Bar|Equal)?)|Do(ubleBracket|wn(TeeVector|Vector(Bar)?))|Up(TeeVector|DownVector|Vector(Bar)?)|Vector(Bar)?|arrow|Floor|A(ngleBracket|rrow(Bar|LeftArrow)?))|o(undImplies|pf)|uleDelayed|e(verse(UpEquilibrium|E(quilibrium|lement)))?|fr|EG|a(ng|cute|rr(tl)?)|rightarrow)|r(s(h|cr|q(uo(r)?|b)|aquo)|h(o(v)?|ar(d|u(l)?))|nmid|c(y|ub|e(il|dil)|aron)|Barr|t(hree|imes|ri(e|f|ltri)?)|i(singdotseq|ng|ght(squigarrow|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(tail)?|rightarrows))|Har|o(times|p(f|lus|ar)|a(ng|rr)|brk)|d(sh|ca|quo(r)?|ldhar)|uluhar|p(polint|ar(gt)?)|e(ct|al(s|ine|part)?|g)|f(isht|loor|r)|l(har|arr|m)|a(ng(d|e|le)?|c(ute|e)|t(io(nals)?|ail)|dic|emptyv|quo|rr(sim|hk|c|tl|pl|fs|w|lp|ap|b(fs)?)?)|rarr|x|moust(ache)?|b(arr|r(k(sl(d|u)|e)|ac(e|k))|brk)|A(tail|arr|rr)))|(s(s(cr|tarf|etmn|mile)|h(y|c(hcy|y)|ort(parallel|mid)|arp)|c(sim|y|n(sim|E|ap)|cue|irc|polint|e(dil)?|E|a(p|ron))?|t(ar(f)?|r(ns|aight(phi|epsilon)))|i(gma(v|f)?|m(ne|dot|plus|e(q)?|l(E)?|rarr|g(E)?)?)|zlig|o(pf|ftcy|l(b(ar)?)?)|dot(e|b)?|u(ng|cc(sim|n(sim|eqq|approx)|curlyeq|eq|approx)?|p(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|hs(ol|ub)|1|n(e|E)|2|d(sub|ot)|3|plus|e(dot)?|E|larr|mult)?|m|b(s(im|u(p|b)|et(neq(q)?|eq(q)?)?)|n(e|E)|dot|plus|e(dot)?|E|rarr|mult)?)|pa(des(uit)?|r)|e(swar|ct|tm(n|inus)|ar(hk|r(ow)?)|xt|mi|Arr)|q(su(p(set(eq)?|e)?|b(set(eq)?|e)?)|c(up(s)?|ap(s)?)|u(f|ar(e|f))?)|fr(own)?|w(nwar|ar(hk|r(ow)?)|Arr)|larr|acute|rarr|m(t(e(s)?)?|i(d|le)|eparsl|a(shp|llsetminus))|bquo)|S(scr|hort(RightArrow|DownArrow|UpArrow|LeftArrow)|c(y|irc|edil|aron)?|tar|igma|H(cy|CHcy)|opf|u(c(hThat|ceeds(SlantEqual|Tilde|Equal)?)|p(set|erset(Equal)?)?|m|b(set(Equal)?)?)|OFTcy|q(uare(Su(perset(Equal)?|bset(Equal)?)|Intersection|Union)?|rt)|fr|acute|mallCircle))|(t(s(hcy|c(y|r)|trok)|h(i(nsp|ck(sim|approx))|orn|e(ta(sym|v)?|re(4|fore))|k(sim|ap))|c(y|edil|aron)|i(nt|lde|mes(d|b(ar)?)?)|o(sa|p(cir|f(ork)?|bot)?|ea)|dot|prime|elrec|fr|w(ixt|ohead(leftarrow|rightarrow))|a(u|rget)|r(i(sb|time|dot|plus|e|angle(down|q|left(eq)?|right(eq)?)?|minus)|pezium|ade)|brk)|T(s(cr|trok)|RADE|h(i(nSpace|ckSpace)|e(ta|refore))|c(y|edil|aron)|S(cy|Hcy)|ilde(Tilde|Equal|FullEqual)?|HORN|opf|fr|a(u|b)|ripleDot))|(u(scr|h(ar(l|r)|blk)|c(y|irc)|t(ilde|dot|ri(f)?)|Har|o(pf|gon)|d(har|arr|blac)|u(arr|ml)|p(si(h|lon)?|harpoon(left|right)|downarrow|uparrows|lus|arrow)|f(isht|r)|wangle|l(c(orn(er)?|rop)|tri)|a(cute|rr)|r(c(orn(er)?|rop)|tri|ing)|grave|m(l|acr)|br(cy|eve)|Arr)|U(scr|n(ion(Plus)?|der(B(ar|rac(e|ket))|Parenthesis))|c(y|irc)|tilde|o(pf|gon)|dblac|uml|p(si(lon)?|downarrow|Tee(Arrow)?|per(RightArrow|LeftArrow)|DownArrow|Equilibrium|arrow|Arrow(Bar|DownArrow)?)|fr|a(cute|rr(ocir)?)|ring|grave|macr|br(cy|eve)))|(v(s(cr|u(pn(e|E)|bn(e|E)))|nsu(p|b)|cy|Bar(v)?|zigzag|opf|dash|prop|e(e(eq|bar)?|llip|r(t|bar))|Dash|fr|ltri|a(ngrt|r(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|t(heta|riangle(left|right))|p(hi|i|ropto)|epsilon|kappa|r(ho)?))|rtri|Arr)|V(scr|cy|opf|dash(l)?|e(e|r(yThinSpace|t(ical(Bar|Separator|Tilde|Line))?|bar))|Dash|vdash|fr|bar))|(w(scr|circ|opf|p|e(ierp|d(ge(q)?|bar))|fr|r(eath)?)|W(scr|circ|opf|edge|fr))|(X(scr|i|opf|fr)|x(s(cr|qcup)|h(arr|Arr)|nis|c(irc|up|ap)|i|o(time|dot|p(f|lus))|dtri|u(tri|plus)|vee|fr|wedge|l(arr|Arr)|r(arr|Arr)|map))|(y(scr|c(y|irc)|icy|opf|u(cy|ml)|en|fr|ac(y|ute))|Y(scr|c(y|irc)|opf|uml|Icy|Ucy|fr|acute|Acy))|(z(scr|hcy|c(y|aron)|igrarr|opf|dot|e(ta|etrf)|fr|w(nj|j)|acute)|Z(scr|c(y|aron)|Hcy|opf|dot|e(ta|roWidthSpace)|fr|acute)))(;)","name":"constant.character.entity.named.$2.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#\\\\d+(;)","name":"constant.character.entity.numeric.decimal.html"},{"captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}},"match":"(&)#[xX][0-9a-fA-F]+(;)","name":"constant.character.entity.numeric.hexadecimal.html"},{"match":"&(?=[a-zA-Z0-9]+;)","name":"invalid.illegal.ambiguous-ampersand.html"}]},"math":{"patterns":[{"begin":"(?i)(<)(math)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.structure.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.structure.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]}],"repository":{"attribute":{"patterns":[{"begin":"(s(hift|ymmetric|cript(sizemultiplier|level|minsize)|t(ackalign|retchy)|ide|u(pscriptshift|bscriptshift)|e(parator(s)?|lection)|rc)|h(eight|ref)|n(otation|umalign)|c(haralign|olumn(spa(n|cing)|width|lines|align)|lose|rossout)|i(n(dent(shift(first|last)?|target|align(first|last)?)|fixlinebreakstyle)|d)|o(pen|verflow)|d(i(splay(style)?|r)|e(nomalign|cimalpoint|pth))|position|e(dge|qual(columns|rows))|voffset|f(orm|ence|rame(spacing)?)|width|l(space|ine(thickness|leading|break(style|multchar)?)|o(ngdivstyle|cation)|ength|quote|argeop)|a(c(cent(under)?|tiontype)|l(t(text|img(-(height|valign|width))?)|ign(mentscope)?))|r(space|ow(spa(n|cing)|lines|align)|quote)|groupalign|x(link:href|mlns)|m(in(size|labelspacing)|ovablelimits|a(th(size|color|variant|background)|xsize))|bevelled)(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"([^\\\\x{0020}\\"'<>/=\\\\x{0000}-\\\\x{001F}\\\\x{007F}-\\\\x{009F}\\\\x{FDD0}-\\\\x{FDEF}\\\\x{FFFE}\\\\x{FFFF}\\\\x{1FFFE}\\\\x{1FFFF}\\\\x{2FFFE}\\\\x{2FFFF}\\\\x{3FFFE}\\\\x{3FFFF}\\\\x{4FFFE}\\\\x{4FFFF}\\\\x{5FFFE}\\\\x{5FFFF}\\\\x{6FFFE}\\\\x{6FFFF}\\\\x{7FFFE}\\\\x{7FFFF}\\\\x{8FFFE}\\\\x{8FFFF}\\\\x{9FFFE}\\\\x{9FFFF}\\\\x{AFFFE}\\\\x{AFFFF}\\\\x{BFFFE}\\\\x{BFFFF}\\\\x{CFFFE}\\\\x{CFFFF}\\\\x{DFFFE}\\\\x{DFFFF}\\\\x{EFFFE}\\\\x{EFFFF}\\\\x{FFFFE}\\\\x{FFFFF}\\\\x{10FFFE}\\\\x{10FFFF}]+)","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"Anything else that is valid","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.unrecognized.$1.html","patterns":[{"include":"#attribute-interior"}]},{"match":"[^\\\\s>]+","name":"invalid.illegal.character-not-allowed-here.html"}]},"tags":{"patterns":[{"include":"#comment"},{"include":"#cdata"},{"captures":{"0":{"name":"meta.tag.structure.math.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.structure.math.$2.html"},{"begin":"(?i)(<)(annotation|annotation-xml|semantics|menclose|merror|mfenced|mfrac|mpadded|mphantom|mroot|mrow|msqrt|mstyle|mmultiscripts|mover|mprescripts|msub|msubsup|msup|munder|munderover|none|mlabeledtr|mtable|mtd|mtr|mlongdiv|mscarries|mscarry|msgroup|msline|msrow|mstack|maction)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.math.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.structure.math.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.structure.math.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.inline.math.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.inline.math.$2.html"},{"begin":"(?i)(<)(mi|mn|mo|ms|mspace|mtext|maligngroup|malignmark)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.inline.math.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.inline.math.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.inline.math.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.object.math.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(mglyph)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.object.math.$2.html"},{"begin":"(?i)(<)(mglyph)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.object.math.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.object.math.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.object.math.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.other.invalid.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(([\\\\w:]+))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.other.invalid.html"},{"begin":"(?i)(<)((\\\\w[^\\\\s>]*))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.other.invalid.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)((\\\\2))\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.other.invalid.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"name":"punctuation.definition.tag.end.html"},"5":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.other.invalid.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.invalid.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"include":"#tags-invalid"}]}}},"svg":{"patterns":[{"begin":"(?i)(<)(svg)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.structure.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.structure.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]}],"repository":{"attribute":{"patterns":[{"begin":"(s(hape-rendering|ystemLanguage|cale|t(yle|itchTiles|op-(color|opacity)|dDeviation|em(h|v)|artOffset|r(i(ng|kethrough-(thickness|position))|oke(-(opacity|dash(offset|array)|width|line(cap|join)|miterlimit))?))|urfaceScale|p(e(cular(Constant|Exponent)|ed)|acing|readMethod)|eed|lope)|h(oriz-(origin-x|adv-x)|eight|anging|ref(lang)?)|y(1|2|ChannelSelector)?|n(umOctaves|ame)|c(y|o(ntentS(criptType|tyleType)|lor(-(interpolation(-filters)?|profile|rendering))?)|ursor|l(ip(-(path|rule)|PathUnits)?|ass)|a(p-height|lcMode)|x)|t(ype|o|ext(-(decoration|anchor|rendering)|Length)|a(rget(X|Y)?|b(index|leValues))|ransform)|i(n(tercept|2)?|d(eographic)?|mage-rendering)|z(oomAndPan)?|o(p(erator|acity)|ver(flow|line-(thickness|position))|ffset|r(i(ent(ation)?|gin)|der))|d(y|i(splay|visor|ffuseConstant|rection)|ominant-baseline|ur|e(scent|celerate)|x)?|u(1|n(i(code(-(range|bidi))?|ts-per-em)|derline-(thickness|position))|2)|p(ing|oint(s(At(X|Y|Z))?|er-events)|a(nose-1|t(h(Length)?|tern(ContentUnits|Transform|Units))|int-order)|r(imitiveUnits|eserveA(spectRatio|lpha)))|e(n(d|able-background)|dgeMode|levation|x(ternalResourcesRequired|ponent))|v(i(sibility|ew(Box|Target))|-(hanging|ideographic|alphabetic|mathematical)|e(ctor-effect|r(sion|t-(origin-(y|x)|adv-y)))|alues)|k(1|2|3|e(y(Splines|Times|Points)|rn(ing|el(Matrix|UnitLength)))|4)?|f(y|il(ter(Res|Units)?|l(-(opacity|rule))?)|o(nt-(s(t(yle|retch)|ize(-adjust)?)|variant|family|weight)|rmat)|lood-(color|opacity)|r(om)?|x)|w(idth(s)?|ord-spacing|riting-mode)|l(i(ghting-color|mitingConeAngle)|ocal|e(ngthAdjust|tter-spacing)|ang)|a(scent|cc(umulate|ent-height)|ttribute(Name|Type)|zimuth|dditive|utoReverse|l(ignment-baseline|phabetic|lowReorder)|rabic-form|mplitude)|r(y|otate|e(s(tart|ult)|ndering-intent|peat(Count|Dur)|quired(Extensions|Features)|f(X|Y|errerPolicy)|l)|adius|x)?|g(1|2|lyph(Ref|-(name|orientation-(horizontal|vertical)))|radient(Transform|Units))|x(1|2|ChannelSelector|-height|link:(show|href|t(ype|itle)|a(ctuate|rcrole)|role)|ml:(space|lang|base))?|m(in|ode|e(thod|dia)|a(sk(ContentUnits|Units)?|thematical|rker(Height|-(start|end|mid)|Units|Width)|x))|b(y|ias|egin|ase(Profile|line-shift|Frequency)|box))(?![\\\\w:-])","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.$1.html","patterns":[{"include":"#attribute-interior"}]},{"begin":"([^\\\\x{0020}\\"'<>/=\\\\x{0000}-\\\\x{001F}\\\\x{007F}-\\\\x{009F}\\\\x{FDD0}-\\\\x{FDEF}\\\\x{FFFE}\\\\x{FFFF}\\\\x{1FFFE}\\\\x{1FFFF}\\\\x{2FFFE}\\\\x{2FFFF}\\\\x{3FFFE}\\\\x{3FFFF}\\\\x{4FFFE}\\\\x{4FFFF}\\\\x{5FFFE}\\\\x{5FFFF}\\\\x{6FFFE}\\\\x{6FFFF}\\\\x{7FFFE}\\\\x{7FFFF}\\\\x{8FFFE}\\\\x{8FFFF}\\\\x{9FFFE}\\\\x{9FFFF}\\\\x{AFFFE}\\\\x{AFFFF}\\\\x{BFFFE}\\\\x{BFFFF}\\\\x{CFFFE}\\\\x{CFFFF}\\\\x{DFFFE}\\\\x{DFFFF}\\\\x{EFFFE}\\\\x{EFFFF}\\\\x{FFFFE}\\\\x{FFFFF}\\\\x{10FFFE}\\\\x{10FFFF}]+)","beginCaptures":{"0":{"name":"entity.other.attribute-name.html"}},"comment":"Anything else that is valid","end":"(?=\\\\s*+[^=\\\\s])","name":"meta.attribute.unrecognized.$1.html","patterns":[{"include":"#attribute-interior"}]},{"match":"[^\\\\s>]+","name":"invalid.illegal.character-not-allowed-here.html"}]},"tags":{"patterns":[{"include":"#comment"},{"include":"#cdata"},{"captures":{"0":{"name":"meta.tag.metadata.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.metadata.svg.$2.html"},{"begin":"(?i)(<)(color-profile|desc|metadata|script|style|title)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.metadata.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.metadata.svg.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.metadata.svg.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.structure.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.structure.svg.$2.html"},{"begin":"(?i)(<)(animateMotion|clipPath|defs|feComponentTransfer|feDiffuseLighting|feMerge|feSpecularLighting|filter|g|hatch|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|pattern|radialGradient|switch|text|textPath)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.structure.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.structure.svg.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.structure.svg.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.inline.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.inline.svg.$2.html"},{"begin":"(?i)(<)(a|animate|discard|feBlend|feColorMatrix|feComposite|feConvolveMatrix|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feMergeNode|feMorphology|feOffset|fePointLight|feSpotLight|feTile|feTurbulence|hatchPath|mpath|set|solidcolor|stop|tspan)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.inline.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.inline.svg.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.inline.svg.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.object.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.object.svg.$2.html"},{"begin":"(?i)(<)(a|circle|ellipse|feImage|foreignObject|image|line|path|polygon|polyline|rect|symbol|use|view)(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.object.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"patterns":[{"include":"#attribute"}]},"5":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)(\\\\2)\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.object.svg.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.object.svg.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.other.svg.$2.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.other.svg.$2.html"},{"begin":"(?i)(<)((altGlyph|altGlyphDef|altGlyphItem|animateColor|animateTransform|cursor|font|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|glyph|glyphRef|hkern|missing-glyph|tref|vkern))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.other.svg.$2.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)((\\\\2))\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.other.svg.$2.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"},"4":{"name":"punctuation.definition.tag.end.html"},"5":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.other.svg.$2.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"captures":{"0":{"name":"meta.tag.other.invalid.void.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"match":"(?i)(<)(([\\\\w:]+))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(/>))","name":"meta.element.other.invalid.html"},{"begin":"(?i)(<)((\\\\w[^\\\\s>]*))(?=\\\\s|/?>)(?:(([^\\"'>]|\\"[^\\"]*\\"|'[^']*')*)(>))?","beginCaptures":{"0":{"name":"meta.tag.other.invalid.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"patterns":[{"include":"#attribute"}]},"6":{"name":"punctuation.definition.tag.end.html"}},"end":"(?i)(</)((\\\\2))\\\\s*(>)|(/>)|(?=</\\\\w+)","endCaptures":{"0":{"name":"meta.tag.other.invalid.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"},"4":{"name":"punctuation.definition.tag.end.html"},"5":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.element.other.invalid.html","patterns":[{"begin":"(?<!>)\\\\G","end":"(?=/>)|>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.invalid.start.html","patterns":[{"include":"#attribute"}]},{"include":"#tags"}]},{"include":"#tags-invalid"}]}}},"tags-invalid":{"patterns":[{"begin":"(</?)((\\\\w[^\\\\s>]*))(?<!/)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.unrecognized-tag.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.$2.html","patterns":[{"include":"#attribute"}]}]},"tags-valid":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=<(?i:style)\\\\b(?!-))","beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"end":"(?!\\\\G)([ \\\\t]*$\\\\n?)?","endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}},"patterns":[{"begin":"(?i)(<)(style)(?=\\\\s|/?>)","beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(?i)((<)/)(style)\\\\s*(>)","endCaptures":{"0":{"name":"meta.tag.metadata.style.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.css-ignored-vscode"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","captures":{"1":{"name":"punctuation.definition.tag.end.html"}},"end":"(>)","name":"meta.tag.metadata.style.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?!\\\\G)","end":"(?=</(?i:style))","name":"source.css","patterns":[{"include":"source.css"}]}]}]},{"begin":"(^[ \\\\t]+)?(?=<(?i:script)\\\\b(?!-))","beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"end":"(?!\\\\G)([ \\\\t]*$\\\\n?)?","endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}},"patterns":[{"begin":"(<)((?i:script))\\\\b","beginCaptures":{"0":{"name":"meta.tag.metadata.script.start.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"(/)((?i:script))(>)","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.embedded.block.html","patterns":[{"begin":"\\\\G","end":"(?=/)","patterns":[{"begin":"(>)","beginCaptures":{"0":{"name":"meta.tag.metadata.script.start.html"},"1":{"name":"punctuation.definition.tag.end.html"}},"end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.js-ignored-vscode"}},"patterns":[{"begin":"\\\\G","end":"(?=</(?i:script))","name":"source.js","patterns":[{"begin":"(^[ \\\\t]+)?(?=//)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.js"}},"end":"(?!\\\\G)","patterns":[{"begin":"//","beginCaptures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"(?=<\/script)|\\\\n","name":"comment.line.double-slash.js"}]},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.js"}},"end":"\\\\*/|(?=<\/script)","name":"comment.block.js"},{"include":"source.js"}]}]},{"begin":"\\\\G","end":"(?i:(?=>|type(?=[\\\\s=])(?!\\\\s*=\\\\s*(''|\\"\\"|('|\\"|)(text/(javascript(1\\\\.[0-5])?|x-javascript|jscript|livescript|(x-)?ecmascript|babel)|application/((x-)?javascript|(x-)?ecmascript)|module)[\\\\s\\"'>]))))","name":"meta.tag.metadata.script.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i:(?=type\\\\s*=\\\\s*('|\\"|)text/(x-handlebars|(x-(handlebars-)?|ng-)?template|html)[\\\\s\\"'>]))","end":"((<))(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"text.html.basic"}},"patterns":[{"begin":"\\\\G","end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.script.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?!\\\\G)","end":"(?=</(?i:script))","name":"text.html.basic","patterns":[{"include":"text.html.basic"}]}]},{"begin":"(?=(?i:type))","end":"(<)(?=/(?i:script))","endCaptures":{"0":{"name":"meta.tag.metadata.script.end.html"},"1":{"name":"punctuation.definition.tag.begin.html"}},"patterns":[{"begin":"\\\\G","end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.script.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?!\\\\G)","end":"(?=</(?i:script))","name":"source.unknown"}]}]}]}]},{"begin":"(?i)(<)(base|link|meta)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(noscript|title)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)(noscript|title)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(col|hr|input)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(address|article|aside|blockquote|body|button|caption|colgroup|datalist|dd|details|dialog|div|dl|dt|fieldset|figcaption|figure|footer|form|head|header|hgroup|html|h[1-6]|label|legend|li|main|map|menu|meter|nav|ol|optgroup|option|output|p|pre|progress|section|select|slot|summary|table|tbody|td|template|textarea|tfoot|th|thead|tr|ul)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)(address|article|aside|blockquote|body|button|caption|colgroup|datalist|dd|details|dialog|div|dl|dt|fieldset|figcaption|figure|footer|form|head|header|hgroup|html|h[1-6]|label|legend|li|main|map|menu|meter|nav|ol|optgroup|option|output|p|pre|progress|section|select|slot|summary|table|tbody|td|template|textarea|tfoot|th|thead|tr|ul)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(area|br|wbr)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(a|abbr|b|bdi|bdo|cite|code|data|del|dfn|em|i|ins|kbd|mark|q|rp|rt|ruby|s|samp|small|span|strong|sub|sup|time|u|var)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)(a|abbr|b|bdi|bdo|cite|code|data|del|dfn|em|i|ins|kbd|mark|q|rp|rt|ruby|s|samp|small|span|strong|sub|sup|time|u|var)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(embed|img|param|source|track)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)(audio|canvas|iframe|object|picture|video)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)(audio|canvas|iframe|object|picture|video)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((basefont|isindex))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.metadata.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((center|frameset|noembed|noframes))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)((center|frameset|noembed|noframes))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.structure.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((acronym|big|blink|font|strike|tt|xmp))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)((acronym|big|blink|font|strike|tt|xmp))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.inline.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((frame))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.void.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((applet))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)((applet))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.deprecated.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.object.$2.end.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(<)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.no-longer-supported.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.$2.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(?i)(</)((dir|keygen|listing|menuitem|plaintext|spacer))(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"invalid.illegal.no-longer-supported.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.$2.end.html","patterns":[{"include":"#attribute"}]},{"include":"#math"},{"include":"#svg"},{"begin":"(<)([a-zA-Z][.0-9_a-zA-Z\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}-\\\\x{200D}\\\\x{203F}-\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}]*-[\\\\-.0-9_a-zA-Z\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}-\\\\x{200D}\\\\x{203F}-\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}]*)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"/?>","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.custom.start.html","patterns":[{"include":"#attribute"}]},{"begin":"(</)([a-zA-Z][.0-9_a-zA-Z\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}-\\\\x{200D}\\\\x{203F}-\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}]*-[\\\\-.0-9_a-zA-Z\\\\x{00B7}\\\\x{00C0}-\\\\x{00D6}\\\\x{00D8}-\\\\x{00F6}\\\\x{00F8}-\\\\x{037D}\\\\x{037F}-\\\\x{1FFF}\\\\x{200C}-\\\\x{200D}\\\\x{203F}-\\\\x{2040}\\\\x{2070}-\\\\x{218F}\\\\x{2C00}-\\\\x{2FEF}\\\\x{3001}-\\\\x{D7FF}\\\\x{F900}-\\\\x{FDCF}\\\\x{FDF0}-\\\\x{FFFD}\\\\x{10000}-\\\\x{EFFFF}]*)(?=\\\\s|/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.custom.end.html","patterns":[{"include":"#attribute"}]}]},"xml-processing":{"begin":"(<\\\\?)(xml)","captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.html"}},"end":"(\\\\?>)","name":"meta.tag.metadata.processing.xml.html","patterns":[{"include":"#attribute"}]}},"scopeName":"text.html.basic","embeddedLangs":["javascript","css"]}`)),r=[...t,...e,n];export{r as default}; diff --git a/_nuxt/D5KoaKCx.js b/_nuxt/D5KoaKCx.js new file mode 100644 index 0000000..86eafd3 --- /dev/null +++ b/_nuxt/D5KoaKCx.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#80CBC4","activityBar.background":"#263238","activityBar.border":"#26323860","activityBar.dropBackground":"#f0717880","activityBar.foreground":"#EEFFFF","activityBarBadge.background":"#80CBC4","activityBarBadge.foreground":"#000000","badge.background":"#00000030","badge.foreground":"#546E7A","breadcrumb.activeSelectionForeground":"#80CBC4","breadcrumb.background":"#263238","breadcrumb.focusForeground":"#EEFFFF","breadcrumb.foreground":"#6c8692","breadcrumbPicker.background":"#263238","button.background":"#80CBC420","button.foreground":"#ffffff","debugConsole.errorForeground":"#f07178","debugConsole.infoForeground":"#89DDFF","debugConsole.warningForeground":"#FFCB6B","debugToolBar.background":"#263238","diffEditor.insertedTextBackground":"#89DDFF20","diffEditor.removedTextBackground":"#ff9cac20","dropdown.background":"#263238","dropdown.border":"#FFFFFF10","editor.background":"#263238","editor.findMatchBackground":"#000000","editor.findMatchBorder":"#80CBC4","editor.findMatchHighlight":"#EEFFFF","editor.findMatchHighlightBackground":"#00000050","editor.findMatchHighlightBorder":"#ffffff30","editor.findRangeHighlightBackground":"#FFCB6B30","editor.foreground":"#EEFFFF","editor.lineHighlightBackground":"#00000050","editor.lineHighlightBorder":"#00000000","editor.rangeHighlightBackground":"#FFFFFF0d","editor.selectionBackground":"#80CBC420","editor.selectionHighlightBackground":"#FFCC0020","editor.wordHighlightBackground":"#ff9cac30","editor.wordHighlightStrongBackground":"#C3E88D30","editorBracketMatch.background":"#263238","editorBracketMatch.border":"#FFCC0050","editorCursor.foreground":"#FFCC00","editorError.foreground":"#f0717870","editorGroup.border":"#00000030","editorGroup.dropBackground":"#f0717880","editorGroup.focusedEmptyBorder":"#f07178","editorGroupHeader.tabsBackground":"#263238","editorGutter.addedBackground":"#C3E88D60","editorGutter.deletedBackground":"#f0717860","editorGutter.modifiedBackground":"#82AAFF60","editorHoverWidget.background":"#263238","editorHoverWidget.border":"#FFFFFF10","editorIndentGuide.activeBackground":"#37474F","editorIndentGuide.background":"#37474F70","editorInfo.foreground":"#82AAFF70","editorLineNumber.activeForeground":"#6c8692","editorLineNumber.foreground":"#465A64","editorLink.activeForeground":"#EEFFFF","editorMarkerNavigation.background":"#EEFFFF05","editorOverviewRuler.border":"#263238","editorOverviewRuler.errorForeground":"#f0717840","editorOverviewRuler.findMatchForeground":"#80CBC4","editorOverviewRuler.infoForeground":"#82AAFF40","editorOverviewRuler.warningForeground":"#FFCB6B40","editorRuler.foreground":"#37474F","editorSuggestWidget.background":"#263238","editorSuggestWidget.border":"#FFFFFF10","editorSuggestWidget.foreground":"#EEFFFF","editorSuggestWidget.highlightForeground":"#80CBC4","editorSuggestWidget.selectedBackground":"#00000050","editorWarning.foreground":"#FFCB6B70","editorWhitespace.foreground":"#EEFFFF40","editorWidget.background":"#263238","editorWidget.border":"#80CBC4","editorWidget.resizeBorder":"#80CBC4","extensionBadge.remoteForeground":"#EEFFFF","extensionButton.prominentBackground":"#C3E88D90","extensionButton.prominentForeground":"#EEFFFF","extensionButton.prominentHoverBackground":"#C3E88D","focusBorder":"#FFFFFF00","foreground":"#EEFFFF","gitDecoration.conflictingResourceForeground":"#FFCB6B90","gitDecoration.deletedResourceForeground":"#f0717890","gitDecoration.ignoredResourceForeground":"#6c869290","gitDecoration.modifiedResourceForeground":"#82AAFF90","gitDecoration.untrackedResourceForeground":"#C3E88D90","input.background":"#303C41","input.border":"#FFFFFF10","input.foreground":"#EEFFFF","input.placeholderForeground":"#EEFFFF60","inputOption.activeBackground":"#EEFFFF30","inputOption.activeBorder":"#EEFFFF30","inputValidation.errorBorder":"#f07178","inputValidation.infoBorder":"#82AAFF","inputValidation.warningBorder":"#FFCB6B","list.activeSelectionBackground":"#263238","list.activeSelectionForeground":"#80CBC4","list.dropBackground":"#f0717880","list.focusBackground":"#EEFFFF20","list.focusForeground":"#EEFFFF","list.highlightForeground":"#80CBC4","list.hoverBackground":"#263238","list.hoverForeground":"#FFFFFF","list.inactiveSelectionBackground":"#00000030","list.inactiveSelectionForeground":"#80CBC4","listFilterWidget.background":"#00000030","listFilterWidget.noMatchesOutline":"#00000030","listFilterWidget.outline":"#00000030","menu.background":"#263238","menu.foreground":"#EEFFFF","menu.selectionBackground":"#00000050","menu.selectionBorder":"#00000030","menu.selectionForeground":"#80CBC4","menu.separatorBackground":"#EEFFFF","menubar.selectionBackground":"#00000030","menubar.selectionBorder":"#00000030","menubar.selectionForeground":"#80CBC4","notebook.focusedCellBorder":"#80CBC4","notebook.inactiveFocusedCellBorder":"#80CBC450","notificationLink.foreground":"#80CBC4","notifications.background":"#263238","notifications.foreground":"#EEFFFF","panel.background":"#263238","panel.border":"#26323860","panel.dropBackground":"#EEFFFF","panelTitle.activeBorder":"#80CBC4","panelTitle.activeForeground":"#FFFFFF","panelTitle.inactiveForeground":"#EEFFFF","peekView.border":"#00000030","peekViewEditor.background":"#303C41","peekViewEditor.matchHighlightBackground":"#80CBC420","peekViewEditorGutter.background":"#303C41","peekViewResult.background":"#303C41","peekViewResult.matchHighlightBackground":"#80CBC420","peekViewResult.selectionBackground":"#6c869270","peekViewTitle.background":"#303C41","peekViewTitleDescription.foreground":"#EEFFFF60","pickerGroup.border":"#FFFFFF1a","pickerGroup.foreground":"#80CBC4","progressBar.background":"#80CBC4","quickInput.background":"#263238","quickInput.foreground":"#6c8692","quickInput.list.focusBackground":"#EEFFFF20","sash.hoverBorder":"#80CBC450","scrollbar.shadow":"#00000030","scrollbarSlider.activeBackground":"#80CBC4","scrollbarSlider.background":"#EEFFFF20","scrollbarSlider.hoverBackground":"#EEFFFF10","selection.background":"#00000080","settings.checkboxBackground":"#263238","settings.checkboxForeground":"#EEFFFF","settings.dropdownBackground":"#263238","settings.dropdownForeground":"#EEFFFF","settings.headerForeground":"#80CBC4","settings.modifiedItemIndicator":"#80CBC4","settings.numberInputBackground":"#263238","settings.numberInputForeground":"#EEFFFF","settings.textInputBackground":"#263238","settings.textInputForeground":"#EEFFFF","sideBar.background":"#263238","sideBar.border":"#26323860","sideBar.foreground":"#6c8692","sideBarSectionHeader.background":"#263238","sideBarSectionHeader.border":"#26323860","sideBarTitle.foreground":"#EEFFFF","statusBar.background":"#263238","statusBar.border":"#26323860","statusBar.debuggingBackground":"#C792EA","statusBar.debuggingForeground":"#ffffff","statusBar.foreground":"#546E7A","statusBar.noFolderBackground":"#263238","statusBarItem.activeBackground":"#f0717880","statusBarItem.hoverBackground":"#546E7A20","statusBarItem.remoteBackground":"#80CBC4","statusBarItem.remoteForeground":"#000000","tab.activeBackground":"#263238","tab.activeBorder":"#80CBC4","tab.activeForeground":"#FFFFFF","tab.activeModifiedBorder":"#6c8692","tab.border":"#263238","tab.inactiveBackground":"#263238","tab.inactiveForeground":"#6c8692","tab.inactiveModifiedBorder":"#904348","tab.unfocusedActiveBorder":"#546E7A","tab.unfocusedActiveForeground":"#EEFFFF","tab.unfocusedActiveModifiedBorder":"#c05a60","tab.unfocusedInactiveModifiedBorder":"#904348","terminal.ansiBlack":"#000000","terminal.ansiBlue":"#82AAFF","terminal.ansiBrightBlack":"#546E7A","terminal.ansiBrightBlue":"#82AAFF","terminal.ansiBrightCyan":"#89DDFF","terminal.ansiBrightGreen":"#C3E88D","terminal.ansiBrightMagenta":"#C792EA","terminal.ansiBrightRed":"#f07178","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#FFCB6B","terminal.ansiCyan":"#89DDFF","terminal.ansiGreen":"#C3E88D","terminal.ansiMagenta":"#C792EA","terminal.ansiRed":"#f07178","terminal.ansiWhite":"#ffffff","terminal.ansiYellow":"#FFCB6B","terminalCursor.background":"#000000","terminalCursor.foreground":"#FFCB6B","textLink.activeForeground":"#EEFFFF","textLink.foreground":"#80CBC4","titleBar.activeBackground":"#263238","titleBar.activeForeground":"#EEFFFF","titleBar.border":"#26323860","titleBar.inactiveBackground":"#263238","titleBar.inactiveForeground":"#6c8692","tree.indentGuidesStroke":"#37474F","widget.shadow":"#00000030"},"displayName":"Material Theme","name":"material-theme","semanticHighlighting":true,"tokenColors":[{"settings":{"background":"#263238","foreground":"#EEFFFF"}},{"scope":"string","settings":{"foreground":"#C3E88D"}},{"scope":"punctuation, constant.other.symbol","settings":{"foreground":"#89DDFF"}},{"scope":"constant.character.escape, text.html constant.character.entity.named","settings":{"foreground":"#EEFFFF"}},{"scope":"constant.language.boolean","settings":{"foreground":"#ff9cac"}},{"scope":"constant.numeric","settings":{"foreground":"#F78C6C"}},{"scope":"variable, variable.parameter, support.variable, variable.language, support.constant, meta.definition.variable entity.name.function, meta.function-call.arguments","settings":{"foreground":"#EEFFFF"}},{"scope":"keyword.other","settings":{"foreground":"#F78C6C"}},{"scope":"keyword, modifier, variable.language.this, support.type.object, constant.language","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.function, support.function","settings":{"foreground":"#82AAFF"}},{"scope":"storage.type, storage.modifier, storage.control","settings":{"foreground":"#C792EA"}},{"scope":"support.module, support.node","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"support.type, constant.other.key","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.name.type, entity.other.inherited-class, entity.other","settings":{"foreground":"#FFCB6B"}},{"scope":"comment","settings":{"fontStyle":"italic","foreground":"#546E7A"}},{"scope":"comment punctuation.definition.comment, string.quoted.docstring","settings":{"fontStyle":"italic","foreground":"#546E7A"}},{"scope":"punctuation","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name, entity.name.type.class, support.type, support.class, meta.use","settings":{"foreground":"#FFCB6B"}},{"scope":"variable.object.property, meta.field.declaration entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.definition.method entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"meta.function entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"template.expression.begin, template.expression.end, punctuation.definition.template-expression.begin, punctuation.definition.template-expression.end","settings":{"foreground":"#89DDFF"}},{"scope":"meta.embedded, source.groovy.embedded, meta.template.expression","settings":{"foreground":"#EEFFFF"}},{"scope":"entity.name.tag.yaml","settings":{"foreground":"#f07178"}},{"scope":"meta.object-literal.key, meta.object-literal.key string, support.type.property-name.json","settings":{"foreground":"#f07178"}},{"scope":"constant.language.json","settings":{"foreground":"#89DDFF"}},{"scope":"entity.other.attribute-name.class","settings":{"foreground":"#FFCB6B"}},{"scope":"entity.other.attribute-name.id","settings":{"foreground":"#F78C6C"}},{"scope":"source.css entity.name.tag","settings":{"foreground":"#FFCB6B"}},{"scope":"support.type.property-name.css","settings":{"foreground":"#B2CCD6"}},{"scope":"meta.tag, punctuation.definition.tag","settings":{"foreground":"#89DDFF"}},{"scope":"entity.name.tag","settings":{"foreground":"#f07178"}},{"scope":"entity.other.attribute-name","settings":{"foreground":"#C792EA"}},{"scope":"punctuation.definition.entity.html","settings":{"foreground":"#EEFFFF"}},{"scope":"markup.heading","settings":{"foreground":"#89DDFF"}},{"scope":"text.html.markdown meta.link.inline, meta.link.reference","settings":{"foreground":"#f07178"}},{"scope":"text.html.markdown beginning.punctuation.definition.list","settings":{"foreground":"#89DDFF"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#f07178"}},{"scope":"markup.bold markup.italic, markup.italic markup.bold","settings":{"fontStyle":"italic bold","foreground":"#f07178"}},{"scope":"markup.fenced_code.block.markdown punctuation.definition.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"markup.inline.raw.string.markdown","settings":{"foreground":"#C3E88D"}},{"scope":"keyword.other.definition.ini","settings":{"foreground":"#f07178"}},{"scope":"entity.name.section.group-title.ini","settings":{"foreground":"#89DDFF"}},{"scope":"source.cs meta.class.identifier storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.identifier entity.name.function","settings":{"foreground":"#f07178"}},{"scope":"source.cs meta.method-call meta.method, source.cs entity.name.function","settings":{"foreground":"#82AAFF"}},{"scope":"source.cs storage.type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.method.return-type","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cs meta.preprocessor","settings":{"foreground":"#546E7A"}},{"scope":"source.cs entity.name.type.namespace","settings":{"foreground":"#EEFFFF"}},{"scope":"meta.jsx.children, SXNested","settings":{"foreground":"#EEFFFF"}},{"scope":"support.class.component","settings":{"foreground":"#FFCB6B"}},{"scope":"source.cpp meta.block variable.other","settings":{"foreground":"#EEFFFF"}},{"scope":"source.python meta.member.access.python","settings":{"foreground":"#f07178"}},{"scope":"source.python meta.function-call.python, meta.function-call.arguments","settings":{"foreground":"#82AAFF"}},{"scope":"meta.block","settings":{"foreground":"#f07178"}},{"scope":"entity.name.function.call","settings":{"foreground":"#82AAFF"}},{"scope":"source.php support.other.namespace, source.php meta.use support.class","settings":{"foreground":"#EEFFFF"}},{"scope":"constant.keyword","settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":"entity.name.function","settings":{"foreground":"#82AAFF"}},{"settings":{"background":"#263238","foreground":"#EEFFFF"}},{"scope":["constant.other.placeholder"],"settings":{"foreground":"#f07178"}},{"scope":["markup.deleted"],"settings":{"foreground":"#f07178"}},{"scope":["markup.inserted"],"settings":{"foreground":"#C3E88D"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["keyword.control"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["variable.parameter"],"settings":{"fontStyle":"italic"}},{"scope":["variable.parameter.function.language.special.self.python"],"settings":{"fontStyle":"italic","foreground":"#f07178"}},{"scope":["constant.character.format.placeholder.other.python"],"settings":{"foreground":"#F78C6C"}},{"scope":["markup.quote"],"settings":{"fontStyle":"italic","foreground":"#89DDFF"}},{"scope":["markup.fenced_code.block"],"settings":{"foreground":"#EEFFFF90"}},{"scope":["punctuation.definition.quote"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#FFCB6B"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#F78C6C"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#f07178"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#916b53"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#82AAFF"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#ff9cac"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C792EA"}},{"scope":["meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"],"settings":{"foreground":"#C3E88D"}}],"type":"dark"}'));export{e as default}; diff --git a/_nuxt/D6W5XTfC.js b/_nuxt/D6W5XTfC.js new file mode 100644 index 0000000..999807e --- /dev/null +++ b/_nuxt/D6W5XTfC.js @@ -0,0 +1 @@ +import{_ as m}from"./CWTHGu1v.js";import{_ as f}from"./CuXcSdBY.js";import{d as u,an as p,c as n,e as r,n as t,C as o,i as s,f as g,t as y,h as b,ah as h}from"./WKNqgS7_.js";const k=u({__name:"ProseCode",props:{code:{type:String,required:!0},icon:{type:String,default:void 0},language:{type:String,default:void 0},hideHeader:{type:Boolean,default:!1},filename:{type:String,default:void 0},highlights:{type:Array,default:void 0},meta:{type:String,default:void 0}},setup(e){const i={wrapper:"[&>pre]:!rounded-t-none [&>pre]:!my-0 my-5",header:"flex items-center gap-1.5 border border-gray-200 dark:border-gray-700 border-b-0 relative rounded-t-md px-4 py-3 not-prose",icon:{base:""},button:{base:"absolute top-2.5 right-2.5"},filename:"text-gray-700 dark:text-gray-200 text-sm/6"},{ui:a}=p("content.prose.code",void 0,i,void 0,!0);return(d,v)=>{const l=m,c=f;return n(),r("div",{class:t(["relative",!!e.filename&&o(a).wrapper])},[e.filename&&!e.hideHeader?(n(),r("div",{key:0,class:t(o(a).header)},[s(l,{icon:e.icon,filename:e.filename,class:t(o(a).icon.base)},null,8,["icon","filename","class"]),g("span",{class:t(o(a).filename)},y(e.filename),3)],2)):b("",!0),s(c,{code:e.code,class:t(o(a).button.base)},null,8,["code","class"]),h(d.$slots,"default")],2)}}});export{k as _}; diff --git a/_nuxt/D9I4tSfz.js b/_nuxt/D9I4tSfz.js new file mode 100644 index 0000000..c18d531 --- /dev/null +++ b/_nuxt/D9I4tSfz.js @@ -0,0 +1 @@ +import{d as p,az as i,an as l,ao as m,B as _,c as d,ag as f,w as g,g as h,t as v,C as e,ai as x,ab as y}from"./WKNqgS7_.js";const B=p({inheritAttrs:!1,__name:"Shortcut",props:{value:{type:String,required:!0},class:{type:[String,Object,Array],default:void 0}},setup(a){const s={wrapper:"!my-0 align-text-top"},t=a,{metaSymbol:o}=i(),{ui:r,attrs:c}=l("content.shortcut",void 0,s,m(t,"class"),!0),n=_(()=>t.value==="meta"?o.value:t.value);return(S,b)=>{const u=y;return d(),f(u,x({class:e(r).wrapper},e(c)),{default:g(()=>[h(v(e(n)),1)]),_:1},16,["class"])}}});export{B as default}; diff --git a/_nuxt/DHoNGUg4.js b/_nuxt/DHoNGUg4.js new file mode 100644 index 0000000..8e446ec --- /dev/null +++ b/_nuxt/DHoNGUg4.js @@ -0,0 +1 @@ +import{_ as o}from"./g2z_gaTr.js";import"./CtS59gnC.js";import"./WKNqgS7_.js";import"./BneCoJRQ.js";export{o as default}; diff --git a/_nuxt/DLNnAE6d.js b/_nuxt/DLNnAE6d.js new file mode 100644 index 0000000..d3ee801 --- /dev/null +++ b/_nuxt/DLNnAE6d.js @@ -0,0 +1 @@ +import{d as o,c as n,ag as s,w as f,ah as p,aJ as c}from"./WKNqgS7_.js";const d=o({__name:"ProseA",props:{href:{type:String,default:""},target:{type:String,default:void 0,required:!1}},setup(t){const e=t;return(r,_)=>{const a=c;return n(),s(a,{href:e.href,target:e.target},{default:f(()=>[p(r.$slots,"default")]),_:3},8,["href","target"])}}});export{d as default}; diff --git a/_nuxt/DQnMtYqJ.js b/_nuxt/DQnMtYqJ.js new file mode 100644 index 0000000..2cfb6fb --- /dev/null +++ b/_nuxt/DQnMtYqJ.js @@ -0,0 +1 @@ +import{d as C,b6 as w,an as B,ao as I,r as v,B as S,be as D,c as s,e as o,f as d,n as l,C as e,F as f,af as y,ag as g,h as N,t as U,as as z,at as A,ba as F,ai as V,a9 as $}from"./WKNqgS7_.js";const j=["onClick"],O=C({inheritAttrs:!1,__name:"Tabs",props:{selectedIndex:{type:Number,default:0},class:{type:[String,Object,Array],default:void 0}},setup(h){const x={wrapper:"relative my-5 space-y-6",header:"flex items-center relative overflow-x-auto",border:"absolute bottom-0 inset-x-0 w-full h-px bg-gray-200 dark:bg-gray-800",tab:{base:"px-4 py-2.5 font-semibold text-sm/6 flex items-center gap-1.5 border-b z-[1] focus-visible:outline-primary",active:"text-primary border-primary",inactive:"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 border-transparent hover:border-gray-300 dark:hover:border-gray-700",icon:{base:"w-5 h-5 flex-shrink-0"}}},b=h,i=w(),{ui:r,attrs:_}=B("content.tabs",void 0,x,I(b,"class"),!0),p=v(b.selectedIndex||0),k=v(1),m=S(()=>{var u;return((u=i.default)==null?void 0:u.call(i).map((n,c)=>{var t,a;return{index:c,label:((t=n.props)==null?void 0:t.label)||`${c}`,icon:(a=n.props)==null?void 0:a.icon,component:n}}))||[]});return D(()=>{k.value+=1}),(u,n)=>{const c=$;return s(),o("div",V({class:e(r).wrapper},e(_)),[d("div",{class:l(e(r).header)},[d("div",{class:l(e(r).border)},null,2),(s(!0),o(f,null,y(e(m),(t,a)=>(s(),o("button",{key:a,class:l([e(r).tab.base,e(p)===a?e(r).tab.active:e(r).tab.inactive]),onClick:E=>p.value=a},[t.icon?(s(),g(c,{key:0,name:t.icon,class:l(e(r).tab.icon.base)},null,8,["name","class"])):N("",!0),d("span",null,U(t.label),1)],10,j))),128))],2),(s(!0),o(f,null,y(e(m),(t,a)=>z((s(),o("div",{key:a},[(s(),g(F(t.component)))])),[[A,e(p)===a]])),128))],16)}}});export{O as default}; diff --git a/_nuxt/DQroEG0t.js b/_nuxt/DQroEG0t.js new file mode 100644 index 0000000..8337e1d --- /dev/null +++ b/_nuxt/DQroEG0t.js @@ -0,0 +1 @@ +import{k as o,c as n,e as r,ah as c}from"./WKNqgS7_.js";const s={};function t(e,a){return n(),r("code",null,[c(e.$slots,"default")])}const d=o(s,[["render",t]]);export{d as default}; diff --git a/_nuxt/DT1PYp9M.js b/_nuxt/DT1PYp9M.js new file mode 100644 index 0000000..4fa8bae --- /dev/null +++ b/_nuxt/DT1PYp9M.js @@ -0,0 +1 @@ +import{d as n,S as e}from"./WKNqgS7_.js";const r=n({name:"DocumentDrivenEmpty",props:{value:{type:Object,required:!0}},render({value:t}){return e("div",void 0,[e("p","Document is empty"),e("p",`Add content to it by opening ${t._source}/${t._file} file.`)])}});export{r as default}; diff --git a/_nuxt/DT7GmsMW.js b/_nuxt/DT7GmsMW.js new file mode 100644 index 0000000..64db5cb --- /dev/null +++ b/_nuxt/DT7GmsMW.js @@ -0,0 +1 @@ +import{d as l,x as u,B as d,an as m,c as h,e as _,i as s,w as f,f as x,n as o,C as a,ah as g,a9 as w,aJ as v}from"./WKNqgS7_.js";const y=["id"],b=l({__name:"ProseH2",props:{id:{type:String,required:!0}},setup(n){const t=u(),r=d(()=>({wrapper:"scroll-mt-[calc(48px+48px+var(--header-height))] lg:scroll-mt-[calc(48px+var(--header-height))]",icon:{wrapper:"-ml-6 pr-2 py-2 inline-flex opacity-0 group-hover:lg:opacity-100 transition-opacity absolute",base:"w-4 h-4 text-primary",name:t.ui.icons.hash}})),{ui:e}=m("content.prose.h2",void 0,r,void 0,!0);return(c,C)=>{const i=w,p=v;return h(),_("h2",{id:n.id,class:o(a(e).wrapper)},[s(p,{href:`#${n.id}`,class:"group"},{default:f(()=>[x("div",{class:o(a(e).icon.wrapper)},[s(i,{name:a(e).icon.name,class:o(a(e).icon.base)},null,8,["name","class"])],2),g(c.$slots,"default")]),_:3},8,["href"])],10,y)}}});export{b as default}; diff --git a/_nuxt/DWmkr0yC.js b/_nuxt/DWmkr0yC.js new file mode 100644 index 0000000..d7840fc --- /dev/null +++ b/_nuxt/DWmkr0yC.js @@ -0,0 +1 @@ +const n=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"comment":"the JSON object key","include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"comment":"the JSON object value","include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^\\\\s}]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),e=[n];export{e as default}; diff --git a/_nuxt/DXR6eBOr.js b/_nuxt/DXR6eBOr.js new file mode 100644 index 0000000..2b64656 --- /dev/null +++ b/_nuxt/DXR6eBOr.js @@ -0,0 +1 @@ +import{d as n,S as e}from"./WKNqgS7_.js";const t=n({name:"DocumentDrivenNotFound",render(){return e("div","Document not found")}});export{t as default}; diff --git a/_nuxt/DY7OrFLh.js b/_nuxt/DY7OrFLh.js new file mode 100644 index 0000000..abf4cf6 --- /dev/null +++ b/_nuxt/DY7OrFLh.js @@ -0,0 +1,85 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Bb3iJIYE.js","./WKNqgS7_.js","./CtS59gnC.js","./BneCoJRQ.js","./Cpj98o6Y.js","./COj52qHV.js"])))=>i.map(i=>d[i]); +import{aX as ia,_ as Pn,ap as Bn,d as Mt,B as Qe,aY as gu,aQ as ys,aT as ks,E as yu,ah as le,c as Z,ag as Xe,n as se,C as q,h as ce,ar as sa,an as Va,ao as lt,e as ne,i as Oe,w as Be,f as wt,ai as Ye,aZ as bs,g as ct,t as Ie,F as Ft,af as Ot,am as ws,a_ as ku,a$ as bu,r as Da,b0 as ka,b1 as wu,b2 as Eu,b3 as Tu,b4 as Au,b5 as ba,b6 as Cu,b7 as xu,b8 as Du,aJ as Es,a9 as tn,k as zu,x as Su,aK as Iu,aS as Nu,aF as Fu,q as Ou,b9 as Lu}from"./WKNqgS7_.js";import{f as an,n as Mn,s as da,h as Ga,a as Ru,_ as vu}from"./CtS59gnC.js";import{n as Un}from"./BneCoJRQ.js";import{g as rn}from"./Cpj98o6Y.js";import{_ as Pu}from"./COj52qHV.js";function Hn(e){if(e)throw e}var za=Object.prototype.hasOwnProperty,Ts=Object.prototype.toString,jn=Object.defineProperty,qn=Object.getOwnPropertyDescriptor,Yn=function(t){return typeof Array.isArray=="function"?Array.isArray(t):Ts.call(t)==="[object Array]"},$n=function(t){if(!t||Ts.call(t)!=="[object Object]")return!1;var a=za.call(t,"constructor"),r=t.constructor&&t.constructor.prototype&&za.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!a&&!r)return!1;var n;for(n in t);return typeof n>"u"||za.call(t,n)},Wn=function(t,a){jn&&a.name==="__proto__"?jn(t,a.name,{enumerable:!0,configurable:!0,value:a.newValue,writable:!0}):t[a.name]=a.newValue},Vn=function(t,a){if(a==="__proto__")if(za.call(t,a)){if(qn)return qn(t,a).value}else return;return t[a]},Bu=function e(){var t,a,r,n,s,i,o=arguments[0],u=1,l=arguments.length,p=!1;for(typeof o=="boolean"&&(p=o,o=arguments[1]||{},u=2),(o==null||typeof o!="object"&&typeof o!="function")&&(o={});u<l;++u)if(t=arguments[u],t!=null)for(a in t)r=Vn(o,a),n=Vn(t,a),o!==n&&(p&&n&&($n(n)||(s=Yn(n)))?(s?(s=!1,i=r&&Yn(r)?r:[]):i=r&&$n(r)?r:{},Wn(o,{name:a,newValue:e(p,i,n)})):typeof n<"u"&&Wn(o,{name:a,newValue:n}));return o};const or=rn(Bu);function Ir(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function Mu(){const e=[],t={run:a,use:r};return t;function a(...n){let s=-1;const i=n.pop();if(typeof i!="function")throw new TypeError("Expected function as last argument, not "+i);o(null,...n);function o(u,...l){const p=e[++s];let h=-1;if(u){i(u);return}for(;++h<n.length;)(l[h]===null||l[h]===void 0)&&(l[h]=n[h]);n=l,p?Uu(p,o)(...l):i(null,...l)}}function r(n){if(typeof n!="function")throw new TypeError("Expected `middelware` to be a function, not "+n);return e.push(n),t}}function Uu(e,t){let a;return r;function r(...i){const o=e.length>i.length;let u;o&&i.push(n);try{u=e.apply(this,i)}catch(l){const p=l;if(o&&a)throw p;return n(p)}o||(u&&u.then&&typeof u.then=="function"?u.then(s,n):u instanceof Error?n(u):s(u))}function n(i,...o){a||(a=!0,t(i,...o))}function s(i){n(null,i)}}function Zt(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Gn(e.position):"start"in e||"end"in e?Gn(e):"line"in e||"column"in e?Nr(e):""}function Nr(e){return Qn(e&&e.line)+":"+Qn(e&&e.column)}function Gn(e){return Nr(e&&e.start)+"-"+Nr(e&&e.end)}function Qn(e){return e&&typeof e=="number"?e:1}class De extends Error{constructor(t,a,r){super(),typeof a=="string"&&(r=a,a=void 0);let n="",s={},i=!1;if(a&&("line"in a&&"column"in a?s={place:a}:"start"in a&&"end"in a?s={place:a}:"type"in a?s={ancestors:[a],place:a.position}:s={...a}),typeof t=="string"?n=t:!s.cause&&t&&(i=!0,n=t.message,s.cause=t),!s.ruleId&&!s.source&&typeof r=="string"){const u=r.indexOf(":");u===-1?s.ruleId=r:(s.source=r.slice(0,u),s.ruleId=r.slice(u+1))}if(!s.place&&s.ancestors&&s.ancestors){const u=s.ancestors[s.ancestors.length-1];u&&(s.place=u.position)}const o=s.place&&"start"in s.place?s.place.start:s.place;this.ancestors=s.ancestors||void 0,this.cause=s.cause||void 0,this.column=o?o.column:void 0,this.fatal=void 0,this.file,this.message=n,this.line=o?o.line:void 0,this.name=Zt(s.place)||"1:1",this.place=s.place||void 0,this.reason=this.message,this.ruleId=s.ruleId||void 0,this.source=s.source||void 0,this.stack=i&&s.cause&&typeof s.cause.stack=="string"?s.cause.stack:"",this.actual,this.expected,this.note,this.url}}De.prototype.file="";De.prototype.name="";De.prototype.reason="";De.prototype.message="";De.prototype.stack="";De.prototype.column=void 0;De.prototype.line=void 0;De.prototype.ancestors=void 0;De.prototype.cause=void 0;De.prototype.fatal=void 0;De.prototype.place=void 0;De.prototype.ruleId=void 0;De.prototype.source=void 0;const He={basename:Hu,dirname:ju,extname:qu,join:Yu,sep:"/"};function Hu(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');pa(e);let a=0,r=-1,n=e.length,s;if(t===void 0||t.length===0||t.length>e.length){for(;n--;)if(e.codePointAt(n)===47){if(s){a=n+1;break}}else r<0&&(s=!0,r=n+1);return r<0?"":e.slice(a,r)}if(t===e)return"";let i=-1,o=t.length-1;for(;n--;)if(e.codePointAt(n)===47){if(s){a=n+1;break}}else i<0&&(s=!0,i=n+1),o>-1&&(e.codePointAt(n)===t.codePointAt(o--)?o<0&&(r=n):(o=-1,r=i));return a===r?r=i:r<0&&(r=e.length),e.slice(a,r)}function ju(e){if(pa(e),e.length===0)return".";let t=-1,a=e.length,r;for(;--a;)if(e.codePointAt(a)===47){if(r){t=a;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function qu(e){pa(e);let t=e.length,a=-1,r=0,n=-1,s=0,i;for(;t--;){const o=e.codePointAt(t);if(o===47){if(i){r=t+1;break}continue}a<0&&(i=!0,a=t+1),o===46?n<0?n=t:s!==1&&(s=1):n>-1&&(s=-1)}return n<0||a<0||s===0||s===1&&n===a-1&&n===r+1?"":e.slice(n,a)}function Yu(...e){let t=-1,a;for(;++t<e.length;)pa(e[t]),e[t]&&(a=a===void 0?e[t]:a+"/"+e[t]);return a===void 0?".":$u(a)}function $u(e){pa(e);const t=e.codePointAt(0)===47;let a=Wu(e,!t);return a.length===0&&!t&&(a="."),a.length>0&&e.codePointAt(e.length-1)===47&&(a+="/"),t?"/"+a:a}function Wu(e,t){let a="",r=0,n=-1,s=0,i=-1,o,u;for(;++i<=e.length;){if(i<e.length)o=e.codePointAt(i);else{if(o===47)break;o=47}if(o===47){if(!(n===i-1||s===1))if(n!==i-1&&s===2){if(a.length<2||r!==2||a.codePointAt(a.length-1)!==46||a.codePointAt(a.length-2)!==46){if(a.length>2){if(u=a.lastIndexOf("/"),u!==a.length-1){u<0?(a="",r=0):(a=a.slice(0,u),r=a.length-1-a.lastIndexOf("/")),n=i,s=0;continue}}else if(a.length>0){a="",r=0,n=i,s=0;continue}}t&&(a=a.length>0?a+"/..":"..",r=2)}else a.length>0?a+="/"+e.slice(n+1,i):a=e.slice(n+1,i),r=i-n-1;n=i,s=0}else o===46&&s>-1?s++:s=-1}return a}function pa(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const Vu={cwd:Gu};function Gu(){return"/"}function Fr(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Qu(e){if(typeof e=="string")e=new URL(e);else if(!Fr(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return Ku(e)}function Ku(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let a=-1;for(;++a<t.length;)if(t.codePointAt(a)===37&&t.codePointAt(a+1)===50){const r=t.codePointAt(a+2);if(r===70||r===102){const n=new TypeError("File URL path must not include encoded / characters");throw n.code="ERR_INVALID_FILE_URL_PATH",n}}return decodeURIComponent(t)}const cr=["history","path","basename","stem","extname","dirname"];class Xu{constructor(t){let a;t?Fr(t)?a={path:t}:typeof t=="string"||Ju(t)?a={value:t}:a=t:a={},this.cwd="cwd"in a?"":Vu.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let r=-1;for(;++r<cr.length;){const s=cr[r];s in a&&a[s]!==void 0&&a[s]!==null&&(this[s]=s==="history"?[...a[s]]:a[s])}let n;for(n in a)cr.includes(n)||(this[n]=a[n])}get basename(){return typeof this.path=="string"?He.basename(this.path):void 0}set basename(t){lr(t,"basename"),ur(t,"basename"),this.path=He.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?He.dirname(this.path):void 0}set dirname(t){Kn(this.basename,"dirname"),this.path=He.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?He.extname(this.path):void 0}set extname(t){if(ur(t,"extname"),Kn(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=He.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){Fr(t)&&(t=Qu(t)),lr(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?He.basename(this.path,this.extname):void 0}set stem(t){lr(t,"stem"),ur(t,"stem"),this.path=He.join(this.dirname||"",t+(this.extname||""))}fail(t,a,r){const n=this.message(t,a,r);throw n.fatal=!0,n}info(t,a,r){const n=this.message(t,a,r);return n.fatal=void 0,n}message(t,a,r){const n=new De(t,a,r);return this.path&&(n.name=this.path+":"+n.name,n.file=this.path),n.fatal=!1,this.messages.push(n),n}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function ur(e,t){if(e&&e.includes(He.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+He.sep+"`")}function lr(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function Kn(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function Ju(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const Zu=function(e){const r=this.constructor.prototype,n=r[e],s=function(){return n.apply(s,arguments)};return Object.setPrototypeOf(s,r),s},el={}.hasOwnProperty;class nn extends Zu{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=Mu()}copy(){const t=new nn;let a=-1;for(;++a<this.attachers.length;){const r=this.attachers[a];t.use(...r)}return t.data(or(!0,{},this.namespace)),t}data(t,a){return typeof t=="string"?arguments.length===2?(dr("data",this.frozen),this.namespace[t]=a,this):el.call(this.namespace,t)&&this.namespace[t]||void 0:t?(dr("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[a,...r]=this.attachers[this.freezeIndex];if(r[0]===!1)continue;r[0]===!0&&(r[0]=void 0);const n=a.call(t,...r);typeof n=="function"&&this.transformers.use(n)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const a=wa(t),r=this.parser||this.Parser;return fr("parse",r),r(String(a),a)}process(t,a){const r=this;return this.freeze(),fr("process",this.parser||this.Parser),hr("process",this.compiler||this.Compiler),a?n(void 0,a):new Promise(n);function n(s,i){const o=wa(t),u=r.parse(o);r.run(u,o,function(p,h,f){if(p||!h||!f)return l(p);const m=h,g=r.stringify(m,f);rl(g)?f.value=g:f.result=g,l(p,f)});function l(p,h){p||!h?i(p):s?s(h):a(void 0,h)}}}processSync(t){let a=!1,r;return this.freeze(),fr("processSync",this.parser||this.Parser),hr("processSync",this.compiler||this.Compiler),this.process(t,n),Jn("processSync","process",a),r;function n(s,i){a=!0,Hn(s),r=i}}run(t,a,r){Xn(t),this.freeze();const n=this.transformers;return!r&&typeof a=="function"&&(r=a,a=void 0),r?s(void 0,r):new Promise(s);function s(i,o){const u=wa(a);n.run(t,u,l);function l(p,h,f){const m=h||t;p?o(p):i?i(m):r(void 0,m,f)}}}runSync(t,a){let r=!1,n;return this.run(t,a,s),Jn("runSync","run",r),n;function s(i,o){Hn(i),n=o,r=!0}}stringify(t,a){this.freeze();const r=wa(a),n=this.compiler||this.Compiler;return hr("stringify",n),Xn(t),n(t,r)}use(t,...a){const r=this.attachers,n=this.namespace;if(dr("use",this.frozen),t!=null)if(typeof t=="function")u(t,a);else if(typeof t=="object")Array.isArray(t)?o(t):i(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function s(l){if(typeof l=="function")u(l,[]);else if(typeof l=="object")if(Array.isArray(l)){const[p,...h]=l;u(p,h)}else i(l);else throw new TypeError("Expected usable value, not `"+l+"`")}function i(l){if(!("plugins"in l)&&!("settings"in l))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");o(l.plugins),l.settings&&(n.settings=or(!0,n.settings,l.settings))}function o(l){let p=-1;if(l!=null)if(Array.isArray(l))for(;++p<l.length;){const h=l[p];s(h)}else throw new TypeError("Expected a list of plugins, not `"+l+"`")}function u(l,p){let h=-1,f=-1;for(;++h<r.length;)if(r[h][0]===l){f=h;break}if(f===-1)r.push([l,...p]);else if(p.length>0){let[m,...g]=p;const b=r[f][1];Ir(b)&&Ir(m)&&(m=or(!0,b,m)),r[f]=[l,m,...g]}}}}const tl=new nn().freeze();function fr(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function hr(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function dr(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function Xn(e){if(!Ir(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function Jn(e,t,a){if(!a)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function wa(e){return al(e)?e:new Xu(e)}function al(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function rl(e){return typeof e=="string"||nl(e)}function nl(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const il={};function sn(e,t){const a=il,r=typeof a.includeImageAlt=="boolean"?a.includeImageAlt:!0,n=typeof a.includeHtml=="boolean"?a.includeHtml:!0;return As(e,r,n)}function As(e,t,a){if(sl(e)){if("value"in e)return e.type==="html"&&!a?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return Zn(e.children,t,a)}return Array.isArray(e)?Zn(e,t,a):""}function Zn(e,t,a){const r=[];let n=-1;for(;++n<e.length;)r[n]=As(e[n],t,a);return r.join("")}function sl(e){return!!(e&&typeof e=="object")}const ei=document.createElement("i");function oa(e){const t="&"+e+";";ei.innerHTML=t;const a=ei.textContent;return a.charCodeAt(a.length-1)===59&&e!=="semi"||a===t?!1:a}function Le(e,t,a,r){const n=e.length;let s=0,i;if(t<0?t=-t>n?0:n+t:t=t>n?n:t,a=a>0?a:0,r.length<1e4)i=Array.from(r),i.unshift(t,a),e.splice(...i);else for(a&&e.splice(t,a);s<r.length;)i=r.slice(s,s+1e4),i.unshift(t,0),e.splice(...i),s+=1e4,t+=1e4}function Ne(e,t){return e.length>0?(Le(e,e.length,0,t),e):t}const ti={}.hasOwnProperty;function Cs(e){const t={};let a=-1;for(;++a<e.length;)ol(t,e[a]);return t}function ol(e,t){let a;for(a in t){const n=(ti.call(e,a)?e[a]:void 0)||(e[a]={}),s=t[a];let i;if(s)for(i in s){ti.call(n,i)||(n[i]=[]);const o=s[i];cl(n[i],Array.isArray(o)?o:o?[o]:[])}}}function cl(e,t){let a=-1;const r=[];for(;++a<t.length;)(t[a].add==="after"?e:r).push(t[a]);Le(e,0,0,r)}function xs(e,t){const a=Number.parseInt(e,t);return a<9||a===11||a>13&&a<32||a>126&&a<160||a>55295&&a<57344||a>64975&&a<65008||(a&65535)===65535||(a&65535)===65534||a>1114111?"�":String.fromCodePoint(a)}function Me(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const _e=ht(/[A-Za-z]/),pe=ht(/[\dA-Za-z]/),ul=ht(/[#-'*+\--9=?A-Z^-~]/);function Fa(e){return e!==null&&(e<32||e===127)}const Or=ht(/\d/),ll=ht(/[\dA-Fa-f]/),fl=ht(/[!-/:-@[-`{-~]/);function W(e){return e!==null&&e<-2}function ae(e){return e!==null&&(e<0||e===32)}function K(e){return e===-2||e===-1||e===32}const Qa=ht(new RegExp("\\p{P}|\\p{S}","u")),Et=ht(/\s/);function ht(e){return t;function t(a){return a!==null&&a>-1&&e.test(String.fromCharCode(a))}}function dt(e){const t=[];let a=-1,r=0,n=0;for(;++a<e.length;){const s=e.charCodeAt(a);let i="";if(s===37&&pe(e.charCodeAt(a+1))&&pe(e.charCodeAt(a+2)))n=2;else if(s<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(s))||(i=String.fromCharCode(s));else if(s>55295&&s<57344){const o=e.charCodeAt(a+1);s<56320&&o>56319&&o<57344?(i=String.fromCharCode(s,o),n=1):i="�"}else i=String.fromCharCode(s);i&&(t.push(e.slice(r,a),encodeURIComponent(i)),r=a+n+1,i=""),n&&(a+=n,n=0)}return t.join("")+e.slice(r)}function G(e,t,a,r){const n=r?r-1:Number.POSITIVE_INFINITY;let s=0;return i;function i(u){return K(u)?(e.enter(a),o(u)):t(u)}function o(u){return K(u)&&s++<n?(e.consume(u),o):(e.exit(a),t(u))}}const hl={tokenize:dl};function dl(e){const t=e.attempt(this.parser.constructs.contentInitial,r,n);let a;return t;function r(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),G(e,t,"linePrefix")}function n(o){return e.enter("paragraph"),s(o)}function s(o){const u=e.enter("chunkText",{contentType:"text",previous:a});return a&&(a.next=u),a=u,i(o)}function i(o){if(o===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(o);return}return W(o)?(e.consume(o),e.exit("chunkText"),s):(e.consume(o),i)}}const pl={tokenize:ml},ai={tokenize:_l};function ml(e){const t=this,a=[];let r=0,n,s,i;return o;function o(O){if(r<a.length){const M=a[r];return t.containerState=M[1],e.attempt(M[0].continuation,u,l)(O)}return l(O)}function u(O){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,n&&I();const M=t.events.length;let N=M,d;for(;N--;)if(t.events[N][0]==="exit"&&t.events[N][1].type==="chunkFlow"){d=t.events[N][1].end;break}T(r);let D=M;for(;D<t.events.length;)t.events[D][1].end=Object.assign({},d),D++;return Le(t.events,N+1,0,t.events.slice(M)),t.events.length=D,l(O)}return o(O)}function l(O){if(r===a.length){if(!n)return f(O);if(n.currentConstruct&&n.currentConstruct.concrete)return g(O);t.interrupt=!!(n.currentConstruct&&!n._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(ai,p,h)(O)}function p(O){return n&&I(),T(r),f(O)}function h(O){return t.parser.lazy[t.now().line]=r!==a.length,i=t.now().offset,g(O)}function f(O){return t.containerState={},e.attempt(ai,m,g)(O)}function m(O){return r++,a.push([t.currentConstruct,t.containerState]),f(O)}function g(O){if(O===null){n&&I(),T(0),e.consume(O);return}return n=n||t.parser.flow(t.now()),e.enter("chunkFlow",{contentType:"flow",previous:s,_tokenizer:n}),b(O)}function b(O){if(O===null){C(e.exit("chunkFlow"),!0),T(0),e.consume(O);return}return W(O)?(e.consume(O),C(e.exit("chunkFlow")),r=0,t.interrupt=void 0,o):(e.consume(O),b)}function C(O,M){const N=t.sliceStream(O);if(M&&N.push(null),O.previous=s,s&&(s.next=O),s=O,n.defineSkip(O.start),n.write(N),t.parser.lazy[O.start.line]){let d=n.events.length;for(;d--;)if(n.events[d][1].start.offset<i&&(!n.events[d][1].end||n.events[d][1].end.offset>i))return;const D=t.events.length;let j=D,Y,x;for(;j--;)if(t.events[j][0]==="exit"&&t.events[j][1].type==="chunkFlow"){if(Y){x=t.events[j][1].end;break}Y=!0}for(T(r),d=D;d<t.events.length;)t.events[d][1].end=Object.assign({},x),d++;Le(t.events,j+1,0,t.events.slice(D)),t.events.length=d}}function T(O){let M=a.length;for(;M-- >O;){const N=a[M];t.containerState=N[1],N[0].exit.call(t,e)}a.length=O}function I(){n.write([null]),s=void 0,n=void 0,t.containerState._closeFlow=void 0}}function _l(e,t,a){return G(e,e.attempt(this.parser.constructs.document,t,a),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Oa(e){if(e===null||ae(e)||Et(e))return 1;if(Qa(e))return 2}function Ka(e,t,a){const r=[];let n=-1;for(;++n<e.length;){const s=e[n].resolveAll;s&&!r.includes(s)&&(t=s(t,a),r.push(s))}return t}const Lr={name:"attention",tokenize:yl,resolveAll:gl};function gl(e,t){let a=-1,r,n,s,i,o,u,l,p;for(;++a<e.length;)if(e[a][0]==="enter"&&e[a][1].type==="attentionSequence"&&e[a][1]._close){for(r=a;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[a][1]).charCodeAt(0)){if((e[r][1]._close||e[a][1]._open)&&(e[a][1].end.offset-e[a][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[a][1].end.offset-e[a][1].start.offset)%3))continue;u=e[r][1].end.offset-e[r][1].start.offset>1&&e[a][1].end.offset-e[a][1].start.offset>1?2:1;const h=Object.assign({},e[r][1].end),f=Object.assign({},e[a][1].start);ri(h,-u),ri(f,u),i={type:u>1?"strongSequence":"emphasisSequence",start:h,end:Object.assign({},e[r][1].end)},o={type:u>1?"strongSequence":"emphasisSequence",start:Object.assign({},e[a][1].start),end:f},s={type:u>1?"strongText":"emphasisText",start:Object.assign({},e[r][1].end),end:Object.assign({},e[a][1].start)},n={type:u>1?"strong":"emphasis",start:Object.assign({},i.start),end:Object.assign({},o.end)},e[r][1].end=Object.assign({},i.start),e[a][1].start=Object.assign({},o.end),l=[],e[r][1].end.offset-e[r][1].start.offset&&(l=Ne(l,[["enter",e[r][1],t],["exit",e[r][1],t]])),l=Ne(l,[["enter",n,t],["enter",i,t],["exit",i,t],["enter",s,t]]),l=Ne(l,Ka(t.parser.constructs.insideSpan.null,e.slice(r+1,a),t)),l=Ne(l,[["exit",s,t],["enter",o,t],["exit",o,t],["exit",n,t]]),e[a][1].end.offset-e[a][1].start.offset?(p=2,l=Ne(l,[["enter",e[a][1],t],["exit",e[a][1],t]])):p=0,Le(e,r-1,a-r+3,l),a=r+l.length-p-2;break}}for(a=-1;++a<e.length;)e[a][1].type==="attentionSequence"&&(e[a][1].type="data");return e}function yl(e,t){const a=this.parser.constructs.attentionMarkers.null,r=this.previous,n=Oa(r);let s;return i;function i(u){return s=u,e.enter("attentionSequence"),o(u)}function o(u){if(u===s)return e.consume(u),o;const l=e.exit("attentionSequence"),p=Oa(u),h=!p||p===2&&n||a.includes(u),f=!n||n===2&&p||a.includes(r);return l._open=!!(s===42?h:h&&(n||!f)),l._close=!!(s===42?f:f&&(p||!h)),t(u)}}function ri(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const kl={name:"autolink",tokenize:bl};function bl(e,t,a){let r=0;return n;function n(m){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(m),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),s}function s(m){return _e(m)?(e.consume(m),i):m===64?a(m):l(m)}function i(m){return m===43||m===45||m===46||pe(m)?(r=1,o(m)):l(m)}function o(m){return m===58?(e.consume(m),r=0,u):(m===43||m===45||m===46||pe(m))&&r++<32?(e.consume(m),o):(r=0,l(m))}function u(m){return m===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(m),e.exit("autolinkMarker"),e.exit("autolink"),t):m===null||m===32||m===60||Fa(m)?a(m):(e.consume(m),u)}function l(m){return m===64?(e.consume(m),p):ul(m)?(e.consume(m),l):a(m)}function p(m){return pe(m)?h(m):a(m)}function h(m){return m===46?(e.consume(m),r=0,p):m===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(m),e.exit("autolinkMarker"),e.exit("autolink"),t):f(m)}function f(m){if((m===45||pe(m))&&r++<63){const g=m===45?f:h;return e.consume(m),g}return a(m)}}const ma={tokenize:wl,partial:!0};function wl(e,t,a){return r;function r(s){return K(s)?G(e,n,"linePrefix")(s):n(s)}function n(s){return s===null||W(s)?t(s):a(s)}}const Ds={name:"blockQuote",tokenize:El,continuation:{tokenize:Tl},exit:Al};function El(e,t,a){const r=this;return n;function n(i){if(i===62){const o=r.containerState;return o.open||(e.enter("blockQuote",{_container:!0}),o.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(i),e.exit("blockQuoteMarker"),s}return a(i)}function s(i){return K(i)?(e.enter("blockQuotePrefixWhitespace"),e.consume(i),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(i))}}function Tl(e,t,a){const r=this;return n;function n(i){return K(i)?G(e,s,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(i):s(i)}function s(i){return e.attempt(Ds,t,a)(i)}}function Al(e){e.exit("blockQuote")}const zs={name:"characterEscape",tokenize:Cl};function Cl(e,t,a){return r;function r(s){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(s),e.exit("escapeMarker"),n}function n(s){return fl(s)?(e.enter("characterEscapeValue"),e.consume(s),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):a(s)}}const Ss={name:"characterReference",tokenize:xl};function xl(e,t,a){const r=this;let n=0,s,i;return o;function o(h){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(h),e.exit("characterReferenceMarker"),u}function u(h){return h===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(h),e.exit("characterReferenceMarkerNumeric"),l):(e.enter("characterReferenceValue"),s=31,i=pe,p(h))}function l(h){return h===88||h===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(h),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),s=6,i=ll,p):(e.enter("characterReferenceValue"),s=7,i=Or,p(h))}function p(h){if(h===59&&n){const f=e.exit("characterReferenceValue");return i===pe&&!oa(r.sliceSerialize(f))?a(h):(e.enter("characterReferenceMarker"),e.consume(h),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return i(h)&&n++<s?(e.consume(h),p):a(h)}}const ni={tokenize:zl,partial:!0},Rr={name:"codeFenced",tokenize:Dl,concrete:!0};function Dl(e,t,a){const r=this,n={tokenize:N,partial:!0};let s=0,i=0,o;return u;function u(d){return l(d)}function l(d){const D=r.events[r.events.length-1];return s=D&&D[1].type==="linePrefix"?D[2].sliceSerialize(D[1],!0).length:0,o=d,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),p(d)}function p(d){return d===o?(i++,e.consume(d),p):i<3?a(d):(e.exit("codeFencedFenceSequence"),K(d)?G(e,h,"whitespace")(d):h(d))}function h(d){return d===null||W(d)?(e.exit("codeFencedFence"),r.interrupt?t(d):e.check(ni,b,M)(d)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),f(d))}function f(d){return d===null||W(d)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),h(d)):K(d)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),G(e,m,"whitespace")(d)):d===96&&d===o?a(d):(e.consume(d),f)}function m(d){return d===null||W(d)?h(d):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),g(d))}function g(d){return d===null||W(d)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),h(d)):d===96&&d===o?a(d):(e.consume(d),g)}function b(d){return e.attempt(n,M,C)(d)}function C(d){return e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),T}function T(d){return s>0&&K(d)?G(e,I,"linePrefix",s+1)(d):I(d)}function I(d){return d===null||W(d)?e.check(ni,b,M)(d):(e.enter("codeFlowValue"),O(d))}function O(d){return d===null||W(d)?(e.exit("codeFlowValue"),I(d)):(e.consume(d),O)}function M(d){return e.exit("codeFenced"),t(d)}function N(d,D,j){let Y=0;return x;function x(v){return d.enter("lineEnding"),d.consume(v),d.exit("lineEnding"),S}function S(v){return d.enter("codeFencedFence"),K(v)?G(d,B,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(v):B(v)}function B(v){return v===o?(d.enter("codeFencedFenceSequence"),Q(v)):j(v)}function Q(v){return v===o?(Y++,d.consume(v),Q):Y>=i?(d.exit("codeFencedFenceSequence"),K(v)?G(d,te,"whitespace")(v):te(v)):j(v)}function te(v){return v===null||W(v)?(d.exit("codeFencedFence"),D(v)):j(v)}}}function zl(e,t,a){const r=this;return n;function n(i){return i===null?a(i):(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),s)}function s(i){return r.parser.lazy[r.now().line]?a(i):t(i)}}const pr={name:"codeIndented",tokenize:Il},Sl={tokenize:Nl,partial:!0};function Il(e,t,a){const r=this;return n;function n(l){return e.enter("codeIndented"),G(e,s,"linePrefix",5)(l)}function s(l){const p=r.events[r.events.length-1];return p&&p[1].type==="linePrefix"&&p[2].sliceSerialize(p[1],!0).length>=4?i(l):a(l)}function i(l){return l===null?u(l):W(l)?e.attempt(Sl,i,u)(l):(e.enter("codeFlowValue"),o(l))}function o(l){return l===null||W(l)?(e.exit("codeFlowValue"),i(l)):(e.consume(l),o)}function u(l){return e.exit("codeIndented"),t(l)}}function Nl(e,t,a){const r=this;return n;function n(i){return r.parser.lazy[r.now().line]?a(i):W(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n):G(e,s,"linePrefix",5)(i)}function s(i){const o=r.events[r.events.length-1];return o&&o[1].type==="linePrefix"&&o[2].sliceSerialize(o[1],!0).length>=4?t(i):W(i)?n(i):a(i)}}const Fl={name:"codeText",tokenize:Rl,resolve:Ol,previous:Ll};function Ol(e){let t=e.length-4,a=3,r,n;if((e[a][1].type==="lineEnding"||e[a][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=a;++r<t;)if(e[r][1].type==="codeTextData"){e[a][1].type="codeTextPadding",e[t][1].type="codeTextPadding",a+=2,t-=2;break}}for(r=a-1,t++;++r<=t;)n===void 0?r!==t&&e[r][1].type!=="lineEnding"&&(n=r):(r===t||e[r][1].type==="lineEnding")&&(e[n][1].type="codeTextData",r!==n+2&&(e[n][1].end=e[r-1][1].end,e.splice(n+2,r-n-2),t-=r-n-2,r=n+2),n=void 0);return e}function Ll(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function Rl(e,t,a){let r=0,n,s;return i;function i(h){return e.enter("codeText"),e.enter("codeTextSequence"),o(h)}function o(h){return h===96?(e.consume(h),r++,o):(e.exit("codeTextSequence"),u(h))}function u(h){return h===null?a(h):h===32?(e.enter("space"),e.consume(h),e.exit("space"),u):h===96?(s=e.enter("codeTextSequence"),n=0,p(h)):W(h)?(e.enter("lineEnding"),e.consume(h),e.exit("lineEnding"),u):(e.enter("codeTextData"),l(h))}function l(h){return h===null||h===32||h===96||W(h)?(e.exit("codeTextData"),u(h)):(e.consume(h),l)}function p(h){return h===96?(e.consume(h),n++,p):n===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(h)):(s.type="codeTextData",l(h))}}class vl{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,a){const r=a??Number.POSITIVE_INFINITY;return r<this.left.length?this.left.slice(t,r):t>this.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,a,r){const n=a||0;this.setCursor(Math.trunc(t));const s=this.right.splice(this.right.length-n,Number.POSITIVE_INFINITY);return r&&Wt(this.left,r),s.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Wt(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Wt(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const a=this.left.splice(t,Number.POSITIVE_INFINITY);Wt(this.right,a.reverse())}else{const a=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);Wt(this.left,a.reverse())}}}function Wt(e,t){let a=0;if(t.length<1e4)e.push(...t);else for(;a<t.length;)e.push(...t.slice(a,a+1e4)),a+=1e4}function Is(e){const t={};let a=-1,r,n,s,i,o,u,l;const p=new vl(e);for(;++a<p.length;){for(;a in t;)a=t[a];if(r=p.get(a),a&&r[1].type==="chunkFlow"&&p.get(a-1)[1].type==="listItemPrefix"&&(u=r[1]._tokenizer.events,s=0,s<u.length&&u[s][1].type==="lineEndingBlank"&&(s+=2),s<u.length&&u[s][1].type==="content"))for(;++s<u.length&&u[s][1].type!=="content";)u[s][1].type==="chunkText"&&(u[s][1]._isInFirstContentOfListItem=!0,s++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,Pl(p,a)),a=t[a],l=!0);else if(r[1]._container){for(s=a,n=void 0;s--&&(i=p.get(s),i[1].type==="lineEnding"||i[1].type==="lineEndingBlank");)i[0]==="enter"&&(n&&(p.get(n)[1].type="lineEndingBlank"),i[1].type="lineEnding",n=s);n&&(r[1].end=Object.assign({},p.get(n)[1].start),o=p.slice(n,a),o.unshift(r),p.splice(n,a-n+1,o))}}return Le(e,0,Number.POSITIVE_INFINITY,p.slice(0)),!l}function Pl(e,t){const a=e.get(t)[1],r=e.get(t)[2];let n=t-1;const s=[],i=a._tokenizer||r.parser[a.contentType](a.start),o=i.events,u=[],l={};let p,h,f=-1,m=a,g=0,b=0;const C=[b];for(;m;){for(;e.get(++n)[1]!==m;);s.push(n),m._tokenizer||(p=r.sliceStream(m),m.next||p.push(null),h&&i.defineSkip(m.start),m._isInFirstContentOfListItem&&(i._gfmTasklistFirstContentOfListItem=!0),i.write(p),m._isInFirstContentOfListItem&&(i._gfmTasklistFirstContentOfListItem=void 0)),h=m,m=m.next}for(m=a;++f<o.length;)o[f][0]==="exit"&&o[f-1][0]==="enter"&&o[f][1].type===o[f-1][1].type&&o[f][1].start.line!==o[f][1].end.line&&(b=f+1,C.push(b),m._tokenizer=void 0,m.previous=void 0,m=m.next);for(i.events=[],m?(m._tokenizer=void 0,m.previous=void 0):C.pop(),f=C.length;f--;){const T=o.slice(C[f],C[f+1]),I=s.pop();u.push([I,I+T.length-1]),e.splice(I,2,T)}for(u.reverse(),f=-1;++f<u.length;)l[g+u[f][0]]=g+u[f][1],g+=u[f][1]-u[f][0]-1;return l}const Bl={tokenize:Hl,resolve:Ul},Ml={tokenize:jl,partial:!0};function Ul(e){return Is(e),e}function Hl(e,t){let a;return r;function r(o){return e.enter("content"),a=e.enter("chunkContent",{contentType:"content"}),n(o)}function n(o){return o===null?s(o):W(o)?e.check(Ml,i,s)(o):(e.consume(o),n)}function s(o){return e.exit("chunkContent"),e.exit("content"),t(o)}function i(o){return e.consume(o),e.exit("chunkContent"),a.next=e.enter("chunkContent",{contentType:"content",previous:a}),a=a.next,n}}function jl(e,t,a){const r=this;return n;function n(i){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),G(e,s,"linePrefix")}function s(i){if(i===null||W(i))return a(i);const o=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&o&&o[1].type==="linePrefix"&&o[2].sliceSerialize(o[1],!0).length>=4?t(i):e.interrupt(r.parser.constructs.flow,a,t)(i)}}function Ns(e,t,a,r,n,s,i,o,u){const l=u||Number.POSITIVE_INFINITY;let p=0;return h;function h(T){return T===60?(e.enter(r),e.enter(n),e.enter(s),e.consume(T),e.exit(s),f):T===null||T===32||T===41||Fa(T)?a(T):(e.enter(r),e.enter(i),e.enter(o),e.enter("chunkString",{contentType:"string"}),b(T))}function f(T){return T===62?(e.enter(s),e.consume(T),e.exit(s),e.exit(n),e.exit(r),t):(e.enter(o),e.enter("chunkString",{contentType:"string"}),m(T))}function m(T){return T===62?(e.exit("chunkString"),e.exit(o),f(T)):T===null||T===60||W(T)?a(T):(e.consume(T),T===92?g:m)}function g(T){return T===60||T===62||T===92?(e.consume(T),m):m(T)}function b(T){return!p&&(T===null||T===41||ae(T))?(e.exit("chunkString"),e.exit(o),e.exit(i),e.exit(r),t(T)):p<l&&T===40?(e.consume(T),p++,b):T===41?(e.consume(T),p--,b):T===null||T===32||T===40||Fa(T)?a(T):(e.consume(T),T===92?C:b)}function C(T){return T===40||T===41||T===92?(e.consume(T),b):b(T)}}function Fs(e,t,a,r,n,s){const i=this;let o=0,u;return l;function l(m){return e.enter(r),e.enter(n),e.consume(m),e.exit(n),e.enter(s),p}function p(m){return o>999||m===null||m===91||m===93&&!u||m===94&&!o&&"_hiddenFootnoteSupport"in i.parser.constructs?a(m):m===93?(e.exit(s),e.enter(n),e.consume(m),e.exit(n),e.exit(r),t):W(m)?(e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),p):(e.enter("chunkString",{contentType:"string"}),h(m))}function h(m){return m===null||m===91||m===93||W(m)||o++>999?(e.exit("chunkString"),p(m)):(e.consume(m),u||(u=!K(m)),m===92?f:h)}function f(m){return m===91||m===92||m===93?(e.consume(m),o++,h):h(m)}}function Os(e,t,a,r,n,s){let i;return o;function o(f){return f===34||f===39||f===40?(e.enter(r),e.enter(n),e.consume(f),e.exit(n),i=f===40?41:f,u):a(f)}function u(f){return f===i?(e.enter(n),e.consume(f),e.exit(n),e.exit(r),t):(e.enter(s),l(f))}function l(f){return f===i?(e.exit(s),u(i)):f===null?a(f):W(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),G(e,l,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),p(f))}function p(f){return f===i||f===null||W(f)?(e.exit("chunkString"),l(f)):(e.consume(f),f===92?h:p)}function h(f){return f===i||f===92?(e.consume(f),p):p(f)}}function qe(e,t){let a;return r;function r(n){return W(n)?(e.enter("lineEnding"),e.consume(n),e.exit("lineEnding"),a=!0,r):K(n)?G(e,r,a?"linePrefix":"lineSuffix")(n):t(n)}}const ql={name:"definition",tokenize:$l},Yl={tokenize:Wl,partial:!0};function $l(e,t,a){const r=this;let n;return s;function s(m){return e.enter("definition"),i(m)}function i(m){return Fs.call(r,e,o,a,"definitionLabel","definitionLabelMarker","definitionLabelString")(m)}function o(m){return n=Me(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),m===58?(e.enter("definitionMarker"),e.consume(m),e.exit("definitionMarker"),u):a(m)}function u(m){return ae(m)?qe(e,l)(m):l(m)}function l(m){return Ns(e,p,a,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(m)}function p(m){return e.attempt(Yl,h,h)(m)}function h(m){return K(m)?G(e,f,"whitespace")(m):f(m)}function f(m){return m===null||W(m)?(e.exit("definition"),r.parser.defined.push(n),t(m)):a(m)}}function Wl(e,t,a){return r;function r(o){return ae(o)?qe(e,n)(o):a(o)}function n(o){return Os(e,s,a,"definitionTitle","definitionTitleMarker","definitionTitleString")(o)}function s(o){return K(o)?G(e,i,"whitespace")(o):i(o)}function i(o){return o===null||W(o)?t(o):a(o)}}const Vl={name:"hardBreakEscape",tokenize:Gl};function Gl(e,t,a){return r;function r(s){return e.enter("hardBreakEscape"),e.consume(s),n}function n(s){return W(s)?(e.exit("hardBreakEscape"),t(s)):a(s)}}const Ql={name:"headingAtx",tokenize:Xl,resolve:Kl};function Kl(e,t){let a=e.length-2,r=3,n,s;return e[r][1].type==="whitespace"&&(r+=2),a-2>r&&e[a][1].type==="whitespace"&&(a-=2),e[a][1].type==="atxHeadingSequence"&&(r===a-1||a-4>r&&e[a-2][1].type==="whitespace")&&(a-=r+1===a?2:4),a>r&&(n={type:"atxHeadingText",start:e[r][1].start,end:e[a][1].end},s={type:"chunkText",start:e[r][1].start,end:e[a][1].end,contentType:"text"},Le(e,r,a-r+1,[["enter",n,t],["enter",s,t],["exit",s,t],["exit",n,t]])),e}function Xl(e,t,a){let r=0;return n;function n(p){return e.enter("atxHeading"),s(p)}function s(p){return e.enter("atxHeadingSequence"),i(p)}function i(p){return p===35&&r++<6?(e.consume(p),i):p===null||ae(p)?(e.exit("atxHeadingSequence"),o(p)):a(p)}function o(p){return p===35?(e.enter("atxHeadingSequence"),u(p)):p===null||W(p)?(e.exit("atxHeading"),t(p)):K(p)?G(e,o,"whitespace")(p):(e.enter("atxHeadingText"),l(p))}function u(p){return p===35?(e.consume(p),u):(e.exit("atxHeadingSequence"),o(p))}function l(p){return p===null||p===35||ae(p)?(e.exit("atxHeadingText"),o(p)):(e.consume(p),l)}}const Jl=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],ii=["pre","script","style","textarea"],Zl={name:"htmlFlow",tokenize:rf,resolveTo:af,concrete:!0},ef={tokenize:sf,partial:!0},tf={tokenize:nf,partial:!0};function af(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function rf(e,t,a){const r=this;let n,s,i,o,u;return l;function l(E){return p(E)}function p(E){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(E),h}function h(E){return E===33?(e.consume(E),f):E===47?(e.consume(E),s=!0,b):E===63?(e.consume(E),n=3,r.interrupt?t:w):_e(E)?(e.consume(E),i=String.fromCharCode(E),C):a(E)}function f(E){return E===45?(e.consume(E),n=2,m):E===91?(e.consume(E),n=5,o=0,g):_e(E)?(e.consume(E),n=4,r.interrupt?t:w):a(E)}function m(E){return E===45?(e.consume(E),r.interrupt?t:w):a(E)}function g(E){const Re="CDATA[";return E===Re.charCodeAt(o++)?(e.consume(E),o===Re.length?r.interrupt?t:B:g):a(E)}function b(E){return _e(E)?(e.consume(E),i=String.fromCharCode(E),C):a(E)}function C(E){if(E===null||E===47||E===62||ae(E)){const Re=E===47,pt=i.toLowerCase();return!Re&&!s&&ii.includes(pt)?(n=1,r.interrupt?t(E):B(E)):Jl.includes(i.toLowerCase())?(n=6,Re?(e.consume(E),T):r.interrupt?t(E):B(E)):(n=7,r.interrupt&&!r.parser.lazy[r.now().line]?a(E):s?I(E):O(E))}return E===45||pe(E)?(e.consume(E),i+=String.fromCharCode(E),C):a(E)}function T(E){return E===62?(e.consume(E),r.interrupt?t:B):a(E)}function I(E){return K(E)?(e.consume(E),I):x(E)}function O(E){return E===47?(e.consume(E),x):E===58||E===95||_e(E)?(e.consume(E),M):K(E)?(e.consume(E),O):x(E)}function M(E){return E===45||E===46||E===58||E===95||pe(E)?(e.consume(E),M):N(E)}function N(E){return E===61?(e.consume(E),d):K(E)?(e.consume(E),N):O(E)}function d(E){return E===null||E===60||E===61||E===62||E===96?a(E):E===34||E===39?(e.consume(E),u=E,D):K(E)?(e.consume(E),d):j(E)}function D(E){return E===u?(e.consume(E),u=null,Y):E===null||W(E)?a(E):(e.consume(E),D)}function j(E){return E===null||E===34||E===39||E===47||E===60||E===61||E===62||E===96||ae(E)?N(E):(e.consume(E),j)}function Y(E){return E===47||E===62||K(E)?O(E):a(E)}function x(E){return E===62?(e.consume(E),S):a(E)}function S(E){return E===null||W(E)?B(E):K(E)?(e.consume(E),S):a(E)}function B(E){return E===45&&n===2?(e.consume(E),$):E===60&&n===1?(e.consume(E),A):E===62&&n===4?(e.consume(E),Te):E===63&&n===3?(e.consume(E),w):E===93&&n===5?(e.consume(E),ie):W(E)&&(n===6||n===7)?(e.exit("htmlFlowData"),e.check(ef,Se,Q)(E)):E===null||W(E)?(e.exit("htmlFlowData"),Q(E)):(e.consume(E),B)}function Q(E){return e.check(tf,te,Se)(E)}function te(E){return e.enter("lineEnding"),e.consume(E),e.exit("lineEnding"),v}function v(E){return E===null||W(E)?Q(E):(e.enter("htmlFlowData"),B(E))}function $(E){return E===45?(e.consume(E),w):B(E)}function A(E){return E===47?(e.consume(E),i="",X):B(E)}function X(E){if(E===62){const Re=i.toLowerCase();return ii.includes(Re)?(e.consume(E),Te):B(E)}return _e(E)&&i.length<8?(e.consume(E),i+=String.fromCharCode(E),X):B(E)}function ie(E){return E===93?(e.consume(E),w):B(E)}function w(E){return E===62?(e.consume(E),Te):E===45&&n===2?(e.consume(E),w):B(E)}function Te(E){return E===null||W(E)?(e.exit("htmlFlowData"),Se(E)):(e.consume(E),Te)}function Se(E){return e.exit("htmlFlow"),t(E)}}function nf(e,t,a){const r=this;return n;function n(i){return W(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),s):a(i)}function s(i){return r.parser.lazy[r.now().line]?a(i):t(i)}}function sf(e,t,a){return r;function r(n){return e.enter("lineEnding"),e.consume(n),e.exit("lineEnding"),e.attempt(ma,t,a)}}const of={name:"htmlText",tokenize:cf};function cf(e,t,a){const r=this;let n,s,i;return o;function o(w){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(w),u}function u(w){return w===33?(e.consume(w),l):w===47?(e.consume(w),N):w===63?(e.consume(w),O):_e(w)?(e.consume(w),j):a(w)}function l(w){return w===45?(e.consume(w),p):w===91?(e.consume(w),s=0,g):_e(w)?(e.consume(w),I):a(w)}function p(w){return w===45?(e.consume(w),m):a(w)}function h(w){return w===null?a(w):w===45?(e.consume(w),f):W(w)?(i=h,A(w)):(e.consume(w),h)}function f(w){return w===45?(e.consume(w),m):h(w)}function m(w){return w===62?$(w):w===45?f(w):h(w)}function g(w){const Te="CDATA[";return w===Te.charCodeAt(s++)?(e.consume(w),s===Te.length?b:g):a(w)}function b(w){return w===null?a(w):w===93?(e.consume(w),C):W(w)?(i=b,A(w)):(e.consume(w),b)}function C(w){return w===93?(e.consume(w),T):b(w)}function T(w){return w===62?$(w):w===93?(e.consume(w),T):b(w)}function I(w){return w===null||w===62?$(w):W(w)?(i=I,A(w)):(e.consume(w),I)}function O(w){return w===null?a(w):w===63?(e.consume(w),M):W(w)?(i=O,A(w)):(e.consume(w),O)}function M(w){return w===62?$(w):O(w)}function N(w){return _e(w)?(e.consume(w),d):a(w)}function d(w){return w===45||pe(w)?(e.consume(w),d):D(w)}function D(w){return W(w)?(i=D,A(w)):K(w)?(e.consume(w),D):$(w)}function j(w){return w===45||pe(w)?(e.consume(w),j):w===47||w===62||ae(w)?Y(w):a(w)}function Y(w){return w===47?(e.consume(w),$):w===58||w===95||_e(w)?(e.consume(w),x):W(w)?(i=Y,A(w)):K(w)?(e.consume(w),Y):$(w)}function x(w){return w===45||w===46||w===58||w===95||pe(w)?(e.consume(w),x):S(w)}function S(w){return w===61?(e.consume(w),B):W(w)?(i=S,A(w)):K(w)?(e.consume(w),S):Y(w)}function B(w){return w===null||w===60||w===61||w===62||w===96?a(w):w===34||w===39?(e.consume(w),n=w,Q):W(w)?(i=B,A(w)):K(w)?(e.consume(w),B):(e.consume(w),te)}function Q(w){return w===n?(e.consume(w),n=void 0,v):w===null?a(w):W(w)?(i=Q,A(w)):(e.consume(w),Q)}function te(w){return w===null||w===34||w===39||w===60||w===61||w===96?a(w):w===47||w===62||ae(w)?Y(w):(e.consume(w),te)}function v(w){return w===47||w===62||ae(w)?Y(w):a(w)}function $(w){return w===62?(e.consume(w),e.exit("htmlTextData"),e.exit("htmlText"),t):a(w)}function A(w){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(w),e.exit("lineEnding"),X}function X(w){return K(w)?G(e,ie,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(w):ie(w)}function ie(w){return e.enter("htmlTextData"),i(w)}}const on={name:"labelEnd",tokenize:pf,resolveTo:df,resolveAll:hf},uf={tokenize:mf},lf={tokenize:_f},ff={tokenize:gf};function hf(e){let t=-1;for(;++t<e.length;){const a=e[t][1];(a.type==="labelImage"||a.type==="labelLink"||a.type==="labelEnd")&&(e.splice(t+1,a.type==="labelImage"?4:2),a.type="data",t++)}return e}function df(e,t){let a=e.length,r=0,n,s,i,o;for(;a--;)if(n=e[a][1],s){if(n.type==="link"||n.type==="labelLink"&&n._inactive)break;e[a][0]==="enter"&&n.type==="labelLink"&&(n._inactive=!0)}else if(i){if(e[a][0]==="enter"&&(n.type==="labelImage"||n.type==="labelLink")&&!n._balanced&&(s=a,n.type!=="labelLink")){r=2;break}}else n.type==="labelEnd"&&(i=a);const u={type:e[s][1].type==="labelLink"?"link":"image",start:Object.assign({},e[s][1].start),end:Object.assign({},e[e.length-1][1].end)},l={type:"label",start:Object.assign({},e[s][1].start),end:Object.assign({},e[i][1].end)},p={type:"labelText",start:Object.assign({},e[s+r+2][1].end),end:Object.assign({},e[i-2][1].start)};return o=[["enter",u,t],["enter",l,t]],o=Ne(o,e.slice(s+1,s+r+3)),o=Ne(o,[["enter",p,t]]),o=Ne(o,Ka(t.parser.constructs.insideSpan.null,e.slice(s+r+4,i-3),t)),o=Ne(o,[["exit",p,t],e[i-2],e[i-1],["exit",l,t]]),o=Ne(o,e.slice(i+1)),o=Ne(o,[["exit",u,t]]),Le(e,s,e.length,o),e}function pf(e,t,a){const r=this;let n=r.events.length,s,i;for(;n--;)if((r.events[n][1].type==="labelImage"||r.events[n][1].type==="labelLink")&&!r.events[n][1]._balanced){s=r.events[n][1];break}return o;function o(f){return s?s._inactive?h(f):(i=r.parser.defined.includes(Me(r.sliceSerialize({start:s.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(f),e.exit("labelMarker"),e.exit("labelEnd"),u):a(f)}function u(f){return f===40?e.attempt(uf,p,i?p:h)(f):f===91?e.attempt(lf,p,i?l:h)(f):i?p(f):h(f)}function l(f){return e.attempt(ff,p,h)(f)}function p(f){return t(f)}function h(f){return s._balanced=!0,a(f)}}function mf(e,t,a){return r;function r(h){return e.enter("resource"),e.enter("resourceMarker"),e.consume(h),e.exit("resourceMarker"),n}function n(h){return ae(h)?qe(e,s)(h):s(h)}function s(h){return h===41?p(h):Ns(e,i,o,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(h)}function i(h){return ae(h)?qe(e,u)(h):p(h)}function o(h){return a(h)}function u(h){return h===34||h===39||h===40?Os(e,l,a,"resourceTitle","resourceTitleMarker","resourceTitleString")(h):p(h)}function l(h){return ae(h)?qe(e,p)(h):p(h)}function p(h){return h===41?(e.enter("resourceMarker"),e.consume(h),e.exit("resourceMarker"),e.exit("resource"),t):a(h)}}function _f(e,t,a){const r=this;return n;function n(o){return Fs.call(r,e,s,i,"reference","referenceMarker","referenceString")(o)}function s(o){return r.parser.defined.includes(Me(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(o):a(o)}function i(o){return a(o)}}function gf(e,t,a){return r;function r(s){return e.enter("reference"),e.enter("referenceMarker"),e.consume(s),e.exit("referenceMarker"),n}function n(s){return s===93?(e.enter("referenceMarker"),e.consume(s),e.exit("referenceMarker"),e.exit("reference"),t):a(s)}}const yf={name:"labelStartImage",tokenize:kf,resolveAll:on.resolveAll};function kf(e,t,a){const r=this;return n;function n(o){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(o),e.exit("labelImageMarker"),s}function s(o){return o===91?(e.enter("labelMarker"),e.consume(o),e.exit("labelMarker"),e.exit("labelImage"),i):a(o)}function i(o){return o===94&&"_hiddenFootnoteSupport"in r.parser.constructs?a(o):t(o)}}const bf={name:"labelStartLink",tokenize:wf,resolveAll:on.resolveAll};function wf(e,t,a){const r=this;return n;function n(i){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(i),e.exit("labelMarker"),e.exit("labelLink"),s}function s(i){return i===94&&"_hiddenFootnoteSupport"in r.parser.constructs?a(i):t(i)}}const mr={name:"lineEnding",tokenize:Ef};function Ef(e,t){return a;function a(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),G(e,t,"linePrefix")}}const Sa={name:"thematicBreak",tokenize:Tf};function Tf(e,t,a){let r=0,n;return s;function s(l){return e.enter("thematicBreak"),i(l)}function i(l){return n=l,o(l)}function o(l){return l===n?(e.enter("thematicBreakSequence"),u(l)):r>=3&&(l===null||W(l))?(e.exit("thematicBreak"),t(l)):a(l)}function u(l){return l===n?(e.consume(l),r++,u):(e.exit("thematicBreakSequence"),K(l)?G(e,o,"whitespace")(l):o(l))}}const Ce={name:"list",tokenize:xf,continuation:{tokenize:Df},exit:Sf},Af={tokenize:If,partial:!0},Cf={tokenize:zf,partial:!0};function xf(e,t,a){const r=this,n=r.events[r.events.length-1];let s=n&&n[1].type==="linePrefix"?n[2].sliceSerialize(n[1],!0).length:0,i=0;return o;function o(m){const g=r.containerState.type||(m===42||m===43||m===45?"listUnordered":"listOrdered");if(g==="listUnordered"?!r.containerState.marker||m===r.containerState.marker:Or(m)){if(r.containerState.type||(r.containerState.type=g,e.enter(g,{_container:!0})),g==="listUnordered")return e.enter("listItemPrefix"),m===42||m===45?e.check(Sa,a,l)(m):l(m);if(!r.interrupt||m===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),u(m)}return a(m)}function u(m){return Or(m)&&++i<10?(e.consume(m),u):(!r.interrupt||i<2)&&(r.containerState.marker?m===r.containerState.marker:m===41||m===46)?(e.exit("listItemValue"),l(m)):a(m)}function l(m){return e.enter("listItemMarker"),e.consume(m),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||m,e.check(ma,r.interrupt?a:p,e.attempt(Af,f,h))}function p(m){return r.containerState.initialBlankLine=!0,s++,f(m)}function h(m){return K(m)?(e.enter("listItemPrefixWhitespace"),e.consume(m),e.exit("listItemPrefixWhitespace"),f):a(m)}function f(m){return r.containerState.size=s+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(m)}}function Df(e,t,a){const r=this;return r.containerState._closeFlow=void 0,e.check(ma,n,s);function n(o){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,G(e,t,"listItemIndent",r.containerState.size+1)(o)}function s(o){return r.containerState.furtherBlankLines||!K(o)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,i(o)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(Cf,t,i)(o))}function i(o){return r.containerState._closeFlow=!0,r.interrupt=void 0,G(e,e.attempt(Ce,t,a),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o)}}function zf(e,t,a){const r=this;return G(e,n,"listItemIndent",r.containerState.size+1);function n(s){const i=r.events[r.events.length-1];return i&&i[1].type==="listItemIndent"&&i[2].sliceSerialize(i[1],!0).length===r.containerState.size?t(s):a(s)}}function Sf(e){e.exit(this.containerState.type)}function If(e,t,a){const r=this;return G(e,n,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function n(s){const i=r.events[r.events.length-1];return!K(s)&&i&&i[1].type==="listItemPrefixWhitespace"?t(s):a(s)}}const si={name:"setextUnderline",tokenize:Ff,resolveTo:Nf};function Nf(e,t){let a=e.length,r,n,s;for(;a--;)if(e[a][0]==="enter"){if(e[a][1].type==="content"){r=a;break}e[a][1].type==="paragraph"&&(n=a)}else e[a][1].type==="content"&&e.splice(a,1),!s&&e[a][1].type==="definition"&&(s=a);const i={type:"setextHeading",start:Object.assign({},e[n][1].start),end:Object.assign({},e[e.length-1][1].end)};return e[n][1].type="setextHeadingText",s?(e.splice(n,0,["enter",i,t]),e.splice(s+1,0,["exit",e[r][1],t]),e[r][1].end=Object.assign({},e[s][1].end)):e[r][1]=i,e.push(["exit",i,t]),e}function Ff(e,t,a){const r=this;let n;return s;function s(l){let p=r.events.length,h;for(;p--;)if(r.events[p][1].type!=="lineEnding"&&r.events[p][1].type!=="linePrefix"&&r.events[p][1].type!=="content"){h=r.events[p][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||h)?(e.enter("setextHeadingLine"),n=l,i(l)):a(l)}function i(l){return e.enter("setextHeadingLineSequence"),o(l)}function o(l){return l===n?(e.consume(l),o):(e.exit("setextHeadingLineSequence"),K(l)?G(e,u,"lineSuffix")(l):u(l))}function u(l){return l===null||W(l)?(e.exit("setextHeadingLine"),t(l)):a(l)}}const Of={tokenize:Lf};function Lf(e){const t=this,a=e.attempt(ma,r,e.attempt(this.parser.constructs.flowInitial,n,G(e,e.attempt(this.parser.constructs.flow,n,e.attempt(Bl,n)),"linePrefix")));return a;function r(s){if(s===null){e.consume(s);return}return e.enter("lineEndingBlank"),e.consume(s),e.exit("lineEndingBlank"),t.currentConstruct=void 0,a}function n(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),t.currentConstruct=void 0,a}}const Rf={resolveAll:Rs()},vf=Ls("string"),Pf=Ls("text");function Ls(e){return{tokenize:t,resolveAll:Rs(e==="text"?Bf:void 0)};function t(a){const r=this,n=this.parser.constructs[e],s=a.attempt(n,i,o);return i;function i(p){return l(p)?s(p):o(p)}function o(p){if(p===null){a.consume(p);return}return a.enter("data"),a.consume(p),u}function u(p){return l(p)?(a.exit("data"),s(p)):(a.consume(p),u)}function l(p){if(p===null)return!0;const h=n[p];let f=-1;if(h)for(;++f<h.length;){const m=h[f];if(!m.previous||m.previous.call(r,r.previous))return!0}return!1}}}function Rs(e){return t;function t(a,r){let n=-1,s;for(;++n<=a.length;)s===void 0?a[n]&&a[n][1].type==="data"&&(s=n,n++):(!a[n]||a[n][1].type!=="data")&&(n!==s+2&&(a[s][1].end=a[n-1][1].end,a.splice(s+2,n-s-2),n=s+2),s=void 0);return e?e(a,r):a}}function Bf(e,t){let a=0;for(;++a<=e.length;)if((a===e.length||e[a][1].type==="lineEnding")&&e[a-1][1].type==="data"){const r=e[a-1][1],n=t.sliceStream(r);let s=n.length,i=-1,o=0,u;for(;s--;){const l=n[s];if(typeof l=="string"){for(i=l.length;l.charCodeAt(i-1)===32;)o++,i--;if(i)break;i=-1}else if(l===-2)u=!0,o++;else if(l!==-1){s++;break}}if(o){const l={type:a===e.length||u||o<2?"lineSuffix":"hardBreakTrailing",start:{line:r.end.line,column:r.end.column-o,offset:r.end.offset-o,_index:r.start._index+s,_bufferIndex:s?i:r.start._bufferIndex+i},end:Object.assign({},r.end)};r.end=Object.assign({},l.start),r.start.offset===r.end.offset?Object.assign(r,l):(e.splice(a,0,["enter",l,t],["exit",l,t]),a+=2)}a++}return e}function Mf(e,t,a){let r=Object.assign(a?Object.assign({},a):{line:1,column:1,offset:0},{_index:0,_bufferIndex:-1});const n={},s=[];let i=[],o=[];const u={consume:I,enter:O,exit:M,attempt:D(N),check:D(d),interrupt:D(d,{interrupt:!0})},l={previous:null,code:null,containerState:{},events:[],parser:e,sliceStream:m,sliceSerialize:f,now:g,defineSkip:b,write:h};let p=t.tokenize.call(l,u);return t.resolveAll&&s.push(t),l;function h(S){return i=Ne(i,S),C(),i[i.length-1]!==null?[]:(j(t,0),l.events=Ka(s,l.events,l),l.events)}function f(S,B){return Hf(m(S),B)}function m(S){return Uf(i,S)}function g(){const{line:S,column:B,offset:Q,_index:te,_bufferIndex:v}=r;return{line:S,column:B,offset:Q,_index:te,_bufferIndex:v}}function b(S){n[S.line]=S.column,x()}function C(){let S;for(;r._index<i.length;){const B=i[r._index];if(typeof B=="string")for(S=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===S&&r._bufferIndex<B.length;)T(B.charCodeAt(r._bufferIndex));else T(B)}}function T(S){p=p(S)}function I(S){W(S)?(r.line++,r.column=1,r.offset+=S===-3?2:1,x()):S!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===i[r._index].length&&(r._bufferIndex=-1,r._index++)),l.previous=S}function O(S,B){const Q=B||{};return Q.type=S,Q.start=g(),l.events.push(["enter",Q,l]),o.push(Q),Q}function M(S){const B=o.pop();return B.end=g(),l.events.push(["exit",B,l]),B}function N(S,B){j(S,B.from)}function d(S,B){B.restore()}function D(S,B){return Q;function Q(te,v,$){let A,X,ie,w;return Array.isArray(te)?Se(te):"tokenize"in te?Se([te]):Te(te);function Te(ye){return qt;function qt(rt){const At=rt!==null&&ye[rt],Ct=rt!==null&&ye.null,ya=[...Array.isArray(At)?At:At?[At]:[],...Array.isArray(Ct)?Ct:Ct?[Ct]:[]];return Se(ya)(rt)}}function Se(ye){return A=ye,X=0,ye.length===0?$:E(ye[X])}function E(ye){return qt;function qt(rt){return w=Y(),ie=ye,ye.partial||(l.currentConstruct=ye),ye.name&&l.parser.constructs.disable.null.includes(ye.name)?pt():ye.tokenize.call(B?Object.assign(Object.create(l),B):l,u,Re,pt)(rt)}}function Re(ye){return S(ie,w),v}function pt(ye){return w.restore(),++X<A.length?E(A[X]):$}}}function j(S,B){S.resolveAll&&!s.includes(S)&&s.push(S),S.resolve&&Le(l.events,B,l.events.length-B,S.resolve(l.events.slice(B),l)),S.resolveTo&&(l.events=S.resolveTo(l.events,l))}function Y(){const S=g(),B=l.previous,Q=l.currentConstruct,te=l.events.length,v=Array.from(o);return{restore:$,from:te};function $(){r=S,l.previous=B,l.currentConstruct=Q,l.events.length=te,o=v,x()}}function x(){r.line in n&&r.column<2&&(r.column=n[r.line],r.offset+=n[r.line]-1)}}function Uf(e,t){const a=t.start._index,r=t.start._bufferIndex,n=t.end._index,s=t.end._bufferIndex;let i;if(a===n)i=[e[a].slice(r,s)];else{if(i=e.slice(a,n),r>-1){const o=i[0];typeof o=="string"?i[0]=o.slice(r):i.shift()}s>0&&i.push(e[n].slice(0,s))}return i}function Hf(e,t){let a=-1;const r=[];let n;for(;++a<e.length;){const s=e[a];let i;if(typeof s=="string")i=s;else switch(s){case-5:{i="\r";break}case-4:{i=` +`;break}case-3:{i=`\r +`;break}case-2:{i=t?" ":" ";break}case-1:{if(!t&&n)continue;i=" ";break}default:i=String.fromCharCode(s)}n=s===-2,r.push(i)}return r.join("")}const jf={42:Ce,43:Ce,45:Ce,48:Ce,49:Ce,50:Ce,51:Ce,52:Ce,53:Ce,54:Ce,55:Ce,56:Ce,57:Ce,62:Ds},qf={91:ql},Yf={[-2]:pr,[-1]:pr,32:pr},$f={35:Ql,42:Sa,45:[si,Sa],60:Zl,61:si,95:Sa,96:Rr,126:Rr},Wf={38:Ss,92:zs},Vf={[-5]:mr,[-4]:mr,[-3]:mr,33:yf,38:Ss,42:Lr,60:[kl,of],91:bf,92:[Vl,zs],93:on,95:Lr,96:Fl},Gf={null:[Lr,Rf]},Qf={null:[42,95]},Kf={null:[]},Xf=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:Qf,contentInitial:qf,disable:Kf,document:jf,flow:$f,flowInitial:Yf,insideSpan:Gf,string:Wf,text:Vf},Symbol.toStringTag,{value:"Module"}));function Jf(e){const a=Cs([Xf,...(e||{}).extensions||[]]),r={defined:[],lazy:{},constructs:a,content:n(hl),document:n(pl),flow:n(Of),string:n(vf),text:n(Pf)};return r;function n(s){return i;function i(o){return Mf(r,s,o)}}}function Zf(e){for(;!Is(e););return e}const oi=/[\0\t\n\r]/g;function eh(){let e=1,t="",a=!0,r;return n;function n(s,i,o){const u=[];let l,p,h,f,m;for(s=t+(typeof s=="string"?s.toString():new TextDecoder(i||void 0).decode(s)),h=0,t="",a&&(s.charCodeAt(0)===65279&&h++,a=void 0);h<s.length;){if(oi.lastIndex=h,l=oi.exec(s),f=l&&l.index!==void 0?l.index:s.length,m=s.charCodeAt(f),!l){t=s.slice(h);break}if(m===10&&h===f&&r)u.push(-3),r=void 0;else switch(r&&(u.push(-5),r=void 0),h<f&&(u.push(s.slice(h,f)),e+=f-h),m){case 0:{u.push(65533),e++;break}case 9:{for(p=Math.ceil(e/4)*4,u.push(-2);e++<p;)u.push(-1);break}case 10:{u.push(-4),e=1;break}default:r=!0,e=1}h=f+1}return o&&(r&&u.push(-5),t&&u.push(t),u.push(null)),u}}const th=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function ah(e){return e.replace(th,rh)}function rh(e,t,a){if(t)return t;if(a.charCodeAt(0)===35){const n=a.charCodeAt(1),s=n===120||n===88;return xs(a.slice(s?2:1),s?16:10)}return oa(a)||e}const vs={}.hasOwnProperty;function nh(e,t,a){return typeof t!="string"&&(a=t,t=void 0),ih(a)(Zf(Jf(a).document().write(eh()(e,t,!0))))}function ih(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:s(Rn),autolinkProtocol:Y,autolinkEmail:Y,atxHeading:s(Fn),blockQuote:s(Ct),characterEscape:Y,characterReference:Y,codeFenced:s(ya),codeFencedFenceInfo:i,codeFencedFenceMeta:i,codeIndented:s(ya,i),codeText:s(cu,i),codeTextData:Y,data:Y,codeFlowValue:Y,definition:s(uu),definitionDestinationString:i,definitionLabelString:i,definitionTitleString:i,emphasis:s(lu),hardBreakEscape:s(On),hardBreakTrailing:s(On),htmlFlow:s(Ln,i),htmlFlowData:Y,htmlText:s(Ln,i),htmlTextData:Y,image:s(fu),label:i,link:s(Rn),listItem:s(hu),listItemValue:f,listOrdered:s(vn,h),listUnordered:s(vn),paragraph:s(du),reference:E,referenceString:i,resourceDestinationString:i,resourceTitleString:i,setextHeading:s(Fn),strong:s(pu),thematicBreak:s(_u)},exit:{atxHeading:u(),atxHeadingSequence:N,autolink:u(),autolinkEmail:At,autolinkProtocol:rt,blockQuote:u(),characterEscapeValue:x,characterReferenceMarkerHexadecimal:pt,characterReferenceMarkerNumeric:pt,characterReferenceValue:ye,characterReference:qt,codeFenced:u(C),codeFencedFence:b,codeFencedFenceInfo:m,codeFencedFenceMeta:g,codeFlowValue:x,codeIndented:u(T),codeText:u(v),codeTextData:x,data:x,definition:u(),definitionDestinationString:M,definitionLabelString:I,definitionTitleString:O,emphasis:u(),hardBreakEscape:u(B),hardBreakTrailing:u(B),htmlFlow:u(Q),htmlFlowData:x,htmlText:u(te),htmlTextData:x,image:u(A),label:ie,labelText:X,lineEnding:S,link:u($),listItem:u(),listOrdered:u(),listUnordered:u(),paragraph:u(),referenceString:Re,resourceDestinationString:w,resourceTitleString:Te,resource:Se,setextHeading:u(j),setextHeadingLineSequence:D,setextHeadingText:d,strong:u(),thematicBreak:u()}};Ps(t,(e||{}).mdastExtensions||[]);const a={};return r;function r(L){let H={type:"root",children:[]};const J={stack:[H],tokenStack:[],config:t,enter:o,exit:l,buffer:i,resume:p,data:a},re=[];let oe=-1;for(;++oe<L.length;)if(L[oe][1].type==="listOrdered"||L[oe][1].type==="listUnordered")if(L[oe][0]==="enter")re.push(oe);else{const ve=re.pop();oe=n(L,ve,oe)}for(oe=-1;++oe<L.length;){const ve=t[L[oe][0]];vs.call(ve,L[oe][1].type)&&ve[L[oe][1].type].call(Object.assign({sliceSerialize:L[oe][2].sliceSerialize},J),L[oe][1])}if(J.tokenStack.length>0){const ve=J.tokenStack[J.tokenStack.length-1];(ve[1]||ci).call(J,void 0,ve[0])}for(H.position={start:nt(L.length>0?L[0][1].start:{line:1,column:1,offset:0}),end:nt(L.length>0?L[L.length-2][1].end:{line:1,column:1,offset:0})},oe=-1;++oe<t.transforms.length;)H=t.transforms[oe](H)||H;return H}function n(L,H,J){let re=H-1,oe=-1,ve=!1,mt,Ve,Yt,$t;for(;++re<=J;){const ze=L[re];switch(ze[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{ze[0]==="enter"?oe++:oe--,$t=void 0;break}case"lineEndingBlank":{ze[0]==="enter"&&(mt&&!$t&&!oe&&!Yt&&(Yt=re),$t=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:$t=void 0}if(!oe&&ze[0]==="enter"&&ze[1].type==="listItemPrefix"||oe===-1&&ze[0]==="exit"&&(ze[1].type==="listUnordered"||ze[1].type==="listOrdered")){if(mt){let xt=re;for(Ve=void 0;xt--;){const Ge=L[xt];if(Ge[1].type==="lineEnding"||Ge[1].type==="lineEndingBlank"){if(Ge[0]==="exit")continue;Ve&&(L[Ve][1].type="lineEndingBlank",ve=!0),Ge[1].type="lineEnding",Ve=xt}else if(!(Ge[1].type==="linePrefix"||Ge[1].type==="blockQuotePrefix"||Ge[1].type==="blockQuotePrefixWhitespace"||Ge[1].type==="blockQuoteMarker"||Ge[1].type==="listItemIndent"))break}Yt&&(!Ve||Yt<Ve)&&(mt._spread=!0),mt.end=Object.assign({},Ve?L[Ve][1].start:ze[1].end),L.splice(Ve||re,0,["exit",mt,ze[2]]),re++,J++}if(ze[1].type==="listItemPrefix"){const xt={type:"listItem",_spread:!1,start:Object.assign({},ze[1].start),end:void 0};mt=xt,L.splice(re,0,["enter",xt,ze[2]]),re++,J++,Yt=void 0,$t=!0}}}return L[H][1]._spread=ve,J}function s(L,H){return J;function J(re){o.call(this,L(re),re),H&&H.call(this,re)}}function i(){this.stack.push({type:"fragment",children:[]})}function o(L,H,J){this.stack[this.stack.length-1].children.push(L),this.stack.push(L),this.tokenStack.push([H,J]),L.position={start:nt(H.start),end:void 0}}function u(L){return H;function H(J){L&&L.call(this,J),l.call(this,J)}}function l(L,H){const J=this.stack.pop(),re=this.tokenStack.pop();if(re)re[0].type!==L.type&&(H?H.call(this,L,re[0]):(re[1]||ci).call(this,L,re[0]));else throw new Error("Cannot close `"+L.type+"` ("+Zt({start:L.start,end:L.end})+"): it’s not open");J.position.end=nt(L.end)}function p(){return sn(this.stack.pop())}function h(){this.data.expectingFirstListItemValue=!0}function f(L){if(this.data.expectingFirstListItemValue){const H=this.stack[this.stack.length-2];H.start=Number.parseInt(this.sliceSerialize(L),10),this.data.expectingFirstListItemValue=void 0}}function m(){const L=this.resume(),H=this.stack[this.stack.length-1];H.lang=L}function g(){const L=this.resume(),H=this.stack[this.stack.length-1];H.meta=L}function b(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function C(){const L=this.resume(),H=this.stack[this.stack.length-1];H.value=L.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function T(){const L=this.resume(),H=this.stack[this.stack.length-1];H.value=L.replace(/(\r?\n|\r)$/g,"")}function I(L){const H=this.resume(),J=this.stack[this.stack.length-1];J.label=H,J.identifier=Me(this.sliceSerialize(L)).toLowerCase()}function O(){const L=this.resume(),H=this.stack[this.stack.length-1];H.title=L}function M(){const L=this.resume(),H=this.stack[this.stack.length-1];H.url=L}function N(L){const H=this.stack[this.stack.length-1];if(!H.depth){const J=this.sliceSerialize(L).length;H.depth=J}}function d(){this.data.setextHeadingSlurpLineEnding=!0}function D(L){const H=this.stack[this.stack.length-1];H.depth=this.sliceSerialize(L).codePointAt(0)===61?1:2}function j(){this.data.setextHeadingSlurpLineEnding=void 0}function Y(L){const J=this.stack[this.stack.length-1].children;let re=J[J.length-1];(!re||re.type!=="text")&&(re=mu(),re.position={start:nt(L.start),end:void 0},J.push(re)),this.stack.push(re)}function x(L){const H=this.stack.pop();H.value+=this.sliceSerialize(L),H.position.end=nt(L.end)}function S(L){const H=this.stack[this.stack.length-1];if(this.data.atHardBreak){const J=H.children[H.children.length-1];J.position.end=nt(L.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(H.type)&&(Y.call(this,L),x.call(this,L))}function B(){this.data.atHardBreak=!0}function Q(){const L=this.resume(),H=this.stack[this.stack.length-1];H.value=L}function te(){const L=this.resume(),H=this.stack[this.stack.length-1];H.value=L}function v(){const L=this.resume(),H=this.stack[this.stack.length-1];H.value=L}function $(){const L=this.stack[this.stack.length-1];if(this.data.inReference){const H=this.data.referenceType||"shortcut";L.type+="Reference",L.referenceType=H,delete L.url,delete L.title}else delete L.identifier,delete L.label;this.data.referenceType=void 0}function A(){const L=this.stack[this.stack.length-1];if(this.data.inReference){const H=this.data.referenceType||"shortcut";L.type+="Reference",L.referenceType=H,delete L.url,delete L.title}else delete L.identifier,delete L.label;this.data.referenceType=void 0}function X(L){const H=this.sliceSerialize(L),J=this.stack[this.stack.length-2];J.label=ah(H),J.identifier=Me(H).toLowerCase()}function ie(){const L=this.stack[this.stack.length-1],H=this.resume(),J=this.stack[this.stack.length-1];if(this.data.inReference=!0,J.type==="link"){const re=L.children;J.children=re}else J.alt=H}function w(){const L=this.resume(),H=this.stack[this.stack.length-1];H.url=L}function Te(){const L=this.resume(),H=this.stack[this.stack.length-1];H.title=L}function Se(){this.data.inReference=void 0}function E(){this.data.referenceType="collapsed"}function Re(L){const H=this.resume(),J=this.stack[this.stack.length-1];J.label=H,J.identifier=Me(this.sliceSerialize(L)).toLowerCase(),this.data.referenceType="full"}function pt(L){this.data.characterReferenceType=L.type}function ye(L){const H=this.sliceSerialize(L),J=this.data.characterReferenceType;let re;J?(re=xs(H,J==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):re=oa(H);const oe=this.stack[this.stack.length-1];oe.value+=re}function qt(L){const H=this.stack.pop();H.position.end=nt(L.end)}function rt(L){x.call(this,L);const H=this.stack[this.stack.length-1];H.url=this.sliceSerialize(L)}function At(L){x.call(this,L);const H=this.stack[this.stack.length-1];H.url="mailto:"+this.sliceSerialize(L)}function Ct(){return{type:"blockquote",children:[]}}function ya(){return{type:"code",lang:null,meta:null,value:""}}function cu(){return{type:"inlineCode",value:""}}function uu(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function lu(){return{type:"emphasis",children:[]}}function Fn(){return{type:"heading",depth:0,children:[]}}function On(){return{type:"break"}}function Ln(){return{type:"html",value:""}}function fu(){return{type:"image",title:null,url:"",alt:null}}function Rn(){return{type:"link",title:null,url:"",children:[]}}function vn(L){return{type:"list",ordered:L.type==="listOrdered",start:null,spread:L._spread,children:[]}}function hu(L){return{type:"listItem",spread:L._spread,checked:null,children:[]}}function du(){return{type:"paragraph",children:[]}}function pu(){return{type:"strong",children:[]}}function mu(){return{type:"text",value:""}}function _u(){return{type:"thematicBreak"}}}function nt(e){return{line:e.line,column:e.column,offset:e.offset}}function Ps(e,t){let a=-1;for(;++a<t.length;){const r=t[a];Array.isArray(r)?Ps(e,r):sh(e,r)}}function sh(e,t){let a;for(a in t)if(vs.call(t,a))switch(a){case"canContainEols":{const r=t[a];r&&e[a].push(...r);break}case"transforms":{const r=t[a];r&&e[a].push(...r);break}case"enter":case"exit":{const r=t[a];r&&Object.assign(e[a],r);break}}}function ci(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+Zt({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+Zt({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+Zt({start:t.start,end:t.end})+") is still open")}function oh(e){const t=this;t.parser=a;function a(r){return nh(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function ch(e,t){const a={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,a),e.applyData(t,a)}function uh(e,t){const a={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,a),[e.applyData(t,a),{type:"text",value:` +`}]}function lh(e,t){const a=t.value?t.value+` +`:"",r={};t.lang&&(r.className=["language-"+t.lang]);let n={type:"element",tagName:"code",properties:r,children:[{type:"text",value:a}]};return t.meta&&(n.data={meta:t.meta}),e.patch(t,n),n=e.applyData(t,n),n={type:"element",tagName:"pre",properties:{},children:[n]},e.patch(t,n),n}function fh(e,t){const a={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function hh(e,t){const a={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function dh(e,t){const a=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),n=dt(r.toLowerCase()),s=e.footnoteOrder.indexOf(r);let i,o=e.footnoteCounts.get(r);o===void 0?(o=0,e.footnoteOrder.push(r),i=e.footnoteOrder.length):i=s+1,o+=1,e.footnoteCounts.set(r,o);const u={type:"element",tagName:"a",properties:{href:"#"+a+"fn-"+n,id:a+"fnref-"+n+(o>1?"-"+o:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(i)}]};e.patch(t,u);const l={type:"element",tagName:"sup",properties:{},children:[u]};return e.patch(t,l),e.applyData(t,l)}function ph(e,t){const a={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function mh(e,t){if(e.options.allowDangerousHtml){const a={type:"raw",value:t.value};return e.patch(t,a),e.applyData(t,a)}}function Bs(e,t){const a=t.referenceType;let r="]";if(a==="collapsed"?r+="[]":a==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const n=e.all(t),s=n[0];s&&s.type==="text"?s.value="["+s.value:n.unshift({type:"text",value:"["});const i=n[n.length-1];return i&&i.type==="text"?i.value+=r:n.push({type:"text",value:r}),n}function _h(e,t){const a=String(t.identifier).toUpperCase(),r=e.definitionById.get(a);if(!r)return Bs(e,t);const n={src:dt(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(n.title=r.title);const s={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,s),e.applyData(t,s)}function gh(e,t){const a={src:dt(t.url)};t.alt!==null&&t.alt!==void 0&&(a.alt=t.alt),t.title!==null&&t.title!==void 0&&(a.title=t.title);const r={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,r),e.applyData(t,r)}function yh(e,t){const a={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,a);const r={type:"element",tagName:"code",properties:{},children:[a]};return e.patch(t,r),e.applyData(t,r)}function kh(e,t){const a=String(t.identifier).toUpperCase(),r=e.definitionById.get(a);if(!r)return Bs(e,t);const n={href:dt(r.url||"")};r.title!==null&&r.title!==void 0&&(n.title=r.title);const s={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,s),e.applyData(t,s)}function bh(e,t){const a={href:dt(t.url)};t.title!==null&&t.title!==void 0&&(a.title=t.title);const r={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function wh(e,t,a){const r=e.all(t),n=a?Eh(a):Ms(t),s={},i=[];if(typeof t.checked=="boolean"){const p=r[0];let h;p&&p.type==="element"&&p.tagName==="p"?h=p:(h={type:"element",tagName:"p",properties:{},children:[]},r.unshift(h)),h.children.length>0&&h.children.unshift({type:"text",value:" "}),h.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),s.className=["task-list-item"]}let o=-1;for(;++o<r.length;){const p=r[o];(n||o!==0||p.type!=="element"||p.tagName!=="p")&&i.push({type:"text",value:` +`}),p.type==="element"&&p.tagName==="p"&&!n?i.push(...p.children):i.push(p)}const u=r[r.length-1];u&&(n||u.type!=="element"||u.tagName!=="p")&&i.push({type:"text",value:` +`});const l={type:"element",tagName:"li",properties:s,children:i};return e.patch(t,l),e.applyData(t,l)}function Eh(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const a=e.children;let r=-1;for(;!t&&++r<a.length;)t=Ms(a[r])}return t}function Ms(e){const t=e.spread;return t??e.children.length>1}function Th(e,t){const a={},r=e.all(t);let n=-1;for(typeof t.start=="number"&&t.start!==1&&(a.start=t.start);++n<r.length;){const i=r[n];if(i.type==="element"&&i.tagName==="li"&&i.properties&&Array.isArray(i.properties.className)&&i.properties.className.includes("task-list-item")){a.className=["contains-task-list"];break}}const s={type:"element",tagName:t.ordered?"ol":"ul",properties:a,children:e.wrap(r,!0)};return e.patch(t,s),e.applyData(t,s)}function Ah(e,t){const a={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function Ch(e,t){const a={type:"root",children:e.wrap(e.all(t))};return e.patch(t,a),e.applyData(t,a)}function xh(e,t){const a={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}const Xa=Us("end"),tt=Us("start");function Us(e){return t;function t(a){const r=a&&a.position&&a.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function Dh(e){const t=tt(e),a=Xa(e);if(t&&a)return{start:t,end:a}}function zh(e,t){const a=e.all(t),r=a.shift(),n=[];if(r){const i={type:"element",tagName:"thead",properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],i),n.push(i)}if(a.length>0){const i={type:"element",tagName:"tbody",properties:{},children:e.wrap(a,!0)},o=tt(t.children[1]),u=Xa(t.children[t.children.length-1]);o&&u&&(i.position={start:o,end:u}),n.push(i)}const s={type:"element",tagName:"table",properties:{},children:e.wrap(n,!0)};return e.patch(t,s),e.applyData(t,s)}function Sh(e,t,a){const r=a?a.children:void 0,s=(r?r.indexOf(t):1)===0?"th":"td",i=a&&a.type==="table"?a.align:void 0,o=i?i.length:t.children.length;let u=-1;const l=[];for(;++u<o;){const h=t.children[u],f={},m=i?i[u]:void 0;m&&(f.align=m);let g={type:"element",tagName:s,properties:f,children:[]};h&&(g.children=e.all(h),e.patch(h,g),g=e.applyData(h,g)),l.push(g)}const p={type:"element",tagName:"tr",properties:{},children:e.wrap(l,!0)};return e.patch(t,p),e.applyData(t,p)}function Ih(e,t){const a={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}const ui=9,li=32;function Nh(e){const t=String(e),a=/\r?\n|\r/g;let r=a.exec(t),n=0;const s=[];for(;r;)s.push(fi(t.slice(n,r.index),n>0,!0),r[0]),n=r.index+r[0].length,r=a.exec(t);return s.push(fi(t.slice(n),n>0,!1)),s.join("")}function fi(e,t,a){let r=0,n=e.length;if(t){let s=e.codePointAt(r);for(;s===ui||s===li;)r++,s=e.codePointAt(r)}if(a){let s=e.codePointAt(n-1);for(;s===ui||s===li;)n--,s=e.codePointAt(n-1)}return n>r?e.slice(r,n):""}function Fh(e,t){const a={type:"text",value:Nh(String(t.value))};return e.patch(t,a),e.applyData(t,a)}function Oh(e,t){const a={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,a),e.applyData(t,a)}const Lh={blockquote:ch,break:uh,code:lh,delete:fh,emphasis:hh,footnoteReference:dh,heading:ph,html:mh,imageReference:_h,image:gh,inlineCode:yh,linkReference:kh,link:bh,listItem:wh,list:Th,paragraph:Ah,root:Ch,strong:xh,table:zh,tableCell:Ih,tableRow:Sh,text:Fh,thematicBreak:Oh,toml:Ea,yaml:Ea,definition:Ea,footnoteDefinition:Ea};function Ea(){}const Hs=-1,Ja=0,La=1,Ra=2,cn=3,un=4,ln=5,fn=6,js=7,qs=8,hi=typeof self=="object"?self:globalThis,Rh=(e,t)=>{const a=(n,s)=>(e.set(s,n),n),r=n=>{if(e.has(n))return e.get(n);const[s,i]=t[n];switch(s){case Ja:case Hs:return a(i,n);case La:{const o=a([],n);for(const u of i)o.push(r(u));return o}case Ra:{const o=a({},n);for(const[u,l]of i)o[r(u)]=r(l);return o}case cn:return a(new Date(i),n);case un:{const{source:o,flags:u}=i;return a(new RegExp(o,u),n)}case ln:{const o=a(new Map,n);for(const[u,l]of i)o.set(r(u),r(l));return o}case fn:{const o=a(new Set,n);for(const u of i)o.add(r(u));return o}case js:{const{name:o,message:u}=i;return a(new hi[o](u),n)}case qs:return a(BigInt(i),n);case"BigInt":return a(Object(BigInt(i)),n)}return a(new hi[s](i),n)};return r},di=e=>Rh(new Map,e)(0),Dt="",{toString:vh}={},{keys:Ph}=Object,Vt=e=>{const t=typeof e;if(t!=="object"||!e)return[Ja,t];const a=vh.call(e).slice(8,-1);switch(a){case"Array":return[La,Dt];case"Object":return[Ra,Dt];case"Date":return[cn,Dt];case"RegExp":return[un,Dt];case"Map":return[ln,Dt];case"Set":return[fn,Dt]}return a.includes("Array")?[La,a]:a.includes("Error")?[js,a]:[Ra,a]},Ta=([e,t])=>e===Ja&&(t==="function"||t==="symbol"),Bh=(e,t,a,r)=>{const n=(i,o)=>{const u=r.push(i)-1;return a.set(o,u),u},s=i=>{if(a.has(i))return a.get(i);let[o,u]=Vt(i);switch(o){case Ja:{let p=i;switch(u){case"bigint":o=qs,p=i.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+u);p=null;break;case"undefined":return n([Hs],i)}return n([o,p],i)}case La:{if(u)return n([u,[...i]],i);const p=[],h=n([o,p],i);for(const f of i)p.push(s(f));return h}case Ra:{if(u)switch(u){case"BigInt":return n([u,i.toString()],i);case"Boolean":case"Number":case"String":return n([u,i.valueOf()],i)}if(t&&"toJSON"in i)return s(i.toJSON());const p=[],h=n([o,p],i);for(const f of Ph(i))(e||!Ta(Vt(i[f])))&&p.push([s(f),s(i[f])]);return h}case cn:return n([o,i.toISOString()],i);case un:{const{source:p,flags:h}=i;return n([o,{source:p,flags:h}],i)}case ln:{const p=[],h=n([o,p],i);for(const[f,m]of i)(e||!(Ta(Vt(f))||Ta(Vt(m))))&&p.push([s(f),s(m)]);return h}case fn:{const p=[],h=n([o,p],i);for(const f of i)(e||!Ta(Vt(f)))&&p.push(s(f));return h}}const{message:l}=i;return n([o,{name:u,message:l}],i)};return s},pi=(e,{json:t,lossy:a}={})=>{const r=[];return Bh(!(t||a),!!t,new Map,r)(e),r},Je=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?di(pi(e,t)):structuredClone(e):(e,t)=>di(pi(e,t));function Mh(e,t){const a=[{type:"text",value:"↩"}];return t>1&&a.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),a}function Uh(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function Hh(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",a=e.options.footnoteBackContent||Mh,r=e.options.footnoteBackLabel||Uh,n=e.options.footnoteLabel||"Footnotes",s=e.options.footnoteLabelTagName||"h2",i=e.options.footnoteLabelProperties||{className:["sr-only"]},o=[];let u=-1;for(;++u<e.footnoteOrder.length;){const l=e.footnoteById.get(e.footnoteOrder[u]);if(!l)continue;const p=e.all(l),h=String(l.identifier).toUpperCase(),f=dt(h.toLowerCase());let m=0;const g=[],b=e.footnoteCounts.get(h);for(;b!==void 0&&++m<=b;){g.length>0&&g.push({type:"text",value:" "});let I=typeof a=="string"?a:a(u,m);typeof I=="string"&&(I={type:"text",value:I}),g.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+f+(m>1?"-"+m:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(u,m),className:["data-footnote-backref"]},children:Array.isArray(I)?I:[I]})}const C=p[p.length-1];if(C&&C.type==="element"&&C.tagName==="p"){const I=C.children[C.children.length-1];I&&I.type==="text"?I.value+=" ":C.children.push({type:"text",value:" "}),C.children.push(...g)}else p.push(...g);const T={type:"element",tagName:"li",properties:{id:t+"fn-"+f},children:e.wrap(p,!0)};e.patch(l,T),o.push(T)}if(o.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:s,properties:{...Je(i),id:"footnote-label"},children:[{type:"text",value:n}]},{type:"text",value:` +`},{type:"element",tagName:"ol",properties:{},children:e.wrap(o,!0)},{type:"text",value:` +`}]}}const Za=function(e){if(e==null)return $h;if(typeof e=="function")return er(e);if(typeof e=="object")return Array.isArray(e)?jh(e):qh(e);if(typeof e=="string")return Yh(e);throw new Error("Expected function, string, or object as test")};function jh(e){const t=[];let a=-1;for(;++a<e.length;)t[a]=Za(e[a]);return er(r);function r(...n){let s=-1;for(;++s<t.length;)if(t[s].apply(this,n))return!0;return!1}}function qh(e){const t=e;return er(a);function a(r){const n=r;let s;for(s in e)if(n[s]!==t[s])return!1;return!0}}function Yh(e){return er(t);function t(a){return a&&a.type===e}}function er(e){return t;function t(a,r,n){return!!(Wh(a)&&e.call(this,a,typeof r=="number"?r:void 0,n||void 0))}}function $h(){return!0}function Wh(e){return e!==null&&typeof e=="object"&&"type"in e}const Ys=[],Vh=!0,vr=!1,Gh="skip";function $s(e,t,a,r){let n;typeof t=="function"&&typeof a!="function"?(r=a,a=t):n=t;const s=Za(n),i=r?-1:1;o(e,void 0,[])();function o(u,l,p){const h=u&&typeof u=="object"?u:{};if(typeof h.type=="string"){const m=typeof h.tagName=="string"?h.tagName:typeof h.name=="string"?h.name:void 0;Object.defineProperty(f,"name",{value:"node ("+(u.type+(m?"<"+m+">":""))+")"})}return f;function f(){let m=Ys,g,b,C;if((!t||s(u,l,p[p.length-1]||void 0))&&(m=Qh(a(u,p)),m[0]===vr))return m;if("children"in u&&u.children){const T=u;if(T.children&&m[0]!==Gh)for(b=(r?T.children.length:-1)+i,C=p.concat(T);b>-1&&b<T.children.length;){const I=T.children[b];if(g=o(I,b,C)(),g[0]===vr)return g;b=typeof g[1]=="number"?g[1]:b+i}}return m}}}function Qh(e){return Array.isArray(e)?e:typeof e=="number"?[Vh,e]:e==null?Ys:[e]}function Ze(e,t,a,r){let n,s,i;typeof t=="function"&&typeof a!="function"?(s=void 0,i=t,n=a):(s=t,i=a,n=r),$s(e,s,o,n);function o(u,l){const p=l[l.length-1],h=p?p.children.indexOf(u):void 0;return i(u,h,p)}}const Pr={}.hasOwnProperty,Kh={};function Xh(e,t){const a=t||Kh,r=new Map,n=new Map,s=new Map,i={...Lh,...a.handlers},o={all:l,applyData:Zh,definitionById:r,footnoteById:n,footnoteCounts:s,footnoteOrder:[],handlers:i,one:u,options:a,patch:Jh,wrap:td};return Ze(e,function(p){if(p.type==="definition"||p.type==="footnoteDefinition"){const h=p.type==="definition"?r:n,f=String(p.identifier).toUpperCase();h.has(f)||h.set(f,p)}}),o;function u(p,h){const f=p.type,m=o.handlers[f];if(Pr.call(o.handlers,f)&&m)return m(o,p,h);if(o.options.passThrough&&o.options.passThrough.includes(f)){if("children"in p){const{children:b,...C}=p,T=Je(C);return T.children=o.all(p),T}return Je(p)}return(o.options.unknownHandler||ed)(o,p,h)}function l(p){const h=[];if("children"in p){const f=p.children;let m=-1;for(;++m<f.length;){const g=o.one(f[m],p);if(g){if(m&&f[m-1].type==="break"&&(!Array.isArray(g)&&g.type==="text"&&(g.value=mi(g.value)),!Array.isArray(g)&&g.type==="element")){const b=g.children[0];b&&b.type==="text"&&(b.value=mi(b.value))}Array.isArray(g)?h.push(...g):h.push(g)}}}return h}}function Jh(e,t){e.position&&(t.position=Dh(e))}function Zh(e,t){let a=t;if(e&&e.data){const r=e.data.hName,n=e.data.hChildren,s=e.data.hProperties;if(typeof r=="string")if(a.type==="element")a.tagName=r;else{const i="children"in a?a.children:[a];a={type:"element",tagName:r,properties:{},children:i}}a.type==="element"&&s&&Object.assign(a.properties,Je(s)),"children"in a&&a.children&&n!==null&&n!==void 0&&(a.children=n)}return a}function ed(e,t){const a=t.data||{},r="value"in t&&!(Pr.call(a,"hProperties")||Pr.call(a,"hChildren"))?{type:"text",value:t.value}:{type:"element",tagName:"div",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function td(e,t){const a=[];let r=-1;for(t&&a.push({type:"text",value:` +`});++r<e.length;)r&&a.push({type:"text",value:` +`}),a.push(e[r]);return t&&e.length>0&&a.push({type:"text",value:` +`}),a}function mi(e){let t=0,a=e.charCodeAt(t);for(;a===9||a===32;)t++,a=e.charCodeAt(t);return e.slice(t)}function _i(e,t){const a=Xh(e,t),r=a.one(e,void 0),n=Hh(a),s=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return n&&s.children.push({type:"text",value:` +`},n),s}function ad(e,t){return e&&"run"in e?async function(a,r){const n=_i(a,{file:r,...t});await e.run(n,r)}:function(a,r){return _i(a,{file:r,...e||t})}}/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Ws(e){return typeof e>"u"||e===null}function rd(e){return typeof e=="object"&&e!==null}function nd(e){return Array.isArray(e)?e:Ws(e)?[]:[e]}function id(e,t){var a,r,n,s;if(t)for(s=Object.keys(t),a=0,r=s.length;a<r;a+=1)n=s[a],e[n]=t[n];return e}function sd(e,t){var a="",r;for(r=0;r<t;r+=1)a+=e;return a}function od(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var cd=Ws,ud=rd,ld=nd,fd=sd,hd=od,dd=id,de={isNothing:cd,isObject:ud,toArray:ld,repeat:fd,isNegativeZero:hd,extend:dd};function Vs(e,t){var a="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(a+='in "'+e.mark.name+'" '),a+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!t&&e.mark.snippet&&(a+=` + +`+e.mark.snippet),r+" "+a):r}function ca(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=Vs(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}ca.prototype=Object.create(Error.prototype);ca.prototype.constructor=ca;ca.prototype.toString=function(t){return this.name+": "+Vs(this,t)};var Ee=ca;function _r(e,t,a,r,n){var s="",i="",o=Math.floor(n/2)-1;return r-t>o&&(s=" ... ",t=r-o+s.length),a-r>o&&(i=" ...",a=r+o-i.length),{str:s+e.slice(t,a).replace(/\t/g,"→")+i,pos:r-t+s.length}}function gr(e,t){return de.repeat(" ",t-e.length)+e}function pd(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.linesAfter=2);for(var a=/\r?\n|\r|\0/g,r=[0],n=[],s,i=-1;s=a.exec(e.buffer);)n.push(s.index),r.push(s.index+s[0].length),e.position<=s.index&&i<0&&(i=r.length-2);i<0&&(i=r.length-1);var o="",u,l,p=Math.min(e.line+t.linesAfter,n.length).toString().length,h=t.maxLength-(t.indent+p+3);for(u=1;u<=t.linesBefore&&!(i-u<0);u++)l=_r(e.buffer,r[i-u],n[i-u],e.position-(r[i]-r[i-u]),h),o=de.repeat(" ",t.indent)+gr((e.line-u+1).toString(),p)+" | "+l.str+` +`+o;for(l=_r(e.buffer,r[i],n[i],e.position,h),o+=de.repeat(" ",t.indent)+gr((e.line+1).toString(),p)+" | "+l.str+` +`,o+=de.repeat("-",t.indent+p+3+l.pos)+`^ +`,u=1;u<=t.linesAfter&&!(i+u>=n.length);u++)l=_r(e.buffer,r[i+u],n[i+u],e.position-(r[i]-r[i+u]),h),o+=de.repeat(" ",t.indent)+gr((e.line+u+1).toString(),p)+" | "+l.str+` +`;return o.replace(/\n$/,"")}var md=pd,_d=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],gd=["scalar","sequence","mapping"];function yd(e){var t={};return e!==null&&Object.keys(e).forEach(function(a){e[a].forEach(function(r){t[String(r)]=a})}),t}function kd(e,t){if(t=t||{},Object.keys(t).forEach(function(a){if(_d.indexOf(a)===-1)throw new Ee('Unknown option "'+a+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(a){return a},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=yd(t.styleAliases||null),gd.indexOf(this.kind)===-1)throw new Ee('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var ke=kd;function gi(e,t){var a=[];return e[t].forEach(function(r){var n=a.length;a.forEach(function(s,i){s.tag===r.tag&&s.kind===r.kind&&s.multi===r.multi&&(n=i)}),a[n]=r}),a}function bd(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,a;function r(n){n.multi?(e.multi[n.kind].push(n),e.multi.fallback.push(n)):e[n.kind][n.tag]=e.fallback[n.tag]=n}for(t=0,a=arguments.length;t<a;t+=1)arguments[t].forEach(r);return e}function Br(e){return this.extend(e)}Br.prototype.extend=function(t){var a=[],r=[];if(t instanceof ke)r.push(t);else if(Array.isArray(t))r=r.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(a=a.concat(t.implicit)),t.explicit&&(r=r.concat(t.explicit));else throw new Ee("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");a.forEach(function(s){if(!(s instanceof ke))throw new Ee("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(s.loadKind&&s.loadKind!=="scalar")throw new Ee("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(s.multi)throw new Ee("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(s){if(!(s instanceof ke))throw new Ee("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var n=Object.create(Br.prototype);return n.implicit=(this.implicit||[]).concat(a),n.explicit=(this.explicit||[]).concat(r),n.compiledImplicit=gi(n,"implicit"),n.compiledExplicit=gi(n,"explicit"),n.compiledTypeMap=bd(n.compiledImplicit,n.compiledExplicit),n};var Gs=Br,Qs=new ke("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Ks=new ke("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Xs=new ke("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Js=new Gs({explicit:[Qs,Ks,Xs]});function wd(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function Ed(){return null}function Td(e){return e===null}var Zs=new ke("tag:yaml.org,2002:null",{kind:"scalar",resolve:wd,construct:Ed,predicate:Td,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function Ad(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function Cd(e){return e==="true"||e==="True"||e==="TRUE"}function xd(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var eo=new ke("tag:yaml.org,2002:bool",{kind:"scalar",resolve:Ad,construct:Cd,predicate:xd,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function Dd(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function zd(e){return 48<=e&&e<=55}function Sd(e){return 48<=e&&e<=57}function Id(e){if(e===null)return!1;var t=e.length,a=0,r=!1,n;if(!t)return!1;if(n=e[a],(n==="-"||n==="+")&&(n=e[++a]),n==="0"){if(a+1===t)return!0;if(n=e[++a],n==="b"){for(a++;a<t;a++)if(n=e[a],n!=="_"){if(n!=="0"&&n!=="1")return!1;r=!0}return r&&n!=="_"}if(n==="x"){for(a++;a<t;a++)if(n=e[a],n!=="_"){if(!Dd(e.charCodeAt(a)))return!1;r=!0}return r&&n!=="_"}if(n==="o"){for(a++;a<t;a++)if(n=e[a],n!=="_"){if(!zd(e.charCodeAt(a)))return!1;r=!0}return r&&n!=="_"}}if(n==="_")return!1;for(;a<t;a++)if(n=e[a],n!=="_"){if(!Sd(e.charCodeAt(a)))return!1;r=!0}return!(!r||n==="_")}function Nd(e){var t=e,a=1,r;if(t.indexOf("_")!==-1&&(t=t.replace(/_/g,"")),r=t[0],(r==="-"||r==="+")&&(r==="-"&&(a=-1),t=t.slice(1),r=t[0]),t==="0")return 0;if(r==="0"){if(t[1]==="b")return a*parseInt(t.slice(2),2);if(t[1]==="x")return a*parseInt(t.slice(2),16);if(t[1]==="o")return a*parseInt(t.slice(2),8)}return a*parseInt(t,10)}function Fd(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!de.isNegativeZero(e)}var to=new ke("tag:yaml.org,2002:int",{kind:"scalar",resolve:Id,construct:Nd,predicate:Fd,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Od=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Ld(e){return!(e===null||!Od.test(e)||e[e.length-1]==="_")}function Rd(e){var t,a;return t=e.replace(/_/g,"").toLowerCase(),a=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?a===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:a*parseFloat(t,10)}var vd=/^[-+]?[0-9]+e/;function Pd(e,t){var a;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(de.isNegativeZero(e))return"-0.0";return a=e.toString(10),vd.test(a)?a.replace("e",".e"):a}function Bd(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||de.isNegativeZero(e))}var ao=new ke("tag:yaml.org,2002:float",{kind:"scalar",resolve:Ld,construct:Rd,predicate:Bd,represent:Pd,defaultStyle:"lowercase"}),ro=Js.extend({implicit:[Zs,eo,to,ao]}),no=ro,io=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),so=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Md(e){return e===null?!1:io.exec(e)!==null||so.exec(e)!==null}function Ud(e){var t,a,r,n,s,i,o,u=0,l=null,p,h,f;if(t=io.exec(e),t===null&&(t=so.exec(e)),t===null)throw new Error("Date resolve error");if(a=+t[1],r=+t[2]-1,n=+t[3],!t[4])return new Date(Date.UTC(a,r,n));if(s=+t[4],i=+t[5],o=+t[6],t[7]){for(u=t[7].slice(0,3);u.length<3;)u+="0";u=+u}return t[9]&&(p=+t[10],h=+(t[11]||0),l=(p*60+h)*6e4,t[9]==="-"&&(l=-l)),f=new Date(Date.UTC(a,r,n,s,i,o,u)),l&&f.setTime(f.getTime()-l),f}function Hd(e){return e.toISOString()}var oo=new ke("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Md,construct:Ud,instanceOf:Date,represent:Hd});function jd(e){return e==="<<"||e===null}var co=new ke("tag:yaml.org,2002:merge",{kind:"scalar",resolve:jd}),hn=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function qd(e){if(e===null)return!1;var t,a,r=0,n=e.length,s=hn;for(a=0;a<n;a++)if(t=s.indexOf(e.charAt(a)),!(t>64)){if(t<0)return!1;r+=6}return r%8===0}function Yd(e){var t,a,r=e.replace(/[\r\n=]/g,""),n=r.length,s=hn,i=0,o=[];for(t=0;t<n;t++)t%4===0&&t&&(o.push(i>>16&255),o.push(i>>8&255),o.push(i&255)),i=i<<6|s.indexOf(r.charAt(t));return a=n%4*6,a===0?(o.push(i>>16&255),o.push(i>>8&255),o.push(i&255)):a===18?(o.push(i>>10&255),o.push(i>>2&255)):a===12&&o.push(i>>4&255),new Uint8Array(o)}function $d(e){var t="",a=0,r,n,s=e.length,i=hn;for(r=0;r<s;r++)r%3===0&&r&&(t+=i[a>>18&63],t+=i[a>>12&63],t+=i[a>>6&63],t+=i[a&63]),a=(a<<8)+e[r];return n=s%3,n===0?(t+=i[a>>18&63],t+=i[a>>12&63],t+=i[a>>6&63],t+=i[a&63]):n===2?(t+=i[a>>10&63],t+=i[a>>4&63],t+=i[a<<2&63],t+=i[64]):n===1&&(t+=i[a>>2&63],t+=i[a<<4&63],t+=i[64],t+=i[64]),t}function Wd(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var uo=new ke("tag:yaml.org,2002:binary",{kind:"scalar",resolve:qd,construct:Yd,predicate:Wd,represent:$d}),Vd=Object.prototype.hasOwnProperty,Gd=Object.prototype.toString;function Qd(e){if(e===null)return!0;var t=[],a,r,n,s,i,o=e;for(a=0,r=o.length;a<r;a+=1){if(n=o[a],i=!1,Gd.call(n)!=="[object Object]")return!1;for(s in n)if(Vd.call(n,s))if(!i)i=!0;else return!1;if(!i)return!1;if(t.indexOf(s)===-1)t.push(s);else return!1}return!0}function Kd(e){return e!==null?e:[]}var lo=new ke("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Qd,construct:Kd}),Xd=Object.prototype.toString;function Jd(e){if(e===null)return!0;var t,a,r,n,s,i=e;for(s=new Array(i.length),t=0,a=i.length;t<a;t+=1){if(r=i[t],Xd.call(r)!=="[object Object]"||(n=Object.keys(r),n.length!==1))return!1;s[t]=[n[0],r[n[0]]]}return!0}function Zd(e){if(e===null)return[];var t,a,r,n,s,i=e;for(s=new Array(i.length),t=0,a=i.length;t<a;t+=1)r=i[t],n=Object.keys(r),s[t]=[n[0],r[n[0]]];return s}var fo=new ke("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Jd,construct:Zd}),ep=Object.prototype.hasOwnProperty;function tp(e){if(e===null)return!0;var t,a=e;for(t in a)if(ep.call(a,t)&&a[t]!==null)return!1;return!0}function ap(e){return e!==null?e:{}}var ho=new ke("tag:yaml.org,2002:set",{kind:"mapping",resolve:tp,construct:ap}),dn=no.extend({implicit:[oo,co],explicit:[uo,lo,fo,ho]}),ft=Object.prototype.hasOwnProperty,va=1,po=2,mo=3,Pa=4,yr=1,rp=2,yi=3,np=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,ip=/[\x85\u2028\u2029]/,sp=/[,\[\]\{\}]/,_o=/^(?:!|!!|![a-z\-]+!)$/i,go=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function ki(e){return Object.prototype.toString.call(e)}function $e(e){return e===10||e===13}function kt(e){return e===9||e===32}function xe(e){return e===9||e===32||e===10||e===13}function Lt(e){return e===44||e===91||e===93||e===123||e===125}function op(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function cp(e){return e===120?2:e===117?4:e===85?8:0}function up(e){return 48<=e&&e<=57?e-48:-1}function bi(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?` +`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"…":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function lp(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var yo=new Array(256),ko=new Array(256);for(var zt=0;zt<256;zt++)yo[zt]=bi(zt)?1:0,ko[zt]=bi(zt);function fp(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||dn,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function bo(e,t){var a={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return a.snippet=md(a),new Ee(t,a)}function V(e,t){throw bo(e,t)}function Ba(e,t){e.onWarning&&e.onWarning.call(null,bo(e,t))}var wi={YAML:function(t,a,r){var n,s,i;t.version!==null&&V(t,"duplication of %YAML directive"),r.length!==1&&V(t,"YAML directive accepts exactly one argument"),n=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),n===null&&V(t,"ill-formed argument of the YAML directive"),s=parseInt(n[1],10),i=parseInt(n[2],10),s!==1&&V(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=i<2,i!==1&&i!==2&&Ba(t,"unsupported YAML version of the document")},TAG:function(t,a,r){var n,s;r.length!==2&&V(t,"TAG directive accepts exactly two arguments"),n=r[0],s=r[1],_o.test(n)||V(t,"ill-formed tag handle (first argument) of the TAG directive"),ft.call(t.tagMap,n)&&V(t,'there is a previously declared suffix for "'+n+'" tag handle'),go.test(s)||V(t,"ill-formed tag prefix (second argument) of the TAG directive");try{s=decodeURIComponent(s)}catch{V(t,"tag prefix is malformed: "+s)}t.tagMap[n]=s}};function ut(e,t,a,r){var n,s,i,o;if(t<a){if(o=e.input.slice(t,a),r)for(n=0,s=o.length;n<s;n+=1)i=o.charCodeAt(n),i===9||32<=i&&i<=1114111||V(e,"expected valid JSON character");else np.test(o)&&V(e,"the stream contains non-printable characters");e.result+=o}}function Ei(e,t,a,r){var n,s,i,o;for(de.isObject(a)||V(e,"cannot merge mappings; the provided source object is unacceptable"),n=Object.keys(a),i=0,o=n.length;i<o;i+=1)s=n[i],ft.call(t,s)||(t[s]=a[s],r[s]=!0)}function Rt(e,t,a,r,n,s,i,o,u){var l,p;if(Array.isArray(n))for(n=Array.prototype.slice.call(n),l=0,p=n.length;l<p;l+=1)Array.isArray(n[l])&&V(e,"nested arrays are not supported inside keys"),typeof n=="object"&&ki(n[l])==="[object Object]"&&(n[l]="[object Object]");if(typeof n=="object"&&ki(n)==="[object Object]"&&(n="[object Object]"),n=String(n),t===null&&(t={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(s))for(l=0,p=s.length;l<p;l+=1)Ei(e,t,s[l],a);else Ei(e,t,s,a);else!e.json&&!ft.call(a,n)&&ft.call(t,n)&&(e.line=i||e.line,e.lineStart=o||e.lineStart,e.position=u||e.position,V(e,"duplicated mapping key")),n==="__proto__"?Object.defineProperty(t,n,{configurable:!0,enumerable:!0,writable:!0,value:s}):t[n]=s,delete a[n];return t}function pn(e){var t;t=e.input.charCodeAt(e.position),t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):V(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function he(e,t,a){for(var r=0,n=e.input.charCodeAt(e.position);n!==0;){for(;kt(n);)n===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),n=e.input.charCodeAt(++e.position);if(t&&n===35)do n=e.input.charCodeAt(++e.position);while(n!==10&&n!==13&&n!==0);if($e(n))for(pn(e),n=e.input.charCodeAt(e.position),r++,e.lineIndent=0;n===32;)e.lineIndent++,n=e.input.charCodeAt(++e.position);else break}return a!==-1&&r!==0&&e.lineIndent<a&&Ba(e,"deficient indentation"),r}function tr(e){var t=e.position,a;return a=e.input.charCodeAt(t),!!((a===45||a===46)&&a===e.input.charCodeAt(t+1)&&a===e.input.charCodeAt(t+2)&&(t+=3,a=e.input.charCodeAt(t),a===0||xe(a)))}function mn(e,t){t===1?e.result+=" ":t>1&&(e.result+=de.repeat(` +`,t-1))}function hp(e,t,a){var r,n,s,i,o,u,l,p,h=e.kind,f=e.result,m;if(m=e.input.charCodeAt(e.position),xe(m)||Lt(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(n=e.input.charCodeAt(e.position+1),xe(n)||a&&Lt(n)))return!1;for(e.kind="scalar",e.result="",s=i=e.position,o=!1;m!==0;){if(m===58){if(n=e.input.charCodeAt(e.position+1),xe(n)||a&&Lt(n))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),xe(r))break}else{if(e.position===e.lineStart&&tr(e)||a&&Lt(m))break;if($e(m))if(u=e.line,l=e.lineStart,p=e.lineIndent,he(e,!1,-1),e.lineIndent>=t){o=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=i,e.line=u,e.lineStart=l,e.lineIndent=p;break}}o&&(ut(e,s,i,!1),mn(e,e.line-u),s=i=e.position,o=!1),kt(m)||(i=e.position+1),m=e.input.charCodeAt(++e.position)}return ut(e,s,i,!1),e.result?!0:(e.kind=h,e.result=f,!1)}function dp(e,t){var a,r,n;if(a=e.input.charCodeAt(e.position),a!==39)return!1;for(e.kind="scalar",e.result="",e.position++,r=n=e.position;(a=e.input.charCodeAt(e.position))!==0;)if(a===39)if(ut(e,r,e.position,!0),a=e.input.charCodeAt(++e.position),a===39)r=e.position,e.position++,n=e.position;else return!0;else $e(a)?(ut(e,r,n,!0),mn(e,he(e,!1,t)),r=n=e.position):e.position===e.lineStart&&tr(e)?V(e,"unexpected end of the document within a single quoted scalar"):(e.position++,n=e.position);V(e,"unexpected end of the stream within a single quoted scalar")}function pp(e,t){var a,r,n,s,i,o;if(o=e.input.charCodeAt(e.position),o!==34)return!1;for(e.kind="scalar",e.result="",e.position++,a=r=e.position;(o=e.input.charCodeAt(e.position))!==0;){if(o===34)return ut(e,a,e.position,!0),e.position++,!0;if(o===92){if(ut(e,a,e.position,!0),o=e.input.charCodeAt(++e.position),$e(o))he(e,!1,t);else if(o<256&&yo[o])e.result+=ko[o],e.position++;else if((i=cp(o))>0){for(n=i,s=0;n>0;n--)o=e.input.charCodeAt(++e.position),(i=op(o))>=0?s=(s<<4)+i:V(e,"expected hexadecimal character");e.result+=lp(s),e.position++}else V(e,"unknown escape sequence");a=r=e.position}else $e(o)?(ut(e,a,r,!0),mn(e,he(e,!1,t)),a=r=e.position):e.position===e.lineStart&&tr(e)?V(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}V(e,"unexpected end of the stream within a double quoted scalar")}function mp(e,t){var a=!0,r,n,s,i=e.tag,o,u=e.anchor,l,p,h,f,m,g=Object.create(null),b,C,T,I;if(I=e.input.charCodeAt(e.position),I===91)p=93,m=!1,o=[];else if(I===123)p=125,m=!0,o={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),I=e.input.charCodeAt(++e.position);I!==0;){if(he(e,!0,t),I=e.input.charCodeAt(e.position),I===p)return e.position++,e.tag=i,e.anchor=u,e.kind=m?"mapping":"sequence",e.result=o,!0;a?I===44&&V(e,"expected the node content, but found ','"):V(e,"missed comma between flow collection entries"),C=b=T=null,h=f=!1,I===63&&(l=e.input.charCodeAt(e.position+1),xe(l)&&(h=f=!0,e.position++,he(e,!0,t))),r=e.line,n=e.lineStart,s=e.position,Pt(e,t,va,!1,!0),C=e.tag,b=e.result,he(e,!0,t),I=e.input.charCodeAt(e.position),(f||e.line===r)&&I===58&&(h=!0,I=e.input.charCodeAt(++e.position),he(e,!0,t),Pt(e,t,va,!1,!0),T=e.result),m?Rt(e,o,g,C,b,T,r,n,s):h?o.push(Rt(e,null,g,C,b,T,r,n,s)):o.push(b),he(e,!0,t),I=e.input.charCodeAt(e.position),I===44?(a=!0,I=e.input.charCodeAt(++e.position)):a=!1}V(e,"unexpected end of the stream within a flow collection")}function _p(e,t){var a,r,n=yr,s=!1,i=!1,o=t,u=0,l=!1,p,h;if(h=e.input.charCodeAt(e.position),h===124)r=!1;else if(h===62)r=!0;else return!1;for(e.kind="scalar",e.result="";h!==0;)if(h=e.input.charCodeAt(++e.position),h===43||h===45)yr===n?n=h===43?yi:rp:V(e,"repeat of a chomping mode identifier");else if((p=up(h))>=0)p===0?V(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):i?V(e,"repeat of an indentation width identifier"):(o=t+p-1,i=!0);else break;if(kt(h)){do h=e.input.charCodeAt(++e.position);while(kt(h));if(h===35)do h=e.input.charCodeAt(++e.position);while(!$e(h)&&h!==0)}for(;h!==0;){for(pn(e),e.lineIndent=0,h=e.input.charCodeAt(e.position);(!i||e.lineIndent<o)&&h===32;)e.lineIndent++,h=e.input.charCodeAt(++e.position);if(!i&&e.lineIndent>o&&(o=e.lineIndent),$e(h)){u++;continue}if(e.lineIndent<o){n===yi?e.result+=de.repeat(` +`,s?1+u:u):n===yr&&s&&(e.result+=` +`);break}for(r?kt(h)?(l=!0,e.result+=de.repeat(` +`,s?1+u:u)):l?(l=!1,e.result+=de.repeat(` +`,u+1)):u===0?s&&(e.result+=" "):e.result+=de.repeat(` +`,u):e.result+=de.repeat(` +`,s?1+u:u),s=!0,i=!0,u=0,a=e.position;!$e(h)&&h!==0;)h=e.input.charCodeAt(++e.position);ut(e,a,e.position,!1)}return!0}function Ti(e,t){var a,r=e.tag,n=e.anchor,s=[],i,o=!1,u;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),u=e.input.charCodeAt(e.position);u!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,V(e,"tab characters must not be used in indentation")),!(u!==45||(i=e.input.charCodeAt(e.position+1),!xe(i))));){if(o=!0,e.position++,he(e,!0,-1)&&e.lineIndent<=t){s.push(null),u=e.input.charCodeAt(e.position);continue}if(a=e.line,Pt(e,t,mo,!1,!0),s.push(e.result),he(e,!0,-1),u=e.input.charCodeAt(e.position),(e.line===a||e.lineIndent>t)&&u!==0)V(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break}return o?(e.tag=r,e.anchor=n,e.kind="sequence",e.result=s,!0):!1}function gp(e,t,a){var r,n,s,i,o,u,l=e.tag,p=e.anchor,h={},f=Object.create(null),m=null,g=null,b=null,C=!1,T=!1,I;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=h),I=e.input.charCodeAt(e.position);I!==0;){if(!C&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,V(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),s=e.line,(I===63||I===58)&&xe(r))I===63?(C&&(Rt(e,h,f,m,g,null,i,o,u),m=g=b=null),T=!0,C=!0,n=!0):C?(C=!1,n=!0):V(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,I=r;else{if(i=e.line,o=e.lineStart,u=e.position,!Pt(e,a,po,!1,!0))break;if(e.line===s){for(I=e.input.charCodeAt(e.position);kt(I);)I=e.input.charCodeAt(++e.position);if(I===58)I=e.input.charCodeAt(++e.position),xe(I)||V(e,"a whitespace character is expected after the key-value separator within a block mapping"),C&&(Rt(e,h,f,m,g,null,i,o,u),m=g=b=null),T=!0,C=!1,n=!1,m=e.tag,g=e.result;else if(T)V(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=l,e.anchor=p,!0}else if(T)V(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=l,e.anchor=p,!0}if((e.line===s||e.lineIndent>t)&&(C&&(i=e.line,o=e.lineStart,u=e.position),Pt(e,t,Pa,!0,n)&&(C?g=e.result:b=e.result),C||(Rt(e,h,f,m,g,b,i,o,u),m=g=b=null),he(e,!0,-1),I=e.input.charCodeAt(e.position)),(e.line===s||e.lineIndent>t)&&I!==0)V(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return C&&Rt(e,h,f,m,g,null,i,o,u),T&&(e.tag=l,e.anchor=p,e.kind="mapping",e.result=h),T}function yp(e){var t,a=!1,r=!1,n,s,i;if(i=e.input.charCodeAt(e.position),i!==33)return!1;if(e.tag!==null&&V(e,"duplication of a tag property"),i=e.input.charCodeAt(++e.position),i===60?(a=!0,i=e.input.charCodeAt(++e.position)):i===33?(r=!0,n="!!",i=e.input.charCodeAt(++e.position)):n="!",t=e.position,a){do i=e.input.charCodeAt(++e.position);while(i!==0&&i!==62);e.position<e.length?(s=e.input.slice(t,e.position),i=e.input.charCodeAt(++e.position)):V(e,"unexpected end of the stream within a verbatim tag")}else{for(;i!==0&&!xe(i);)i===33&&(r?V(e,"tag suffix cannot contain exclamation marks"):(n=e.input.slice(t-1,e.position+1),_o.test(n)||V(e,"named tag handle cannot contain such characters"),r=!0,t=e.position+1)),i=e.input.charCodeAt(++e.position);s=e.input.slice(t,e.position),sp.test(s)&&V(e,"tag suffix cannot contain flow indicator characters")}s&&!go.test(s)&&V(e,"tag name cannot contain such characters: "+s);try{s=decodeURIComponent(s)}catch{V(e,"tag name is malformed: "+s)}return a?e.tag=s:ft.call(e.tagMap,n)?e.tag=e.tagMap[n]+s:n==="!"?e.tag="!"+s:n==="!!"?e.tag="tag:yaml.org,2002:"+s:V(e,'undeclared tag handle "'+n+'"'),!0}function kp(e){var t,a;if(a=e.input.charCodeAt(e.position),a!==38)return!1;for(e.anchor!==null&&V(e,"duplication of an anchor property"),a=e.input.charCodeAt(++e.position),t=e.position;a!==0&&!xe(a)&&!Lt(a);)a=e.input.charCodeAt(++e.position);return e.position===t&&V(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function bp(e){var t,a,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),t=e.position;r!==0&&!xe(r)&&!Lt(r);)r=e.input.charCodeAt(++e.position);return e.position===t&&V(e,"name of an alias node must contain at least one character"),a=e.input.slice(t,e.position),ft.call(e.anchorMap,a)||V(e,'unidentified alias "'+a+'"'),e.result=e.anchorMap[a],he(e,!0,-1),!0}function Pt(e,t,a,r,n){var s,i,o,u=1,l=!1,p=!1,h,f,m,g,b,C;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,s=i=o=Pa===a||mo===a,r&&he(e,!0,-1)&&(l=!0,e.lineIndent>t?u=1:e.lineIndent===t?u=0:e.lineIndent<t&&(u=-1)),u===1)for(;yp(e)||kp(e);)he(e,!0,-1)?(l=!0,o=s,e.lineIndent>t?u=1:e.lineIndent===t?u=0:e.lineIndent<t&&(u=-1)):o=!1;if(o&&(o=l||n),(u===1||Pa===a)&&(va===a||po===a?b=t:b=t+1,C=e.position-e.lineStart,u===1?o&&(Ti(e,C)||gp(e,C,b))||mp(e,b)?p=!0:(i&&_p(e,b)||dp(e,b)||pp(e,b)?p=!0:bp(e)?(p=!0,(e.tag!==null||e.anchor!==null)&&V(e,"alias node should not have any properties")):hp(e,b,va===a)&&(p=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):u===0&&(p=o&&Ti(e,C))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&V(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),h=0,f=e.implicitTypes.length;h<f;h+=1)if(g=e.implicitTypes[h],g.resolve(e.result)){e.result=g.construct(e.result),e.tag=g.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(ft.call(e.typeMap[e.kind||"fallback"],e.tag))g=e.typeMap[e.kind||"fallback"][e.tag];else for(g=null,m=e.typeMap.multi[e.kind||"fallback"],h=0,f=m.length;h<f;h+=1)if(e.tag.slice(0,m[h].tag.length)===m[h].tag){g=m[h];break}g||V(e,"unknown tag !<"+e.tag+">"),e.result!==null&&g.kind!==e.kind&&V(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+g.kind+'", not "'+e.kind+'"'),g.resolve(e.result,e.tag)?(e.result=g.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):V(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||p}function wp(e){var t=e.position,a,r,n,s=!1,i;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(i=e.input.charCodeAt(e.position))!==0&&(he(e,!0,-1),i=e.input.charCodeAt(e.position),!(e.lineIndent>0||i!==37));){for(s=!0,i=e.input.charCodeAt(++e.position),a=e.position;i!==0&&!xe(i);)i=e.input.charCodeAt(++e.position);for(r=e.input.slice(a,e.position),n=[],r.length<1&&V(e,"directive name must not be less than one character in length");i!==0;){for(;kt(i);)i=e.input.charCodeAt(++e.position);if(i===35){do i=e.input.charCodeAt(++e.position);while(i!==0&&!$e(i));break}if($e(i))break;for(a=e.position;i!==0&&!xe(i);)i=e.input.charCodeAt(++e.position);n.push(e.input.slice(a,e.position))}i!==0&&pn(e),ft.call(wi,r)?wi[r](e,r,n):Ba(e,'unknown document directive "'+r+'"')}if(he(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,he(e,!0,-1)):s&&V(e,"directives end mark is expected"),Pt(e,e.lineIndent-1,Pa,!1,!0),he(e,!0,-1),e.checkLineBreaks&&ip.test(e.input.slice(t,e.position))&&Ba(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&tr(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,he(e,!0,-1));return}if(e.position<e.length-1)V(e,"end of the stream or a document separator is expected");else return}function wo(e,t){e=String(e),t=t||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=` +`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var a=new fp(e,t),r=e.indexOf("\0");for(r!==-1&&(a.position=r,V(a,"null byte is not allowed in input")),a.input+="\0";a.input.charCodeAt(a.position)===32;)a.lineIndent+=1,a.position+=1;for(;a.position<a.length-1;)wp(a);return a.documents}function Ep(e,t,a){t!==null&&typeof t=="object"&&typeof a>"u"&&(a=t,t=null);var r=wo(e,a);if(typeof t!="function")return r;for(var n=0,s=r.length;n<s;n+=1)t(r[n])}function Tp(e,t){var a=wo(e,t);if(a.length!==0){if(a.length===1)return a[0];throw new Ee("expected a single document in the stream, but found more")}}var Ap=Ep,Cp=Tp,Eo={loadAll:Ap,load:Cp},To=Object.prototype.toString,Ao=Object.prototype.hasOwnProperty,_n=65279,xp=9,ua=10,Dp=13,zp=32,Sp=33,Ip=34,Mr=35,Np=37,Fp=38,Op=39,Lp=42,Co=44,Rp=45,Ma=58,vp=61,Pp=62,Bp=63,Mp=64,xo=91,Do=93,Up=96,zo=123,Hp=124,So=125,be={};be[0]="\\0";be[7]="\\a";be[8]="\\b";be[9]="\\t";be[10]="\\n";be[11]="\\v";be[12]="\\f";be[13]="\\r";be[27]="\\e";be[34]='\\"';be[92]="\\\\";be[133]="\\N";be[160]="\\_";be[8232]="\\L";be[8233]="\\P";var jp=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],qp=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function Yp(e,t){var a,r,n,s,i,o,u;if(t===null)return{};for(a={},r=Object.keys(t),n=0,s=r.length;n<s;n+=1)i=r[n],o=String(t[i]),i.slice(0,2)==="!!"&&(i="tag:yaml.org,2002:"+i.slice(2)),u=e.compiledTypeMap.fallback[i],u&&Ao.call(u.styleAliases,o)&&(o=u.styleAliases[o]),a[i]=o;return a}function $p(e){var t,a,r;if(t=e.toString(16).toUpperCase(),e<=255)a="x",r=2;else if(e<=65535)a="u",r=4;else if(e<=4294967295)a="U",r=8;else throw new Ee("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+a+de.repeat("0",r-t.length)+t}var Wp=1,la=2;function Vp(e){this.schema=e.schema||dn,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=de.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=Yp(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?la:Wp,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Ai(e,t){for(var a=de.repeat(" ",t),r=0,n=-1,s="",i,o=e.length;r<o;)n=e.indexOf(` +`,r),n===-1?(i=e.slice(r),r=o):(i=e.slice(r,n+1),r=n+1),i.length&&i!==` +`&&(s+=a),s+=i;return s}function Ur(e,t){return` +`+de.repeat(" ",e.indent*t)}function Gp(e,t){var a,r,n;for(a=0,r=e.implicitTypes.length;a<r;a+=1)if(n=e.implicitTypes[a],n.resolve(t))return!0;return!1}function Ua(e){return e===zp||e===xp}function fa(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==_n||65536<=e&&e<=1114111}function Ci(e){return fa(e)&&e!==_n&&e!==Dp&&e!==ua}function xi(e,t,a){var r=Ci(e),n=r&&!Ua(e);return(a?r:r&&e!==Co&&e!==xo&&e!==Do&&e!==zo&&e!==So)&&e!==Mr&&!(t===Ma&&!n)||Ci(t)&&!Ua(t)&&e===Mr||t===Ma&&n}function Qp(e){return fa(e)&&e!==_n&&!Ua(e)&&e!==Rp&&e!==Bp&&e!==Ma&&e!==Co&&e!==xo&&e!==Do&&e!==zo&&e!==So&&e!==Mr&&e!==Fp&&e!==Lp&&e!==Sp&&e!==Hp&&e!==vp&&e!==Pp&&e!==Op&&e!==Ip&&e!==Np&&e!==Mp&&e!==Up}function Kp(e){return!Ua(e)&&e!==Ma}function Xt(e,t){var a=e.charCodeAt(t),r;return a>=55296&&a<=56319&&t+1<e.length&&(r=e.charCodeAt(t+1),r>=56320&&r<=57343)?(a-55296)*1024+r-56320+65536:a}function Io(e){var t=/^\n* /;return t.test(e)}var No=1,Hr=2,Fo=3,Oo=4,It=5;function Xp(e,t,a,r,n,s,i,o){var u,l=0,p=null,h=!1,f=!1,m=r!==-1,g=-1,b=Qp(Xt(e,0))&&Kp(Xt(e,e.length-1));if(t||i)for(u=0;u<e.length;l>=65536?u+=2:u++){if(l=Xt(e,u),!fa(l))return It;b=b&&xi(l,p,o),p=l}else{for(u=0;u<e.length;l>=65536?u+=2:u++){if(l=Xt(e,u),l===ua)h=!0,m&&(f=f||u-g-1>r&&e[g+1]!==" ",g=u);else if(!fa(l))return It;b=b&&xi(l,p,o),p=l}f=f||m&&u-g-1>r&&e[g+1]!==" "}return!h&&!f?b&&!i&&!n(e)?No:s===la?It:Hr:a>9&&Io(e)?It:i?s===la?It:Hr:f?Oo:Fo}function Jp(e,t,a,r,n){e.dump=function(){if(t.length===0)return e.quotingType===la?'""':"''";if(!e.noCompatMode&&(jp.indexOf(t)!==-1||qp.test(t)))return e.quotingType===la?'"'+t+'"':"'"+t+"'";var s=e.indent*Math.max(1,a),i=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-s),o=r||e.flowLevel>-1&&a>=e.flowLevel;function u(l){return Gp(e,l)}switch(Xp(t,o,e.indent,i,u,e.quotingType,e.forceQuotes&&!r,n)){case No:return t;case Hr:return"'"+t.replace(/'/g,"''")+"'";case Fo:return"|"+Di(t,e.indent)+zi(Ai(t,s));case Oo:return">"+Di(t,e.indent)+zi(Ai(Zp(t,i),s));case It:return'"'+em(t)+'"';default:throw new Ee("impossible error: invalid scalar style")}}()}function Di(e,t){var a=Io(e)?String(t):"",r=e[e.length-1]===` +`,n=r&&(e[e.length-2]===` +`||e===` +`),s=n?"+":r?"":"-";return a+s+` +`}function zi(e){return e[e.length-1]===` +`?e.slice(0,-1):e}function Zp(e,t){for(var a=/(\n+)([^\n]*)/g,r=function(){var l=e.indexOf(` +`);return l=l!==-1?l:e.length,a.lastIndex=l,Si(e.slice(0,l),t)}(),n=e[0]===` +`||e[0]===" ",s,i;i=a.exec(e);){var o=i[1],u=i[2];s=u[0]===" ",r+=o+(!n&&!s&&u!==""?` +`:"")+Si(u,t),n=s}return r}function Si(e,t){if(e===""||e[0]===" ")return e;for(var a=/ [^ ]/g,r,n=0,s,i=0,o=0,u="";r=a.exec(e);)o=r.index,o-n>t&&(s=i>n?i:o,u+=` +`+e.slice(n,s),n=s+1),i=o;return u+=` +`,e.length-n>t&&i>n?u+=e.slice(n,i)+` +`+e.slice(i+1):u+=e.slice(n),u.slice(1)}function em(e){for(var t="",a=0,r,n=0;n<e.length;a>=65536?n+=2:n++)a=Xt(e,n),r=be[a],!r&&fa(a)?(t+=e[n],a>=65536&&(t+=e[n+1])):t+=r||$p(a);return t}function tm(e,t,a){var r="",n=e.tag,s,i,o;for(s=0,i=a.length;s<i;s+=1)o=a[s],e.replacer&&(o=e.replacer.call(a,String(s),o)),(et(e,t,o,!1,!1)||typeof o>"u"&&et(e,t,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=n,e.dump="["+r+"]"}function Ii(e,t,a,r){var n="",s=e.tag,i,o,u;for(i=0,o=a.length;i<o;i+=1)u=a[i],e.replacer&&(u=e.replacer.call(a,String(i),u)),(et(e,t+1,u,!0,!0,!1,!0)||typeof u>"u"&&et(e,t+1,null,!0,!0,!1,!0))&&((!r||n!=="")&&(n+=Ur(e,t)),e.dump&&ua===e.dump.charCodeAt(0)?n+="-":n+="- ",n+=e.dump);e.tag=s,e.dump=n||"[]"}function am(e,t,a){var r="",n=e.tag,s=Object.keys(a),i,o,u,l,p;for(i=0,o=s.length;i<o;i+=1)p="",r!==""&&(p+=", "),e.condenseFlow&&(p+='"'),u=s[i],l=a[u],e.replacer&&(l=e.replacer.call(a,u,l)),et(e,t,u,!1,!1)&&(e.dump.length>1024&&(p+="? "),p+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),et(e,t,l,!1,!1)&&(p+=e.dump,r+=p));e.tag=n,e.dump="{"+r+"}"}function rm(e,t,a,r){var n="",s=e.tag,i=Object.keys(a),o,u,l,p,h,f;if(e.sortKeys===!0)i.sort();else if(typeof e.sortKeys=="function")i.sort(e.sortKeys);else if(e.sortKeys)throw new Ee("sortKeys must be a boolean or a function");for(o=0,u=i.length;o<u;o+=1)f="",(!r||n!=="")&&(f+=Ur(e,t)),l=i[o],p=a[l],e.replacer&&(p=e.replacer.call(a,l,p)),et(e,t+1,l,!0,!0,!0)&&(h=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,h&&(e.dump&&ua===e.dump.charCodeAt(0)?f+="?":f+="? "),f+=e.dump,h&&(f+=Ur(e,t)),et(e,t+1,p,!0,h)&&(e.dump&&ua===e.dump.charCodeAt(0)?f+=":":f+=": ",f+=e.dump,n+=f));e.tag=s,e.dump=n||"{}"}function Ni(e,t,a){var r,n,s,i,o,u;for(n=a?e.explicitTypes:e.implicitTypes,s=0,i=n.length;s<i;s+=1)if(o=n[s],(o.instanceOf||o.predicate)&&(!o.instanceOf||typeof t=="object"&&t instanceof o.instanceOf)&&(!o.predicate||o.predicate(t))){if(a?o.multi&&o.representName?e.tag=o.representName(t):e.tag=o.tag:e.tag="?",o.represent){if(u=e.styleMap[o.tag]||o.defaultStyle,To.call(o.represent)==="[object Function]")r=o.represent(t,u);else if(Ao.call(o.represent,u))r=o.represent[u](t,u);else throw new Ee("!<"+o.tag+'> tag resolver accepts not "'+u+'" style');e.dump=r}return!0}return!1}function et(e,t,a,r,n,s,i){e.tag=null,e.dump=a,Ni(e,a,!1)||Ni(e,a,!0);var o=To.call(e.dump),u=r,l;r&&(r=e.flowLevel<0||e.flowLevel>t);var p=o==="[object Object]"||o==="[object Array]",h,f;if(p&&(h=e.duplicates.indexOf(a),f=h!==-1),(e.tag!==null&&e.tag!=="?"||f||e.indent!==2&&t>0)&&(n=!1),f&&e.usedDuplicates[h])e.dump="*ref_"+h;else{if(p&&f&&!e.usedDuplicates[h]&&(e.usedDuplicates[h]=!0),o==="[object Object]")r&&Object.keys(e.dump).length!==0?(rm(e,t,e.dump,n),f&&(e.dump="&ref_"+h+e.dump)):(am(e,t,e.dump),f&&(e.dump="&ref_"+h+" "+e.dump));else if(o==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!i&&t>0?Ii(e,t-1,e.dump,n):Ii(e,t,e.dump,n),f&&(e.dump="&ref_"+h+e.dump)):(tm(e,t,e.dump),f&&(e.dump="&ref_"+h+" "+e.dump));else if(o==="[object String]")e.tag!=="?"&&Jp(e,e.dump,t,s,u);else{if(o==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new Ee("unacceptable kind of an object to dump "+o)}e.tag!==null&&e.tag!=="?"&&(l=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?l="!"+l:l.slice(0,18)==="tag:yaml.org,2002:"?l="!!"+l.slice(18):l="!<"+l+">",e.dump=l+" "+e.dump)}return!0}function nm(e,t){var a=[],r=[],n,s;for(jr(e,a,r),n=0,s=r.length;n<s;n+=1)t.duplicates.push(a[r[n]]);t.usedDuplicates=new Array(s)}function jr(e,t,a){var r,n,s;if(e!==null&&typeof e=="object")if(n=t.indexOf(e),n!==-1)a.indexOf(n)===-1&&a.push(n);else if(t.push(e),Array.isArray(e))for(n=0,s=e.length;n<s;n+=1)jr(e[n],t,a);else for(r=Object.keys(e),n=0,s=r.length;n<s;n+=1)jr(e[r[n]],t,a)}function im(e,t){t=t||{};var a=new Vp(t);a.noRefs||nm(e,a);var r=e;return a.replacer&&(r=a.replacer.call({"":r},"",r)),et(a,0,r,!0,!0)?a.dump+` +`:""}var sm=im,om={dump:sm};function gn(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}var cm=ke,um=Gs,lm=Js,fm=ro,hm=no,dm=dn,pm=Eo.load,mm=Eo.loadAll,_m=om.dump,gm=Ee,ym={binary:uo,float:ao,map:Xs,null:Zs,pairs:fo,set:ho,timestamp:oo,bool:eo,int:to,merge:co,omap:lo,seq:Ks,str:Qs},km=gn("safeLoad","load"),bm=gn("safeLoadAll","loadAll"),wm=gn("safeDump","dump"),yn={Type:cm,Schema:um,FAILSAFE_SCHEMA:lm,JSON_SCHEMA:fm,CORE_SCHEMA:hm,DEFAULT_SCHEMA:dm,load:pm,loadAll:mm,dump:_m,YAMLException:gm,types:ym,safeLoad:km,safeLoadAll:bm,safeDump:wm};function Lo(e){return e&&e.constructor&&typeof e.constructor.isBuffer=="function"&&e.constructor.isBuffer(e)}function Ro(e){return e}function Em(e,t){t=t||{};const a=t.delimiter||".",r=t.maxDepth,n=t.transformKey||Ro,s={};function i(o,u,l){l=l||1,Object.keys(o).forEach(function(p){const h=o[p],f=t.safe&&Array.isArray(h),m=Object.prototype.toString.call(h),g=Lo(h),b=m==="[object Object]"||m==="[object Array]",C=u?u+a+n(p):n(p);if(!f&&!g&&b&&Object.keys(h).length&&(!t.maxDepth||l<r))return i(h,C,l+1);s[C]=h})}return i(e),s}function ar(e,t){t=t||{};const a=t.delimiter||".",r=t.overwrite||!1,n=t.transformKey||Ro,s={};if(Lo(e)||Object.prototype.toString.call(e)!=="[object Object]")return e;function o(p){const h=Number(p);return isNaN(h)||p.indexOf(".")!==-1||t.object?p:h}function u(p,h,f){return Object.keys(f).reduce(function(m,g){return m[p+a+g]=f[g],m},h)}function l(p){const h=Object.prototype.toString.call(p),f=h==="[object Array]",m=h==="[object Object]";if(p){if(f)return!p.length;if(m)return!Object.keys(p).length}else return!0}return e=Object.keys(e).reduce(function(p,h){const f=Object.prototype.toString.call(e[h]);return!(f==="[object Object]"||f==="[object Array]")||l(e[h])?(p[h]=e[h],p):u(h,p,Em(e[h],t))},{}),Object.keys(e).forEach(function(p){const h=p.split(a).map(n);let f=o(h.shift()),m=o(h[0]),g=s;for(;m!==void 0;){if(f==="__proto__")return;const b=Object.prototype.toString.call(g[f]),C=b==="[object Object]"||b==="[object Array]";if(!r&&!C&&typeof g[f]<"u")return;(r&&!C||!r&&g[f]==null)&&(g[f]=typeof m=="number"&&!t.object?[]:{}),g=g[f],h.length>0&&(f=o(h.shift()),m=o(h[0]))}g[f]=ar(e[p],t)}),s}const Tm=/["&'<>`]/g,Am=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Cm=/[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,xm=/[|\\{}()[\]^$+*?.]/g,Fi=new WeakMap;function vo(e,t){if(e=e.replace(t.subset?Dm(t.subset):Tm,r),t.subset||t.escapeOnly)return e;return e.replace(Am,a).replace(Cm,r);function a(n,s,i){return t.format((n.charCodeAt(0)-55296)*1024+n.charCodeAt(1)-56320+65536,i.charCodeAt(s+2),t)}function r(n,s,i){return t.format(n.charCodeAt(0),i.charCodeAt(s+1),t)}}function Dm(e){let t=Fi.get(e);return t||(t=zm(e),Fi.set(e,t)),t}function zm(e){const t=[];let a=-1;for(;++a<e.length;)t.push(e[a].replace(xm,"\\$&"));return new RegExp("(?:"+t.join("|")+")","g")}const Sm=/[\dA-Fa-f]/;function Im(e,t,a){const r="&#x"+e.toString(16).toUpperCase();return a&&t&&!Sm.test(String.fromCharCode(t))?r:r+";"}const Nm=/\d/;function Fm(e,t,a){const r="&#"+String(e);return a&&t&&!Nm.test(String.fromCharCode(t))?r:r+";"}const Po=["AElig","AMP","Aacute","Acirc","Agrave","Aring","Atilde","Auml","COPY","Ccedil","ETH","Eacute","Ecirc","Egrave","Euml","GT","Iacute","Icirc","Igrave","Iuml","LT","Ntilde","Oacute","Ocirc","Ograve","Oslash","Otilde","Ouml","QUOT","REG","THORN","Uacute","Ucirc","Ugrave","Uuml","Yacute","aacute","acirc","acute","aelig","agrave","amp","aring","atilde","auml","brvbar","ccedil","cedil","cent","copy","curren","deg","divide","eacute","ecirc","egrave","eth","euml","frac12","frac14","frac34","gt","iacute","icirc","iexcl","igrave","iquest","iuml","laquo","lt","macr","micro","middot","nbsp","not","ntilde","oacute","ocirc","ograve","ordf","ordm","oslash","otilde","ouml","para","plusmn","pound","quot","raquo","reg","sect","shy","sup1","sup2","sup3","szlig","thorn","times","uacute","ucirc","ugrave","uml","uuml","yacute","yen","yuml"],kr={nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"­",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",fnof:"ƒ",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",bull:"•",hellip:"…",prime:"′",Prime:"″",oline:"‾",frasl:"⁄",weierp:"℘",image:"ℑ",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦",quot:'"',amp:"&",lt:"<",gt:">",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",circ:"ˆ",tilde:"˜",ensp:" ",emsp:" ",thinsp:" ",zwnj:"‌",zwj:"‍",lrm:"‎",rlm:"‏",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",permil:"‰",lsaquo:"‹",rsaquo:"›",euro:"€"},Om=["cent","copy","divide","gt","lt","not","para","times"],Bo={}.hasOwnProperty,qr={};let Aa;for(Aa in kr)Bo.call(kr,Aa)&&(qr[kr[Aa]]=Aa);const Lm=/[^\dA-Za-z]/;function Rm(e,t,a,r){const n=String.fromCharCode(e);if(Bo.call(qr,n)){const s=qr[n],i="&"+s;return a&&Po.includes(s)&&!Om.includes(s)&&(!r||t&&t!==61&&Lm.test(String.fromCharCode(t)))?i:i+";"}return""}function vm(e,t,a){let r=Im(e,t,a.omitOptionalSemicolons),n;if((a.useNamedReferences||a.useShortestReferences)&&(n=Rm(e,t,a.omitOptionalSemicolons,a.attribute)),(a.useShortestReferences||!n)&&a.useShortestReferences){const s=Fm(e,t,a.omitOptionalSemicolons);s.length<r.length&&(r=s)}return n&&(!a.useShortestReferences||n.length<r.length)?n:r}function Pm(e){return"&#x"+e.toString(16).toUpperCase()+";"}function zj(e,t){return vo(e,Object.assign({format:vm},t))}function Bm(e,t){return vo(e,Object.assign({format:Pm},t))}const Oi={}.hasOwnProperty;function Mo(e,t){const a=t||{};function r(n,...s){let i=r.invalid;const o=r.handlers;if(n&&Oi.call(n,e)){const u=String(n[e]);i=Oi.call(o,u)?o[u]:r.unknown}if(i)return i.call(this,n,...s)}return r.handlers=a.handlers||{},r.invalid=a.invalid,r.unknown=a.unknown,r}function Mm(e,t,a,r){const n=a.enter("blockquote"),s=a.createTracker(r);s.move("> "),s.shift(2);const i=a.indentLines(a.containerFlow(e,s.current()),Um);return n(),i}function Um(e,t,a){return">"+(a?"":" ")+e}function Hm(e,t){return Li(e,t.inConstruct,!0)&&!Li(e,t.notInConstruct,!1)}function Li(e,t,a){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return a;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function Ri(e,t,a,r){let n=-1;for(;++n<a.unsafe.length;)if(a.unsafe[n].character===` +`&&Hm(a.stack,a.unsafe[n]))return/[ \t]/.test(r.before)?"":" ";return`\\ +`}function jm(e,t){const a=String(e);let r=a.indexOf(t),n=r,s=0,i=0;if(typeof t!="string")throw new TypeError("Expected substring");for(;r!==-1;)r===n?++s>i&&(i=s):s=1,n=r+t.length,r=a.indexOf(t,n);return i}function qm(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Ym(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function $m(e,t,a,r){const n=Ym(a),s=e.value||"",i=n==="`"?"GraveAccent":"Tilde";if(qm(e,a)){const h=a.enter("codeIndented"),f=a.indentLines(s,Wm);return h(),f}const o=a.createTracker(r),u=n.repeat(Math.max(jm(s,n)+1,3)),l=a.enter("codeFenced");let p=o.move(u);if(e.lang){const h=a.enter(`codeFencedLang${i}`);p+=o.move(a.safe(e.lang,{before:p,after:" ",encode:["`"],...o.current()})),h()}if(e.lang&&e.meta){const h=a.enter(`codeFencedMeta${i}`);p+=o.move(" "),p+=o.move(a.safe(e.meta,{before:p,after:` +`,encode:["`"],...o.current()})),h()}return p+=o.move(` +`),s&&(p+=o.move(s+` +`)),p+=o.move(u),l(),p}function Wm(e,t,a){return(a?"":" ")+e}function kn(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function Vm(e,t,a,r){const n=kn(a),s=n==='"'?"Quote":"Apostrophe",i=a.enter("definition");let o=a.enter("label");const u=a.createTracker(r);let l=u.move("[");return l+=u.move(a.safe(a.associationId(e),{before:l,after:"]",...u.current()})),l+=u.move("]: "),o(),!e.url||/[\0- \u007F]/.test(e.url)?(o=a.enter("destinationLiteral"),l+=u.move("<"),l+=u.move(a.safe(e.url,{before:l,after:">",...u.current()})),l+=u.move(">")):(o=a.enter("destinationRaw"),l+=u.move(a.safe(e.url,{before:l,after:e.title?" ":` +`,...u.current()}))),o(),e.title&&(o=a.enter(`title${s}`),l+=u.move(" "+n),l+=u.move(a.safe(e.title,{before:l,after:n,...u.current()})),l+=u.move(n),o()),i(),l}function Gm(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}Uo.peek=Qm;function Uo(e,t,a,r){const n=Gm(a),s=a.enter("emphasis"),i=a.createTracker(r);let o=i.move(n);return o+=i.move(a.containerPhrasing(e,{before:o,after:n,...i.current()})),o+=i.move(n),s(),o}function Qm(e,t,a){return a.options.emphasis||"*"}function Km(e,t){let a=!1;return Ze(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return a=!0,vr}),!!((!e.depth||e.depth<3)&&sn(e)&&(t.options.setext||a))}function Xm(e,t,a,r){const n=Math.max(Math.min(6,e.depth||1),1),s=a.createTracker(r);if(Km(e,a)){const p=a.enter("headingSetext"),h=a.enter("phrasing"),f=a.containerPhrasing(e,{...s.current(),before:` +`,after:` +`});return h(),p(),f+` +`+(n===1?"=":"-").repeat(f.length-(Math.max(f.lastIndexOf("\r"),f.lastIndexOf(` +`))+1))}const i="#".repeat(n),o=a.enter("headingAtx"),u=a.enter("phrasing");s.move(i+" ");let l=a.containerPhrasing(e,{before:"# ",after:` +`,...s.current()});return/^[\t ]/.test(l)&&(l="&#x"+l.charCodeAt(0).toString(16).toUpperCase()+";"+l.slice(1)),l=l?i+" "+l:i,a.options.closeAtx&&(l+=" "+i),u(),o(),l}Ho.peek=Jm;function Ho(e){return e.value||""}function Jm(){return"<"}jo.peek=Zm;function jo(e,t,a,r){const n=kn(a),s=n==='"'?"Quote":"Apostrophe",i=a.enter("image");let o=a.enter("label");const u=a.createTracker(r);let l=u.move("![");return l+=u.move(a.safe(e.alt,{before:l,after:"]",...u.current()})),l+=u.move("]("),o(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(o=a.enter("destinationLiteral"),l+=u.move("<"),l+=u.move(a.safe(e.url,{before:l,after:">",...u.current()})),l+=u.move(">")):(o=a.enter("destinationRaw"),l+=u.move(a.safe(e.url,{before:l,after:e.title?" ":")",...u.current()}))),o(),e.title&&(o=a.enter(`title${s}`),l+=u.move(" "+n),l+=u.move(a.safe(e.title,{before:l,after:n,...u.current()})),l+=u.move(n),o()),l+=u.move(")"),i(),l}function Zm(){return"!"}qo.peek=e_;function qo(e,t,a,r){const n=e.referenceType,s=a.enter("imageReference");let i=a.enter("label");const o=a.createTracker(r);let u=o.move("![");const l=a.safe(e.alt,{before:u,after:"]",...o.current()});u+=o.move(l+"]["),i();const p=a.stack;a.stack=[],i=a.enter("reference");const h=a.safe(a.associationId(e),{before:u,after:"]",...o.current()});return i(),a.stack=p,s(),n==="full"||!l||l!==h?u+=o.move(h+"]"):n==="shortcut"?u=u.slice(0,-1):u+=o.move("]"),u}function e_(){return"!"}Yo.peek=t_;function Yo(e,t,a){let r=e.value||"",n="`",s=-1;for(;new RegExp("(^|[^`])"+n+"([^`]|$)").test(r);)n+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++s<a.unsafe.length;){const i=a.unsafe[s],o=a.compilePattern(i);let u;if(i.atBreak)for(;u=o.exec(r);){let l=u.index;r.charCodeAt(l)===10&&r.charCodeAt(l-1)===13&&l--,r=r.slice(0,l)+" "+r.slice(u.index+1)}}return n+r+n}function t_(){return"`"}function $o(e,t){const a=sn(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(a===e.url||"mailto:"+a===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}Wo.peek=a_;function Wo(e,t,a,r){const n=kn(a),s=n==='"'?"Quote":"Apostrophe",i=a.createTracker(r);let o,u;if($o(e,a)){const p=a.stack;a.stack=[],o=a.enter("autolink");let h=i.move("<");return h+=i.move(a.containerPhrasing(e,{before:h,after:">",...i.current()})),h+=i.move(">"),o(),a.stack=p,h}o=a.enter("link"),u=a.enter("label");let l=i.move("[");return l+=i.move(a.containerPhrasing(e,{before:l,after:"](",...i.current()})),l+=i.move("]("),u(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(u=a.enter("destinationLiteral"),l+=i.move("<"),l+=i.move(a.safe(e.url,{before:l,after:">",...i.current()})),l+=i.move(">")):(u=a.enter("destinationRaw"),l+=i.move(a.safe(e.url,{before:l,after:e.title?" ":")",...i.current()}))),u(),e.title&&(u=a.enter(`title${s}`),l+=i.move(" "+n),l+=i.move(a.safe(e.title,{before:l,after:n,...i.current()})),l+=i.move(n),u()),l+=i.move(")"),o(),l}function a_(e,t,a){return $o(e,a)?"<":"["}Vo.peek=r_;function Vo(e,t,a,r){const n=e.referenceType,s=a.enter("linkReference");let i=a.enter("label");const o=a.createTracker(r);let u=o.move("[");const l=a.containerPhrasing(e,{before:u,after:"]",...o.current()});u+=o.move(l+"]["),i();const p=a.stack;a.stack=[],i=a.enter("reference");const h=a.safe(a.associationId(e),{before:u,after:"]",...o.current()});return i(),a.stack=p,s(),n==="full"||!l||l!==h?u+=o.move(h+"]"):n==="shortcut"?u=u.slice(0,-1):u+=o.move("]"),u}function r_(){return"["}function bn(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function n_(e){const t=bn(e),a=e.options.bulletOther;if(!a)return t==="*"?"-":"*";if(a!=="*"&&a!=="+"&&a!=="-")throw new Error("Cannot serialize items with `"+a+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(a===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+a+"`) to be different");return a}function i_(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function Go(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function s_(e,t,a,r){const n=a.enter("list"),s=a.bulletCurrent;let i=e.ordered?i_(a):bn(a);const o=e.ordered?i==="."?")":".":n_(a);let u=t&&a.bulletLastUsed?i===a.bulletLastUsed:!1;if(!e.ordered){const p=e.children?e.children[0]:void 0;if((i==="*"||i==="-")&&p&&(!p.children||!p.children[0])&&a.stack[a.stack.length-1]==="list"&&a.stack[a.stack.length-2]==="listItem"&&a.stack[a.stack.length-3]==="list"&&a.stack[a.stack.length-4]==="listItem"&&a.indexStack[a.indexStack.length-1]===0&&a.indexStack[a.indexStack.length-2]===0&&a.indexStack[a.indexStack.length-3]===0&&(u=!0),Go(a)===i&&p){let h=-1;for(;++h<e.children.length;){const f=e.children[h];if(f&&f.type==="listItem"&&f.children&&f.children[0]&&f.children[0].type==="thematicBreak"){u=!0;break}}}}u&&(i=o),a.bulletCurrent=i;const l=a.containerFlow(e,r);return a.bulletLastUsed=i,a.bulletCurrent=s,n(),l}function o_(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function c_(e,t,a,r){const n=o_(a);let s=a.bulletCurrent||bn(a);t&&t.type==="list"&&t.ordered&&(s=(typeof t.start=="number"&&t.start>-1?t.start:1)+(a.options.incrementListMarker===!1?0:t.children.indexOf(e))+s);let i=s.length+1;(n==="tab"||n==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(i=Math.ceil(i/4)*4);const o=a.createTracker(r);o.move(s+" ".repeat(i-s.length)),o.shift(i);const u=a.enter("listItem"),l=a.indentLines(a.containerFlow(e,o.current()),p);return u(),l;function p(h,f,m){return f?(m?"":" ".repeat(i))+h:(m?s:s+" ".repeat(i-s.length))+h}}function u_(e,t,a,r){const n=a.enter("paragraph"),s=a.enter("phrasing"),i=a.containerPhrasing(e,r);return s(),n(),i}const l_=Za(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function f_(e,t,a,r){return(e.children.some(function(i){return l_(i)})?a.containerPhrasing:a.containerFlow).call(a,e,r)}function h_(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}Qo.peek=d_;function Qo(e,t,a,r){const n=h_(a),s=a.enter("strong"),i=a.createTracker(r);let o=i.move(n+n);return o+=i.move(a.containerPhrasing(e,{before:o,after:n,...i.current()})),o+=i.move(n+n),s(),o}function d_(e,t,a){return a.options.strong||"*"}function p_(e,t,a,r){return a.safe(e.value,r)}function m_(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function __(e,t,a){const r=(Go(a)+(a.options.ruleSpaces?" ":"")).repeat(m_(a));return a.options.ruleSpaces?r.slice(0,-1):r}const gt={blockquote:Mm,break:Ri,code:$m,definition:Vm,emphasis:Uo,hardBreak:Ri,heading:Xm,html:Ho,image:jo,imageReference:qo,inlineCode:Yo,link:Wo,linkReference:Vo,list:s_,listItem:c_,paragraph:u_,root:f_,strong:Qo,text:p_,thematicBreak:__},vi={0:"�",128:"€",130:"‚",131:"ƒ",132:"„",133:"…",134:"†",135:"‡",136:"ˆ",137:"‰",138:"Š",139:"‹",140:"Œ",142:"Ž",145:"‘",146:"’",147:"“",148:"”",149:"•",150:"–",151:"—",152:"˜",153:"™",154:"š",155:"›",156:"œ",158:"ž",159:"Ÿ"};function Ko(e){const t=typeof e=="string"?e.charCodeAt(0):e;return t>=48&&t<=57}function g_(e){const t=typeof e=="string"?e.charCodeAt(0):e;return t>=97&&t<=102||t>=65&&t<=70||t>=48&&t<=57}function y_(e){const t=typeof e=="string"?e.charCodeAt(0):e;return t>=97&&t<=122||t>=65&&t<=90}function Pi(e){return y_(e)||Ko(e)}const St=String.fromCharCode,k_=["","Named character references must be terminated by a semicolon","Numeric character references must be terminated by a semicolon","Named character references cannot be empty","Numeric character references cannot be empty","Named character references must be known","Numeric character references cannot be disallowed","Numeric character references cannot be outside the permissible Unicode range"];function br(e,t={}){const a=typeof t.additional=="string"?t.additional.charCodeAt(0):t.additional,r=[];let n=0,s=-1,i="",o,u;t.position&&("start"in t.position||"indent"in t.position?(u=t.position.indent,o=t.position.start):o=t.position);let l=(o?o.line:0)||1,p=(o?o.column:0)||1,h=m(),f;for(n--;++n<=e.length;)if(f===10&&(p=(u?u[s]:0)||1),f=e.charCodeAt(n),f===38){const C=e.charCodeAt(n+1);if(C===9||C===10||C===12||C===32||C===38||C===60||Number.isNaN(C)||a&&C===a){i+=St(f),p++;continue}const T=n+1;let I=T,O=T,M;if(C===35){O=++I;const B=e.charCodeAt(O);B===88||B===120?(M="hexadecimal",O=++I):M="decimal"}else M="named";let N="",d="",D="";const j=M==="named"?Pi:M==="decimal"?Ko:g_;for(O--;++O<=e.length;){const B=e.charCodeAt(O);if(!j(B))break;D+=St(B),M==="named"&&Po.includes(D)&&(N=D,d=oa(D))}let Y=e.charCodeAt(O)===59;if(Y){O++;const B=M==="named"?oa(D):!1;B&&(N=D,d=B)}let x=1+O-T,S="";if(!(!Y&&t.nonTerminated===!1))if(!D)M!=="named"&&g(4,x);else if(M==="named"){if(Y&&!d)g(5,1);else if(N!==D&&(O=I+N.length,x=1+O-I,Y=!1),!Y){const B=N?1:3;if(t.attribute){const Q=e.charCodeAt(O);Q===61?(g(B,x),d=""):Pi(Q)?d="":g(B,x)}else g(B,x)}S=d}else{Y||g(2,x);let B=Number.parseInt(D,M==="hexadecimal"?16:10);if(b_(B))g(7,x),S=St(65533);else if(B in vi)g(6,x),S=vi[B];else{let Q="";w_(B)&&g(6,x),B>65535&&(B-=65536,Q+=St(B>>>10|55296),B=56320|B&1023),S=Q+St(B)}}if(S){b(),h=m(),n=O-1,p+=O-T+1,r.push(S);const B=m();B.offset++,t.reference&&t.reference.call(t.referenceContext,S,{start:h,end:B},e.slice(T-1,O)),h=B}else D=e.slice(T-1,O),i+=D,p+=D.length,n=O-1}else f===10&&(l++,s++,p=0),Number.isNaN(f)?b():(i+=St(f),p++);return r.join("");function m(){return{line:l,column:p,offset:n+((o?o.offset:0)||0)}}function g(C,T){let I;t.warning&&(I=m(),I.column+=T,I.offset+=T,t.warning.call(t.warningContext,k_[C],I,C))}function b(){i&&(r.push(i),t.text&&t.text.call(t.textContext,i,{start:h,end:m()}),i="")}}function b_(e){return e>=55296&&e<=57343||e>1114111}function w_(e){return e>=1&&e<=8||e===11||e>=13&&e<=31||e>=127&&e<=159||e>=64976&&e<=65007||(e&65535)===65535||(e&65535)===65534}const Ha="---",E_="```yaml [props]";function T_(e,t=""){return Object.keys(e).length?(e=ar(e||{},{}),[Ha,yn.dump(e,{lineWidth:-1}).trim(),Ha,t].join(` +`)):""}function A_(e,t=""){return Object.keys(e).length?(e=ar(e||{},{}),[E_,yn.dump(e,{lineWidth:-1}).trim(),"```",t].join(` +`)):""}function Yr(e){let t={};if(e.startsWith(Ha)){const a=e.indexOf(` +`+Ha);if(a!==-1){const r=e.slice(4,a);r&&(t=yn.load(r),e=e.slice(a+4))}}return{content:e,data:ar(t||{},{})}}function ja(e){const t=e||{},a=t.now||{};let r=t.lineShift||0,n=a.line||1,s=a.column||1;return{move:u,current:i,shift:o};function i(){return{now:{line:n,column:s},lineShift:r}}function o(l){r+=l}function u(l=""){const p=l.split(/\r?\n|\r/g),h=p[p.length-1];return n+=p.length-1,s=p.length===1?s+h.length:1+h.length+r,l}}function C_(e,t,a={}){const r=t.indexStack,n=e.children||[],s=ja(a),i=[];let o=-1;for(r.push(-1);++o<n.length;){const u=n[o];r[r.length-1]=o,i.push(s.move(t.handle(u,e,t,{before:"",after:"",...s.current()})))}return r.pop(),i.join("")}function x_(e,t,a={}){const r=t.indexStack,n=e.children||[],s=ja(a),i=[];let o=-1;for(r.push(-1);++o<n.length;){const l=n[o];r[r.length-1]=o,i.push(s.move(t.handle(l,e,t,{before:` +`,after:` +`,...s.current()}))),l.type!=="list"&&(t.bulletLastUsed=void 0),o<n.length-1&&i.push(s.move(u(l,n[o+1])))}return r.pop(),i.join("");function u(l,p){let h=t.join.length;for(;h--;){const f=t.join[h](l,p,e,t);if(f===!0||f===1)break;if(typeof f=="number")return` +`.repeat(1+f);if(f===!1)return` + +<!----> + +`}return` + +`}}function D_(e,t,a){const r=t.indexStack,n=e.children||[],s=[];let i=-1,o=a.before;r.push(-1);let u=ja(a);for(;++i<n.length;){const l=n[i];let p;if(r[r.length-1]=i,i+1<n.length){let h=t.handle.handlers[n[i+1].type];h&&h.peek&&(h=h.peek),p=h?h(n[i+1],e,t,{before:"",after:"",...u.current()}).charAt(0):""}else p=a.after;s.length>0&&(o==="\r"||o===` +`)&&l.type==="html"&&(s[s.length-1]=s[s.length-1].replace(/(\r?\n|\r)$/," "),o=" ",u=ja(a),u.move(s.join(""))),s.push(u.move(t.handle(l,e,t,{...u.current(),before:o,after:p}))),o=s[s.length-1].slice(-1)}return r.pop(),s.join("")}function z_(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}const qa=["componentContainerSection","componentContainerDataSection","containerComponent","leafComponent"],S_={}.hasOwnProperty,Bi=/^[^\t\n\r "#'.<=>`}]+$/,I_=2;function Mi(e){if(!e._compiled){const t=(e.atBreak?"[\\r\\n][\\t ]*":"")+(e.before?"(?:"+e.before+")":"");e._compiled=new RegExp((t?"("+t+")":"")+(/[|\\{}()[\]^$+*?.-]/.test(e.character)?"\\":"")+e.character+(e.after?"(?:"+e.after+")":""),"g")}return e._compiled}const N_=(e={})=>{const t=p=>{var h,f;(h=e==null?void 0:e.experimental)!=null&&h.autoUnwrap&&(f=p.mdc)!=null&&f.unwrapped&&(p.children=[{type:p.mdc.unwrapped,children:p.children.filter(m=>!qa.includes(m.type))},...p.children.filter(m=>qa.includes(m.type))])};function a(p,h,f){return f.indexStack=f.stack,t(p),`#${p.name} +${u(p,f)}`.trim()}function r(p,h,f){let m;f.indexStack=f.stack;const g=f.enter(p.type);if(p.name==="span")m=`[${u(p,f)}]${o(p,f)}`;else if(p.name==="binding"){const b=p.attributes||{};m=b.defaultValue?`{{ ${b.value} || '${b.defaultValue}' }}`:`{{ ${b.value} }}`}else m=":"+(p.name||"")+i(p,f)+o(p,f);return g(),m}let n=0;function s(p,h,f){var N,d;f.indexStack=f.stack;const m=":".repeat(I_+n);n+=1;const g=f.enter(p.type);let b=m+(p.name||"")+i(p,f);const C=o(p,f),T=p.fmAttributes||{};(b+C).length>80||Object.keys(T).length>0||(N=p.children)!=null&&N.some(D=>D.type==="componentContainerSection")?Object.assign(T,p.attributes):b+=C;let I;if(Object.keys(T).length>0){const D=Object.entries(T).sort(([Y],[x])=>Y.localeCompare(x)).reduce((Y,[x,S])=>{if(x!=null&&x.startsWith(":")){try{S=JSON.parse(S)}catch{}x=x.slice(1)}return Y[x]=S,Y},{}),j=(d=e==null?void 0:e.experimental)!=null&&d.componentCodeBlockYamlProps?A_(D):T_(D);b+=` +`+j.trim()}const O=p.children.filter(D=>D.type!=="componentContainerSection"),M=p.children.filter(D=>D.type==="componentContainerSection");return p.children=[...O,...M],t(p),p.type==="containerComponent"&&(I=u(p,f),I&&(b+=` +`+I),b+=` +`+m,n>1&&(b=b.split(` +`).map(D=>" "+D).join(` +`))),n-=1,g(),b}s.peek=function(){return":"};function i(p,h){let f=p;if(p.type==="containerComponent"){if(!l(p))return"";f=p.children[0]}const m=h.enter("label"),g=h.enter(p.type+"Label"),b=D_(f,h,{before:"[",after:"]"});return g(),m(),b?"["+b+"]":""}function o(p,h){const f=z_(h),m=p.type==="textComponent"?[f]:[f,` +`,"\r"],g=Object.fromEntries(Object.entries(p.attributes||{}).sort(([D],[j])=>D.localeCompare(j))),b=[];let C,T="",I="",O,M,N;for(M in g)if(S_.call(g,M)&&g[M]!=null)if(O=String(g[M]),M==="id")C=Bi.test(O)?"#"+O:d("id",O);else if(M==="class"){for(O=O.split(/[\t\n\r ]+/g),T=[],I=[],N=-1;++N<O.length;)(Bi.test(O[N])?I:T).push(O[N]);T=T.length?d("class",T.join(" ")):"",I=I.length?"."+I.join("."):""}else M.startsWith(":")&&O==="true"?b.push(M.slice(1)):b.push(d(M,O));return T&&b.unshift(T),I&&b.unshift(I),C&&b.unshift(C),b.length?"{"+b.join(" ")+"}":"";function d(D,j){return D+"="+f+Bm(j,{subset:m})+f}}function u(p,h){const f=l(p)?Object.assign({},p,{children:p.children.slice(1)}):p;return p.type==="textComponent"?C_(f,h):x_(f,h)}function l(p){return p.children&&p.children[0]&&p.children[0].data&&p.children[0].data.componentLabel}return{compilePattern:Mi,unsafe:[{character:"\r",inConstruct:["leafComponentLabel","containerComponentLabel"]},{character:` +`,inConstruct:["leafComponentLabel","containerComponentLabel"]},{before:"[^:]",character:":",after:"[A-Za-z]",inConstruct:["phrasing"]},{atBreak:!0,character:":",after:":"}],handlers:{containerComponent:s,textComponent:r,componentContainerSection:a,image:(p,h,f,m)=>gt.image(p,h,f,m)+o(p,f),link:(p,h,f,m)=>gt.link(p,h,f,m)+o(p,f),strong:(p,h,f,m)=>gt.strong(p,h,f,m)+o(p,f),inlineCode:(p,h,f)=>(f.compilePattern=f.compilePattern||Mi,gt.inlineCode(p,h,f)+o(p,f)),emphasis:(p,h,f,m)=>gt.emphasis(p,h,f,m)+o(p,f)}}},F_=(e={})=>{const t=["textComponent"],a=v=>{var $;if(($=e.experimental)!=null&&$.autoUnwrap&&qa.includes(v.type)){const A=v.children.filter(X=>X.type!=="componentContainerSection");if(A.length===1&&!qa.includes(A[0].type)){const X=v.children.indexOf(A[0]);v.children.splice(X,1,...A[0].children),v.mdc=v.mdc||{},v.mdc.unwrapped=A[0].type}}},r={componentContainer:o,componentContainerSection:l,componentContainerDataSection:p,componentContainerAttributes:d,componentContainerLabel:M,bindingContent:s,componentLeaf:g,componentLeafAttributes:d,componentText:C,textSpan:b,componentTextAttributes:d},n={bindingContent:i,componentContainerSectionTitle:m,listUnordered:Q,listOrdered:Q,listItem:Q,componentContainerSection:h,componentContainerDataSection:f,componentContainer:u,componentContainerAttributeClassValue:j,componentContainerAttributeIdValue:D,componentContainerAttributeName:x,componentContainerAttributeValue:Y,componentContainerAttributes:S,componentContainerLabel:N,componentContainerName:I,componentContainerAttributeInitializerMarker(){const v=this.data.componentAttributes;v[v.length-1][1]=""},componentLeaf:B,componentLeafAttributeClassValue:j,componentLeafAttributeIdValue:D,componentLeafAttributeName:x,componentLeafAttributeValue:Y,componentLeafAttributes:S,componentLeafName:O,componentText:B,textSpan:B,componentTextAttributeClassValue:j,componentTextAttributeIdValue:D,componentTextAttributeName:x,componentTextAttributeValue:Y,componentTextAttributes:S,componentTextName:I};function s(v){var X;const A=/([^|]*)(?:\|\|\s*'(.*)')?/.exec(this.sliceSerialize(v));this.enter({type:"textComponent",name:"binding",attributes:{value:(X=A==null?void 0:A[1])==null?void 0:X.trim(),defaultValue:A==null?void 0:A[2]}},v)}function i(v){this.exit(v)}function o(v){T.call(this,"containerComponent",v)}function u(v){const $=this.stack[this.stack.length-1];if($.children.length>1){const A=$.children.find(X=>X.rawData);$.rawData=A==null?void 0:A.rawData}a($),$.children=$.children.flatMap(A=>{var X,ie;return A.rawData?[]:A.name==="default"||!A.name?((X=A.mdc)!=null&&X.unwrapped&&($.mdc=$.mdc||{},$.mdc.unwrapped=(ie=A.mdc)==null?void 0:ie.unwrapped),A.children):(A.data={hName:"component-slot",hProperties:{...A.attributes,[`v-slot:${A.name}`]:""}},A)}),this.exit(v)}function l(v){T.call(this,"componentContainerSection",v)}function p(v){T.call(this,"componentContainerDataSection",v)}function h(v){const $=this.stack[this.stack.length-1];te.call(this,$),a($),this.exit(v)}function f(v){let $=this.stack[this.stack.length-1];$=te.call(this,$),$.type==="componentContainerDataSection"&&($.rawData=this.sliceSerialize(v),this.exit(v))}function m(v){var $;this.stack[this.stack.length-1].name=($=this.sliceSerialize(v))==null?void 0:$.trim()}function g(v){T.call(this,"leafComponent",v)}function b(v){this.enter({type:"textComponent",name:"span",attributes:{},children:[]},v)}function C(v){T.call(this,"textComponent",v)}function T(v,$){this.enter({type:v,name:"",attributes:{},children:[]},$)}function I(v){this.stack[this.stack.length-1].name=ia(this.sliceSerialize(v))}function O(v){this.stack[this.stack.length-1].name=this.sliceSerialize(v)}function M(v){this.enter({type:"paragraph",data:{componentLabel:!0},children:[]},v)}function N(v){this.exit(v)}function d(){this.data.componentAttributes=[],this.buffer()}function D(v){this.data.componentAttributes.push(["id",br(this.sliceSerialize(v))])}function j(v){this.data.componentAttributes.push(["class",br(this.sliceSerialize(v))])}function Y(v){const $=this.data.componentAttributes;$[$.length-1][1]=br(this.sliceSerialize(v))}function x(v){this.data.componentAttributes.push([this.sliceSerialize(v),!0])}function S(){var w,Te;const v=this.data.componentAttributes,$={};let A=-1,X;for(;++A<v.length;){X=v[A];const Se=ia(X[0]);Se==="class"&&$.class?$.class+=" "+X[1]:$[Se]=X[1]}this.data.componentAttributes=v,this.resume();let ie=this.stack[this.stack.length-1];if(ie.type!=="textComponent"||ie.name==="span")for(;!((w=ie.position)!=null&&w.end)&&((Te=ie.children)==null?void 0:Te.length)>0;)ie=ie.children[ie.children.length-1];ie.attributes=$}function B(v){this.exit(v)}function Q(v){const[$]=this.tokenStack[this.tokenStack.length-1];$.type===v.type&&this.exit(v)}function te(v){for(;v.type==="listItem"||v.type==="list";){const[$]=this.tokenStack[this.tokenStack.length-1];this.exit($),v=this.stack[this.stack.length-1]}return v}return{canContainEols:t,enter:r,exit:n}},O_=2,L_=3,Ui=35,R_=1,R={EOF:null,space:32,quotationMark:34,hash:35,apostrophe:39,openingParentheses:40,closingParentheses:41,star:42,comma:44,dash:45,dot:46,colon:58,LessThan:60,equals:61,greaterThan:62,uppercaseX:88,openingSquareBracket:91,backSlash:92,closingSquareBracket:93,underscore:95,backTick:96,lowercaseX:120,openingCurlyBracket:123,closingCurlyBracket:125};function wn(e,t,a,r,n,s,i){let o=0,u=0;return l;function l(b){if(b!==R.openingSquareBracket)throw new Error("expected `[`");return e.enter(r),e.enter(n),e.consume(b),e.exit(n),p}function p(b){return b===R.closingSquareBracket?(e.enter(n),e.consume(b),e.exit(n),e.exit(r),t):(e.enter(s),h(b))}function h(b){return b===R.EOF||o>999?a(b):b===R.closingSquareBracket&&!u--?m(b):W(b)?i?a(b):(e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),h):(e.enter("chunkText",{contentType:"text"}),f(b))}function f(b){return b===R.EOF||W(b)||o>999?(e.exit("chunkText"),h(b)):b===R.openingSquareBracket&&++u>3?a(b):b===R.closingSquareBracket&&!u--?(e.exit("chunkText"),m(b)):(e.consume(b),b===R.backSlash?g:f)}function m(b){return e.exit(s),e.enter(n),e.consume(b),e.exit(n),e.exit(r),t}function g(b){return b===R.openingSquareBracket||b===R.backSlash||b===R.closingSquareBracket?(e.consume(b),o++,f):f(b)}}const v_={tokenize:U_,partial:!0},P_={tokenize:j_,partial:!0},B_={tokenize:q_,partial:!0};function M_(e,t,a){const r=this;return n;function n(u){if(u!==R.openingSquareBracket)throw new Error("expected `[`");return r.previous===R.EOF&&r._gfmTasklistFirstContentOfListItem?e.check(P_,a,s)(u):r.previous===R.openingSquareBracket?a(u):e.check(B_,a,s)(u)}function s(u){return e.enter("textSpan"),e.attempt(v_,i,a)(u)}function i(u){return u===R.openingParentheses||u===R.openingSquareBracket?a(u):o(u)}function o(u){return e.exit("textSpan"),t(u)}}function U_(e,t,a){return wn(e,t,a,"componentTextLabel","componentTextLabelMarker","componentTextLabelString")}const H_={tokenize:M_};function j_(e,t,a){return r;function r(s){return e.enter("formGfmTaskCheckbox"),e.consume(s),n}function n(s){return K(s)||s===R.uppercaseX||s===R.lowercaseX?(e.consume(s),n):s===R.closingSquareBracket?(e.exit("formGfmTaskCheckbox"),t(s)):a(s)}}function q_(e,t,a){return r;function r(s){return e.enter("doubleBracket"),e.consume(s),n}function n(s){return s!==R.openingSquareBracket?a(s):(e.exit("doubleBracket"),t(s))}}function En(e,t,a,r,n,s,i,o,u,l,p,h,f,m,g){let b,C;return T;function T(A){return e.enter(r),e.enter(n),e.consume(A),e.exit(n),I}function I(A){return A===R.hash?(b=i,O(A)):A===R.dot?(b=o,O(A)):A===R.colon||A===R.underscore||_e(A)?(e.enter(s),e.enter(u),e.consume(A),A===R.colon?d:j):g&&K(A)?G(e,I,"whitespace")(A):!g&&ae(A)?qe(e,I)(A):$(A)}function O(A){return e.enter(s),e.enter(b),e.enter(b+"Marker"),e.consume(A),e.exit(b+"Marker"),M}function M(A){return A===R.EOF||A===R.quotationMark||A===R.hash||A===R.apostrophe||A===R.dot||A===R.LessThan||A===R.equals||A===R.greaterThan||A===R.backTick||A===R.closingCurlyBracket||ae(A)?a(A):(e.enter(b+"Value"),e.consume(A),N)}function N(A){return A===R.EOF||A===R.quotationMark||A===R.apostrophe||A===R.LessThan||A===R.equals||A===R.greaterThan||A===R.backTick?a(A):A===R.hash||A===R.dot||A===R.closingCurlyBracket||ae(A)?(e.exit(b+"Value"),e.exit(b),e.exit(s),I(A)):(e.consume(A),N)}function d(A){return A===R.dash||pe(A)?(e.consume(A),d):(e.exit(u),g&&K(A)?G(e,D,"whitespace")(A):!g&&ae(A)?qe(e,D)(A):D(A))}function D(A){return A===R.equals?(e.enter(l),e.consume(A),e.exit(l),x):(e.exit(s),a(A))}function j(A){return A===R.dash||A===R.dot||A===R.colon||A===R.underscore||pe(A)?(e.consume(A),j):(e.exit(u),g&&K(A)?G(e,Y,"whitespace")(A):!g&&ae(A)?qe(e,Y)(A):Y(A))}function Y(A){return A===R.equals?(e.enter(l),e.consume(A),e.exit(l),x):(e.exit(s),I(A))}function x(A){return A===R.EOF||A===R.LessThan||A===R.equals||A===R.greaterThan||A===R.backTick||A===R.closingCurlyBracket||g&&W(A)?a(A):A===R.quotationMark||A===R.apostrophe?(e.enter(p),e.enter(f),e.consume(A),e.exit(f),C=A,B):g&&K(A)?G(e,x,"whitespace")(A):!g&&ae(A)?qe(e,x)(A):(e.enter(h),e.enter(m),e.consume(A),C=void 0,S)}function S(A){return A===R.EOF||A===R.quotationMark||A===R.apostrophe||A===R.LessThan||A===R.equals||A===R.greaterThan||A===R.backTick?a(A):A===R.closingCurlyBracket||ae(A)?(e.exit(m),e.exit(h),e.exit(s),I(A)):(e.consume(A),S)}function B(A){return A===C?(e.enter(f),e.consume(A),e.exit(f),e.exit(p),e.exit(s),v):(e.enter(h),Q(A))}function Q(A){return A===C?(e.exit(h),B(A)):A===R.EOF?a(A):W(A)?g?a(A):qe(e,Q)(A):(e.enter(m),e.consume(A),te)}function te(A){return A===C||A===R.EOF||W(A)?(e.exit(m),Q(A)):(e.consume(A),te)}function v(A){return A===R.closingCurlyBracket||ae(A)?I(A):$(A)}function $(A){return A===R.closingCurlyBracket?(e.enter(n),e.consume(A),e.exit(n),e.exit(r),t):a(A)}}const Y_={tokenize:V_,partial:!0},$_=["textSpan","attentionSequence","codeText","link","image"];function W_(e,t,a){const r=this;return n;function n(s){if(s!==R.openingCurlyBracket)throw new Error("expected `{`");const i=r.events[r.events.length-1];return W(r.previous)||!i||!$_.includes(i[1].type)?a(s):e.attempt(Y_,t,a)(s)}}function V_(e,t,a){return En(e,t,a,"componentTextAttributes","componentTextAttributesMarker","componentTextAttribute","componentTextAttributeId","componentTextAttributeClass","componentTextAttributeName","componentTextAttributeInitializerMarker","componentTextAttributeValueLiteral","componentTextAttributeValue","componentTextAttributeValueMarker","componentTextAttributeValueData")}const G_={tokenize:W_};function Q_(e,t,a){return r;function r(s){return s!==R.closingCurlyBracket?a(s):(e.exit("bindingContent"),e.enter("bindingFence"),e.consume(s),n)}function n(s){return s!==R.closingCurlyBracket?a(s):(e.consume(s),e.exit("bindingFence"),t)}}function K_(e,t,a){return r;function r(o){if(o!==R.openingCurlyBracket)throw new Error("expected `{`");return e.enter("bindingFence"),e.consume(o),n}function n(o){return o!==R.openingCurlyBracket?a(o):(e.consume(o),e.exit("bindingFence"),e.enter("bindingContent"),s)}function s(o){return o===R.closingCurlyBracket?e.attempt({tokenize:Q_,partial:!0},i,u=>(e.consume(u),s))(o):(e.consume(o),s)}function i(o){return t(o)}}const X_={tokenize:K_};function Xo(e,t,a,r){const n=this;return s;function s(o){return _e(o)?(e.enter(r),e.consume(o),i):a(o)}function i(o){return o===R.dash||o===R.underscore||pe(o)?(e.consume(o),i):(e.exit(r),n.previous===R.underscore?a(o):t(o))}}const Hi={tokenize:Z_,partial:!0},ji={tokenize:eg,partial:!0};function Jo(e){return e!==R.colon||this.events[this.events.length-1][1].type==="characterEscape"}function J_(e,t,a){const r=this;return n;function n(l){if(l!==R.colon)throw new Error("expected `:`");if(r.previous!==null&&!ae(r.previous)&&![R.openingSquareBracket,R.star,R.underscore].includes(r.previous))return a(l);if(!Jo.call(r,r.previous))throw new Error("expected correct previous");return e.enter("componentText"),e.enter("componentTextMarker"),e.consume(l),e.exit("componentTextMarker"),Xo.call(r,e,s,a,"componentTextName")}function s(l){return l===R.colon?a(l):l===R.openingSquareBracket?e.attempt(Hi,o,o)(l):l===R.openingCurlyBracket?e.attempt(ji,i,i)(l):u(l)}function i(l){return l===R.openingSquareBracket?e.attempt(Hi,o,o)(l):u(l)}function o(l){return l===R.openingCurlyBracket?e.attempt(ji,u,u)(l):u(l)}function u(l){return e.exit("componentText"),t(l)}}function Z_(e,t,a){return wn(e,t,a,"componentTextLabel","componentTextLabelMarker","componentTextLabelString")}function eg(e,t,a){return En(e,t,a,"componentTextAttributes","componentTextAttributesMarker","componentTextAttribute","componentTextAttributeId","componentTextAttributeClass","componentTextAttributeName","componentTextAttributeInitializerMarker","componentTextAttributeValueLiteral","componentTextAttributeValue","componentTextAttributeValueMarker","componentTextAttributeValueData")}const Zo={tokenize:J_,previous:Jo};function ec(e){let t=-1,a=0;for(;++t<e.length;)a+=typeof e[t]=="string"?e[t].length:1;return a}function tg(e,t){const a=e[e.length-1];return!a||a[1].type!==t?0:ec(a[2].sliceStream(a[1]))}function $r(e){let t=0,a=e.length-1,r=e[a];for(;a>=0&&r&&r[1].type==="linePrefix"&&r[0]==="exit";)t+=ec(r[2].sliceStream(r[1])),a-=1,r=e[a];return t}const ag=e=>{const t={isOpen:!1,enter:a=>{const r=t.isOpen;return t.exit(a),a.enter(e),t.isOpen=!0,()=>{t.isOpen=r}},enterOnce:a=>{const r=t.isOpen;return t.isOpen||(a.enter(e),t.isOpen=!0),()=>{t.isOpen=r}},exit:a=>{const r=t.isOpen;return t.isOpen&&(a.exit(e),t.isOpen=!1),()=>{t.isOpen=r}}};return t},rg={tokenize:ng,partial:!0};function ng(e,t,a){let r=0;return n;function n(i){return e.enter("codeFenced"),s(i)}function s(i){return i===R.backTick?(r++,e.consume(i),s):(e.exit("codeFenced"),r>=3?t(i):a(i))}}function ig(e,t,a,r,n){let s;return e.attempt({tokenize:i,partial:!0},o,r);function i(h,f,m){const g=this;let b=0,C=0;return I;function T(M){return K(M)?(h.consume(M),C+=1,T):(h.exit("space"),I(M))}function I(M){return K(M)?(h.enter("space"),T(M)):(C===0&&(C=$r(g.events)),h.enter("componentContainerSectionSequence"),O(M))}function O(M){return M===R.dash||K(M)?(h.consume(M),b++,O):b<L_||C!==n||!W(M)?m(M):(h.exit("componentContainerSectionSequence"),G(h,f,"whitespace")(M))}}function o(h){return e.enter("componentContainerDataSection"),e.attempt({tokenize:i,partial:!0},p,u)(h)}function u(h){if(h===null)return e.exit("componentContainerDataSection"),e.exit("componentContainer"),t(h);const f=e.enter("chunkDocument",{contentType:"document",previous:s});return s&&(s.next=f),s=f,l(h)}function l(h){return h===null?(e.exit("chunkDocument"),e.exit("componentContainerDataSection"),e.exit("componentContainer"),t(h)):W(h)?(e.consume(h),e.exit("chunkDocument"),e.attempt({tokenize:i,partial:!0},p,u)):(e.consume(h),l)}function p(h){return e.exit("componentContainerDataSection"),G(e,r,"whitespace")(h)}}const sg={tokenize:ug,partial:!0},og={tokenize:lg,partial:!0};function cg(e,t,a){const r=this,n=$r(this.events);let s=0,i;const o=[];let u=!0,l=!1;const p=ag("componentContainerSection");return h;function h(S){if(S!==R.colon)throw new Error("expected `:`");return e.enter("componentContainer"),e.enter("componentContainerFence"),e.enter("componentContainerSequence"),b(S)}function f(S,B,Q){let te=0,v=0,$;return A;function A(ie){return v=$r(r.events),$=p.exit(S),S.enter("componentContainerSectionSequence"),X(ie)}function X(ie){return ie===Ui?(S.consume(ie),te++,X):te!==R_||v!==n||!_e(ie)?($(),Q(ie)):(S.exit("componentContainerSectionSequence"),G(S,B,"whitespace")(ie))}}function m(S){return p.enter(e),W(S)?G(e,d,"whitespace")(S):(e.enter("componentContainerSectionTitle"),g(S))}function g(S){return W(S)?(e.exit("componentContainerSectionTitle"),G(e,d,"linePrefix",4)(S)):(e.consume(S),g)}function b(S){return S===R.colon?(e.consume(S),s++,b):s<O_?a(S):(e.exit("componentContainerSequence"),Xo.call(r,e,C,a,"componentContainerName")(S))}function C(S){return S===R.openingSquareBracket?e.attempt(sg,T,T)(S):T(S)}function T(S){return S===R.openingCurlyBracket?e.attempt(og,I,I)(S):I(S)}function I(S){return G(e,O,"whitespace")(S)}function O(S){return e.exit("componentContainerFence"),S===null?(e.exit("componentContainer"),t(S)):W(S)?(e.enter("lineEnding"),e.consume(S),e.exit("lineEnding"),r.interrupt?t:M):a(S)}function M(S){return S===null?(e.exit("componentContainer"),t(S)):u&&(S===R.dash||K(S))?(u=!1,ig(e,t,a,M,n)(S)):(e.enter("componentContainerContent"),d(S))}function N(S){return S===null?Y(S):S===R.backTick?e.check(rg,B=>(l=!l,D(B)),D)(S):l?D(S):!o.length&&(S===Ui||S===R.space)?e.attempt({tokenize:f,partial:!0},m,D)(S):S===R.colon?e.attempt({tokenize:x,partial:!0},Y,D)(S):D(S)}function d(S){return S===null?Y(S):n?G(e,N,"linePrefix",n+1)(S):N(S)}function D(S){if(S===null)return Y(S);p.enterOnce(e);const B=e.enter("chunkDocument",{contentType:"document",previous:i});return i&&(i.next=B),i=B,j(S)}function j(S){return S===null?(e.exit("chunkDocument"),Y(S)):W(S)?(e.consume(S),e.exit("chunkDocument"),d):(e.consume(S),j)}function Y(S){return p.exit(e),e.exit("componentContainerContent"),e.exit("componentContainer"),t(S)}function x(S,B,Q){let te=0;return G(S,v,"linePrefix",4);function v(X){return S.enter("componentContainerFence"),S.enter("componentContainerSequence"),$(X)}function $(X){return X===R.colon?(S.consume(X),te++,$):o.length?(te===o[o.length-1]&&o.pop(),Q(X)):te!==s?Q(X):(S.exit("componentContainerSequence"),G(S,A,"whitespace")(X))}function A(X){return X===null||W(X)?(S.exit("componentContainerFence"),B(X)):(o.push(te),Q(X))}}}function ug(e,t,a){return wn(e,t,a,"componentContainerLabel","componentContainerLabelMarker","componentContainerLabelString",!0)}function lg(e,t,a){return En(e,t,a,"componentContainerAttributes","componentContainerAttributesMarker","componentContainerAttribute","componentContainerAttributeId","componentContainerAttributeClass","componentContainerAttributeName","componentContainerAttributeInitializerMarker","componentContainerAttributeValueLiteral","componentContainerAttributeValue","componentContainerAttributeValueMarker","componentContainerAttributeValueData",!0)}const tc={tokenize:cg,concrete:!0};function fg(e,t,a){const r=this;return G(e,n,"linePrefix");function n(s){if(tg(r.events,"linePrefix")<4)return a(s);switch(s){case R.backTick:return Rr.tokenize.call(r,e,t,a)(s);case R.colon:return tc.tokenize.call(r,e,t,a)(s);default:return a(s)}}}const wr={tokenize:fg};function hg(e,t,a){const r=this,n=Zo.tokenize.call(r,e,G(e,i,"linePrefix"),a);return G(e,s,"linePrefix");function s(o){return o===R.colon?n(o):a(o)}function i(o){return W(o)||o===R.EOF?t(o):a(o)}}const dg={tokenize:hg};function pg(){return{text:{[R.colon]:Zo,[R.openingSquareBracket]:[H_],[R.openingCurlyBracket]:[X_,G_]},flow:{[R.colon]:[tc,dg]},flowInitial:{"-2":wr,"-1":wr,[R.space]:wr}}}const qi=e=>`--- +${e} +---`,mg=function(e={}){var r;const t=this.data();a("micromarkExtensions",pg()),a("fromMarkdownExtensions",F_(e)),a("toMarkdownExtensions",N_(e));function a(n,s){t[n]||(t[n]=[]),t[n].push(s)}return(r=e==null?void 0:e.components)!=null&&r.length?async(n,{data:s})=>{const i=[];return Ze(n,["textComponent","leafComponent","containerComponent"],o=>{Yi(o);const{instance:u,options:l}=e.components.find(p=>p.name===o.name)||{};u&&i.push(u(l)(o,s))}),await Promise.all(i),n}:n=>{Ze(n,["textComponent","leafComponent","containerComponent"],s=>{Yi(s)})}};function Yi(e){const t=e.data||(e.data={});e.fmAttributes=_g(e),t.hName=ia(e.name),t.hProperties=gg({...e.attributes,...e.fmAttributes})}function _g(e){var t;if(e.rawData){const a=e.rawData.replace(/\s-+$/,""),{data:r}=Yr(qi(a));return r}if((t=e.children)!=null&&t.length&&e.children[0].type==="code"&&e.children[0].lang==="yaml"&&e.children[0].meta==="[props]"){const a=e.children[0].value,{data:r}=Yr(qi(a));return e.rawData=a+` +---`,e.children.splice(0,1),r}return{}}function gg(e){const t=Object.entries(e).map(([a,r])=>a.startsWith(":")?[a,r]:typeof r=="string"?[a,r]:[`:${a}`,JSON.stringify(r)]);return Object.fromEntries(t)}const $i=async(e,t={})=>{const a=Object.entries(t).filter(r=>r[1]!==!1);for(const r of a){const n=r[1].instance||await import(r[0]).then(s=>s.default||s);e.use(n,r[1].options)}};var Wr={exports:{}};(function(e,t){Object.defineProperty(t,"__esModule",{value:!0});const a=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array","BigInt64Array","BigUint64Array"];function r(d){return a.includes(d)}const n=["Function","Generator","AsyncGenerator","GeneratorFunction","AsyncGeneratorFunction","AsyncFunction","Observable","Array","Buffer","Blob","Object","RegExp","Date","Error","Map","Set","WeakMap","WeakSet","ArrayBuffer","SharedArrayBuffer","DataView","Promise","URL","FormData","URLSearchParams","HTMLElement",...a];function s(d){return n.includes(d)}const i=["null","undefined","string","number","bigint","boolean","symbol"];function o(d){return i.includes(d)}function u(d){return D=>typeof D===d}const{toString:l}=Object.prototype,p=d=>{const D=l.call(d).slice(8,-1);if(/HTML\w+Element/.test(D)&&f.domElement(d))return"HTMLElement";if(s(D))return D},h=d=>D=>p(D)===d;function f(d){if(d===null)return"null";switch(typeof d){case"undefined":return"undefined";case"string":return"string";case"number":return"number";case"boolean":return"boolean";case"function":return"Function";case"bigint":return"bigint";case"symbol":return"symbol"}if(f.observable(d))return"Observable";if(f.array(d))return"Array";if(f.buffer(d))return"Buffer";const D=p(d);if(D)return D;if(d instanceof String||d instanceof Boolean||d instanceof Number)throw new TypeError("Please don't use object wrappers for primitive types");return"Object"}f.undefined=u("undefined"),f.string=u("string");const m=u("number");f.number=d=>m(d)&&!f.nan(d),f.bigint=u("bigint"),f.function_=u("function"),f.null_=d=>d===null,f.class_=d=>f.function_(d)&&d.toString().startsWith("class "),f.boolean=d=>d===!0||d===!1,f.symbol=u("symbol"),f.numericString=d=>f.string(d)&&!f.emptyStringOrWhitespace(d)&&!Number.isNaN(Number(d)),f.array=(d,D)=>Array.isArray(d)?f.function_(D)?d.every(D):!0:!1,f.buffer=d=>{var D,j,Y,x;return(x=(Y=(j=(D=d)===null||D===void 0?void 0:D.constructor)===null||j===void 0?void 0:j.isBuffer)===null||Y===void 0?void 0:Y.call(j,d))!==null&&x!==void 0?x:!1},f.blob=d=>h("Blob")(d),f.nullOrUndefined=d=>f.null_(d)||f.undefined(d),f.object=d=>!f.null_(d)&&(typeof d=="object"||f.function_(d)),f.iterable=d=>{var D;return f.function_((D=d)===null||D===void 0?void 0:D[Symbol.iterator])},f.asyncIterable=d=>{var D;return f.function_((D=d)===null||D===void 0?void 0:D[Symbol.asyncIterator])},f.generator=d=>{var D,j;return f.iterable(d)&&f.function_((D=d)===null||D===void 0?void 0:D.next)&&f.function_((j=d)===null||j===void 0?void 0:j.throw)},f.asyncGenerator=d=>f.asyncIterable(d)&&f.function_(d.next)&&f.function_(d.throw),f.nativePromise=d=>h("Promise")(d);const g=d=>{var D,j;return f.function_((D=d)===null||D===void 0?void 0:D.then)&&f.function_((j=d)===null||j===void 0?void 0:j.catch)};f.promise=d=>f.nativePromise(d)||g(d),f.generatorFunction=h("GeneratorFunction"),f.asyncGeneratorFunction=d=>p(d)==="AsyncGeneratorFunction",f.asyncFunction=d=>p(d)==="AsyncFunction",f.boundFunction=d=>f.function_(d)&&!d.hasOwnProperty("prototype"),f.regExp=h("RegExp"),f.date=h("Date"),f.error=h("Error"),f.map=d=>h("Map")(d),f.set=d=>h("Set")(d),f.weakMap=d=>h("WeakMap")(d),f.weakSet=d=>h("WeakSet")(d),f.int8Array=h("Int8Array"),f.uint8Array=h("Uint8Array"),f.uint8ClampedArray=h("Uint8ClampedArray"),f.int16Array=h("Int16Array"),f.uint16Array=h("Uint16Array"),f.int32Array=h("Int32Array"),f.uint32Array=h("Uint32Array"),f.float32Array=h("Float32Array"),f.float64Array=h("Float64Array"),f.bigInt64Array=h("BigInt64Array"),f.bigUint64Array=h("BigUint64Array"),f.arrayBuffer=h("ArrayBuffer"),f.sharedArrayBuffer=h("SharedArrayBuffer"),f.dataView=h("DataView"),f.enumCase=(d,D)=>Object.values(D).includes(d),f.directInstanceOf=(d,D)=>Object.getPrototypeOf(d)===D.prototype,f.urlInstance=d=>h("URL")(d),f.urlString=d=>{if(!f.string(d))return!1;try{return new URL(d),!0}catch{return!1}},f.truthy=d=>!!d,f.falsy=d=>!d,f.nan=d=>Number.isNaN(d),f.primitive=d=>f.null_(d)||o(typeof d),f.integer=d=>Number.isInteger(d),f.safeInteger=d=>Number.isSafeInteger(d),f.plainObject=d=>{if(l.call(d)!=="[object Object]")return!1;const D=Object.getPrototypeOf(d);return D===null||D===Object.getPrototypeOf({})},f.typedArray=d=>r(p(d));const b=d=>f.safeInteger(d)&&d>=0;f.arrayLike=d=>!f.nullOrUndefined(d)&&!f.function_(d)&&b(d.length),f.inRange=(d,D)=>{if(f.number(D))return d>=Math.min(0,D)&&d<=Math.max(D,0);if(f.array(D)&&D.length===2)return d>=Math.min(...D)&&d<=Math.max(...D);throw new TypeError(`Invalid range: ${JSON.stringify(D)}`)};const C=1,T=["innerHTML","ownerDocument","style","attributes","nodeValue"];f.domElement=d=>f.object(d)&&d.nodeType===C&&f.string(d.nodeName)&&!f.plainObject(d)&&T.every(D=>D in d),f.observable=d=>{var D,j,Y,x;return d?d===((j=(D=d)[Symbol.observable])===null||j===void 0?void 0:j.call(D))||d===((x=(Y=d)["@@observable"])===null||x===void 0?void 0:x.call(Y)):!1},f.nodeStream=d=>f.object(d)&&f.function_(d.pipe)&&!f.observable(d),f.infinite=d=>d===1/0||d===-1/0;const I=d=>D=>f.integer(D)&&Math.abs(D%2)===d;f.evenInteger=I(0),f.oddInteger=I(1),f.emptyArray=d=>f.array(d)&&d.length===0,f.nonEmptyArray=d=>f.array(d)&&d.length>0,f.emptyString=d=>f.string(d)&&d.length===0;const O=d=>f.string(d)&&!/\S/.test(d);f.emptyStringOrWhitespace=d=>f.emptyString(d)||O(d),f.nonEmptyString=d=>f.string(d)&&d.length>0,f.nonEmptyStringAndNotWhitespace=d=>f.string(d)&&!f.emptyStringOrWhitespace(d),f.emptyObject=d=>f.object(d)&&!f.map(d)&&!f.set(d)&&Object.keys(d).length===0,f.nonEmptyObject=d=>f.object(d)&&!f.map(d)&&!f.set(d)&&Object.keys(d).length>0,f.emptySet=d=>f.set(d)&&d.size===0,f.nonEmptySet=d=>f.set(d)&&d.size>0,f.emptyMap=d=>f.map(d)&&d.size===0,f.nonEmptyMap=d=>f.map(d)&&d.size>0,f.propertyKey=d=>f.any([f.string,f.number,f.symbol],d),f.formData=d=>h("FormData")(d),f.urlSearchParams=d=>h("URLSearchParams")(d);const M=(d,D,j)=>{if(!f.function_(D))throw new TypeError(`Invalid predicate: ${JSON.stringify(D)}`);if(j.length===0)throw new TypeError("Invalid number of values");return d.call(j,D)};f.any=(d,...D)=>(f.array(d)?d:[d]).some(Y=>M(Array.prototype.some,Y,D)),f.all=(d,...D)=>M(Array.prototype.every,d,D);const N=(d,D,j,Y={})=>{if(!d){const{multipleValues:x}=Y,S=x?`received values of types ${[...new Set(j.map(B=>`\`${f(B)}\``))].join(", ")}`:`received value of type \`${f(j)}\``;throw new TypeError(`Expected value which is \`${D}\`, ${S}.`)}};t.assert={undefined:d=>N(f.undefined(d),"undefined",d),string:d=>N(f.string(d),"string",d),number:d=>N(f.number(d),"number",d),bigint:d=>N(f.bigint(d),"bigint",d),function_:d=>N(f.function_(d),"Function",d),null_:d=>N(f.null_(d),"null",d),class_:d=>N(f.class_(d),"Class",d),boolean:d=>N(f.boolean(d),"boolean",d),symbol:d=>N(f.symbol(d),"symbol",d),numericString:d=>N(f.numericString(d),"string with a number",d),array:(d,D)=>{N(f.array(d),"Array",d),D&&d.forEach(D)},buffer:d=>N(f.buffer(d),"Buffer",d),blob:d=>N(f.blob(d),"Blob",d),nullOrUndefined:d=>N(f.nullOrUndefined(d),"null or undefined",d),object:d=>N(f.object(d),"Object",d),iterable:d=>N(f.iterable(d),"Iterable",d),asyncIterable:d=>N(f.asyncIterable(d),"AsyncIterable",d),generator:d=>N(f.generator(d),"Generator",d),asyncGenerator:d=>N(f.asyncGenerator(d),"AsyncGenerator",d),nativePromise:d=>N(f.nativePromise(d),"native Promise",d),promise:d=>N(f.promise(d),"Promise",d),generatorFunction:d=>N(f.generatorFunction(d),"GeneratorFunction",d),asyncGeneratorFunction:d=>N(f.asyncGeneratorFunction(d),"AsyncGeneratorFunction",d),asyncFunction:d=>N(f.asyncFunction(d),"AsyncFunction",d),boundFunction:d=>N(f.boundFunction(d),"Function",d),regExp:d=>N(f.regExp(d),"RegExp",d),date:d=>N(f.date(d),"Date",d),error:d=>N(f.error(d),"Error",d),map:d=>N(f.map(d),"Map",d),set:d=>N(f.set(d),"Set",d),weakMap:d=>N(f.weakMap(d),"WeakMap",d),weakSet:d=>N(f.weakSet(d),"WeakSet",d),int8Array:d=>N(f.int8Array(d),"Int8Array",d),uint8Array:d=>N(f.uint8Array(d),"Uint8Array",d),uint8ClampedArray:d=>N(f.uint8ClampedArray(d),"Uint8ClampedArray",d),int16Array:d=>N(f.int16Array(d),"Int16Array",d),uint16Array:d=>N(f.uint16Array(d),"Uint16Array",d),int32Array:d=>N(f.int32Array(d),"Int32Array",d),uint32Array:d=>N(f.uint32Array(d),"Uint32Array",d),float32Array:d=>N(f.float32Array(d),"Float32Array",d),float64Array:d=>N(f.float64Array(d),"Float64Array",d),bigInt64Array:d=>N(f.bigInt64Array(d),"BigInt64Array",d),bigUint64Array:d=>N(f.bigUint64Array(d),"BigUint64Array",d),arrayBuffer:d=>N(f.arrayBuffer(d),"ArrayBuffer",d),sharedArrayBuffer:d=>N(f.sharedArrayBuffer(d),"SharedArrayBuffer",d),dataView:d=>N(f.dataView(d),"DataView",d),enumCase:(d,D)=>N(f.enumCase(d,D),"EnumCase",d),urlInstance:d=>N(f.urlInstance(d),"URL",d),urlString:d=>N(f.urlString(d),"string with a URL",d),truthy:d=>N(f.truthy(d),"truthy",d),falsy:d=>N(f.falsy(d),"falsy",d),nan:d=>N(f.nan(d),"NaN",d),primitive:d=>N(f.primitive(d),"primitive",d),integer:d=>N(f.integer(d),"integer",d),safeInteger:d=>N(f.safeInteger(d),"integer",d),plainObject:d=>N(f.plainObject(d),"plain object",d),typedArray:d=>N(f.typedArray(d),"TypedArray",d),arrayLike:d=>N(f.arrayLike(d),"array-like",d),domElement:d=>N(f.domElement(d),"HTMLElement",d),observable:d=>N(f.observable(d),"Observable",d),nodeStream:d=>N(f.nodeStream(d),"Node.js Stream",d),infinite:d=>N(f.infinite(d),"infinite number",d),emptyArray:d=>N(f.emptyArray(d),"empty array",d),nonEmptyArray:d=>N(f.nonEmptyArray(d),"non-empty array",d),emptyString:d=>N(f.emptyString(d),"empty string",d),emptyStringOrWhitespace:d=>N(f.emptyStringOrWhitespace(d),"empty string or whitespace",d),nonEmptyString:d=>N(f.nonEmptyString(d),"non-empty string",d),nonEmptyStringAndNotWhitespace:d=>N(f.nonEmptyStringAndNotWhitespace(d),"non-empty string and not whitespace",d),emptyObject:d=>N(f.emptyObject(d),"empty object",d),nonEmptyObject:d=>N(f.nonEmptyObject(d),"non-empty object",d),emptySet:d=>N(f.emptySet(d),"empty set",d),nonEmptySet:d=>N(f.nonEmptySet(d),"non-empty set",d),emptyMap:d=>N(f.emptyMap(d),"empty map",d),nonEmptyMap:d=>N(f.nonEmptyMap(d),"non-empty map",d),propertyKey:d=>N(f.propertyKey(d),"PropertyKey",d),formData:d=>N(f.formData(d),"FormData",d),urlSearchParams:d=>N(f.urlSearchParams(d),"URLSearchParams",d),evenInteger:d=>N(f.evenInteger(d),"even integer",d),oddInteger:d=>N(f.oddInteger(d),"odd integer",d),directInstanceOf:(d,D)=>N(f.directInstanceOf(d,D),"T",d),inRange:(d,D)=>N(f.inRange(d,D),"in range",d),any:(d,...D)=>N(f.any(d,...D),"predicate returns truthy for any value",D,{multipleValues:!0}),all:(d,...D)=>N(f.all(d,...D),"predicate returns truthy for all values",D,{multipleValues:!0})},Object.defineProperties(f,{class:{value:f.class_},function:{value:f.function_},null:{value:f.null_}}),Object.defineProperties(t.assert,{class:{value:t.assert.class_},function:{value:t.assert.function_},null:{value:t.assert.null_}}),t.default=f,e.exports=f,e.exports.default=f,e.exports.assert=t.assert})(Wr,Wr.exports);var yg=Wr.exports;const kg={keywords:["face","smile","happy","joy",":D","grin"],char:"😀",fitzpatrick_scale:!1,category:"people"},bg={keywords:["face","grimace","teeth"],char:"😬",fitzpatrick_scale:!1,category:"people"},wg={keywords:["face","happy","smile","joy","kawaii"],char:"😁",fitzpatrick_scale:!1,category:"people"},Eg={keywords:["face","cry","tears","weep","happy","happytears","haha"],char:"😂",fitzpatrick_scale:!1,category:"people"},Tg={keywords:["face","rolling","floor","laughing","lol","haha"],char:"🤣",fitzpatrick_scale:!1,category:"people"},Ag={keywords:["face","celebration","woohoo"],char:"🥳",fitzpatrick_scale:!1,category:"people"},Cg={keywords:["face","happy","joy","haha",":D",":)","smile","funny"],char:"😃",fitzpatrick_scale:!1,category:"people"},xg={keywords:["face","happy","joy","funny","haha","laugh","like",":D",":)"],char:"😄",fitzpatrick_scale:!1,category:"people"},Dg={keywords:["face","hot","happy","laugh","sweat","smile","relief"],char:"😅",fitzpatrick_scale:!1,category:"people"},zg={keywords:["happy","joy","lol","satisfied","haha","face","glad","XD","laugh"],char:"😆",fitzpatrick_scale:!1,category:"people"},Sg={keywords:["face","angel","heaven","halo"],char:"😇",fitzpatrick_scale:!1,category:"people"},Ig={keywords:["face","happy","mischievous","secret",";)","smile","eye"],char:"😉",fitzpatrick_scale:!1,category:"people"},Ng={keywords:["face","smile","happy","flushed","crush","embarrassed","shy","joy"],char:"😊",fitzpatrick_scale:!1,category:"people"},Fg={keywords:["face","smile"],char:"🙂",fitzpatrick_scale:!1,category:"people"},Og={keywords:["face","flipped","silly","smile"],char:"🙃",fitzpatrick_scale:!1,category:"people"},Lg={keywords:["face","blush","massage","happiness"],char:"☺️",fitzpatrick_scale:!1,category:"people"},Rg={keywords:["happy","joy","tongue","smile","face","silly","yummy","nom","delicious","savouring"],char:"😋",fitzpatrick_scale:!1,category:"people"},vg={keywords:["face","relaxed","phew","massage","happiness"],char:"😌",fitzpatrick_scale:!1,category:"people"},Pg={keywords:["face","love","like","affection","valentines","infatuation","crush","heart"],char:"😍",fitzpatrick_scale:!1,category:"people"},Bg={keywords:["face","love","like","affection","valentines","infatuation","crush","hearts","adore"],char:"🥰",fitzpatrick_scale:!1,category:"people"},Mg={keywords:["face","love","like","affection","valentines","infatuation","kiss"],char:"😘",fitzpatrick_scale:!1,category:"people"},Ug={keywords:["love","like","face","3","valentines","infatuation","kiss"],char:"😗",fitzpatrick_scale:!1,category:"people"},Hg={keywords:["face","affection","valentines","infatuation","kiss"],char:"😙",fitzpatrick_scale:!1,category:"people"},jg={keywords:["face","love","like","affection","valentines","infatuation","kiss"],char:"😚",fitzpatrick_scale:!1,category:"people"},qg={keywords:["face","prank","childish","playful","mischievous","smile","wink","tongue"],char:"😜",fitzpatrick_scale:!1,category:"people"},Yg={keywords:["face","goofy","crazy"],char:"🤪",fitzpatrick_scale:!1,category:"people"},$g={keywords:["face","distrust","scepticism","disapproval","disbelief","surprise"],char:"🤨",fitzpatrick_scale:!1,category:"people"},Wg={keywords:["face","stuffy","wealthy"],char:"🧐",fitzpatrick_scale:!1,category:"people"},Vg={keywords:["face","prank","playful","mischievous","smile","tongue"],char:"😝",fitzpatrick_scale:!1,category:"people"},Gg={keywords:["face","prank","childish","playful","mischievous","smile","tongue"],char:"😛",fitzpatrick_scale:!1,category:"people"},Qg={keywords:["face","rich","dollar","money"],char:"🤑",fitzpatrick_scale:!1,category:"people"},Kg={keywords:["face","nerdy","geek","dork"],char:"🤓",fitzpatrick_scale:!1,category:"people"},Xg={keywords:["face","cool","smile","summer","beach","sunglass"],char:"😎",fitzpatrick_scale:!1,category:"people"},Jg={keywords:["face","smile","starry","eyes","grinning"],char:"🤩",fitzpatrick_scale:!1,category:"people"},Zg={keywords:["face"],char:"🤡",fitzpatrick_scale:!1,category:"people"},e0={keywords:["face","cowgirl","hat"],char:"🤠",fitzpatrick_scale:!1,category:"people"},t0={keywords:["face","smile","hug"],char:"🤗",fitzpatrick_scale:!1,category:"people"},a0={keywords:["face","smile","mean","prank","smug","sarcasm"],char:"😏",fitzpatrick_scale:!1,category:"people"},r0={keywords:["face","hellokitty"],char:"😶",fitzpatrick_scale:!1,category:"people"},n0={keywords:["indifference","meh",":|","neutral"],char:"😐",fitzpatrick_scale:!1,category:"people"},i0={keywords:["face","indifferent","-_-","meh","deadpan"],char:"😑",fitzpatrick_scale:!1,category:"people"},s0={keywords:["indifference","bored","straight face","serious","sarcasm","unimpressed","skeptical","dubious","side_eye"],char:"😒",fitzpatrick_scale:!1,category:"people"},o0={keywords:["face","eyeroll","frustrated"],char:"🙄",fitzpatrick_scale:!1,category:"people"},c0={keywords:["face","hmmm","think","consider"],char:"🤔",fitzpatrick_scale:!1,category:"people"},u0={keywords:["face","lie","pinocchio"],char:"🤥",fitzpatrick_scale:!1,category:"people"},l0={keywords:["face","whoops","shock","surprise"],char:"🤭",fitzpatrick_scale:!1,category:"people"},f0={keywords:["face","quiet","shhh"],char:"🤫",fitzpatrick_scale:!1,category:"people"},h0={keywords:["face","swearing","cursing","cussing","profanity","expletive"],char:"🤬",fitzpatrick_scale:!1,category:"people"},d0={keywords:["face","shocked","mind","blown"],char:"🤯",fitzpatrick_scale:!1,category:"people"},p0={keywords:["face","blush","shy","flattered"],char:"😳",fitzpatrick_scale:!1,category:"people"},m0={keywords:["face","sad","upset","depressed",":("],char:"😞",fitzpatrick_scale:!1,category:"people"},_0={keywords:["face","concern","nervous",":("],char:"😟",fitzpatrick_scale:!1,category:"people"},g0={keywords:["mad","face","annoyed","frustrated"],char:"😠",fitzpatrick_scale:!1,category:"people"},y0={keywords:["angry","mad","hate","despise"],char:"😡",fitzpatrick_scale:!1,category:"people"},k0={keywords:["face","sad","depressed","upset"],char:"😔",fitzpatrick_scale:!1,category:"people"},b0={keywords:["face","indifference","huh","weird","hmmm",":/"],char:"😕",fitzpatrick_scale:!1,category:"people"},w0={keywords:["face","frowning","disappointed","sad","upset"],char:"🙁",fitzpatrick_scale:!1,category:"people"},E0={keywords:["face","sad","upset","frown"],char:"☹",fitzpatrick_scale:!1,category:"people"},T0={keywords:["face","sick","no","upset","oops"],char:"😣",fitzpatrick_scale:!1,category:"people"},A0={keywords:["face","confused","sick","unwell","oops",":S"],char:"😖",fitzpatrick_scale:!1,category:"people"},C0={keywords:["sick","whine","upset","frustrated"],char:"😫",fitzpatrick_scale:!1,category:"people"},x0={keywords:["face","tired","sleepy","sad","frustrated","upset"],char:"😩",fitzpatrick_scale:!1,category:"people"},D0={keywords:["face","begging","mercy"],char:"🥺",fitzpatrick_scale:!1,category:"people"},z0={keywords:["face","gas","phew","proud","pride"],char:"😤",fitzpatrick_scale:!1,category:"people"},S0={keywords:["face","surprise","impressed","wow","whoa",":O"],char:"😮",fitzpatrick_scale:!1,category:"people"},I0={keywords:["face","munch","scared","omg"],char:"😱",fitzpatrick_scale:!1,category:"people"},N0={keywords:["face","scared","terrified","nervous","oops","huh"],char:"😨",fitzpatrick_scale:!1,category:"people"},F0={keywords:["face","nervous","sweat"],char:"😰",fitzpatrick_scale:!1,category:"people"},O0={keywords:["face","woo","shh"],char:"😯",fitzpatrick_scale:!1,category:"people"},L0={keywords:["face","aw","what"],char:"😦",fitzpatrick_scale:!1,category:"people"},R0={keywords:["face","stunned","nervous"],char:"😧",fitzpatrick_scale:!1,category:"people"},v0={keywords:["face","tears","sad","depressed","upset",":'("],char:"😢",fitzpatrick_scale:!1,category:"people"},P0={keywords:["face","phew","sweat","nervous"],char:"😥",fitzpatrick_scale:!1,category:"people"},B0={keywords:["face"],char:"🤤",fitzpatrick_scale:!1,category:"people"},M0={keywords:["face","tired","rest","nap"],char:"😪",fitzpatrick_scale:!1,category:"people"},U0={keywords:["face","hot","sad","tired","exercise"],char:"😓",fitzpatrick_scale:!1,category:"people"},H0={keywords:["face","feverish","heat","red","sweating"],char:"🥵",fitzpatrick_scale:!1,category:"people"},j0={keywords:["face","blue","freezing","frozen","frostbite","icicles"],char:"🥶",fitzpatrick_scale:!1,category:"people"},q0={keywords:["face","cry","tears","sad","upset","depressed"],char:"😭",fitzpatrick_scale:!1,category:"people"},Y0={keywords:["spent","unconscious","xox","dizzy"],char:"😵",fitzpatrick_scale:!1,category:"people"},$0={keywords:["face","xox","surprised","poisoned"],char:"😲",fitzpatrick_scale:!1,category:"people"},W0={keywords:["face","sealed","zipper","secret"],char:"🤐",fitzpatrick_scale:!1,category:"people"},V0={keywords:["face","vomit","gross","green","sick","throw up","ill"],char:"🤢",fitzpatrick_scale:!1,category:"people"},G0={keywords:["face","gesundheit","sneeze","sick","allergy"],char:"🤧",fitzpatrick_scale:!1,category:"people"},Q0={keywords:["face","sick"],char:"🤮",fitzpatrick_scale:!1,category:"people"},K0={keywords:["face","sick","ill","disease"],char:"😷",fitzpatrick_scale:!1,category:"people"},X0={keywords:["sick","temperature","thermometer","cold","fever"],char:"🤒",fitzpatrick_scale:!1,category:"people"},J0={keywords:["injured","clumsy","bandage","hurt"],char:"🤕",fitzpatrick_scale:!1,category:"people"},Z0={keywords:["face","dizzy","intoxicated","tipsy","wavy"],char:"🥴",fitzpatrick_scale:!1,category:"people"},ey={keywords:["face","tired","sleepy","night","zzz"],char:"😴",fitzpatrick_scale:!1,category:"people"},ty={keywords:["sleepy","tired","dream"],char:"💤",fitzpatrick_scale:!1,category:"people"},ay={keywords:["hankey","shitface","fail","turd","shit"],char:"💩",fitzpatrick_scale:!1,category:"people"},ry={keywords:["devil","horns"],char:"😈",fitzpatrick_scale:!1,category:"people"},ny={keywords:["devil","angry","horns"],char:"👿",fitzpatrick_scale:!1,category:"people"},iy={keywords:["monster","red","mask","halloween","scary","creepy","devil","demon","japanese","ogre"],char:"👹",fitzpatrick_scale:!1,category:"people"},sy={keywords:["red","evil","mask","monster","scary","creepy","japanese","goblin"],char:"👺",fitzpatrick_scale:!1,category:"people"},oy={keywords:["dead","skeleton","creepy","death"],char:"💀",fitzpatrick_scale:!1,category:"people"},cy={keywords:["halloween","spooky","scary"],char:"👻",fitzpatrick_scale:!1,category:"people"},uy={keywords:["UFO","paul","weird","outer_space"],char:"👽",fitzpatrick_scale:!1,category:"people"},ly={keywords:["computer","machine","bot"],char:"🤖",fitzpatrick_scale:!1,category:"people"},fy={keywords:["animal","cats","happy","smile"],char:"😺",fitzpatrick_scale:!1,category:"people"},hy={keywords:["animal","cats","smile"],char:"😸",fitzpatrick_scale:!1,category:"people"},dy={keywords:["animal","cats","haha","happy","tears"],char:"😹",fitzpatrick_scale:!1,category:"people"},py={keywords:["animal","love","like","affection","cats","valentines","heart"],char:"😻",fitzpatrick_scale:!1,category:"people"},my={keywords:["animal","cats","smirk"],char:"😼",fitzpatrick_scale:!1,category:"people"},_y={keywords:["animal","cats","kiss"],char:"😽",fitzpatrick_scale:!1,category:"people"},gy={keywords:["animal","cats","munch","scared","scream"],char:"🙀",fitzpatrick_scale:!1,category:"people"},yy={keywords:["animal","tears","weep","sad","cats","upset","cry"],char:"😿",fitzpatrick_scale:!1,category:"people"},ky={keywords:["animal","cats"],char:"😾",fitzpatrick_scale:!1,category:"people"},by={keywords:["hands","gesture","cupped","prayer"],char:"🤲",fitzpatrick_scale:!0,category:"people"},wy={keywords:["gesture","hooray","yea","celebration","hands"],char:"🙌",fitzpatrick_scale:!0,category:"people"},Ey={keywords:["hands","praise","applause","congrats","yay"],char:"👏",fitzpatrick_scale:!0,category:"people"},Ty={keywords:["hands","gesture","goodbye","solong","farewell","hello","hi","palm"],char:"👋",fitzpatrick_scale:!0,category:"people"},Ay={keywords:["hands","gesture"],char:"🤙",fitzpatrick_scale:!0,category:"people"},Cy={keywords:["angry","violence","fist","hit","attack","hand"],char:"👊",fitzpatrick_scale:!0,category:"people"},xy={keywords:["fingers","hand","grasp"],char:"✊",fitzpatrick_scale:!0,category:"people"},Dy={keywords:["hand","fistbump"],char:"🤛",fitzpatrick_scale:!0,category:"people"},zy={keywords:["hand","fistbump"],char:"🤜",fitzpatrick_scale:!0,category:"people"},Sy={keywords:["fingers","ohyeah","hand","peace","victory","two"],char:"✌",fitzpatrick_scale:!0,category:"people"},Iy={keywords:["fingers","limbs","perfect","ok","okay"],char:"👌",fitzpatrick_scale:!0,category:"people"},Ny={keywords:["fingers","stop","highfive","palm","ban"],char:"✋",fitzpatrick_scale:!0,category:"people"},Fy={keywords:["fingers","raised","backhand"],char:"🤚",fitzpatrick_scale:!0,category:"people"},Oy={keywords:["fingers","butterfly","hands","open"],char:"👐",fitzpatrick_scale:!0,category:"people"},Ly={keywords:["arm","flex","hand","summer","strong","biceps"],char:"💪",fitzpatrick_scale:!0,category:"people"},Ry={keywords:["please","hope","wish","namaste","highfive"],char:"🙏",fitzpatrick_scale:!0,category:"people"},vy={keywords:["kick","stomp"],char:"🦶",fitzpatrick_scale:!0,category:"people"},Py={keywords:["kick","limb"],char:"🦵",fitzpatrick_scale:!0,category:"people"},By={keywords:["agreement","shake"],char:"🤝",fitzpatrick_scale:!1,category:"people"},My={keywords:["hand","fingers","direction","up"],char:"☝",fitzpatrick_scale:!0,category:"people"},Uy={keywords:["fingers","hand","direction","up"],char:"👆",fitzpatrick_scale:!0,category:"people"},Hy={keywords:["fingers","hand","direction","down"],char:"👇",fitzpatrick_scale:!0,category:"people"},jy={keywords:["direction","fingers","hand","left"],char:"👈",fitzpatrick_scale:!0,category:"people"},qy={keywords:["fingers","hand","direction","right"],char:"👉",fitzpatrick_scale:!0,category:"people"},Yy={keywords:["hand","fingers","rude","middle","flipping"],char:"🖕",fitzpatrick_scale:!0,category:"people"},$y={keywords:["hand","fingers","palm"],char:"🖐",fitzpatrick_scale:!0,category:"people"},Wy={keywords:["hand","fingers","gesture"],char:"🤟",fitzpatrick_scale:!0,category:"people"},Vy={keywords:["hand","fingers","evil_eye","sign_of_horns","rock_on"],char:"🤘",fitzpatrick_scale:!0,category:"people"},Gy={keywords:["good","lucky"],char:"🤞",fitzpatrick_scale:!0,category:"people"},Qy={keywords:["hand","fingers","spock","star trek"],char:"🖖",fitzpatrick_scale:!0,category:"people"},Ky={keywords:["lower_left_ballpoint_pen","stationery","write","compose"],char:"✍",fitzpatrick_scale:!0,category:"people"},Xy={keywords:["camera","phone"],char:"🤳",fitzpatrick_scale:!0,category:"people"},Jy={keywords:["beauty","manicure","finger","fashion","nail"],char:"💅",fitzpatrick_scale:!0,category:"people"},Zy={keywords:["mouth","kiss"],char:"👄",fitzpatrick_scale:!1,category:"people"},ek={keywords:["teeth","dentist"],char:"🦷",fitzpatrick_scale:!1,category:"people"},tk={keywords:["mouth","playful"],char:"👅",fitzpatrick_scale:!1,category:"people"},ak={keywords:["face","hear","sound","listen"],char:"👂",fitzpatrick_scale:!0,category:"people"},rk={keywords:["smell","sniff"],char:"👃",fitzpatrick_scale:!0,category:"people"},nk={keywords:["face","look","see","watch","stare"],char:"👁",fitzpatrick_scale:!1,category:"people"},ik={keywords:["look","watch","stalk","peek","see"],char:"👀",fitzpatrick_scale:!1,category:"people"},sk={keywords:["smart","intelligent"],char:"🧠",fitzpatrick_scale:!1,category:"people"},ok={keywords:["user","person","human"],char:"👤",fitzpatrick_scale:!1,category:"people"},ck={keywords:["user","person","human","group","team"],char:"👥",fitzpatrick_scale:!1,category:"people"},uk={keywords:["user","person","human","sing","say","talk"],char:"🗣",fitzpatrick_scale:!1,category:"people"},lk={keywords:["child","boy","girl","toddler"],char:"👶",fitzpatrick_scale:!0,category:"people"},fk={keywords:["gender-neutral","young"],char:"🧒",fitzpatrick_scale:!0,category:"people"},hk={keywords:["man","male","guy","teenager"],char:"👦",fitzpatrick_scale:!0,category:"people"},dk={keywords:["female","woman","teenager"],char:"👧",fitzpatrick_scale:!0,category:"people"},pk={keywords:["gender-neutral","person"],char:"🧑",fitzpatrick_scale:!0,category:"people"},mk={keywords:["mustache","father","dad","guy","classy","sir","moustache"],char:"👨",fitzpatrick_scale:!0,category:"people"},_k={keywords:["female","girls","lady"],char:"👩",fitzpatrick_scale:!0,category:"people"},gk={keywords:["woman","female","girl","blonde","person"],char:"👱‍♀️",fitzpatrick_scale:!0,category:"people"},yk={keywords:["man","male","boy","blonde","guy","person"],char:"👱",fitzpatrick_scale:!0,category:"people"},kk={keywords:["person","bewhiskered"],char:"🧔",fitzpatrick_scale:!0,category:"people"},bk={keywords:["human","elder","senior","gender-neutral"],char:"🧓",fitzpatrick_scale:!0,category:"people"},wk={keywords:["human","male","men","old","elder","senior"],char:"👴",fitzpatrick_scale:!0,category:"people"},Ek={keywords:["human","female","women","lady","old","elder","senior"],char:"👵",fitzpatrick_scale:!0,category:"people"},Tk={keywords:["male","boy","chinese"],char:"👲",fitzpatrick_scale:!0,category:"people"},Ak={keywords:["female","hijab","mantilla","tichel"],char:"🧕",fitzpatrick_scale:!0,category:"people"},Ck={keywords:["female","indian","hinduism","arabs","woman"],char:"👳‍♀️",fitzpatrick_scale:!0,category:"people"},xk={keywords:["male","indian","hinduism","arabs"],char:"👳",fitzpatrick_scale:!0,category:"people"},Dk={keywords:["woman","police","law","legal","enforcement","arrest","911","female"],char:"👮‍♀️",fitzpatrick_scale:!0,category:"people"},zk={keywords:["man","police","law","legal","enforcement","arrest","911"],char:"👮",fitzpatrick_scale:!0,category:"people"},Sk={keywords:["female","human","wip","build","construction","worker","labor","woman"],char:"👷‍♀️",fitzpatrick_scale:!0,category:"people"},Ik={keywords:["male","human","wip","guy","build","construction","worker","labor"],char:"👷",fitzpatrick_scale:!0,category:"people"},Nk={keywords:["uk","gb","british","female","royal","woman"],char:"💂‍♀️",fitzpatrick_scale:!0,category:"people"},Fk={keywords:["uk","gb","british","male","guy","royal"],char:"💂",fitzpatrick_scale:!0,category:"people"},Ok={keywords:["human","spy","detective","female","woman"],char:"🕵️‍♀️",fitzpatrick_scale:!0,category:"people"},Lk={keywords:["human","spy","detective"],char:"🕵",fitzpatrick_scale:!0,category:"people"},Rk={keywords:["doctor","nurse","therapist","healthcare","woman","human"],char:"👩‍⚕️",fitzpatrick_scale:!0,category:"people"},vk={keywords:["doctor","nurse","therapist","healthcare","man","human"],char:"👨‍⚕️",fitzpatrick_scale:!0,category:"people"},Pk={keywords:["rancher","gardener","woman","human"],char:"👩‍🌾",fitzpatrick_scale:!0,category:"people"},Bk={keywords:["rancher","gardener","man","human"],char:"👨‍🌾",fitzpatrick_scale:!0,category:"people"},Mk={keywords:["chef","woman","human"],char:"👩‍🍳",fitzpatrick_scale:!0,category:"people"},Uk={keywords:["chef","man","human"],char:"👨‍🍳",fitzpatrick_scale:!0,category:"people"},Hk={keywords:["graduate","woman","human"],char:"👩‍🎓",fitzpatrick_scale:!0,category:"people"},jk={keywords:["graduate","man","human"],char:"👨‍🎓",fitzpatrick_scale:!0,category:"people"},qk={keywords:["rockstar","entertainer","woman","human"],char:"👩‍🎤",fitzpatrick_scale:!0,category:"people"},Yk={keywords:["rockstar","entertainer","man","human"],char:"👨‍🎤",fitzpatrick_scale:!0,category:"people"},$k={keywords:["instructor","professor","woman","human"],char:"👩‍🏫",fitzpatrick_scale:!0,category:"people"},Wk={keywords:["instructor","professor","man","human"],char:"👨‍🏫",fitzpatrick_scale:!0,category:"people"},Vk={keywords:["assembly","industrial","woman","human"],char:"👩‍🏭",fitzpatrick_scale:!0,category:"people"},Gk={keywords:["assembly","industrial","man","human"],char:"👨‍🏭",fitzpatrick_scale:!0,category:"people"},Qk={keywords:["coder","developer","engineer","programmer","software","woman","human","laptop","computer"],char:"👩‍💻",fitzpatrick_scale:!0,category:"people"},Kk={keywords:["coder","developer","engineer","programmer","software","man","human","laptop","computer"],char:"👨‍💻",fitzpatrick_scale:!0,category:"people"},Xk={keywords:["business","manager","woman","human"],char:"👩‍💼",fitzpatrick_scale:!0,category:"people"},Jk={keywords:["business","manager","man","human"],char:"👨‍💼",fitzpatrick_scale:!0,category:"people"},Zk={keywords:["plumber","woman","human","wrench"],char:"👩‍🔧",fitzpatrick_scale:!0,category:"people"},eb={keywords:["plumber","man","human","wrench"],char:"👨‍🔧",fitzpatrick_scale:!0,category:"people"},tb={keywords:["biologist","chemist","engineer","physicist","woman","human"],char:"👩‍🔬",fitzpatrick_scale:!0,category:"people"},ab={keywords:["biologist","chemist","engineer","physicist","man","human"],char:"👨‍🔬",fitzpatrick_scale:!0,category:"people"},rb={keywords:["painter","woman","human"],char:"👩‍🎨",fitzpatrick_scale:!0,category:"people"},nb={keywords:["painter","man","human"],char:"👨‍🎨",fitzpatrick_scale:!0,category:"people"},ib={keywords:["fireman","woman","human"],char:"👩‍🚒",fitzpatrick_scale:!0,category:"people"},sb={keywords:["fireman","man","human"],char:"👨‍🚒",fitzpatrick_scale:!0,category:"people"},ob={keywords:["aviator","plane","woman","human"],char:"👩‍✈️",fitzpatrick_scale:!0,category:"people"},cb={keywords:["aviator","plane","man","human"],char:"👨‍✈️",fitzpatrick_scale:!0,category:"people"},ub={keywords:["space","rocket","woman","human"],char:"👩‍🚀",fitzpatrick_scale:!0,category:"people"},lb={keywords:["space","rocket","man","human"],char:"👨‍🚀",fitzpatrick_scale:!0,category:"people"},fb={keywords:["justice","court","woman","human"],char:"👩‍⚖️",fitzpatrick_scale:!0,category:"people"},hb={keywords:["justice","court","man","human"],char:"👨‍⚖️",fitzpatrick_scale:!0,category:"people"},db={keywords:["woman","female","good","heroine","superpowers"],char:"🦸‍♀️",fitzpatrick_scale:!0,category:"people"},pb={keywords:["man","male","good","hero","superpowers"],char:"🦸‍♂️",fitzpatrick_scale:!0,category:"people"},mb={keywords:["woman","female","evil","bad","criminal","heroine","superpowers"],char:"🦹‍♀️",fitzpatrick_scale:!0,category:"people"},_b={keywords:["man","male","evil","bad","criminal","hero","superpowers"],char:"🦹‍♂️",fitzpatrick_scale:!0,category:"people"},gb={keywords:["woman","female","xmas","mother christmas"],char:"🤶",fitzpatrick_scale:!0,category:"people"},yb={keywords:["festival","man","male","xmas","father christmas"],char:"🎅",fitzpatrick_scale:!0,category:"people"},kb={keywords:["woman","female","mage","witch"],char:"🧙‍♀️",fitzpatrick_scale:!0,category:"people"},bb={keywords:["man","male","mage","sorcerer"],char:"🧙‍♂️",fitzpatrick_scale:!0,category:"people"},wb={keywords:["woman","female"],char:"🧝‍♀️",fitzpatrick_scale:!0,category:"people"},Eb={keywords:["man","male"],char:"🧝‍♂️",fitzpatrick_scale:!0,category:"people"},Tb={keywords:["woman","female"],char:"🧛‍♀️",fitzpatrick_scale:!0,category:"people"},Ab={keywords:["man","male","dracula"],char:"🧛‍♂️",fitzpatrick_scale:!0,category:"people"},Cb={keywords:["woman","female","undead","walking dead"],char:"🧟‍♀️",fitzpatrick_scale:!1,category:"people"},xb={keywords:["man","male","dracula","undead","walking dead"],char:"🧟‍♂️",fitzpatrick_scale:!1,category:"people"},Db={keywords:["woman","female"],char:"🧞‍♀️",fitzpatrick_scale:!1,category:"people"},zb={keywords:["man","male"],char:"🧞‍♂️",fitzpatrick_scale:!1,category:"people"},Sb={keywords:["woman","female","merwoman","ariel"],char:"🧜‍♀️",fitzpatrick_scale:!0,category:"people"},Ib={keywords:["man","male","triton"],char:"🧜‍♂️",fitzpatrick_scale:!0,category:"people"},Nb={keywords:["woman","female"],char:"🧚‍♀️",fitzpatrick_scale:!0,category:"people"},Fb={keywords:["man","male"],char:"🧚‍♂️",fitzpatrick_scale:!0,category:"people"},Ob={keywords:["heaven","wings","halo"],char:"👼",fitzpatrick_scale:!0,category:"people"},Lb={keywords:["baby"],char:"🤰",fitzpatrick_scale:!0,category:"people"},Rb={keywords:["nursing","baby"],char:"🤱",fitzpatrick_scale:!0,category:"people"},vb={keywords:["girl","woman","female","blond","crown","royal","queen"],char:"👸",fitzpatrick_scale:!0,category:"people"},Pb={keywords:["boy","man","male","crown","royal","king"],char:"🤴",fitzpatrick_scale:!0,category:"people"},Bb={keywords:["couple","marriage","wedding","woman","bride"],char:"👰",fitzpatrick_scale:!0,category:"people"},Mb={keywords:["couple","marriage","wedding","groom"],char:"🤵",fitzpatrick_scale:!0,category:"people"},Ub={keywords:["woman","walking","exercise","race","running","female"],char:"🏃‍♀️",fitzpatrick_scale:!0,category:"people"},Hb={keywords:["man","walking","exercise","race","running"],char:"🏃",fitzpatrick_scale:!0,category:"people"},jb={keywords:["human","feet","steps","woman","female"],char:"🚶‍♀️",fitzpatrick_scale:!0,category:"people"},qb={keywords:["human","feet","steps"],char:"🚶",fitzpatrick_scale:!0,category:"people"},Yb={keywords:["female","girl","woman","fun"],char:"💃",fitzpatrick_scale:!0,category:"people"},$b={keywords:["male","boy","fun","dancer"],char:"🕺",fitzpatrick_scale:!0,category:"people"},Wb={keywords:["female","bunny","women","girls"],char:"👯",fitzpatrick_scale:!1,category:"people"},Vb={keywords:["male","bunny","men","boys"],char:"👯‍♂️",fitzpatrick_scale:!1,category:"people"},Gb={keywords:["pair","people","human","love","date","dating","like","affection","valentines","marriage"],char:"👫",fitzpatrick_scale:!1,category:"people"},Qb={keywords:["pair","couple","love","like","bromance","friendship","people","human"],char:"👬",fitzpatrick_scale:!1,category:"people"},Kb={keywords:["pair","friendship","couple","love","like","female","people","human"],char:"👭",fitzpatrick_scale:!1,category:"people"},Xb={keywords:["woman","female","girl"],char:"🙇‍♀️",fitzpatrick_scale:!0,category:"people"},Jb={keywords:["man","male","boy"],char:"🙇",fitzpatrick_scale:!0,category:"people"},Zb={keywords:["man","male","boy","disbelief"],char:"🤦‍♂️",fitzpatrick_scale:!0,category:"people"},e1={keywords:["woman","female","girl","disbelief"],char:"🤦‍♀️",fitzpatrick_scale:!0,category:"people"},t1={keywords:["woman","female","girl","confused","indifferent","doubt"],char:"🤷",fitzpatrick_scale:!0,category:"people"},a1={keywords:["man","male","boy","confused","indifferent","doubt"],char:"🤷‍♂️",fitzpatrick_scale:!0,category:"people"},r1={keywords:["female","girl","woman","human","information"],char:"💁",fitzpatrick_scale:!0,category:"people"},n1={keywords:["male","boy","man","human","information"],char:"💁‍♂️",fitzpatrick_scale:!0,category:"people"},i1={keywords:["female","girl","woman","nope"],char:"🙅",fitzpatrick_scale:!0,category:"people"},s1={keywords:["male","boy","man","nope"],char:"🙅‍♂️",fitzpatrick_scale:!0,category:"people"},o1={keywords:["women","girl","female","pink","human","woman"],char:"🙆",fitzpatrick_scale:!0,category:"people"},c1={keywords:["men","boy","male","blue","human","man"],char:"🙆‍♂️",fitzpatrick_scale:!0,category:"people"},u1={keywords:["female","girl","woman"],char:"🙋",fitzpatrick_scale:!0,category:"people"},l1={keywords:["male","boy","man"],char:"🙋‍♂️",fitzpatrick_scale:!0,category:"people"},f1={keywords:["female","girl","woman"],char:"🙎",fitzpatrick_scale:!0,category:"people"},h1={keywords:["male","boy","man"],char:"🙎‍♂️",fitzpatrick_scale:!0,category:"people"},d1={keywords:["female","girl","woman","sad","depressed","discouraged","unhappy"],char:"🙍",fitzpatrick_scale:!0,category:"people"},p1={keywords:["male","boy","man","sad","depressed","discouraged","unhappy"],char:"🙍‍♂️",fitzpatrick_scale:!0,category:"people"},m1={keywords:["female","girl","woman"],char:"💇",fitzpatrick_scale:!0,category:"people"},_1={keywords:["male","boy","man"],char:"💇‍♂️",fitzpatrick_scale:!0,category:"people"},g1={keywords:["female","girl","woman","head"],char:"💆",fitzpatrick_scale:!0,category:"people"},y1={keywords:["male","boy","man","head"],char:"💆‍♂️",fitzpatrick_scale:!0,category:"people"},k1={keywords:["female","woman","spa","steamroom","sauna"],char:"🧖‍♀️",fitzpatrick_scale:!0,category:"people"},b1={keywords:["male","man","spa","steamroom","sauna"],char:"🧖‍♂️",fitzpatrick_scale:!0,category:"people"},w1={keywords:["pair","love","like","affection","human","dating","valentines","marriage"],char:"💑",fitzpatrick_scale:!1,category:"people"},E1={keywords:["pair","love","like","affection","human","dating","valentines","marriage"],char:"👩‍❤️‍👩",fitzpatrick_scale:!1,category:"people"},T1={keywords:["pair","love","like","affection","human","dating","valentines","marriage"],char:"👨‍❤️‍👨",fitzpatrick_scale:!1,category:"people"},A1={keywords:["pair","valentines","love","like","dating","marriage"],char:"💏",fitzpatrick_scale:!1,category:"people"},C1={keywords:["pair","valentines","love","like","dating","marriage"],char:"👩‍❤️‍💋‍👩",fitzpatrick_scale:!1,category:"people"},x1={keywords:["pair","valentines","love","like","dating","marriage"],char:"👨‍❤️‍💋‍👨",fitzpatrick_scale:!1,category:"people"},D1={keywords:["home","parents","child","mom","dad","father","mother","people","human"],char:"👪",fitzpatrick_scale:!1,category:"people"},z1={keywords:["home","parents","people","human","child"],char:"👨‍👩‍👧",fitzpatrick_scale:!1,category:"people"},S1={keywords:["home","parents","people","human","children"],char:"👨‍👩‍👧‍👦",fitzpatrick_scale:!1,category:"people"},I1={keywords:["home","parents","people","human","children"],char:"👨‍👩‍👦‍👦",fitzpatrick_scale:!1,category:"people"},N1={keywords:["home","parents","people","human","children"],char:"👨‍👩‍👧‍👧",fitzpatrick_scale:!1,category:"people"},F1={keywords:["home","parents","people","human","children"],char:"👩‍👩‍👦",fitzpatrick_scale:!1,category:"people"},O1={keywords:["home","parents","people","human","children"],char:"👩‍👩‍👧",fitzpatrick_scale:!1,category:"people"},L1={keywords:["home","parents","people","human","children"],char:"👩‍👩‍👧‍👦",fitzpatrick_scale:!1,category:"people"},R1={keywords:["home","parents","people","human","children"],char:"👩‍👩‍👦‍👦",fitzpatrick_scale:!1,category:"people"},v1={keywords:["home","parents","people","human","children"],char:"👩‍👩‍👧‍👧",fitzpatrick_scale:!1,category:"people"},P1={keywords:["home","parents","people","human","children"],char:"👨‍👨‍👦",fitzpatrick_scale:!1,category:"people"},B1={keywords:["home","parents","people","human","children"],char:"👨‍👨‍👧",fitzpatrick_scale:!1,category:"people"},M1={keywords:["home","parents","people","human","children"],char:"👨‍👨‍👧‍👦",fitzpatrick_scale:!1,category:"people"},U1={keywords:["home","parents","people","human","children"],char:"👨‍👨‍👦‍👦",fitzpatrick_scale:!1,category:"people"},H1={keywords:["home","parents","people","human","children"],char:"👨‍👨‍👧‍👧",fitzpatrick_scale:!1,category:"people"},j1={keywords:["home","parent","people","human","child"],char:"👩‍👦",fitzpatrick_scale:!1,category:"people"},q1={keywords:["home","parent","people","human","child"],char:"👩‍👧",fitzpatrick_scale:!1,category:"people"},Y1={keywords:["home","parent","people","human","children"],char:"👩‍👧‍👦",fitzpatrick_scale:!1,category:"people"},$1={keywords:["home","parent","people","human","children"],char:"👩‍👦‍👦",fitzpatrick_scale:!1,category:"people"},W1={keywords:["home","parent","people","human","children"],char:"👩‍👧‍👧",fitzpatrick_scale:!1,category:"people"},V1={keywords:["home","parent","people","human","child"],char:"👨‍👦",fitzpatrick_scale:!1,category:"people"},G1={keywords:["home","parent","people","human","child"],char:"👨‍👧",fitzpatrick_scale:!1,category:"people"},Q1={keywords:["home","parent","people","human","children"],char:"👨‍👧‍👦",fitzpatrick_scale:!1,category:"people"},K1={keywords:["home","parent","people","human","children"],char:"👨‍👦‍👦",fitzpatrick_scale:!1,category:"people"},X1={keywords:["home","parent","people","human","children"],char:"👨‍👧‍👧",fitzpatrick_scale:!1,category:"people"},J1={keywords:["ball","crochet","knit"],char:"🧶",fitzpatrick_scale:!1,category:"people"},Z1={keywords:["needle","sewing","spool","string"],char:"🧵",fitzpatrick_scale:!1,category:"people"},ew={keywords:["jacket"],char:"🧥",fitzpatrick_scale:!1,category:"people"},tw={keywords:["doctor","experiment","scientist","chemist"],char:"🥼",fitzpatrick_scale:!1,category:"people"},aw={keywords:["fashion","shopping_bags","female"],char:"👚",fitzpatrick_scale:!1,category:"people"},rw={keywords:["fashion","cloth","casual","shirt","tee"],char:"👕",fitzpatrick_scale:!1,category:"people"},nw={keywords:["fashion","shopping"],char:"👖",fitzpatrick_scale:!1,category:"people"},iw={keywords:["shirt","suitup","formal","fashion","cloth","business"],char:"👔",fitzpatrick_scale:!1,category:"people"},sw={keywords:["clothes","fashion","shopping"],char:"👗",fitzpatrick_scale:!1,category:"people"},ow={keywords:["swimming","female","woman","girl","fashion","beach","summer"],char:"👙",fitzpatrick_scale:!1,category:"people"},cw={keywords:["dress","fashion","women","female","japanese"],char:"👘",fitzpatrick_scale:!1,category:"people"},uw={keywords:["female","girl","fashion","woman"],char:"💄",fitzpatrick_scale:!1,category:"people"},lw={keywords:["face","lips","love","like","affection","valentines"],char:"💋",fitzpatrick_scale:!1,category:"people"},fw={keywords:["feet","tracking","walking","beach"],char:"👣",fitzpatrick_scale:!1,category:"people"},hw={keywords:["ballet","slip-on","slipper"],char:"🥿",fitzpatrick_scale:!1,category:"people"},dw={keywords:["fashion","shoes","female","pumps","stiletto"],char:"👠",fitzpatrick_scale:!1,category:"people"},pw={keywords:["shoes","fashion","flip flops"],char:"👡",fitzpatrick_scale:!1,category:"people"},mw={keywords:["shoes","fashion"],char:"👢",fitzpatrick_scale:!1,category:"people"},_w={keywords:["fashion","male"],char:"👞",fitzpatrick_scale:!1,category:"people"},gw={keywords:["shoes","sports","sneakers"],char:"👟",fitzpatrick_scale:!1,category:"people"},yw={keywords:["backpacking","camping","hiking"],char:"🥾",fitzpatrick_scale:!1,category:"people"},kw={keywords:["stockings","clothes"],char:"🧦",fitzpatrick_scale:!1,category:"people"},bw={keywords:["hands","winter","clothes"],char:"🧤",fitzpatrick_scale:!1,category:"people"},ww={keywords:["neck","winter","clothes"],char:"🧣",fitzpatrick_scale:!1,category:"people"},Ew={keywords:["fashion","accessories","female","lady","spring"],char:"👒",fitzpatrick_scale:!1,category:"people"},Tw={keywords:["magic","gentleman","classy","circus"],char:"🎩",fitzpatrick_scale:!1,category:"people"},Aw={keywords:["cap","baseball"],char:"🧢",fitzpatrick_scale:!1,category:"people"},Cw={keywords:["construction","build"],char:"⛑",fitzpatrick_scale:!1,category:"people"},xw={keywords:["school","college","degree","university","graduation","cap","hat","legal","learn","education"],char:"🎓",fitzpatrick_scale:!1,category:"people"},Dw={keywords:["king","kod","leader","royalty","lord"],char:"👑",fitzpatrick_scale:!1,category:"people"},zw={keywords:["student","education","bag","backpack"],char:"🎒",fitzpatrick_scale:!1,category:"people"},Sw={keywords:["packing","travel"],char:"🧳",fitzpatrick_scale:!1,category:"people"},Iw={keywords:["bag","accessories","shopping"],char:"👝",fitzpatrick_scale:!1,category:"people"},Nw={keywords:["fashion","accessories","money","sales","shopping"],char:"👛",fitzpatrick_scale:!1,category:"people"},Fw={keywords:["fashion","accessory","accessories","shopping"],char:"👜",fitzpatrick_scale:!1,category:"people"},Ow={keywords:["business","documents","work","law","legal","job","career"],char:"💼",fitzpatrick_scale:!1,category:"people"},Lw={keywords:["fashion","accessories","eyesight","nerdy","dork","geek"],char:"👓",fitzpatrick_scale:!1,category:"people"},Rw={keywords:["face","cool","accessories"],char:"🕶",fitzpatrick_scale:!1,category:"people"},vw={keywords:["eyes","protection","safety"],char:"🥽",fitzpatrick_scale:!1,category:"people"},Pw={keywords:["wedding","propose","marriage","valentines","diamond","fashion","jewelry","gem","engagement"],char:"💍",fitzpatrick_scale:!1,category:"people"},Bw={keywords:["weather","rain","drizzle"],char:"🌂",fitzpatrick_scale:!1,category:"people"},Mw={keywords:["animal","friend","nature","woof","puppy","pet","faithful"],char:"🐶",fitzpatrick_scale:!1,category:"animals_and_nature"},Uw={keywords:["animal","meow","nature","pet","kitten"],char:"🐱",fitzpatrick_scale:!1,category:"animals_and_nature"},Hw={keywords:["animal","nature","cheese_wedge","rodent"],char:"🐭",fitzpatrick_scale:!1,category:"animals_and_nature"},jw={keywords:["animal","nature"],char:"🐹",fitzpatrick_scale:!1,category:"animals_and_nature"},qw={keywords:["animal","nature","pet","spring","magic","bunny"],char:"🐰",fitzpatrick_scale:!1,category:"animals_and_nature"},Yw={keywords:["animal","nature","face"],char:"🦊",fitzpatrick_scale:!1,category:"animals_and_nature"},$w={keywords:["animal","nature","wild"],char:"🐻",fitzpatrick_scale:!1,category:"animals_and_nature"},Ww={keywords:["animal","nature","panda"],char:"🐼",fitzpatrick_scale:!1,category:"animals_and_nature"},Vw={keywords:["animal","nature"],char:"🐨",fitzpatrick_scale:!1,category:"animals_and_nature"},Gw={keywords:["animal","cat","danger","wild","nature","roar"],char:"🐯",fitzpatrick_scale:!1,category:"animals_and_nature"},Qw={keywords:["animal","nature"],char:"🦁",fitzpatrick_scale:!1,category:"animals_and_nature"},Kw={keywords:["beef","ox","animal","nature","moo","milk"],char:"🐮",fitzpatrick_scale:!1,category:"animals_and_nature"},Xw={keywords:["animal","oink","nature"],char:"🐷",fitzpatrick_scale:!1,category:"animals_and_nature"},Jw={keywords:["animal","oink"],char:"🐽",fitzpatrick_scale:!1,category:"animals_and_nature"},Zw={keywords:["animal","nature","croak","toad"],char:"🐸",fitzpatrick_scale:!1,category:"animals_and_nature"},eE={keywords:["animal","nature","ocean","sea"],char:"🦑",fitzpatrick_scale:!1,category:"animals_and_nature"},tE={keywords:["animal","creature","ocean","sea","nature","beach"],char:"🐙",fitzpatrick_scale:!1,category:"animals_and_nature"},aE={keywords:["animal","ocean","nature","seafood"],char:"🦐",fitzpatrick_scale:!1,category:"animals_and_nature"},rE={keywords:["animal","nature","circus"],char:"🐵",fitzpatrick_scale:!1,category:"animals_and_nature"},nE={keywords:["animal","nature","circus"],char:"🦍",fitzpatrick_scale:!1,category:"animals_and_nature"},iE={keywords:["monkey","animal","nature","haha"],char:"🙈",fitzpatrick_scale:!1,category:"animals_and_nature"},sE={keywords:["animal","monkey","nature"],char:"🙉",fitzpatrick_scale:!1,category:"animals_and_nature"},oE={keywords:["monkey","animal","nature","omg"],char:"🙊",fitzpatrick_scale:!1,category:"animals_and_nature"},cE={keywords:["animal","nature","banana","circus"],char:"🐒",fitzpatrick_scale:!1,category:"animals_and_nature"},uE={keywords:["animal","cluck","nature","bird"],char:"🐔",fitzpatrick_scale:!1,category:"animals_and_nature"},lE={keywords:["animal","nature"],char:"🐧",fitzpatrick_scale:!1,category:"animals_and_nature"},fE={keywords:["animal","nature","fly","tweet","spring"],char:"🐦",fitzpatrick_scale:!1,category:"animals_and_nature"},hE={keywords:["animal","chicken","bird"],char:"🐤",fitzpatrick_scale:!1,category:"animals_and_nature"},dE={keywords:["animal","chicken","egg","born","baby","bird"],char:"🐣",fitzpatrick_scale:!1,category:"animals_and_nature"},pE={keywords:["animal","chicken","baby","bird"],char:"🐥",fitzpatrick_scale:!1,category:"animals_and_nature"},mE={keywords:["animal","nature","bird","mallard"],char:"🦆",fitzpatrick_scale:!1,category:"animals_and_nature"},_E={keywords:["animal","nature","bird"],char:"🦅",fitzpatrick_scale:!1,category:"animals_and_nature"},gE={keywords:["animal","nature","bird","hoot"],char:"🦉",fitzpatrick_scale:!1,category:"animals_and_nature"},yE={keywords:["animal","nature","blind","vampire"],char:"🦇",fitzpatrick_scale:!1,category:"animals_and_nature"},kE={keywords:["animal","nature","wild"],char:"🐺",fitzpatrick_scale:!1,category:"animals_and_nature"},bE={keywords:["animal","nature"],char:"🐗",fitzpatrick_scale:!1,category:"animals_and_nature"},wE={keywords:["animal","brown","nature"],char:"🐴",fitzpatrick_scale:!1,category:"animals_and_nature"},EE={keywords:["animal","nature","mystical"],char:"🦄",fitzpatrick_scale:!1,category:"animals_and_nature"},TE={keywords:["animal","insect","nature","bug","spring","honey"],char:"🐝",fitzpatrick_scale:!1,category:"animals_and_nature"},AE={keywords:["animal","insect","nature","worm"],char:"🐛",fitzpatrick_scale:!1,category:"animals_and_nature"},CE={keywords:["animal","insect","nature","caterpillar"],char:"🦋",fitzpatrick_scale:!1,category:"animals_and_nature"},xE={keywords:["slow","animal","shell"],char:"🐌",fitzpatrick_scale:!1,category:"animals_and_nature"},DE={keywords:["animal","insect","nature","ladybug"],char:"🐞",fitzpatrick_scale:!1,category:"animals_and_nature"},zE={keywords:["animal","insect","nature","bug"],char:"🐜",fitzpatrick_scale:!1,category:"animals_and_nature"},SE={keywords:["animal","cricket","chirp"],char:"🦗",fitzpatrick_scale:!1,category:"animals_and_nature"},IE={keywords:["animal","arachnid"],char:"🕷",fitzpatrick_scale:!1,category:"animals_and_nature"},NE={keywords:["animal","arachnid"],char:"🦂",fitzpatrick_scale:!1,category:"animals_and_nature"},FE={keywords:["animal","crustacean"],char:"🦀",fitzpatrick_scale:!1,category:"animals_and_nature"},OE={keywords:["animal","evil","nature","hiss","python"],char:"🐍",fitzpatrick_scale:!1,category:"animals_and_nature"},LE={keywords:["animal","nature","reptile"],char:"🦎",fitzpatrick_scale:!1,category:"animals_and_nature"},RE={keywords:["animal","nature","dinosaur","brachiosaurus","brontosaurus","diplodocus","extinct"],char:"🦕",fitzpatrick_scale:!1,category:"animals_and_nature"},vE={keywords:["animal","slow","nature","tortoise"],char:"🐢",fitzpatrick_scale:!1,category:"animals_and_nature"},PE={keywords:["animal","swim","ocean","beach","nemo"],char:"🐠",fitzpatrick_scale:!1,category:"animals_and_nature"},BE={keywords:["animal","food","nature"],char:"🐟",fitzpatrick_scale:!1,category:"animals_and_nature"},ME={keywords:["animal","nature","food","sea","ocean"],char:"🐡",fitzpatrick_scale:!1,category:"animals_and_nature"},UE={keywords:["animal","nature","fish","sea","ocean","flipper","fins","beach"],char:"🐬",fitzpatrick_scale:!1,category:"animals_and_nature"},HE={keywords:["animal","nature","fish","sea","ocean","jaws","fins","beach"],char:"🦈",fitzpatrick_scale:!1,category:"animals_and_nature"},jE={keywords:["animal","nature","sea","ocean"],char:"🐳",fitzpatrick_scale:!1,category:"animals_and_nature"},qE={keywords:["animal","nature","sea","ocean"],char:"🐋",fitzpatrick_scale:!1,category:"animals_and_nature"},YE={keywords:["animal","nature","reptile","lizard","alligator"],char:"🐊",fitzpatrick_scale:!1,category:"animals_and_nature"},$E={keywords:["animal","nature"],char:"🐆",fitzpatrick_scale:!1,category:"animals_and_nature"},WE={keywords:["animal","nature","stripes","safari"],char:"🦓",fitzpatrick_scale:!1,category:"animals_and_nature"},VE={keywords:["animal","nature","roar"],char:"🐅",fitzpatrick_scale:!1,category:"animals_and_nature"},GE={keywords:["animal","nature","ox","cow"],char:"🐃",fitzpatrick_scale:!1,category:"animals_and_nature"},QE={keywords:["animal","cow","beef"],char:"🐂",fitzpatrick_scale:!1,category:"animals_and_nature"},KE={keywords:["beef","ox","animal","nature","moo","milk"],char:"🐄",fitzpatrick_scale:!1,category:"animals_and_nature"},XE={keywords:["animal","nature","horns","venison"],char:"🦌",fitzpatrick_scale:!1,category:"animals_and_nature"},JE={keywords:["animal","hot","desert","hump"],char:"🐪",fitzpatrick_scale:!1,category:"animals_and_nature"},ZE={keywords:["animal","nature","hot","desert","hump"],char:"🐫",fitzpatrick_scale:!1,category:"animals_and_nature"},eT={keywords:["animal","nature","spots","safari"],char:"🦒",fitzpatrick_scale:!1,category:"animals_and_nature"},tT={keywords:["animal","nature","nose","th","circus"],char:"🐘",fitzpatrick_scale:!1,category:"animals_and_nature"},aT={keywords:["animal","nature","horn"],char:"🦏",fitzpatrick_scale:!1,category:"animals_and_nature"},rT={keywords:["animal","nature"],char:"🐐",fitzpatrick_scale:!1,category:"animals_and_nature"},nT={keywords:["animal","sheep","nature"],char:"🐏",fitzpatrick_scale:!1,category:"animals_and_nature"},iT={keywords:["animal","nature","wool","shipit"],char:"🐑",fitzpatrick_scale:!1,category:"animals_and_nature"},sT={keywords:["animal","gamble","luck"],char:"🐎",fitzpatrick_scale:!1,category:"animals_and_nature"},oT={keywords:["animal","nature"],char:"🐖",fitzpatrick_scale:!1,category:"animals_and_nature"},cT={keywords:["animal","mouse","rodent"],char:"🐀",fitzpatrick_scale:!1,category:"animals_and_nature"},uT={keywords:["animal","nature","rodent"],char:"🐁",fitzpatrick_scale:!1,category:"animals_and_nature"},lT={keywords:["animal","nature","chicken"],char:"🐓",fitzpatrick_scale:!1,category:"animals_and_nature"},fT={keywords:["animal","bird"],char:"🦃",fitzpatrick_scale:!1,category:"animals_and_nature"},hT={keywords:["animal","bird"],char:"🕊",fitzpatrick_scale:!1,category:"animals_and_nature"},dT={keywords:["animal","nature","friend","doge","pet","faithful"],char:"🐕",fitzpatrick_scale:!1,category:"animals_and_nature"},pT={keywords:["dog","animal","101","nature","pet"],char:"🐩",fitzpatrick_scale:!1,category:"animals_and_nature"},mT={keywords:["animal","meow","pet","cats"],char:"🐈",fitzpatrick_scale:!1,category:"animals_and_nature"},_T={keywords:["animal","nature","pet","magic","spring"],char:"🐇",fitzpatrick_scale:!1,category:"animals_and_nature"},gT={keywords:["animal","nature","rodent","squirrel"],char:"🐿",fitzpatrick_scale:!1,category:"animals_and_nature"},yT={keywords:["animal","nature","spiny"],char:"🦔",fitzpatrick_scale:!1,category:"animals_and_nature"},kT={keywords:["animal","nature"],char:"🦝",fitzpatrick_scale:!1,category:"animals_and_nature"},bT={keywords:["animal","nature","alpaca"],char:"🦙",fitzpatrick_scale:!1,category:"animals_and_nature"},wT={keywords:["animal","nature"],char:"🦛",fitzpatrick_scale:!1,category:"animals_and_nature"},ET={keywords:["animal","nature","australia","joey","hop","marsupial"],char:"🦘",fitzpatrick_scale:!1,category:"animals_and_nature"},TT={keywords:["animal","nature","honey"],char:"🦡",fitzpatrick_scale:!1,category:"animals_and_nature"},AT={keywords:["animal","nature","bird"],char:"🦢",fitzpatrick_scale:!1,category:"animals_and_nature"},CT={keywords:["animal","nature","peahen","bird"],char:"🦚",fitzpatrick_scale:!1,category:"animals_and_nature"},xT={keywords:["animal","nature","bird","pirate","talk"],char:"🦜",fitzpatrick_scale:!1,category:"animals_and_nature"},DT={keywords:["animal","nature","bisque","claws","seafood"],char:"🦞",fitzpatrick_scale:!1,category:"animals_and_nature"},zT={keywords:["animal","nature","insect","malaria"],char:"🦟",fitzpatrick_scale:!1,category:"animals_and_nature"},ST={keywords:["animal","tracking","footprints","dog","cat","pet","feet"],char:"🐾",fitzpatrick_scale:!1,category:"animals_and_nature"},IT={keywords:["animal","myth","nature","chinese","green"],char:"🐉",fitzpatrick_scale:!1,category:"animals_and_nature"},NT={keywords:["animal","myth","nature","chinese","green"],char:"🐲",fitzpatrick_scale:!1,category:"animals_and_nature"},FT={keywords:["vegetable","plant","nature"],char:"🌵",fitzpatrick_scale:!1,category:"animals_and_nature"},OT={keywords:["festival","vacation","december","xmas","celebration"],char:"🎄",fitzpatrick_scale:!1,category:"animals_and_nature"},LT={keywords:["plant","nature"],char:"🌲",fitzpatrick_scale:!1,category:"animals_and_nature"},RT={keywords:["plant","nature"],char:"🌳",fitzpatrick_scale:!1,category:"animals_and_nature"},vT={keywords:["plant","vegetable","nature","summer","beach","mojito","tropical"],char:"🌴",fitzpatrick_scale:!1,category:"animals_and_nature"},PT={keywords:["plant","nature","grass","lawn","spring"],char:"🌱",fitzpatrick_scale:!1,category:"animals_and_nature"},BT={keywords:["vegetable","plant","medicine","weed","grass","lawn"],char:"🌿",fitzpatrick_scale:!1,category:"animals_and_nature"},MT={keywords:["vegetable","plant","nature","irish","clover"],char:"☘",fitzpatrick_scale:!1,category:"animals_and_nature"},UT={keywords:["vegetable","plant","nature","lucky","irish"],char:"🍀",fitzpatrick_scale:!1,category:"animals_and_nature"},HT={keywords:["plant","nature","vegetable","panda","pine_decoration"],char:"🎍",fitzpatrick_scale:!1,category:"animals_and_nature"},jT={keywords:["plant","nature","branch","summer"],char:"🎋",fitzpatrick_scale:!1,category:"animals_and_nature"},qT={keywords:["nature","plant","tree","vegetable","grass","lawn","spring"],char:"🍃",fitzpatrick_scale:!1,category:"animals_and_nature"},YT={keywords:["nature","plant","vegetable","leaves"],char:"🍂",fitzpatrick_scale:!1,category:"animals_and_nature"},$T={keywords:["nature","plant","vegetable","ca","fall"],char:"🍁",fitzpatrick_scale:!1,category:"animals_and_nature"},WT={keywords:["nature","plant"],char:"🌾",fitzpatrick_scale:!1,category:"animals_and_nature"},VT={keywords:["plant","vegetable","flowers","beach"],char:"🌺",fitzpatrick_scale:!1,category:"animals_and_nature"},GT={keywords:["nature","plant","fall"],char:"🌻",fitzpatrick_scale:!1,category:"animals_and_nature"},QT={keywords:["flowers","valentines","love","spring"],char:"🌹",fitzpatrick_scale:!1,category:"animals_and_nature"},KT={keywords:["plant","nature","flower"],char:"🥀",fitzpatrick_scale:!1,category:"animals_and_nature"},XT={keywords:["flowers","plant","nature","summer","spring"],char:"🌷",fitzpatrick_scale:!1,category:"animals_and_nature"},JT={keywords:["nature","flowers","yellow"],char:"🌼",fitzpatrick_scale:!1,category:"animals_and_nature"},ZT={keywords:["nature","plant","spring","flower"],char:"🌸",fitzpatrick_scale:!1,category:"animals_and_nature"},e2={keywords:["flowers","nature","spring"],char:"💐",fitzpatrick_scale:!1,category:"animals_and_nature"},t2={keywords:["plant","vegetable"],char:"🍄",fitzpatrick_scale:!1,category:"animals_and_nature"},a2={keywords:["food","squirrel"],char:"🌰",fitzpatrick_scale:!1,category:"animals_and_nature"},r2={keywords:["halloween","light","pumpkin","creepy","fall"],char:"🎃",fitzpatrick_scale:!1,category:"animals_and_nature"},n2={keywords:["nature","sea","beach"],char:"🐚",fitzpatrick_scale:!1,category:"animals_and_nature"},i2={keywords:["animal","insect","arachnid","silk"],char:"🕸",fitzpatrick_scale:!1,category:"animals_and_nature"},s2={keywords:["globe","world","USA","international"],char:"🌎",fitzpatrick_scale:!1,category:"animals_and_nature"},o2={keywords:["globe","world","international"],char:"🌍",fitzpatrick_scale:!1,category:"animals_and_nature"},c2={keywords:["globe","world","east","international"],char:"🌏",fitzpatrick_scale:!1,category:"animals_and_nature"},u2={keywords:["nature","yellow","twilight","planet","space","night","evening","sleep"],char:"🌕",fitzpatrick_scale:!1,category:"animals_and_nature"},l2={keywords:["nature","twilight","planet","space","night","evening","sleep","waxing_gibbous_moon"],char:"🌖",fitzpatrick_scale:!1,category:"animals_and_nature"},f2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌗",fitzpatrick_scale:!1,category:"animals_and_nature"},h2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌘",fitzpatrick_scale:!1,category:"animals_and_nature"},d2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌑",fitzpatrick_scale:!1,category:"animals_and_nature"},p2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌒",fitzpatrick_scale:!1,category:"animals_and_nature"},m2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌓",fitzpatrick_scale:!1,category:"animals_and_nature"},_2={keywords:["nature","night","sky","gray","twilight","planet","space","evening","sleep"],char:"🌔",fitzpatrick_scale:!1,category:"animals_and_nature"},g2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌚",fitzpatrick_scale:!1,category:"animals_and_nature"},y2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌝",fitzpatrick_scale:!1,category:"animals_and_nature"},k2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌛",fitzpatrick_scale:!1,category:"animals_and_nature"},b2={keywords:["nature","twilight","planet","space","night","evening","sleep"],char:"🌜",fitzpatrick_scale:!1,category:"animals_and_nature"},w2={keywords:["nature","morning","sky"],char:"🌞",fitzpatrick_scale:!1,category:"animals_and_nature"},E2={keywords:["night","sleep","sky","evening","magic"],char:"🌙",fitzpatrick_scale:!1,category:"animals_and_nature"},T2={keywords:["night","yellow"],char:"⭐",fitzpatrick_scale:!1,category:"animals_and_nature"},A2={keywords:["night","sparkle","awesome","good","magic"],char:"🌟",fitzpatrick_scale:!1,category:"animals_and_nature"},C2={keywords:["star","sparkle","shoot","magic"],char:"💫",fitzpatrick_scale:!1,category:"animals_and_nature"},x2={keywords:["stars","shine","shiny","cool","awesome","good","magic"],char:"✨",fitzpatrick_scale:!1,category:"animals_and_nature"},D2={keywords:["space"],char:"☄",fitzpatrick_scale:!1,category:"animals_and_nature"},z2={keywords:["weather","nature","brightness","summer","beach","spring"],char:"☀️",fitzpatrick_scale:!1,category:"animals_and_nature"},S2={keywords:["weather"],char:"🌤",fitzpatrick_scale:!1,category:"animals_and_nature"},I2={keywords:["weather","nature","cloudy","morning","fall","spring"],char:"⛅",fitzpatrick_scale:!1,category:"animals_and_nature"},N2={keywords:["weather"],char:"🌥",fitzpatrick_scale:!1,category:"animals_and_nature"},F2={keywords:["weather"],char:"🌦",fitzpatrick_scale:!1,category:"animals_and_nature"},O2={keywords:["weather","sky"],char:"☁️",fitzpatrick_scale:!1,category:"animals_and_nature"},L2={keywords:["weather"],char:"🌧",fitzpatrick_scale:!1,category:"animals_and_nature"},R2={keywords:["weather","lightning"],char:"⛈",fitzpatrick_scale:!1,category:"animals_and_nature"},v2={keywords:["weather","thunder"],char:"🌩",fitzpatrick_scale:!1,category:"animals_and_nature"},P2={keywords:["thunder","weather","lightning bolt","fast"],char:"⚡",fitzpatrick_scale:!1,category:"animals_and_nature"},B2={keywords:["hot","cook","flame"],char:"🔥",fitzpatrick_scale:!1,category:"animals_and_nature"},M2={keywords:["bomb","explode","explosion","collision","blown"],char:"💥",fitzpatrick_scale:!1,category:"animals_and_nature"},U2={keywords:["winter","season","cold","weather","christmas","xmas"],char:"❄️",fitzpatrick_scale:!1,category:"animals_and_nature"},H2={keywords:["weather"],char:"🌨",fitzpatrick_scale:!1,category:"animals_and_nature"},j2={keywords:["winter","season","cold","weather","christmas","xmas","frozen","without_snow"],char:"⛄",fitzpatrick_scale:!1,category:"animals_and_nature"},q2={keywords:["winter","season","cold","weather","christmas","xmas","frozen"],char:"☃",fitzpatrick_scale:!1,category:"animals_and_nature"},Y2={keywords:["gust","air"],char:"🌬",fitzpatrick_scale:!1,category:"animals_and_nature"},$2={keywords:["wind","air","fast","shoo","fart","smoke","puff"],char:"💨",fitzpatrick_scale:!1,category:"animals_and_nature"},W2={keywords:["weather","cyclone","twister"],char:"🌪",fitzpatrick_scale:!1,category:"animals_and_nature"},V2={keywords:["weather"],char:"🌫",fitzpatrick_scale:!1,category:"animals_and_nature"},G2={keywords:["weather","spring"],char:"☂",fitzpatrick_scale:!1,category:"animals_and_nature"},Q2={keywords:["rainy","weather","spring"],char:"☔",fitzpatrick_scale:!1,category:"animals_and_nature"},K2={keywords:["water","drip","faucet","spring"],char:"💧",fitzpatrick_scale:!1,category:"animals_and_nature"},X2={keywords:["water","drip","oops"],char:"💦",fitzpatrick_scale:!1,category:"animals_and_nature"},J2={keywords:["sea","water","wave","nature","tsunami","disaster"],char:"🌊",fitzpatrick_scale:!1,category:"animals_and_nature"},Z2={keywords:["fruit","nature"],char:"🍏",fitzpatrick_scale:!1,category:"food_and_drink"},eA={keywords:["fruit","mac","school"],char:"🍎",fitzpatrick_scale:!1,category:"food_and_drink"},tA={keywords:["fruit","nature","food"],char:"🍐",fitzpatrick_scale:!1,category:"food_and_drink"},aA={keywords:["food","fruit","nature","orange"],char:"🍊",fitzpatrick_scale:!1,category:"food_and_drink"},rA={keywords:["fruit","nature"],char:"🍋",fitzpatrick_scale:!1,category:"food_and_drink"},nA={keywords:["fruit","food","monkey"],char:"🍌",fitzpatrick_scale:!1,category:"food_and_drink"},iA={keywords:["fruit","food","picnic","summer"],char:"🍉",fitzpatrick_scale:!1,category:"food_and_drink"},sA={keywords:["fruit","food","wine"],char:"🍇",fitzpatrick_scale:!1,category:"food_and_drink"},oA={keywords:["fruit","food","nature"],char:"🍓",fitzpatrick_scale:!1,category:"food_and_drink"},cA={keywords:["fruit","nature","food"],char:"🍈",fitzpatrick_scale:!1,category:"food_and_drink"},uA={keywords:["food","fruit"],char:"🍒",fitzpatrick_scale:!1,category:"food_and_drink"},lA={keywords:["fruit","nature","food"],char:"🍑",fitzpatrick_scale:!1,category:"food_and_drink"},fA={keywords:["fruit","nature","food"],char:"🍍",fitzpatrick_scale:!1,category:"food_and_drink"},hA={keywords:["fruit","nature","food","palm"],char:"🥥",fitzpatrick_scale:!1,category:"food_and_drink"},dA={keywords:["fruit","food"],char:"🥝",fitzpatrick_scale:!1,category:"food_and_drink"},pA={keywords:["fruit","food","tropical"],char:"🥭",fitzpatrick_scale:!1,category:"food_and_drink"},mA={keywords:["fruit","food"],char:"🥑",fitzpatrick_scale:!1,category:"food_and_drink"},_A={keywords:["fruit","food","vegetable"],char:"🥦",fitzpatrick_scale:!1,category:"food_and_drink"},gA={keywords:["fruit","vegetable","nature","food"],char:"🍅",fitzpatrick_scale:!1,category:"food_and_drink"},yA={keywords:["vegetable","nature","food","aubergine"],char:"🍆",fitzpatrick_scale:!1,category:"food_and_drink"},kA={keywords:["fruit","food","pickle"],char:"🥒",fitzpatrick_scale:!1,category:"food_and_drink"},bA={keywords:["vegetable","food","orange"],char:"🥕",fitzpatrick_scale:!1,category:"food_and_drink"},wA={keywords:["food","spicy","chilli","chili"],char:"🌶",fitzpatrick_scale:!1,category:"food_and_drink"},EA={keywords:["food","tuber","vegatable","starch"],char:"🥔",fitzpatrick_scale:!1,category:"food_and_drink"},TA={keywords:["food","vegetable","plant"],char:"🌽",fitzpatrick_scale:!1,category:"food_and_drink"},AA={keywords:["food","vegetable","plant","bok choy","cabbage","kale","lettuce"],char:"🥬",fitzpatrick_scale:!1,category:"food_and_drink"},CA={keywords:["food","nature"],char:"🍠",fitzpatrick_scale:!1,category:"food_and_drink"},xA={keywords:["food","nut"],char:"🥜",fitzpatrick_scale:!1,category:"food_and_drink"},DA={keywords:["bees","sweet","kitchen"],char:"🍯",fitzpatrick_scale:!1,category:"food_and_drink"},zA={keywords:["food","bread","french"],char:"🥐",fitzpatrick_scale:!1,category:"food_and_drink"},SA={keywords:["food","wheat","breakfast","toast"],char:"🍞",fitzpatrick_scale:!1,category:"food_and_drink"},IA={keywords:["food","bread","french"],char:"🥖",fitzpatrick_scale:!1,category:"food_and_drink"},NA={keywords:["food","bread","bakery","schmear"],char:"🥯",fitzpatrick_scale:!1,category:"food_and_drink"},FA={keywords:["food","bread","twisted"],char:"🥨",fitzpatrick_scale:!1,category:"food_and_drink"},OA={keywords:["food","chadder"],char:"🧀",fitzpatrick_scale:!1,category:"food_and_drink"},LA={keywords:["food","chicken","breakfast"],char:"🥚",fitzpatrick_scale:!1,category:"food_and_drink"},RA={keywords:["food","breakfast","pork","pig","meat"],char:"🥓",fitzpatrick_scale:!1,category:"food_and_drink"},vA={keywords:["food","cow","meat","cut","chop","lambchop","porkchop"],char:"🥩",fitzpatrick_scale:!1,category:"food_and_drink"},PA={keywords:["food","breakfast","flapjacks","hotcakes"],char:"🥞",fitzpatrick_scale:!1,category:"food_and_drink"},BA={keywords:["food","meat","drumstick","bird","chicken","turkey"],char:"🍗",fitzpatrick_scale:!1,category:"food_and_drink"},MA={keywords:["good","food","drumstick"],char:"🍖",fitzpatrick_scale:!1,category:"food_and_drink"},UA={keywords:["skeleton"],char:"🦴",fitzpatrick_scale:!1,category:"food_and_drink"},HA={keywords:["food","animal","appetizer","summer"],char:"🍤",fitzpatrick_scale:!1,category:"food_and_drink"},jA={keywords:["food","breakfast","kitchen","egg"],char:"🍳",fitzpatrick_scale:!1,category:"food_and_drink"},qA={keywords:["meat","fast food","beef","cheeseburger","mcdonalds","burger king"],char:"🍔",fitzpatrick_scale:!1,category:"food_and_drink"},YA={keywords:["chips","snack","fast food"],char:"🍟",fitzpatrick_scale:!1,category:"food_and_drink"},$A={keywords:["food","flatbread","stuffed","gyro"],char:"🥙",fitzpatrick_scale:!1,category:"food_and_drink"},WA={keywords:["food","frankfurter"],char:"🌭",fitzpatrick_scale:!1,category:"food_and_drink"},VA={keywords:["food","party"],char:"🍕",fitzpatrick_scale:!1,category:"food_and_drink"},GA={keywords:["food","lunch","bread"],char:"🥪",fitzpatrick_scale:!1,category:"food_and_drink"},QA={keywords:["food","soup"],char:"🥫",fitzpatrick_scale:!1,category:"food_and_drink"},KA={keywords:["food","italian","noodle"],char:"🍝",fitzpatrick_scale:!1,category:"food_and_drink"},XA={keywords:["food","mexican"],char:"🌮",fitzpatrick_scale:!1,category:"food_and_drink"},JA={keywords:["food","mexican"],char:"🌯",fitzpatrick_scale:!1,category:"food_and_drink"},ZA={keywords:["food","healthy","lettuce"],char:"🥗",fitzpatrick_scale:!1,category:"food_and_drink"},eC={keywords:["food","cooking","casserole","paella"],char:"🥘",fitzpatrick_scale:!1,category:"food_and_drink"},tC={keywords:["food","japanese","noodle","chopsticks"],char:"🍜",fitzpatrick_scale:!1,category:"food_and_drink"},aC={keywords:["food","meat","soup"],char:"🍲",fitzpatrick_scale:!1,category:"food_and_drink"},rC={keywords:["food","japan","sea","beach","narutomaki","pink","swirl","kamaboko","surimi","ramen"],char:"🍥",fitzpatrick_scale:!1,category:"food_and_drink"},nC={keywords:["food","prophecy"],char:"🥠",fitzpatrick_scale:!1,category:"food_and_drink"},iC={keywords:["food","fish","japanese","rice"],char:"🍣",fitzpatrick_scale:!1,category:"food_and_drink"},sC={keywords:["food","japanese","box"],char:"🍱",fitzpatrick_scale:!1,category:"food_and_drink"},oC={keywords:["food","spicy","hot","indian"],char:"🍛",fitzpatrick_scale:!1,category:"food_and_drink"},cC={keywords:["food","japanese"],char:"🍙",fitzpatrick_scale:!1,category:"food_and_drink"},uC={keywords:["food","china","asian"],char:"🍚",fitzpatrick_scale:!1,category:"food_and_drink"},lC={keywords:["food","japanese"],char:"🍘",fitzpatrick_scale:!1,category:"food_and_drink"},fC={keywords:["food","japanese"],char:"🍢",fitzpatrick_scale:!1,category:"food_and_drink"},hC={keywords:["food","dessert","sweet","japanese","barbecue","meat"],char:"🍡",fitzpatrick_scale:!1,category:"food_and_drink"},dC={keywords:["hot","dessert","summer"],char:"🍧",fitzpatrick_scale:!1,category:"food_and_drink"},pC={keywords:["food","hot","dessert"],char:"🍨",fitzpatrick_scale:!1,category:"food_and_drink"},mC={keywords:["food","hot","dessert","summer"],char:"🍦",fitzpatrick_scale:!1,category:"food_and_drink"},_C={keywords:["food","dessert","pastry"],char:"🥧",fitzpatrick_scale:!1,category:"food_and_drink"},gC={keywords:["food","dessert"],char:"🍰",fitzpatrick_scale:!1,category:"food_and_drink"},yC={keywords:["food","dessert","bakery","sweet"],char:"🧁",fitzpatrick_scale:!1,category:"food_and_drink"},kC={keywords:["food","autumn"],char:"🥮",fitzpatrick_scale:!1,category:"food_and_drink"},bC={keywords:["food","dessert","cake"],char:"🎂",fitzpatrick_scale:!1,category:"food_and_drink"},wC={keywords:["dessert","food"],char:"🍮",fitzpatrick_scale:!1,category:"food_and_drink"},EC={keywords:["snack","dessert","sweet","lolly"],char:"🍬",fitzpatrick_scale:!1,category:"food_and_drink"},TC={keywords:["food","snack","candy","sweet"],char:"🍭",fitzpatrick_scale:!1,category:"food_and_drink"},AC={keywords:["food","snack","dessert","sweet"],char:"🍫",fitzpatrick_scale:!1,category:"food_and_drink"},CC={keywords:["food","movie theater","films","snack"],char:"🍿",fitzpatrick_scale:!1,category:"food_and_drink"},xC={keywords:["food","empanada","pierogi","potsticker"],char:"🥟",fitzpatrick_scale:!1,category:"food_and_drink"},DC={keywords:["food","dessert","snack","sweet","donut"],char:"🍩",fitzpatrick_scale:!1,category:"food_and_drink"},zC={keywords:["food","snack","oreo","chocolate","sweet","dessert"],char:"🍪",fitzpatrick_scale:!1,category:"food_and_drink"},SC={keywords:["beverage","drink","cow"],char:"🥛",fitzpatrick_scale:!1,category:"food_and_drink"},IC={keywords:["relax","beverage","drink","drunk","party","pub","summer","alcohol","booze"],char:"🍺",fitzpatrick_scale:!1,category:"food_and_drink"},NC={keywords:["relax","beverage","drink","drunk","party","pub","summer","alcohol","booze"],char:"🍻",fitzpatrick_scale:!1,category:"food_and_drink"},FC={keywords:["beverage","drink","party","alcohol","celebrate","cheers","wine","champagne","toast"],char:"🥂",fitzpatrick_scale:!1,category:"food_and_drink"},OC={keywords:["drink","beverage","drunk","alcohol","booze"],char:"🍷",fitzpatrick_scale:!1,category:"food_and_drink"},LC={keywords:["drink","beverage","drunk","alcohol","liquor","booze","bourbon","scotch","whisky","glass","shot"],char:"🥃",fitzpatrick_scale:!1,category:"food_and_drink"},RC={keywords:["drink","drunk","alcohol","beverage","booze","mojito"],char:"🍸",fitzpatrick_scale:!1,category:"food_and_drink"},vC={keywords:["beverage","cocktail","summer","beach","alcohol","booze","mojito"],char:"🍹",fitzpatrick_scale:!1,category:"food_and_drink"},PC={keywords:["drink","wine","bottle","celebration"],char:"🍾",fitzpatrick_scale:!1,category:"food_and_drink"},BC={keywords:["wine","drink","drunk","beverage","japanese","alcohol","booze"],char:"🍶",fitzpatrick_scale:!1,category:"food_and_drink"},MC={keywords:["drink","bowl","breakfast","green","british"],char:"🍵",fitzpatrick_scale:!1,category:"food_and_drink"},UC={keywords:["drink","soda"],char:"🥤",fitzpatrick_scale:!1,category:"food_and_drink"},HC={keywords:["beverage","caffeine","latte","espresso"],char:"☕",fitzpatrick_scale:!1,category:"food_and_drink"},jC={keywords:["food","container","milk"],char:"🍼",fitzpatrick_scale:!1,category:"food_and_drink"},qC={keywords:["condiment","shaker"],char:"🧂",fitzpatrick_scale:!1,category:"food_and_drink"},YC={keywords:["cutlery","kitchen","tableware"],char:"🥄",fitzpatrick_scale:!1,category:"food_and_drink"},$C={keywords:["cutlery","kitchen"],char:"🍴",fitzpatrick_scale:!1,category:"food_and_drink"},WC={keywords:["food","eat","meal","lunch","dinner","restaurant"],char:"🍽",fitzpatrick_scale:!1,category:"food_and_drink"},VC={keywords:["food","breakfast","cereal","oatmeal","porridge"],char:"🥣",fitzpatrick_scale:!1,category:"food_and_drink"},GC={keywords:["food","leftovers"],char:"🥡",fitzpatrick_scale:!1,category:"food_and_drink"},QC={keywords:["food"],char:"🥢",fitzpatrick_scale:!1,category:"food_and_drink"},KC={keywords:["sports","football"],char:"⚽",fitzpatrick_scale:!1,category:"activity"},XC={keywords:["sports","balls","NBA"],char:"🏀",fitzpatrick_scale:!1,category:"activity"},JC={keywords:["sports","balls","NFL"],char:"🏈",fitzpatrick_scale:!1,category:"activity"},ZC={keywords:["sports","balls"],char:"⚾",fitzpatrick_scale:!1,category:"activity"},e3={keywords:["sports","balls"],char:"🥎",fitzpatrick_scale:!1,category:"activity"},t3={keywords:["sports","balls","green"],char:"🎾",fitzpatrick_scale:!1,category:"activity"},a3={keywords:["sports","balls"],char:"🏐",fitzpatrick_scale:!1,category:"activity"},r3={keywords:["sports","team"],char:"🏉",fitzpatrick_scale:!1,category:"activity"},n3={keywords:["sports","frisbee","ultimate"],char:"🥏",fitzpatrick_scale:!1,category:"activity"},i3={keywords:["sports","business","flag","hole","summer"],char:"⛳",fitzpatrick_scale:!1,category:"activity"},s3={keywords:["sports","business","woman","female"],char:"🏌️‍♀️",fitzpatrick_scale:!1,category:"activity"},o3={keywords:["sports","business"],char:"🏌",fitzpatrick_scale:!0,category:"activity"},c3={keywords:["sports","pingpong"],char:"🏓",fitzpatrick_scale:!1,category:"activity"},u3={keywords:["sports"],char:"🏸",fitzpatrick_scale:!1,category:"activity"},l3={keywords:["sports"],char:"🥅",fitzpatrick_scale:!1,category:"activity"},f3={keywords:["sports"],char:"🏒",fitzpatrick_scale:!1,category:"activity"},h3={keywords:["sports"],char:"🏑",fitzpatrick_scale:!1,category:"activity"},d3={keywords:["sports","ball","stick"],char:"🥍",fitzpatrick_scale:!1,category:"activity"},p3={keywords:["sports"],char:"🏏",fitzpatrick_scale:!1,category:"activity"},m3={keywords:["sports","winter","cold","snow"],char:"🎿",fitzpatrick_scale:!1,category:"activity"},_3={keywords:["sports","winter","snow"],char:"⛷",fitzpatrick_scale:!1,category:"activity"},g3={keywords:["sports","winter"],char:"🏂",fitzpatrick_scale:!0,category:"activity"},y3={keywords:["sports","fencing","sword"],char:"🤺",fitzpatrick_scale:!1,category:"activity"},k3={keywords:["sports","wrestlers"],char:"🤼‍♀️",fitzpatrick_scale:!1,category:"activity"},b3={keywords:["sports","wrestlers"],char:"🤼‍♂️",fitzpatrick_scale:!1,category:"activity"},w3={keywords:["gymnastics"],char:"🤸‍♀️",fitzpatrick_scale:!0,category:"activity"},E3={keywords:["gymnastics"],char:"🤸‍♂️",fitzpatrick_scale:!0,category:"activity"},T3={keywords:["sports"],char:"🤾‍♀️",fitzpatrick_scale:!0,category:"activity"},A3={keywords:["sports"],char:"🤾‍♂️",fitzpatrick_scale:!0,category:"activity"},C3={keywords:["sports"],char:"⛸",fitzpatrick_scale:!1,category:"activity"},x3={keywords:["sports"],char:"🥌",fitzpatrick_scale:!1,category:"activity"},D3={keywords:["board"],char:"🛹",fitzpatrick_scale:!1,category:"activity"},z3={keywords:["sleigh","luge","toboggan"],char:"🛷",fitzpatrick_scale:!1,category:"activity"},S3={keywords:["sports"],char:"🏹",fitzpatrick_scale:!1,category:"activity"},I3={keywords:["food","hobby","summer"],char:"🎣",fitzpatrick_scale:!1,category:"activity"},N3={keywords:["sports","fighting"],char:"🥊",fitzpatrick_scale:!1,category:"activity"},F3={keywords:["judo","karate","taekwondo"],char:"🥋",fitzpatrick_scale:!1,category:"activity"},O3={keywords:["sports","hobby","water","ship","woman","female"],char:"🚣‍♀️",fitzpatrick_scale:!0,category:"activity"},L3={keywords:["sports","hobby","water","ship"],char:"🚣",fitzpatrick_scale:!0,category:"activity"},R3={keywords:["sports","hobby","woman","female","rock"],char:"🧗‍♀️",fitzpatrick_scale:!0,category:"activity"},v3={keywords:["sports","hobby","man","male","rock"],char:"🧗‍♂️",fitzpatrick_scale:!0,category:"activity"},P3={keywords:["sports","exercise","human","athlete","water","summer","woman","female"],char:"🏊‍♀️",fitzpatrick_scale:!0,category:"activity"},B3={keywords:["sports","exercise","human","athlete","water","summer"],char:"🏊",fitzpatrick_scale:!0,category:"activity"},M3={keywords:["sports","pool"],char:"🤽‍♀️",fitzpatrick_scale:!0,category:"activity"},U3={keywords:["sports","pool"],char:"🤽‍♂️",fitzpatrick_scale:!0,category:"activity"},H3={keywords:["woman","female","meditation","yoga","serenity","zen","mindfulness"],char:"🧘‍♀️",fitzpatrick_scale:!0,category:"activity"},j3={keywords:["man","male","meditation","yoga","serenity","zen","mindfulness"],char:"🧘‍♂️",fitzpatrick_scale:!0,category:"activity"},q3={keywords:["sports","ocean","sea","summer","beach","woman","female"],char:"🏄‍♀️",fitzpatrick_scale:!0,category:"activity"},Y3={keywords:["sports","ocean","sea","summer","beach"],char:"🏄",fitzpatrick_scale:!0,category:"activity"},$3={keywords:["clean","shower","bathroom"],char:"🛀",fitzpatrick_scale:!0,category:"activity"},W3={keywords:["sports","human","woman","female"],char:"⛹️‍♀️",fitzpatrick_scale:!0,category:"activity"},V3={keywords:["sports","human"],char:"⛹",fitzpatrick_scale:!0,category:"activity"},G3={keywords:["sports","training","exercise","woman","female"],char:"🏋️‍♀️",fitzpatrick_scale:!0,category:"activity"},Q3={keywords:["sports","training","exercise"],char:"🏋",fitzpatrick_scale:!0,category:"activity"},K3={keywords:["sports","bike","exercise","hipster","woman","female"],char:"🚴‍♀️",fitzpatrick_scale:!0,category:"activity"},X3={keywords:["sports","bike","exercise","hipster"],char:"🚴",fitzpatrick_scale:!0,category:"activity"},J3={keywords:["transportation","sports","human","race","bike","woman","female"],char:"🚵‍♀️",fitzpatrick_scale:!0,category:"activity"},Z3={keywords:["transportation","sports","human","race","bike"],char:"🚵",fitzpatrick_scale:!0,category:"activity"},ex={keywords:["animal","betting","competition","gambling","luck"],char:"🏇",fitzpatrick_scale:!0,category:"activity"},tx={keywords:["suit","business","levitate","hover","jump"],char:"🕴",fitzpatrick_scale:!0,category:"activity"},ax={keywords:["win","award","contest","place","ftw","ceremony"],char:"🏆",fitzpatrick_scale:!1,category:"activity"},rx={keywords:["play","pageant"],char:"🎽",fitzpatrick_scale:!1,category:"activity"},nx={keywords:["award","winning"],char:"🏅",fitzpatrick_scale:!1,category:"activity"},ix={keywords:["award","winning","army"],char:"🎖",fitzpatrick_scale:!1,category:"activity"},sx={keywords:["sports","cause","support","awareness"],char:"🎗",fitzpatrick_scale:!1,category:"activity"},ox={keywords:["flower","decoration","military"],char:"🏵",fitzpatrick_scale:!1,category:"activity"},cx={keywords:["event","concert","pass"],char:"🎫",fitzpatrick_scale:!1,category:"activity"},ux={keywords:["sports","concert","entrance"],char:"🎟",fitzpatrick_scale:!1,category:"activity"},lx={keywords:["acting","theater","drama"],char:"🎭",fitzpatrick_scale:!1,category:"activity"},fx={keywords:["design","paint","draw","colors"],char:"🎨",fitzpatrick_scale:!1,category:"activity"},hx={keywords:["festival","carnival","party"],char:"🎪",fitzpatrick_scale:!1,category:"activity"},dx={keywords:["juggle","balance","skill","multitask"],char:"🤹‍♀️",fitzpatrick_scale:!0,category:"activity"},px={keywords:["juggle","balance","skill","multitask"],char:"🤹‍♂️",fitzpatrick_scale:!0,category:"activity"},mx={keywords:["sound","music","PA","sing","talkshow"],char:"🎤",fitzpatrick_scale:!1,category:"activity"},_x={keywords:["music","score","gadgets"],char:"🎧",fitzpatrick_scale:!1,category:"activity"},gx={keywords:["treble","clef","compose"],char:"🎼",fitzpatrick_scale:!1,category:"activity"},yx={keywords:["piano","instrument","compose"],char:"🎹",fitzpatrick_scale:!1,category:"activity"},kx={keywords:["music","instrument","drumsticks","snare"],char:"🥁",fitzpatrick_scale:!1,category:"activity"},bx={keywords:["music","instrument","jazz","blues"],char:"🎷",fitzpatrick_scale:!1,category:"activity"},wx={keywords:["music","brass"],char:"🎺",fitzpatrick_scale:!1,category:"activity"},Ex={keywords:["music","instrument"],char:"🎸",fitzpatrick_scale:!1,category:"activity"},Tx={keywords:["music","instrument","orchestra","symphony"],char:"🎻",fitzpatrick_scale:!1,category:"activity"},Ax={keywords:["movie","film","record"],char:"🎬",fitzpatrick_scale:!1,category:"activity"},Cx={keywords:["play","console","PS4","controller"],char:"🎮",fitzpatrick_scale:!1,category:"activity"},xx={keywords:["game","arcade","play"],char:"👾",fitzpatrick_scale:!1,category:"activity"},Dx={keywords:["game","play","bar","target","bullseye"],char:"🎯",fitzpatrick_scale:!1,category:"activity"},zx={keywords:["dice","random","tabletop","play","luck"],char:"🎲",fitzpatrick_scale:!1,category:"activity"},Sx={keywords:["expendable"],char:"♟",fitzpatrick_scale:!1,category:"activity"},Ix={keywords:["bet","gamble","vegas","fruit machine","luck","casino"],char:"🎰",fitzpatrick_scale:!1,category:"activity"},Nx={keywords:["interlocking","puzzle","piece"],char:"🧩",fitzpatrick_scale:!1,category:"activity"},Fx={keywords:["sports","fun","play"],char:"🎳",fitzpatrick_scale:!1,category:"activity"},Ox={keywords:["red","transportation","vehicle"],char:"🚗",fitzpatrick_scale:!1,category:"travel_and_places"},Lx={keywords:["uber","vehicle","cars","transportation"],char:"🚕",fitzpatrick_scale:!1,category:"travel_and_places"},Rx={keywords:["transportation","vehicle"],char:"🚙",fitzpatrick_scale:!1,category:"travel_and_places"},vx={keywords:["car","vehicle","transportation"],char:"🚌",fitzpatrick_scale:!1,category:"travel_and_places"},Px={keywords:["bart","transportation","vehicle"],char:"🚎",fitzpatrick_scale:!1,category:"travel_and_places"},Bx={keywords:["sports","race","fast","formula","f1"],char:"🏎",fitzpatrick_scale:!1,category:"travel_and_places"},Mx={keywords:["vehicle","cars","transportation","law","legal","enforcement"],char:"🚓",fitzpatrick_scale:!1,category:"travel_and_places"},Ux={keywords:["health","911","hospital"],char:"🚑",fitzpatrick_scale:!1,category:"travel_and_places"},Hx={keywords:["transportation","cars","vehicle"],char:"🚒",fitzpatrick_scale:!1,category:"travel_and_places"},jx={keywords:["vehicle","car","transportation"],char:"🚐",fitzpatrick_scale:!1,category:"travel_and_places"},qx={keywords:["cars","transportation"],char:"🚚",fitzpatrick_scale:!1,category:"travel_and_places"},Yx={keywords:["vehicle","cars","transportation","express"],char:"🚛",fitzpatrick_scale:!1,category:"travel_and_places"},$x={keywords:["vehicle","car","farming","agriculture"],char:"🚜",fitzpatrick_scale:!1,category:"travel_and_places"},Wx={keywords:["vehicle","kick","razor"],char:"🛴",fitzpatrick_scale:!1,category:"travel_and_places"},Vx={keywords:["race","sports","fast"],char:"🏍",fitzpatrick_scale:!1,category:"travel_and_places"},Gx={keywords:["sports","bicycle","exercise","hipster"],char:"🚲",fitzpatrick_scale:!1,category:"travel_and_places"},Qx={keywords:["vehicle","vespa","sasha"],char:"🛵",fitzpatrick_scale:!1,category:"travel_and_places"},Kx={keywords:["police","ambulance","911","emergency","alert","error","pinged","law","legal"],char:"🚨",fitzpatrick_scale:!1,category:"travel_and_places"},Xx={keywords:["vehicle","law","legal","enforcement","911"],char:"🚔",fitzpatrick_scale:!1,category:"travel_and_places"},Jx={keywords:["vehicle","transportation"],char:"🚍",fitzpatrick_scale:!1,category:"travel_and_places"},Zx={keywords:["car","vehicle","transportation"],char:"🚘",fitzpatrick_scale:!1,category:"travel_and_places"},eD={keywords:["vehicle","cars","uber"],char:"🚖",fitzpatrick_scale:!1,category:"travel_and_places"},tD={keywords:["transportation","vehicle","ski"],char:"🚡",fitzpatrick_scale:!1,category:"travel_and_places"},aD={keywords:["transportation","vehicle","ski"],char:"🚠",fitzpatrick_scale:!1,category:"travel_and_places"},rD={keywords:["vehicle","transportation"],char:"🚟",fitzpatrick_scale:!1,category:"travel_and_places"},nD={keywords:["transportation","vehicle"],char:"🚃",fitzpatrick_scale:!1,category:"travel_and_places"},iD={keywords:["transportation","vehicle","carriage","public","travel"],char:"🚋",fitzpatrick_scale:!1,category:"travel_and_places"},sD={keywords:["transportation","vehicle"],char:"🚝",fitzpatrick_scale:!1,category:"travel_and_places"},oD={keywords:["transportation","vehicle"],char:"🚄",fitzpatrick_scale:!1,category:"travel_and_places"},cD={keywords:["transportation","vehicle","speed","fast","public","travel"],char:"🚅",fitzpatrick_scale:!1,category:"travel_and_places"},uD={keywords:["transportation","vehicle"],char:"🚈",fitzpatrick_scale:!1,category:"travel_and_places"},lD={keywords:["transportation","vehicle"],char:"🚞",fitzpatrick_scale:!1,category:"travel_and_places"},fD={keywords:["transportation","vehicle","train"],char:"🚂",fitzpatrick_scale:!1,category:"travel_and_places"},hD={keywords:["transportation","vehicle"],char:"🚆",fitzpatrick_scale:!1,category:"travel_and_places"},dD={keywords:["transportation","blue-square","mrt","underground","tube"],char:"🚇",fitzpatrick_scale:!1,category:"travel_and_places"},pD={keywords:["transportation","vehicle"],char:"🚊",fitzpatrick_scale:!1,category:"travel_and_places"},mD={keywords:["transportation","vehicle","public"],char:"🚉",fitzpatrick_scale:!1,category:"travel_and_places"},_D={keywords:["transportation","vehicle","ufo"],char:"🛸",fitzpatrick_scale:!1,category:"travel_and_places"},gD={keywords:["transportation","vehicle","fly"],char:"🚁",fitzpatrick_scale:!1,category:"travel_and_places"},yD={keywords:["flight","transportation","fly","vehicle"],char:"🛩",fitzpatrick_scale:!1,category:"travel_and_places"},kD={keywords:["vehicle","transportation","flight","fly"],char:"✈️",fitzpatrick_scale:!1,category:"travel_and_places"},bD={keywords:["airport","flight","landing"],char:"🛫",fitzpatrick_scale:!1,category:"travel_and_places"},wD={keywords:["airport","flight","boarding"],char:"🛬",fitzpatrick_scale:!1,category:"travel_and_places"},ED={keywords:["ship","summer","transportation","water","sailing"],char:"⛵",fitzpatrick_scale:!1,category:"travel_and_places"},TD={keywords:["ship"],char:"🛥",fitzpatrick_scale:!1,category:"travel_and_places"},AD={keywords:["ship","transportation","vehicle","summer"],char:"🚤",fitzpatrick_scale:!1,category:"travel_and_places"},CD={keywords:["boat","ship","yacht"],char:"⛴",fitzpatrick_scale:!1,category:"travel_and_places"},xD={keywords:["yacht","cruise","ferry"],char:"🛳",fitzpatrick_scale:!1,category:"travel_and_places"},DD={keywords:["launch","ship","staffmode","NASA","outer space","outer_space","fly"],char:"🚀",fitzpatrick_scale:!1,category:"travel_and_places"},zD={keywords:["communication","gps","orbit","spaceflight","NASA","ISS"],char:"🛰",fitzpatrick_scale:!1,category:"travel_and_places"},SD={keywords:["sit","airplane","transport","bus","flight","fly"],char:"💺",fitzpatrick_scale:!1,category:"travel_and_places"},ID={keywords:["boat","paddle","water","ship"],char:"🛶",fitzpatrick_scale:!1,category:"travel_and_places"},ND={keywords:["ship","ferry","sea","boat"],char:"⚓",fitzpatrick_scale:!1,category:"travel_and_places"},FD={keywords:["wip","progress","caution","warning"],char:"🚧",fitzpatrick_scale:!1,category:"travel_and_places"},OD={keywords:["gas station","petroleum"],char:"⛽",fitzpatrick_scale:!1,category:"travel_and_places"},LD={keywords:["transportation","wait"],char:"🚏",fitzpatrick_scale:!1,category:"travel_and_places"},RD={keywords:["transportation","driving"],char:"🚦",fitzpatrick_scale:!1,category:"travel_and_places"},vD={keywords:["transportation","signal"],char:"🚥",fitzpatrick_scale:!1,category:"travel_and_places"},PD={keywords:["contest","finishline","race","gokart"],char:"🏁",fitzpatrick_scale:!1,category:"travel_and_places"},BD={keywords:["transportation","titanic","deploy"],char:"🚢",fitzpatrick_scale:!1,category:"travel_and_places"},MD={keywords:["photo","carnival","londoneye"],char:"🎡",fitzpatrick_scale:!1,category:"travel_and_places"},UD={keywords:["carnival","playground","photo","fun"],char:"🎢",fitzpatrick_scale:!1,category:"travel_and_places"},HD={keywords:["photo","carnival"],char:"🎠",fitzpatrick_scale:!1,category:"travel_and_places"},jD={keywords:["wip","working","progress"],char:"🏗",fitzpatrick_scale:!1,category:"travel_and_places"},qD={keywords:["photo","mountain"],char:"🌁",fitzpatrick_scale:!1,category:"travel_and_places"},YD={keywords:["photo","japanese"],char:"🗼",fitzpatrick_scale:!1,category:"travel_and_places"},$D={keywords:["building","industry","pollution","smoke"],char:"🏭",fitzpatrick_scale:!1,category:"travel_and_places"},WD={keywords:["photo","summer","water","fresh"],char:"⛲",fitzpatrick_scale:!1,category:"travel_and_places"},VD={keywords:["photo","japan","asia","tsukimi"],char:"🎑",fitzpatrick_scale:!1,category:"travel_and_places"},GD={keywords:["photo","nature","environment"],char:"⛰",fitzpatrick_scale:!1,category:"travel_and_places"},QD={keywords:["photo","nature","environment","winter","cold"],char:"🏔",fitzpatrick_scale:!1,category:"travel_and_places"},KD={keywords:["photo","mountain","nature","japanese"],char:"🗻",fitzpatrick_scale:!1,category:"travel_and_places"},XD={keywords:["photo","nature","disaster"],char:"🌋",fitzpatrick_scale:!1,category:"travel_and_places"},JD={keywords:["nation","country","japanese","asia"],char:"🗾",fitzpatrick_scale:!1,category:"travel_and_places"},ZD={keywords:["photo","outdoors","tent"],char:"🏕",fitzpatrick_scale:!1,category:"travel_and_places"},e6={keywords:["photo","camping","outdoors"],char:"⛺",fitzpatrick_scale:!1,category:"travel_and_places"},t6={keywords:["photo","environment","nature"],char:"🏞",fitzpatrick_scale:!1,category:"travel_and_places"},a6={keywords:["road","cupertino","interstate","highway"],char:"🛣",fitzpatrick_scale:!1,category:"travel_and_places"},r6={keywords:["train","transportation"],char:"🛤",fitzpatrick_scale:!1,category:"travel_and_places"},n6={keywords:["morning","view","vacation","photo"],char:"🌅",fitzpatrick_scale:!1,category:"travel_and_places"},i6={keywords:["view","vacation","photo"],char:"🌄",fitzpatrick_scale:!1,category:"travel_and_places"},s6={keywords:["photo","warm","saharah"],char:"🏜",fitzpatrick_scale:!1,category:"travel_and_places"},o6={keywords:["weather","summer","sunny","sand","mojito"],char:"🏖",fitzpatrick_scale:!1,category:"travel_and_places"},c6={keywords:["photo","tropical","mojito"],char:"🏝",fitzpatrick_scale:!1,category:"travel_and_places"},u6={keywords:["photo","good morning","dawn"],char:"🌇",fitzpatrick_scale:!1,category:"travel_and_places"},l6={keywords:["photo","evening","sky","buildings"],char:"🌆",fitzpatrick_scale:!1,category:"travel_and_places"},f6={keywords:["photo","night life","urban"],char:"🏙",fitzpatrick_scale:!1,category:"travel_and_places"},h6={keywords:["evening","city","downtown"],char:"🌃",fitzpatrick_scale:!1,category:"travel_and_places"},d6={keywords:["photo","sanfrancisco"],char:"🌉",fitzpatrick_scale:!1,category:"travel_and_places"},p6={keywords:["photo","space","stars"],char:"🌌",fitzpatrick_scale:!1,category:"travel_and_places"},m6={keywords:["night","photo"],char:"🌠",fitzpatrick_scale:!1,category:"travel_and_places"},_6={keywords:["stars","night","shine"],char:"🎇",fitzpatrick_scale:!1,category:"travel_and_places"},g6={keywords:["photo","festival","carnival","congratulations"],char:"🎆",fitzpatrick_scale:!1,category:"travel_and_places"},y6={keywords:["nature","happy","unicorn_face","photo","sky","spring"],char:"🌈",fitzpatrick_scale:!1,category:"travel_and_places"},k6={keywords:["buildings","photo"],char:"🏘",fitzpatrick_scale:!1,category:"travel_and_places"},b6={keywords:["building","royalty","history"],char:"🏰",fitzpatrick_scale:!1,category:"travel_and_places"},w6={keywords:["photo","building"],char:"🏯",fitzpatrick_scale:!1,category:"travel_and_places"},E6={keywords:["photo","place","sports","concert","venue"],char:"🏟",fitzpatrick_scale:!1,category:"travel_and_places"},T6={keywords:["american","newyork"],char:"🗽",fitzpatrick_scale:!1,category:"travel_and_places"},A6={keywords:["building","home"],char:"🏠",fitzpatrick_scale:!1,category:"travel_and_places"},C6={keywords:["home","plant","nature"],char:"🏡",fitzpatrick_scale:!1,category:"travel_and_places"},x6={keywords:["abandon","evict","broken","building"],char:"🏚",fitzpatrick_scale:!1,category:"travel_and_places"},D6={keywords:["building","bureau","work"],char:"🏢",fitzpatrick_scale:!1,category:"travel_and_places"},z6={keywords:["building","shopping","mall"],char:"🏬",fitzpatrick_scale:!1,category:"travel_and_places"},S6={keywords:["building","envelope","communication"],char:"🏣",fitzpatrick_scale:!1,category:"travel_and_places"},I6={keywords:["building","email"],char:"🏤",fitzpatrick_scale:!1,category:"travel_and_places"},N6={keywords:["building","health","surgery","doctor"],char:"🏥",fitzpatrick_scale:!1,category:"travel_and_places"},F6={keywords:["building","money","sales","cash","business","enterprise"],char:"🏦",fitzpatrick_scale:!1,category:"travel_and_places"},O6={keywords:["building","accomodation","checkin"],char:"🏨",fitzpatrick_scale:!1,category:"travel_and_places"},L6={keywords:["building","shopping","groceries"],char:"🏪",fitzpatrick_scale:!1,category:"travel_and_places"},R6={keywords:["building","student","education","learn","teach"],char:"🏫",fitzpatrick_scale:!1,category:"travel_and_places"},v6={keywords:["like","affection","dating"],char:"🏩",fitzpatrick_scale:!1,category:"travel_and_places"},P6={keywords:["love","like","affection","couple","marriage","bride","groom"],char:"💒",fitzpatrick_scale:!1,category:"travel_and_places"},B6={keywords:["art","culture","history"],char:"🏛",fitzpatrick_scale:!1,category:"travel_and_places"},M6={keywords:["building","religion","christ"],char:"⛪",fitzpatrick_scale:!1,category:"travel_and_places"},U6={keywords:["islam","worship","minaret"],char:"🕌",fitzpatrick_scale:!1,category:"travel_and_places"},H6={keywords:["judaism","worship","temple","jewish"],char:"🕍",fitzpatrick_scale:!1,category:"travel_and_places"},j6={keywords:["mecca","mosque","islam"],char:"🕋",fitzpatrick_scale:!1,category:"travel_and_places"},q6={keywords:["temple","japan","kyoto"],char:"⛩",fitzpatrick_scale:!1,category:"travel_and_places"},Y6={keywords:["time","accessories"],char:"⌚",fitzpatrick_scale:!1,category:"objects"},$6={keywords:["technology","apple","gadgets","dial"],char:"📱",fitzpatrick_scale:!1,category:"objects"},W6={keywords:["iphone","incoming"],char:"📲",fitzpatrick_scale:!1,category:"objects"},V6={keywords:["technology","laptop","screen","display","monitor"],char:"💻",fitzpatrick_scale:!1,category:"objects"},G6={keywords:["technology","computer","type","input","text"],char:"⌨",fitzpatrick_scale:!1,category:"objects"},Q6={keywords:["technology","computing","screen"],char:"🖥",fitzpatrick_scale:!1,category:"objects"},K6={keywords:["paper","ink"],char:"🖨",fitzpatrick_scale:!1,category:"objects"},X6={keywords:["click"],char:"🖱",fitzpatrick_scale:!1,category:"objects"},J6={keywords:["technology","trackpad"],char:"🖲",fitzpatrick_scale:!1,category:"objects"},Z6={keywords:["game","play"],char:"🕹",fitzpatrick_scale:!1,category:"objects"},ez={keywords:["tool"],char:"🗜",fitzpatrick_scale:!1,category:"objects"},tz={keywords:["technology","record","data","disk","90s"],char:"💽",fitzpatrick_scale:!1,category:"objects"},az={keywords:["oldschool","technology","save","90s","80s"],char:"💾",fitzpatrick_scale:!1,category:"objects"},rz={keywords:["technology","dvd","disk","disc","90s"],char:"💿",fitzpatrick_scale:!1,category:"objects"},nz={keywords:["cd","disk","disc"],char:"📀",fitzpatrick_scale:!1,category:"objects"},iz={keywords:["record","video","oldschool","90s","80s"],char:"📼",fitzpatrick_scale:!1,category:"objects"},sz={keywords:["gadgets","photography"],char:"📷",fitzpatrick_scale:!1,category:"objects"},oz={keywords:["photography","gadgets"],char:"📸",fitzpatrick_scale:!1,category:"objects"},cz={keywords:["film","record"],char:"📹",fitzpatrick_scale:!1,category:"objects"},uz={keywords:["film","record"],char:"🎥",fitzpatrick_scale:!1,category:"objects"},lz={keywords:["video","tape","record","movie"],char:"📽",fitzpatrick_scale:!1,category:"objects"},fz={keywords:["movie"],char:"🎞",fitzpatrick_scale:!1,category:"objects"},hz={keywords:["technology","communication","dial"],char:"📞",fitzpatrick_scale:!1,category:"objects"},dz={keywords:["technology","communication","dial","telephone"],char:"☎️",fitzpatrick_scale:!1,category:"objects"},pz={keywords:["bbcall","oldschool","90s"],char:"📟",fitzpatrick_scale:!1,category:"objects"},mz={keywords:["communication","technology"],char:"📠",fitzpatrick_scale:!1,category:"objects"},_z={keywords:["technology","program","oldschool","show","television"],char:"📺",fitzpatrick_scale:!1,category:"objects"},gz={keywords:["communication","music","podcast","program"],char:"📻",fitzpatrick_scale:!1,category:"objects"},yz={keywords:["sing","recording","artist","talkshow"],char:"🎙",fitzpatrick_scale:!1,category:"objects"},kz={keywords:["scale"],char:"🎚",fitzpatrick_scale:!1,category:"objects"},bz={keywords:["dial"],char:"🎛",fitzpatrick_scale:!1,category:"objects"},wz={keywords:["magnetic","navigation","orienteering"],char:"🧭",fitzpatrick_scale:!1,category:"objects"},Ez={keywords:["time","deadline"],char:"⏱",fitzpatrick_scale:!1,category:"objects"},Tz={keywords:["alarm"],char:"⏲",fitzpatrick_scale:!1,category:"objects"},Az={keywords:["time","wake"],char:"⏰",fitzpatrick_scale:!1,category:"objects"},Cz={keywords:["time"],char:"🕰",fitzpatrick_scale:!1,category:"objects"},xz={keywords:["oldschool","time","countdown"],char:"⏳",fitzpatrick_scale:!1,category:"objects"},Dz={keywords:["time","clock","oldschool","limit","exam","quiz","test"],char:"⌛",fitzpatrick_scale:!1,category:"objects"},zz={keywords:["communication","future","radio","space"],char:"📡",fitzpatrick_scale:!1,category:"objects"},Sz={keywords:["power","energy","sustain"],char:"🔋",fitzpatrick_scale:!1,category:"objects"},Iz={keywords:["charger","power"],char:"🔌",fitzpatrick_scale:!1,category:"objects"},Nz={keywords:["light","electricity","idea"],char:"💡",fitzpatrick_scale:!1,category:"objects"},Fz={keywords:["dark","camping","sight","night"],char:"🔦",fitzpatrick_scale:!1,category:"objects"},Oz={keywords:["fire","wax"],char:"🕯",fitzpatrick_scale:!1,category:"objects"},Lz={keywords:["quench"],char:"🧯",fitzpatrick_scale:!1,category:"objects"},Rz={keywords:["bin","trash","rubbish","garbage","toss"],char:"🗑",fitzpatrick_scale:!1,category:"objects"},vz={keywords:["barrell"],char:"🛢",fitzpatrick_scale:!1,category:"objects"},Pz={keywords:["dollar","bills","payment","sale"],char:"💸",fitzpatrick_scale:!1,category:"objects"},Bz={keywords:["money","sales","bill","currency"],char:"💵",fitzpatrick_scale:!1,category:"objects"},Mz={keywords:["money","sales","japanese","dollar","currency"],char:"💴",fitzpatrick_scale:!1,category:"objects"},Uz={keywords:["money","sales","dollar","currency"],char:"💶",fitzpatrick_scale:!1,category:"objects"},Hz={keywords:["british","sterling","money","sales","bills","uk","england","currency"],char:"💷",fitzpatrick_scale:!1,category:"objects"},jz={keywords:["dollar","payment","coins","sale"],char:"💰",fitzpatrick_scale:!1,category:"objects"},qz={keywords:["money","sales","dollar","bill","payment","shopping"],char:"💳",fitzpatrick_scale:!1,category:"objects"},Yz={keywords:["blue","ruby","diamond","jewelry"],char:"💎",fitzpatrick_scale:!1,category:"objects"},$z={keywords:["law","fairness","weight"],char:"⚖",fitzpatrick_scale:!1,category:"objects"},Wz={keywords:["tools","diy","fix","maintainer","mechanic"],char:"🧰",fitzpatrick_scale:!1,category:"objects"},Vz={keywords:["tools","diy","ikea","fix","maintainer"],char:"🔧",fitzpatrick_scale:!1,category:"objects"},Gz={keywords:["tools","build","create"],char:"🔨",fitzpatrick_scale:!1,category:"objects"},Qz={keywords:["tools","build","create"],char:"⚒",fitzpatrick_scale:!1,category:"objects"},Kz={keywords:["tools","build","create"],char:"🛠",fitzpatrick_scale:!1,category:"objects"},Xz={keywords:["tools","dig"],char:"⛏",fitzpatrick_scale:!1,category:"objects"},Jz={keywords:["handy","tools","fix"],char:"🔩",fitzpatrick_scale:!1,category:"objects"},Zz={keywords:["cog"],char:"⚙",fitzpatrick_scale:!1,category:"objects"},eS={keywords:["bricks"],char:"🧱",fitzpatrick_scale:!1,category:"objects"},tS={keywords:["lock","arrest"],char:"⛓",fitzpatrick_scale:!1,category:"objects"},aS={keywords:["attraction","magnetic"],char:"🧲",fitzpatrick_scale:!1,category:"objects"},rS={keywords:["violence","weapon","pistol","revolver"],char:"🔫",fitzpatrick_scale:!1,category:"objects"},nS={keywords:["boom","explode","explosion","terrorism"],char:"💣",fitzpatrick_scale:!1,category:"objects"},iS={keywords:["dynamite","boom","explode","explosion","explosive"],char:"🧨",fitzpatrick_scale:!1,category:"objects"},sS={keywords:["knife","blade","cutlery","kitchen","weapon"],char:"🔪",fitzpatrick_scale:!1,category:"objects"},oS={keywords:["weapon"],char:"🗡",fitzpatrick_scale:!1,category:"objects"},cS={keywords:["weapon"],char:"⚔",fitzpatrick_scale:!1,category:"objects"},uS={keywords:["protection","security"],char:"🛡",fitzpatrick_scale:!1,category:"objects"},lS={keywords:["kills","tobacco","cigarette","joint","smoke"],char:"🚬",fitzpatrick_scale:!1,category:"objects"},fS={keywords:["poison","danger","deadly","scary","death","pirate","evil"],char:"☠",fitzpatrick_scale:!1,category:"objects"},hS={keywords:["vampire","dead","die","death","rip","graveyard","cemetery","casket","funeral","box"],char:"⚰",fitzpatrick_scale:!1,category:"objects"},dS={keywords:["dead","die","death","rip","ashes"],char:"⚱",fitzpatrick_scale:!1,category:"objects"},pS={keywords:["vase","jar"],char:"🏺",fitzpatrick_scale:!1,category:"objects"},mS={keywords:["disco","party","magic","circus","fortune_teller"],char:"🔮",fitzpatrick_scale:!1,category:"objects"},_S={keywords:["dhikr","religious"],char:"📿",fitzpatrick_scale:!1,category:"objects"},gS={keywords:["bead","charm"],char:"🧿",fitzpatrick_scale:!1,category:"objects"},yS={keywords:["hair","salon","style"],char:"💈",fitzpatrick_scale:!1,category:"objects"},kS={keywords:["distilling","science","experiment","chemistry"],char:"⚗",fitzpatrick_scale:!1,category:"objects"},bS={keywords:["stars","space","zoom","science","astronomy"],char:"🔭",fitzpatrick_scale:!1,category:"objects"},wS={keywords:["laboratory","experiment","zoomin","science","study"],char:"🔬",fitzpatrick_scale:!1,category:"objects"},ES={keywords:["embarrassing"],char:"🕳",fitzpatrick_scale:!1,category:"objects"},TS={keywords:["health","medicine","doctor","pharmacy","drug"],char:"💊",fitzpatrick_scale:!1,category:"objects"},AS={keywords:["health","hospital","drugs","blood","medicine","needle","doctor","nurse"],char:"💉",fitzpatrick_scale:!1,category:"objects"},CS={keywords:["biologist","genetics","life"],char:"🧬",fitzpatrick_scale:!1,category:"objects"},xS={keywords:["amoeba","bacteria","germs"],char:"🦠",fitzpatrick_scale:!1,category:"objects"},DS={keywords:["bacteria","biology","culture","lab"],char:"🧫",fitzpatrick_scale:!1,category:"objects"},zS={keywords:["chemistry","experiment","lab","science"],char:"🧪",fitzpatrick_scale:!1,category:"objects"},SS={keywords:["weather","temperature","hot","cold"],char:"🌡",fitzpatrick_scale:!1,category:"objects"},IS={keywords:["cleaning","sweeping","witch"],char:"🧹",fitzpatrick_scale:!1,category:"objects"},NS={keywords:["laundry"],char:"🧺",fitzpatrick_scale:!1,category:"objects"},FS={keywords:["roll"],char:"🧻",fitzpatrick_scale:!1,category:"objects"},OS={keywords:["sale","tag"],char:"🏷",fitzpatrick_scale:!1,category:"objects"},LS={keywords:["favorite","label","save"],char:"🔖",fitzpatrick_scale:!1,category:"objects"},RS={keywords:["restroom","wc","washroom","bathroom","potty"],char:"🚽",fitzpatrick_scale:!1,category:"objects"},vS={keywords:["clean","water","bathroom"],char:"🚿",fitzpatrick_scale:!1,category:"objects"},PS={keywords:["clean","shower","bathroom"],char:"🛁",fitzpatrick_scale:!1,category:"objects"},BS={keywords:["bar","bathing","cleaning","lather"],char:"🧼",fitzpatrick_scale:!1,category:"objects"},MS={keywords:["absorbing","cleaning","porous"],char:"🧽",fitzpatrick_scale:!1,category:"objects"},US={keywords:["moisturizer","sunscreen"],char:"🧴",fitzpatrick_scale:!1,category:"objects"},HS={keywords:["lock","door","password"],char:"🔑",fitzpatrick_scale:!1,category:"objects"},jS={keywords:["lock","door","password"],char:"🗝",fitzpatrick_scale:!1,category:"objects"},qS={keywords:["read","chill"],char:"🛋",fitzpatrick_scale:!1,category:"objects"},YS={keywords:["bed","rest"],char:"🛌",fitzpatrick_scale:!0,category:"objects"},$S={keywords:["sleep","rest"],char:"🛏",fitzpatrick_scale:!1,category:"objects"},WS={keywords:["house","entry","exit"],char:"🚪",fitzpatrick_scale:!1,category:"objects"},VS={keywords:["service"],char:"🛎",fitzpatrick_scale:!1,category:"objects"},GS={keywords:["plush","stuffed"],char:"🧸",fitzpatrick_scale:!1,category:"objects"},QS={keywords:["photography"],char:"🖼",fitzpatrick_scale:!1,category:"objects"},KS={keywords:["location","direction"],char:"🗺",fitzpatrick_scale:!1,category:"objects"},XS={keywords:["weather","summer"],char:"⛱",fitzpatrick_scale:!1,category:"objects"},JS={keywords:["rock","easter island","moai"],char:"🗿",fitzpatrick_scale:!1,category:"objects"},ZS={keywords:["mall","buy","purchase"],char:"🛍",fitzpatrick_scale:!1,category:"objects"},eI={keywords:["trolley"],char:"🛒",fitzpatrick_scale:!1,category:"objects"},tI={keywords:["party","celebration","birthday","circus"],char:"🎈",fitzpatrick_scale:!1,category:"objects"},aI={keywords:["fish","japanese","koinobori","carp","banner"],char:"🎏",fitzpatrick_scale:!1,category:"objects"},rI={keywords:["decoration","pink","girl","bowtie"],char:"🎀",fitzpatrick_scale:!1,category:"objects"},nI={keywords:["present","birthday","christmas","xmas"],char:"🎁",fitzpatrick_scale:!1,category:"objects"},iI={keywords:["festival","party","birthday","circus"],char:"🎊",fitzpatrick_scale:!1,category:"objects"},sI={keywords:["party","congratulations","birthday","magic","circus","celebration"],char:"🎉",fitzpatrick_scale:!1,category:"objects"},oI={keywords:["japanese","toy","kimono"],char:"🎎",fitzpatrick_scale:!1,category:"objects"},cI={keywords:["nature","ding","spring","bell"],char:"🎐",fitzpatrick_scale:!1,category:"objects"},uI={keywords:["japanese","nation","country","border"],char:"🎌",fitzpatrick_scale:!1,category:"objects"},lI={keywords:["light","paper","halloween","spooky"],char:"🏮",fitzpatrick_scale:!1,category:"objects"},fI={keywords:["gift"],char:"🧧",fitzpatrick_scale:!1,category:"objects"},hI={keywords:["letter","postal","inbox","communication"],char:"✉️",fitzpatrick_scale:!1,category:"objects"},dI={keywords:["email","communication"],char:"📩",fitzpatrick_scale:!1,category:"objects"},pI={keywords:["email","inbox"],char:"📨",fitzpatrick_scale:!1,category:"objects"},mI={keywords:["email","like","affection","envelope","valentines"],char:"💌",fitzpatrick_scale:!1,category:"objects"},_I={keywords:["email","letter","envelope"],char:"📮",fitzpatrick_scale:!1,category:"objects"},gI={keywords:["email","communication","inbox"],char:"📪",fitzpatrick_scale:!1,category:"objects"},yI={keywords:["email","inbox","communication"],char:"📫",fitzpatrick_scale:!1,category:"objects"},kI={keywords:["email","inbox","communication"],char:"📬",fitzpatrick_scale:!1,category:"objects"},bI={keywords:["email","inbox"],char:"📭",fitzpatrick_scale:!1,category:"objects"},wI={keywords:["instrument","music"],char:"📯",fitzpatrick_scale:!1,category:"objects"},EI={keywords:["email","documents"],char:"📥",fitzpatrick_scale:!1,category:"objects"},TI={keywords:["inbox","email"],char:"📤",fitzpatrick_scale:!1,category:"objects"},AI={keywords:["documents","ancient","history","paper"],char:"📜",fitzpatrick_scale:!1,category:"objects"},CI={keywords:["documents","office","paper"],char:"📃",fitzpatrick_scale:!1,category:"objects"},xI={keywords:["favorite","save","order","tidy"],char:"📑",fitzpatrick_scale:!1,category:"objects"},DI={keywords:["accounting","expenses"],char:"🧾",fitzpatrick_scale:!1,category:"objects"},zI={keywords:["graph","presentation","stats"],char:"📊",fitzpatrick_scale:!1,category:"objects"},SI={keywords:["graph","presentation","stats","recovery","business","economics","money","sales","good","success"],char:"📈",fitzpatrick_scale:!1,category:"objects"},II={keywords:["graph","presentation","stats","recession","business","economics","money","sales","bad","failure"],char:"📉",fitzpatrick_scale:!1,category:"objects"},NI={keywords:["documents","office","paper","information"],char:"📄",fitzpatrick_scale:!1,category:"objects"},FI={keywords:["calendar","schedule"],char:"📅",fitzpatrick_scale:!1,category:"objects"},OI={keywords:["schedule","date","planning"],char:"📆",fitzpatrick_scale:!1,category:"objects"},LI={keywords:["date","schedule","planning"],char:"🗓",fitzpatrick_scale:!1,category:"objects"},RI={keywords:["business","stationery"],char:"📇",fitzpatrick_scale:!1,category:"objects"},vI={keywords:["business","stationery"],char:"🗃",fitzpatrick_scale:!1,category:"objects"},PI={keywords:["election","vote"],char:"🗳",fitzpatrick_scale:!1,category:"objects"},BI={keywords:["filing","organizing"],char:"🗄",fitzpatrick_scale:!1,category:"objects"},MI={keywords:["stationery","documents"],char:"📋",fitzpatrick_scale:!1,category:"objects"},UI={keywords:["memo","stationery"],char:"🗒",fitzpatrick_scale:!1,category:"objects"},HI={keywords:["documents","business","office"],char:"📁",fitzpatrick_scale:!1,category:"objects"},jI={keywords:["documents","load"],char:"📂",fitzpatrick_scale:!1,category:"objects"},qI={keywords:["organizing","business","stationery"],char:"🗂",fitzpatrick_scale:!1,category:"objects"},YI={keywords:["press","headline"],char:"🗞",fitzpatrick_scale:!1,category:"objects"},$I={keywords:["press","headline"],char:"📰",fitzpatrick_scale:!1,category:"objects"},WI={keywords:["stationery","record","notes","paper","study"],char:"📓",fitzpatrick_scale:!1,category:"objects"},VI={keywords:["read","library","knowledge","textbook","learn"],char:"📕",fitzpatrick_scale:!1,category:"objects"},GI={keywords:["read","library","knowledge","study"],char:"📗",fitzpatrick_scale:!1,category:"objects"},QI={keywords:["read","library","knowledge","learn","study"],char:"📘",fitzpatrick_scale:!1,category:"objects"},KI={keywords:["read","library","knowledge","textbook","study"],char:"📙",fitzpatrick_scale:!1,category:"objects"},XI={keywords:["classroom","notes","record","paper","study"],char:"📔",fitzpatrick_scale:!1,category:"objects"},JI={keywords:["notes","paper"],char:"📒",fitzpatrick_scale:!1,category:"objects"},ZI={keywords:["literature","library","study"],char:"📚",fitzpatrick_scale:!1,category:"objects"},eN={keywords:["book","read","library","knowledge","literature","learn","study"],char:"📖",fitzpatrick_scale:!1,category:"objects"},tN={keywords:["diaper"],char:"🧷",fitzpatrick_scale:!1,category:"objects"},aN={keywords:["rings","url"],char:"🔗",fitzpatrick_scale:!1,category:"objects"},rN={keywords:["documents","stationery"],char:"📎",fitzpatrick_scale:!1,category:"objects"},nN={keywords:["documents","stationery"],char:"🖇",fitzpatrick_scale:!1,category:"objects"},iN={keywords:["stationery","cut"],char:"✂️",fitzpatrick_scale:!1,category:"objects"},sN={keywords:["stationery","math","architect","sketch"],char:"📐",fitzpatrick_scale:!1,category:"objects"},oN={keywords:["stationery","calculate","length","math","school","drawing","architect","sketch"],char:"📏",fitzpatrick_scale:!1,category:"objects"},cN={keywords:["calculation"],char:"🧮",fitzpatrick_scale:!1,category:"objects"},uN={keywords:["stationery","mark","here"],char:"📌",fitzpatrick_scale:!1,category:"objects"},lN={keywords:["stationery","location","map","here"],char:"📍",fitzpatrick_scale:!1,category:"objects"},fN={keywords:["mark","milestone","place"],char:"🚩",fitzpatrick_scale:!1,category:"objects"},hN={keywords:["losing","loser","lost","surrender","give up","fail"],char:"🏳",fitzpatrick_scale:!1,category:"objects"},dN={keywords:["pirate"],char:"🏴",fitzpatrick_scale:!1,category:"objects"},pN={keywords:["flag","rainbow","pride","gay","lgbt","glbt","queer","homosexual","lesbian","bisexual","transgender"],char:"🏳️‍🌈",fitzpatrick_scale:!1,category:"objects"},mN={keywords:["security","privacy"],char:"🔐",fitzpatrick_scale:!1,category:"objects"},_N={keywords:["security","password","padlock"],char:"🔒",fitzpatrick_scale:!1,category:"objects"},gN={keywords:["privacy","security"],char:"🔓",fitzpatrick_scale:!1,category:"objects"},yN={keywords:["security","secret"],char:"🔏",fitzpatrick_scale:!1,category:"objects"},kN={keywords:["stationery","writing","write"],char:"🖊",fitzpatrick_scale:!1,category:"objects"},bN={keywords:["stationery","writing","write"],char:"🖋",fitzpatrick_scale:!1,category:"objects"},wN={keywords:["pen","stationery","writing","write"],char:"✒️",fitzpatrick_scale:!1,category:"objects"},EN={keywords:["write","documents","stationery","pencil","paper","writing","legal","exam","quiz","test","study","compose"],char:"📝",fitzpatrick_scale:!1,category:"objects"},TN={keywords:["stationery","write","paper","writing","school","study"],char:"✏️",fitzpatrick_scale:!1,category:"objects"},AN={keywords:["drawing","creativity"],char:"🖍",fitzpatrick_scale:!1,category:"objects"},CN={keywords:["drawing","creativity","art"],char:"🖌",fitzpatrick_scale:!1,category:"objects"},xN={keywords:["search","zoom","find","detective"],char:"🔍",fitzpatrick_scale:!1,category:"objects"},DN={keywords:["search","zoom","find","detective"],char:"🔎",fitzpatrick_scale:!1,category:"objects"},zN={keywords:["love","like","valentines"],char:"❤️",fitzpatrick_scale:!1,category:"symbols"},SN={keywords:["love","like","affection","valentines"],char:"🧡",fitzpatrick_scale:!1,category:"symbols"},IN={keywords:["love","like","affection","valentines"],char:"💛",fitzpatrick_scale:!1,category:"symbols"},NN={keywords:["love","like","affection","valentines"],char:"💚",fitzpatrick_scale:!1,category:"symbols"},FN={keywords:["love","like","affection","valentines"],char:"💙",fitzpatrick_scale:!1,category:"symbols"},ON={keywords:["love","like","affection","valentines"],char:"💜",fitzpatrick_scale:!1,category:"symbols"},LN={keywords:["evil"],char:"🖤",fitzpatrick_scale:!1,category:"symbols"},RN={keywords:["sad","sorry","break","heart","heartbreak"],char:"💔",fitzpatrick_scale:!1,category:"symbols"},vN={keywords:["decoration","love"],char:"❣",fitzpatrick_scale:!1,category:"symbols"},PN={keywords:["love","like","affection","valentines","heart"],char:"💕",fitzpatrick_scale:!1,category:"symbols"},BN={keywords:["love","like","affection","valentines"],char:"💞",fitzpatrick_scale:!1,category:"symbols"},MN={keywords:["love","like","affection","valentines","pink","heart"],char:"💓",fitzpatrick_scale:!1,category:"symbols"},UN={keywords:["like","love","affection","valentines","pink"],char:"💗",fitzpatrick_scale:!1,category:"symbols"},HN={keywords:["love","like","affection","valentines"],char:"💖",fitzpatrick_scale:!1,category:"symbols"},jN={keywords:["love","like","heart","affection","valentines"],char:"💘",fitzpatrick_scale:!1,category:"symbols"},qN={keywords:["love","valentines"],char:"💝",fitzpatrick_scale:!1,category:"symbols"},YN={keywords:["purple-square","love","like"],char:"💟",fitzpatrick_scale:!1,category:"symbols"},$N={keywords:["hippie"],char:"☮",fitzpatrick_scale:!1,category:"symbols"},WN={keywords:["christianity"],char:"✝",fitzpatrick_scale:!1,category:"symbols"},VN={keywords:["islam"],char:"☪",fitzpatrick_scale:!1,category:"symbols"},GN={keywords:["hinduism","buddhism","sikhism","jainism"],char:"🕉",fitzpatrick_scale:!1,category:"symbols"},QN={keywords:["hinduism","buddhism","sikhism","jainism"],char:"☸",fitzpatrick_scale:!1,category:"symbols"},KN={keywords:["judaism"],char:"✡",fitzpatrick_scale:!1,category:"symbols"},XN={keywords:["purple-square","religion","jewish","hexagram"],char:"🔯",fitzpatrick_scale:!1,category:"symbols"},JN={keywords:["hanukkah","candles","jewish"],char:"🕎",fitzpatrick_scale:!1,category:"symbols"},ZN={keywords:["balance"],char:"☯",fitzpatrick_scale:!1,category:"symbols"},e4={keywords:["suppedaneum","religion"],char:"☦",fitzpatrick_scale:!1,category:"symbols"},t4={keywords:["religion","church","temple","prayer"],char:"🛐",fitzpatrick_scale:!1,category:"symbols"},a4={keywords:["sign","purple-square","constellation","astrology"],char:"⛎",fitzpatrick_scale:!1,category:"symbols"},r4={keywords:["sign","purple-square","zodiac","astrology"],char:"♈",fitzpatrick_scale:!1,category:"symbols"},n4={keywords:["purple-square","sign","zodiac","astrology"],char:"♉",fitzpatrick_scale:!1,category:"symbols"},i4={keywords:["sign","zodiac","purple-square","astrology"],char:"♊",fitzpatrick_scale:!1,category:"symbols"},s4={keywords:["sign","zodiac","purple-square","astrology"],char:"♋",fitzpatrick_scale:!1,category:"symbols"},o4={keywords:["sign","purple-square","zodiac","astrology"],char:"♌",fitzpatrick_scale:!1,category:"symbols"},c4={keywords:["sign","zodiac","purple-square","astrology"],char:"♍",fitzpatrick_scale:!1,category:"symbols"},u4={keywords:["sign","purple-square","zodiac","astrology"],char:"♎",fitzpatrick_scale:!1,category:"symbols"},l4={keywords:["sign","zodiac","purple-square","astrology","scorpio"],char:"♏",fitzpatrick_scale:!1,category:"symbols"},f4={keywords:["sign","zodiac","purple-square","astrology"],char:"♐",fitzpatrick_scale:!1,category:"symbols"},h4={keywords:["sign","zodiac","purple-square","astrology"],char:"♑",fitzpatrick_scale:!1,category:"symbols"},d4={keywords:["sign","purple-square","zodiac","astrology"],char:"♒",fitzpatrick_scale:!1,category:"symbols"},p4={keywords:["purple-square","sign","zodiac","astrology"],char:"♓",fitzpatrick_scale:!1,category:"symbols"},m4={keywords:["purple-square","words"],char:"🆔",fitzpatrick_scale:!1,category:"symbols"},_4={keywords:["science","physics","chemistry"],char:"⚛",fitzpatrick_scale:!1,category:"symbols"},g4={keywords:["kanji","japanese","chinese","empty","sky","blue-square"],char:"🈳",fitzpatrick_scale:!1,category:"symbols"},y4={keywords:["cut","divide","chinese","kanji","pink-square"],char:"🈹",fitzpatrick_scale:!1,category:"symbols"},k4={keywords:["nuclear","danger"],char:"☢",fitzpatrick_scale:!1,category:"symbols"},b4={keywords:["danger"],char:"☣",fitzpatrick_scale:!1,category:"symbols"},w4={keywords:["mute","orange-square","silence","quiet"],char:"📴",fitzpatrick_scale:!1,category:"symbols"},E4={keywords:["orange-square","phone"],char:"📳",fitzpatrick_scale:!1,category:"symbols"},T4={keywords:["orange-square","chinese","have","kanji"],char:"🈶",fitzpatrick_scale:!1,category:"symbols"},A4={keywords:["nothing","chinese","kanji","japanese","orange-square"],char:"🈚",fitzpatrick_scale:!1,category:"symbols"},C4={keywords:["chinese","japanese","kanji","orange-square"],char:"🈸",fitzpatrick_scale:!1,category:"symbols"},x4={keywords:["japanese","opening hours","orange-square"],char:"🈺",fitzpatrick_scale:!1,category:"symbols"},D4={keywords:["chinese","month","moon","japanese","orange-square","kanji"],char:"🈷️",fitzpatrick_scale:!1,category:"symbols"},z4={keywords:["orange-square","shape","polygon"],char:"✴️",fitzpatrick_scale:!1,category:"symbols"},S4={keywords:["words","orange-square"],char:"🆚",fitzpatrick_scale:!1,category:"symbols"},I4={keywords:["ok","good","chinese","kanji","agree","yes","orange-circle"],char:"🉑",fitzpatrick_scale:!1,category:"symbols"},N4={keywords:["japanese","spring"],char:"💮",fitzpatrick_scale:!1,category:"symbols"},F4={keywords:["chinese","kanji","obtain","get","circle"],char:"🉐",fitzpatrick_scale:!1,category:"symbols"},O4={keywords:["privacy","chinese","sshh","kanji","red-circle"],char:"㊙️",fitzpatrick_scale:!1,category:"symbols"},L4={keywords:["chinese","kanji","japanese","red-circle"],char:"㊗️",fitzpatrick_scale:!1,category:"symbols"},R4={keywords:["japanese","chinese","join","kanji","red-square"],char:"🈴",fitzpatrick_scale:!1,category:"symbols"},v4={keywords:["full","chinese","japanese","red-square","kanji"],char:"🈵",fitzpatrick_scale:!1,category:"symbols"},P4={keywords:["kanji","japanese","chinese","forbidden","limit","restricted","red-square"],char:"🈲",fitzpatrick_scale:!1,category:"symbols"},B4={keywords:["red-square","alphabet","letter"],char:"🅰️",fitzpatrick_scale:!1,category:"symbols"},M4={keywords:["red-square","alphabet","letter"],char:"🅱️",fitzpatrick_scale:!1,category:"symbols"},U4={keywords:["red-square","alphabet"],char:"🆎",fitzpatrick_scale:!1,category:"symbols"},H4={keywords:["alphabet","words","red-square"],char:"🆑",fitzpatrick_scale:!1,category:"symbols"},j4={keywords:["alphabet","red-square","letter"],char:"🅾️",fitzpatrick_scale:!1,category:"symbols"},q4={keywords:["help","red-square","words","emergency","911"],char:"🆘",fitzpatrick_scale:!1,category:"symbols"},Y4={keywords:["limit","security","privacy","bad","denied","stop","circle"],char:"⛔",fitzpatrick_scale:!1,category:"symbols"},$4={keywords:["fire","forbid"],char:"📛",fitzpatrick_scale:!1,category:"symbols"},W4={keywords:["forbid","stop","limit","denied","disallow","circle"],char:"🚫",fitzpatrick_scale:!1,category:"symbols"},V4={keywords:["no","delete","remove","cancel","red"],char:"❌",fitzpatrick_scale:!1,category:"symbols"},G4={keywords:["circle","round"],char:"⭕",fitzpatrick_scale:!1,category:"symbols"},Q4={keywords:["stop"],char:"🛑",fitzpatrick_scale:!1,category:"symbols"},K4={keywords:["angry","mad"],char:"💢",fitzpatrick_scale:!1,category:"symbols"},X4={keywords:["bath","warm","relax"],char:"♨️",fitzpatrick_scale:!1,category:"symbols"},J4={keywords:["rules","crossing","walking","circle"],char:"🚷",fitzpatrick_scale:!1,category:"symbols"},Z4={keywords:["trash","bin","garbage","circle"],char:"🚯",fitzpatrick_scale:!1,category:"symbols"},eF={keywords:["cyclist","prohibited","circle"],char:"🚳",fitzpatrick_scale:!1,category:"symbols"},tF={keywords:["18","drink","pub","night","minor","circle"],char:"🔞",fitzpatrick_scale:!1,category:"symbols"},aF={keywords:["iphone","mute","circle"],char:"📵",fitzpatrick_scale:!1,category:"symbols"},rF={keywords:["heavy_exclamation_mark","danger","surprise","punctuation","wow","warning"],char:"❗",fitzpatrick_scale:!1,category:"symbols"},nF={keywords:["surprise","punctuation","gray","wow","warning"],char:"❕",fitzpatrick_scale:!1,category:"symbols"},iF={keywords:["doubt","confused"],char:"❓",fitzpatrick_scale:!1,category:"symbols"},sF={keywords:["doubts","gray","huh","confused"],char:"❔",fitzpatrick_scale:!1,category:"symbols"},oF={keywords:["exclamation","surprise"],char:"‼️",fitzpatrick_scale:!1,category:"symbols"},cF={keywords:["wat","punctuation","surprise"],char:"⁉️",fitzpatrick_scale:!1,category:"symbols"},uF={keywords:["sun","afternoon","warm","summer"],char:"🔅",fitzpatrick_scale:!1,category:"symbols"},lF={keywords:["sun","light"],char:"🔆",fitzpatrick_scale:!1,category:"symbols"},fF={keywords:["weapon","spear"],char:"🔱",fitzpatrick_scale:!1,category:"symbols"},hF={keywords:["decorative","scout"],char:"⚜",fitzpatrick_scale:!1,category:"symbols"},dF={keywords:["graph","presentation","stats","business","economics","bad"],char:"〽️",fitzpatrick_scale:!1,category:"symbols"},pF={keywords:["exclamation","wip","alert","error","problem","issue"],char:"⚠️",fitzpatrick_scale:!1,category:"symbols"},mF={keywords:["school","warning","danger","sign","driving","yellow-diamond"],char:"🚸",fitzpatrick_scale:!1,category:"symbols"},_F={keywords:["badge","shield"],char:"🔰",fitzpatrick_scale:!1,category:"symbols"},gF={keywords:["arrow","environment","garbage","trash"],char:"♻️",fitzpatrick_scale:!1,category:"symbols"},yF={keywords:["chinese","point","green-square","kanji"],char:"🈯",fitzpatrick_scale:!1,category:"symbols"},kF={keywords:["green-square","graph","presentation","stats"],char:"💹",fitzpatrick_scale:!1,category:"symbols"},bF={keywords:["stars","green-square","awesome","good","fireworks"],char:"❇️",fitzpatrick_scale:!1,category:"symbols"},wF={keywords:["star","sparkle","green-square"],char:"✳️",fitzpatrick_scale:!1,category:"symbols"},EF={keywords:["x","green-square","no","deny"],char:"❎",fitzpatrick_scale:!1,category:"symbols"},TF={keywords:["green-square","ok","agree","vote","election","answer","tick"],char:"✅",fitzpatrick_scale:!1,category:"symbols"},AF={keywords:["jewel","blue","gem","crystal","fancy"],char:"💠",fitzpatrick_scale:!1,category:"symbols"},CF={keywords:["weather","swirl","blue","cloud","vortex","spiral","whirlpool","spin","tornado","hurricane","typhoon"],char:"🌀",fitzpatrick_scale:!1,category:"symbols"},xF={keywords:["tape","cassette"],char:"➿",fitzpatrick_scale:!1,category:"symbols"},DF={keywords:["earth","international","world","internet","interweb","i18n"],char:"🌐",fitzpatrick_scale:!1,category:"symbols"},zF={keywords:["alphabet","blue-circle","letter"],char:"Ⓜ️",fitzpatrick_scale:!1,category:"symbols"},SF={keywords:["money","sales","cash","blue-square","payment","bank"],char:"🏧",fitzpatrick_scale:!1,category:"symbols"},IF={keywords:["japanese","blue-square","katakana"],char:"🈂️",fitzpatrick_scale:!1,category:"symbols"},NF={keywords:["custom","blue-square"],char:"🛂",fitzpatrick_scale:!1,category:"symbols"},FF={keywords:["passport","border","blue-square"],char:"🛃",fitzpatrick_scale:!1,category:"symbols"},OF={keywords:["blue-square","airport","transport"],char:"🛄",fitzpatrick_scale:!1,category:"symbols"},LF={keywords:["blue-square","travel"],char:"🛅",fitzpatrick_scale:!1,category:"symbols"},RF={keywords:["blue-square","disabled","a11y","accessibility"],char:"♿",fitzpatrick_scale:!1,category:"symbols"},vF={keywords:["cigarette","blue-square","smell","smoke"],char:"🚭",fitzpatrick_scale:!1,category:"symbols"},PF={keywords:["toilet","restroom","blue-square"],char:"🚾",fitzpatrick_scale:!1,category:"symbols"},BF={keywords:["cars","blue-square","alphabet","letter"],char:"🅿️",fitzpatrick_scale:!1,category:"symbols"},MF={keywords:["blue-square","liquid","restroom","cleaning","faucet"],char:"🚰",fitzpatrick_scale:!1,category:"symbols"},UF={keywords:["toilet","restroom","wc","blue-square","gender","male"],char:"🚹",fitzpatrick_scale:!1,category:"symbols"},HF={keywords:["purple-square","woman","female","toilet","loo","restroom","gender"],char:"🚺",fitzpatrick_scale:!1,category:"symbols"},jF={keywords:["orange-square","child"],char:"🚼",fitzpatrick_scale:!1,category:"symbols"},qF={keywords:["blue-square","toilet","refresh","wc","gender"],char:"🚻",fitzpatrick_scale:!1,category:"symbols"},YF={keywords:["blue-square","sign","human","info"],char:"🚮",fitzpatrick_scale:!1,category:"symbols"},$F={keywords:["blue-square","record","film","movie","curtain","stage","theater"],char:"🎦",fitzpatrick_scale:!1,category:"symbols"},WF={keywords:["blue-square","reception","phone","internet","connection","wifi","bluetooth","bars"],char:"📶",fitzpatrick_scale:!1,category:"symbols"},VF={keywords:["blue-square","here","katakana","japanese","destination"],char:"🈁",fitzpatrick_scale:!1,category:"symbols"},GF={keywords:["blue-square","words","shape","icon"],char:"🆖",fitzpatrick_scale:!1,category:"symbols"},QF={keywords:["good","agree","yes","blue-square"],char:"🆗",fitzpatrick_scale:!1,category:"symbols"},KF={keywords:["blue-square","above","high"],char:"🆙",fitzpatrick_scale:!1,category:"symbols"},XF={keywords:["words","blue-square"],char:"🆒",fitzpatrick_scale:!1,category:"symbols"},JF={keywords:["blue-square","words"],char:"🆓",fitzpatrick_scale:!1,category:"symbols"},ZF={keywords:["0","numbers","blue-square","null"],char:"0️⃣",fitzpatrick_scale:!1,category:"symbols"},eO={keywords:["blue-square","numbers","1"],char:"1️⃣",fitzpatrick_scale:!1,category:"symbols"},tO={keywords:["numbers","2","prime","blue-square"],char:"2️⃣",fitzpatrick_scale:!1,category:"symbols"},aO={keywords:["3","numbers","prime","blue-square"],char:"3️⃣",fitzpatrick_scale:!1,category:"symbols"},rO={keywords:["4","numbers","blue-square"],char:"4️⃣",fitzpatrick_scale:!1,category:"symbols"},nO={keywords:["5","numbers","blue-square","prime"],char:"5️⃣",fitzpatrick_scale:!1,category:"symbols"},iO={keywords:["6","numbers","blue-square"],char:"6️⃣",fitzpatrick_scale:!1,category:"symbols"},sO={keywords:["7","numbers","blue-square","prime"],char:"7️⃣",fitzpatrick_scale:!1,category:"symbols"},oO={keywords:["8","blue-square","numbers"],char:"8️⃣",fitzpatrick_scale:!1,category:"symbols"},cO={keywords:["blue-square","numbers","9"],char:"9️⃣",fitzpatrick_scale:!1,category:"symbols"},uO={keywords:["numbers","10","blue-square"],char:"🔟",fitzpatrick_scale:!1,category:"symbols"},lO={keywords:["star","keycap"],char:"*⃣",fitzpatrick_scale:!1,category:"symbols"},fO={keywords:["blue-square"],char:"⏏️",fitzpatrick_scale:!1,category:"symbols"},hO={keywords:["blue-square","right","direction","play"],char:"▶️",fitzpatrick_scale:!1,category:"symbols"},dO={keywords:["pause","blue-square"],char:"⏸",fitzpatrick_scale:!1,category:"symbols"},pO={keywords:["forward","next","blue-square"],char:"⏭",fitzpatrick_scale:!1,category:"symbols"},mO={keywords:["blue-square"],char:"⏹",fitzpatrick_scale:!1,category:"symbols"},_O={keywords:["blue-square"],char:"⏺",fitzpatrick_scale:!1,category:"symbols"},gO={keywords:["blue-square","play","pause"],char:"⏯",fitzpatrick_scale:!1,category:"symbols"},yO={keywords:["backward"],char:"⏮",fitzpatrick_scale:!1,category:"symbols"},kO={keywords:["blue-square","play","speed","continue"],char:"⏩",fitzpatrick_scale:!1,category:"symbols"},bO={keywords:["play","blue-square"],char:"⏪",fitzpatrick_scale:!1,category:"symbols"},wO={keywords:["blue-square","shuffle","music","random"],char:"🔀",fitzpatrick_scale:!1,category:"symbols"},EO={keywords:["loop","record"],char:"🔁",fitzpatrick_scale:!1,category:"symbols"},TO={keywords:["blue-square","loop"],char:"🔂",fitzpatrick_scale:!1,category:"symbols"},AO={keywords:["blue-square","left","direction"],char:"◀️",fitzpatrick_scale:!1,category:"symbols"},CO={keywords:["blue-square","triangle","direction","point","forward","top"],char:"🔼",fitzpatrick_scale:!1,category:"symbols"},xO={keywords:["blue-square","direction","bottom"],char:"🔽",fitzpatrick_scale:!1,category:"symbols"},DO={keywords:["blue-square","direction","top"],char:"⏫",fitzpatrick_scale:!1,category:"symbols"},zO={keywords:["blue-square","direction","bottom"],char:"⏬",fitzpatrick_scale:!1,category:"symbols"},SO={keywords:["blue-square","next"],char:"➡️",fitzpatrick_scale:!1,category:"symbols"},IO={keywords:["blue-square","previous","back"],char:"⬅️",fitzpatrick_scale:!1,category:"symbols"},NO={keywords:["blue-square","continue","top","direction"],char:"⬆️",fitzpatrick_scale:!1,category:"symbols"},FO={keywords:["blue-square","direction","bottom"],char:"⬇️",fitzpatrick_scale:!1,category:"symbols"},OO={keywords:["blue-square","point","direction","diagonal","northeast"],char:"↗️",fitzpatrick_scale:!1,category:"symbols"},LO={keywords:["blue-square","direction","diagonal","southeast"],char:"↘️",fitzpatrick_scale:!1,category:"symbols"},RO={keywords:["blue-square","direction","diagonal","southwest"],char:"↙️",fitzpatrick_scale:!1,category:"symbols"},vO={keywords:["blue-square","point","direction","diagonal","northwest"],char:"↖️",fitzpatrick_scale:!1,category:"symbols"},PO={keywords:["blue-square","direction","way","vertical"],char:"↕️",fitzpatrick_scale:!1,category:"symbols"},BO={keywords:["shape","direction","horizontal","sideways"],char:"↔️",fitzpatrick_scale:!1,category:"symbols"},MO={keywords:["blue-square","sync","cycle"],char:"🔄",fitzpatrick_scale:!1,category:"symbols"},UO={keywords:["blue-square","return","rotate","direction"],char:"↪️",fitzpatrick_scale:!1,category:"symbols"},HO={keywords:["back","return","blue-square","undo","enter"],char:"↩️",fitzpatrick_scale:!1,category:"symbols"},jO={keywords:["blue-square","direction","top"],char:"⤴️",fitzpatrick_scale:!1,category:"symbols"},qO={keywords:["blue-square","direction","bottom"],char:"⤵️",fitzpatrick_scale:!1,category:"symbols"},YO={keywords:["symbol","blue-square","twitter"],char:"#️⃣",fitzpatrick_scale:!1,category:"symbols"},$O={keywords:["blue-square","alphabet","letter"],char:"ℹ️",fitzpatrick_scale:!1,category:"symbols"},WO={keywords:["blue-square","alphabet"],char:"🔤",fitzpatrick_scale:!1,category:"symbols"},VO={keywords:["blue-square","alphabet"],char:"🔡",fitzpatrick_scale:!1,category:"symbols"},GO={keywords:["alphabet","words","blue-square"],char:"🔠",fitzpatrick_scale:!1,category:"symbols"},QO={keywords:["blue-square","music","note","ampersand","percent","glyphs","characters"],char:"🔣",fitzpatrick_scale:!1,category:"symbols"},KO={keywords:["score","tone","sound"],char:"🎵",fitzpatrick_scale:!1,category:"symbols"},XO={keywords:["music","score"],char:"🎶",fitzpatrick_scale:!1,category:"symbols"},JO={keywords:["draw","line","moustache","mustache","squiggle","scribble"],char:"〰️",fitzpatrick_scale:!1,category:"symbols"},ZO={keywords:["scribble","draw","shape","squiggle"],char:"➰",fitzpatrick_scale:!1,category:"symbols"},e8={keywords:["ok","nike","answer","yes","tick"],char:"✔️",fitzpatrick_scale:!1,category:"symbols"},t8={keywords:["sync","cycle","round","repeat"],char:"🔃",fitzpatrick_scale:!1,category:"symbols"},a8={keywords:["math","calculation","addition","more","increase"],char:"➕",fitzpatrick_scale:!1,category:"symbols"},r8={keywords:["math","calculation","subtract","less"],char:"➖",fitzpatrick_scale:!1,category:"symbols"},n8={keywords:["divide","math","calculation"],char:"➗",fitzpatrick_scale:!1,category:"symbols"},i8={keywords:["math","calculation"],char:"✖️",fitzpatrick_scale:!1,category:"symbols"},s8={keywords:["forever"],char:"♾",fitzpatrick_scale:!1,category:"symbols"},o8={keywords:["money","sales","payment","currency","buck"],char:"💲",fitzpatrick_scale:!1,category:"symbols"},c8={keywords:["money","sales","dollar","travel"],char:"💱",fitzpatrick_scale:!1,category:"symbols"},u8={keywords:["ip","license","circle","law","legal"],char:"©️",fitzpatrick_scale:!1,category:"symbols"},l8={keywords:["alphabet","circle"],char:"®️",fitzpatrick_scale:!1,category:"symbols"},f8={keywords:["trademark","brand","law","legal"],char:"™️",fitzpatrick_scale:!1,category:"symbols"},h8={keywords:["words","arrow"],char:"🔚",fitzpatrick_scale:!1,category:"symbols"},d8={keywords:["arrow","words","return"],char:"🔙",fitzpatrick_scale:!1,category:"symbols"},p8={keywords:["arrow","words"],char:"🔛",fitzpatrick_scale:!1,category:"symbols"},m8={keywords:["words","blue-square"],char:"🔝",fitzpatrick_scale:!1,category:"symbols"},_8={keywords:["arrow","words"],char:"🔜",fitzpatrick_scale:!1,category:"symbols"},g8={keywords:["ok","agree","confirm","black-square","vote","election","yes","tick"],char:"☑️",fitzpatrick_scale:!1,category:"symbols"},y8={keywords:["input","old","music","circle"],char:"🔘",fitzpatrick_scale:!1,category:"symbols"},k8={keywords:["shape","round"],char:"⚪",fitzpatrick_scale:!1,category:"symbols"},b8={keywords:["shape","button","round"],char:"⚫",fitzpatrick_scale:!1,category:"symbols"},w8={keywords:["shape","error","danger"],char:"🔴",fitzpatrick_scale:!1,category:"symbols"},E8={keywords:["shape","icon","button"],char:"🔵",fitzpatrick_scale:!1,category:"symbols"},T8={keywords:["shape","jewel","gem"],char:"🔸",fitzpatrick_scale:!1,category:"symbols"},A8={keywords:["shape","jewel","gem"],char:"🔹",fitzpatrick_scale:!1,category:"symbols"},C8={keywords:["shape","jewel","gem"],char:"🔶",fitzpatrick_scale:!1,category:"symbols"},x8={keywords:["shape","jewel","gem"],char:"🔷",fitzpatrick_scale:!1,category:"symbols"},D8={keywords:["shape","direction","up","top"],char:"🔺",fitzpatrick_scale:!1,category:"symbols"},z8={keywords:["shape","icon"],char:"▪️",fitzpatrick_scale:!1,category:"symbols"},S8={keywords:["shape","icon"],char:"▫️",fitzpatrick_scale:!1,category:"symbols"},I8={keywords:["shape","icon","button"],char:"⬛",fitzpatrick_scale:!1,category:"symbols"},N8={keywords:["shape","icon","stone","button"],char:"⬜",fitzpatrick_scale:!1,category:"symbols"},F8={keywords:["shape","direction","bottom"],char:"🔻",fitzpatrick_scale:!1,category:"symbols"},O8={keywords:["shape","button","icon"],char:"◼️",fitzpatrick_scale:!1,category:"symbols"},L8={keywords:["shape","stone","icon"],char:"◻️",fitzpatrick_scale:!1,category:"symbols"},R8={keywords:["icon","shape","button"],char:"◾",fitzpatrick_scale:!1,category:"symbols"},v8={keywords:["shape","stone","icon","button"],char:"◽",fitzpatrick_scale:!1,category:"symbols"},P8={keywords:["shape","input","frame"],char:"🔲",fitzpatrick_scale:!1,category:"symbols"},B8={keywords:["shape","input"],char:"🔳",fitzpatrick_scale:!1,category:"symbols"},M8={keywords:["sound","volume","silence","broadcast"],char:"🔈",fitzpatrick_scale:!1,category:"symbols"},U8={keywords:["volume","speaker","broadcast"],char:"🔉",fitzpatrick_scale:!1,category:"symbols"},H8={keywords:["volume","noise","noisy","speaker","broadcast"],char:"🔊",fitzpatrick_scale:!1,category:"symbols"},j8={keywords:["sound","volume","silence","quiet"],char:"🔇",fitzpatrick_scale:!1,category:"symbols"},q8={keywords:["sound","speaker","volume"],char:"📣",fitzpatrick_scale:!1,category:"symbols"},Y8={keywords:["volume","sound"],char:"📢",fitzpatrick_scale:!1,category:"symbols"},$8={keywords:["sound","notification","christmas","xmas","chime"],char:"🔔",fitzpatrick_scale:!1,category:"symbols"},W8={keywords:["sound","volume","mute","quiet","silent"],char:"🔕",fitzpatrick_scale:!1,category:"symbols"},V8={keywords:["poker","cards","game","play","magic"],char:"🃏",fitzpatrick_scale:!1,category:"symbols"},G8={keywords:["game","play","chinese","kanji"],char:"🀄",fitzpatrick_scale:!1,category:"symbols"},Q8={keywords:["poker","cards","suits","magic"],char:"♠️",fitzpatrick_scale:!1,category:"symbols"},K8={keywords:["poker","cards","magic","suits"],char:"♣️",fitzpatrick_scale:!1,category:"symbols"},X8={keywords:["poker","cards","magic","suits"],char:"♥️",fitzpatrick_scale:!1,category:"symbols"},J8={keywords:["poker","cards","magic","suits"],char:"♦️",fitzpatrick_scale:!1,category:"symbols"},Z8={keywords:["game","sunset","red"],char:"🎴",fitzpatrick_scale:!1,category:"symbols"},eL={keywords:["bubble","cloud","speech","thinking","dream"],char:"💭",fitzpatrick_scale:!1,category:"symbols"},tL={keywords:["caption","speech","thinking","mad"],char:"🗯",fitzpatrick_scale:!1,category:"symbols"},aL={keywords:["bubble","words","message","talk","chatting"],char:"💬",fitzpatrick_scale:!1,category:"symbols"},rL={keywords:["words","message","talk","chatting"],char:"🗨",fitzpatrick_scale:!1,category:"symbols"},nL={keywords:["time","late","early","schedule"],char:"🕐",fitzpatrick_scale:!1,category:"symbols"},iL={keywords:["time","late","early","schedule"],char:"🕑",fitzpatrick_scale:!1,category:"symbols"},sL={keywords:["time","late","early","schedule"],char:"🕒",fitzpatrick_scale:!1,category:"symbols"},oL={keywords:["time","late","early","schedule"],char:"🕓",fitzpatrick_scale:!1,category:"symbols"},cL={keywords:["time","late","early","schedule"],char:"🕔",fitzpatrick_scale:!1,category:"symbols"},uL={keywords:["time","late","early","schedule","dawn","dusk"],char:"🕕",fitzpatrick_scale:!1,category:"symbols"},lL={keywords:["time","late","early","schedule"],char:"🕖",fitzpatrick_scale:!1,category:"symbols"},fL={keywords:["time","late","early","schedule"],char:"🕗",fitzpatrick_scale:!1,category:"symbols"},hL={keywords:["time","late","early","schedule"],char:"🕘",fitzpatrick_scale:!1,category:"symbols"},dL={keywords:["time","late","early","schedule"],char:"🕙",fitzpatrick_scale:!1,category:"symbols"},pL={keywords:["time","late","early","schedule"],char:"🕚",fitzpatrick_scale:!1,category:"symbols"},mL={keywords:["time","noon","midnight","midday","late","early","schedule"],char:"🕛",fitzpatrick_scale:!1,category:"symbols"},_L={keywords:["time","late","early","schedule"],char:"🕜",fitzpatrick_scale:!1,category:"symbols"},gL={keywords:["time","late","early","schedule"],char:"🕝",fitzpatrick_scale:!1,category:"symbols"},yL={keywords:["time","late","early","schedule"],char:"🕞",fitzpatrick_scale:!1,category:"symbols"},kL={keywords:["time","late","early","schedule"],char:"🕟",fitzpatrick_scale:!1,category:"symbols"},bL={keywords:["time","late","early","schedule"],char:"🕠",fitzpatrick_scale:!1,category:"symbols"},wL={keywords:["time","late","early","schedule"],char:"🕡",fitzpatrick_scale:!1,category:"symbols"},EL={keywords:["time","late","early","schedule"],char:"🕢",fitzpatrick_scale:!1,category:"symbols"},TL={keywords:["time","late","early","schedule"],char:"🕣",fitzpatrick_scale:!1,category:"symbols"},AL={keywords:["time","late","early","schedule"],char:"🕤",fitzpatrick_scale:!1,category:"symbols"},CL={keywords:["time","late","early","schedule"],char:"🕥",fitzpatrick_scale:!1,category:"symbols"},xL={keywords:["time","late","early","schedule"],char:"🕦",fitzpatrick_scale:!1,category:"symbols"},DL={keywords:["time","late","early","schedule"],char:"🕧",fitzpatrick_scale:!1,category:"symbols"},zL={keywords:["af","flag","nation","country","banner"],char:"🇦🇫",fitzpatrick_scale:!1,category:"flags"},SL={keywords:["Åland","islands","flag","nation","country","banner"],char:"🇦🇽",fitzpatrick_scale:!1,category:"flags"},IL={keywords:["al","flag","nation","country","banner"],char:"🇦🇱",fitzpatrick_scale:!1,category:"flags"},NL={keywords:["dz","flag","nation","country","banner"],char:"🇩🇿",fitzpatrick_scale:!1,category:"flags"},FL={keywords:["american","ws","flag","nation","country","banner"],char:"🇦🇸",fitzpatrick_scale:!1,category:"flags"},OL={keywords:["ad","flag","nation","country","banner"],char:"🇦🇩",fitzpatrick_scale:!1,category:"flags"},LL={keywords:["ao","flag","nation","country","banner"],char:"🇦🇴",fitzpatrick_scale:!1,category:"flags"},RL={keywords:["ai","flag","nation","country","banner"],char:"🇦🇮",fitzpatrick_scale:!1,category:"flags"},vL={keywords:["aq","flag","nation","country","banner"],char:"🇦🇶",fitzpatrick_scale:!1,category:"flags"},PL={keywords:["antigua","barbuda","flag","nation","country","banner"],char:"🇦🇬",fitzpatrick_scale:!1,category:"flags"},BL={keywords:["ar","flag","nation","country","banner"],char:"🇦🇷",fitzpatrick_scale:!1,category:"flags"},ML={keywords:["am","flag","nation","country","banner"],char:"🇦🇲",fitzpatrick_scale:!1,category:"flags"},UL={keywords:["aw","flag","nation","country","banner"],char:"🇦🇼",fitzpatrick_scale:!1,category:"flags"},HL={keywords:["au","flag","nation","country","banner"],char:"🇦🇺",fitzpatrick_scale:!1,category:"flags"},jL={keywords:["at","flag","nation","country","banner"],char:"🇦🇹",fitzpatrick_scale:!1,category:"flags"},qL={keywords:["az","flag","nation","country","banner"],char:"🇦🇿",fitzpatrick_scale:!1,category:"flags"},YL={keywords:["bs","flag","nation","country","banner"],char:"🇧🇸",fitzpatrick_scale:!1,category:"flags"},$L={keywords:["bh","flag","nation","country","banner"],char:"🇧🇭",fitzpatrick_scale:!1,category:"flags"},WL={keywords:["bd","flag","nation","country","banner"],char:"🇧🇩",fitzpatrick_scale:!1,category:"flags"},VL={keywords:["bb","flag","nation","country","banner"],char:"🇧🇧",fitzpatrick_scale:!1,category:"flags"},GL={keywords:["by","flag","nation","country","banner"],char:"🇧🇾",fitzpatrick_scale:!1,category:"flags"},QL={keywords:["be","flag","nation","country","banner"],char:"🇧🇪",fitzpatrick_scale:!1,category:"flags"},KL={keywords:["bz","flag","nation","country","banner"],char:"🇧🇿",fitzpatrick_scale:!1,category:"flags"},XL={keywords:["bj","flag","nation","country","banner"],char:"🇧🇯",fitzpatrick_scale:!1,category:"flags"},JL={keywords:["bm","flag","nation","country","banner"],char:"🇧🇲",fitzpatrick_scale:!1,category:"flags"},ZL={keywords:["bt","flag","nation","country","banner"],char:"🇧🇹",fitzpatrick_scale:!1,category:"flags"},e5={keywords:["bo","flag","nation","country","banner"],char:"🇧🇴",fitzpatrick_scale:!1,category:"flags"},t5={keywords:["bonaire","flag","nation","country","banner"],char:"🇧🇶",fitzpatrick_scale:!1,category:"flags"},a5={keywords:["bosnia","herzegovina","flag","nation","country","banner"],char:"🇧🇦",fitzpatrick_scale:!1,category:"flags"},r5={keywords:["bw","flag","nation","country","banner"],char:"🇧🇼",fitzpatrick_scale:!1,category:"flags"},n5={keywords:["br","flag","nation","country","banner"],char:"🇧🇷",fitzpatrick_scale:!1,category:"flags"},i5={keywords:["british","indian","ocean","territory","flag","nation","country","banner"],char:"🇮🇴",fitzpatrick_scale:!1,category:"flags"},s5={keywords:["british","virgin","islands","bvi","flag","nation","country","banner"],char:"🇻🇬",fitzpatrick_scale:!1,category:"flags"},o5={keywords:["bn","darussalam","flag","nation","country","banner"],char:"🇧🇳",fitzpatrick_scale:!1,category:"flags"},c5={keywords:["bg","flag","nation","country","banner"],char:"🇧🇬",fitzpatrick_scale:!1,category:"flags"},u5={keywords:["burkina","faso","flag","nation","country","banner"],char:"🇧🇫",fitzpatrick_scale:!1,category:"flags"},l5={keywords:["bi","flag","nation","country","banner"],char:"🇧🇮",fitzpatrick_scale:!1,category:"flags"},f5={keywords:["cabo","verde","flag","nation","country","banner"],char:"🇨🇻",fitzpatrick_scale:!1,category:"flags"},h5={keywords:["kh","flag","nation","country","banner"],char:"🇰🇭",fitzpatrick_scale:!1,category:"flags"},d5={keywords:["cm","flag","nation","country","banner"],char:"🇨🇲",fitzpatrick_scale:!1,category:"flags"},p5={keywords:["ca","flag","nation","country","banner"],char:"🇨🇦",fitzpatrick_scale:!1,category:"flags"},m5={keywords:["canary","islands","flag","nation","country","banner"],char:"🇮🇨",fitzpatrick_scale:!1,category:"flags"},_5={keywords:["cayman","islands","flag","nation","country","banner"],char:"🇰🇾",fitzpatrick_scale:!1,category:"flags"},g5={keywords:["central","african","republic","flag","nation","country","banner"],char:"🇨🇫",fitzpatrick_scale:!1,category:"flags"},y5={keywords:["td","flag","nation","country","banner"],char:"🇹🇩",fitzpatrick_scale:!1,category:"flags"},k5={keywords:["flag","nation","country","banner"],char:"🇨🇱",fitzpatrick_scale:!1,category:"flags"},b5={keywords:["china","chinese","prc","flag","country","nation","banner"],char:"🇨🇳",fitzpatrick_scale:!1,category:"flags"},w5={keywords:["christmas","island","flag","nation","country","banner"],char:"🇨🇽",fitzpatrick_scale:!1,category:"flags"},E5={keywords:["cocos","keeling","islands","flag","nation","country","banner"],char:"🇨🇨",fitzpatrick_scale:!1,category:"flags"},T5={keywords:["co","flag","nation","country","banner"],char:"🇨🇴",fitzpatrick_scale:!1,category:"flags"},A5={keywords:["km","flag","nation","country","banner"],char:"🇰🇲",fitzpatrick_scale:!1,category:"flags"},C5={keywords:["congo","flag","nation","country","banner"],char:"🇨🇬",fitzpatrick_scale:!1,category:"flags"},x5={keywords:["congo","democratic","republic","flag","nation","country","banner"],char:"🇨🇩",fitzpatrick_scale:!1,category:"flags"},D5={keywords:["cook","islands","flag","nation","country","banner"],char:"🇨🇰",fitzpatrick_scale:!1,category:"flags"},z5={keywords:["costa","rica","flag","nation","country","banner"],char:"🇨🇷",fitzpatrick_scale:!1,category:"flags"},S5={keywords:["hr","flag","nation","country","banner"],char:"🇭🇷",fitzpatrick_scale:!1,category:"flags"},I5={keywords:["cu","flag","nation","country","banner"],char:"🇨🇺",fitzpatrick_scale:!1,category:"flags"},N5={keywords:["curaçao","flag","nation","country","banner"],char:"🇨🇼",fitzpatrick_scale:!1,category:"flags"},F5={keywords:["cy","flag","nation","country","banner"],char:"🇨🇾",fitzpatrick_scale:!1,category:"flags"},O5={keywords:["cz","flag","nation","country","banner"],char:"🇨🇿",fitzpatrick_scale:!1,category:"flags"},L5={keywords:["dk","flag","nation","country","banner"],char:"🇩🇰",fitzpatrick_scale:!1,category:"flags"},R5={keywords:["dj","flag","nation","country","banner"],char:"🇩🇯",fitzpatrick_scale:!1,category:"flags"},v5={keywords:["dm","flag","nation","country","banner"],char:"🇩🇲",fitzpatrick_scale:!1,category:"flags"},P5={keywords:["dominican","republic","flag","nation","country","banner"],char:"🇩🇴",fitzpatrick_scale:!1,category:"flags"},B5={keywords:["ec","flag","nation","country","banner"],char:"🇪🇨",fitzpatrick_scale:!1,category:"flags"},M5={keywords:["eg","flag","nation","country","banner"],char:"🇪🇬",fitzpatrick_scale:!1,category:"flags"},U5={keywords:["el","salvador","flag","nation","country","banner"],char:"🇸🇻",fitzpatrick_scale:!1,category:"flags"},H5={keywords:["equatorial","gn","flag","nation","country","banner"],char:"🇬🇶",fitzpatrick_scale:!1,category:"flags"},j5={keywords:["er","flag","nation","country","banner"],char:"🇪🇷",fitzpatrick_scale:!1,category:"flags"},q5={keywords:["ee","flag","nation","country","banner"],char:"🇪🇪",fitzpatrick_scale:!1,category:"flags"},Y5={keywords:["et","flag","nation","country","banner"],char:"🇪🇹",fitzpatrick_scale:!1,category:"flags"},$5={keywords:["european","union","flag","banner"],char:"🇪🇺",fitzpatrick_scale:!1,category:"flags"},W5={keywords:["falkland","islands","malvinas","flag","nation","country","banner"],char:"🇫🇰",fitzpatrick_scale:!1,category:"flags"},V5={keywords:["faroe","islands","flag","nation","country","banner"],char:"🇫🇴",fitzpatrick_scale:!1,category:"flags"},G5={keywords:["fj","flag","nation","country","banner"],char:"🇫🇯",fitzpatrick_scale:!1,category:"flags"},Q5={keywords:["fi","flag","nation","country","banner"],char:"🇫🇮",fitzpatrick_scale:!1,category:"flags"},K5={keywords:["banner","flag","nation","france","french","country"],char:"🇫🇷",fitzpatrick_scale:!1,category:"flags"},X5={keywords:["french","guiana","flag","nation","country","banner"],char:"🇬🇫",fitzpatrick_scale:!1,category:"flags"},J5={keywords:["french","polynesia","flag","nation","country","banner"],char:"🇵🇫",fitzpatrick_scale:!1,category:"flags"},Z5={keywords:["french","southern","territories","flag","nation","country","banner"],char:"🇹🇫",fitzpatrick_scale:!1,category:"flags"},eR={keywords:["ga","flag","nation","country","banner"],char:"🇬🇦",fitzpatrick_scale:!1,category:"flags"},tR={keywords:["gm","flag","nation","country","banner"],char:"🇬🇲",fitzpatrick_scale:!1,category:"flags"},aR={keywords:["ge","flag","nation","country","banner"],char:"🇬🇪",fitzpatrick_scale:!1,category:"flags"},rR={keywords:["german","nation","flag","country","banner"],char:"🇩🇪",fitzpatrick_scale:!1,category:"flags"},nR={keywords:["gh","flag","nation","country","banner"],char:"🇬🇭",fitzpatrick_scale:!1,category:"flags"},iR={keywords:["gi","flag","nation","country","banner"],char:"🇬🇮",fitzpatrick_scale:!1,category:"flags"},sR={keywords:["gr","flag","nation","country","banner"],char:"🇬🇷",fitzpatrick_scale:!1,category:"flags"},oR={keywords:["gl","flag","nation","country","banner"],char:"🇬🇱",fitzpatrick_scale:!1,category:"flags"},cR={keywords:["gd","flag","nation","country","banner"],char:"🇬🇩",fitzpatrick_scale:!1,category:"flags"},uR={keywords:["gp","flag","nation","country","banner"],char:"🇬🇵",fitzpatrick_scale:!1,category:"flags"},lR={keywords:["gu","flag","nation","country","banner"],char:"🇬🇺",fitzpatrick_scale:!1,category:"flags"},fR={keywords:["gt","flag","nation","country","banner"],char:"🇬🇹",fitzpatrick_scale:!1,category:"flags"},hR={keywords:["gg","flag","nation","country","banner"],char:"🇬🇬",fitzpatrick_scale:!1,category:"flags"},dR={keywords:["gn","flag","nation","country","banner"],char:"🇬🇳",fitzpatrick_scale:!1,category:"flags"},pR={keywords:["gw","bissau","flag","nation","country","banner"],char:"🇬🇼",fitzpatrick_scale:!1,category:"flags"},mR={keywords:["gy","flag","nation","country","banner"],char:"🇬🇾",fitzpatrick_scale:!1,category:"flags"},_R={keywords:["ht","flag","nation","country","banner"],char:"🇭🇹",fitzpatrick_scale:!1,category:"flags"},gR={keywords:["hn","flag","nation","country","banner"],char:"🇭🇳",fitzpatrick_scale:!1,category:"flags"},yR={keywords:["hong","kong","flag","nation","country","banner"],char:"🇭🇰",fitzpatrick_scale:!1,category:"flags"},kR={keywords:["hu","flag","nation","country","banner"],char:"🇭🇺",fitzpatrick_scale:!1,category:"flags"},bR={keywords:["is","flag","nation","country","banner"],char:"🇮🇸",fitzpatrick_scale:!1,category:"flags"},wR={keywords:["in","flag","nation","country","banner"],char:"🇮🇳",fitzpatrick_scale:!1,category:"flags"},ER={keywords:["flag","nation","country","banner"],char:"🇮🇩",fitzpatrick_scale:!1,category:"flags"},TR={keywords:["iran,","islamic","republic","flag","nation","country","banner"],char:"🇮🇷",fitzpatrick_scale:!1,category:"flags"},AR={keywords:["iq","flag","nation","country","banner"],char:"🇮🇶",fitzpatrick_scale:!1,category:"flags"},CR={keywords:["ie","flag","nation","country","banner"],char:"🇮🇪",fitzpatrick_scale:!1,category:"flags"},xR={keywords:["isle","man","flag","nation","country","banner"],char:"🇮🇲",fitzpatrick_scale:!1,category:"flags"},DR={keywords:["il","flag","nation","country","banner"],char:"🇮🇱",fitzpatrick_scale:!1,category:"flags"},zR={keywords:["italy","flag","nation","country","banner"],char:"🇮🇹",fitzpatrick_scale:!1,category:"flags"},SR={keywords:["ivory","coast","flag","nation","country","banner"],char:"🇨🇮",fitzpatrick_scale:!1,category:"flags"},IR={keywords:["jm","flag","nation","country","banner"],char:"🇯🇲",fitzpatrick_scale:!1,category:"flags"},NR={keywords:["japanese","nation","flag","country","banner"],char:"🇯🇵",fitzpatrick_scale:!1,category:"flags"},FR={keywords:["je","flag","nation","country","banner"],char:"🇯🇪",fitzpatrick_scale:!1,category:"flags"},OR={keywords:["jo","flag","nation","country","banner"],char:"🇯🇴",fitzpatrick_scale:!1,category:"flags"},LR={keywords:["kz","flag","nation","country","banner"],char:"🇰🇿",fitzpatrick_scale:!1,category:"flags"},RR={keywords:["ke","flag","nation","country","banner"],char:"🇰🇪",fitzpatrick_scale:!1,category:"flags"},vR={keywords:["ki","flag","nation","country","banner"],char:"🇰🇮",fitzpatrick_scale:!1,category:"flags"},PR={keywords:["xk","flag","nation","country","banner"],char:"🇽🇰",fitzpatrick_scale:!1,category:"flags"},BR={keywords:["kw","flag","nation","country","banner"],char:"🇰🇼",fitzpatrick_scale:!1,category:"flags"},MR={keywords:["kg","flag","nation","country","banner"],char:"🇰🇬",fitzpatrick_scale:!1,category:"flags"},UR={keywords:["lao","democratic","republic","flag","nation","country","banner"],char:"🇱🇦",fitzpatrick_scale:!1,category:"flags"},HR={keywords:["lv","flag","nation","country","banner"],char:"🇱🇻",fitzpatrick_scale:!1,category:"flags"},jR={keywords:["lb","flag","nation","country","banner"],char:"🇱🇧",fitzpatrick_scale:!1,category:"flags"},qR={keywords:["ls","flag","nation","country","banner"],char:"🇱🇸",fitzpatrick_scale:!1,category:"flags"},YR={keywords:["lr","flag","nation","country","banner"],char:"🇱🇷",fitzpatrick_scale:!1,category:"flags"},$R={keywords:["ly","flag","nation","country","banner"],char:"🇱🇾",fitzpatrick_scale:!1,category:"flags"},WR={keywords:["li","flag","nation","country","banner"],char:"🇱🇮",fitzpatrick_scale:!1,category:"flags"},VR={keywords:["lt","flag","nation","country","banner"],char:"🇱🇹",fitzpatrick_scale:!1,category:"flags"},GR={keywords:["lu","flag","nation","country","banner"],char:"🇱🇺",fitzpatrick_scale:!1,category:"flags"},QR={keywords:["macao","flag","nation","country","banner"],char:"🇲🇴",fitzpatrick_scale:!1,category:"flags"},KR={keywords:["macedonia,","flag","nation","country","banner"],char:"🇲🇰",fitzpatrick_scale:!1,category:"flags"},XR={keywords:["mg","flag","nation","country","banner"],char:"🇲🇬",fitzpatrick_scale:!1,category:"flags"},JR={keywords:["mw","flag","nation","country","banner"],char:"🇲🇼",fitzpatrick_scale:!1,category:"flags"},ZR={keywords:["my","flag","nation","country","banner"],char:"🇲🇾",fitzpatrick_scale:!1,category:"flags"},e9={keywords:["mv","flag","nation","country","banner"],char:"🇲🇻",fitzpatrick_scale:!1,category:"flags"},t9={keywords:["ml","flag","nation","country","banner"],char:"🇲🇱",fitzpatrick_scale:!1,category:"flags"},a9={keywords:["mt","flag","nation","country","banner"],char:"🇲🇹",fitzpatrick_scale:!1,category:"flags"},r9={keywords:["marshall","islands","flag","nation","country","banner"],char:"🇲🇭",fitzpatrick_scale:!1,category:"flags"},n9={keywords:["mq","flag","nation","country","banner"],char:"🇲🇶",fitzpatrick_scale:!1,category:"flags"},i9={keywords:["mr","flag","nation","country","banner"],char:"🇲🇷",fitzpatrick_scale:!1,category:"flags"},s9={keywords:["mu","flag","nation","country","banner"],char:"🇲🇺",fitzpatrick_scale:!1,category:"flags"},o9={keywords:["yt","flag","nation","country","banner"],char:"🇾🇹",fitzpatrick_scale:!1,category:"flags"},c9={keywords:["mx","flag","nation","country","banner"],char:"🇲🇽",fitzpatrick_scale:!1,category:"flags"},u9={keywords:["micronesia,","federated","states","flag","nation","country","banner"],char:"🇫🇲",fitzpatrick_scale:!1,category:"flags"},l9={keywords:["moldova,","republic","flag","nation","country","banner"],char:"🇲🇩",fitzpatrick_scale:!1,category:"flags"},f9={keywords:["mc","flag","nation","country","banner"],char:"🇲🇨",fitzpatrick_scale:!1,category:"flags"},h9={keywords:["mn","flag","nation","country","banner"],char:"🇲🇳",fitzpatrick_scale:!1,category:"flags"},d9={keywords:["me","flag","nation","country","banner"],char:"🇲🇪",fitzpatrick_scale:!1,category:"flags"},p9={keywords:["ms","flag","nation","country","banner"],char:"🇲🇸",fitzpatrick_scale:!1,category:"flags"},m9={keywords:["ma","flag","nation","country","banner"],char:"🇲🇦",fitzpatrick_scale:!1,category:"flags"},_9={keywords:["mz","flag","nation","country","banner"],char:"🇲🇿",fitzpatrick_scale:!1,category:"flags"},g9={keywords:["mm","flag","nation","country","banner"],char:"🇲🇲",fitzpatrick_scale:!1,category:"flags"},y9={keywords:["na","flag","nation","country","banner"],char:"🇳🇦",fitzpatrick_scale:!1,category:"flags"},k9={keywords:["nr","flag","nation","country","banner"],char:"🇳🇷",fitzpatrick_scale:!1,category:"flags"},b9={keywords:["np","flag","nation","country","banner"],char:"🇳🇵",fitzpatrick_scale:!1,category:"flags"},w9={keywords:["nl","flag","nation","country","banner"],char:"🇳🇱",fitzpatrick_scale:!1,category:"flags"},E9={keywords:["new","caledonia","flag","nation","country","banner"],char:"🇳🇨",fitzpatrick_scale:!1,category:"flags"},T9={keywords:["new","zealand","flag","nation","country","banner"],char:"🇳🇿",fitzpatrick_scale:!1,category:"flags"},A9={keywords:["ni","flag","nation","country","banner"],char:"🇳🇮",fitzpatrick_scale:!1,category:"flags"},C9={keywords:["ne","flag","nation","country","banner"],char:"🇳🇪",fitzpatrick_scale:!1,category:"flags"},x9={keywords:["flag","nation","country","banner"],char:"🇳🇬",fitzpatrick_scale:!1,category:"flags"},D9={keywords:["nu","flag","nation","country","banner"],char:"🇳🇺",fitzpatrick_scale:!1,category:"flags"},z9={keywords:["norfolk","island","flag","nation","country","banner"],char:"🇳🇫",fitzpatrick_scale:!1,category:"flags"},S9={keywords:["northern","mariana","islands","flag","nation","country","banner"],char:"🇲🇵",fitzpatrick_scale:!1,category:"flags"},I9={keywords:["north","korea","nation","flag","country","banner"],char:"🇰🇵",fitzpatrick_scale:!1,category:"flags"},N9={keywords:["no","flag","nation","country","banner"],char:"🇳🇴",fitzpatrick_scale:!1,category:"flags"},F9={keywords:["om_symbol","flag","nation","country","banner"],char:"🇴🇲",fitzpatrick_scale:!1,category:"flags"},O9={keywords:["pk","flag","nation","country","banner"],char:"🇵🇰",fitzpatrick_scale:!1,category:"flags"},L9={keywords:["pw","flag","nation","country","banner"],char:"🇵🇼",fitzpatrick_scale:!1,category:"flags"},R9={keywords:["palestine","palestinian","territories","flag","nation","country","banner"],char:"🇵🇸",fitzpatrick_scale:!1,category:"flags"},v9={keywords:["pa","flag","nation","country","banner"],char:"🇵🇦",fitzpatrick_scale:!1,category:"flags"},P9={keywords:["papua","new","guinea","flag","nation","country","banner"],char:"🇵🇬",fitzpatrick_scale:!1,category:"flags"},B9={keywords:["py","flag","nation","country","banner"],char:"🇵🇾",fitzpatrick_scale:!1,category:"flags"},M9={keywords:["pe","flag","nation","country","banner"],char:"🇵🇪",fitzpatrick_scale:!1,category:"flags"},U9={keywords:["ph","flag","nation","country","banner"],char:"🇵🇭",fitzpatrick_scale:!1,category:"flags"},H9={keywords:["pitcairn","flag","nation","country","banner"],char:"🇵🇳",fitzpatrick_scale:!1,category:"flags"},j9={keywords:["pl","flag","nation","country","banner"],char:"🇵🇱",fitzpatrick_scale:!1,category:"flags"},q9={keywords:["pt","flag","nation","country","banner"],char:"🇵🇹",fitzpatrick_scale:!1,category:"flags"},Y9={keywords:["puerto","rico","flag","nation","country","banner"],char:"🇵🇷",fitzpatrick_scale:!1,category:"flags"},$9={keywords:["qa","flag","nation","country","banner"],char:"🇶🇦",fitzpatrick_scale:!1,category:"flags"},W9={keywords:["réunion","flag","nation","country","banner"],char:"🇷🇪",fitzpatrick_scale:!1,category:"flags"},V9={keywords:["ro","flag","nation","country","banner"],char:"🇷🇴",fitzpatrick_scale:!1,category:"flags"},G9={keywords:["russian","federation","flag","nation","country","banner"],char:"🇷🇺",fitzpatrick_scale:!1,category:"flags"},Q9={keywords:["rw","flag","nation","country","banner"],char:"🇷🇼",fitzpatrick_scale:!1,category:"flags"},K9={keywords:["saint","barthélemy","flag","nation","country","banner"],char:"🇧🇱",fitzpatrick_scale:!1,category:"flags"},X9={keywords:["saint","helena","ascension","tristan","cunha","flag","nation","country","banner"],char:"🇸🇭",fitzpatrick_scale:!1,category:"flags"},J9={keywords:["saint","kitts","nevis","flag","nation","country","banner"],char:"🇰🇳",fitzpatrick_scale:!1,category:"flags"},Z9={keywords:["saint","lucia","flag","nation","country","banner"],char:"🇱🇨",fitzpatrick_scale:!1,category:"flags"},ev={keywords:["saint","pierre","miquelon","flag","nation","country","banner"],char:"🇵🇲",fitzpatrick_scale:!1,category:"flags"},tv={keywords:["saint","vincent","grenadines","flag","nation","country","banner"],char:"🇻🇨",fitzpatrick_scale:!1,category:"flags"},av={keywords:["ws","flag","nation","country","banner"],char:"🇼🇸",fitzpatrick_scale:!1,category:"flags"},rv={keywords:["san","marino","flag","nation","country","banner"],char:"🇸🇲",fitzpatrick_scale:!1,category:"flags"},nv={keywords:["sao","tome","principe","flag","nation","country","banner"],char:"🇸🇹",fitzpatrick_scale:!1,category:"flags"},iv={keywords:["flag","nation","country","banner"],char:"🇸🇦",fitzpatrick_scale:!1,category:"flags"},sv={keywords:["sn","flag","nation","country","banner"],char:"🇸🇳",fitzpatrick_scale:!1,category:"flags"},ov={keywords:["rs","flag","nation","country","banner"],char:"🇷🇸",fitzpatrick_scale:!1,category:"flags"},cv={keywords:["sc","flag","nation","country","banner"],char:"🇸🇨",fitzpatrick_scale:!1,category:"flags"},uv={keywords:["sierra","leone","flag","nation","country","banner"],char:"🇸🇱",fitzpatrick_scale:!1,category:"flags"},lv={keywords:["sg","flag","nation","country","banner"],char:"🇸🇬",fitzpatrick_scale:!1,category:"flags"},fv={keywords:["sint","maarten","dutch","flag","nation","country","banner"],char:"🇸🇽",fitzpatrick_scale:!1,category:"flags"},hv={keywords:["sk","flag","nation","country","banner"],char:"🇸🇰",fitzpatrick_scale:!1,category:"flags"},dv={keywords:["si","flag","nation","country","banner"],char:"🇸🇮",fitzpatrick_scale:!1,category:"flags"},pv={keywords:["solomon","islands","flag","nation","country","banner"],char:"🇸🇧",fitzpatrick_scale:!1,category:"flags"},mv={keywords:["so","flag","nation","country","banner"],char:"🇸🇴",fitzpatrick_scale:!1,category:"flags"},_v={keywords:["south","africa","flag","nation","country","banner"],char:"🇿🇦",fitzpatrick_scale:!1,category:"flags"},gv={keywords:["south","georgia","sandwich","islands","flag","nation","country","banner"],char:"🇬🇸",fitzpatrick_scale:!1,category:"flags"},yv={keywords:["south","korea","nation","flag","country","banner"],char:"🇰🇷",fitzpatrick_scale:!1,category:"flags"},kv={keywords:["south","sd","flag","nation","country","banner"],char:"🇸🇸",fitzpatrick_scale:!1,category:"flags"},bv={keywords:["spain","flag","nation","country","banner"],char:"🇪🇸",fitzpatrick_scale:!1,category:"flags"},wv={keywords:["sri","lanka","flag","nation","country","banner"],char:"🇱🇰",fitzpatrick_scale:!1,category:"flags"},Ev={keywords:["sd","flag","nation","country","banner"],char:"🇸🇩",fitzpatrick_scale:!1,category:"flags"},Tv={keywords:["sr","flag","nation","country","banner"],char:"🇸🇷",fitzpatrick_scale:!1,category:"flags"},Av={keywords:["sz","flag","nation","country","banner"],char:"🇸🇿",fitzpatrick_scale:!1,category:"flags"},Cv={keywords:["se","flag","nation","country","banner"],char:"🇸🇪",fitzpatrick_scale:!1,category:"flags"},xv={keywords:["ch","flag","nation","country","banner"],char:"🇨🇭",fitzpatrick_scale:!1,category:"flags"},Dv={keywords:["syrian","arab","republic","flag","nation","country","banner"],char:"🇸🇾",fitzpatrick_scale:!1,category:"flags"},zv={keywords:["tw","flag","nation","country","banner"],char:"🇹🇼",fitzpatrick_scale:!1,category:"flags"},Sv={keywords:["tj","flag","nation","country","banner"],char:"🇹🇯",fitzpatrick_scale:!1,category:"flags"},Iv={keywords:["tanzania,","united","republic","flag","nation","country","banner"],char:"🇹🇿",fitzpatrick_scale:!1,category:"flags"},Nv={keywords:["th","flag","nation","country","banner"],char:"🇹🇭",fitzpatrick_scale:!1,category:"flags"},Fv={keywords:["timor","leste","flag","nation","country","banner"],char:"🇹🇱",fitzpatrick_scale:!1,category:"flags"},Ov={keywords:["tg","flag","nation","country","banner"],char:"🇹🇬",fitzpatrick_scale:!1,category:"flags"},Lv={keywords:["tk","flag","nation","country","banner"],char:"🇹🇰",fitzpatrick_scale:!1,category:"flags"},Rv={keywords:["to","flag","nation","country","banner"],char:"🇹🇴",fitzpatrick_scale:!1,category:"flags"},vv={keywords:["trinidad","tobago","flag","nation","country","banner"],char:"🇹🇹",fitzpatrick_scale:!1,category:"flags"},Pv={keywords:["tn","flag","nation","country","banner"],char:"🇹🇳",fitzpatrick_scale:!1,category:"flags"},Bv={keywords:["turkey","flag","nation","country","banner"],char:"🇹🇷",fitzpatrick_scale:!1,category:"flags"},Mv={keywords:["flag","nation","country","banner"],char:"🇹🇲",fitzpatrick_scale:!1,category:"flags"},Uv={keywords:["turks","caicos","islands","flag","nation","country","banner"],char:"🇹🇨",fitzpatrick_scale:!1,category:"flags"},Hv={keywords:["flag","nation","country","banner"],char:"🇹🇻",fitzpatrick_scale:!1,category:"flags"},jv={keywords:["ug","flag","nation","country","banner"],char:"🇺🇬",fitzpatrick_scale:!1,category:"flags"},qv={keywords:["ua","flag","nation","country","banner"],char:"🇺🇦",fitzpatrick_scale:!1,category:"flags"},Yv={keywords:["united","arab","emirates","flag","nation","country","banner"],char:"🇦🇪",fitzpatrick_scale:!1,category:"flags"},$v={keywords:["united","kingdom","great","britain","northern","ireland","flag","nation","country","banner","british","UK","english","england","union jack"],char:"🇬🇧",fitzpatrick_scale:!1,category:"flags"},Wv={keywords:["flag","english"],char:"🏴󠁧󠁢󠁥󠁮󠁧󠁿",fitzpatrick_scale:!1,category:"flags"},Vv={keywords:["flag","scottish"],char:"🏴󠁧󠁢󠁳󠁣󠁴󠁿",fitzpatrick_scale:!1,category:"flags"},Gv={keywords:["flag","welsh"],char:"🏴󠁧󠁢󠁷󠁬󠁳󠁿",fitzpatrick_scale:!1,category:"flags"},Qv={keywords:["united","states","america","flag","nation","country","banner"],char:"🇺🇸",fitzpatrick_scale:!1,category:"flags"},Kv={keywords:["virgin","islands","us","flag","nation","country","banner"],char:"🇻🇮",fitzpatrick_scale:!1,category:"flags"},Xv={keywords:["uy","flag","nation","country","banner"],char:"🇺🇾",fitzpatrick_scale:!1,category:"flags"},Jv={keywords:["uz","flag","nation","country","banner"],char:"🇺🇿",fitzpatrick_scale:!1,category:"flags"},Zv={keywords:["vu","flag","nation","country","banner"],char:"🇻🇺",fitzpatrick_scale:!1,category:"flags"},eP={keywords:["vatican","city","flag","nation","country","banner"],char:"🇻🇦",fitzpatrick_scale:!1,category:"flags"},tP={keywords:["ve","bolivarian","republic","flag","nation","country","banner"],char:"🇻🇪",fitzpatrick_scale:!1,category:"flags"},aP={keywords:["viet","nam","flag","nation","country","banner"],char:"🇻🇳",fitzpatrick_scale:!1,category:"flags"},rP={keywords:["wallis","futuna","flag","nation","country","banner"],char:"🇼🇫",fitzpatrick_scale:!1,category:"flags"},nP={keywords:["western","sahara","flag","nation","country","banner"],char:"🇪🇭",fitzpatrick_scale:!1,category:"flags"},iP={keywords:["ye","flag","nation","country","banner"],char:"🇾🇪",fitzpatrick_scale:!1,category:"flags"},sP={keywords:["zm","flag","nation","country","banner"],char:"🇿🇲",fitzpatrick_scale:!1,category:"flags"},oP={keywords:["zw","flag","nation","country","banner"],char:"🇿🇼",fitzpatrick_scale:!1,category:"flags"},cP={keywords:["un","flag","banner"],char:"🇺🇳",fitzpatrick_scale:!1,category:"flags"},uP={keywords:["skull","crossbones","flag","banner"],char:"🏴‍☠️",fitzpatrick_scale:!1,category:"flags"},lP={100:{keywords:["score","perfect","numbers","century","exam","quiz","test","pass","hundred"],char:"💯",fitzpatrick_scale:!1,category:"symbols"},1234:{keywords:["numbers","blue-square"],char:"🔢",fitzpatrick_scale:!1,category:"symbols"},grinning:kg,grimacing:bg,grin:wg,joy:Eg,rofl:Tg,partying:Ag,smiley:Cg,smile:xg,sweat_smile:Dg,laughing:zg,innocent:Sg,wink:Ig,blush:Ng,slightly_smiling_face:Fg,upside_down_face:Og,relaxed:Lg,yum:Rg,relieved:vg,heart_eyes:Pg,smiling_face_with_three_hearts:Bg,kissing_heart:Mg,kissing:Ug,kissing_smiling_eyes:Hg,kissing_closed_eyes:jg,stuck_out_tongue_winking_eye:qg,zany:Yg,raised_eyebrow:$g,monocle:Wg,stuck_out_tongue_closed_eyes:Vg,stuck_out_tongue:Gg,money_mouth_face:Qg,nerd_face:Kg,sunglasses:Xg,star_struck:Jg,clown_face:Zg,cowboy_hat_face:e0,hugs:t0,smirk:a0,no_mouth:r0,neutral_face:n0,expressionless:i0,unamused:s0,roll_eyes:o0,thinking:c0,lying_face:u0,hand_over_mouth:l0,shushing:f0,symbols_over_mouth:h0,exploding_head:d0,flushed:p0,disappointed:m0,worried:_0,angry:g0,rage:y0,pensive:k0,confused:b0,slightly_frowning_face:w0,frowning_face:E0,persevere:T0,confounded:A0,tired_face:C0,weary:x0,pleading:D0,triumph:z0,open_mouth:S0,scream:I0,fearful:N0,cold_sweat:F0,hushed:O0,frowning:L0,anguished:R0,cry:v0,disappointed_relieved:P0,drooling_face:B0,sleepy:M0,sweat:U0,hot:H0,cold:j0,sob:q0,dizzy_face:Y0,astonished:$0,zipper_mouth_face:W0,nauseated_face:V0,sneezing_face:G0,vomiting:Q0,mask:K0,face_with_thermometer:X0,face_with_head_bandage:J0,woozy:Z0,sleeping:ey,zzz:ty,poop:ay,smiling_imp:ry,imp:ny,japanese_ogre:iy,japanese_goblin:sy,skull:oy,ghost:cy,alien:uy,robot:ly,smiley_cat:fy,smile_cat:hy,joy_cat:dy,heart_eyes_cat:py,smirk_cat:my,kissing_cat:_y,scream_cat:gy,crying_cat_face:yy,pouting_cat:ky,palms_up:by,raised_hands:wy,clap:Ey,wave:Ty,call_me_hand:Ay,"+1":{keywords:["thumbsup","yes","awesome","good","agree","accept","cool","hand","like"],char:"👍",fitzpatrick_scale:!0,category:"people"},"-1":{keywords:["thumbsdown","no","dislike","hand"],char:"👎",fitzpatrick_scale:!0,category:"people"},facepunch:Cy,fist:xy,fist_left:Dy,fist_right:zy,v:Sy,ok_hand:Iy,raised_hand:Ny,raised_back_of_hand:Fy,open_hands:Oy,muscle:Ly,pray:Ry,foot:vy,leg:Py,handshake:By,point_up:My,point_up_2:Uy,point_down:Hy,point_left:jy,point_right:qy,fu:Yy,raised_hand_with_fingers_splayed:$y,love_you:Wy,metal:Vy,crossed_fingers:Gy,vulcan_salute:Qy,writing_hand:Ky,selfie:Xy,nail_care:Jy,lips:Zy,tooth:ek,tongue:tk,ear:ak,nose:rk,eye:nk,eyes:ik,brain:sk,bust_in_silhouette:ok,busts_in_silhouette:ck,speaking_head:uk,baby:lk,child:fk,boy:hk,girl:dk,adult:pk,man:mk,woman:_k,blonde_woman:gk,blonde_man:yk,bearded_person:kk,older_adult:bk,older_man:wk,older_woman:Ek,man_with_gua_pi_mao:Tk,woman_with_headscarf:Ak,woman_with_turban:Ck,man_with_turban:xk,policewoman:Dk,policeman:zk,construction_worker_woman:Sk,construction_worker_man:Ik,guardswoman:Nk,guardsman:Fk,female_detective:Ok,male_detective:Lk,woman_health_worker:Rk,man_health_worker:vk,woman_farmer:Pk,man_farmer:Bk,woman_cook:Mk,man_cook:Uk,woman_student:Hk,man_student:jk,woman_singer:qk,man_singer:Yk,woman_teacher:$k,man_teacher:Wk,woman_factory_worker:Vk,man_factory_worker:Gk,woman_technologist:Qk,man_technologist:Kk,woman_office_worker:Xk,man_office_worker:Jk,woman_mechanic:Zk,man_mechanic:eb,woman_scientist:tb,man_scientist:ab,woman_artist:rb,man_artist:nb,woman_firefighter:ib,man_firefighter:sb,woman_pilot:ob,man_pilot:cb,woman_astronaut:ub,man_astronaut:lb,woman_judge:fb,man_judge:hb,woman_superhero:db,man_superhero:pb,woman_supervillain:mb,man_supervillain:_b,mrs_claus:gb,santa:yb,sorceress:kb,wizard:bb,woman_elf:wb,man_elf:Eb,woman_vampire:Tb,man_vampire:Ab,woman_zombie:Cb,man_zombie:xb,woman_genie:Db,man_genie:zb,mermaid:Sb,merman:Ib,woman_fairy:Nb,man_fairy:Fb,angel:Ob,pregnant_woman:Lb,breastfeeding:Rb,princess:vb,prince:Pb,bride_with_veil:Bb,man_in_tuxedo:Mb,running_woman:Ub,running_man:Hb,walking_woman:jb,walking_man:qb,dancer:Yb,man_dancing:$b,dancing_women:Wb,dancing_men:Vb,couple:Gb,two_men_holding_hands:Qb,two_women_holding_hands:Kb,bowing_woman:Xb,bowing_man:Jb,man_facepalming:Zb,woman_facepalming:e1,woman_shrugging:t1,man_shrugging:a1,tipping_hand_woman:r1,tipping_hand_man:n1,no_good_woman:i1,no_good_man:s1,ok_woman:o1,ok_man:c1,raising_hand_woman:u1,raising_hand_man:l1,pouting_woman:f1,pouting_man:h1,frowning_woman:d1,frowning_man:p1,haircut_woman:m1,haircut_man:_1,massage_woman:g1,massage_man:y1,woman_in_steamy_room:k1,man_in_steamy_room:b1,couple_with_heart_woman_man:w1,couple_with_heart_woman_woman:E1,couple_with_heart_man_man:T1,couplekiss_man_woman:A1,couplekiss_woman_woman:C1,couplekiss_man_man:x1,family_man_woman_boy:D1,family_man_woman_girl:z1,family_man_woman_girl_boy:S1,family_man_woman_boy_boy:I1,family_man_woman_girl_girl:N1,family_woman_woman_boy:F1,family_woman_woman_girl:O1,family_woman_woman_girl_boy:L1,family_woman_woman_boy_boy:R1,family_woman_woman_girl_girl:v1,family_man_man_boy:P1,family_man_man_girl:B1,family_man_man_girl_boy:M1,family_man_man_boy_boy:U1,family_man_man_girl_girl:H1,family_woman_boy:j1,family_woman_girl:q1,family_woman_girl_boy:Y1,family_woman_boy_boy:$1,family_woman_girl_girl:W1,family_man_boy:V1,family_man_girl:G1,family_man_girl_boy:Q1,family_man_boy_boy:K1,family_man_girl_girl:X1,yarn:J1,thread:Z1,coat:ew,labcoat:tw,womans_clothes:aw,tshirt:rw,jeans:nw,necktie:iw,dress:sw,bikini:ow,kimono:cw,lipstick:uw,kiss:lw,footprints:fw,flat_shoe:hw,high_heel:dw,sandal:pw,boot:mw,mans_shoe:_w,athletic_shoe:gw,hiking_boot:yw,socks:kw,gloves:bw,scarf:ww,womans_hat:Ew,tophat:Tw,billed_hat:Aw,rescue_worker_helmet:Cw,mortar_board:xw,crown:Dw,school_satchel:zw,luggage:Sw,pouch:Iw,purse:Nw,handbag:Fw,briefcase:Ow,eyeglasses:Lw,dark_sunglasses:Rw,goggles:vw,ring:Pw,closed_umbrella:Bw,dog:Mw,cat:Uw,mouse:Hw,hamster:jw,rabbit:qw,fox_face:Yw,bear:$w,panda_face:Ww,koala:Vw,tiger:Gw,lion:Qw,cow:Kw,pig:Xw,pig_nose:Jw,frog:Zw,squid:eE,octopus:tE,shrimp:aE,monkey_face:rE,gorilla:nE,see_no_evil:iE,hear_no_evil:sE,speak_no_evil:oE,monkey:cE,chicken:uE,penguin:lE,bird:fE,baby_chick:hE,hatching_chick:dE,hatched_chick:pE,duck:mE,eagle:_E,owl:gE,bat:yE,wolf:kE,boar:bE,horse:wE,unicorn:EE,honeybee:TE,bug:AE,butterfly:CE,snail:xE,beetle:DE,ant:zE,grasshopper:SE,spider:IE,scorpion:NE,crab:FE,snake:OE,lizard:LE,"t-rex":{keywords:["animal","nature","dinosaur","tyrannosaurus","extinct"],char:"🦖",fitzpatrick_scale:!1,category:"animals_and_nature"},sauropod:RE,turtle:vE,tropical_fish:PE,fish:BE,blowfish:ME,dolphin:UE,shark:HE,whale:jE,whale2:qE,crocodile:YE,leopard:$E,zebra:WE,tiger2:VE,water_buffalo:GE,ox:QE,cow2:KE,deer:XE,dromedary_camel:JE,camel:ZE,giraffe:eT,elephant:tT,rhinoceros:aT,goat:rT,ram:nT,sheep:iT,racehorse:sT,pig2:oT,rat:cT,mouse2:uT,rooster:lT,turkey:fT,dove:hT,dog2:dT,poodle:pT,cat2:mT,rabbit2:_T,chipmunk:gT,hedgehog:yT,raccoon:kT,llama:bT,hippopotamus:wT,kangaroo:ET,badger:TT,swan:AT,peacock:CT,parrot:xT,lobster:DT,mosquito:zT,paw_prints:ST,dragon:IT,dragon_face:NT,cactus:FT,christmas_tree:OT,evergreen_tree:LT,deciduous_tree:RT,palm_tree:vT,seedling:PT,herb:BT,shamrock:MT,four_leaf_clover:UT,bamboo:HT,tanabata_tree:jT,leaves:qT,fallen_leaf:YT,maple_leaf:$T,ear_of_rice:WT,hibiscus:VT,sunflower:GT,rose:QT,wilted_flower:KT,tulip:XT,blossom:JT,cherry_blossom:ZT,bouquet:e2,mushroom:t2,chestnut:a2,jack_o_lantern:r2,shell:n2,spider_web:i2,earth_americas:s2,earth_africa:o2,earth_asia:c2,full_moon:u2,waning_gibbous_moon:l2,last_quarter_moon:f2,waning_crescent_moon:h2,new_moon:d2,waxing_crescent_moon:p2,first_quarter_moon:m2,waxing_gibbous_moon:_2,new_moon_with_face:g2,full_moon_with_face:y2,first_quarter_moon_with_face:k2,last_quarter_moon_with_face:b2,sun_with_face:w2,crescent_moon:E2,star:T2,star2:A2,dizzy:C2,sparkles:x2,comet:D2,sunny:z2,sun_behind_small_cloud:S2,partly_sunny:I2,sun_behind_large_cloud:N2,sun_behind_rain_cloud:F2,cloud:O2,cloud_with_rain:L2,cloud_with_lightning_and_rain:R2,cloud_with_lightning:v2,zap:P2,fire:B2,boom:M2,snowflake:U2,cloud_with_snow:H2,snowman:j2,snowman_with_snow:q2,wind_face:Y2,dash:$2,tornado:W2,fog:V2,open_umbrella:G2,umbrella:Q2,droplet:K2,sweat_drops:X2,ocean:J2,green_apple:Z2,apple:eA,pear:tA,tangerine:aA,lemon:rA,banana:nA,watermelon:iA,grapes:sA,strawberry:oA,melon:cA,cherries:uA,peach:lA,pineapple:fA,coconut:hA,kiwi_fruit:dA,mango:pA,avocado:mA,broccoli:_A,tomato:gA,eggplant:yA,cucumber:kA,carrot:bA,hot_pepper:wA,potato:EA,corn:TA,leafy_greens:AA,sweet_potato:CA,peanuts:xA,honey_pot:DA,croissant:zA,bread:SA,baguette_bread:IA,bagel:NA,pretzel:FA,cheese:OA,egg:LA,bacon:RA,steak:vA,pancakes:PA,poultry_leg:BA,meat_on_bone:MA,bone:UA,fried_shrimp:HA,fried_egg:jA,hamburger:qA,fries:YA,stuffed_flatbread:$A,hotdog:WA,pizza:VA,sandwich:GA,canned_food:QA,spaghetti:KA,taco:XA,burrito:JA,green_salad:ZA,shallow_pan_of_food:eC,ramen:tC,stew:aC,fish_cake:rC,fortune_cookie:nC,sushi:iC,bento:sC,curry:oC,rice_ball:cC,rice:uC,rice_cracker:lC,oden:fC,dango:hC,shaved_ice:dC,ice_cream:pC,icecream:mC,pie:_C,cake:gC,cupcake:yC,moon_cake:kC,birthday:bC,custard:wC,candy:EC,lollipop:TC,chocolate_bar:AC,popcorn:CC,dumpling:xC,doughnut:DC,cookie:zC,milk_glass:SC,beer:IC,beers:NC,clinking_glasses:FC,wine_glass:OC,tumbler_glass:LC,cocktail:RC,tropical_drink:vC,champagne:PC,sake:BC,tea:MC,cup_with_straw:UC,coffee:HC,baby_bottle:jC,salt:qC,spoon:YC,fork_and_knife:$C,plate_with_cutlery:WC,bowl_with_spoon:VC,takeout_box:GC,chopsticks:QC,soccer:KC,basketball:XC,football:JC,baseball:ZC,softball:e3,tennis:t3,volleyball:a3,rugby_football:r3,flying_disc:n3,"8ball":{keywords:["pool","hobby","game","luck","magic"],char:"🎱",fitzpatrick_scale:!1,category:"activity"},golf:i3,golfing_woman:s3,golfing_man:o3,ping_pong:c3,badminton:u3,goal_net:l3,ice_hockey:f3,field_hockey:h3,lacrosse:d3,cricket:p3,ski:m3,skier:_3,snowboarder:g3,person_fencing:y3,women_wrestling:k3,men_wrestling:b3,woman_cartwheeling:w3,man_cartwheeling:E3,woman_playing_handball:T3,man_playing_handball:A3,ice_skate:C3,curling_stone:x3,skateboard:D3,sled:z3,bow_and_arrow:S3,fishing_pole_and_fish:I3,boxing_glove:N3,martial_arts_uniform:F3,rowing_woman:O3,rowing_man:L3,climbing_woman:R3,climbing_man:v3,swimming_woman:P3,swimming_man:B3,woman_playing_water_polo:M3,man_playing_water_polo:U3,woman_in_lotus_position:H3,man_in_lotus_position:j3,surfing_woman:q3,surfing_man:Y3,bath:$3,basketball_woman:W3,basketball_man:V3,weight_lifting_woman:G3,weight_lifting_man:Q3,biking_woman:K3,biking_man:X3,mountain_biking_woman:J3,mountain_biking_man:Z3,horse_racing:ex,business_suit_levitating:tx,trophy:ax,running_shirt_with_sash:rx,medal_sports:nx,medal_military:ix,"1st_place_medal":{keywords:["award","winning","first"],char:"🥇",fitzpatrick_scale:!1,category:"activity"},"2nd_place_medal":{keywords:["award","second"],char:"🥈",fitzpatrick_scale:!1,category:"activity"},"3rd_place_medal":{keywords:["award","third"],char:"🥉",fitzpatrick_scale:!1,category:"activity"},reminder_ribbon:sx,rosette:ox,ticket:cx,tickets:ux,performing_arts:lx,art:fx,circus_tent:hx,woman_juggling:dx,man_juggling:px,microphone:mx,headphones:_x,musical_score:gx,musical_keyboard:yx,drum:kx,saxophone:bx,trumpet:wx,guitar:Ex,violin:Tx,clapper:Ax,video_game:Cx,space_invader:xx,dart:Dx,game_die:zx,chess_pawn:Sx,slot_machine:Ix,jigsaw:Nx,bowling:Fx,red_car:Ox,taxi:Lx,blue_car:Rx,bus:vx,trolleybus:Px,racing_car:Bx,police_car:Mx,ambulance:Ux,fire_engine:Hx,minibus:jx,truck:qx,articulated_lorry:Yx,tractor:$x,kick_scooter:Wx,motorcycle:Vx,bike:Gx,motor_scooter:Qx,rotating_light:Kx,oncoming_police_car:Xx,oncoming_bus:Jx,oncoming_automobile:Zx,oncoming_taxi:eD,aerial_tramway:tD,mountain_cableway:aD,suspension_railway:rD,railway_car:nD,train:iD,monorail:sD,bullettrain_side:oD,bullettrain_front:cD,light_rail:uD,mountain_railway:lD,steam_locomotive:fD,train2:hD,metro:dD,tram:pD,station:mD,flying_saucer:_D,helicopter:gD,small_airplane:yD,airplane:kD,flight_departure:bD,flight_arrival:wD,sailboat:ED,motor_boat:TD,speedboat:AD,ferry:CD,passenger_ship:xD,rocket:DD,artificial_satellite:zD,seat:SD,canoe:ID,anchor:ND,construction:FD,fuelpump:OD,busstop:LD,vertical_traffic_light:RD,traffic_light:vD,checkered_flag:PD,ship:BD,ferris_wheel:MD,roller_coaster:UD,carousel_horse:HD,building_construction:jD,foggy:qD,tokyo_tower:YD,factory:$D,fountain:WD,rice_scene:VD,mountain:GD,mountain_snow:QD,mount_fuji:KD,volcano:XD,japan:JD,camping:ZD,tent:e6,national_park:t6,motorway:a6,railway_track:r6,sunrise:n6,sunrise_over_mountains:i6,desert:s6,beach_umbrella:o6,desert_island:c6,city_sunrise:u6,city_sunset:l6,cityscape:f6,night_with_stars:h6,bridge_at_night:d6,milky_way:p6,stars:m6,sparkler:_6,fireworks:g6,rainbow:y6,houses:k6,european_castle:b6,japanese_castle:w6,stadium:E6,statue_of_liberty:T6,house:A6,house_with_garden:C6,derelict_house:x6,office:D6,department_store:z6,post_office:S6,european_post_office:I6,hospital:N6,bank:F6,hotel:O6,convenience_store:L6,school:R6,love_hotel:v6,wedding:P6,classical_building:B6,church:M6,mosque:U6,synagogue:H6,kaaba:j6,shinto_shrine:q6,watch:Y6,iphone:$6,calling:W6,computer:V6,keyboard:G6,desktop_computer:Q6,printer:K6,computer_mouse:X6,trackball:J6,joystick:Z6,clamp:ez,minidisc:tz,floppy_disk:az,cd:rz,dvd:nz,vhs:iz,camera:sz,camera_flash:oz,video_camera:cz,movie_camera:uz,film_projector:lz,film_strip:fz,telephone_receiver:hz,phone:dz,pager:pz,fax:mz,tv:_z,radio:gz,studio_microphone:yz,level_slider:kz,control_knobs:bz,compass:wz,stopwatch:Ez,timer_clock:Tz,alarm_clock:Az,mantelpiece_clock:Cz,hourglass_flowing_sand:xz,hourglass:Dz,satellite:zz,battery:Sz,electric_plug:Iz,bulb:Nz,flashlight:Fz,candle:Oz,fire_extinguisher:Lz,wastebasket:Rz,oil_drum:vz,money_with_wings:Pz,dollar:Bz,yen:Mz,euro:Uz,pound:Hz,moneybag:jz,credit_card:qz,gem:Yz,balance_scale:$z,toolbox:Wz,wrench:Vz,hammer:Gz,hammer_and_pick:Qz,hammer_and_wrench:Kz,pick:Xz,nut_and_bolt:Jz,gear:Zz,brick:eS,chains:tS,magnet:aS,gun:rS,bomb:nS,firecracker:iS,hocho:sS,dagger:oS,crossed_swords:cS,shield:uS,smoking:lS,skull_and_crossbones:fS,coffin:hS,funeral_urn:dS,amphora:pS,crystal_ball:mS,prayer_beads:_S,nazar_amulet:gS,barber:yS,alembic:kS,telescope:bS,microscope:wS,hole:ES,pill:TS,syringe:AS,dna:CS,microbe:xS,petri_dish:DS,test_tube:zS,thermometer:SS,broom:IS,basket:NS,toilet_paper:FS,label:OS,bookmark:LS,toilet:RS,shower:vS,bathtub:PS,soap:BS,sponge:MS,lotion_bottle:US,key:HS,old_key:jS,couch_and_lamp:qS,sleeping_bed:YS,bed:$S,door:WS,bellhop_bell:VS,teddy_bear:GS,framed_picture:QS,world_map:KS,parasol_on_ground:XS,moyai:JS,shopping:ZS,shopping_cart:eI,balloon:tI,flags:aI,ribbon:rI,gift:nI,confetti_ball:iI,tada:sI,dolls:oI,wind_chime:cI,crossed_flags:uI,izakaya_lantern:lI,red_envelope:fI,email:hI,envelope_with_arrow:dI,incoming_envelope:pI,"e-mail":{keywords:["communication","inbox"],char:"📧",fitzpatrick_scale:!1,category:"objects"},love_letter:mI,postbox:_I,mailbox_closed:gI,mailbox:yI,mailbox_with_mail:kI,mailbox_with_no_mail:bI,package:{keywords:["mail","gift","cardboard","box","moving"],char:"📦",fitzpatrick_scale:!1,category:"objects"},postal_horn:wI,inbox_tray:EI,outbox_tray:TI,scroll:AI,page_with_curl:CI,bookmark_tabs:xI,receipt:DI,bar_chart:zI,chart_with_upwards_trend:SI,chart_with_downwards_trend:II,page_facing_up:NI,date:FI,calendar:OI,spiral_calendar:LI,card_index:RI,card_file_box:vI,ballot_box:PI,file_cabinet:BI,clipboard:MI,spiral_notepad:UI,file_folder:HI,open_file_folder:jI,card_index_dividers:qI,newspaper_roll:YI,newspaper:$I,notebook:WI,closed_book:VI,green_book:GI,blue_book:QI,orange_book:KI,notebook_with_decorative_cover:XI,ledger:JI,books:ZI,open_book:eN,safety_pin:tN,link:aN,paperclip:rN,paperclips:nN,scissors:iN,triangular_ruler:sN,straight_ruler:oN,abacus:cN,pushpin:uN,round_pushpin:lN,triangular_flag_on_post:fN,white_flag:hN,black_flag:dN,rainbow_flag:pN,closed_lock_with_key:mN,lock:_N,unlock:gN,lock_with_ink_pen:yN,pen:kN,fountain_pen:bN,black_nib:wN,memo:EN,pencil2:TN,crayon:AN,paintbrush:CN,mag:xN,mag_right:DN,heart:zN,orange_heart:SN,yellow_heart:IN,green_heart:NN,blue_heart:FN,purple_heart:ON,black_heart:LN,broken_heart:RN,heavy_heart_exclamation:vN,two_hearts:PN,revolving_hearts:BN,heartbeat:MN,heartpulse:UN,sparkling_heart:HN,cupid:jN,gift_heart:qN,heart_decoration:YN,peace_symbol:$N,latin_cross:WN,star_and_crescent:VN,om:GN,wheel_of_dharma:QN,star_of_david:KN,six_pointed_star:XN,menorah:JN,yin_yang:ZN,orthodox_cross:e4,place_of_worship:t4,ophiuchus:a4,aries:r4,taurus:n4,gemini:i4,cancer:s4,leo:o4,virgo:c4,libra:u4,scorpius:l4,sagittarius:f4,capricorn:h4,aquarius:d4,pisces:p4,id:m4,atom_symbol:_4,u7a7a:g4,u5272:y4,radioactive:k4,biohazard:b4,mobile_phone_off:w4,vibration_mode:E4,u6709:T4,u7121:A4,u7533:C4,u55b6:x4,u6708:D4,eight_pointed_black_star:z4,vs:S4,accept:I4,white_flower:N4,ideograph_advantage:F4,secret:O4,congratulations:L4,u5408:R4,u6e80:v4,u7981:P4,a:B4,b:M4,ab:U4,cl:H4,o2:j4,sos:q4,no_entry:Y4,name_badge:$4,no_entry_sign:W4,x:V4,o:G4,stop_sign:Q4,anger:K4,hotsprings:X4,no_pedestrians:J4,do_not_litter:Z4,no_bicycles:eF,"non-potable_water":{keywords:["drink","faucet","tap","circle"],char:"🚱",fitzpatrick_scale:!1,category:"symbols"},underage:tF,no_mobile_phones:aF,exclamation:rF,grey_exclamation:nF,question:iF,grey_question:sF,bangbang:oF,interrobang:cF,low_brightness:uF,high_brightness:lF,trident:fF,fleur_de_lis:hF,part_alternation_mark:dF,warning:pF,children_crossing:mF,beginner:_F,recycle:gF,u6307:yF,chart:kF,sparkle:bF,eight_spoked_asterisk:wF,negative_squared_cross_mark:EF,white_check_mark:TF,diamond_shape_with_a_dot_inside:AF,cyclone:CF,loop:xF,globe_with_meridians:DF,m:zF,atm:SF,sa:IF,passport_control:NF,customs:FF,baggage_claim:OF,left_luggage:LF,wheelchair:RF,no_smoking:vF,wc:PF,parking:BF,potable_water:MF,mens:UF,womens:HF,baby_symbol:jF,restroom:qF,put_litter_in_its_place:YF,cinema:$F,signal_strength:WF,koko:VF,ng:GF,ok:QF,up:KF,cool:XF,new:{keywords:["blue-square","words","start"],char:"🆕",fitzpatrick_scale:!1,category:"symbols"},free:JF,zero:ZF,one:eO,two:tO,three:aO,four:rO,five:nO,six:iO,seven:sO,eight:oO,nine:cO,keycap_ten:uO,asterisk:lO,eject_button:fO,arrow_forward:hO,pause_button:dO,next_track_button:pO,stop_button:mO,record_button:_O,play_or_pause_button:gO,previous_track_button:yO,fast_forward:kO,rewind:bO,twisted_rightwards_arrows:wO,repeat:EO,repeat_one:TO,arrow_backward:AO,arrow_up_small:CO,arrow_down_small:xO,arrow_double_up:DO,arrow_double_down:zO,arrow_right:SO,arrow_left:IO,arrow_up:NO,arrow_down:FO,arrow_upper_right:OO,arrow_lower_right:LO,arrow_lower_left:RO,arrow_upper_left:vO,arrow_up_down:PO,left_right_arrow:BO,arrows_counterclockwise:MO,arrow_right_hook:UO,leftwards_arrow_with_hook:HO,arrow_heading_up:jO,arrow_heading_down:qO,hash:YO,information_source:$O,abc:WO,abcd:VO,capital_abcd:GO,symbols:QO,musical_note:KO,notes:XO,wavy_dash:JO,curly_loop:ZO,heavy_check_mark:e8,arrows_clockwise:t8,heavy_plus_sign:a8,heavy_minus_sign:r8,heavy_division_sign:n8,heavy_multiplication_x:i8,infinity:s8,heavy_dollar_sign:o8,currency_exchange:c8,copyright:u8,registered:l8,tm:f8,end:h8,back:d8,on:p8,top:m8,soon:_8,ballot_box_with_check:g8,radio_button:y8,white_circle:k8,black_circle:b8,red_circle:w8,large_blue_circle:E8,small_orange_diamond:T8,small_blue_diamond:A8,large_orange_diamond:C8,large_blue_diamond:x8,small_red_triangle:D8,black_small_square:z8,white_small_square:S8,black_large_square:I8,white_large_square:N8,small_red_triangle_down:F8,black_medium_square:O8,white_medium_square:L8,black_medium_small_square:R8,white_medium_small_square:v8,black_square_button:P8,white_square_button:B8,speaker:M8,sound:U8,loud_sound:H8,mute:j8,mega:q8,loudspeaker:Y8,bell:$8,no_bell:W8,black_joker:V8,mahjong:G8,spades:Q8,clubs:K8,hearts:X8,diamonds:J8,flower_playing_cards:Z8,thought_balloon:eL,right_anger_bubble:tL,speech_balloon:aL,left_speech_bubble:rL,clock1:nL,clock2:iL,clock3:sL,clock4:oL,clock5:cL,clock6:uL,clock7:lL,clock8:fL,clock9:hL,clock10:dL,clock11:pL,clock12:mL,clock130:_L,clock230:gL,clock330:yL,clock430:kL,clock530:bL,clock630:wL,clock730:EL,clock830:TL,clock930:AL,clock1030:CL,clock1130:xL,clock1230:DL,afghanistan:zL,aland_islands:SL,albania:IL,algeria:NL,american_samoa:FL,andorra:OL,angola:LL,anguilla:RL,antarctica:vL,antigua_barbuda:PL,argentina:BL,armenia:ML,aruba:UL,australia:HL,austria:jL,azerbaijan:qL,bahamas:YL,bahrain:$L,bangladesh:WL,barbados:VL,belarus:GL,belgium:QL,belize:KL,benin:XL,bermuda:JL,bhutan:ZL,bolivia:e5,caribbean_netherlands:t5,bosnia_herzegovina:a5,botswana:r5,brazil:n5,british_indian_ocean_territory:i5,british_virgin_islands:s5,brunei:o5,bulgaria:c5,burkina_faso:u5,burundi:l5,cape_verde:f5,cambodia:h5,cameroon:d5,canada:p5,canary_islands:m5,cayman_islands:_5,central_african_republic:g5,chad:y5,chile:k5,cn:b5,christmas_island:w5,cocos_islands:E5,colombia:T5,comoros:A5,congo_brazzaville:C5,congo_kinshasa:x5,cook_islands:D5,costa_rica:z5,croatia:S5,cuba:I5,curacao:N5,cyprus:F5,czech_republic:O5,denmark:L5,djibouti:R5,dominica:v5,dominican_republic:P5,ecuador:B5,egypt:M5,el_salvador:U5,equatorial_guinea:H5,eritrea:j5,estonia:q5,ethiopia:Y5,eu:$5,falkland_islands:W5,faroe_islands:V5,fiji:G5,finland:Q5,fr:K5,french_guiana:X5,french_polynesia:J5,french_southern_territories:Z5,gabon:eR,gambia:tR,georgia:aR,de:rR,ghana:nR,gibraltar:iR,greece:sR,greenland:oR,grenada:cR,guadeloupe:uR,guam:lR,guatemala:fR,guernsey:hR,guinea:dR,guinea_bissau:pR,guyana:mR,haiti:_R,honduras:gR,hong_kong:yR,hungary:kR,iceland:bR,india:wR,indonesia:ER,iran:TR,iraq:AR,ireland:CR,isle_of_man:xR,israel:DR,it:zR,cote_divoire:SR,jamaica:IR,jp:NR,jersey:FR,jordan:OR,kazakhstan:LR,kenya:RR,kiribati:vR,kosovo:PR,kuwait:BR,kyrgyzstan:MR,laos:UR,latvia:HR,lebanon:jR,lesotho:qR,liberia:YR,libya:$R,liechtenstein:WR,lithuania:VR,luxembourg:GR,macau:QR,macedonia:KR,madagascar:XR,malawi:JR,malaysia:ZR,maldives:e9,mali:t9,malta:a9,marshall_islands:r9,martinique:n9,mauritania:i9,mauritius:s9,mayotte:o9,mexico:c9,micronesia:u9,moldova:l9,monaco:f9,mongolia:h9,montenegro:d9,montserrat:p9,morocco:m9,mozambique:_9,myanmar:g9,namibia:y9,nauru:k9,nepal:b9,netherlands:w9,new_caledonia:E9,new_zealand:T9,nicaragua:A9,niger:C9,nigeria:x9,niue:D9,norfolk_island:z9,northern_mariana_islands:S9,north_korea:I9,norway:N9,oman:F9,pakistan:O9,palau:L9,palestinian_territories:R9,panama:v9,papua_new_guinea:P9,paraguay:B9,peru:M9,philippines:U9,pitcairn_islands:H9,poland:j9,portugal:q9,puerto_rico:Y9,qatar:$9,reunion:W9,romania:V9,ru:G9,rwanda:Q9,st_barthelemy:K9,st_helena:X9,st_kitts_nevis:J9,st_lucia:Z9,st_pierre_miquelon:ev,st_vincent_grenadines:tv,samoa:av,san_marino:rv,sao_tome_principe:nv,saudi_arabia:iv,senegal:sv,serbia:ov,seychelles:cv,sierra_leone:uv,singapore:lv,sint_maarten:fv,slovakia:hv,slovenia:dv,solomon_islands:pv,somalia:mv,south_africa:_v,south_georgia_south_sandwich_islands:gv,kr:yv,south_sudan:kv,es:bv,sri_lanka:wv,sudan:Ev,suriname:Tv,swaziland:Av,sweden:Cv,switzerland:xv,syria:Dv,taiwan:zv,tajikistan:Sv,tanzania:Iv,thailand:Nv,timor_leste:Fv,togo:Ov,tokelau:Lv,tonga:Rv,trinidad_tobago:vv,tunisia:Pv,tr:Bv,turkmenistan:Mv,turks_caicos_islands:Uv,tuvalu:Hv,uganda:jv,ukraine:qv,united_arab_emirates:Yv,uk:$v,england:Wv,scotland:Vv,wales:Gv,us:Qv,us_virgin_islands:Kv,uruguay:Xv,uzbekistan:Jv,vanuatu:Zv,vatican_city:eP,venezuela:tP,vietnam:aP,wallis_futuna:rP,western_sahara:nP,yemen:iP,zambia:sP,zimbabwe:oP,united_nations:cP,pirate_flag:uP},fP=["grinning","smiley","smile","grin","laughing","sweat_smile","joy","rofl","relaxed","blush","innocent","slightly_smiling_face","upside_down_face","wink","relieved","heart_eyes","smiling_face_with_three_hearts","kissing_heart","kissing","kissing_smiling_eyes","kissing_closed_eyes","yum","stuck_out_tongue","stuck_out_tongue_closed_eyes","stuck_out_tongue_winking_eye","zany","raised_eyebrow","monocle","nerd_face","sunglasses","star_struck","partying","smirk","unamused","disappointed","pensive","worried","confused","slightly_frowning_face","frowning_face","persevere","confounded","tired_face","weary","pleading","cry","sob","triumph","angry","rage","symbols_over_mouth","exploding_head","flushed","hot","cold","scream","fearful","cold_sweat","disappointed_relieved","sweat","hugs","thinking","hand_over_mouth","shushing","lying_face","no_mouth","neutral_face","expressionless","grimacing","roll_eyes","hushed","frowning","anguished","open_mouth","astonished","sleeping","drooling_face","sleepy","dizzy_face","zipper_mouth_face","woozy","nauseated_face","vomiting","sneezing_face","mask","face_with_thermometer","face_with_head_bandage","money_mouth_face","cowboy_hat_face","smiling_imp","imp","japanese_ogre","japanese_goblin","clown_face","poop","ghost","skull","skull_and_crossbones","alien","space_invader","robot","jack_o_lantern","smiley_cat","smile_cat","joy_cat","heart_eyes_cat","smirk_cat","kissing_cat","scream_cat","crying_cat_face","pouting_cat","palms_up","open_hands","raised_hands","clap","handshake","+1","-1","facepunch","fist","fist_left","fist_right","crossed_fingers","v","love_you","metal","ok_hand","point_left","point_right","point_up","point_down","point_up_2","raised_hand","raised_back_of_hand","raised_hand_with_fingers_splayed","vulcan_salute","wave","call_me_hand","muscle","fu","writing_hand","pray","foot","leg","ring","lipstick","kiss","lips","tooth","tongue","ear","nose","footprints","eye","eyes","brain","speaking_head","bust_in_silhouette","busts_in_silhouette","baby","girl","child","boy","woman","adult","man","blonde_woman","blonde_man","bearded_person","older_woman","older_adult","older_man","man_with_gua_pi_mao","woman_with_headscarf","woman_with_turban","man_with_turban","policewoman","policeman","construction_worker_woman","construction_worker_man","guardswoman","guardsman","female_detective","male_detective","woman_health_worker","man_health_worker","woman_farmer","man_farmer","woman_cook","man_cook","woman_student","man_student","woman_singer","man_singer","woman_teacher","man_teacher","woman_factory_worker","man_factory_worker","woman_technologist","man_technologist","woman_office_worker","man_office_worker","woman_mechanic","man_mechanic","woman_scientist","man_scientist","woman_artist","man_artist","woman_firefighter","man_firefighter","woman_pilot","man_pilot","woman_astronaut","man_astronaut","woman_judge","man_judge","bride_with_veil","man_in_tuxedo","princess","prince","woman_superhero","man_superhero","woman_supervillain","man_supervillain","mrs_claus","santa","sorceress","wizard","woman_elf","man_elf","woman_vampire","man_vampire","woman_zombie","man_zombie","woman_genie","man_genie","mermaid","merman","woman_fairy","man_fairy","angel","pregnant_woman","breastfeeding","bowing_woman","bowing_man","tipping_hand_woman","tipping_hand_man","no_good_woman","no_good_man","ok_woman","ok_man","raising_hand_woman","raising_hand_man","woman_facepalming","man_facepalming","woman_shrugging","man_shrugging","pouting_woman","pouting_man","frowning_woman","frowning_man","haircut_woman","haircut_man","massage_woman","massage_man","woman_in_steamy_room","man_in_steamy_room","nail_care","selfie","dancer","man_dancing","dancing_women","dancing_men","business_suit_levitating","walking_woman","walking_man","running_woman","running_man","couple","two_women_holding_hands","two_men_holding_hands","couple_with_heart_woman_man","couple_with_heart_woman_woman","couple_with_heart_man_man","couplekiss_man_woman","couplekiss_woman_woman","couplekiss_man_man","family_man_woman_boy","family_man_woman_girl","family_man_woman_girl_boy","family_man_woman_boy_boy","family_man_woman_girl_girl","family_woman_woman_boy","family_woman_woman_girl","family_woman_woman_girl_boy","family_woman_woman_boy_boy","family_woman_woman_girl_girl","family_man_man_boy","family_man_man_girl","family_man_man_girl_boy","family_man_man_boy_boy","family_man_man_girl_girl","family_woman_boy","family_woman_girl","family_woman_girl_boy","family_woman_boy_boy","family_woman_girl_girl","family_man_boy","family_man_girl","family_man_girl_boy","family_man_boy_boy","family_man_girl_girl","yarn","thread","coat","labcoat","womans_clothes","tshirt","jeans","necktie","dress","bikini","kimono","flat_shoe","high_heel","sandal","boot","mans_shoe","athletic_shoe","hiking_boot","socks","gloves","scarf","tophat","billed_hat","womans_hat","mortar_board","rescue_worker_helmet","crown","pouch","purse","handbag","briefcase","school_satchel","luggage","eyeglasses","dark_sunglasses","goggles","closed_umbrella","dog","cat","mouse","hamster","rabbit","fox_face","bear","panda_face","koala","tiger","lion","cow","pig","pig_nose","frog","monkey_face","see_no_evil","hear_no_evil","speak_no_evil","monkey","chicken","penguin","bird","baby_chick","hatching_chick","hatched_chick","duck","eagle","owl","bat","wolf","boar","horse","unicorn","honeybee","bug","butterfly","snail","shell","beetle","ant","mosquito","grasshopper","spider","spider_web","scorpion","turtle","snake","lizard","t-rex","sauropod","octopus","squid","shrimp","lobster","crab","blowfish","tropical_fish","fish","dolphin","whale","whale2","shark","crocodile","tiger2","leopard","zebra","gorilla","elephant","hippopotamus","rhinoceros","dromedary_camel","giraffe","kangaroo","camel","water_buffalo","ox","cow2","racehorse","pig2","ram","sheep","llama","goat","deer","dog2","poodle","cat2","rooster","turkey","peacock","parrot","swan","dove","rabbit2","raccoon","badger","rat","mouse2","chipmunk","hedgehog","paw_prints","dragon","dragon_face","cactus","christmas_tree","evergreen_tree","deciduous_tree","palm_tree","seedling","herb","shamrock","four_leaf_clover","bamboo","tanabata_tree","leaves","fallen_leaf","maple_leaf","ear_of_rice","hibiscus","sunflower","rose","wilted_flower","tulip","blossom","cherry_blossom","bouquet","mushroom","earth_americas","earth_africa","earth_asia","full_moon","waning_gibbous_moon","last_quarter_moon","waning_crescent_moon","new_moon","waxing_crescent_moon","first_quarter_moon","waxing_gibbous_moon","new_moon_with_face","full_moon_with_face","first_quarter_moon_with_face","last_quarter_moon_with_face","sun_with_face","crescent_moon","star","star2","dizzy","sparkles","comet","sunny","sun_behind_small_cloud","partly_sunny","sun_behind_large_cloud","sun_behind_rain_cloud","cloud","cloud_with_rain","cloud_with_lightning_and_rain","cloud_with_lightning","zap","fire","boom","snowflake","cloud_with_snow","snowman","snowman_with_snow","wind_face","dash","tornado","fog","open_umbrella","umbrella","droplet","sweat_drops","ocean","green_apple","apple","pear","tangerine","lemon","banana","watermelon","grapes","strawberry","melon","cherries","peach","mango","pineapple","coconut","kiwi_fruit","tomato","eggplant","avocado","broccoli","leafy_greens","cucumber","hot_pepper","corn","carrot","potato","sweet_potato","croissant","bagel","bread","baguette_bread","pretzel","cheese","egg","fried_egg","pancakes","bacon","steak","poultry_leg","meat_on_bone","bone","hotdog","hamburger","fries","pizza","sandwich","stuffed_flatbread","taco","burrito","green_salad","shallow_pan_of_food","canned_food","spaghetti","ramen","stew","curry","sushi","bento","fried_shrimp","rice_ball","rice","rice_cracker","fish_cake","fortune_cookie","moon_cake","oden","dango","shaved_ice","ice_cream","icecream","pie","cupcake","cake","birthday","custard","lollipop","candy","chocolate_bar","popcorn","doughnut","dumpling","cookie","chestnut","peanuts","honey_pot","milk_glass","baby_bottle","coffee","tea","cup_with_straw","sake","beer","beers","clinking_glasses","wine_glass","tumbler_glass","cocktail","tropical_drink","champagne","spoon","fork_and_knife","plate_with_cutlery","bowl_with_spoon","takeout_box","chopsticks","salt","soccer","basketball","football","baseball","softball","tennis","volleyball","rugby_football","flying_disc","8ball","golf","golfing_woman","golfing_man","ping_pong","badminton","goal_net","ice_hockey","field_hockey","lacrosse","cricket","ski","skier","snowboarder","person_fencing","women_wrestling","men_wrestling","woman_cartwheeling","man_cartwheeling","woman_playing_handball","man_playing_handball","ice_skate","curling_stone","skateboard","sled","bow_and_arrow","fishing_pole_and_fish","boxing_glove","martial_arts_uniform","rowing_woman","rowing_man","climbing_woman","climbing_man","swimming_woman","swimming_man","woman_playing_water_polo","man_playing_water_polo","woman_in_lotus_position","man_in_lotus_position","surfing_woman","surfing_man","basketball_woman","basketball_man","weight_lifting_woman","weight_lifting_man","biking_woman","biking_man","mountain_biking_woman","mountain_biking_man","horse_racing","trophy","running_shirt_with_sash","medal_sports","medal_military","1st_place_medal","2nd_place_medal","3rd_place_medal","reminder_ribbon","rosette","ticket","tickets","performing_arts","art","circus_tent","woman_juggling","man_juggling","microphone","headphones","musical_score","musical_keyboard","drum","saxophone","trumpet","guitar","violin","clapper","video_game","dart","game_die","chess_pawn","slot_machine","jigsaw","bowling","red_car","taxi","blue_car","bus","trolleybus","racing_car","police_car","ambulance","fire_engine","minibus","truck","articulated_lorry","tractor","kick_scooter","motorcycle","bike","motor_scooter","rotating_light","oncoming_police_car","oncoming_bus","oncoming_automobile","oncoming_taxi","aerial_tramway","mountain_cableway","suspension_railway","railway_car","train","monorail","bullettrain_side","bullettrain_front","light_rail","mountain_railway","steam_locomotive","train2","metro","tram","station","flying_saucer","helicopter","small_airplane","airplane","flight_departure","flight_arrival","sailboat","motor_boat","speedboat","ferry","passenger_ship","rocket","artificial_satellite","seat","canoe","anchor","construction","fuelpump","busstop","vertical_traffic_light","traffic_light","ship","ferris_wheel","roller_coaster","carousel_horse","building_construction","foggy","tokyo_tower","factory","fountain","rice_scene","mountain","mountain_snow","mount_fuji","volcano","japan","camping","tent","national_park","motorway","railway_track","sunrise","sunrise_over_mountains","desert","beach_umbrella","desert_island","city_sunrise","city_sunset","cityscape","night_with_stars","bridge_at_night","milky_way","stars","sparkler","fireworks","rainbow","houses","european_castle","japanese_castle","stadium","statue_of_liberty","house","house_with_garden","derelict_house","office","department_store","post_office","european_post_office","hospital","bank","hotel","convenience_store","school","love_hotel","wedding","classical_building","church","mosque","synagogue","kaaba","shinto_shrine","watch","iphone","calling","computer","keyboard","desktop_computer","printer","computer_mouse","trackball","joystick","clamp","minidisc","floppy_disk","cd","dvd","vhs","camera","camera_flash","video_camera","movie_camera","film_projector","film_strip","telephone_receiver","phone","pager","fax","tv","radio","studio_microphone","level_slider","control_knobs","compass","stopwatch","timer_clock","alarm_clock","mantelpiece_clock","hourglass_flowing_sand","hourglass","satellite","battery","electric_plug","bulb","flashlight","candle","fire_extinguisher","wastebasket","oil_drum","money_with_wings","dollar","yen","euro","pound","moneybag","credit_card","gem","balance_scale","toolbox","wrench","hammer","hammer_and_pick","hammer_and_wrench","pick","nut_and_bolt","gear","brick","chains","magnet","gun","bomb","firecracker","hocho","dagger","crossed_swords","shield","smoking","coffin","funeral_urn","amphora","crystal_ball","prayer_beads","nazar_amulet","barber","alembic","telescope","microscope","hole","pill","syringe","dna","microbe","petri_dish","test_tube","thermometer","broom","basket","toilet_paper","label","bookmark","toilet","shower","bathtub","bath","soap","sponge","lotion_bottle","key","old_key","couch_and_lamp","sleeping_bed","bed","door","bellhop_bell","teddy_bear","framed_picture","world_map","parasol_on_ground","moyai","shopping","shopping_cart","balloon","flags","ribbon","gift","confetti_ball","tada","dolls","wind_chime","crossed_flags","izakaya_lantern","red_envelope","email","envelope_with_arrow","incoming_envelope","e-mail","love_letter","postbox","mailbox_closed","mailbox","mailbox_with_mail","mailbox_with_no_mail","package","postal_horn","inbox_tray","outbox_tray","scroll","page_with_curl","bookmark_tabs","receipt","bar_chart","chart_with_upwards_trend","chart_with_downwards_trend","page_facing_up","date","calendar","spiral_calendar","card_index","card_file_box","ballot_box","file_cabinet","clipboard","spiral_notepad","file_folder","open_file_folder","card_index_dividers","newspaper_roll","newspaper","notebook","closed_book","green_book","blue_book","orange_book","notebook_with_decorative_cover","ledger","books","open_book","safety_pin","link","paperclip","paperclips","scissors","triangular_ruler","straight_ruler","abacus","pushpin","round_pushpin","closed_lock_with_key","lock","unlock","lock_with_ink_pen","pen","fountain_pen","black_nib","memo","pencil2","crayon","paintbrush","mag","mag_right","heart","orange_heart","yellow_heart","green_heart","blue_heart","purple_heart","black_heart","broken_heart","heavy_heart_exclamation","two_hearts","revolving_hearts","heartbeat","heartpulse","sparkling_heart","cupid","gift_heart","heart_decoration","peace_symbol","latin_cross","star_and_crescent","om","wheel_of_dharma","star_of_david","six_pointed_star","menorah","yin_yang","orthodox_cross","place_of_worship","ophiuchus","aries","taurus","gemini","cancer","leo","virgo","libra","scorpius","sagittarius","capricorn","aquarius","pisces","id","atom_symbol","u7a7a","u5272","radioactive","biohazard","mobile_phone_off","vibration_mode","u6709","u7121","u7533","u55b6","u6708","eight_pointed_black_star","vs","accept","white_flower","ideograph_advantage","secret","congratulations","u5408","u6e80","u7981","a","b","ab","cl","o2","sos","no_entry","name_badge","no_entry_sign","x","o","stop_sign","anger","hotsprings","no_pedestrians","do_not_litter","no_bicycles","non-potable_water","underage","no_mobile_phones","exclamation","grey_exclamation","question","grey_question","bangbang","interrobang","100","low_brightness","high_brightness","trident","fleur_de_lis","part_alternation_mark","warning","children_crossing","beginner","recycle","u6307","chart","sparkle","eight_spoked_asterisk","negative_squared_cross_mark","white_check_mark","diamond_shape_with_a_dot_inside","cyclone","loop","globe_with_meridians","m","atm","zzz","sa","passport_control","customs","baggage_claim","left_luggage","wheelchair","no_smoking","wc","parking","potable_water","mens","womens","baby_symbol","restroom","put_litter_in_its_place","cinema","signal_strength","koko","ng","ok","up","cool","new","free","zero","one","two","three","four","five","six","seven","eight","nine","keycap_ten","asterisk","1234","eject_button","arrow_forward","pause_button","next_track_button","stop_button","record_button","play_or_pause_button","previous_track_button","fast_forward","rewind","twisted_rightwards_arrows","repeat","repeat_one","arrow_backward","arrow_up_small","arrow_down_small","arrow_double_up","arrow_double_down","arrow_right","arrow_left","arrow_up","arrow_down","arrow_upper_right","arrow_lower_right","arrow_lower_left","arrow_upper_left","arrow_up_down","left_right_arrow","arrows_counterclockwise","arrow_right_hook","leftwards_arrow_with_hook","arrow_heading_up","arrow_heading_down","hash","information_source","abc","abcd","capital_abcd","symbols","musical_note","notes","wavy_dash","curly_loop","heavy_check_mark","arrows_clockwise","heavy_plus_sign","heavy_minus_sign","heavy_division_sign","heavy_multiplication_x","infinity","heavy_dollar_sign","currency_exchange","copyright","registered","tm","end","back","on","top","soon","ballot_box_with_check","radio_button","white_circle","black_circle","red_circle","large_blue_circle","small_orange_diamond","small_blue_diamond","large_orange_diamond","large_blue_diamond","small_red_triangle","black_small_square","white_small_square","black_large_square","white_large_square","small_red_triangle_down","black_medium_square","white_medium_square","black_medium_small_square","white_medium_small_square","black_square_button","white_square_button","speaker","sound","loud_sound","mute","mega","loudspeaker","bell","no_bell","black_joker","mahjong","spades","clubs","hearts","diamonds","flower_playing_cards","thought_balloon","right_anger_bubble","speech_balloon","left_speech_bubble","clock1","clock2","clock3","clock4","clock5","clock6","clock7","clock8","clock9","clock10","clock11","clock12","clock130","clock230","clock330","clock430","clock530","clock630","clock730","clock830","clock930","clock1030","clock1130","clock1230","white_flag","black_flag","pirate_flag","checkered_flag","triangular_flag_on_post","rainbow_flag","united_nations","afghanistan","aland_islands","albania","algeria","american_samoa","andorra","angola","anguilla","antarctica","antigua_barbuda","argentina","armenia","aruba","australia","austria","azerbaijan","bahamas","bahrain","bangladesh","barbados","belarus","belgium","belize","benin","bermuda","bhutan","bolivia","caribbean_netherlands","bosnia_herzegovina","botswana","brazil","british_indian_ocean_territory","british_virgin_islands","brunei","bulgaria","burkina_faso","burundi","cape_verde","cambodia","cameroon","canada","canary_islands","cayman_islands","central_african_republic","chad","chile","cn","christmas_island","cocos_islands","colombia","comoros","congo_brazzaville","congo_kinshasa","cook_islands","costa_rica","croatia","cuba","curacao","cyprus","czech_republic","denmark","djibouti","dominica","dominican_republic","ecuador","egypt","el_salvador","equatorial_guinea","eritrea","estonia","ethiopia","eu","falkland_islands","faroe_islands","fiji","finland","fr","french_guiana","french_polynesia","french_southern_territories","gabon","gambia","georgia","de","ghana","gibraltar","greece","greenland","grenada","guadeloupe","guam","guatemala","guernsey","guinea","guinea_bissau","guyana","haiti","honduras","hong_kong","hungary","iceland","india","indonesia","iran","iraq","ireland","isle_of_man","israel","it","cote_divoire","jamaica","jp","jersey","jordan","kazakhstan","kenya","kiribati","kosovo","kuwait","kyrgyzstan","laos","latvia","lebanon","lesotho","liberia","libya","liechtenstein","lithuania","luxembourg","macau","macedonia","madagascar","malawi","malaysia","maldives","mali","malta","marshall_islands","martinique","mauritania","mauritius","mayotte","mexico","micronesia","moldova","monaco","mongolia","montenegro","montserrat","morocco","mozambique","myanmar","namibia","nauru","nepal","netherlands","new_caledonia","new_zealand","nicaragua","niger","nigeria","niue","norfolk_island","northern_mariana_islands","north_korea","norway","oman","pakistan","palau","palestinian_territories","panama","papua_new_guinea","paraguay","peru","philippines","pitcairn_islands","poland","portugal","puerto_rico","qatar","reunion","romania","ru","rwanda","st_barthelemy","st_helena","st_kitts_nevis","st_lucia","st_pierre_miquelon","st_vincent_grenadines","samoa","san_marino","sao_tome_principe","saudi_arabia","senegal","serbia","seychelles","sierra_leone","singapore","sint_maarten","slovakia","slovenia","solomon_islands","somalia","south_africa","south_georgia_south_sandwich_islands","kr","south_sudan","es","sri_lanka","sudan","suriname","swaziland","sweden","switzerland","syria","taiwan","tajikistan","tanzania","thailand","timor_leste","togo","tokelau","tonga","trinidad_tobago","tunisia","tr","turkmenistan","turks_caicos_islands","tuvalu","uganda","ukraine","united_arab_emirates","uk","england","scotland","wales","us","us_virgin_islands","uruguay","uzbekistan","vanuatu","vatican_city","venezuela","vietnam","wallis_futuna","western_sahara","yemen","zambia","zimbabwe"];var hP={lib:lP,ordered:fP,fitzpatrick_scale_modifiers:["🏻","🏼","🏽","🏾","🏿"]};const dP=rn(hP);var pP=()=>{const e="\\ud800-\\udfff",i="\\u0300-\\u036f"+"\\ufe20-\\ufe2f"+"\\u20d0-\\u20ff"+"\\u1ab0-\\u1aff"+"\\u1dc0-\\u1dff",o="\\ufe0e\\ufe0f",u="\\uD83D\\uDC69\\uD83C\\uDFFB\\u200D\\uD83C\\uDF93",l=`[${e}]`,p=`[${i}]`,h="\\ud83c[\\udffb-\\udfff]",f=`(?:${p}|${h})`,m=`[^${e}]`,g="(?:\\uD83C[\\uDDE6-\\uDDFF]){2}",b="[\\ud800-\\udbff][\\udc00-\\udfff]",C="\\u200d",T="(?:\\ud83c\\udff4\\udb40\\udc67\\udb40\\udc62\\udb40(?:\\udc65|\\udc73|\\udc77)\\udb40(?:\\udc6e|\\udc63|\\udc6c)\\udb40(?:\\udc67|\\udc74|\\udc73)\\udb40\\udc7f)",I=`[${u}]`,O=`${f}?`,M=`[${o}]?`,N=`(?:${C}(?:${[m,g,b].join("|")})${M+O})*`,d=M+O+N,j=`(?:${[`${m}${p}?`,p,g,b,l,I].join("|")})`;return new RegExp(`${T}|${h}(?=${h})|${j+d}`,"g")};const mP=rn(pP);mP();var _P="️",gP=new RegExp(_P,"g");function yP(e){return e.replace(gP,"")}function kP(e){return/:.+:/.test(e)?e.slice(1,-1):e}var ac=Object.entries(dP.lib).map(([e,{char:t}])=>[e,t]),bP=new Map(ac);new Map(ac.map(([e,t])=>[yP(t),e]));var wP=e=>(yg.assert.string(e),bP.get(kP(e)));const Wi=[{description:"angry face",emoji:"😠",emoticons:[">:(",">:[",">:-(",">:-[",">=(",">=[",">=-(",">=-["],name:"angry",tags:["mad","annoyed"]},{description:"smiling face with smiling eyes",emoji:"😊",emoticons:[':")',':"]',':"D',':-")',':-"]',':-"D','=")','="]','="D','=-")','=-"]','=-"D'],name:"blush",tags:["proud"]},{description:"broken heart",emoji:"💔",emoticons:["<\\3","</3"],name:"broken_heart",tags:[]},{description:"confused face",emoji:"😕",emoticons:[":/",":\\",":-/",":-\\","=/","=\\","=-/","=-\\"],name:"confused",tags:[]},{description:"crying face",emoji:"😢",emoticons:[":,(",":,[",":,|",":,-(",":,-[",":,-|",":'(",":'[",":'|",":'-(",":'-[",":'-|","=,(","=,[","=,|","=,-(","=,-[","=,-|","='(","='[","='|","='-(","='-[","='-|","T-T"],name:"cry",tags:["sad","tear"]},{description:"frowning face with open mouth",emoji:"😦",emoticons:[":(",":[",":-(",":-[","=(","=[","=-(","=-["],name:"frowning",tags:[]},{description:"red heart",emoji:"❤️",emoticons:["<3"],name:"heart",tags:["love"]},{description:"angry face with horns",emoji:"👿",emoticons:["]:(","]:[","]:-(","]:-[","]=(","]=[","]=-(","]=-["],name:"imp",tags:["angry","devil","evil","horns"]},{description:"smiling face with halo",emoji:"😇",emoticons:["o:)","o:]","o:D","o:-)","o:-]","o:-D","o=)","o=]","o=D","o=-)","o=-]","o=-D","O:)","O:]","O:D","O:-)","O:-]","O:-D","O=)","O=]","O=D","O=-)","O=-]","O=-D","0:)","0:]","0:D","0:-)","0:-]","0:-D","0=)","0=]","0=D","0=-)","0=-]","0=-D"],name:"innocent",tags:["angel"]},{description:"face with tears of joy",emoji:"😂",emoticons:[":,)",":,]",":,D",":,-)",":,-]",":,-D",":')",":']",":'D",":'-)",":'-]",":'-D","=,)","=,]","=,D","=,-)","=,-]","=,-D","=')","=']","='D","='-)","='-]","='-D"],name:"joy",tags:["tears"]},{description:"kissing face",emoji:"😗",emoticons:[":*",":-*","=*","=-*"],name:"kissing",tags:[]},{description:"grinning squinting face",emoji:"😆",emoticons:["x)","x]","xD","x-)","x-]","x-D","X)","X]","X-)","X-]","X-D"],name:"laughing",tags:["happy","haha"]},{description:"man",emoji:"👨",emoticons:[":3",":-3","=3","=-3",";3",";-3","x3","x-3","X3","X-3"],name:"man",tags:["mustache","father","dad"]},{description:"neutral face",emoji:"😐",emoticons:[":|",":-|","=|","=-|"],name:"neutral_face",tags:["meh"]},{description:"face without mouth",emoji:"😶",emoticons:[":-"],name:"no_mouth",tags:["mute","silence"]},{description:"face with open mouth",emoji:"😮",emoticons:[":o",":O",":0",":-o",":-O",":-0","=o","=O","=0","=-o","=-O","=-0"],name:"open_mouth",tags:["surprise","impressed","wow"]},{description:"enraged face",emoji:"😡",emoticons:[":@",":-@","=@","=-@"],name:"rage",tags:["angry"]},{description:"grinning face with smiling eyes",emoji:"😄",emoticons:[":D",":-D","=D","=-D"],name:"smile",tags:["happy","joy","laugh","pleased"]},{description:"grinning face with big eyes",emoji:"😃",emoticons:[":)",":]",":-)",":-]","=)","=]","=-)","=-]"],name:"smiley",tags:["happy","joy","haha"]},{description:"smiling face with horns",emoji:"😈",emoticons:["]:)","]:]","]:D","]:-)","]:-]","]:-D","]=)","]=]","]=D","]=-)","]=-]","]=-D"],name:"smiling_imp",tags:["devil","evil","horns"]},{description:"loudly crying face",emoji:"😭",emoticons:[":,'(",":,'[",":,'-(",":,'-[",":',(",":',[",":',-(",":',-[","=,'(","=,'[","=,'-(","=,'-[","=',(","=',[","=',-(","=',-["],name:"sob",tags:["sad","cry","bawling"]},{description:"face with tongue",emoji:"😛",emoticons:[":p",":P",":d",":-p",":-P",":-d","=p","=P","=d","=-p","=-P","=-d"],name:"stuck_out_tongue",tags:[]},{description:"squinting face with tongue",emoji:"😝",emoticons:["xP","x-p","x-P","x-d","Xp","Xd","X-p","X-P","X-d"],name:"stuck_out_tongue_closed_eyes",tags:["prank"]},{description:"winking face with tongue",emoji:"😜",emoticons:[";p",";P",";d",";-p",";-P",";-d"],name:"stuck_out_tongue_winking_eye",tags:["prank","silly"]},{description:"smiling face with sunglasses",emoji:"😎",emoticons:["8)","8]","8D","8-)","8-]","8-D","B)","B]","B-)","B-]","B-D"],name:"sunglasses",tags:["cool"]},{description:"downcast face with sweat",emoji:"😓",emoticons:[",:(",",:[",",:-(",",:-[",",=(",",=[",",=-(",",=-[","':(","':[","':-(","':-[","'=(","'=[","'=-(","'=-["],name:"sweat",tags:[]},{description:"grinning face with sweat",emoji:"😅",emoticons:[",:)",",:]",",:D",",:-)",",:-]",",:-D",",=)",",=]",",=D",",=-)",",=-]",",=-D","':)","':]","':D","':-)","':-]","':-D","'=)","'=]","'=D","'=-)","'=-]","'=-D"],name:"sweat_smile",tags:["hot"]},{description:"unamused face",emoji:"😒",emoticons:[":$",":s",":z",":S",":Z",":-$",":-s",":-z",":-S",":-Z","=$","=s","=z","=S","=Z","=-$","=-s","=-z","=-S","=-Z"],name:"unamused",tags:["meh"]},{description:"winking face",emoji:"😉",emoticons:[";)",";]",";D",";-)",";-]",";-D"],name:"wink",tags:["flirt"]}];function EP(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function rc(e,t,a){const n=Za((a||{}).ignore||[]),s=TP(t);let i=-1;for(;++i<s.length;)$s(e,"text",o);function o(l,p){let h=-1,f;for(;++h<p.length;){const m=p[h],g=f?f.children:void 0;if(n(m,g?g.indexOf(m):void 0,f))return;f=m}if(f)return u(l,p)}function u(l,p){const h=p[p.length-1],f=s[i][0],m=s[i][1];let g=0;const C=h.children.indexOf(l);let T=!1,I=[];f.lastIndex=0;let O=f.exec(l.value);for(;O;){const M=O.index,N={index:O.index,input:O.input,stack:[...p,l]};let d=m(...O,N);if(typeof d=="string"&&(d=d.length>0?{type:"text",value:d}:void 0),d===!1?f.lastIndex=M+1:(g!==M&&I.push({type:"text",value:l.value.slice(g,M)}),Array.isArray(d)?I.push(...d):d&&I.push(d),g=M+O[0].length,T=!0),!f.global)break;O=f.exec(l.value)}return T?(g<l.value.length&&I.push({type:"text",value:l.value.slice(g)}),h.children.splice(C,1,...I)):I=[l],C+I.length}}function TP(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const a=!e[0]||Array.isArray(e[0])?e:[e];let r=-1;for(;++r<a.length;){const n=a[r];t.push([AP(n[0]),CP(n[1])])}return t}function AP(e){return typeof e=="string"?new RegExp(EP(e),"g"):e}function CP(e){return typeof e=="function"?e:function(){return e}}const xP=/:\+1:|:-1:|:[\w-]+:/g,DP=/[$@|*'",;.=:\-)([\]\\/<>038BOopPsSdDxXzZ]{2,5}/g,zP=/(?:_|-(?!1))/g,SP={padSpaceAfter:!1,emoticon:!1,accessible:!1},IP=e=>{const t=Object.assign({},SP,e),a=!!t.padSpaceAfter,r=!!t.emoticon,n=!!t.accessible;function s(p,h){return{type:"text",value:p,data:{hName:"span",hProperties:{role:"img",ariaLabel:h},hChildren:[{type:"text",value:p}]}}}function i(p){const h=Wi.find(T=>T.emoticons.includes(p)),f=Wi.find(T=>T.emoticons.includes(p.slice(0,-1))),m=h||f;if(!m)return!1;const g=!h&&f?p.slice(-1):"",b=a?" ":"",C=m.emoji+b+g;return n?s(C,m.name+" emoticon"):C}function o(p){let h=wP(p);if(typeof h>"u")return!1;if(a&&(h=h+" "),n){const f=p.slice(1,-1).replace(zP," ")+" emoji";return s(h,f)}return h}const u=[[xP,o]];r&&u.push([DP,i]);function l(p){rc(p,u)}return l};function Vi(e,t){const a=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,n=a.indexOf(t);for(;n!==-1;)r++,n=a.indexOf(t,n+t.length);return r}const Er="phrasing",Tr=["autolink","link","image","label"];function NP(){return{transforms:[BP],enter:{literalAutolink:OP,literalAutolinkEmail:Ar,literalAutolinkHttp:Ar,literalAutolinkWww:Ar},exit:{literalAutolink:PP,literalAutolinkEmail:vP,literalAutolinkHttp:LP,literalAutolinkWww:RP}}}function FP(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Er,notInConstruct:Tr},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Er,notInConstruct:Tr},{character:":",before:"[ps]",after:"\\/",inConstruct:Er,notInConstruct:Tr}]}}function OP(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function Ar(e){this.config.enter.autolinkProtocol.call(this,e)}function LP(e){this.config.exit.autolinkProtocol.call(this,e)}function RP(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function vP(e){this.config.exit.autolinkEmail.call(this,e)}function PP(e){this.exit(e)}function BP(e){rc(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,MP],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),UP]],{ignore:["link","linkReference"]})}function MP(e,t,a,r,n){let s="";if(!nc(n)||(/^w/i.test(t)&&(a=t+a,t="",s="http://"),!HP(a)))return!1;const i=jP(a+r);if(!i[0])return!1;const o={type:"link",title:null,url:s+t+i[0],children:[{type:"text",value:t+i[0]}]};return i[1]?[o,{type:"text",value:i[1]}]:o}function UP(e,t,a,r){return!nc(r,!0)||/[-\d_]$/.test(a)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+a,children:[{type:"text",value:t+"@"+a}]}}function HP(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function jP(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let a=t[0],r=a.indexOf(")");const n=Vi(e,"(");let s=Vi(e,")");for(;r!==-1&&n>s;)e+=a.slice(0,r+1),a=a.slice(r+1),r=a.indexOf(")"),s++;return[e,a]}function nc(e,t){const a=e.input.charCodeAt(e.index-1);return(e.index===0||Et(a)||Qa(a))&&(!t||a!==47)}ic.peek=ZP;function qP(){return{enter:{gfmFootnoteDefinition:$P,gfmFootnoteDefinitionLabelString:WP,gfmFootnoteCall:QP,gfmFootnoteCallString:KP},exit:{gfmFootnoteDefinition:GP,gfmFootnoteDefinitionLabelString:VP,gfmFootnoteCall:JP,gfmFootnoteCallString:XP}}}function YP(){return{unsafe:[{character:"[",inConstruct:["phrasing","label","reference"]}],handlers:{footnoteDefinition:eB,footnoteReference:ic}}}function $P(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function WP(){this.buffer()}function VP(e){const t=this.resume(),a=this.stack[this.stack.length-1];a.type,a.label=t,a.identifier=Me(this.sliceSerialize(e)).toLowerCase()}function GP(e){this.exit(e)}function QP(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function KP(){this.buffer()}function XP(e){const t=this.resume(),a=this.stack[this.stack.length-1];a.type,a.label=t,a.identifier=Me(this.sliceSerialize(e)).toLowerCase()}function JP(e){this.exit(e)}function ic(e,t,a,r){const n=a.createTracker(r);let s=n.move("[^");const i=a.enter("footnoteReference"),o=a.enter("reference");return s+=n.move(a.safe(a.associationId(e),{...n.current(),before:s,after:"]"})),o(),i(),s+=n.move("]"),s}function ZP(){return"["}function eB(e,t,a,r){const n=a.createTracker(r);let s=n.move("[^");const i=a.enter("footnoteDefinition"),o=a.enter("label");return s+=n.move(a.safe(a.associationId(e),{...n.current(),before:s,after:"]"})),o(),s+=n.move("]:"+(e.children&&e.children.length>0?" ":"")),n.shift(4),s+=n.move(a.indentLines(a.containerFlow(e,n.current()),tB)),i(),s}function tB(e,t,a){return t===0?e:(a?"":" ")+e}const aB=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];sc.peek=oB;function rB(){return{canContainEols:["delete"],enter:{strikethrough:iB},exit:{strikethrough:sB}}}function nB(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:aB}],handlers:{delete:sc}}}function iB(e){this.enter({type:"delete",children:[]},e)}function sB(e){this.exit(e)}function sc(e,t,a,r){const n=a.createTracker(r),s=a.enter("strikethrough");let i=n.move("~~");return i+=a.containerPhrasing(e,{...n.current(),before:i,after:"~"}),i+=n.move("~~"),s(),i}function oB(){return"~"}function cB(e,t={}){const a=(t.align||[]).concat(),r=t.stringLength||lB,n=[],s=[],i=[],o=[];let u=0,l=-1;for(;++l<e.length;){const g=[],b=[];let C=-1;for(e[l].length>u&&(u=e[l].length);++C<e[l].length;){const T=uB(e[l][C]);if(t.alignDelimiters!==!1){const I=r(T);b[C]=I,(o[C]===void 0||I>o[C])&&(o[C]=I)}g.push(T)}s[l]=g,i[l]=b}let p=-1;if(typeof a=="object"&&"length"in a)for(;++p<u;)n[p]=Gi(a[p]);else{const g=Gi(a);for(;++p<u;)n[p]=g}p=-1;const h=[],f=[];for(;++p<u;){const g=n[p];let b="",C="";g===99?(b=":",C=":"):g===108?b=":":g===114&&(C=":");let T=t.alignDelimiters===!1?1:Math.max(1,o[p]-b.length-C.length);const I=b+"-".repeat(T)+C;t.alignDelimiters!==!1&&(T=b.length+T+C.length,T>o[p]&&(o[p]=T),f[p]=T),h[p]=I}s.splice(1,0,h),i.splice(1,0,f),l=-1;const m=[];for(;++l<s.length;){const g=s[l],b=i[l];p=-1;const C=[];for(;++p<u;){const T=g[p]||"";let I="",O="";if(t.alignDelimiters!==!1){const M=o[p]-(b[p]||0),N=n[p];N===114?I=" ".repeat(M):N===99?M%2?(I=" ".repeat(M/2+.5),O=" ".repeat(M/2-.5)):(I=" ".repeat(M/2),O=I):O=" ".repeat(M)}t.delimiterStart!==!1&&!p&&C.push("|"),t.padding!==!1&&!(t.alignDelimiters===!1&&T==="")&&(t.delimiterStart!==!1||p)&&C.push(" "),t.alignDelimiters!==!1&&C.push(I),C.push(T),t.alignDelimiters!==!1&&C.push(O),t.padding!==!1&&C.push(" "),(t.delimiterEnd!==!1||p!==u-1)&&C.push("|")}m.push(t.delimiterEnd===!1?C.join("").replace(/ +$/,""):C.join(""))}return m.join(` +`)}function uB(e){return e==null?"":String(e)}function lB(e){return e.length}function Gi(e){const t=typeof e=="string"?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function fB(){return{enter:{table:hB,tableData:Qi,tableHeader:Qi,tableRow:pB},exit:{codeText:mB,table:dB,tableData:Cr,tableHeader:Cr,tableRow:Cr}}}function hB(e){const t=e._align;this.enter({type:"table",align:t.map(function(a){return a==="none"?null:a}),children:[]},e),this.data.inTable=!0}function dB(e){this.exit(e),this.data.inTable=void 0}function pB(e){this.enter({type:"tableRow",children:[]},e)}function Cr(e){this.exit(e)}function Qi(e){this.enter({type:"tableCell",children:[]},e)}function mB(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,_B));const a=this.stack[this.stack.length-1];a.type,a.value=t,this.exit(e)}function _B(e,t){return t==="|"?t:e}function gB(e){const t=e||{},a=t.tableCellPadding,r=t.tablePipeAlign,n=t.stringLength,s=a?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:` +`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:f,table:i,tableCell:u,tableRow:o}};function i(m,g,b,C){return l(p(m,b,C),m.align)}function o(m,g,b,C){const T=h(m,b,C),I=l([T]);return I.slice(0,I.indexOf(` +`))}function u(m,g,b,C){const T=b.enter("tableCell"),I=b.enter("phrasing"),O=b.containerPhrasing(m,{...C,before:s,after:s});return I(),T(),O}function l(m,g){return cB(m,{align:g,alignDelimiters:r,padding:a,stringLength:n})}function p(m,g,b){const C=m.children;let T=-1;const I=[],O=g.enter("table");for(;++T<C.length;)I[T]=h(C[T],g,b);return O(),I}function h(m,g,b){const C=m.children;let T=-1;const I=[],O=g.enter("tableRow");for(;++T<C.length;)I[T]=u(C[T],m,g,b);return O(),I}function f(m,g,b){let C=gt.inlineCode(m,g,b);return b.stack.includes("tableCell")&&(C=C.replace(/\|/g,"\\$&")),C}}function yB(){return{exit:{taskListCheckValueChecked:Ki,taskListCheckValueUnchecked:Ki,paragraph:bB}}}function kB(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:wB}}}function Ki(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function bB(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const a=this.stack[this.stack.length-1];a.type;const r=a.children[0];if(r&&r.type==="text"){const n=t.children;let s=-1,i;for(;++s<n.length;){const o=n[s];if(o.type==="paragraph"){i=o;break}}i===a&&(r.value=r.value.slice(1),r.value.length===0?a.children.shift():a.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,a.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function wB(e,t,a,r){const n=e.children[0],s=typeof e.checked=="boolean"&&n&&n.type==="paragraph",i="["+(e.checked?"x":" ")+"] ",o=a.createTracker(r);s&&o.move(i);let u=gt.listItem(e,t,a,{...r,...o.current()});return s&&(u=u.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,l)),u;function l(p){return p+i}}function EB(){return[NP(),qP(),rB(),fB(),yB()]}function TB(e){return{extensions:[FP(),YP(),nB(),gB(e),kB()]}}const AB={tokenize:IB,partial:!0},oc={tokenize:NB,partial:!0},cc={tokenize:FB,partial:!0},uc={tokenize:OB,partial:!0},CB={tokenize:LB,partial:!0},lc={name:"wwwAutolink",tokenize:zB,previous:hc},fc={name:"protocolAutolink",tokenize:SB,previous:dc},at={name:"emailAutolink",tokenize:DB,previous:pc},We={};function xB(){return{text:We}}let _t=48;for(;_t<123;)We[_t]=at,_t++,_t===58?_t=65:_t===91&&(_t=97);We[43]=at;We[45]=at;We[46]=at;We[95]=at;We[72]=[at,fc];We[104]=[at,fc];We[87]=[at,lc];We[119]=[at,lc];function DB(e,t,a){const r=this;let n,s;return i;function i(h){return!Vr(h)||!pc.call(r,r.previous)||Tn(r.events)?a(h):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),o(h))}function o(h){return Vr(h)?(e.consume(h),o):h===64?(e.consume(h),u):a(h)}function u(h){return h===46?e.check(CB,p,l)(h):h===45||h===95||pe(h)?(s=!0,e.consume(h),u):p(h)}function l(h){return e.consume(h),n=!0,u}function p(h){return s&&n&&_e(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(h)):a(h)}}function zB(e,t,a){const r=this;return n;function n(i){return i!==87&&i!==119||!hc.call(r,r.previous)||Tn(r.events)?a(i):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(AB,e.attempt(oc,e.attempt(cc,s),a),a)(i))}function s(i){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(i)}}function SB(e,t,a){const r=this;let n="",s=!1;return i;function i(h){return(h===72||h===104)&&dc.call(r,r.previous)&&!Tn(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),n+=String.fromCodePoint(h),e.consume(h),o):a(h)}function o(h){if(_e(h)&&n.length<5)return n+=String.fromCodePoint(h),e.consume(h),o;if(h===58){const f=n.toLowerCase();if(f==="http"||f==="https")return e.consume(h),u}return a(h)}function u(h){return h===47?(e.consume(h),s?l:(s=!0,u)):a(h)}function l(h){return h===null||Fa(h)||ae(h)||Et(h)||Qa(h)?a(h):e.attempt(oc,e.attempt(cc,p),a)(h)}function p(h){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(h)}}function IB(e,t,a){let r=0;return n;function n(i){return(i===87||i===119)&&r<3?(r++,e.consume(i),n):i===46&&r===3?(e.consume(i),s):a(i)}function s(i){return i===null?a(i):t(i)}}function NB(e,t,a){let r,n,s;return i;function i(l){return l===46||l===95?e.check(uc,u,o)(l):l===null||ae(l)||Et(l)||l!==45&&Qa(l)?u(l):(s=!0,e.consume(l),i)}function o(l){return l===95?r=!0:(n=r,r=void 0),e.consume(l),i}function u(l){return n||r||!s?a(l):t(l)}}function FB(e,t){let a=0,r=0;return n;function n(i){return i===40?(a++,e.consume(i),n):i===41&&r<a?s(i):i===33||i===34||i===38||i===39||i===41||i===42||i===44||i===46||i===58||i===59||i===60||i===63||i===93||i===95||i===126?e.check(uc,t,s)(i):i===null||ae(i)||Et(i)?t(i):(e.consume(i),n)}function s(i){return i===41&&r++,e.consume(i),n}}function OB(e,t,a){return r;function r(o){return o===33||o===34||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===63||o===95||o===126?(e.consume(o),r):o===38?(e.consume(o),s):o===93?(e.consume(o),n):o===60||o===null||ae(o)||Et(o)?t(o):a(o)}function n(o){return o===null||o===40||o===91||ae(o)||Et(o)?t(o):r(o)}function s(o){return _e(o)?i(o):a(o)}function i(o){return o===59?(e.consume(o),r):_e(o)?(e.consume(o),i):a(o)}}function LB(e,t,a){return r;function r(s){return e.consume(s),n}function n(s){return pe(s)?a(s):t(s)}}function hc(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||ae(e)}function dc(e){return!_e(e)}function pc(e){return!(e===47||Vr(e))}function Vr(e){return e===43||e===45||e===46||e===95||pe(e)}function Tn(e){let t=e.length,a=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){a=!0;break}if(r._gfmAutolinkLiteralWalkedInto){a=!1;break}}return e.length>0&&!a&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),a}const RB={tokenize:qB,partial:!0};function vB(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:UB,continuation:{tokenize:HB},exit:jB}},text:{91:{name:"gfmFootnoteCall",tokenize:MB},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:PB,resolveTo:BB}}}}function PB(e,t,a){const r=this;let n=r.events.length;const s=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let i;for(;n--;){const u=r.events[n][1];if(u.type==="labelImage"){i=u;break}if(u.type==="gfmFootnoteCall"||u.type==="labelLink"||u.type==="label"||u.type==="image"||u.type==="link")break}return o;function o(u){if(!i||!i._balanced)return a(u);const l=Me(r.sliceSerialize({start:i.end,end:r.now()}));return l.codePointAt(0)!==94||!s.includes(l.slice(1))?a(u):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(u),e.exit("gfmFootnoteCallLabelMarker"),t(u))}}function BB(e,t){let a=e.length;for(;a--;)if(e[a][1].type==="labelImage"&&e[a][0]==="enter"){e[a][1];break}e[a+1][1].type="data",e[a+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[a+3][1].start),end:Object.assign({},e[e.length-1][1].end)},n={type:"gfmFootnoteCallMarker",start:Object.assign({},e[a+3][1].end),end:Object.assign({},e[a+3][1].end)};n.end.column++,n.end.offset++,n.end._bufferIndex++;const s={type:"gfmFootnoteCallString",start:Object.assign({},n.end),end:Object.assign({},e[e.length-1][1].start)},i={type:"chunkString",contentType:"string",start:Object.assign({},s.start),end:Object.assign({},s.end)},o=[e[a+1],e[a+2],["enter",r,t],e[a+3],e[a+4],["enter",n,t],["exit",n,t],["enter",s,t],["enter",i,t],["exit",i,t],["exit",s,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(a,e.length-a+1,...o),e}function MB(e,t,a){const r=this,n=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s=0,i;return o;function o(h){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),u}function u(h){return h!==94?a(h):(e.enter("gfmFootnoteCallMarker"),e.consume(h),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",l)}function l(h){if(s>999||h===93&&!i||h===null||h===91||ae(h))return a(h);if(h===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return n.includes(Me(r.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(h),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):a(h)}return ae(h)||(i=!0),s++,e.consume(h),h===92?p:l}function p(h){return h===91||h===92||h===93?(e.consume(h),s++,l):l(h)}}function UB(e,t,a){const r=this,n=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s,i=0,o;return u;function u(g){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),l}function l(g){return g===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",p):a(g)}function p(g){if(i>999||g===93&&!o||g===null||g===91||ae(g))return a(g);if(g===93){e.exit("chunkString");const b=e.exit("gfmFootnoteDefinitionLabelString");return s=Me(r.sliceSerialize(b)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return ae(g)||(o=!0),i++,e.consume(g),g===92?h:p}function h(g){return g===91||g===92||g===93?(e.consume(g),i++,p):p(g)}function f(g){return g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),n.includes(s)||n.push(s),G(e,m,"gfmFootnoteDefinitionWhitespace")):a(g)}function m(g){return t(g)}}function HB(e,t,a){return e.check(ma,t,e.attempt(RB,t,a))}function jB(e){e.exit("gfmFootnoteDefinition")}function qB(e,t,a){const r=this;return G(e,n,"gfmFootnoteDefinitionIndent",5);function n(s){const i=r.events[r.events.length-1];return i&&i[1].type==="gfmFootnoteDefinitionIndent"&&i[2].sliceSerialize(i[1],!0).length===4?t(s):a(s)}}function YB(e){let a=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:s,resolveAll:n};return a==null&&(a=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function n(i,o){let u=-1;for(;++u<i.length;)if(i[u][0]==="enter"&&i[u][1].type==="strikethroughSequenceTemporary"&&i[u][1]._close){let l=u;for(;l--;)if(i[l][0]==="exit"&&i[l][1].type==="strikethroughSequenceTemporary"&&i[l][1]._open&&i[u][1].end.offset-i[u][1].start.offset===i[l][1].end.offset-i[l][1].start.offset){i[u][1].type="strikethroughSequence",i[l][1].type="strikethroughSequence";const p={type:"strikethrough",start:Object.assign({},i[l][1].start),end:Object.assign({},i[u][1].end)},h={type:"strikethroughText",start:Object.assign({},i[l][1].end),end:Object.assign({},i[u][1].start)},f=[["enter",p,o],["enter",i[l][1],o],["exit",i[l][1],o],["enter",h,o]],m=o.parser.constructs.insideSpan.null;m&&Le(f,f.length,0,Ka(m,i.slice(l+1,u),o)),Le(f,f.length,0,[["exit",h,o],["enter",i[u][1],o],["exit",i[u][1],o],["exit",p,o]]),Le(i,l-1,u-l+3,f),u=l+f.length-2;break}}for(u=-1;++u<i.length;)i[u][1].type==="strikethroughSequenceTemporary"&&(i[u][1].type="data");return i}function s(i,o,u){const l=this.previous,p=this.events;let h=0;return f;function f(g){return l===126&&p[p.length-1][1].type!=="characterEscape"?u(g):(i.enter("strikethroughSequenceTemporary"),m(g))}function m(g){const b=Oa(l);if(g===126)return h>1?u(g):(i.consume(g),h++,m);if(h<2&&!a)return u(g);const C=i.exit("strikethroughSequenceTemporary"),T=Oa(g);return C._open=!T||T===2&&!!b,C._close=!b||b===2&&!!T,o(g)}}}class $B{constructor(){this.map=[]}add(t,a,r){WB(this,t,a,r)}consume(t){if(this.map.sort(function(s,i){return s[0]-i[0]}),this.map.length===0)return;let a=this.map.length;const r=[];for(;a>0;)a-=1,r.push(t.slice(this.map[a][0]+this.map[a][1]),this.map[a][2]),t.length=this.map[a][0];r.push([...t]),t.length=0;let n=r.pop();for(;n;)t.push(...n),n=r.pop();this.map.length=0}}function WB(e,t,a,r){let n=0;if(!(a===0&&r.length===0)){for(;n<e.map.length;){if(e.map[n][0]===t){e.map[n][1]+=a,e.map[n][2].push(...r);return}n+=1}e.map.push([t,a,r])}}function VB(e,t){let a=!1;const r=[];for(;t<e.length;){const n=e[t];if(a){if(n[0]==="enter")n[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(n[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const s=r.length-1;r[s]=r[s]==="left"?"center":"right"}}else if(n[1].type==="tableDelimiterRow")break}else n[0]==="enter"&&n[1].type==="tableDelimiterRow"&&(a=!0);t+=1}return r}function GB(){return{flow:{null:{name:"table",tokenize:QB,resolveAll:KB}}}}function QB(e,t,a){const r=this;let n=0,s=0,i;return o;function o(x){let S=r.events.length-1;for(;S>-1;){const te=r.events[S][1].type;if(te==="lineEnding"||te==="linePrefix")S--;else break}const B=S>-1?r.events[S][1].type:null,Q=B==="tableHead"||B==="tableRow"?d:u;return Q===d&&r.parser.lazy[r.now().line]?a(x):Q(x)}function u(x){return e.enter("tableHead"),e.enter("tableRow"),l(x)}function l(x){return x===124||(i=!0,s+=1),p(x)}function p(x){return x===null?a(x):W(x)?s>1?(s=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),m):a(x):K(x)?G(e,p,"whitespace")(x):(s+=1,i&&(i=!1,n+=1),x===124?(e.enter("tableCellDivider"),e.consume(x),e.exit("tableCellDivider"),i=!0,p):(e.enter("data"),h(x)))}function h(x){return x===null||x===124||ae(x)?(e.exit("data"),p(x)):(e.consume(x),x===92?f:h)}function f(x){return x===92||x===124?(e.consume(x),h):h(x)}function m(x){return r.interrupt=!1,r.parser.lazy[r.now().line]?a(x):(e.enter("tableDelimiterRow"),i=!1,K(x)?G(e,g,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(x):g(x))}function g(x){return x===45||x===58?C(x):x===124?(i=!0,e.enter("tableCellDivider"),e.consume(x),e.exit("tableCellDivider"),b):N(x)}function b(x){return K(x)?G(e,C,"whitespace")(x):C(x)}function C(x){return x===58?(s+=1,i=!0,e.enter("tableDelimiterMarker"),e.consume(x),e.exit("tableDelimiterMarker"),T):x===45?(s+=1,T(x)):x===null||W(x)?M(x):N(x)}function T(x){return x===45?(e.enter("tableDelimiterFiller"),I(x)):N(x)}function I(x){return x===45?(e.consume(x),I):x===58?(i=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(x),e.exit("tableDelimiterMarker"),O):(e.exit("tableDelimiterFiller"),O(x))}function O(x){return K(x)?G(e,M,"whitespace")(x):M(x)}function M(x){return x===124?g(x):x===null||W(x)?!i||n!==s?N(x):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(x)):N(x)}function N(x){return a(x)}function d(x){return e.enter("tableRow"),D(x)}function D(x){return x===124?(e.enter("tableCellDivider"),e.consume(x),e.exit("tableCellDivider"),D):x===null||W(x)?(e.exit("tableRow"),t(x)):K(x)?G(e,D,"whitespace")(x):(e.enter("data"),j(x))}function j(x){return x===null||x===124||ae(x)?(e.exit("data"),D(x)):(e.consume(x),x===92?Y:j)}function Y(x){return x===92||x===124?(e.consume(x),j):j(x)}}function KB(e,t){let a=-1,r=!0,n=0,s=[0,0,0,0],i=[0,0,0,0],o=!1,u=0,l,p,h;const f=new $B;for(;++a<e.length;){const m=e[a],g=m[1];m[0]==="enter"?g.type==="tableHead"?(o=!1,u!==0&&(Xi(f,t,u,l,p),p=void 0,u=0),l={type:"table",start:Object.assign({},g.start),end:Object.assign({},g.end)},f.add(a,0,[["enter",l,t]])):g.type==="tableRow"||g.type==="tableDelimiterRow"?(r=!0,h=void 0,s=[0,0,0,0],i=[0,a+1,0,0],o&&(o=!1,p={type:"tableBody",start:Object.assign({},g.start),end:Object.assign({},g.end)},f.add(a,0,[["enter",p,t]])),n=g.type==="tableDelimiterRow"?2:p?3:1):n&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")?(r=!1,i[2]===0&&(s[1]!==0&&(i[0]=i[1],h=Ca(f,t,s,n,void 0,h),s=[0,0,0,0]),i[2]=a)):g.type==="tableCellDivider"&&(r?r=!1:(s[1]!==0&&(i[0]=i[1],h=Ca(f,t,s,n,void 0,h)),s=i,i=[s[1],a,0,0])):g.type==="tableHead"?(o=!0,u=a):g.type==="tableRow"||g.type==="tableDelimiterRow"?(u=a,s[1]!==0?(i[0]=i[1],h=Ca(f,t,s,n,a,h)):i[1]!==0&&(h=Ca(f,t,i,n,a,h)),n=0):n&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")&&(i[3]=a)}for(u!==0&&Xi(f,t,u,l,p),f.consume(t.events),a=-1;++a<t.events.length;){const m=t.events[a];m[0]==="enter"&&m[1].type==="table"&&(m[1]._align=VB(t.events,a))}return e}function Ca(e,t,a,r,n,s){const i=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",o="tableContent";a[0]!==0&&(s.end=Object.assign({},Nt(t.events,a[0])),e.add(a[0],0,[["exit",s,t]]));const u=Nt(t.events,a[1]);if(s={type:i,start:Object.assign({},u),end:Object.assign({},u)},e.add(a[1],0,[["enter",s,t]]),a[2]!==0){const l=Nt(t.events,a[2]),p=Nt(t.events,a[3]),h={type:o,start:Object.assign({},l),end:Object.assign({},p)};if(e.add(a[2],0,[["enter",h,t]]),r!==2){const f=t.events[a[2]],m=t.events[a[3]];if(f[1].end=Object.assign({},m[1].end),f[1].type="chunkText",f[1].contentType="text",a[3]>a[2]+1){const g=a[2]+1,b=a[3]-a[2]-1;e.add(g,b,[])}}e.add(a[3]+1,0,[["exit",h,t]])}return n!==void 0&&(s.end=Object.assign({},Nt(t.events,n)),e.add(n,0,[["exit",s,t]]),s=void 0),s}function Xi(e,t,a,r,n){const s=[],i=Nt(t.events,a);n&&(n.end=Object.assign({},i),s.push(["exit",n,t])),r.end=Object.assign({},i),s.push(["exit",r,t]),e.add(a+1,0,s)}function Nt(e,t){const a=e[t],r=a[0]==="enter"?"start":"end";return a[1][r]}const XB={name:"tasklistCheck",tokenize:ZB};function JB(){return{text:{91:XB}}}function ZB(e,t,a){const r=this;return n;function n(u){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?a(u):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(u),e.exit("taskListCheckMarker"),s)}function s(u){return ae(u)?(e.enter("taskListCheckValueUnchecked"),e.consume(u),e.exit("taskListCheckValueUnchecked"),i):u===88||u===120?(e.enter("taskListCheckValueChecked"),e.consume(u),e.exit("taskListCheckValueChecked"),i):a(u)}function i(u){return u===93?(e.enter("taskListCheckMarker"),e.consume(u),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),o):a(u)}function o(u){return W(u)?t(u):K(u)?e.check({tokenize:e7},t,a)(u):a(u)}}function e7(e,t,a){return G(e,r,"whitespace");function r(n){return n===null?a(n):t(n)}}function t7(e){return Cs([xB(),vB(),YB(e),GB(),JB()])}const a7={};function r7(e){const t=this,a=e||a7,r=t.data(),n=r.micromarkExtensions||(r.micromarkExtensions=[]),s=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),i=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);n.push(t7(a)),s.push(EB()),i.push(TB(a))}const n7=function(e,t,a,r,n){const s=An(t);return mc(e)?s.call(n,e,a,r):!1},An=function(e){if(e==null)return o7;if(typeof e=="string")return s7(e);if(typeof e=="object")return i7(e);if(typeof e=="function")return Cn(e);throw new Error("Expected function, string, or array as `test`")};function i7(e){const t=[];let a=-1;for(;++a<e.length;)t[a]=An(e[a]);return Cn(r);function r(...n){let s=-1;for(;++s<t.length;)if(t[s].apply(this,n))return!0;return!1}}function s7(e){return Cn(t);function t(a){return a.tagName===e}}function Cn(e){return t;function t(a,r,n){return!!(mc(a)&&e.call(this,a,typeof r=="number"?r:void 0,n||void 0))}}function o7(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="element"&&"tagName"in e&&typeof e.tagName=="string")}function mc(e){return e!==null&&typeof e=="object"&&"type"in e&&"tagName"in e}const c7=/^[a-zA-Z][a-zA-Z\d+\-.]*?:/,u7=/^[a-zA-Z]:\\/;function l7(e){if(typeof e!="string")throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);return u7.test(e)?!1:c7.test(e)}function Gr(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function f7(e){return e.join(" ").trim()}const h7=["http","https"],d7=["nofollow"],p7={};function m7(e){const t=e||p7,a=t.protocols||h7,r=An(t.test);return function(n){Ze(n,"element",function(s,i,o){if(s.tagName==="a"&&typeof s.properties.href=="string"&&r(s,i,o)){const u=s.properties.href;if(l7(u)?a.includes(u.slice(0,u.indexOf(":"))):u.startsWith("//")){const l=Gt(t.content,s),p=l&&!Array.isArray(l)?[l]:l,h=Gt(t.rel,s)||d7,f=typeof h=="string"?Gr(h):h,m=Gt(t.target,s),g=Gt(t.properties,s);if(g&&Object.assign(s.properties,Je(g)),f.length>0&&(s.properties.rel=[...f]),m&&(s.properties.target=m),p){const b=Gt(t.contentProperties,s)||{};s.children.push({type:"element",tagName:"span",properties:Je(b),children:Je(p)})}}}})}}function Gt(e,t){return typeof e=="function"?e(t):e}const Ji={accept:"input",className:null,dropzone:null,htmlFor:"output",headers:["td","th"],itemProp:null,itemRef:null,itemType:null,ping:["a","area"],rel:["a","area","link"],sandbox:"iframe",sizes:"link"};function _7(){return function(e){const t=new Map,a=[];Ze(e,"element",function(s){let i;for(i in s.properties)if(Object.hasOwn(s.properties,i)){const o=s.properties[i];Object.hasOwn(Ji,i)&&n7(s,Ji[i])&&Array.isArray(o)&&r(i,o)}}),n();function r(s,i){let o=-1,u=t.get(s);for(u||(u=new Map,t.set(s,u));++o<i.length;){const l=i[o];u.set(l,(u.get(l)||0)+1)}a.push([s,i])}function n(){const s=new Map;for(const[o,u]of t)s.set(o,[...u.entries()].sort(function(l,p){return p[1]-l[1]||_c(String(l[0]),String(p[0]),0)}).map(function(l){return l[0]}));let i=-1;for(;++i<a.length;){const o=a[i],u=s.get(o[0]);u&&o[1].sort(function(l,p){return u.indexOf(l)-u.indexOf(p)})}}}}function _c(e,t,a){return(e.charCodeAt(a)||0)-(t.charCodeAt(a)||0)||_c(e,t,a+1)}function g7(){return function(e){const t=new Map;Ze(e,"element",function(n){let s=t.get(n.tagName);s||(s=new Map,t.set(n.tagName,s));let i;for(i in n.properties)Object.hasOwn(n.properties,i)&&s.set(i,(s.get(i)||0)+1)});const a=r();Ze(e,"element",function(n){const s=a.get(n.tagName);if(s){const i=[],o={};let u=-1,l;for(l in n.properties)Object.hasOwn(n.properties,l)&&i.push(l);for(i.sort(function(p,h){return s.indexOf(p)-s.indexOf(h)});++u<i.length;)o[i[u]]=n.properties[i[u]];n.properties=o}});function r(){const n=new Map;for(const[s,i]of t.entries())n.set(s,[...i.entries()].sort(function(o,u){return u[1]-o[1]||gc(String(o[0]),String(u[0]),0)}).map(function(o){return o[0]}));return n}}}function gc(e,t,a){return(e.charCodeAt(a)||0)-(t.charCodeAt(a)||0)||gc(e,t,a+1)}function Zi(e){const t=[],a=String(e||"");let r=a.indexOf(","),n=0,s=!1;for(;!s;){r===-1&&(r=a.length,s=!0);const i=a.slice(n,r).trim();(i||!s)&&t.push(i),n=r+1,r=a.indexOf(",",n)}return t}function y7(e,t){const a=t||{};return(e[e.length-1]===""?[...e,""]:e).join((a.padRight?" ":"")+","+(a.padLeft===!1?"":" ")).trim()}const es=/[#.]/g;function k7(e,t){const a=e||"",r={};let n=0,s,i;for(;n<a.length;){es.lastIndex=n;const o=es.exec(a),u=a.slice(n,o?o.index:a.length);u&&(s?s==="#"?r.id=u:Array.isArray(r.className)?r.className.push(u):r.className=[u]:i=u,n+=u.length),o&&(s=o[0],n++)}return{type:"element",tagName:i||t||"div",properties:r,children:[]}}const b7=new Set(["button","menu","reset","submit"]),Qr={}.hasOwnProperty;function yc(e,t,a){const r=a&&A7(a);function n(s,i,...o){let u=-1,l;if(s==null){l={type:"root",children:[]};const p=i;o.unshift(p)}else if(l=k7(s,t),l.tagName=l.tagName.toLowerCase(),r&&Qr.call(r,l.tagName)&&(l.tagName=r[l.tagName]),w7(i,l.tagName)){let p;for(p in i)Qr.call(i,p)&&E7(e,l.properties,p,i[p])}else o.unshift(i);for(;++u<o.length;)Kr(l.children,o[u]);return l.type==="element"&&l.tagName==="template"&&(l.content={type:"root",children:l.children},l.children=[]),l}return n}function w7(e,t){return e==null||typeof e!="object"||Array.isArray(e)?!1:t==="input"||!e.type||typeof e.type!="string"?!0:"children"in e&&Array.isArray(e.children)?!1:t==="button"?b7.has(e.type.toLowerCase()):!("value"in e)}function E7(e,t,a,r){const n=an(e,a);let s=-1,i;if(r!=null){if(typeof r=="number"){if(Number.isNaN(r))return;i=r}else typeof r=="boolean"?i=r:typeof r=="string"?n.spaceSeparated?i=Gr(r):n.commaSeparated?i=Zi(r):n.commaOrSpaceSeparated?i=Gr(Zi(r).join(" ")):i=ts(n,n.property,r):Array.isArray(r)?i=r.concat():i=n.property==="style"?T7(r):String(r);if(Array.isArray(i)){const o=[];for(;++s<i.length;){const u=ts(n,n.property,i[s]);o[s]=u}i=o}if(n.property==="className"&&Array.isArray(t.className)){const o=i;i=t.className.concat(o)}t[n.property]=i}}function Kr(e,t){let a=-1;if(t!=null)if(typeof t=="string"||typeof t=="number")e.push({type:"text",value:String(t)});else if(Array.isArray(t))for(;++a<t.length;)Kr(e,t[a]);else if(typeof t=="object"&&"type"in t)t.type==="root"?Kr(e,t.children):e.push(t);else throw new Error("Expected node, nodes, or string, got `"+t+"`")}function ts(e,t,a){if(typeof a=="string"){if(e.number&&a&&!Number.isNaN(Number(a)))return Number(a);if((e.boolean||e.overloadedBoolean)&&(a===""||Mn(a)===Mn(t)))return!0}return a}function T7(e){const t=[];let a;for(a in e)Qr.call(e,a)&&t.push([a,e[a]].join(": "));return t.join("; ")}function A7(e){const t={};let a=-1;for(;++a<e.length;)t[e[a].toLowerCase()]=e[a];return t}const C7=["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","solidColor","textArea","textPath"],x7=yc(Ga,"div"),D7=yc(da,"g",C7);function z7(e){const t=String(e),a=[];return{toOffset:n,toPoint:r};function r(s){if(typeof s=="number"&&s>-1&&s<=t.length){let i=0;for(;;){let o=a[i];if(o===void 0){const u=as(t,a[i-1]);o=u===-1?t.length+1:u+1,a[i]=o}if(o>s)return{line:i+1,column:s-(i>0?a[i-1]:0)+1,offset:s};i++}}}function n(s){if(s&&typeof s.line=="number"&&typeof s.column=="number"&&!Number.isNaN(s.line)&&!Number.isNaN(s.column)){for(;a.length<s.line;){const o=a[a.length-1],u=as(t,o),l=u===-1?t.length+1:u+1;if(o===l)break;a.push(l)}const i=(s.line>1?a[s.line-2]:0)+s.column-1;if(i<a[s.line-1])return i}}}function as(e,t){const a=e.indexOf("\r",t),r=e.indexOf(` +`,t);return r===-1?a:a===-1||a+1===r?r:a<r?a:r}const yt={html:"http://www.w3.org/1999/xhtml",mathml:"http://www.w3.org/1998/Math/MathML",svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},kc={}.hasOwnProperty,S7=Object.prototype;function I7(e,t){const a=t||{};return xn({file:a.file||void 0,location:!1,schema:a.space==="svg"?da:Ga,verbose:a.verbose||!1},e)}function xn(e,t){let a;switch(t.nodeName){case"#comment":{const r=t;return a={type:"comment",value:r.data},Ia(e,r,a),a}case"#document":case"#document-fragment":{const r=t,n="mode"in r?r.mode==="quirks"||r.mode==="limited-quirks":!1;if(a={type:"root",children:bc(e,t.childNodes),data:{quirksMode:n}},e.file&&e.location){const s=String(e.file),i=z7(s),o=i.toPoint(0),u=i.toPoint(s.length);a.position={start:o,end:u}}return a}case"#documentType":{const r=t;return a={type:"doctype"},Ia(e,r,a),a}case"#text":{const r=t;return a={type:"text",value:r.value},Ia(e,r,a),a}default:return a=N7(e,t),a}}function bc(e,t){let a=-1;const r=[];for(;++a<t.length;){const n=xn(e,t[a]);r.push(n)}return r}function N7(e,t){const a=e.schema;e.schema=t.namespaceURI===yt.svg?da:Ga;let r=-1;const n={};for(;++r<t.attrs.length;){const o=t.attrs[r],u=(o.prefix?o.prefix+":":"")+o.name;kc.call(S7,u)||(n[u]=o.value)}const i=(e.schema.space==="svg"?D7:x7)(t.tagName,n,bc(e,t.childNodes));if(Ia(e,t,i),i.tagName==="template"){const o=t,u=o.sourceCodeLocation,l=u&&u.startTag&&vt(u.startTag),p=u&&u.endTag&&vt(u.endTag),h=xn(e,o.content);l&&p&&e.file&&(h.position={start:l.end,end:p.start}),i.content=h}return e.schema=a,i}function Ia(e,t,a){if("sourceCodeLocation"in t&&t.sourceCodeLocation&&e.file){const r=F7(e,a,t.sourceCodeLocation);r&&(e.location=!0,a.position=r)}}function F7(e,t,a){const r=vt(a);if(t.type==="element"){const n=t.children[t.children.length-1];if(r&&!a.endTag&&n&&n.position&&n.position.end&&(r.end=Object.assign({},n.position.end)),e.verbose){const s={};let i;if(a.attrs)for(i in a.attrs)kc.call(a.attrs,i)&&(s[an(e.schema,i).property]=vt(a.attrs[i]));a.startTag;const o=vt(a.startTag),u=a.endTag?vt(a.endTag):void 0,l={opening:o};u&&(l.closing=u),l.properties=s,t.data={position:l}}}return r}function vt(e){const t=rs({line:e.startLine,column:e.startCol,offset:e.startOffset}),a=rs({line:e.endLine,column:e.endCol,offset:e.endOffset});return t||a?{start:t,end:a}:void 0}function rs(e){return e.line&&e.column?e:void 0}const O7={},L7={}.hasOwnProperty,wc=Mo("type",{handlers:{root:v7,element:H7,text:M7,comment:U7,doctype:B7}});function R7(e,t){const r=(t||O7).space;return wc(e,r==="svg"?da:Ga)}function v7(e,t){const a={nodeName:"#document",mode:(e.data||{}).quirksMode?"quirks":"no-quirks",childNodes:[]};return a.childNodes=Dn(e.children,a,t),Ut(e,a),a}function P7(e,t){const a={nodeName:"#document-fragment",childNodes:[]};return a.childNodes=Dn(e.children,a,t),Ut(e,a),a}function B7(e){const t={nodeName:"#documentType",name:"html",publicId:"",systemId:"",parentNode:null};return Ut(e,t),t}function M7(e){const t={nodeName:"#text",value:e.value,parentNode:null};return Ut(e,t),t}function U7(e){const t={nodeName:"#comment",data:e.value,parentNode:null};return Ut(e,t),t}function H7(e,t){const a=t;let r=a;e.type==="element"&&e.tagName.toLowerCase()==="svg"&&a.space==="html"&&(r=da);const n=[];let s;if(e.properties){for(s in e.properties)if(s!=="children"&&L7.call(e.properties,s)){const u=j7(r,s,e.properties[s]);u&&n.push(u)}}const i=r.space,o={nodeName:e.tagName,tagName:e.tagName,attrs:n,namespaceURI:yt[i],childNodes:[],parentNode:null};return o.childNodes=Dn(e.children,o,r),Ut(e,o),e.tagName==="template"&&e.content&&(o.content=P7(e.content,r)),o}function j7(e,t,a){const r=an(e,t);if(a===!1||a===null||a===void 0||typeof a=="number"&&Number.isNaN(a)||!a&&r.boolean)return;Array.isArray(a)&&(a=r.commaSeparated?y7(a):f7(a));const n={name:r.attribute,value:a===!0?"":String(a)};if(r.space&&r.space!=="html"&&r.space!=="svg"){const s=n.name.indexOf(":");s<0?n.prefix="":(n.name=n.name.slice(s+1),n.prefix=r.attribute.slice(0,s)),n.namespace=yt[r.space]}return n}function Dn(e,t,a){let r=-1;const n=[];if(e)for(;++r<e.length;){const s=wc(e[r],a);s.parentNode=t,n.push(s)}return n}function Ut(e,t){const a=e.position;a&&a.start&&a.end&&(a.start.offset,a.end.offset,t.sourceCodeLocation={startLine:a.start.line,startCol:a.start.column,startOffset:a.start.offset,endLine:a.end.line,endCol:a.end.column,endOffset:a.end.offset})}const q7=["area","base","basefont","bgsound","br","col","command","embed","frame","hr","image","img","input","keygen","link","meta","param","source","track","wbr"],Y7=new Set([65534,65535,131070,131071,196606,196607,262142,262143,327678,327679,393214,393215,458750,458751,524286,524287,589822,589823,655358,655359,720894,720895,786430,786431,851966,851967,917502,917503,983038,983039,1048574,1048575,1114110,1114111]),ue="�";var _;(function(e){e[e.EOF=-1]="EOF",e[e.NULL=0]="NULL",e[e.TABULATION=9]="TABULATION",e[e.CARRIAGE_RETURN=13]="CARRIAGE_RETURN",e[e.LINE_FEED=10]="LINE_FEED",e[e.FORM_FEED=12]="FORM_FEED",e[e.SPACE=32]="SPACE",e[e.EXCLAMATION_MARK=33]="EXCLAMATION_MARK",e[e.QUOTATION_MARK=34]="QUOTATION_MARK",e[e.AMPERSAND=38]="AMPERSAND",e[e.APOSTROPHE=39]="APOSTROPHE",e[e.HYPHEN_MINUS=45]="HYPHEN_MINUS",e[e.SOLIDUS=47]="SOLIDUS",e[e.DIGIT_0=48]="DIGIT_0",e[e.DIGIT_9=57]="DIGIT_9",e[e.SEMICOLON=59]="SEMICOLON",e[e.LESS_THAN_SIGN=60]="LESS_THAN_SIGN",e[e.EQUALS_SIGN=61]="EQUALS_SIGN",e[e.GREATER_THAN_SIGN=62]="GREATER_THAN_SIGN",e[e.QUESTION_MARK=63]="QUESTION_MARK",e[e.LATIN_CAPITAL_A=65]="LATIN_CAPITAL_A",e[e.LATIN_CAPITAL_Z=90]="LATIN_CAPITAL_Z",e[e.RIGHT_SQUARE_BRACKET=93]="RIGHT_SQUARE_BRACKET",e[e.GRAVE_ACCENT=96]="GRAVE_ACCENT",e[e.LATIN_SMALL_A=97]="LATIN_SMALL_A",e[e.LATIN_SMALL_Z=122]="LATIN_SMALL_Z"})(_||(_={}));const Ae={DASH_DASH:"--",CDATA_START:"[CDATA[",DOCTYPE:"doctype",SCRIPT:"script",PUBLIC:"public",SYSTEM:"system"};function Ec(e){return e>=55296&&e<=57343}function $7(e){return e>=56320&&e<=57343}function W7(e,t){return(e-55296)*1024+9216+t}function Tc(e){return e!==32&&e!==10&&e!==13&&e!==9&&e!==12&&e>=1&&e<=31||e>=127&&e<=159}function Ac(e){return e>=64976&&e<=65007||Y7.has(e)}var F;(function(e){e.controlCharacterInInputStream="control-character-in-input-stream",e.noncharacterInInputStream="noncharacter-in-input-stream",e.surrogateInInputStream="surrogate-in-input-stream",e.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",e.endTagWithAttributes="end-tag-with-attributes",e.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",e.unexpectedSolidusInTag="unexpected-solidus-in-tag",e.unexpectedNullCharacter="unexpected-null-character",e.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",e.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",e.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",e.missingEndTagName="missing-end-tag-name",e.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",e.unknownNamedCharacterReference="unknown-named-character-reference",e.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",e.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",e.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",e.eofBeforeTagName="eof-before-tag-name",e.eofInTag="eof-in-tag",e.missingAttributeValue="missing-attribute-value",e.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",e.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",e.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",e.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",e.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",e.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",e.missingDoctypePublicIdentifier="missing-doctype-public-identifier",e.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",e.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",e.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",e.cdataInHtmlContent="cdata-in-html-content",e.incorrectlyOpenedComment="incorrectly-opened-comment",e.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",e.eofInDoctype="eof-in-doctype",e.nestedComment="nested-comment",e.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",e.eofInComment="eof-in-comment",e.incorrectlyClosedComment="incorrectly-closed-comment",e.eofInCdata="eof-in-cdata",e.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",e.nullCharacterReference="null-character-reference",e.surrogateCharacterReference="surrogate-character-reference",e.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",e.controlCharacterReference="control-character-reference",e.noncharacterCharacterReference="noncharacter-character-reference",e.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",e.missingDoctypeName="missing-doctype-name",e.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",e.duplicateAttribute="duplicate-attribute",e.nonConformingDoctype="non-conforming-doctype",e.missingDoctype="missing-doctype",e.misplacedDoctype="misplaced-doctype",e.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",e.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",e.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",e.openElementsLeftAfterEof="open-elements-left-after-eof",e.abandonedHeadElementChild="abandoned-head-element-child",e.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",e.nestedNoscriptInHead="nested-noscript-in-head",e.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"})(F||(F={}));const V7=65536;class G7{constructor(t){this.handler=t,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=V7,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+ +(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(t,a){const{line:r,col:n,offset:s}=this,i=n+a,o=s+a;return{code:t,startLine:r,endLine:r,startCol:i,endCol:i,startOffset:o,endOffset:o}}_err(t){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(t,0)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(t){if(this.pos!==this.html.length-1){const a=this.html.charCodeAt(this.pos+1);if($7(a))return this.pos++,this._addGap(),W7(t,a)}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,_.EOF;return this._err(F.surrogateInInputStream),t}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(t,a){this.html.length>0?this.html+=t:this.html=t,this.endOfChunkHit=!1,this.lastChunkWritten=a}insertHtmlAtCurrentPos(t){this.html=this.html.substring(0,this.pos+1)+t+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(t,a){if(this.pos+t.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(a)return this.html.startsWith(t,this.pos);for(let r=0;r<t.length;r++)if((this.html.charCodeAt(this.pos+r)|32)!==t.charCodeAt(r))return!1;return!0}peek(t){const a=this.pos+t;if(a>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,_.EOF;const r=this.html.charCodeAt(a);return r===_.CARRIAGE_RETURN?_.LINE_FEED:r}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,_.EOF;let t=this.html.charCodeAt(this.pos);return t===_.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,_.LINE_FEED):t===_.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,Ec(t)&&(t=this._processSurrogate(t)),this.handler.onParseError===null||t>31&&t<127||t===_.LINE_FEED||t===_.CARRIAGE_RETURN||t>159&&t<64976||this._checkForProblematicCharacters(t),t)}_checkForProblematicCharacters(t){Tc(t)?this._err(F.controlCharacterInInputStream):Ac(t)&&this._err(F.noncharacterInInputStream)}retreat(t){for(this.pos-=t;this.pos<this.lastGapPos;)this.lastGapPos=this.gapStack.pop(),this.pos--;this.isEol=!1}}var ee;(function(e){e[e.CHARACTER=0]="CHARACTER",e[e.NULL_CHARACTER=1]="NULL_CHARACTER",e[e.WHITESPACE_CHARACTER=2]="WHITESPACE_CHARACTER",e[e.START_TAG=3]="START_TAG",e[e.END_TAG=4]="END_TAG",e[e.COMMENT=5]="COMMENT",e[e.DOCTYPE=6]="DOCTYPE",e[e.EOF=7]="EOF",e[e.HIBERNATION=8]="HIBERNATION"})(ee||(ee={}));function Cc(e,t){for(let a=e.attrs.length-1;a>=0;a--)if(e.attrs[a].name===t)return e.attrs[a].value;return null}const xc=new Uint16Array('ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split("").map(e=>e.charCodeAt(0))),Q7=new Uint16Array("Ȁaglq \x1Bɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢".split("").map(e=>e.charCodeAt(0)));var xr;const K7=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),X7=(xr=String.fromCodePoint)!==null&&xr!==void 0?xr:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t};function J7(e){var t;return e>=55296&&e<=57343||e>1114111?65533:(t=K7.get(e))!==null&&t!==void 0?t:e}var ge;(function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"})(ge||(ge={}));const Z7=32;var ot;(function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"})(ot||(ot={}));function Xr(e){return e>=ge.ZERO&&e<=ge.NINE}function eM(e){return e>=ge.UPPER_A&&e<=ge.UPPER_F||e>=ge.LOWER_A&&e<=ge.LOWER_F}function tM(e){return e>=ge.UPPER_A&&e<=ge.UPPER_Z||e>=ge.LOWER_A&&e<=ge.LOWER_Z||Xr(e)}function aM(e){return e===ge.EQUALS||tM(e)}var me;(function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"})(me||(me={}));var Ke;(function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"})(Ke||(Ke={}));class Dc{constructor(t,a,r){this.decodeTree=t,this.emitCodePoint=a,this.errors=r,this.state=me.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Ke.Strict}startEntity(t){this.decodeMode=t,this.state=me.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(t,a){switch(this.state){case me.EntityStart:return t.charCodeAt(a)===ge.NUM?(this.state=me.NumericStart,this.consumed+=1,this.stateNumericStart(t,a+1)):(this.state=me.NamedEntity,this.stateNamedEntity(t,a));case me.NumericStart:return this.stateNumericStart(t,a);case me.NumericDecimal:return this.stateNumericDecimal(t,a);case me.NumericHex:return this.stateNumericHex(t,a);case me.NamedEntity:return this.stateNamedEntity(t,a)}}stateNumericStart(t,a){return a>=t.length?-1:(t.charCodeAt(a)|Z7)===ge.LOWER_X?(this.state=me.NumericHex,this.consumed+=1,this.stateNumericHex(t,a+1)):(this.state=me.NumericDecimal,this.stateNumericDecimal(t,a))}addToNumericResult(t,a,r,n){if(a!==r){const s=r-a;this.result=this.result*Math.pow(n,s)+parseInt(t.substr(a,s),n),this.consumed+=s}}stateNumericHex(t,a){const r=a;for(;a<t.length;){const n=t.charCodeAt(a);if(Xr(n)||eM(n))a+=1;else return this.addToNumericResult(t,r,a,16),this.emitNumericEntity(n,3)}return this.addToNumericResult(t,r,a,16),-1}stateNumericDecimal(t,a){const r=a;for(;a<t.length;){const n=t.charCodeAt(a);if(Xr(n))a+=1;else return this.addToNumericResult(t,r,a,10),this.emitNumericEntity(n,2)}return this.addToNumericResult(t,r,a,10),-1}emitNumericEntity(t,a){var r;if(this.consumed<=a)return(r=this.errors)===null||r===void 0||r.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(t===ge.SEMI)this.consumed+=1;else if(this.decodeMode===Ke.Strict)return 0;return this.emitCodePoint(J7(this.result),this.consumed),this.errors&&(t!==ge.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(t,a){const{decodeTree:r}=this;let n=r[this.treeIndex],s=(n&ot.VALUE_LENGTH)>>14;for(;a<t.length;a++,this.excess++){const i=t.charCodeAt(a);if(this.treeIndex=rM(r,n,this.treeIndex+Math.max(1,s),i),this.treeIndex<0)return this.result===0||this.decodeMode===Ke.Attribute&&(s===0||aM(i))?0:this.emitNotTerminatedNamedEntity();if(n=r[this.treeIndex],s=(n&ot.VALUE_LENGTH)>>14,s!==0){if(i===ge.SEMI)return this.emitNamedEntityData(this.treeIndex,s,this.consumed+this.excess);this.decodeMode!==Ke.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var t;const{result:a,decodeTree:r}=this,n=(r[a]&ot.VALUE_LENGTH)>>14;return this.emitNamedEntityData(a,n,this.consumed),(t=this.errors)===null||t===void 0||t.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(t,a,r){const{decodeTree:n}=this;return this.emitCodePoint(a===1?n[t]&~ot.VALUE_LENGTH:n[t+1],r),a===3&&this.emitCodePoint(n[t+2],r),r}end(){var t;switch(this.state){case me.NamedEntity:return this.result!==0&&(this.decodeMode!==Ke.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case me.NumericDecimal:return this.emitNumericEntity(0,2);case me.NumericHex:return this.emitNumericEntity(0,3);case me.NumericStart:return(t=this.errors)===null||t===void 0||t.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case me.EntityStart:return 0}}}function zc(e){let t="";const a=new Dc(e,r=>t+=X7(r));return function(n,s){let i=0,o=0;for(;(o=n.indexOf("&",o))>=0;){t+=n.slice(i,o),a.startEntity(s);const l=a.write(n,o+1);if(l<0){i=o+a.end();break}i=o+l,o=l===0?i+1:i}const u=t+n.slice(i);return t="",u}}function rM(e,t,a,r){const n=(t&ot.BRANCH_LENGTH)>>7,s=t&ot.JUMP_TABLE;if(n===0)return s!==0&&r===s?a:-1;if(s){const u=r-s;return u<0||u>=n?-1:e[a+u]-1}let i=a,o=i+n-1;for(;i<=o;){const u=i+o>>>1,l=e[u];if(l<r)i=u+1;else if(l>r)o=u-1;else return e[u+n]}return-1}zc(xc);zc(Q7);var P;(function(e){e.HTML="http://www.w3.org/1999/xhtml",e.MATHML="http://www.w3.org/1998/Math/MathML",e.SVG="http://www.w3.org/2000/svg",e.XLINK="http://www.w3.org/1999/xlink",e.XML="http://www.w3.org/XML/1998/namespace",e.XMLNS="http://www.w3.org/2000/xmlns/"})(P||(P={}));var bt;(function(e){e.TYPE="type",e.ACTION="action",e.ENCODING="encoding",e.PROMPT="prompt",e.NAME="name",e.COLOR="color",e.FACE="face",e.SIZE="size"})(bt||(bt={}));var Fe;(function(e){e.NO_QUIRKS="no-quirks",e.QUIRKS="quirks",e.LIMITED_QUIRKS="limited-quirks"})(Fe||(Fe={}));var z;(function(e){e.A="a",e.ADDRESS="address",e.ANNOTATION_XML="annotation-xml",e.APPLET="applet",e.AREA="area",e.ARTICLE="article",e.ASIDE="aside",e.B="b",e.BASE="base",e.BASEFONT="basefont",e.BGSOUND="bgsound",e.BIG="big",e.BLOCKQUOTE="blockquote",e.BODY="body",e.BR="br",e.BUTTON="button",e.CAPTION="caption",e.CENTER="center",e.CODE="code",e.COL="col",e.COLGROUP="colgroup",e.DD="dd",e.DESC="desc",e.DETAILS="details",e.DIALOG="dialog",e.DIR="dir",e.DIV="div",e.DL="dl",e.DT="dt",e.EM="em",e.EMBED="embed",e.FIELDSET="fieldset",e.FIGCAPTION="figcaption",e.FIGURE="figure",e.FONT="font",e.FOOTER="footer",e.FOREIGN_OBJECT="foreignObject",e.FORM="form",e.FRAME="frame",e.FRAMESET="frameset",e.H1="h1",e.H2="h2",e.H3="h3",e.H4="h4",e.H5="h5",e.H6="h6",e.HEAD="head",e.HEADER="header",e.HGROUP="hgroup",e.HR="hr",e.HTML="html",e.I="i",e.IMG="img",e.IMAGE="image",e.INPUT="input",e.IFRAME="iframe",e.KEYGEN="keygen",e.LABEL="label",e.LI="li",e.LINK="link",e.LISTING="listing",e.MAIN="main",e.MALIGNMARK="malignmark",e.MARQUEE="marquee",e.MATH="math",e.MENU="menu",e.META="meta",e.MGLYPH="mglyph",e.MI="mi",e.MO="mo",e.MN="mn",e.MS="ms",e.MTEXT="mtext",e.NAV="nav",e.NOBR="nobr",e.NOFRAMES="noframes",e.NOEMBED="noembed",e.NOSCRIPT="noscript",e.OBJECT="object",e.OL="ol",e.OPTGROUP="optgroup",e.OPTION="option",e.P="p",e.PARAM="param",e.PLAINTEXT="plaintext",e.PRE="pre",e.RB="rb",e.RP="rp",e.RT="rt",e.RTC="rtc",e.RUBY="ruby",e.S="s",e.SCRIPT="script",e.SEARCH="search",e.SECTION="section",e.SELECT="select",e.SOURCE="source",e.SMALL="small",e.SPAN="span",e.STRIKE="strike",e.STRONG="strong",e.STYLE="style",e.SUB="sub",e.SUMMARY="summary",e.SUP="sup",e.TABLE="table",e.TBODY="tbody",e.TEMPLATE="template",e.TEXTAREA="textarea",e.TFOOT="tfoot",e.TD="td",e.TH="th",e.THEAD="thead",e.TITLE="title",e.TR="tr",e.TRACK="track",e.TT="tt",e.U="u",e.UL="ul",e.SVG="svg",e.VAR="var",e.WBR="wbr",e.XMP="xmp"})(z||(z={}));var c;(function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.A=1]="A",e[e.ADDRESS=2]="ADDRESS",e[e.ANNOTATION_XML=3]="ANNOTATION_XML",e[e.APPLET=4]="APPLET",e[e.AREA=5]="AREA",e[e.ARTICLE=6]="ARTICLE",e[e.ASIDE=7]="ASIDE",e[e.B=8]="B",e[e.BASE=9]="BASE",e[e.BASEFONT=10]="BASEFONT",e[e.BGSOUND=11]="BGSOUND",e[e.BIG=12]="BIG",e[e.BLOCKQUOTE=13]="BLOCKQUOTE",e[e.BODY=14]="BODY",e[e.BR=15]="BR",e[e.BUTTON=16]="BUTTON",e[e.CAPTION=17]="CAPTION",e[e.CENTER=18]="CENTER",e[e.CODE=19]="CODE",e[e.COL=20]="COL",e[e.COLGROUP=21]="COLGROUP",e[e.DD=22]="DD",e[e.DESC=23]="DESC",e[e.DETAILS=24]="DETAILS",e[e.DIALOG=25]="DIALOG",e[e.DIR=26]="DIR",e[e.DIV=27]="DIV",e[e.DL=28]="DL",e[e.DT=29]="DT",e[e.EM=30]="EM",e[e.EMBED=31]="EMBED",e[e.FIELDSET=32]="FIELDSET",e[e.FIGCAPTION=33]="FIGCAPTION",e[e.FIGURE=34]="FIGURE",e[e.FONT=35]="FONT",e[e.FOOTER=36]="FOOTER",e[e.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",e[e.FORM=38]="FORM",e[e.FRAME=39]="FRAME",e[e.FRAMESET=40]="FRAMESET",e[e.H1=41]="H1",e[e.H2=42]="H2",e[e.H3=43]="H3",e[e.H4=44]="H4",e[e.H5=45]="H5",e[e.H6=46]="H6",e[e.HEAD=47]="HEAD",e[e.HEADER=48]="HEADER",e[e.HGROUP=49]="HGROUP",e[e.HR=50]="HR",e[e.HTML=51]="HTML",e[e.I=52]="I",e[e.IMG=53]="IMG",e[e.IMAGE=54]="IMAGE",e[e.INPUT=55]="INPUT",e[e.IFRAME=56]="IFRAME",e[e.KEYGEN=57]="KEYGEN",e[e.LABEL=58]="LABEL",e[e.LI=59]="LI",e[e.LINK=60]="LINK",e[e.LISTING=61]="LISTING",e[e.MAIN=62]="MAIN",e[e.MALIGNMARK=63]="MALIGNMARK",e[e.MARQUEE=64]="MARQUEE",e[e.MATH=65]="MATH",e[e.MENU=66]="MENU",e[e.META=67]="META",e[e.MGLYPH=68]="MGLYPH",e[e.MI=69]="MI",e[e.MO=70]="MO",e[e.MN=71]="MN",e[e.MS=72]="MS",e[e.MTEXT=73]="MTEXT",e[e.NAV=74]="NAV",e[e.NOBR=75]="NOBR",e[e.NOFRAMES=76]="NOFRAMES",e[e.NOEMBED=77]="NOEMBED",e[e.NOSCRIPT=78]="NOSCRIPT",e[e.OBJECT=79]="OBJECT",e[e.OL=80]="OL",e[e.OPTGROUP=81]="OPTGROUP",e[e.OPTION=82]="OPTION",e[e.P=83]="P",e[e.PARAM=84]="PARAM",e[e.PLAINTEXT=85]="PLAINTEXT",e[e.PRE=86]="PRE",e[e.RB=87]="RB",e[e.RP=88]="RP",e[e.RT=89]="RT",e[e.RTC=90]="RTC",e[e.RUBY=91]="RUBY",e[e.S=92]="S",e[e.SCRIPT=93]="SCRIPT",e[e.SEARCH=94]="SEARCH",e[e.SECTION=95]="SECTION",e[e.SELECT=96]="SELECT",e[e.SOURCE=97]="SOURCE",e[e.SMALL=98]="SMALL",e[e.SPAN=99]="SPAN",e[e.STRIKE=100]="STRIKE",e[e.STRONG=101]="STRONG",e[e.STYLE=102]="STYLE",e[e.SUB=103]="SUB",e[e.SUMMARY=104]="SUMMARY",e[e.SUP=105]="SUP",e[e.TABLE=106]="TABLE",e[e.TBODY=107]="TBODY",e[e.TEMPLATE=108]="TEMPLATE",e[e.TEXTAREA=109]="TEXTAREA",e[e.TFOOT=110]="TFOOT",e[e.TD=111]="TD",e[e.TH=112]="TH",e[e.THEAD=113]="THEAD",e[e.TITLE=114]="TITLE",e[e.TR=115]="TR",e[e.TRACK=116]="TRACK",e[e.TT=117]="TT",e[e.U=118]="U",e[e.UL=119]="UL",e[e.SVG=120]="SVG",e[e.VAR=121]="VAR",e[e.WBR=122]="WBR",e[e.XMP=123]="XMP"})(c||(c={}));const nM=new Map([[z.A,c.A],[z.ADDRESS,c.ADDRESS],[z.ANNOTATION_XML,c.ANNOTATION_XML],[z.APPLET,c.APPLET],[z.AREA,c.AREA],[z.ARTICLE,c.ARTICLE],[z.ASIDE,c.ASIDE],[z.B,c.B],[z.BASE,c.BASE],[z.BASEFONT,c.BASEFONT],[z.BGSOUND,c.BGSOUND],[z.BIG,c.BIG],[z.BLOCKQUOTE,c.BLOCKQUOTE],[z.BODY,c.BODY],[z.BR,c.BR],[z.BUTTON,c.BUTTON],[z.CAPTION,c.CAPTION],[z.CENTER,c.CENTER],[z.CODE,c.CODE],[z.COL,c.COL],[z.COLGROUP,c.COLGROUP],[z.DD,c.DD],[z.DESC,c.DESC],[z.DETAILS,c.DETAILS],[z.DIALOG,c.DIALOG],[z.DIR,c.DIR],[z.DIV,c.DIV],[z.DL,c.DL],[z.DT,c.DT],[z.EM,c.EM],[z.EMBED,c.EMBED],[z.FIELDSET,c.FIELDSET],[z.FIGCAPTION,c.FIGCAPTION],[z.FIGURE,c.FIGURE],[z.FONT,c.FONT],[z.FOOTER,c.FOOTER],[z.FOREIGN_OBJECT,c.FOREIGN_OBJECT],[z.FORM,c.FORM],[z.FRAME,c.FRAME],[z.FRAMESET,c.FRAMESET],[z.H1,c.H1],[z.H2,c.H2],[z.H3,c.H3],[z.H4,c.H4],[z.H5,c.H5],[z.H6,c.H6],[z.HEAD,c.HEAD],[z.HEADER,c.HEADER],[z.HGROUP,c.HGROUP],[z.HR,c.HR],[z.HTML,c.HTML],[z.I,c.I],[z.IMG,c.IMG],[z.IMAGE,c.IMAGE],[z.INPUT,c.INPUT],[z.IFRAME,c.IFRAME],[z.KEYGEN,c.KEYGEN],[z.LABEL,c.LABEL],[z.LI,c.LI],[z.LINK,c.LINK],[z.LISTING,c.LISTING],[z.MAIN,c.MAIN],[z.MALIGNMARK,c.MALIGNMARK],[z.MARQUEE,c.MARQUEE],[z.MATH,c.MATH],[z.MENU,c.MENU],[z.META,c.META],[z.MGLYPH,c.MGLYPH],[z.MI,c.MI],[z.MO,c.MO],[z.MN,c.MN],[z.MS,c.MS],[z.MTEXT,c.MTEXT],[z.NAV,c.NAV],[z.NOBR,c.NOBR],[z.NOFRAMES,c.NOFRAMES],[z.NOEMBED,c.NOEMBED],[z.NOSCRIPT,c.NOSCRIPT],[z.OBJECT,c.OBJECT],[z.OL,c.OL],[z.OPTGROUP,c.OPTGROUP],[z.OPTION,c.OPTION],[z.P,c.P],[z.PARAM,c.PARAM],[z.PLAINTEXT,c.PLAINTEXT],[z.PRE,c.PRE],[z.RB,c.RB],[z.RP,c.RP],[z.RT,c.RT],[z.RTC,c.RTC],[z.RUBY,c.RUBY],[z.S,c.S],[z.SCRIPT,c.SCRIPT],[z.SEARCH,c.SEARCH],[z.SECTION,c.SECTION],[z.SELECT,c.SELECT],[z.SOURCE,c.SOURCE],[z.SMALL,c.SMALL],[z.SPAN,c.SPAN],[z.STRIKE,c.STRIKE],[z.STRONG,c.STRONG],[z.STYLE,c.STYLE],[z.SUB,c.SUB],[z.SUMMARY,c.SUMMARY],[z.SUP,c.SUP],[z.TABLE,c.TABLE],[z.TBODY,c.TBODY],[z.TEMPLATE,c.TEMPLATE],[z.TEXTAREA,c.TEXTAREA],[z.TFOOT,c.TFOOT],[z.TD,c.TD],[z.TH,c.TH],[z.THEAD,c.THEAD],[z.TITLE,c.TITLE],[z.TR,c.TR],[z.TRACK,c.TRACK],[z.TT,c.TT],[z.U,c.U],[z.UL,c.UL],[z.SVG,c.SVG],[z.VAR,c.VAR],[z.WBR,c.WBR],[z.XMP,c.XMP]]);function Ht(e){var t;return(t=nM.get(e))!==null&&t!==void 0?t:c.UNKNOWN}const U=c,iM={[P.HTML]:new Set([U.ADDRESS,U.APPLET,U.AREA,U.ARTICLE,U.ASIDE,U.BASE,U.BASEFONT,U.BGSOUND,U.BLOCKQUOTE,U.BODY,U.BR,U.BUTTON,U.CAPTION,U.CENTER,U.COL,U.COLGROUP,U.DD,U.DETAILS,U.DIR,U.DIV,U.DL,U.DT,U.EMBED,U.FIELDSET,U.FIGCAPTION,U.FIGURE,U.FOOTER,U.FORM,U.FRAME,U.FRAMESET,U.H1,U.H2,U.H3,U.H4,U.H5,U.H6,U.HEAD,U.HEADER,U.HGROUP,U.HR,U.HTML,U.IFRAME,U.IMG,U.INPUT,U.LI,U.LINK,U.LISTING,U.MAIN,U.MARQUEE,U.MENU,U.META,U.NAV,U.NOEMBED,U.NOFRAMES,U.NOSCRIPT,U.OBJECT,U.OL,U.P,U.PARAM,U.PLAINTEXT,U.PRE,U.SCRIPT,U.SECTION,U.SELECT,U.SOURCE,U.STYLE,U.SUMMARY,U.TABLE,U.TBODY,U.TD,U.TEMPLATE,U.TEXTAREA,U.TFOOT,U.TH,U.THEAD,U.TITLE,U.TR,U.TRACK,U.UL,U.WBR,U.XMP]),[P.MATHML]:new Set([U.MI,U.MO,U.MN,U.MS,U.MTEXT,U.ANNOTATION_XML]),[P.SVG]:new Set([U.TITLE,U.FOREIGN_OBJECT,U.DESC]),[P.XLINK]:new Set,[P.XML]:new Set,[P.XMLNS]:new Set},Jr=new Set([U.H1,U.H2,U.H3,U.H4,U.H5,U.H6]);z.STYLE,z.SCRIPT,z.XMP,z.IFRAME,z.NOEMBED,z.NOFRAMES,z.PLAINTEXT;var y;(function(e){e[e.DATA=0]="DATA",e[e.RCDATA=1]="RCDATA",e[e.RAWTEXT=2]="RAWTEXT",e[e.SCRIPT_DATA=3]="SCRIPT_DATA",e[e.PLAINTEXT=4]="PLAINTEXT",e[e.TAG_OPEN=5]="TAG_OPEN",e[e.END_TAG_OPEN=6]="END_TAG_OPEN",e[e.TAG_NAME=7]="TAG_NAME",e[e.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",e[e.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",e[e.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",e[e.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",e[e.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",e[e.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",e[e.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",e[e.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",e[e.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",e[e.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",e[e.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",e[e.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",e[e.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",e[e.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",e[e.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",e[e.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",e[e.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",e[e.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",e[e.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",e[e.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",e[e.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",e[e.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",e[e.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",e[e.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",e[e.BOGUS_COMMENT=40]="BOGUS_COMMENT",e[e.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",e[e.COMMENT_START=42]="COMMENT_START",e[e.COMMENT_START_DASH=43]="COMMENT_START_DASH",e[e.COMMENT=44]="COMMENT",e[e.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",e[e.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",e[e.COMMENT_END_DASH=49]="COMMENT_END_DASH",e[e.COMMENT_END=50]="COMMENT_END",e[e.COMMENT_END_BANG=51]="COMMENT_END_BANG",e[e.DOCTYPE=52]="DOCTYPE",e[e.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",e[e.DOCTYPE_NAME=54]="DOCTYPE_NAME",e[e.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",e[e.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",e[e.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",e[e.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",e[e.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",e[e.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",e[e.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",e[e.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",e[e.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",e[e.CDATA_SECTION=68]="CDATA_SECTION",e[e.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",e[e.CDATA_SECTION_END=70]="CDATA_SECTION_END",e[e.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",e[e.AMBIGUOUS_AMPERSAND=72]="AMBIGUOUS_AMPERSAND"})(y||(y={}));const fe={DATA:y.DATA,RCDATA:y.RCDATA,RAWTEXT:y.RAWTEXT,SCRIPT_DATA:y.SCRIPT_DATA,PLAINTEXT:y.PLAINTEXT,CDATA_SECTION:y.CDATA_SECTION};function sM(e){return e>=_.DIGIT_0&&e<=_.DIGIT_9}function Jt(e){return e>=_.LATIN_CAPITAL_A&&e<=_.LATIN_CAPITAL_Z}function oM(e){return e>=_.LATIN_SMALL_A&&e<=_.LATIN_SMALL_Z}function it(e){return oM(e)||Jt(e)}function ns(e){return it(e)||sM(e)}function xa(e){return e+32}function Sc(e){return e===_.SPACE||e===_.LINE_FEED||e===_.TABULATION||e===_.FORM_FEED}function is(e){return Sc(e)||e===_.SOLIDUS||e===_.GREATER_THAN_SIGN}function cM(e){return e===_.NULL?F.nullCharacterReference:e>1114111?F.characterReferenceOutsideUnicodeRange:Ec(e)?F.surrogateCharacterReference:Ac(e)?F.noncharacterCharacterReference:Tc(e)||e===_.CARRIAGE_RETURN?F.controlCharacterReference:null}class uM{constructor(t,a){this.options=t,this.handler=a,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=y.DATA,this.returnState=y.DATA,this.entityStartPos=0,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new G7(a),this.currentLocation=this.getCurrentLocation(-1),this.entityDecoder=new Dc(xc,(r,n)=>{this.preprocessor.pos=this.entityStartPos+n-1,this._flushCodePointConsumedAsCharacterReference(r)},a.onParseError?{missingSemicolonAfterCharacterReference:()=>{this._err(F.missingSemicolonAfterCharacterReference,1)},absenceOfDigitsInNumericCharacterReference:r=>{this._err(F.absenceOfDigitsInNumericCharacterReference,this.entityStartPos-this.preprocessor.pos+r)},validateNumericCharacterReference:r=>{const n=cM(r);n&&this._err(n,1)}}:void 0)}_err(t,a=0){var r,n;(n=(r=this.handler).onParseError)===null||n===void 0||n.call(r,this.preprocessor.getError(t,a))}getCurrentLocation(t){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-t,startOffset:this.preprocessor.offset-t,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;const t=this._consume();this._ensureHibernation()||this._callState(t)}this.inLoop=!1}}pause(){this.paused=!0}resume(t){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,!this.inLoop&&(this._runParsingLoop(),this.paused||t==null||t())}write(t,a,r){this.active=!0,this.preprocessor.write(t,a),this._runParsingLoop(),this.paused||r==null||r()}insertHtmlAtCurrentPos(t){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(t),this._runParsingLoop()}_ensureHibernation(){return this.preprocessor.endOfChunkHit?(this.preprocessor.retreat(this.consumedAfterSnapshot),this.consumedAfterSnapshot=0,this.active=!1,!0):!1}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_advanceBy(t){this.consumedAfterSnapshot+=t;for(let a=0;a<t;a++)this.preprocessor.advance()}_consumeSequenceIfMatch(t,a){return this.preprocessor.startsWith(t,a)?(this._advanceBy(t.length-1),!0):!1}_createStartTagToken(){this.currentToken={type:ee.START_TAG,tagName:"",tagID:c.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(1)}}_createEndTagToken(){this.currentToken={type:ee.END_TAG,tagName:"",tagID:c.UNKNOWN,selfClosing:!1,ackSelfClosing:!1,attrs:[],location:this.getCurrentLocation(2)}}_createCommentToken(t){this.currentToken={type:ee.COMMENT,data:"",location:this.getCurrentLocation(t)}}_createDoctypeToken(t){this.currentToken={type:ee.DOCTYPE,name:t,forceQuirks:!1,publicId:null,systemId:null,location:this.currentLocation}}_createCharacterToken(t,a){this.currentCharacterToken={type:t,chars:a,location:this.currentLocation}}_createAttr(t){this.currentAttr={name:t,value:""},this.currentLocation=this.getCurrentLocation(0)}_leaveAttrName(){var t,a;const r=this.currentToken;if(Cc(r,this.currentAttr.name)===null){if(r.attrs.push(this.currentAttr),r.location&&this.currentLocation){const n=(t=(a=r.location).attrs)!==null&&t!==void 0?t:a.attrs=Object.create(null);n[this.currentAttr.name]=this.currentLocation,this._leaveAttrValue()}}else this._err(F.duplicateAttribute)}_leaveAttrValue(){this.currentLocation&&(this.currentLocation.endLine=this.preprocessor.line,this.currentLocation.endCol=this.preprocessor.col,this.currentLocation.endOffset=this.preprocessor.offset)}prepareToken(t){this._emitCurrentCharacterToken(t.location),this.currentToken=null,t.location&&(t.location.endLine=this.preprocessor.line,t.location.endCol=this.preprocessor.col+1,t.location.endOffset=this.preprocessor.offset+1),this.currentLocation=this.getCurrentLocation(-1)}emitCurrentTagToken(){const t=this.currentToken;this.prepareToken(t),t.tagID=Ht(t.tagName),t.type===ee.START_TAG?(this.lastStartTagName=t.tagName,this.handler.onStartTag(t)):(t.attrs.length>0&&this._err(F.endTagWithAttributes),t.selfClosing&&this._err(F.endTagWithTrailingSolidus),this.handler.onEndTag(t)),this.preprocessor.dropParsedChunk()}emitCurrentComment(t){this.prepareToken(t),this.handler.onComment(t),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(t){this.prepareToken(t),this.handler.onDoctype(t),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(t){if(this.currentCharacterToken){switch(t&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=t.startLine,this.currentCharacterToken.location.endCol=t.startCol,this.currentCharacterToken.location.endOffset=t.startOffset),this.currentCharacterToken.type){case ee.CHARACTER:{this.handler.onCharacter(this.currentCharacterToken);break}case ee.NULL_CHARACTER:{this.handler.onNullCharacter(this.currentCharacterToken);break}case ee.WHITESPACE_CHARACTER:{this.handler.onWhitespaceCharacter(this.currentCharacterToken);break}}this.currentCharacterToken=null}}_emitEOFToken(){const t=this.getCurrentLocation(0);t&&(t.endLine=t.startLine,t.endCol=t.startCol,t.endOffset=t.startOffset),this._emitCurrentCharacterToken(t),this.handler.onEof({type:ee.EOF,location:t}),this.active=!1}_appendCharToCurrentCharacterToken(t,a){if(this.currentCharacterToken)if(this.currentCharacterToken.type===t){this.currentCharacterToken.chars+=a;return}else this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk();this._createCharacterToken(t,a)}_emitCodePoint(t){const a=Sc(t)?ee.WHITESPACE_CHARACTER:t===_.NULL?ee.NULL_CHARACTER:ee.CHARACTER;this._appendCharToCurrentCharacterToken(a,String.fromCodePoint(t))}_emitChars(t){this._appendCharToCurrentCharacterToken(ee.CHARACTER,t)}_startCharacterReference(){this.returnState=this.state,this.state=y.CHARACTER_REFERENCE,this.entityStartPos=this.preprocessor.pos,this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute()?Ke.Attribute:Ke.Legacy)}_isCharacterReferenceInAttribute(){return this.returnState===y.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===y.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===y.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(t){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(t):this._emitCodePoint(t)}_callState(t){switch(this.state){case y.DATA:{this._stateData(t);break}case y.RCDATA:{this._stateRcdata(t);break}case y.RAWTEXT:{this._stateRawtext(t);break}case y.SCRIPT_DATA:{this._stateScriptData(t);break}case y.PLAINTEXT:{this._statePlaintext(t);break}case y.TAG_OPEN:{this._stateTagOpen(t);break}case y.END_TAG_OPEN:{this._stateEndTagOpen(t);break}case y.TAG_NAME:{this._stateTagName(t);break}case y.RCDATA_LESS_THAN_SIGN:{this._stateRcdataLessThanSign(t);break}case y.RCDATA_END_TAG_OPEN:{this._stateRcdataEndTagOpen(t);break}case y.RCDATA_END_TAG_NAME:{this._stateRcdataEndTagName(t);break}case y.RAWTEXT_LESS_THAN_SIGN:{this._stateRawtextLessThanSign(t);break}case y.RAWTEXT_END_TAG_OPEN:{this._stateRawtextEndTagOpen(t);break}case y.RAWTEXT_END_TAG_NAME:{this._stateRawtextEndTagName(t);break}case y.SCRIPT_DATA_LESS_THAN_SIGN:{this._stateScriptDataLessThanSign(t);break}case y.SCRIPT_DATA_END_TAG_OPEN:{this._stateScriptDataEndTagOpen(t);break}case y.SCRIPT_DATA_END_TAG_NAME:{this._stateScriptDataEndTagName(t);break}case y.SCRIPT_DATA_ESCAPE_START:{this._stateScriptDataEscapeStart(t);break}case y.SCRIPT_DATA_ESCAPE_START_DASH:{this._stateScriptDataEscapeStartDash(t);break}case y.SCRIPT_DATA_ESCAPED:{this._stateScriptDataEscaped(t);break}case y.SCRIPT_DATA_ESCAPED_DASH:{this._stateScriptDataEscapedDash(t);break}case y.SCRIPT_DATA_ESCAPED_DASH_DASH:{this._stateScriptDataEscapedDashDash(t);break}case y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataEscapedLessThanSign(t);break}case y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:{this._stateScriptDataEscapedEndTagOpen(t);break}case y.SCRIPT_DATA_ESCAPED_END_TAG_NAME:{this._stateScriptDataEscapedEndTagName(t);break}case y.SCRIPT_DATA_DOUBLE_ESCAPE_START:{this._stateScriptDataDoubleEscapeStart(t);break}case y.SCRIPT_DATA_DOUBLE_ESCAPED:{this._stateScriptDataDoubleEscaped(t);break}case y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:{this._stateScriptDataDoubleEscapedDash(t);break}case y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:{this._stateScriptDataDoubleEscapedDashDash(t);break}case y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:{this._stateScriptDataDoubleEscapedLessThanSign(t);break}case y.SCRIPT_DATA_DOUBLE_ESCAPE_END:{this._stateScriptDataDoubleEscapeEnd(t);break}case y.BEFORE_ATTRIBUTE_NAME:{this._stateBeforeAttributeName(t);break}case y.ATTRIBUTE_NAME:{this._stateAttributeName(t);break}case y.AFTER_ATTRIBUTE_NAME:{this._stateAfterAttributeName(t);break}case y.BEFORE_ATTRIBUTE_VALUE:{this._stateBeforeAttributeValue(t);break}case y.ATTRIBUTE_VALUE_DOUBLE_QUOTED:{this._stateAttributeValueDoubleQuoted(t);break}case y.ATTRIBUTE_VALUE_SINGLE_QUOTED:{this._stateAttributeValueSingleQuoted(t);break}case y.ATTRIBUTE_VALUE_UNQUOTED:{this._stateAttributeValueUnquoted(t);break}case y.AFTER_ATTRIBUTE_VALUE_QUOTED:{this._stateAfterAttributeValueQuoted(t);break}case y.SELF_CLOSING_START_TAG:{this._stateSelfClosingStartTag(t);break}case y.BOGUS_COMMENT:{this._stateBogusComment(t);break}case y.MARKUP_DECLARATION_OPEN:{this._stateMarkupDeclarationOpen(t);break}case y.COMMENT_START:{this._stateCommentStart(t);break}case y.COMMENT_START_DASH:{this._stateCommentStartDash(t);break}case y.COMMENT:{this._stateComment(t);break}case y.COMMENT_LESS_THAN_SIGN:{this._stateCommentLessThanSign(t);break}case y.COMMENT_LESS_THAN_SIGN_BANG:{this._stateCommentLessThanSignBang(t);break}case y.COMMENT_LESS_THAN_SIGN_BANG_DASH:{this._stateCommentLessThanSignBangDash(t);break}case y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:{this._stateCommentLessThanSignBangDashDash(t);break}case y.COMMENT_END_DASH:{this._stateCommentEndDash(t);break}case y.COMMENT_END:{this._stateCommentEnd(t);break}case y.COMMENT_END_BANG:{this._stateCommentEndBang(t);break}case y.DOCTYPE:{this._stateDoctype(t);break}case y.BEFORE_DOCTYPE_NAME:{this._stateBeforeDoctypeName(t);break}case y.DOCTYPE_NAME:{this._stateDoctypeName(t);break}case y.AFTER_DOCTYPE_NAME:{this._stateAfterDoctypeName(t);break}case y.AFTER_DOCTYPE_PUBLIC_KEYWORD:{this._stateAfterDoctypePublicKeyword(t);break}case y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateBeforeDoctypePublicIdentifier(t);break}case y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypePublicIdentifierDoubleQuoted(t);break}case y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypePublicIdentifierSingleQuoted(t);break}case y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:{this._stateAfterDoctypePublicIdentifier(t);break}case y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:{this._stateBetweenDoctypePublicAndSystemIdentifiers(t);break}case y.AFTER_DOCTYPE_SYSTEM_KEYWORD:{this._stateAfterDoctypeSystemKeyword(t);break}case y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateBeforeDoctypeSystemIdentifier(t);break}case y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:{this._stateDoctypeSystemIdentifierDoubleQuoted(t);break}case y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:{this._stateDoctypeSystemIdentifierSingleQuoted(t);break}case y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:{this._stateAfterDoctypeSystemIdentifier(t);break}case y.BOGUS_DOCTYPE:{this._stateBogusDoctype(t);break}case y.CDATA_SECTION:{this._stateCdataSection(t);break}case y.CDATA_SECTION_BRACKET:{this._stateCdataSectionBracket(t);break}case y.CDATA_SECTION_END:{this._stateCdataSectionEnd(t);break}case y.CHARACTER_REFERENCE:{this._stateCharacterReference();break}case y.AMBIGUOUS_AMPERSAND:{this._stateAmbiguousAmpersand(t);break}default:throw new Error("Unknown state")}}_stateData(t){switch(t){case _.LESS_THAN_SIGN:{this.state=y.TAG_OPEN;break}case _.AMPERSAND:{this._startCharacterReference();break}case _.NULL:{this._err(F.unexpectedNullCharacter),this._emitCodePoint(t);break}case _.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRcdata(t){switch(t){case _.AMPERSAND:{this._startCharacterReference();break}case _.LESS_THAN_SIGN:{this.state=y.RCDATA_LESS_THAN_SIGN;break}case _.NULL:{this._err(F.unexpectedNullCharacter),this._emitChars(ue);break}case _.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateRawtext(t){switch(t){case _.LESS_THAN_SIGN:{this.state=y.RAWTEXT_LESS_THAN_SIGN;break}case _.NULL:{this._err(F.unexpectedNullCharacter),this._emitChars(ue);break}case _.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateScriptData(t){switch(t){case _.LESS_THAN_SIGN:{this.state=y.SCRIPT_DATA_LESS_THAN_SIGN;break}case _.NULL:{this._err(F.unexpectedNullCharacter),this._emitChars(ue);break}case _.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_statePlaintext(t){switch(t){case _.NULL:{this._err(F.unexpectedNullCharacter),this._emitChars(ue);break}case _.EOF:{this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateTagOpen(t){if(it(t))this._createStartTagToken(),this.state=y.TAG_NAME,this._stateTagName(t);else switch(t){case _.EXCLAMATION_MARK:{this.state=y.MARKUP_DECLARATION_OPEN;break}case _.SOLIDUS:{this.state=y.END_TAG_OPEN;break}case _.QUESTION_MARK:{this._err(F.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=y.BOGUS_COMMENT,this._stateBogusComment(t);break}case _.EOF:{this._err(F.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break}default:this._err(F.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=y.DATA,this._stateData(t)}}_stateEndTagOpen(t){if(it(t))this._createEndTagToken(),this.state=y.TAG_NAME,this._stateTagName(t);else switch(t){case _.GREATER_THAN_SIGN:{this._err(F.missingEndTagName),this.state=y.DATA;break}case _.EOF:{this._err(F.eofBeforeTagName),this._emitChars("</"),this._emitEOFToken();break}default:this._err(F.invalidFirstCharacterOfTagName),this._createCommentToken(2),this.state=y.BOGUS_COMMENT,this._stateBogusComment(t)}}_stateTagName(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this.state=y.BEFORE_ATTRIBUTE_NAME;break}case _.SOLIDUS:{this.state=y.SELF_CLOSING_START_TAG;break}case _.GREATER_THAN_SIGN:{this.state=y.DATA,this.emitCurrentTagToken();break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.tagName+=ue;break}case _.EOF:{this._err(F.eofInTag),this._emitEOFToken();break}default:a.tagName+=String.fromCodePoint(Jt(t)?xa(t):t)}}_stateRcdataLessThanSign(t){t===_.SOLIDUS?this.state=y.RCDATA_END_TAG_OPEN:(this._emitChars("<"),this.state=y.RCDATA,this._stateRcdata(t))}_stateRcdataEndTagOpen(t){it(t)?(this.state=y.RCDATA_END_TAG_NAME,this._stateRcdataEndTagName(t)):(this._emitChars("</"),this.state=y.RCDATA,this._stateRcdata(t))}handleSpecialEndTag(t){if(!this.preprocessor.startsWith(this.lastStartTagName,!1))return!this._ensureHibernation();this._createEndTagToken();const a=this.currentToken;switch(a.tagName=this.lastStartTagName,this.preprocessor.peek(this.lastStartTagName.length)){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:return this._advanceBy(this.lastStartTagName.length),this.state=y.BEFORE_ATTRIBUTE_NAME,!1;case _.SOLIDUS:return this._advanceBy(this.lastStartTagName.length),this.state=y.SELF_CLOSING_START_TAG,!1;case _.GREATER_THAN_SIGN:return this._advanceBy(this.lastStartTagName.length),this.emitCurrentTagToken(),this.state=y.DATA,!1;default:return!this._ensureHibernation()}}_stateRcdataEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=y.RCDATA,this._stateRcdata(t))}_stateRawtextLessThanSign(t){t===_.SOLIDUS?this.state=y.RAWTEXT_END_TAG_OPEN:(this._emitChars("<"),this.state=y.RAWTEXT,this._stateRawtext(t))}_stateRawtextEndTagOpen(t){it(t)?(this.state=y.RAWTEXT_END_TAG_NAME,this._stateRawtextEndTagName(t)):(this._emitChars("</"),this.state=y.RAWTEXT,this._stateRawtext(t))}_stateRawtextEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=y.RAWTEXT,this._stateRawtext(t))}_stateScriptDataLessThanSign(t){switch(t){case _.SOLIDUS:{this.state=y.SCRIPT_DATA_END_TAG_OPEN;break}case _.EXCLAMATION_MARK:{this.state=y.SCRIPT_DATA_ESCAPE_START,this._emitChars("<!");break}default:this._emitChars("<"),this.state=y.SCRIPT_DATA,this._stateScriptData(t)}}_stateScriptDataEndTagOpen(t){it(t)?(this.state=y.SCRIPT_DATA_END_TAG_NAME,this._stateScriptDataEndTagName(t)):(this._emitChars("</"),this.state=y.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=y.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscapeStart(t){t===_.HYPHEN_MINUS?(this.state=y.SCRIPT_DATA_ESCAPE_START_DASH,this._emitChars("-")):(this.state=y.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscapeStartDash(t){t===_.HYPHEN_MINUS?(this.state=y.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-")):(this.state=y.SCRIPT_DATA,this._stateScriptData(t))}_stateScriptDataEscaped(t){switch(t){case _.HYPHEN_MINUS:{this.state=y.SCRIPT_DATA_ESCAPED_DASH,this._emitChars("-");break}case _.LESS_THAN_SIGN:{this.state=y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case _.NULL:{this._err(F.unexpectedNullCharacter),this._emitChars(ue);break}case _.EOF:{this._err(F.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateScriptDataEscapedDash(t){switch(t){case _.HYPHEN_MINUS:{this.state=y.SCRIPT_DATA_ESCAPED_DASH_DASH,this._emitChars("-");break}case _.LESS_THAN_SIGN:{this.state=y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.state=y.SCRIPT_DATA_ESCAPED,this._emitChars(ue);break}case _.EOF:{this._err(F.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedDashDash(t){switch(t){case _.HYPHEN_MINUS:{this._emitChars("-");break}case _.LESS_THAN_SIGN:{this.state=y.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;break}case _.GREATER_THAN_SIGN:{this.state=y.SCRIPT_DATA,this._emitChars(">");break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.state=y.SCRIPT_DATA_ESCAPED,this._emitChars(ue);break}case _.EOF:{this._err(F.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=y.SCRIPT_DATA_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataEscapedLessThanSign(t){t===_.SOLIDUS?this.state=y.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:it(t)?(this._emitChars("<"),this.state=y.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(t)):(this._emitChars("<"),this.state=y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagOpen(t){it(t)?(this.state=y.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(t)):(this._emitChars("</"),this.state=y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataEscapedEndTagName(t){this.handleSpecialEndTag(t)&&(this._emitChars("</"),this.state=y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataDoubleEscapeStart(t){if(this.preprocessor.startsWith(Ae.SCRIPT,!1)&&is(this.preprocessor.peek(Ae.SCRIPT.length))){this._emitCodePoint(t);for(let a=0;a<Ae.SCRIPT.length;a++)this._emitCodePoint(this._consume());this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED}else this._ensureHibernation()||(this.state=y.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(t))}_stateScriptDataDoubleEscaped(t){switch(t){case _.HYPHEN_MINUS:{this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH,this._emitChars("-");break}case _.LESS_THAN_SIGN:{this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case _.NULL:{this._err(F.unexpectedNullCharacter),this._emitChars(ue);break}case _.EOF:{this._err(F.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedDash(t){switch(t){case _.HYPHEN_MINUS:{this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,this._emitChars("-");break}case _.LESS_THAN_SIGN:{this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(ue);break}case _.EOF:{this._err(F.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedDashDash(t){switch(t){case _.HYPHEN_MINUS:{this._emitChars("-");break}case _.LESS_THAN_SIGN:{this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,this._emitChars("<");break}case _.GREATER_THAN_SIGN:{this.state=y.SCRIPT_DATA,this._emitChars(">");break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(ue);break}case _.EOF:{this._err(F.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break}default:this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(t)}}_stateScriptDataDoubleEscapedLessThanSign(t){t===_.SOLIDUS?(this.state=y.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateScriptDataDoubleEscapeEnd(t){if(this.preprocessor.startsWith(Ae.SCRIPT,!1)&&is(this.preprocessor.peek(Ae.SCRIPT.length))){this._emitCodePoint(t);for(let a=0;a<Ae.SCRIPT.length;a++)this._emitCodePoint(this._consume());this.state=y.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=y.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(t))}_stateBeforeAttributeName(t){switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.SOLIDUS:case _.GREATER_THAN_SIGN:case _.EOF:{this.state=y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(t);break}case _.EQUALS_SIGN:{this._err(F.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=y.ATTRIBUTE_NAME;break}default:this._createAttr(""),this.state=y.ATTRIBUTE_NAME,this._stateAttributeName(t)}}_stateAttributeName(t){switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:case _.SOLIDUS:case _.GREATER_THAN_SIGN:case _.EOF:{this._leaveAttrName(),this.state=y.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(t);break}case _.EQUALS_SIGN:{this._leaveAttrName(),this.state=y.BEFORE_ATTRIBUTE_VALUE;break}case _.QUOTATION_MARK:case _.APOSTROPHE:case _.LESS_THAN_SIGN:{this._err(F.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(t);break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.currentAttr.name+=ue;break}default:this.currentAttr.name+=String.fromCodePoint(Jt(t)?xa(t):t)}}_stateAfterAttributeName(t){switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.SOLIDUS:{this.state=y.SELF_CLOSING_START_TAG;break}case _.EQUALS_SIGN:{this.state=y.BEFORE_ATTRIBUTE_VALUE;break}case _.GREATER_THAN_SIGN:{this.state=y.DATA,this.emitCurrentTagToken();break}case _.EOF:{this._err(F.eofInTag),this._emitEOFToken();break}default:this._createAttr(""),this.state=y.ATTRIBUTE_NAME,this._stateAttributeName(t)}}_stateBeforeAttributeValue(t){switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.QUOTATION_MARK:{this.state=y.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break}case _.APOSTROPHE:{this.state=y.ATTRIBUTE_VALUE_SINGLE_QUOTED;break}case _.GREATER_THAN_SIGN:{this._err(F.missingAttributeValue),this.state=y.DATA,this.emitCurrentTagToken();break}default:this.state=y.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(t)}}_stateAttributeValueDoubleQuoted(t){switch(t){case _.QUOTATION_MARK:{this.state=y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case _.AMPERSAND:{this._startCharacterReference();break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.currentAttr.value+=ue;break}case _.EOF:{this._err(F.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAttributeValueSingleQuoted(t){switch(t){case _.APOSTROPHE:{this.state=y.AFTER_ATTRIBUTE_VALUE_QUOTED;break}case _.AMPERSAND:{this._startCharacterReference();break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.currentAttr.value+=ue;break}case _.EOF:{this._err(F.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAttributeValueUnquoted(t){switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this._leaveAttrValue(),this.state=y.BEFORE_ATTRIBUTE_NAME;break}case _.AMPERSAND:{this._startCharacterReference();break}case _.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=y.DATA,this.emitCurrentTagToken();break}case _.NULL:{this._err(F.unexpectedNullCharacter),this.currentAttr.value+=ue;break}case _.QUOTATION_MARK:case _.APOSTROPHE:case _.LESS_THAN_SIGN:case _.EQUALS_SIGN:case _.GRAVE_ACCENT:{this._err(F.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(t);break}case _.EOF:{this._err(F.eofInTag),this._emitEOFToken();break}default:this.currentAttr.value+=String.fromCodePoint(t)}}_stateAfterAttributeValueQuoted(t){switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this._leaveAttrValue(),this.state=y.BEFORE_ATTRIBUTE_NAME;break}case _.SOLIDUS:{this._leaveAttrValue(),this.state=y.SELF_CLOSING_START_TAG;break}case _.GREATER_THAN_SIGN:{this._leaveAttrValue(),this.state=y.DATA,this.emitCurrentTagToken();break}case _.EOF:{this._err(F.eofInTag),this._emitEOFToken();break}default:this._err(F.missingWhitespaceBetweenAttributes),this.state=y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(t)}}_stateSelfClosingStartTag(t){switch(t){case _.GREATER_THAN_SIGN:{const a=this.currentToken;a.selfClosing=!0,this.state=y.DATA,this.emitCurrentTagToken();break}case _.EOF:{this._err(F.eofInTag),this._emitEOFToken();break}default:this._err(F.unexpectedSolidusInTag),this.state=y.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(t)}}_stateBogusComment(t){const a=this.currentToken;switch(t){case _.GREATER_THAN_SIGN:{this.state=y.DATA,this.emitCurrentComment(a);break}case _.EOF:{this.emitCurrentComment(a),this._emitEOFToken();break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.data+=ue;break}default:a.data+=String.fromCodePoint(t)}}_stateMarkupDeclarationOpen(t){this._consumeSequenceIfMatch(Ae.DASH_DASH,!0)?(this._createCommentToken(Ae.DASH_DASH.length+1),this.state=y.COMMENT_START):this._consumeSequenceIfMatch(Ae.DOCTYPE,!1)?(this.currentLocation=this.getCurrentLocation(Ae.DOCTYPE.length+1),this.state=y.DOCTYPE):this._consumeSequenceIfMatch(Ae.CDATA_START,!0)?this.inForeignNode?this.state=y.CDATA_SECTION:(this._err(F.cdataInHtmlContent),this._createCommentToken(Ae.CDATA_START.length+1),this.currentToken.data="[CDATA[",this.state=y.BOGUS_COMMENT):this._ensureHibernation()||(this._err(F.incorrectlyOpenedComment),this._createCommentToken(2),this.state=y.BOGUS_COMMENT,this._stateBogusComment(t))}_stateCommentStart(t){switch(t){case _.HYPHEN_MINUS:{this.state=y.COMMENT_START_DASH;break}case _.GREATER_THAN_SIGN:{this._err(F.abruptClosingOfEmptyComment),this.state=y.DATA;const a=this.currentToken;this.emitCurrentComment(a);break}default:this.state=y.COMMENT,this._stateComment(t)}}_stateCommentStartDash(t){const a=this.currentToken;switch(t){case _.HYPHEN_MINUS:{this.state=y.COMMENT_END;break}case _.GREATER_THAN_SIGN:{this._err(F.abruptClosingOfEmptyComment),this.state=y.DATA,this.emitCurrentComment(a);break}case _.EOF:{this._err(F.eofInComment),this.emitCurrentComment(a),this._emitEOFToken();break}default:a.data+="-",this.state=y.COMMENT,this._stateComment(t)}}_stateComment(t){const a=this.currentToken;switch(t){case _.HYPHEN_MINUS:{this.state=y.COMMENT_END_DASH;break}case _.LESS_THAN_SIGN:{a.data+="<",this.state=y.COMMENT_LESS_THAN_SIGN;break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.data+=ue;break}case _.EOF:{this._err(F.eofInComment),this.emitCurrentComment(a),this._emitEOFToken();break}default:a.data+=String.fromCodePoint(t)}}_stateCommentLessThanSign(t){const a=this.currentToken;switch(t){case _.EXCLAMATION_MARK:{a.data+="!",this.state=y.COMMENT_LESS_THAN_SIGN_BANG;break}case _.LESS_THAN_SIGN:{a.data+="<";break}default:this.state=y.COMMENT,this._stateComment(t)}}_stateCommentLessThanSignBang(t){t===_.HYPHEN_MINUS?this.state=y.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=y.COMMENT,this._stateComment(t))}_stateCommentLessThanSignBangDash(t){t===_.HYPHEN_MINUS?this.state=y.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=y.COMMENT_END_DASH,this._stateCommentEndDash(t))}_stateCommentLessThanSignBangDashDash(t){t!==_.GREATER_THAN_SIGN&&t!==_.EOF&&this._err(F.nestedComment),this.state=y.COMMENT_END,this._stateCommentEnd(t)}_stateCommentEndDash(t){const a=this.currentToken;switch(t){case _.HYPHEN_MINUS:{this.state=y.COMMENT_END;break}case _.EOF:{this._err(F.eofInComment),this.emitCurrentComment(a),this._emitEOFToken();break}default:a.data+="-",this.state=y.COMMENT,this._stateComment(t)}}_stateCommentEnd(t){const a=this.currentToken;switch(t){case _.GREATER_THAN_SIGN:{this.state=y.DATA,this.emitCurrentComment(a);break}case _.EXCLAMATION_MARK:{this.state=y.COMMENT_END_BANG;break}case _.HYPHEN_MINUS:{a.data+="-";break}case _.EOF:{this._err(F.eofInComment),this.emitCurrentComment(a),this._emitEOFToken();break}default:a.data+="--",this.state=y.COMMENT,this._stateComment(t)}}_stateCommentEndBang(t){const a=this.currentToken;switch(t){case _.HYPHEN_MINUS:{a.data+="--!",this.state=y.COMMENT_END_DASH;break}case _.GREATER_THAN_SIGN:{this._err(F.incorrectlyClosedComment),this.state=y.DATA,this.emitCurrentComment(a);break}case _.EOF:{this._err(F.eofInComment),this.emitCurrentComment(a),this._emitEOFToken();break}default:a.data+="--!",this.state=y.COMMENT,this._stateComment(t)}}_stateDoctype(t){switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this.state=y.BEFORE_DOCTYPE_NAME;break}case _.GREATER_THAN_SIGN:{this.state=y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(t);break}case _.EOF:{this._err(F.eofInDoctype),this._createDoctypeToken(null);const a=this.currentToken;a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.missingWhitespaceBeforeDoctypeName),this.state=y.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(t)}}_stateBeforeDoctypeName(t){if(Jt(t))this._createDoctypeToken(String.fromCharCode(xa(t))),this.state=y.DOCTYPE_NAME;else switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.NULL:{this._err(F.unexpectedNullCharacter),this._createDoctypeToken(ue),this.state=y.DOCTYPE_NAME;break}case _.GREATER_THAN_SIGN:{this._err(F.missingDoctypeName),this._createDoctypeToken(null);const a=this.currentToken;a.forceQuirks=!0,this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.EOF:{this._err(F.eofInDoctype),this._createDoctypeToken(null);const a=this.currentToken;a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._createDoctypeToken(String.fromCodePoint(t)),this.state=y.DOCTYPE_NAME}}_stateDoctypeName(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this.state=y.AFTER_DOCTYPE_NAME;break}case _.GREATER_THAN_SIGN:{this.state=y.DATA,this.emitCurrentDoctype(a);break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.name+=ue;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:a.name+=String.fromCodePoint(Jt(t)?xa(t):t)}}_stateAfterDoctypeName(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.GREATER_THAN_SIGN:{this.state=y.DATA,this.emitCurrentDoctype(a);break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._consumeSequenceIfMatch(Ae.PUBLIC,!1)?this.state=y.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch(Ae.SYSTEM,!1)?this.state=y.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(F.invalidCharacterSequenceAfterDoctypeName),a.forceQuirks=!0,this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t))}}_stateAfterDoctypePublicKeyword(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this.state=y.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break}case _.QUOTATION_MARK:{this._err(F.missingWhitespaceAfterDoctypePublicKeyword),a.publicId="",this.state=y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case _.APOSTROPHE:{this._err(F.missingWhitespaceAfterDoctypePublicKeyword),a.publicId="",this.state=y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case _.GREATER_THAN_SIGN:{this._err(F.missingDoctypePublicIdentifier),a.forceQuirks=!0,this.state=y.DATA,this.emitCurrentDoctype(a);break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.missingQuoteBeforeDoctypePublicIdentifier),a.forceQuirks=!0,this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBeforeDoctypePublicIdentifier(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.QUOTATION_MARK:{a.publicId="",this.state=y.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break}case _.APOSTROPHE:{a.publicId="",this.state=y.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break}case _.GREATER_THAN_SIGN:{this._err(F.missingDoctypePublicIdentifier),a.forceQuirks=!0,this.state=y.DATA,this.emitCurrentDoctype(a);break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.missingQuoteBeforeDoctypePublicIdentifier),a.forceQuirks=!0,this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateDoctypePublicIdentifierDoubleQuoted(t){const a=this.currentToken;switch(t){case _.QUOTATION_MARK:{this.state=y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.publicId+=ue;break}case _.GREATER_THAN_SIGN:{this._err(F.abruptDoctypePublicIdentifier),a.forceQuirks=!0,this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:a.publicId+=String.fromCodePoint(t)}}_stateDoctypePublicIdentifierSingleQuoted(t){const a=this.currentToken;switch(t){case _.APOSTROPHE:{this.state=y.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.publicId+=ue;break}case _.GREATER_THAN_SIGN:{this._err(F.abruptDoctypePublicIdentifier),a.forceQuirks=!0,this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:a.publicId+=String.fromCodePoint(t)}}_stateAfterDoctypePublicIdentifier(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this.state=y.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break}case _.GREATER_THAN_SIGN:{this.state=y.DATA,this.emitCurrentDoctype(a);break}case _.QUOTATION_MARK:{this._err(F.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case _.APOSTROPHE:{this._err(F.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.missingQuoteBeforeDoctypeSystemIdentifier),a.forceQuirks=!0,this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBetweenDoctypePublicAndSystemIdentifiers(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.GREATER_THAN_SIGN:{this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.QUOTATION_MARK:{a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case _.APOSTROPHE:{a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.missingQuoteBeforeDoctypeSystemIdentifier),a.forceQuirks=!0,this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateAfterDoctypeSystemKeyword(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:{this.state=y.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break}case _.QUOTATION_MARK:{this._err(F.missingWhitespaceAfterDoctypeSystemKeyword),a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case _.APOSTROPHE:{this._err(F.missingWhitespaceAfterDoctypeSystemKeyword),a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case _.GREATER_THAN_SIGN:{this._err(F.missingDoctypeSystemIdentifier),a.forceQuirks=!0,this.state=y.DATA,this.emitCurrentDoctype(a);break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.missingQuoteBeforeDoctypeSystemIdentifier),a.forceQuirks=!0,this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBeforeDoctypeSystemIdentifier(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.QUOTATION_MARK:{a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break}case _.APOSTROPHE:{a.systemId="",this.state=y.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break}case _.GREATER_THAN_SIGN:{this._err(F.missingDoctypeSystemIdentifier),a.forceQuirks=!0,this.state=y.DATA,this.emitCurrentDoctype(a);break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.missingQuoteBeforeDoctypeSystemIdentifier),a.forceQuirks=!0,this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateDoctypeSystemIdentifierDoubleQuoted(t){const a=this.currentToken;switch(t){case _.QUOTATION_MARK:{this.state=y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.systemId+=ue;break}case _.GREATER_THAN_SIGN:{this._err(F.abruptDoctypeSystemIdentifier),a.forceQuirks=!0,this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:a.systemId+=String.fromCodePoint(t)}}_stateDoctypeSystemIdentifierSingleQuoted(t){const a=this.currentToken;switch(t){case _.APOSTROPHE:{this.state=y.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break}case _.NULL:{this._err(F.unexpectedNullCharacter),a.systemId+=ue;break}case _.GREATER_THAN_SIGN:{this._err(F.abruptDoctypeSystemIdentifier),a.forceQuirks=!0,this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:a.systemId+=String.fromCodePoint(t)}}_stateAfterDoctypeSystemIdentifier(t){const a=this.currentToken;switch(t){case _.SPACE:case _.LINE_FEED:case _.TABULATION:case _.FORM_FEED:break;case _.GREATER_THAN_SIGN:{this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.EOF:{this._err(F.eofInDoctype),a.forceQuirks=!0,this.emitCurrentDoctype(a),this._emitEOFToken();break}default:this._err(F.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=y.BOGUS_DOCTYPE,this._stateBogusDoctype(t)}}_stateBogusDoctype(t){const a=this.currentToken;switch(t){case _.GREATER_THAN_SIGN:{this.emitCurrentDoctype(a),this.state=y.DATA;break}case _.NULL:{this._err(F.unexpectedNullCharacter);break}case _.EOF:{this.emitCurrentDoctype(a),this._emitEOFToken();break}}}_stateCdataSection(t){switch(t){case _.RIGHT_SQUARE_BRACKET:{this.state=y.CDATA_SECTION_BRACKET;break}case _.EOF:{this._err(F.eofInCdata),this._emitEOFToken();break}default:this._emitCodePoint(t)}}_stateCdataSectionBracket(t){t===_.RIGHT_SQUARE_BRACKET?this.state=y.CDATA_SECTION_END:(this._emitChars("]"),this.state=y.CDATA_SECTION,this._stateCdataSection(t))}_stateCdataSectionEnd(t){switch(t){case _.GREATER_THAN_SIGN:{this.state=y.DATA;break}case _.RIGHT_SQUARE_BRACKET:{this._emitChars("]");break}default:this._emitChars("]]"),this.state=y.CDATA_SECTION,this._stateCdataSection(t)}}_stateCharacterReference(){let t=this.entityDecoder.write(this.preprocessor.html,this.preprocessor.pos);if(t<0)if(this.preprocessor.lastChunkWritten)t=this.entityDecoder.end();else{this.active=!1,this.preprocessor.pos=this.preprocessor.html.length-1,this.consumedAfterSnapshot=0,this.preprocessor.endOfChunkHit=!0;return}t===0?(this.preprocessor.pos=this.entityStartPos,this._flushCodePointConsumedAsCharacterReference(_.AMPERSAND),this.state=!this._isCharacterReferenceInAttribute()&&ns(this.preprocessor.peek(1))?y.AMBIGUOUS_AMPERSAND:this.returnState):this.state=this.returnState}_stateAmbiguousAmpersand(t){ns(t)?this._flushCodePointConsumedAsCharacterReference(t):(t===_.SEMICOLON&&this._err(F.unknownNamedCharacterReference),this.state=this.returnState,this._callState(t))}}const Ic=new Set([c.DD,c.DT,c.LI,c.OPTGROUP,c.OPTION,c.P,c.RB,c.RP,c.RT,c.RTC]),ss=new Set([...Ic,c.CAPTION,c.COLGROUP,c.TBODY,c.TD,c.TFOOT,c.TH,c.THEAD,c.TR]),Ya=new Set([c.APPLET,c.CAPTION,c.HTML,c.MARQUEE,c.OBJECT,c.TABLE,c.TD,c.TEMPLATE,c.TH]),lM=new Set([...Ya,c.OL,c.UL]),fM=new Set([...Ya,c.BUTTON]),os=new Set([c.ANNOTATION_XML,c.MI,c.MN,c.MO,c.MS,c.MTEXT]),cs=new Set([c.DESC,c.FOREIGN_OBJECT,c.TITLE]),hM=new Set([c.TR,c.TEMPLATE,c.HTML]),dM=new Set([c.TBODY,c.TFOOT,c.THEAD,c.TEMPLATE,c.HTML]),pM=new Set([c.TABLE,c.TEMPLATE,c.HTML]),mM=new Set([c.TD,c.TH]);class _M{get currentTmplContentOrNode(){return this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):this.current}constructor(t,a,r){this.treeAdapter=a,this.handler=r,this.items=[],this.tagIDs=[],this.stackTop=-1,this.tmplCount=0,this.currentTagId=c.UNKNOWN,this.current=t}_indexOf(t){return this.items.lastIndexOf(t,this.stackTop)}_isInTemplate(){return this.currentTagId===c.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===P.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop],this.currentTagId=this.tagIDs[this.stackTop]}push(t,a){this.stackTop++,this.items[this.stackTop]=t,this.current=t,this.tagIDs[this.stackTop]=a,this.currentTagId=a,this._isInTemplate()&&this.tmplCount++,this.handler.onItemPush(t,a,!0)}pop(){const t=this.current;this.tmplCount>0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!0)}replace(t,a){const r=this._indexOf(t);this.items[r]=a,r===this.stackTop&&(this.current=a)}insertAfter(t,a,r){const n=this._indexOf(t)+1;this.items.splice(n,0,a),this.tagIDs.splice(n,0,r),this.stackTop++,n===this.stackTop&&this._updateCurrentElement(),this.handler.onItemPush(this.current,this.currentTagId,n===this.stackTop)}popUntilTagNamePopped(t){let a=this.stackTop+1;do a=this.tagIDs.lastIndexOf(t,a-1);while(a>0&&this.treeAdapter.getNamespaceURI(this.items[a])!==P.HTML);this.shortenToLength(a<0?0:a)}shortenToLength(t){for(;this.stackTop>=t;){const a=this.current;this.tmplCount>0&&this._isInTemplate()&&(this.tmplCount-=1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(a,this.stackTop<t)}}popUntilElementPopped(t){const a=this._indexOf(t);this.shortenToLength(a<0?0:a)}popUntilPopped(t,a){const r=this._indexOfTagNames(t,a);this.shortenToLength(r<0?0:r)}popUntilNumberedHeaderPopped(){this.popUntilPopped(Jr,P.HTML)}popUntilTableCellPopped(){this.popUntilPopped(mM,P.HTML)}popAllUpToHtmlElement(){this.tmplCount=0,this.shortenToLength(1)}_indexOfTagNames(t,a){for(let r=this.stackTop;r>=0;r--)if(t.has(this.tagIDs[r])&&this.treeAdapter.getNamespaceURI(this.items[r])===a)return r;return-1}clearBackTo(t,a){const r=this._indexOfTagNames(t,a);this.shortenToLength(r+1)}clearBackToTableContext(){this.clearBackTo(pM,P.HTML)}clearBackToTableBodyContext(){this.clearBackTo(dM,P.HTML)}clearBackToTableRowContext(){this.clearBackTo(hM,P.HTML)}remove(t){const a=this._indexOf(t);a>=0&&(a===this.stackTop?this.pop():(this.items.splice(a,1),this.tagIDs.splice(a,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===c.BODY?this.items[1]:null}contains(t){return this._indexOf(t)>-1}getCommonAncestor(t){const a=this._indexOf(t)-1;return a>=0?this.items[a]:null}isRootHtmlElementCurrent(){return this.stackTop===0&&this.tagIDs[0]===c.HTML}hasInDynamicScope(t,a){for(let r=this.stackTop;r>=0;r--){const n=this.tagIDs[r];switch(this.treeAdapter.getNamespaceURI(this.items[r])){case P.HTML:{if(n===t)return!0;if(a.has(n))return!1;break}case P.SVG:{if(cs.has(n))return!1;break}case P.MATHML:{if(os.has(n))return!1;break}}}return!0}hasInScope(t){return this.hasInDynamicScope(t,Ya)}hasInListItemScope(t){return this.hasInDynamicScope(t,lM)}hasInButtonScope(t){return this.hasInDynamicScope(t,fM)}hasNumberedHeaderInScope(){for(let t=this.stackTop;t>=0;t--){const a=this.tagIDs[t];switch(this.treeAdapter.getNamespaceURI(this.items[t])){case P.HTML:{if(Jr.has(a))return!0;if(Ya.has(a))return!1;break}case P.SVG:{if(cs.has(a))return!1;break}case P.MATHML:{if(os.has(a))return!1;break}}}return!0}hasInTableScope(t){for(let a=this.stackTop;a>=0;a--)if(this.treeAdapter.getNamespaceURI(this.items[a])===P.HTML)switch(this.tagIDs[a]){case t:return!0;case c.TABLE:case c.HTML:return!1}return!0}hasTableBodyContextInTableScope(){for(let t=this.stackTop;t>=0;t--)if(this.treeAdapter.getNamespaceURI(this.items[t])===P.HTML)switch(this.tagIDs[t]){case c.TBODY:case c.THEAD:case c.TFOOT:return!0;case c.TABLE:case c.HTML:return!1}return!0}hasInSelectScope(t){for(let a=this.stackTop;a>=0;a--)if(this.treeAdapter.getNamespaceURI(this.items[a])===P.HTML)switch(this.tagIDs[a]){case t:return!0;case c.OPTION:case c.OPTGROUP:break;default:return!1}return!0}generateImpliedEndTags(){for(;Ic.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;ss.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(t){for(;this.currentTagId!==t&&ss.has(this.currentTagId);)this.pop()}}const Dr=3;var je;(function(e){e[e.Marker=0]="Marker",e[e.Element=1]="Element"})(je||(je={}));const us={type:je.Marker};class gM{constructor(t){this.treeAdapter=t,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(t,a){const r=[],n=a.length,s=this.treeAdapter.getTagName(t),i=this.treeAdapter.getNamespaceURI(t);for(let o=0;o<this.entries.length;o++){const u=this.entries[o];if(u.type===je.Marker)break;const{element:l}=u;if(this.treeAdapter.getTagName(l)===s&&this.treeAdapter.getNamespaceURI(l)===i){const p=this.treeAdapter.getAttrList(l);p.length===n&&r.push({idx:o,attrs:p})}}return r}_ensureNoahArkCondition(t){if(this.entries.length<Dr)return;const a=this.treeAdapter.getAttrList(t),r=this._getNoahArkConditionCandidates(t,a);if(r.length<Dr)return;const n=new Map(a.map(i=>[i.name,i.value]));let s=0;for(let i=0;i<r.length;i++){const o=r[i];o.attrs.every(u=>n.get(u.name)===u.value)&&(s+=1,s>=Dr&&this.entries.splice(o.idx,1))}}insertMarker(){this.entries.unshift(us)}pushElement(t,a){this._ensureNoahArkCondition(t),this.entries.unshift({type:je.Element,element:t,token:a})}insertElementAfterBookmark(t,a){const r=this.entries.indexOf(this.bookmark);this.entries.splice(r,0,{type:je.Element,element:t,token:a})}removeEntry(t){const a=this.entries.indexOf(t);a>=0&&this.entries.splice(a,1)}clearToLastMarker(){const t=this.entries.indexOf(us);t>=0?this.entries.splice(0,t+1):this.entries.length=0}getElementEntryInScopeWithTagName(t){const a=this.entries.find(r=>r.type===je.Marker||this.treeAdapter.getTagName(r.element)===t);return a&&a.type===je.Element?a:null}getElementEntry(t){return this.entries.find(a=>a.type===je.Element&&a.element===t)}}const st={createDocument(){return{nodeName:"#document",mode:Fe.NO_QUIRKS,childNodes:[]}},createDocumentFragment(){return{nodeName:"#document-fragment",childNodes:[]}},createElement(e,t,a){return{nodeName:e,tagName:e,attrs:a,namespaceURI:t,childNodes:[],parentNode:null}},createCommentNode(e){return{nodeName:"#comment",data:e,parentNode:null}},createTextNode(e){return{nodeName:"#text",value:e,parentNode:null}},appendChild(e,t){e.childNodes.push(t),t.parentNode=e},insertBefore(e,t,a){const r=e.childNodes.indexOf(a);e.childNodes.splice(r,0,t),t.parentNode=e},setTemplateContent(e,t){e.content=t},getTemplateContent(e){return e.content},setDocumentType(e,t,a,r){const n=e.childNodes.find(s=>s.nodeName==="#documentType");if(n)n.name=t,n.publicId=a,n.systemId=r;else{const s={nodeName:"#documentType",name:t,publicId:a,systemId:r,parentNode:null};st.appendChild(e,s)}},setDocumentMode(e,t){e.mode=t},getDocumentMode(e){return e.mode},detachNode(e){if(e.parentNode){const t=e.parentNode.childNodes.indexOf(e);e.parentNode.childNodes.splice(t,1),e.parentNode=null}},insertText(e,t){if(e.childNodes.length>0){const a=e.childNodes[e.childNodes.length-1];if(st.isTextNode(a)){a.value+=t;return}}st.appendChild(e,st.createTextNode(t))},insertTextBefore(e,t,a){const r=e.childNodes[e.childNodes.indexOf(a)-1];r&&st.isTextNode(r)?r.value+=t:st.insertBefore(e,st.createTextNode(t),a)},adoptAttributes(e,t){const a=new Set(e.attrs.map(r=>r.name));for(let r=0;r<t.length;r++)a.has(t[r].name)||e.attrs.push(t[r])},getFirstChild(e){return e.childNodes[0]},getChildNodes(e){return e.childNodes},getParentNode(e){return e.parentNode},getAttrList(e){return e.attrs},getTagName(e){return e.tagName},getNamespaceURI(e){return e.namespaceURI},getTextNodeContent(e){return e.value},getCommentNodeContent(e){return e.data},getDocumentTypeNodeName(e){return e.name},getDocumentTypeNodePublicId(e){return e.publicId},getDocumentTypeNodeSystemId(e){return e.systemId},isTextNode(e){return e.nodeName==="#text"},isCommentNode(e){return e.nodeName==="#comment"},isDocumentTypeNode(e){return e.nodeName==="#documentType"},isElementNode(e){return Object.prototype.hasOwnProperty.call(e,"tagName")},setNodeSourceCodeLocation(e,t){e.sourceCodeLocation=t},getNodeSourceCodeLocation(e){return e.sourceCodeLocation},updateNodeSourceCodeLocation(e,t){e.sourceCodeLocation={...e.sourceCodeLocation,...t}}},Nc="html",yM="about:legacy-compat",kM="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd",Fc=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],bM=[...Fc,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],wM=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),Oc=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],EM=[...Oc,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];function ls(e,t){return t.some(a=>e.startsWith(a))}function TM(e){return e.name===Nc&&e.publicId===null&&(e.systemId===null||e.systemId===yM)}function AM(e){if(e.name!==Nc)return Fe.QUIRKS;const{systemId:t}=e;if(t&&t.toLowerCase()===kM)return Fe.QUIRKS;let{publicId:a}=e;if(a!==null){if(a=a.toLowerCase(),wM.has(a))return Fe.QUIRKS;let r=t===null?bM:Fc;if(ls(a,r))return Fe.QUIRKS;if(r=t===null?Oc:EM,ls(a,r))return Fe.LIMITED_QUIRKS}return Fe.NO_QUIRKS}const fs={TEXT_HTML:"text/html",APPLICATION_XML:"application/xhtml+xml"},CM="definitionurl",xM="definitionURL",DM=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map(e=>[e.toLowerCase(),e])),zM=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:P.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:P.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:P.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:P.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:P.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:P.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:P.XLINK}],["xml:lang",{prefix:"xml",name:"lang",namespace:P.XML}],["xml:space",{prefix:"xml",name:"space",namespace:P.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:P.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:P.XMLNS}]]),SM=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map(e=>[e.toLowerCase(),e])),IM=new Set([c.B,c.BIG,c.BLOCKQUOTE,c.BODY,c.BR,c.CENTER,c.CODE,c.DD,c.DIV,c.DL,c.DT,c.EM,c.EMBED,c.H1,c.H2,c.H3,c.H4,c.H5,c.H6,c.HEAD,c.HR,c.I,c.IMG,c.LI,c.LISTING,c.MENU,c.META,c.NOBR,c.OL,c.P,c.PRE,c.RUBY,c.S,c.SMALL,c.SPAN,c.STRONG,c.STRIKE,c.SUB,c.SUP,c.TABLE,c.TT,c.U,c.UL,c.VAR]);function NM(e){const t=e.tagID;return t===c.FONT&&e.attrs.some(({name:r})=>r===bt.COLOR||r===bt.SIZE||r===bt.FACE)||IM.has(t)}function Lc(e){for(let t=0;t<e.attrs.length;t++)if(e.attrs[t].name===CM){e.attrs[t].name=xM;break}}function Rc(e){for(let t=0;t<e.attrs.length;t++){const a=DM.get(e.attrs[t].name);a!=null&&(e.attrs[t].name=a)}}function zn(e){for(let t=0;t<e.attrs.length;t++){const a=zM.get(e.attrs[t].name);a&&(e.attrs[t].prefix=a.prefix,e.attrs[t].name=a.name,e.attrs[t].namespace=a.namespace)}}function FM(e){const t=SM.get(e.tagName);t!=null&&(e.tagName=t,e.tagID=Ht(e.tagName))}function OM(e,t){return t===P.MATHML&&(e===c.MI||e===c.MO||e===c.MN||e===c.MS||e===c.MTEXT)}function LM(e,t,a){if(t===P.MATHML&&e===c.ANNOTATION_XML){for(let r=0;r<a.length;r++)if(a[r].name===bt.ENCODING){const n=a[r].value.toLowerCase();return n===fs.TEXT_HTML||n===fs.APPLICATION_XML}}return t===P.SVG&&(e===c.FOREIGN_OBJECT||e===c.DESC||e===c.TITLE)}function RM(e,t,a,r){return(!r||r===P.HTML)&&LM(e,t,a)||(!r||r===P.MATHML)&&OM(e,t)}const vM="hidden",PM=8,BM=3;var k;(function(e){e[e.INITIAL=0]="INITIAL",e[e.BEFORE_HTML=1]="BEFORE_HTML",e[e.BEFORE_HEAD=2]="BEFORE_HEAD",e[e.IN_HEAD=3]="IN_HEAD",e[e.IN_HEAD_NO_SCRIPT=4]="IN_HEAD_NO_SCRIPT",e[e.AFTER_HEAD=5]="AFTER_HEAD",e[e.IN_BODY=6]="IN_BODY",e[e.TEXT=7]="TEXT",e[e.IN_TABLE=8]="IN_TABLE",e[e.IN_TABLE_TEXT=9]="IN_TABLE_TEXT",e[e.IN_CAPTION=10]="IN_CAPTION",e[e.IN_COLUMN_GROUP=11]="IN_COLUMN_GROUP",e[e.IN_TABLE_BODY=12]="IN_TABLE_BODY",e[e.IN_ROW=13]="IN_ROW",e[e.IN_CELL=14]="IN_CELL",e[e.IN_SELECT=15]="IN_SELECT",e[e.IN_SELECT_IN_TABLE=16]="IN_SELECT_IN_TABLE",e[e.IN_TEMPLATE=17]="IN_TEMPLATE",e[e.AFTER_BODY=18]="AFTER_BODY",e[e.IN_FRAMESET=19]="IN_FRAMESET",e[e.AFTER_FRAMESET=20]="AFTER_FRAMESET",e[e.AFTER_AFTER_BODY=21]="AFTER_AFTER_BODY",e[e.AFTER_AFTER_FRAMESET=22]="AFTER_AFTER_FRAMESET"})(k||(k={}));const MM={startLine:-1,startCol:-1,startOffset:-1,endLine:-1,endCol:-1,endOffset:-1},vc=new Set([c.TABLE,c.TBODY,c.TFOOT,c.THEAD,c.TR]),hs={scriptingEnabled:!0,sourceCodeLocationInfo:!1,treeAdapter:st,onParseError:null};class ds{constructor(t,a,r=null,n=null){this.fragmentContext=r,this.scriptHandler=n,this.currentToken=null,this.stopped=!1,this.insertionMode=k.INITIAL,this.originalInsertionMode=k.INITIAL,this.headElement=null,this.formElement=null,this.currentNotInHTML=!1,this.tmplInsertionModeStack=[],this.pendingCharacterTokens=[],this.hasNonWhitespacePendingCharacterToken=!1,this.framesetOk=!0,this.skipNextNewLine=!1,this.fosterParentingEnabled=!1,this.options={...hs,...t},this.treeAdapter=this.options.treeAdapter,this.onParseError=this.options.onParseError,this.onParseError&&(this.options.sourceCodeLocationInfo=!0),this.document=a??this.treeAdapter.createDocument(),this.tokenizer=new uM(this.options,this),this.activeFormattingElements=new gM(this.treeAdapter),this.fragmentContextID=r?Ht(this.treeAdapter.getTagName(r)):c.UNKNOWN,this._setContextModes(r??this.document,this.fragmentContextID),this.openElements=new _M(this.document,this.treeAdapter,this)}static parse(t,a){const r=new this(a);return r.tokenizer.write(t,!0),r.document}static getFragmentParser(t,a){const r={...hs,...a};t??(t=r.treeAdapter.createElement(z.TEMPLATE,P.HTML,[]));const n=r.treeAdapter.createElement("documentmock",P.HTML,[]),s=new this(r,n,t);return s.fragmentContextID===c.TEMPLATE&&s.tmplInsertionModeStack.unshift(k.IN_TEMPLATE),s._initTokenizerForFragmentParsing(),s._insertFakeRootElement(),s._resetInsertionMode(),s._findFormInFragmentContext(),s}getFragment(){const t=this.treeAdapter.getFirstChild(this.document),a=this.treeAdapter.createDocumentFragment();return this._adoptNodes(t,a),a}_err(t,a,r){var n;if(!this.onParseError)return;const s=(n=t.location)!==null&&n!==void 0?n:MM,i={code:a,startLine:s.startLine,startCol:s.startCol,startOffset:s.startOffset,endLine:r?s.startLine:s.endLine,endCol:r?s.startCol:s.endCol,endOffset:r?s.startOffset:s.endOffset};this.onParseError(i)}onItemPush(t,a,r){var n,s;(s=(n=this.treeAdapter).onItemPush)===null||s===void 0||s.call(n,t),r&&this.openElements.stackTop>0&&this._setContextModes(t,a)}onItemPop(t,a){var r,n;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(t,this.currentToken),(n=(r=this.treeAdapter).onItemPop)===null||n===void 0||n.call(r,t,this.openElements.current),a){let s,i;this.openElements.stackTop===0&&this.fragmentContext?(s=this.fragmentContext,i=this.fragmentContextID):{current:s,currentTagId:i}=this.openElements,this._setContextModes(s,i)}}_setContextModes(t,a){const r=t===this.document||this.treeAdapter.getNamespaceURI(t)===P.HTML;this.currentNotInHTML=!r,this.tokenizer.inForeignNode=!r&&!this._isIntegrationPoint(a,t)}_switchToTextParsing(t,a){this._insertElement(t,P.HTML),this.tokenizer.state=a,this.originalInsertionMode=this.insertionMode,this.insertionMode=k.TEXT}switchToPlaintextParsing(){this.insertionMode=k.TEXT,this.originalInsertionMode=k.IN_BODY,this.tokenizer.state=fe.PLAINTEXT}_getAdjustedCurrentElement(){return this.openElements.stackTop===0&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let t=this.fragmentContext;for(;t;){if(this.treeAdapter.getTagName(t)===z.FORM){this.formElement=t;break}t=this.treeAdapter.getParentNode(t)}}_initTokenizerForFragmentParsing(){if(!(!this.fragmentContext||this.treeAdapter.getNamespaceURI(this.fragmentContext)!==P.HTML))switch(this.fragmentContextID){case c.TITLE:case c.TEXTAREA:{this.tokenizer.state=fe.RCDATA;break}case c.STYLE:case c.XMP:case c.IFRAME:case c.NOEMBED:case c.NOFRAMES:case c.NOSCRIPT:{this.tokenizer.state=fe.RAWTEXT;break}case c.SCRIPT:{this.tokenizer.state=fe.SCRIPT_DATA;break}case c.PLAINTEXT:{this.tokenizer.state=fe.PLAINTEXT;break}}}_setDocumentType(t){const a=t.name||"",r=t.publicId||"",n=t.systemId||"";if(this.treeAdapter.setDocumentType(this.document,a,r,n),t.location){const i=this.treeAdapter.getChildNodes(this.document).find(o=>this.treeAdapter.isDocumentTypeNode(o));i&&this.treeAdapter.setNodeSourceCodeLocation(i,t.location)}}_attachElementToTree(t,a){if(this.options.sourceCodeLocationInfo){const r=a&&{...a,startTag:a};this.treeAdapter.setNodeSourceCodeLocation(t,r)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(t);else{const r=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(r,t)}}_appendElement(t,a){const r=this.treeAdapter.createElement(t.tagName,a,t.attrs);this._attachElementToTree(r,t.location)}_insertElement(t,a){const r=this.treeAdapter.createElement(t.tagName,a,t.attrs);this._attachElementToTree(r,t.location),this.openElements.push(r,t.tagID)}_insertFakeElement(t,a){const r=this.treeAdapter.createElement(t,P.HTML,[]);this._attachElementToTree(r,null),this.openElements.push(r,a)}_insertTemplate(t){const a=this.treeAdapter.createElement(t.tagName,P.HTML,t.attrs),r=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(a,r),this._attachElementToTree(a,t.location),this.openElements.push(a,t.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(r,null)}_insertFakeRootElement(){const t=this.treeAdapter.createElement(z.HTML,P.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(t,null),this.treeAdapter.appendChild(this.openElements.current,t),this.openElements.push(t,c.HTML)}_appendCommentNode(t,a){const r=this.treeAdapter.createCommentNode(t.data);this.treeAdapter.appendChild(a,r),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(r,t.location)}_insertCharacters(t){let a,r;if(this._shouldFosterParentOnInsertion()?({parent:a,beforeElement:r}=this._findFosterParentingLocation(),r?this.treeAdapter.insertTextBefore(a,t.chars,r):this.treeAdapter.insertText(a,t.chars)):(a=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(a,t.chars)),!t.location)return;const n=this.treeAdapter.getChildNodes(a),s=r?n.lastIndexOf(r):n.length,i=n[s-1];if(this.treeAdapter.getNodeSourceCodeLocation(i)){const{endLine:u,endCol:l,endOffset:p}=t.location;this.treeAdapter.updateNodeSourceCodeLocation(i,{endLine:u,endCol:l,endOffset:p})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(i,t.location)}_adoptNodes(t,a){for(let r=this.treeAdapter.getFirstChild(t);r;r=this.treeAdapter.getFirstChild(t))this.treeAdapter.detachNode(r),this.treeAdapter.appendChild(a,r)}_setEndLocation(t,a){if(this.treeAdapter.getNodeSourceCodeLocation(t)&&a.location){const r=a.location,n=this.treeAdapter.getTagName(t),s=a.type===ee.END_TAG&&n===a.tagName?{endTag:{...r},endLine:r.endLine,endCol:r.endCol,endOffset:r.endOffset}:{endLine:r.startLine,endCol:r.startCol,endOffset:r.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(t,s)}}shouldProcessStartTagTokenInForeignContent(t){if(!this.currentNotInHTML)return!1;let a,r;return this.openElements.stackTop===0&&this.fragmentContext?(a=this.fragmentContext,r=this.fragmentContextID):{current:a,currentTagId:r}=this.openElements,t.tagID===c.SVG&&this.treeAdapter.getTagName(a)===z.ANNOTATION_XML&&this.treeAdapter.getNamespaceURI(a)===P.MATHML?!1:this.tokenizer.inForeignNode||(t.tagID===c.MGLYPH||t.tagID===c.MALIGNMARK)&&!this._isIntegrationPoint(r,a,P.HTML)}_processToken(t){switch(t.type){case ee.CHARACTER:{this.onCharacter(t);break}case ee.NULL_CHARACTER:{this.onNullCharacter(t);break}case ee.COMMENT:{this.onComment(t);break}case ee.DOCTYPE:{this.onDoctype(t);break}case ee.START_TAG:{this._processStartTag(t);break}case ee.END_TAG:{this.onEndTag(t);break}case ee.EOF:{this.onEof(t);break}case ee.WHITESPACE_CHARACTER:{this.onWhitespaceCharacter(t);break}}}_isIntegrationPoint(t,a,r){const n=this.treeAdapter.getNamespaceURI(a),s=this.treeAdapter.getAttrList(a);return RM(t,n,s,r)}_reconstructActiveFormattingElements(){const t=this.activeFormattingElements.entries.length;if(t){const a=this.activeFormattingElements.entries.findIndex(n=>n.type===je.Marker||this.openElements.contains(n.element)),r=a<0?t-1:a-1;for(let n=r;n>=0;n--){const s=this.activeFormattingElements.entries[n];this._insertElement(s.token,this.treeAdapter.getNamespaceURI(s.element)),s.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=k.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(c.P),this.openElements.popUntilTagNamePopped(c.P)}_resetInsertionMode(){for(let t=this.openElements.stackTop;t>=0;t--)switch(t===0&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[t]){case c.TR:{this.insertionMode=k.IN_ROW;return}case c.TBODY:case c.THEAD:case c.TFOOT:{this.insertionMode=k.IN_TABLE_BODY;return}case c.CAPTION:{this.insertionMode=k.IN_CAPTION;return}case c.COLGROUP:{this.insertionMode=k.IN_COLUMN_GROUP;return}case c.TABLE:{this.insertionMode=k.IN_TABLE;return}case c.BODY:{this.insertionMode=k.IN_BODY;return}case c.FRAMESET:{this.insertionMode=k.IN_FRAMESET;return}case c.SELECT:{this._resetInsertionModeForSelect(t);return}case c.TEMPLATE:{this.insertionMode=this.tmplInsertionModeStack[0];return}case c.HTML:{this.insertionMode=this.headElement?k.AFTER_HEAD:k.BEFORE_HEAD;return}case c.TD:case c.TH:{if(t>0){this.insertionMode=k.IN_CELL;return}break}case c.HEAD:{if(t>0){this.insertionMode=k.IN_HEAD;return}break}}this.insertionMode=k.IN_BODY}_resetInsertionModeForSelect(t){if(t>0)for(let a=t-1;a>0;a--){const r=this.openElements.tagIDs[a];if(r===c.TEMPLATE)break;if(r===c.TABLE){this.insertionMode=k.IN_SELECT_IN_TABLE;return}}this.insertionMode=k.IN_SELECT}_isElementCausesFosterParenting(t){return vc.has(t)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let t=this.openElements.stackTop;t>=0;t--){const a=this.openElements.items[t];switch(this.openElements.tagIDs[t]){case c.TEMPLATE:{if(this.treeAdapter.getNamespaceURI(a)===P.HTML)return{parent:this.treeAdapter.getTemplateContent(a),beforeElement:null};break}case c.TABLE:{const r=this.treeAdapter.getParentNode(a);return r?{parent:r,beforeElement:a}:{parent:this.openElements.items[t-1],beforeElement:null}}}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(t){const a=this._findFosterParentingLocation();a.beforeElement?this.treeAdapter.insertBefore(a.parent,t,a.beforeElement):this.treeAdapter.appendChild(a.parent,t)}_isSpecialElement(t,a){const r=this.treeAdapter.getNamespaceURI(t);return iM[r].has(a)}onCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){mH(this,t);return}switch(this.insertionMode){case k.INITIAL:{Qt(this,t);break}case k.BEFORE_HTML:{ea(this,t);break}case k.BEFORE_HEAD:{ta(this,t);break}case k.IN_HEAD:{aa(this,t);break}case k.IN_HEAD_NO_SCRIPT:{ra(this,t);break}case k.AFTER_HEAD:{na(this,t);break}case k.IN_BODY:case k.IN_CAPTION:case k.IN_CELL:case k.IN_TEMPLATE:{Bc(this,t);break}case k.TEXT:case k.IN_SELECT:case k.IN_SELECT_IN_TABLE:{this._insertCharacters(t);break}case k.IN_TABLE:case k.IN_TABLE_BODY:case k.IN_ROW:{zr(this,t);break}case k.IN_TABLE_TEXT:{Yc(this,t);break}case k.IN_COLUMN_GROUP:{$a(this,t);break}case k.AFTER_BODY:{Wa(this,t);break}case k.AFTER_AFTER_BODY:{Na(this,t);break}}}onNullCharacter(t){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode){pH(this,t);return}switch(this.insertionMode){case k.INITIAL:{Qt(this,t);break}case k.BEFORE_HTML:{ea(this,t);break}case k.BEFORE_HEAD:{ta(this,t);break}case k.IN_HEAD:{aa(this,t);break}case k.IN_HEAD_NO_SCRIPT:{ra(this,t);break}case k.AFTER_HEAD:{na(this,t);break}case k.TEXT:{this._insertCharacters(t);break}case k.IN_TABLE:case k.IN_TABLE_BODY:case k.IN_ROW:{zr(this,t);break}case k.IN_COLUMN_GROUP:{$a(this,t);break}case k.AFTER_BODY:{Wa(this,t);break}case k.AFTER_AFTER_BODY:{Na(this,t);break}}}onComment(t){if(this.skipNextNewLine=!1,this.currentNotInHTML){Zr(this,t);return}switch(this.insertionMode){case k.INITIAL:case k.BEFORE_HTML:case k.BEFORE_HEAD:case k.IN_HEAD:case k.IN_HEAD_NO_SCRIPT:case k.AFTER_HEAD:case k.IN_BODY:case k.IN_TABLE:case k.IN_CAPTION:case k.IN_COLUMN_GROUP:case k.IN_TABLE_BODY:case k.IN_ROW:case k.IN_CELL:case k.IN_SELECT:case k.IN_SELECT_IN_TABLE:case k.IN_TEMPLATE:case k.IN_FRAMESET:case k.AFTER_FRAMESET:{Zr(this,t);break}case k.IN_TABLE_TEXT:{Kt(this,t);break}case k.AFTER_BODY:{WM(this,t);break}case k.AFTER_AFTER_BODY:case k.AFTER_AFTER_FRAMESET:{VM(this,t);break}}}onDoctype(t){switch(this.skipNextNewLine=!1,this.insertionMode){case k.INITIAL:{GM(this,t);break}case k.BEFORE_HEAD:case k.IN_HEAD:case k.IN_HEAD_NO_SCRIPT:case k.AFTER_HEAD:{this._err(t,F.misplacedDoctype);break}case k.IN_TABLE_TEXT:{Kt(this,t);break}}}onStartTag(t){this.skipNextNewLine=!1,this.currentToken=t,this._processStartTag(t),t.selfClosing&&!t.ackSelfClosing&&this._err(t,F.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(t){this.shouldProcessStartTagTokenInForeignContent(t)?_H(this,t):this._startTagOutsideForeignContent(t)}_startTagOutsideForeignContent(t){switch(this.insertionMode){case k.INITIAL:{Qt(this,t);break}case k.BEFORE_HTML:{QM(this,t);break}case k.BEFORE_HEAD:{XM(this,t);break}case k.IN_HEAD:{Ue(this,t);break}case k.IN_HEAD_NO_SCRIPT:{eU(this,t);break}case k.AFTER_HEAD:{aU(this,t);break}case k.IN_BODY:{we(this,t);break}case k.IN_TABLE:{Bt(this,t);break}case k.IN_TABLE_TEXT:{Kt(this,t);break}case k.IN_CAPTION:{JU(this,t);break}case k.IN_COLUMN_GROUP:{Nn(this,t);break}case k.IN_TABLE_BODY:{ir(this,t);break}case k.IN_ROW:{sr(this,t);break}case k.IN_CELL:{tH(this,t);break}case k.IN_SELECT:{Vc(this,t);break}case k.IN_SELECT_IN_TABLE:{rH(this,t);break}case k.IN_TEMPLATE:{iH(this,t);break}case k.AFTER_BODY:{oH(this,t);break}case k.IN_FRAMESET:{cH(this,t);break}case k.AFTER_FRAMESET:{lH(this,t);break}case k.AFTER_AFTER_BODY:{hH(this,t);break}case k.AFTER_AFTER_FRAMESET:{dH(this,t);break}}}onEndTag(t){this.skipNextNewLine=!1,this.currentToken=t,this.currentNotInHTML?gH(this,t):this._endTagOutsideForeignContent(t)}_endTagOutsideForeignContent(t){switch(this.insertionMode){case k.INITIAL:{Qt(this,t);break}case k.BEFORE_HTML:{KM(this,t);break}case k.BEFORE_HEAD:{JM(this,t);break}case k.IN_HEAD:{ZM(this,t);break}case k.IN_HEAD_NO_SCRIPT:{tU(this,t);break}case k.AFTER_HEAD:{rU(this,t);break}case k.IN_BODY:{nr(this,t);break}case k.TEXT:{jU(this,t);break}case k.IN_TABLE:{ha(this,t);break}case k.IN_TABLE_TEXT:{Kt(this,t);break}case k.IN_CAPTION:{ZU(this,t);break}case k.IN_COLUMN_GROUP:{eH(this,t);break}case k.IN_TABLE_BODY:{en(this,t);break}case k.IN_ROW:{Wc(this,t);break}case k.IN_CELL:{aH(this,t);break}case k.IN_SELECT:{Gc(this,t);break}case k.IN_SELECT_IN_TABLE:{nH(this,t);break}case k.IN_TEMPLATE:{sH(this,t);break}case k.AFTER_BODY:{Kc(this,t);break}case k.IN_FRAMESET:{uH(this,t);break}case k.AFTER_FRAMESET:{fH(this,t);break}case k.AFTER_AFTER_BODY:{Na(this,t);break}}}onEof(t){switch(this.insertionMode){case k.INITIAL:{Qt(this,t);break}case k.BEFORE_HTML:{ea(this,t);break}case k.BEFORE_HEAD:{ta(this,t);break}case k.IN_HEAD:{aa(this,t);break}case k.IN_HEAD_NO_SCRIPT:{ra(this,t);break}case k.AFTER_HEAD:{na(this,t);break}case k.IN_BODY:case k.IN_TABLE:case k.IN_CAPTION:case k.IN_COLUMN_GROUP:case k.IN_TABLE_BODY:case k.IN_ROW:case k.IN_CELL:case k.IN_SELECT:case k.IN_SELECT_IN_TABLE:{jc(this,t);break}case k.TEXT:{qU(this,t);break}case k.IN_TABLE_TEXT:{Kt(this,t);break}case k.IN_TEMPLATE:{Qc(this,t);break}case k.AFTER_BODY:case k.IN_FRAMESET:case k.AFTER_FRAMESET:case k.AFTER_AFTER_BODY:case k.AFTER_AFTER_FRAMESET:{In(this,t);break}}}onWhitespaceCharacter(t){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,t.chars.charCodeAt(0)===_.LINE_FEED)){if(t.chars.length===1)return;t.chars=t.chars.substr(1)}if(this.tokenizer.inForeignNode){this._insertCharacters(t);return}switch(this.insertionMode){case k.IN_HEAD:case k.IN_HEAD_NO_SCRIPT:case k.AFTER_HEAD:case k.TEXT:case k.IN_COLUMN_GROUP:case k.IN_SELECT:case k.IN_SELECT_IN_TABLE:case k.IN_FRAMESET:case k.AFTER_FRAMESET:{this._insertCharacters(t);break}case k.IN_BODY:case k.IN_CAPTION:case k.IN_CELL:case k.IN_TEMPLATE:case k.AFTER_BODY:case k.AFTER_AFTER_BODY:case k.AFTER_AFTER_FRAMESET:{Pc(this,t);break}case k.IN_TABLE:case k.IN_TABLE_BODY:case k.IN_ROW:{zr(this,t);break}case k.IN_TABLE_TEXT:{qc(this,t);break}}}}function UM(e,t){let a=e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName);return a?e.openElements.contains(a.element)?e.openElements.hasInScope(t.tagID)||(a=null):(e.activeFormattingElements.removeEntry(a),a=null):Hc(e,t),a}function HM(e,t){let a=null,r=e.openElements.stackTop;for(;r>=0;r--){const n=e.openElements.items[r];if(n===t.element)break;e._isSpecialElement(n,e.openElements.tagIDs[r])&&(a=n)}return a||(e.openElements.shortenToLength(r<0?0:r),e.activeFormattingElements.removeEntry(t)),a}function jM(e,t,a){let r=t,n=e.openElements.getCommonAncestor(t);for(let s=0,i=n;i!==a;s++,i=n){n=e.openElements.getCommonAncestor(i);const o=e.activeFormattingElements.getElementEntry(i),u=o&&s>=BM;!o||u?(u&&e.activeFormattingElements.removeEntry(o),e.openElements.remove(i)):(i=qM(e,o),r===t&&(e.activeFormattingElements.bookmark=o),e.treeAdapter.detachNode(r),e.treeAdapter.appendChild(i,r),r=i)}return r}function qM(e,t){const a=e.treeAdapter.getNamespaceURI(t.element),r=e.treeAdapter.createElement(t.token.tagName,a,t.token.attrs);return e.openElements.replace(t.element,r),t.element=r,r}function YM(e,t,a){const r=e.treeAdapter.getTagName(t),n=Ht(r);if(e._isElementCausesFosterParenting(n))e._fosterParentElement(a);else{const s=e.treeAdapter.getNamespaceURI(t);n===c.TEMPLATE&&s===P.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,a)}}function $M(e,t,a){const r=e.treeAdapter.getNamespaceURI(a.element),{token:n}=a,s=e.treeAdapter.createElement(n.tagName,r,n.attrs);e._adoptNodes(t,s),e.treeAdapter.appendChild(t,s),e.activeFormattingElements.insertElementAfterBookmark(s,n),e.activeFormattingElements.removeEntry(a),e.openElements.remove(a.element),e.openElements.insertAfter(t,s,n.tagID)}function Sn(e,t){for(let a=0;a<PM;a++){const r=UM(e,t);if(!r)break;const n=HM(e,r);if(!n)break;e.activeFormattingElements.bookmark=r;const s=jM(e,n,r.element),i=e.openElements.getCommonAncestor(r.element);e.treeAdapter.detachNode(s),i&&YM(e,i,s),$M(e,n,r)}}function Zr(e,t){e._appendCommentNode(t,e.openElements.currentTmplContentOrNode)}function WM(e,t){e._appendCommentNode(t,e.openElements.items[0])}function VM(e,t){e._appendCommentNode(t,e.document)}function In(e,t){if(e.stopped=!0,t.location){const a=e.fragmentContext?0:2;for(let r=e.openElements.stackTop;r>=a;r--)e._setEndLocation(e.openElements.items[r],t);if(!e.fragmentContext&&e.openElements.stackTop>=0){const r=e.openElements.items[0],n=e.treeAdapter.getNodeSourceCodeLocation(r);if(n&&!n.endTag&&(e._setEndLocation(r,t),e.openElements.stackTop>=1)){const s=e.openElements.items[1],i=e.treeAdapter.getNodeSourceCodeLocation(s);i&&!i.endTag&&e._setEndLocation(s,t)}}}}function GM(e,t){e._setDocumentType(t);const a=t.forceQuirks?Fe.QUIRKS:AM(t);TM(t)||e._err(t,F.nonConformingDoctype),e.treeAdapter.setDocumentMode(e.document,a),e.insertionMode=k.BEFORE_HTML}function Qt(e,t){e._err(t,F.missingDoctype,!0),e.treeAdapter.setDocumentMode(e.document,Fe.QUIRKS),e.insertionMode=k.BEFORE_HTML,e._processToken(t)}function QM(e,t){t.tagID===c.HTML?(e._insertElement(t,P.HTML),e.insertionMode=k.BEFORE_HEAD):ea(e,t)}function KM(e,t){const a=t.tagID;(a===c.HTML||a===c.HEAD||a===c.BODY||a===c.BR)&&ea(e,t)}function ea(e,t){e._insertFakeRootElement(),e.insertionMode=k.BEFORE_HEAD,e._processToken(t)}function XM(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.HEAD:{e._insertElement(t,P.HTML),e.headElement=e.openElements.current,e.insertionMode=k.IN_HEAD;break}default:ta(e,t)}}function JM(e,t){const a=t.tagID;a===c.HEAD||a===c.BODY||a===c.HTML||a===c.BR?ta(e,t):e._err(t,F.endTagWithoutMatchingOpenElement)}function ta(e,t){e._insertFakeElement(z.HEAD,c.HEAD),e.headElement=e.openElements.current,e.insertionMode=k.IN_HEAD,e._processToken(t)}function Ue(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.BASE:case c.BASEFONT:case c.BGSOUND:case c.LINK:case c.META:{e._appendElement(t,P.HTML),t.ackSelfClosing=!0;break}case c.TITLE:{e._switchToTextParsing(t,fe.RCDATA);break}case c.NOSCRIPT:{e.options.scriptingEnabled?e._switchToTextParsing(t,fe.RAWTEXT):(e._insertElement(t,P.HTML),e.insertionMode=k.IN_HEAD_NO_SCRIPT);break}case c.NOFRAMES:case c.STYLE:{e._switchToTextParsing(t,fe.RAWTEXT);break}case c.SCRIPT:{e._switchToTextParsing(t,fe.SCRIPT_DATA);break}case c.TEMPLATE:{e._insertTemplate(t),e.activeFormattingElements.insertMarker(),e.framesetOk=!1,e.insertionMode=k.IN_TEMPLATE,e.tmplInsertionModeStack.unshift(k.IN_TEMPLATE);break}case c.HEAD:{e._err(t,F.misplacedStartTagForHeadElement);break}default:aa(e,t)}}function ZM(e,t){switch(t.tagID){case c.HEAD:{e.openElements.pop(),e.insertionMode=k.AFTER_HEAD;break}case c.BODY:case c.BR:case c.HTML:{aa(e,t);break}case c.TEMPLATE:{Tt(e,t);break}default:e._err(t,F.endTagWithoutMatchingOpenElement)}}function Tt(e,t){e.openElements.tmplCount>0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagId!==c.TEMPLATE&&e._err(t,F.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(c.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode()):e._err(t,F.endTagWithoutMatchingOpenElement)}function aa(e,t){e.openElements.pop(),e.insertionMode=k.AFTER_HEAD,e._processToken(t)}function eU(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.BASEFONT:case c.BGSOUND:case c.HEAD:case c.LINK:case c.META:case c.NOFRAMES:case c.STYLE:{Ue(e,t);break}case c.NOSCRIPT:{e._err(t,F.nestedNoscriptInHead);break}default:ra(e,t)}}function tU(e,t){switch(t.tagID){case c.NOSCRIPT:{e.openElements.pop(),e.insertionMode=k.IN_HEAD;break}case c.BR:{ra(e,t);break}default:e._err(t,F.endTagWithoutMatchingOpenElement)}}function ra(e,t){const a=t.type===ee.EOF?F.openElementsLeftAfterEof:F.disallowedContentInNoscriptInHead;e._err(t,a),e.openElements.pop(),e.insertionMode=k.IN_HEAD,e._processToken(t)}function aU(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.BODY:{e._insertElement(t,P.HTML),e.framesetOk=!1,e.insertionMode=k.IN_BODY;break}case c.FRAMESET:{e._insertElement(t,P.HTML),e.insertionMode=k.IN_FRAMESET;break}case c.BASE:case c.BASEFONT:case c.BGSOUND:case c.LINK:case c.META:case c.NOFRAMES:case c.SCRIPT:case c.STYLE:case c.TEMPLATE:case c.TITLE:{e._err(t,F.abandonedHeadElementChild),e.openElements.push(e.headElement,c.HEAD),Ue(e,t),e.openElements.remove(e.headElement);break}case c.HEAD:{e._err(t,F.misplacedStartTagForHeadElement);break}default:na(e,t)}}function rU(e,t){switch(t.tagID){case c.BODY:case c.HTML:case c.BR:{na(e,t);break}case c.TEMPLATE:{Tt(e,t);break}default:e._err(t,F.endTagWithoutMatchingOpenElement)}}function na(e,t){e._insertFakeElement(z.BODY,c.BODY),e.insertionMode=k.IN_BODY,rr(e,t)}function rr(e,t){switch(t.type){case ee.CHARACTER:{Bc(e,t);break}case ee.WHITESPACE_CHARACTER:{Pc(e,t);break}case ee.COMMENT:{Zr(e,t);break}case ee.START_TAG:{we(e,t);break}case ee.END_TAG:{nr(e,t);break}case ee.EOF:{jc(e,t);break}}}function Pc(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function Bc(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function nU(e,t){e.openElements.tmplCount===0&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}function iU(e,t){const a=e.openElements.tryPeekProperlyNestedBodyElement();a&&e.openElements.tmplCount===0&&(e.framesetOk=!1,e.treeAdapter.adoptAttributes(a,t.attrs))}function sU(e,t){const a=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&a&&(e.treeAdapter.detachNode(a),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,P.HTML),e.insertionMode=k.IN_FRAMESET)}function oU(e,t){e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._insertElement(t,P.HTML)}function cU(e,t){e.openElements.hasInButtonScope(c.P)&&e._closePElement(),Jr.has(e.openElements.currentTagId)&&e.openElements.pop(),e._insertElement(t,P.HTML)}function uU(e,t){e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._insertElement(t,P.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}function lU(e,t){const a=e.openElements.tmplCount>0;(!e.formElement||a)&&(e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._insertElement(t,P.HTML),a||(e.formElement=e.openElements.current))}function fU(e,t){e.framesetOk=!1;const a=t.tagID;for(let r=e.openElements.stackTop;r>=0;r--){const n=e.openElements.tagIDs[r];if(a===c.LI&&n===c.LI||(a===c.DD||a===c.DT)&&(n===c.DD||n===c.DT)){e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.popUntilTagNamePopped(n);break}if(n!==c.ADDRESS&&n!==c.DIV&&n!==c.P&&e._isSpecialElement(e.openElements.items[r],n))break}e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._insertElement(t,P.HTML)}function hU(e,t){e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._insertElement(t,P.HTML),e.tokenizer.state=fe.PLAINTEXT}function dU(e,t){e.openElements.hasInScope(c.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(c.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,P.HTML),e.framesetOk=!1}function pU(e,t){const a=e.activeFormattingElements.getElementEntryInScopeWithTagName(z.A);a&&(Sn(e,t),e.openElements.remove(a.element),e.activeFormattingElements.removeEntry(a)),e._reconstructActiveFormattingElements(),e._insertElement(t,P.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function mU(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,P.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function _U(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(c.NOBR)&&(Sn(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,P.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}function gU(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,P.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}function yU(e,t){e.treeAdapter.getDocumentMode(e.document)!==Fe.QUIRKS&&e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._insertElement(t,P.HTML),e.framesetOk=!1,e.insertionMode=k.IN_TABLE}function Mc(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,P.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function Uc(e){const t=Cc(e,bt.TYPE);return t!=null&&t.toLowerCase()===vM}function kU(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,P.HTML),Uc(t)||(e.framesetOk=!1),t.ackSelfClosing=!0}function bU(e,t){e._appendElement(t,P.HTML),t.ackSelfClosing=!0}function wU(e,t){e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._appendElement(t,P.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function EU(e,t){t.tagName=z.IMG,t.tagID=c.IMG,Mc(e,t)}function TU(e,t){e._insertElement(t,P.HTML),e.skipNextNewLine=!0,e.tokenizer.state=fe.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=k.TEXT}function AU(e,t){e.openElements.hasInButtonScope(c.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,fe.RAWTEXT)}function CU(e,t){e.framesetOk=!1,e._switchToTextParsing(t,fe.RAWTEXT)}function ps(e,t){e._switchToTextParsing(t,fe.RAWTEXT)}function xU(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,P.HTML),e.framesetOk=!1,e.insertionMode=e.insertionMode===k.IN_TABLE||e.insertionMode===k.IN_CAPTION||e.insertionMode===k.IN_TABLE_BODY||e.insertionMode===k.IN_ROW||e.insertionMode===k.IN_CELL?k.IN_SELECT_IN_TABLE:k.IN_SELECT}function DU(e,t){e.openElements.currentTagId===c.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,P.HTML)}function zU(e,t){e.openElements.hasInScope(c.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,P.HTML)}function SU(e,t){e.openElements.hasInScope(c.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(c.RTC),e._insertElement(t,P.HTML)}function IU(e,t){e._reconstructActiveFormattingElements(),Lc(t),zn(t),t.selfClosing?e._appendElement(t,P.MATHML):e._insertElement(t,P.MATHML),t.ackSelfClosing=!0}function NU(e,t){e._reconstructActiveFormattingElements(),Rc(t),zn(t),t.selfClosing?e._appendElement(t,P.SVG):e._insertElement(t,P.SVG),t.ackSelfClosing=!0}function ms(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,P.HTML)}function we(e,t){switch(t.tagID){case c.I:case c.S:case c.B:case c.U:case c.EM:case c.TT:case c.BIG:case c.CODE:case c.FONT:case c.SMALL:case c.STRIKE:case c.STRONG:{mU(e,t);break}case c.A:{pU(e,t);break}case c.H1:case c.H2:case c.H3:case c.H4:case c.H5:case c.H6:{cU(e,t);break}case c.P:case c.DL:case c.OL:case c.UL:case c.DIV:case c.DIR:case c.NAV:case c.MAIN:case c.MENU:case c.ASIDE:case c.CENTER:case c.FIGURE:case c.FOOTER:case c.HEADER:case c.HGROUP:case c.DIALOG:case c.DETAILS:case c.ADDRESS:case c.ARTICLE:case c.SEARCH:case c.SECTION:case c.SUMMARY:case c.FIELDSET:case c.BLOCKQUOTE:case c.FIGCAPTION:{oU(e,t);break}case c.LI:case c.DD:case c.DT:{fU(e,t);break}case c.BR:case c.IMG:case c.WBR:case c.AREA:case c.EMBED:case c.KEYGEN:{Mc(e,t);break}case c.HR:{wU(e,t);break}case c.RB:case c.RTC:{zU(e,t);break}case c.RT:case c.RP:{SU(e,t);break}case c.PRE:case c.LISTING:{uU(e,t);break}case c.XMP:{AU(e,t);break}case c.SVG:{NU(e,t);break}case c.HTML:{nU(e,t);break}case c.BASE:case c.LINK:case c.META:case c.STYLE:case c.TITLE:case c.SCRIPT:case c.BGSOUND:case c.BASEFONT:case c.TEMPLATE:{Ue(e,t);break}case c.BODY:{iU(e,t);break}case c.FORM:{lU(e,t);break}case c.NOBR:{_U(e,t);break}case c.MATH:{IU(e,t);break}case c.TABLE:{yU(e,t);break}case c.INPUT:{kU(e,t);break}case c.PARAM:case c.TRACK:case c.SOURCE:{bU(e,t);break}case c.IMAGE:{EU(e,t);break}case c.BUTTON:{dU(e,t);break}case c.APPLET:case c.OBJECT:case c.MARQUEE:{gU(e,t);break}case c.IFRAME:{CU(e,t);break}case c.SELECT:{xU(e,t);break}case c.OPTION:case c.OPTGROUP:{DU(e,t);break}case c.NOEMBED:case c.NOFRAMES:{ps(e,t);break}case c.FRAMESET:{sU(e,t);break}case c.TEXTAREA:{TU(e,t);break}case c.NOSCRIPT:{e.options.scriptingEnabled?ps(e,t):ms(e,t);break}case c.PLAINTEXT:{hU(e,t);break}case c.COL:case c.TH:case c.TD:case c.TR:case c.HEAD:case c.FRAME:case c.TBODY:case c.TFOOT:case c.THEAD:case c.CAPTION:case c.COLGROUP:break;default:ms(e,t)}}function FU(e,t){if(e.openElements.hasInScope(c.BODY)&&(e.insertionMode=k.AFTER_BODY,e.options.sourceCodeLocationInfo)){const a=e.openElements.tryPeekProperlyNestedBodyElement();a&&e._setEndLocation(a,t)}}function OU(e,t){e.openElements.hasInScope(c.BODY)&&(e.insertionMode=k.AFTER_BODY,Kc(e,t))}function LU(e,t){const a=t.tagID;e.openElements.hasInScope(a)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(a))}function RU(e){const t=e.openElements.tmplCount>0,{formElement:a}=e;t||(e.formElement=null),(a||t)&&e.openElements.hasInScope(c.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(c.FORM):a&&e.openElements.remove(a))}function vU(e){e.openElements.hasInButtonScope(c.P)||e._insertFakeElement(z.P,c.P),e._closePElement()}function PU(e){e.openElements.hasInListItemScope(c.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(c.LI),e.openElements.popUntilTagNamePopped(c.LI))}function BU(e,t){const a=t.tagID;e.openElements.hasInScope(a)&&(e.openElements.generateImpliedEndTagsWithExclusion(a),e.openElements.popUntilTagNamePopped(a))}function MU(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}function UU(e,t){const a=t.tagID;e.openElements.hasInScope(a)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(a),e.activeFormattingElements.clearToLastMarker())}function HU(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(z.BR,c.BR),e.openElements.pop(),e.framesetOk=!1}function Hc(e,t){const a=t.tagName,r=t.tagID;for(let n=e.openElements.stackTop;n>0;n--){const s=e.openElements.items[n],i=e.openElements.tagIDs[n];if(r===i&&(r!==c.UNKNOWN||e.treeAdapter.getTagName(s)===a)){e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.stackTop>=n&&e.openElements.shortenToLength(n);break}if(e._isSpecialElement(s,i))break}}function nr(e,t){switch(t.tagID){case c.A:case c.B:case c.I:case c.S:case c.U:case c.EM:case c.TT:case c.BIG:case c.CODE:case c.FONT:case c.NOBR:case c.SMALL:case c.STRIKE:case c.STRONG:{Sn(e,t);break}case c.P:{vU(e);break}case c.DL:case c.UL:case c.OL:case c.DIR:case c.DIV:case c.NAV:case c.PRE:case c.MAIN:case c.MENU:case c.ASIDE:case c.BUTTON:case c.CENTER:case c.FIGURE:case c.FOOTER:case c.HEADER:case c.HGROUP:case c.DIALOG:case c.ADDRESS:case c.ARTICLE:case c.DETAILS:case c.SEARCH:case c.SECTION:case c.SUMMARY:case c.LISTING:case c.FIELDSET:case c.BLOCKQUOTE:case c.FIGCAPTION:{LU(e,t);break}case c.LI:{PU(e);break}case c.DD:case c.DT:{BU(e,t);break}case c.H1:case c.H2:case c.H3:case c.H4:case c.H5:case c.H6:{MU(e);break}case c.BR:{HU(e);break}case c.BODY:{FU(e,t);break}case c.HTML:{OU(e,t);break}case c.FORM:{RU(e);break}case c.APPLET:case c.OBJECT:case c.MARQUEE:{UU(e,t);break}case c.TEMPLATE:{Tt(e,t);break}default:Hc(e,t)}}function jc(e,t){e.tmplInsertionModeStack.length>0?Qc(e,t):In(e,t)}function jU(e,t){var a;t.tagID===c.SCRIPT&&((a=e.scriptHandler)===null||a===void 0||a.call(e,e.openElements.current)),e.openElements.pop(),e.insertionMode=e.originalInsertionMode}function qU(e,t){e._err(t,F.eofInElementThatCanContainOnlyText),e.openElements.pop(),e.insertionMode=e.originalInsertionMode,e.onEof(t)}function zr(e,t){if(vc.has(e.openElements.currentTagId))switch(e.pendingCharacterTokens.length=0,e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=k.IN_TABLE_TEXT,t.type){case ee.CHARACTER:{Yc(e,t);break}case ee.WHITESPACE_CHARACTER:{qc(e,t);break}}else _a(e,t)}function YU(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,P.HTML),e.insertionMode=k.IN_CAPTION}function $U(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,P.HTML),e.insertionMode=k.IN_COLUMN_GROUP}function WU(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(z.COLGROUP,c.COLGROUP),e.insertionMode=k.IN_COLUMN_GROUP,Nn(e,t)}function VU(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,P.HTML),e.insertionMode=k.IN_TABLE_BODY}function GU(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(z.TBODY,c.TBODY),e.insertionMode=k.IN_TABLE_BODY,ir(e,t)}function QU(e,t){e.openElements.hasInTableScope(c.TABLE)&&(e.openElements.popUntilTagNamePopped(c.TABLE),e._resetInsertionMode(),e._processStartTag(t))}function KU(e,t){Uc(t)?e._appendElement(t,P.HTML):_a(e,t),t.ackSelfClosing=!0}function XU(e,t){!e.formElement&&e.openElements.tmplCount===0&&(e._insertElement(t,P.HTML),e.formElement=e.openElements.current,e.openElements.pop())}function Bt(e,t){switch(t.tagID){case c.TD:case c.TH:case c.TR:{GU(e,t);break}case c.STYLE:case c.SCRIPT:case c.TEMPLATE:{Ue(e,t);break}case c.COL:{WU(e,t);break}case c.FORM:{XU(e,t);break}case c.TABLE:{QU(e,t);break}case c.TBODY:case c.TFOOT:case c.THEAD:{VU(e,t);break}case c.INPUT:{KU(e,t);break}case c.CAPTION:{YU(e,t);break}case c.COLGROUP:{$U(e,t);break}default:_a(e,t)}}function ha(e,t){switch(t.tagID){case c.TABLE:{e.openElements.hasInTableScope(c.TABLE)&&(e.openElements.popUntilTagNamePopped(c.TABLE),e._resetInsertionMode());break}case c.TEMPLATE:{Tt(e,t);break}case c.BODY:case c.CAPTION:case c.COL:case c.COLGROUP:case c.HTML:case c.TBODY:case c.TD:case c.TFOOT:case c.TH:case c.THEAD:case c.TR:break;default:_a(e,t)}}function _a(e,t){const a=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,rr(e,t),e.fosterParentingEnabled=a}function qc(e,t){e.pendingCharacterTokens.push(t)}function Yc(e,t){e.pendingCharacterTokens.push(t),e.hasNonWhitespacePendingCharacterToken=!0}function Kt(e,t){let a=0;if(e.hasNonWhitespacePendingCharacterToken)for(;a<e.pendingCharacterTokens.length;a++)_a(e,e.pendingCharacterTokens[a]);else for(;a<e.pendingCharacterTokens.length;a++)e._insertCharacters(e.pendingCharacterTokens[a]);e.insertionMode=e.originalInsertionMode,e._processToken(t)}const $c=new Set([c.CAPTION,c.COL,c.COLGROUP,c.TBODY,c.TD,c.TFOOT,c.TH,c.THEAD,c.TR]);function JU(e,t){const a=t.tagID;$c.has(a)?e.openElements.hasInTableScope(c.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(c.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=k.IN_TABLE,Bt(e,t)):we(e,t)}function ZU(e,t){const a=t.tagID;switch(a){case c.CAPTION:case c.TABLE:{e.openElements.hasInTableScope(c.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(c.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=k.IN_TABLE,a===c.TABLE&&ha(e,t));break}case c.BODY:case c.COL:case c.COLGROUP:case c.HTML:case c.TBODY:case c.TD:case c.TFOOT:case c.TH:case c.THEAD:case c.TR:break;default:nr(e,t)}}function Nn(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.COL:{e._appendElement(t,P.HTML),t.ackSelfClosing=!0;break}case c.TEMPLATE:{Ue(e,t);break}default:$a(e,t)}}function eH(e,t){switch(t.tagID){case c.COLGROUP:{e.openElements.currentTagId===c.COLGROUP&&(e.openElements.pop(),e.insertionMode=k.IN_TABLE);break}case c.TEMPLATE:{Tt(e,t);break}case c.COL:break;default:$a(e,t)}}function $a(e,t){e.openElements.currentTagId===c.COLGROUP&&(e.openElements.pop(),e.insertionMode=k.IN_TABLE,e._processToken(t))}function ir(e,t){switch(t.tagID){case c.TR:{e.openElements.clearBackToTableBodyContext(),e._insertElement(t,P.HTML),e.insertionMode=k.IN_ROW;break}case c.TH:case c.TD:{e.openElements.clearBackToTableBodyContext(),e._insertFakeElement(z.TR,c.TR),e.insertionMode=k.IN_ROW,sr(e,t);break}case c.CAPTION:case c.COL:case c.COLGROUP:case c.TBODY:case c.TFOOT:case c.THEAD:{e.openElements.hasTableBodyContextInTableScope()&&(e.openElements.clearBackToTableBodyContext(),e.openElements.pop(),e.insertionMode=k.IN_TABLE,Bt(e,t));break}default:Bt(e,t)}}function en(e,t){const a=t.tagID;switch(t.tagID){case c.TBODY:case c.TFOOT:case c.THEAD:{e.openElements.hasInTableScope(a)&&(e.openElements.clearBackToTableBodyContext(),e.openElements.pop(),e.insertionMode=k.IN_TABLE);break}case c.TABLE:{e.openElements.hasTableBodyContextInTableScope()&&(e.openElements.clearBackToTableBodyContext(),e.openElements.pop(),e.insertionMode=k.IN_TABLE,ha(e,t));break}case c.BODY:case c.CAPTION:case c.COL:case c.COLGROUP:case c.HTML:case c.TD:case c.TH:case c.TR:break;default:ha(e,t)}}function sr(e,t){switch(t.tagID){case c.TH:case c.TD:{e.openElements.clearBackToTableRowContext(),e._insertElement(t,P.HTML),e.insertionMode=k.IN_CELL,e.activeFormattingElements.insertMarker();break}case c.CAPTION:case c.COL:case c.COLGROUP:case c.TBODY:case c.TFOOT:case c.THEAD:case c.TR:{e.openElements.hasInTableScope(c.TR)&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=k.IN_TABLE_BODY,ir(e,t));break}default:Bt(e,t)}}function Wc(e,t){switch(t.tagID){case c.TR:{e.openElements.hasInTableScope(c.TR)&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=k.IN_TABLE_BODY);break}case c.TABLE:{e.openElements.hasInTableScope(c.TR)&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=k.IN_TABLE_BODY,en(e,t));break}case c.TBODY:case c.TFOOT:case c.THEAD:{(e.openElements.hasInTableScope(t.tagID)||e.openElements.hasInTableScope(c.TR))&&(e.openElements.clearBackToTableRowContext(),e.openElements.pop(),e.insertionMode=k.IN_TABLE_BODY,en(e,t));break}case c.BODY:case c.CAPTION:case c.COL:case c.COLGROUP:case c.HTML:case c.TD:case c.TH:break;default:ha(e,t)}}function tH(e,t){const a=t.tagID;$c.has(a)?(e.openElements.hasInTableScope(c.TD)||e.openElements.hasInTableScope(c.TH))&&(e._closeTableCell(),sr(e,t)):we(e,t)}function aH(e,t){const a=t.tagID;switch(a){case c.TD:case c.TH:{e.openElements.hasInTableScope(a)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(a),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=k.IN_ROW);break}case c.TABLE:case c.TBODY:case c.TFOOT:case c.THEAD:case c.TR:{e.openElements.hasInTableScope(a)&&(e._closeTableCell(),Wc(e,t));break}case c.BODY:case c.CAPTION:case c.COL:case c.COLGROUP:case c.HTML:break;default:nr(e,t)}}function Vc(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.OPTION:{e.openElements.currentTagId===c.OPTION&&e.openElements.pop(),e._insertElement(t,P.HTML);break}case c.OPTGROUP:{e.openElements.currentTagId===c.OPTION&&e.openElements.pop(),e.openElements.currentTagId===c.OPTGROUP&&e.openElements.pop(),e._insertElement(t,P.HTML);break}case c.HR:{e.openElements.currentTagId===c.OPTION&&e.openElements.pop(),e.openElements.currentTagId===c.OPTGROUP&&e.openElements.pop(),e._appendElement(t,P.HTML),t.ackSelfClosing=!0;break}case c.INPUT:case c.KEYGEN:case c.TEXTAREA:case c.SELECT:{e.openElements.hasInSelectScope(c.SELECT)&&(e.openElements.popUntilTagNamePopped(c.SELECT),e._resetInsertionMode(),t.tagID!==c.SELECT&&e._processStartTag(t));break}case c.SCRIPT:case c.TEMPLATE:{Ue(e,t);break}}}function Gc(e,t){switch(t.tagID){case c.OPTGROUP:{e.openElements.stackTop>0&&e.openElements.currentTagId===c.OPTION&&e.openElements.tagIDs[e.openElements.stackTop-1]===c.OPTGROUP&&e.openElements.pop(),e.openElements.currentTagId===c.OPTGROUP&&e.openElements.pop();break}case c.OPTION:{e.openElements.currentTagId===c.OPTION&&e.openElements.pop();break}case c.SELECT:{e.openElements.hasInSelectScope(c.SELECT)&&(e.openElements.popUntilTagNamePopped(c.SELECT),e._resetInsertionMode());break}case c.TEMPLATE:{Tt(e,t);break}}}function rH(e,t){const a=t.tagID;a===c.CAPTION||a===c.TABLE||a===c.TBODY||a===c.TFOOT||a===c.THEAD||a===c.TR||a===c.TD||a===c.TH?(e.openElements.popUntilTagNamePopped(c.SELECT),e._resetInsertionMode(),e._processStartTag(t)):Vc(e,t)}function nH(e,t){const a=t.tagID;a===c.CAPTION||a===c.TABLE||a===c.TBODY||a===c.TFOOT||a===c.THEAD||a===c.TR||a===c.TD||a===c.TH?e.openElements.hasInTableScope(a)&&(e.openElements.popUntilTagNamePopped(c.SELECT),e._resetInsertionMode(),e.onEndTag(t)):Gc(e,t)}function iH(e,t){switch(t.tagID){case c.BASE:case c.BASEFONT:case c.BGSOUND:case c.LINK:case c.META:case c.NOFRAMES:case c.SCRIPT:case c.STYLE:case c.TEMPLATE:case c.TITLE:{Ue(e,t);break}case c.CAPTION:case c.COLGROUP:case c.TBODY:case c.TFOOT:case c.THEAD:{e.tmplInsertionModeStack[0]=k.IN_TABLE,e.insertionMode=k.IN_TABLE,Bt(e,t);break}case c.COL:{e.tmplInsertionModeStack[0]=k.IN_COLUMN_GROUP,e.insertionMode=k.IN_COLUMN_GROUP,Nn(e,t);break}case c.TR:{e.tmplInsertionModeStack[0]=k.IN_TABLE_BODY,e.insertionMode=k.IN_TABLE_BODY,ir(e,t);break}case c.TD:case c.TH:{e.tmplInsertionModeStack[0]=k.IN_ROW,e.insertionMode=k.IN_ROW,sr(e,t);break}default:e.tmplInsertionModeStack[0]=k.IN_BODY,e.insertionMode=k.IN_BODY,we(e,t)}}function sH(e,t){t.tagID===c.TEMPLATE&&Tt(e,t)}function Qc(e,t){e.openElements.tmplCount>0?(e.openElements.popUntilTagNamePopped(c.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode(),e.onEof(t)):In(e,t)}function oH(e,t){t.tagID===c.HTML?we(e,t):Wa(e,t)}function Kc(e,t){var a;if(t.tagID===c.HTML){if(e.fragmentContext||(e.insertionMode=k.AFTER_AFTER_BODY),e.options.sourceCodeLocationInfo&&e.openElements.tagIDs[0]===c.HTML){e._setEndLocation(e.openElements.items[0],t);const r=e.openElements.items[1];r&&!(!((a=e.treeAdapter.getNodeSourceCodeLocation(r))===null||a===void 0)&&a.endTag)&&e._setEndLocation(r,t)}}else Wa(e,t)}function Wa(e,t){e.insertionMode=k.IN_BODY,rr(e,t)}function cH(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.FRAMESET:{e._insertElement(t,P.HTML);break}case c.FRAME:{e._appendElement(t,P.HTML),t.ackSelfClosing=!0;break}case c.NOFRAMES:{Ue(e,t);break}}}function uH(e,t){t.tagID===c.FRAMESET&&!e.openElements.isRootHtmlElementCurrent()&&(e.openElements.pop(),!e.fragmentContext&&e.openElements.currentTagId!==c.FRAMESET&&(e.insertionMode=k.AFTER_FRAMESET))}function lH(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.NOFRAMES:{Ue(e,t);break}}}function fH(e,t){t.tagID===c.HTML&&(e.insertionMode=k.AFTER_AFTER_FRAMESET)}function hH(e,t){t.tagID===c.HTML?we(e,t):Na(e,t)}function Na(e,t){e.insertionMode=k.IN_BODY,rr(e,t)}function dH(e,t){switch(t.tagID){case c.HTML:{we(e,t);break}case c.NOFRAMES:{Ue(e,t);break}}}function pH(e,t){t.chars=ue,e._insertCharacters(t)}function mH(e,t){e._insertCharacters(t),e.framesetOk=!1}function Xc(e){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==P.HTML&&!e._isIntegrationPoint(e.openElements.currentTagId,e.openElements.current);)e.openElements.pop()}function _H(e,t){if(NM(t))Xc(e),e._startTagOutsideForeignContent(t);else{const a=e._getAdjustedCurrentElement(),r=e.treeAdapter.getNamespaceURI(a);r===P.MATHML?Lc(t):r===P.SVG&&(FM(t),Rc(t)),zn(t),t.selfClosing?e._appendElement(t,r):e._insertElement(t,r),t.ackSelfClosing=!0}}function gH(e,t){if(t.tagID===c.P||t.tagID===c.BR){Xc(e),e._endTagOutsideForeignContent(t);return}for(let a=e.openElements.stackTop;a>0;a--){const r=e.openElements.items[a];if(e.treeAdapter.getNamespaceURI(r)===P.HTML){e._endTagOutsideForeignContent(t);break}const n=e.treeAdapter.getTagName(r);if(n.toLowerCase()===t.tagName){t.tagName=n,e.openElements.shortenToLength(a);break}}}z.AREA,z.BASE,z.BASEFONT,z.BGSOUND,z.BR,z.COL,z.EMBED,z.FRAME,z.HR,z.IMG,z.INPUT,z.KEYGEN,z.LINK,z.META,z.PARAM,z.SOURCE,z.TRACK,z.WBR;const yH=new Set(["mdxFlowExpression","mdxJsxFlowElement","mdxJsxTextElement","mdxTextExpression","mdxjsEsm"]),_s={sourceCodeLocationInfo:!0,scriptingEnabled:!1};function Jc(e,t){const a=zH(e),r=Mo("type",{handlers:{root:kH,element:bH,text:wH,comment:eu,doctype:EH,raw:AH},unknown:CH}),n={parser:a?new ds(_s):ds.getFragmentParser(void 0,_s),handle(o){r(o,n)},stitches:!1,options:t||{}};r(e,n),jt(n,tt());const s=a?n.parser.document:n.parser.getFragment(),i=I7(s,{file:n.options.file});return n.stitches&&Ze(i,"comment",function(o,u,l){const p=o;if(p.value.stitch&&l&&u!==void 0){const h=l.children;return h[u]=p.value.stitch,u}}),i.type==="root"&&i.children.length===1&&i.children[0].type===e.type?i.children[0]:i}function Zc(e,t){let a=-1;if(e)for(;++a<e.length;)t.handle(e[a])}function kH(e,t){Zc(e.children,t)}function bH(e,t){xH(e,t),Zc(e.children,t),DH(e,t)}function wH(e,t){t.parser.tokenizer.state>4&&(t.parser.tokenizer.state=0);const a={type:ee.CHARACTER,chars:e.value,location:ga(e)};jt(t,tt(e)),t.parser.currentToken=a,t.parser._processToken(t.parser.currentToken)}function EH(e,t){const a={type:ee.DOCTYPE,name:"html",forceQuirks:!1,publicId:"",systemId:"",location:ga(e)};jt(t,tt(e)),t.parser.currentToken=a,t.parser._processToken(t.parser.currentToken)}function TH(e,t){t.stitches=!0;const a=SH(e);if("children"in e&&"children"in a){const r=Jc({type:"root",children:e.children},t.options);a.children=r.children}eu({type:"comment",value:{stitch:a}},t)}function eu(e,t){const a=e.value,r={type:ee.COMMENT,data:a,location:ga(e)};jt(t,tt(e)),t.parser.currentToken=r,t.parser._processToken(t.parser.currentToken)}function AH(e,t){if(t.parser.tokenizer.preprocessor.html="",t.parser.tokenizer.preprocessor.pos=-1,t.parser.tokenizer.preprocessor.lastGapPos=-2,t.parser.tokenizer.preprocessor.gapStack=[],t.parser.tokenizer.preprocessor.skipNextNewLine=!1,t.parser.tokenizer.preprocessor.lastChunkWritten=!1,t.parser.tokenizer.preprocessor.endOfChunkHit=!1,t.parser.tokenizer.preprocessor.isEol=!1,tu(t,tt(e)),t.parser.tokenizer.write(e.value,!1),t.parser.tokenizer._runParsingLoop(),t.parser.tokenizer.state===72||t.parser.tokenizer.state===78){t.parser.tokenizer.preprocessor.lastChunkWritten=!0;const a=t.parser.tokenizer._consume();t.parser.tokenizer._callState(a)}}function CH(e,t){const a=e;if(t.options.passThrough&&t.options.passThrough.includes(a.type))TH(a,t);else{let r="";throw yH.has(a.type)&&(r=". It looks like you are using MDX nodes with `hast-util-raw` (or `rehype-raw`). If you use this because you are using remark or rehype plugins that inject `'html'` nodes, then please raise an issue with that plugin, as its a bad and slow idea. If you use this because you are using markdown syntax, then you have to configure this utility (or plugin) to pass through these nodes (see `passThrough` in docs), but you can also migrate to use the MDX syntax"),new Error("Cannot compile `"+a.type+"` node"+r)}}function jt(e,t){tu(e,t);const a=e.parser.tokenizer.currentCharacterToken;a&&a.location&&(a.location.endLine=e.parser.tokenizer.preprocessor.line,a.location.endCol=e.parser.tokenizer.preprocessor.col+1,a.location.endOffset=e.parser.tokenizer.preprocessor.offset+1,e.parser.currentToken=a,e.parser._processToken(e.parser.currentToken)),e.parser.tokenizer.paused=!1,e.parser.tokenizer.inLoop=!1,e.parser.tokenizer.active=!1,e.parser.tokenizer.returnState=fe.DATA,e.parser.tokenizer.charRefCode=-1,e.parser.tokenizer.consumedAfterSnapshot=-1,e.parser.tokenizer.currentLocation=null,e.parser.tokenizer.currentCharacterToken=null,e.parser.tokenizer.currentToken=null,e.parser.tokenizer.currentAttr={name:"",value:""}}function tu(e,t){if(t&&t.offset!==void 0){const a={startLine:t.line,startCol:t.column,startOffset:t.offset,endLine:-1,endCol:-1,endOffset:-1};e.parser.tokenizer.preprocessor.lineStartPos=-t.column+1,e.parser.tokenizer.preprocessor.droppedBufferSize=t.offset,e.parser.tokenizer.preprocessor.line=t.line,e.parser.tokenizer.currentLocation=a}}function xH(e,t){const a=e.tagName.toLowerCase();if(t.parser.tokenizer.state===fe.PLAINTEXT)return;jt(t,tt(e));const r=t.parser.openElements.current;let n="namespaceURI"in r?r.namespaceURI:yt.html;n===yt.html&&a==="svg"&&(n=yt.svg);const s=R7({...e,children:[]},{space:n===yt.svg?"svg":"html"}),i={type:ee.START_TAG,tagName:a,tagID:Ht(a),selfClosing:!1,ackSelfClosing:!1,attrs:"attrs"in s?s.attrs:[],location:ga(e)};t.parser.currentToken=i,t.parser._processToken(t.parser.currentToken),t.parser.tokenizer.lastStartTagName=a}function DH(e,t){const a=e.tagName.toLowerCase();if(!t.parser.tokenizer.inForeignNode&&q7.includes(a)||t.parser.tokenizer.state===fe.PLAINTEXT)return;jt(t,Xa(e));const r={type:ee.END_TAG,tagName:a,tagID:Ht(a),selfClosing:!1,ackSelfClosing:!1,attrs:[],location:ga(e)};t.parser.currentToken=r,t.parser._processToken(t.parser.currentToken),a===t.parser.tokenizer.lastStartTagName&&(t.parser.tokenizer.state===fe.RCDATA||t.parser.tokenizer.state===fe.RAWTEXT||t.parser.tokenizer.state===fe.SCRIPT_DATA)&&(t.parser.tokenizer.state=fe.DATA)}function zH(e){const t=e.type==="root"?e.children[0]:e;return!!(t&&(t.type==="doctype"||t.type==="element"&&t.tagName.toLowerCase()==="html"))}function ga(e){const t=tt(e)||{line:void 0,column:void 0,offset:void 0},a=Xa(e)||{line:void 0,column:void 0,offset:void 0};return{startLine:t.line,startCol:t.column,startOffset:t.offset,endLine:a.line,endCol:a.column,endOffset:a.offset}}function SH(e){return"children"in e?Je({...e,children:[]}):Je(e)}function IH(e){return function(t,a){return Jc(t,{...e,file:a})}}function NH(e,t){const a={type:"element",tagName:"em",properties:t.attributes||{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}const gs=/[\t\n\r]/g;function FH(e,t=4){const a=[];let r=0,n=0,s=-1;if(typeof e!="string")throw new TypeError("detab expected string");for(;n<e.length;){gs.lastIndex=n;const i=gs.exec(e),o=i?i.index:e.length;if(e.codePointAt(o)===9){const u=t-(s+o-n+1)%t;a.push(e.slice(r,o)," ".repeat(u)),s+=o-n+u,r=o+1}else s=-1;n=o+1}return a.push(e.slice(r)),a.join("")}function OH(e){if(!(e!=null&&e.trim()))return{language:void 0,highlights:void 0,filename:void 0,meta:void 0};const t=e.replace(/[{|[](.+)/,"").match(/^[^ \t]+(?=[ \t]|$)/),a=e.match(/\{([^}]*)\}/),r=e.match(/\[((\\\]|[^\]])*)\]/),n=e.replace((t==null?void 0:t[0])??"","").replace((a==null?void 0:a[0])??"","").replace((r==null?void 0:r[0])??"","").trim();return{language:(t==null?void 0:t[0])||void 0,highlights:LH((a==null?void 0:a[1])||void 0),filename:(r==null?void 0:r[1].replace(/\\\]/g,"]"))||void 0,meta:n}}function LH(e){const t=String(e||"").split(",").filter(Boolean).flatMap(a=>{const[r,n]=a.trim().split("-").map(s=>Number(s.trim()));return Array.from({length:(n||r)-r+1}).map((s,i)=>r+i)});return t.length?t:void 0}const RH=/^<\/?([\w-]+)(\s[^>]*?)?\/?>/;function au(e){const t=String(e).match(RH);return t&&t[1]}const vH=(e,t)=>{const a=(t.lang||"")+" "+(t.meta||""),{language:r,highlights:n,filename:s,meta:i}=OH(a),o=t.value?FH(t.value+` +`):"";let u={type:"element",tagName:"code",properties:{__ignoreMap:""},children:[{type:"text",value:o}]};i&&(u.data={meta:i}),e.patch(t,u),u=e.applyData(t,u);const l={language:r,filename:s,highlights:n,meta:i,code:o};return r&&(l.className=["language-"+r]),u={type:"element",tagName:"pre",properties:l,children:[u]},e.patch(t,u),u};function PH(e,t){var r;const a=au(t.value);if(a&&/[A-Z]/.test(a)&&(t.value=t.value.replace(a,ia(a))),e.dangerous||(r=e.options)!=null&&r.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function BH(e,t){const a={...t.attributes||{},href:dt(t.url)};t.title!==null&&t.title!==void 0&&(a.title=t.title);const r={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function MH(e,t){const a={},r=e.all(t);let n=-1;for(typeof t.start=="number"&&t.start!==1&&(a.start=t.start);++n<r.length;){const i=r[n];if(i.type==="element"&&i.tagName==="li"&&i.properties&&Array.isArray(i.properties.className)&&i.properties.className.includes("task-list-item")){a.className=["contains-task-list"];break}}(t.children||[]).some(i=>typeof i.checked=="boolean")&&(a.className=["contains-task-list"]);const s={type:"element",tagName:t.ordered?"ol":"ul",properties:a,children:e.wrap(r,!0)};return e.patch(t,s),e.applyData(t,s)}function UH(e,t){if(t.children&&t.children[0]&&t.children[0].type==="html"){const r=ia(au(t.children[0].value)||"div");if(!Ru.includes(r))return e.all(t)}const a={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function HH(e,t){const a={...t.attributes,src:dt(t.url)};t.alt!==null&&t.alt!==void 0&&(a.alt=t.alt),t.title!==null&&t.title!==void 0&&(a.title=t.title);const r={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,r),e.applyData(t,r)}function jH(e,t){const a={type:"element",tagName:"strong",properties:t.attributes||{},children:e.all(t)};return e.patch(t,a),e.applyData(t,a)}function qH(e,t){var i,o;const a=((i=t.attributes)==null?void 0:i.language)||((o=t.attributes)==null?void 0:o.lang),r={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,r);const n={type:"element",tagName:"code",properties:t.attributes||{},children:[r]},s=(n.properties.class||"").split(" ");return delete n.properties.class,a&&(n.properties.language=a,delete n.properties.lang,s.push("language-"+a)),n.properties.className=s.join(" "),e.patch(t,n),e.applyData(t,n)}function YH(e,t){var r;const a={type:"element",tagName:t.name,properties:{...t.attributes,...(r=t.data)==null?void 0:r.hProperties},children:e.all(t)};return e.patch(t,a),a.attributes=t.attributes,a.fmAttributes=t.fmAttributes,a}const $H={emphasis:NH,code:vH,link:BH,paragraph:UH,html:PH,list:MH,image:HH,strong:jH,inlineCode:qH,containerComponent:YH},WH={remark:{plugins:{"remark-mdc":{instance:mg},"remark-emoji":{instance:IP},"remark-gfm":{instance:r7}}},rehype:{options:{handlers:$H,allowDangerousHtml:!0},plugins:{"rehype-external-links":{instance:m7},"rehype-sort-attribute-values":{instance:_7},"rehype-sort-attributes":{instance:g7},"rehype-raw":{instance:IH,options:{passThrough:["element"]}}}},highlight:!1,toc:{searchDepth:2,depth:2}};function ru(e){return e.type==="comment"?"":e.type==="text"?e.value||"":(e.children||[]).reduce((t,a)=>t.concat(ru(a)),"")}function nu(e,t=2,a=0){return!Array.isArray(e.children)||a===t?[e]:[e,...e.children.reduce((r,n)=>r.concat(nu(n,t,a+1)),[])]}const iu=["h2","h3","h4","h5","h6"],VH=iu.reduce((e,t)=>(e[t]=Number(t.charAt(t.length-1)),e),{}),GH=e=>VH[e.tag],QH=e=>((e<1||e>5)&&(console.log(`\`toc.depth\` is set to ${e}. It should be a number between 1 and 5. `),e=1),iu.slice(0,e));function su(e){if(e.length<=1)return e;const t=[];let a;return e.forEach(r=>{!a||r.depth<=a.depth?(r.children=[],a=r,t.push(r)):a.children.push(r)}),t.forEach(r=>{var n;(n=r.children)!=null&&n.length?r.children=su(r.children):delete r.children}),t}function KH(e,t){const{searchDepth:a,depth:r,title:n=""}=t,s=QH(r),o=nu(e,a).filter(u=>s.includes(u.tag||"")).map(u=>{var l;return{id:(l=u.props)==null?void 0:l.id,depth:GH(u),text:ru(u)}});return{title:n,searchDepth:a,depth:r,links:o}}function XH(e,t){const a=KH(e,t);return a.links=su(a.links),a}function JH(e){return"children"in e?ou(e):"value"in e?e.value:""}function ZH(e){return e.type==="text"?e.value:"children"in e?ou(e):""}function ou(e){let t=-1;const a=[];for(;++t<e.children.length;)a[t]=ZH(e.children[t]);return a.join("")}const ej=/[\0-\x1F!-,\.\/:-@\[-\^`\{-\xA9\xAB-\xB4\xB6-\xB9\xBB-\xBF\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0378\u0379\u037E\u0380-\u0385\u0387\u038B\u038D\u03A2\u03F6\u0482\u0530\u0557\u0558\u055A-\u055F\u0589-\u0590\u05BE\u05C0\u05C3\u05C6\u05C8-\u05CF\u05EB-\u05EE\u05F3-\u060F\u061B-\u061F\u066A-\u066D\u06D4\u06DD\u06DE\u06E9\u06FD\u06FE\u0700-\u070F\u074B\u074C\u07B2-\u07BF\u07F6-\u07F9\u07FB\u07FC\u07FE\u07FF\u082E-\u083F\u085C-\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0964\u0965\u0970\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09F2-\u09FB\u09FD\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A76-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF0-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B70\u0B72-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BF0-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C7F\u0C84\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D4F-\u0D53\u0D58-\u0D5E\u0D64\u0D65\u0D70-\u0D79\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF4-\u0E00\u0E3B-\u0E3F\u0E4F\u0E5A-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F01-\u0F17\u0F1A-\u0F1F\u0F2A-\u0F34\u0F36\u0F38\u0F3A-\u0F3D\u0F48\u0F6D-\u0F70\u0F85\u0F98\u0FBD-\u0FC5\u0FC7-\u0FFF\u104A-\u104F\u109E\u109F\u10C6\u10C8-\u10CC\u10CE\u10CF\u10FB\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u1360-\u137F\u1390-\u139F\u13F6\u13F7\u13FE-\u1400\u166D\u166E\u1680\u169B-\u169F\u16EB-\u16ED\u16F9-\u16FF\u170D\u1715-\u171F\u1735-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17D4-\u17D6\u17D8-\u17DB\u17DE\u17DF\u17EA-\u180A\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u1945\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DA-\u19FF\u1A1C-\u1A1F\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1AA6\u1AA8-\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B5A-\u1B6A\u1B74-\u1B7F\u1BF4-\u1BFF\u1C38-\u1C3F\u1C4A-\u1C4C\u1C7E\u1C7F\u1C89-\u1C8F\u1CBB\u1CBC\u1CC0-\u1CCF\u1CD3\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FBD\u1FBF-\u1FC1\u1FC5\u1FCD-\u1FCF\u1FD4\u1FD5\u1FDC-\u1FDF\u1FED-\u1FF1\u1FF5\u1FFD-\u203E\u2041-\u2053\u2055-\u2070\u2072-\u207E\u2080-\u208F\u209D-\u20CF\u20F1-\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F-\u215F\u2189-\u24B5\u24EA-\u2BFF\u2C2F\u2C5F\u2CE5-\u2CEA\u2CF4-\u2CFF\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D70-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E00-\u2E2E\u2E30-\u3004\u3008-\u3020\u3030\u3036\u3037\u303D-\u3040\u3097\u3098\u309B\u309C\u30A0\u30FB\u3100-\u3104\u3130\u318F-\u319F\u31C0-\u31EF\u3200-\u33FF\u4DC0-\u4DFF\u9FFD-\u9FFF\uA48D-\uA4CF\uA4FE\uA4FF\uA60D-\uA60F\uA62C-\uA63F\uA673\uA67E\uA6F2-\uA716\uA720\uA721\uA789\uA78A\uA7C0\uA7C1\uA7CB-\uA7F4\uA828-\uA82B\uA82D-\uA83F\uA874-\uA87F\uA8C6-\uA8CF\uA8DA-\uA8DF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA954-\uA95F\uA97D-\uA97F\uA9C1-\uA9CE\uA9DA-\uA9DF\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A-\uAA5F\uAA77-\uAA79\uAAC3-\uAADA\uAADE\uAADF\uAAF0\uAAF1\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB5B\uAB6A-\uAB6F\uABEB\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uE000-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB29\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBB2-\uFBD2\uFD3E-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFC-\uFDFF\uFE10-\uFE1F\uFE30-\uFE32\uFE35-\uFE4C\uFE50-\uFE6F\uFE75\uFEFD-\uFF0F\uFF1A-\uFF20\uFF3B-\uFF3E\uFF40\uFF5B-\uFF65\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFFF]|\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDD3F\uDD75-\uDDFC\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEE1-\uDEFF\uDF20-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDF9F\uDFC4-\uDFC7\uDFD0\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56-\uDC5F\uDC77-\uDC7F\uDC9F-\uDCDF\uDCF3\uDCF6-\uDCFF\uDD16-\uDD1F\uDD3A-\uDD7F\uDDB8-\uDDBD\uDDC0-\uDDFF\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE40-\uDE5F\uDE7D-\uDE7F\uDE9D-\uDEBF\uDEC8\uDEE7-\uDEFF\uDF36-\uDF3F\uDF56-\uDF5F\uDF73-\uDF7F\uDF92-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCFF\uDD28-\uDD2F\uDD3A-\uDE7F\uDEAA\uDEAD-\uDEAF\uDEB2-\uDEFF\uDF1D-\uDF26\uDF28-\uDF2F\uDF51-\uDFAF\uDFC5-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC47-\uDC65\uDC70-\uDC7E\uDCBB-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD40-\uDD43\uDD48-\uDD4F\uDD74\uDD75\uDD77-\uDD7F\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDFF\uDE12\uDE38-\uDE3D\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEA9-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC4B-\uDC4F\uDC5A-\uDC5D\uDC62-\uDC7F\uDCC6\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDC1-\uDDD7\uDDDE-\uDDFF\uDE41-\uDE43\uDE45-\uDE4F\uDE5A-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF3A-\uDFFF]|\uD806[\uDC3B-\uDC9F\uDCEA-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD44-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE2\uDDE5-\uDDFF\uDE3F-\uDE46\uDE48-\uDE4F\uDE9A-\uDE9C\uDE9E-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC41-\uDC4F\uDC5A-\uDC71\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF7-\uDFAF\uDFB1-\uDFFF]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83D\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDECF\uDEEE\uDEEF\uDEF5-\uDEFF\uDF37-\uDF3F\uDF44-\uDF4F\uDF5A-\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE80-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE2\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A-\uDC9C\uDC9F-\uDFFF]|\uD834[\uDC00-\uDD64\uDD6A-\uDD6C\uDD73-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDE41\uDE45-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3\uDFCC\uDFCD]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD4F-\uDEBF\uDEFA-\uDFFF]|\uD83A[\uDCC5-\uDCCF\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDFFF]|\uD83B[\uDC00-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDFFF]|\uD83C[\uDC00-\uDD2F\uDD4A-\uDD4F\uDD6A-\uDD6F\uDD8A-\uDFFF]|\uD83E[\uDC00-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]/g,tj=Object.hasOwnProperty;class aj{constructor(){this.occurrences,this.reset()}slug(t,a){const r=this;let n=rj(t,a===!0);const s=n;for(;tj.call(r.occurrences,n);)r.occurrences[s]++,n=s+"-"+r.occurrences[s];return r.occurrences[n]=0,n}reset(){this.occurrences=Object.create(null)}}function rj(e,t){return typeof e!="string"?"":(t||(e=e.toLowerCase()),e.replace(ej,"").replace(/ /g,"-"))}const nj=["javascript:","data:text/html","vbscript:","data:text/javascript","data:text/vbscript","data:text/css","data:text/plain","data:text/xml"],ij=(e,t)=>e.startsWith("on")?!1:e==="href"||e==="src"?!nj.some(a=>t.toLowerCase().startsWith(a)):!0,sj=(e,t)=>t?(t=Object.fromEntries(Object.entries(t).filter(([a,r])=>{const n=ij(a,r);return n||console.warn(`[@nuxtjs/mdc] removing unsafe attribute: ${a}="${r}"`),n})),e==="pre"&&typeof t.highlights=="string"&&(t.highlights=t.highlights.split(" ").map(a=>Number.parseInt(a))),t):{};function oj(e={}){const t=new aj;function a(r,n){var s,i,o,u,l;if(r.type==="root")return{type:"root",children:r.children.map(p=>a(p,r)).filter(Boolean)};if(r.type==="element"){if(r.tagName==="p"&&r.children.every(h=>h.type==="text"&&/^\s*$/.test(h.value)))return null;if(r.tagName==="li"){let h=!1;r.children=(s=r.children)==null?void 0:s.flatMap(f=>f.type==="element"&&f.tagName==="p"?(h&&f.children.unshift({type:"element",tagName:"br",properties:{},children:[]}),h=!0,f.children):f)}(i=r.tagName)!=null&&i.match(/^h\d$/)&&(r.properties=r.properties||{},r.properties.id=String(((o=r.properties)==null?void 0:o.id)||t.slug(JH(r))).replace(/-+/g,"-").replace(/^-|-$/g,"").replace(/^(\d)/,"_$1")),r.tagName==="component-slot"&&(r.tagName="template");const p=(r.tagName==="template"&&((u=r.content)!=null&&u.children.length)?r.content.children:r.children).map(h=>a(h,r)).filter(Boolean);return{type:"element",tag:r.tagName,props:sj(r.tagName,r.properties),children:p}}return r.type==="text"&&(!/^\n+$/.test(r.value||"")||(l=n==null?void 0:n.properties)!=null&&l.emptyLinePlaceholder)?{type:"text",value:r.value}:e.keepComments&&r.type==="comment"?{type:"comment",value:r.value}:null}this.Compiler=r=>{const n=a(r);let s;const i=r.children.findIndex(o=>{var u;return o.type==="comment"&&((u=o.value)==null?void 0:u.trim())==="more"});if(i!==-1&&(s=a({type:"root",children:r.children.slice(0,i)}),s.children.find(o=>o.type==="element"&&o.tag==="pre"))){const o=n.children[n.children.length-1];o.type==="element"&&o.tag==="style"&&s.children.push(o)}return n.children=(n.children||[]).filter(o=>o.type!=="text"),{body:n,excerpt:s}}}let Pe,Sr;const cj=async(e={})=>{var n,s,i,o,u,l,p,h,f,m,g,b,C;Pe||(Pe=await Pn(()=>import("./Bb3iJIYE.js"),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url).catch(()=>({}))),Sr||(Sr=await Pn(()=>import("./bNaE6FFb.js"),[],import.meta.url).then(T=>T.getMdcConfigs()).catch(()=>[]));const t=[...Sr||[],...e.configs||[]];e.highlight!=null&&e.highlight!=!1&&e.highlight.highlighter!==void 0&&typeof e.highlight.highlighter!="function"&&(e={...e,highlight:{...e.highlight}},delete e.highlight.highlighter);const a=Bn(e,{remark:{plugins:Pe==null?void 0:Pe.remarkPlugins},rehype:{plugins:Pe==null?void 0:Pe.rehypePlugins},highlight:Pe==null?void 0:Pe.highlight},WH);(s=(n=a.rehype)==null?void 0:n.plugins)!=null&&s.highlight&&(a.rehype.plugins.highlight.options={...a.rehype.plugins.highlight.options||{},...a.highlight||{}});let r=tl();for(const T of t)r=await((o=(i=T.unified)==null?void 0:i.pre)==null?void 0:o.call(i,r))||r;r.use(oh);for(const T of t)r=await((l=(u=T.unified)==null?void 0:u.remark)==null?void 0:l.call(u,r))||r;await $i(r,(p=a.remark)==null?void 0:p.plugins),r.use(ad,(h=a.rehype)==null?void 0:h.options);for(const T of t)r=await((m=(f=T.unified)==null?void 0:f.rehype)==null?void 0:m.call(f,r))||r;await $i(r,(g=a.rehype)==null?void 0:g.plugins),r.use(oj,a);for(const T of t)r=await((C=(b=T.unified)==null?void 0:b.post)==null?void 0:C.call(b,r))||r;return async T=>{const{content:I,data:O}=await Yr(T),M=await r.process({value:I,data:O}),N=M.result,d=Object.assign(lj(N.body),O,(M==null?void 0:M.data)||{});let D;if(d.toc!==!1){const j=Bn(d.toc||{},a.toc);D=XH(N.body,j)}return{data:d,body:N.body,excerpt:N.excerpt,toc:D}}},uj=async(e,t={})=>(await cj(t))(e);function lj(e){let t="",a="";const r=e.children.filter(n=>n.type==="element"&&n.tag!=="hr");if(r.length&&r[0].tag==="h1"){const n=r.shift();t=Un(n)}if(r.length&&r[0].tag==="p"){const n=r.shift();a=Un(n)}return{title:t,description:a}}const fj=Mt({__name:"MDC",props:{tag:{type:[String,Boolean],default:"div"},value:{type:[String,Object],required:!0},excerpt:{type:Boolean,default:!1},parserOptions:{type:Object,default:()=>({})},class:{type:[String,Array,Object],default:""},unwrap:{type:[Boolean,String],default:!1}},async setup(e){let t,a;const r=e,n=Qe(()=>gu(r.value)),{data:s,refresh:i,error:o}=([t,a]=ys(async()=>ks(n.value,async()=>typeof r.value!="string"?r.value:await uj(r.value,r.parserOptions),"$FoKF9ndLbK")),t=await t,a(),t),u=Qe(()=>{var l,p;return r.excerpt?(l=s.value)==null?void 0:l.excerpt:(p=s.value)==null?void 0:p.body});return yu(()=>r.value,()=>{i()}),(l,p)=>{var f,m,g,b;const h=vu;return le(l.$slots,"default",{data:(f=q(s))==null?void 0:f.data,body:(m=q(s))==null?void 0:m.body,toc:(g=q(s))==null?void 0:g.toc,excerpt:(b=q(s))==null?void 0:b.excerpt,error:q(o)},()=>{var C;return[u.value?(Z(),Xe(h,{key:0,tag:r.tag,class:se(r.class),body:u.value,data:(C=q(s))==null?void 0:C.data,unwrap:r.unwrap},null,8,["tag","class","body","data","unwrap"])):ce("",!0)]})}}}),hj=Mt({inheritAttrs:!1,__name:"LandingHero",props:{title:{type:String,default:void 0},description:{type:String,default:void 0},links:{type:Array,default:()=>[]},orientation:{type:String,default:"vertical"},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=e,a=Qe(()=>{const s=sa("gap-16 sm:gap-y-24",t.orientation==="vertical"&&"flex flex-col",t.orientation==="horizontal"&&"grid lg:grid-cols-2 lg:items-center"),i=t.orientation==="vertical"?"text-center":"",o=sa("mt-10 flex flex-wrap gap-x-6 gap-y-3",t.orientation==="vertical"&&"justify-center");return{wrapper:"py-24 sm:py-32 md:py-40 relative",container:s,base:i,headline:"mb-10",title:"text-5xl font-bold tracking-tight text-gray-900 dark:text-white sm:text-7xl",description:"mt-6 text-lg tracking-tight text-gray-600 dark:text-gray-300",links:o}}),{ui:r,attrs:n}=Va("landing.hero",lt(t,"ui"),a,lt(t,"class"),!0);return(s,i)=>{const o=ws,u=bs;return Z(),ne("div",Ye({class:q(r).wrapper},q(n)),[le(s.$slots,"top"),Oe(u,{class:se(q(r).container)},{default:Be(()=>{var l;return[wt("div",{class:se(q(r).base)},[s.$slots.headline?(Z(),ne("div",{key:0,class:se(q(r).headline)},[le(s.$slots,"headline")],2)):ce("",!0),wt("h1",{class:se(q(r).title)},[le(s.$slots,"title",{},()=>[ct(Ie(e.title),1)])],2),e.description||s.$slots.description?(Z(),ne("div",{key:1,class:se(q(r).description)},[le(s.$slots,"description",{},()=>[ct(Ie(e.description),1)])],2)):ce("",!0),(l=e.links)!=null&&l.length||s.$slots.links?(Z(),ne("div",{key:2,class:se(q(r).links)},[le(s.$slots,"links",{},()=>[(Z(!0),ne(Ft,null,Ot(e.links,(p,h)=>(Z(),Xe(o,Ye({key:h,ref_for:!0},p,{onClick:p.click}),null,16,["onClick"]))),128))])],2)):ce("",!0)],2),le(s.$slots,"default")]}),_:3},8,["class"]),le(s.$slots,"bottom")],16)}}}),dj=ku(bu);function pj(e,t={}){const{x:a,y:r}=dj(t),n=Da(e??(window==null?void 0:window.document.body)),s=Da(0),i=Da(0);return ka&&wu([n,a,r],()=>{var f;const o=Eu(n);if(!o)return;const{left:u,top:l}=o.getBoundingClientRect(),p=a.value-(u+ka.scrollX),h=r.value-(l+ka.scrollY);Math.abs(p)>1500||Math.abs(h)>1500||((f=ka.screen)==null?void 0:f.width)<=800||(s.value=p,i.value=h)},{immediate:!0,throttle:50}),{x:a,y:r,elementX:s,elementY:i}}const mj=Mt({inheritAttrs:!1,__name:"LandingCard",props:{...Tu,title:{type:String,default:void 0},description:{type:String,default:void 0},icon:{type:String,default:void 0},color:{type:String,default:"primary"},orientation:{type:String,default:"vertical"},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){Au(m=>({"279a9e71":q(a),"11c76ebb":q(r)}));const t=e,a=Qe(()=>{var m;return t.color==="primary"?"rgb(var(--color-primary-DEFAULT))":((m=ba[t.color])==null?void 0:m["500"])||ba[t.color]||t.color}),r=Qe(()=>{var m;return t.color==="primary"?"rgb(var(--color-primary-DEFAULT))":((m=ba[t.color])==null?void 0:m["400"])||ba[t.color]||t.color}),n=Qe(()=>({wrapper:"relative group isolate rounded-xl background-gradient ring-1 ring-gray-200 dark:ring-gray-800 before:hidden before:lg:block before:absolute before:-inset-[2px] before:h-[calc(100%+4px)] before:w-[calc(100%+4px)] before:z-[-1] before:rounded-[13px] flex-1 flex flex-col shadow",to:"transition-shadow duration-200",base:"flex-1 flex flex-col overflow-hidden",container:"",body:{base:sa("gap-x-8 gap-y-4 rounded-xl flex-1",t.orientation==="vertical"&&"flex flex-col",!!i.default&&t.orientation==="horizontal"&&"grid lg:grid-cols-2 lg:items-center")},background:"bg-white dark:bg-gray-900 hover:bg-opacity-90 dark:hover:bg-opacity-90 transition-[background-opacity]",ring:"",rounded:"rounded-xl",shadow:"",icon:{wrapper:"mb-2 pointer-events-none",base:"w-8 h-8 flex-shrink-0 text-gray-900 dark:text-white"},title:"text-gray-900 dark:text-white text-base font-bold truncate",description:"text-[15px] text-gray-500 dark:text-gray-400 mt-1"})),s=Da(),i=Cu(),{elementX:o,elementY:u}=pj(s),{ui:l,attrs:p}=Va("landing.card",lt(t,"ui"),n,lt(t,"class"),!0),h=Qe(()=>xu(t)),f=Qe(()=>(t.title||i.title&&Du(i.title())||"Card link").trim());return(m,g)=>{const b=Es,C=tn,T=Pu;return Z(),ne("div",Ye({ref_key:"el",ref:s,style:{"--x":`${q(o)}px`,"--y":`${q(u)}px`},class:[q(l).wrapper,m.to&&[q(l).to,"to"]]},q(p)),[Oe(T,{ui:q(l)},{default:Be(()=>[wt("div",{class:se(q(l).container)},[m.to?(Z(),Xe(b,Ye({key:0,"aria-label":q(f)},q(h),{class:"focus:outline-none",tabindex:"-1"}),{default:Be(()=>g[0]||(g[0]=[wt("span",{class:"absolute inset-0","aria-hidden":"true"},null,-1)])),_:1},16,["aria-label"])):ce("",!0),e.icon||m.$slots.icon?(Z(),ne("div",{key:1,class:se(q(l).icon.wrapper)},[le(m.$slots,"icon",{},()=>[Oe(C,{name:e.icon,class:se(q(l).icon.base)},null,8,["name","class"])],!0)],2)):ce("",!0),e.title||m.$slots.title?(Z(),ne("p",{key:2,class:se(q(l).title)},[le(m.$slots,"title",{},()=>[ct(Ie(e.title),1)],!0)],2)):ce("",!0),e.description||m.$slots.description?(Z(),ne("div",{key:3,class:se(q(l).description)},[le(m.$slots,"description",{},()=>[ct(Ie(e.description),1)],!0)],2)):ce("",!0),le(m.$slots,"container",{},void 0,!0)],2),m.$slots.default?le(m.$slots,"default",{key:0},void 0,!0):ce("",!0)]),_:3},8,["ui"])],16)}}}),_j=zu(mj,[["__scopeId","data-v-98bf3305"]]),gj=Mt({inheritAttrs:!1,__name:"PageGrid",props:{class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t={wrapper:"grid grid-cols-1 sm:grid-cols-2 xl:grid-cols-3 gap-8"},a=e,{ui:r,attrs:n}=Va("page.grid",lt(a,"ui"),t,lt(a,"class"),!0);return(s,i)=>(Z(),ne("div",Ye({class:q(r).wrapper},q(n)),[le(s.$slots,"default")],16))}}),yj={key:0},kj={key:2},bj={key:0},wj=Mt({inheritAttrs:!1,__name:"LandingSection",props:{icon:{type:String,default:void 0},headline:{type:String,default:void 0},title:{type:String,default:void 0},description:{type:String,default:void 0},features:{type:Array,default:()=>[]},links:{type:Array,default:()=>[]},slot:{type:String,default:void 0},align:{type:String,default:"center"},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=Su(),a=e,r=Qe(()=>{const i=sa("gap-16 sm:gap-y-24",a.align==="center"?"flex flex-col":"grid lg:grid-cols-2 lg:items-center"),o=sa("",a.align==="center"&&"text-center flex flex-col items-center",a.align==="right"&&"lg:order-last");return{wrapper:"py-24 sm:py-32",container:i,base:o,icon:{wrapper:"flex mb-6",base:"w-10 h-10 flex-shrink-0 text-primary"},headline:"mb-2 text-base/7 font-semibold text-primary",title:"text-3xl font-bold tracking-tight text-gray-900 dark:text-white sm:text-4xl lg:text-5xl",description:"mt-6 text-lg/8 text-gray-600 dark:text-gray-300",links:"mt-8 flex flex-wrap gap-x-3 gap-y-1.5",features:{wrapper:{base:"mt-6 leading-7",list:"space-y-4",grid:"grid grid-cols-1 gap-x-6 gap-y-10 sm:grid-cols-2 lg:grid-cols-3 lg:gap-x-8 lg:gap-y-16"},base:"relative pl-8",name:"font-semibold text-gray-900 dark:text-white",description:"text-gray-500 dark:text-gray-400 leading-6",icon:{base:"absolute left-0 top-1 h-5 w-5 text-primary",name:t.ui.icons.check}}}}),{ui:n,attrs:s}=Va("landing.section",lt(a,"ui"),r,lt(a,"class"),!0);return(i,o)=>{const u=tn,l=ws,p=bs;return Z(),ne("div",Ye({class:q(n).wrapper},q(s)),[le(i.$slots,"top"),Oe(p,{class:se(q(n).container)},{default:Be(()=>{var h,f,m,g,b;return[e.icon||i.$slots.icon||e.headline||i.$slots.headline||e.title||i.$slots.title||e.description||i.$slots.description||(h=e.links)!=null&&h.length||i.$slots.links?(Z(),ne("div",{key:0,class:se(q(n).base)},[e.icon||i.$slots.icon?(Z(),ne("div",{key:0,class:se(q(n).icon.wrapper)},[le(i.$slots,"icon",{},()=>[Oe(u,{name:e.icon,class:se(q(n).icon.base)},null,8,["name","class"])])],2)):e.headline||i.$slots.headline?(Z(),ne("div",{key:1,class:se(q(n).headline)},[le(i.$slots,"headline",{},()=>[ct(Ie(e.headline),1)])],2)):ce("",!0),e.title||i.$slots.title?(Z(),ne("h2",{key:2,class:se(q(n).title)},[le(i.$slots,"title",{},()=>[ct(Ie(e.title),1)])],2)):ce("",!0),e.description||i.$slots.description?(Z(),ne("div",{key:3,class:se(q(n).description)},[le(i.$slots,"description",{},()=>[ct(Ie(e.description),1)])],2)):ce("",!0),e.align!=="center"&&((f=e.features)!=null&&f.length)?(Z(),ne("dl",{key:4,class:se([q(n).features.wrapper.base,q(n).features.wrapper.list])},[(Z(!0),ne(Ft,null,Ot(e.features,C=>(Z(),ne("div",{key:C.name,class:se(q(n).features.base)},[wt("dt",{class:se(q(n).features.name)},[Oe(u,{name:C.icon||q(n).features.icon.name,class:se(q(n).features.icon.base),"aria-hidden":"true"},null,8,["name","class"]),C.name?(Z(),ne("span",yj,Ie(C.name),1)):ce("",!0)],2),C.description?(Z(),ne("dd",{key:0,class:se(q(n).features.description)},Ie(C.description),3)):ce("",!0)],2))),128))],2)):ce("",!0),e.align!=="center"&&((m=e.links)!=null&&m.length||i.$slots.links)?(Z(),ne("div",{key:5,class:se(q(n).links)},[le(i.$slots,"links",{},()=>[(Z(!0),ne(Ft,null,Ot(e.links,(C,T)=>(Z(),Xe(l,Ye({key:T,ref_for:!0},C,{onClick:C.click}),null,16,["onClick"]))),128))])],2)):ce("",!0)],2)):ce("",!0),i.$slots[e.slot||"default"]?le(i.$slots,e.slot||"default",{key:1}):e.align==="right"?(Z(),ne("div",kj)):ce("",!0),e.align==="center"&&((g=e.features)!=null&&g.length)?(Z(),ne("dl",{key:3,class:se([q(n).features.wrapper.base,q(n).features.wrapper.grid])},[(Z(!0),ne(Ft,null,Ot(e.features,C=>(Z(),ne("div",{key:C.name,class:se(q(n).features.base)},[wt("dt",{class:se(q(n).features.name)},[Oe(u,{name:C.icon||q(n).features.icon.name,class:se(q(n).features.icon.base),"aria-hidden":"true"},null,8,["name","class"]),C.name?(Z(),ne("span",bj,Ie(C.name),1)):ce("",!0)],2),C.description?(Z(),ne("dd",{key:0,class:se(q(n).features.description)},Ie(C.description),3)):ce("",!0)],2))),128))],2)):ce("",!0),e.align==="center"&&((b=e.links)!=null&&b.length||i.$slots.links)?(Z(),ne("div",{key:4,class:se(q(Iu)(q(n).links,"mt-0 justify-center"))},[le(i.$slots,"links",{},()=>[(Z(!0),ne(Ft,null,Ot(e.links,(C,T)=>(Z(),Xe(l,Ye({key:T,ref_for:!0},C,{onClick:C.click}),null,16,["onClick"]))),128))])],2)):ce("",!0)]}),_:3},8,["class"]),le(i.$slots,"bottom")],16)}}}),Ej=Mt({__name:"index",async setup(e){let t,a;const{data:r}=([t,a]=ys(()=>ks("index",()=>Ou("/").findOne())),t=await t,a(),t);return Nu({titleTemplate:"",title:r.value.title,ogTitle:r.value.title,description:r.value.description,ogDescription:r.value.description}),(n,s)=>{const i=Es,o=tn,u=Lu,l=fj,p=hj,h=_j,f=gj,m=wj;return Z(),ne("div",null,[q(r).hero?(Z(),Xe(p,Fu(Ye({key:0},q(r).hero)),{headline:Be(()=>[q(r).hero.headline?(Z(),Xe(u,{key:0,variant:"subtle",size:"lg",class:"relative rounded-full font-semibold"},{default:Be(()=>[Oe(i,{to:q(r).hero.headline.to,target:"_blank",class:"focus:outline-none",tabindex:"-1"},{default:Be(()=>s[0]||(s[0]=[wt("span",{class:"absolute inset-0","aria-hidden":"true"},null,-1)])),_:1},8,["to"]),ct(" "+Ie(q(r).hero.headline.label)+" ",1),q(r).hero.headline.icon?(Z(),Xe(o,{key:0,name:q(r).hero.headline.icon,class:"ml-1 w-4 h-4 pointer-events-none"},null,8,["name"])):ce("",!0)]),_:1})):ce("",!0)]),title:Be(()=>[Oe(l,{value:q(r).hero.title},null,8,["value"])]),default:Be(()=>[Oe(l,{value:q(r).hero.code,class:"prose prose-primary dark:prose-invert mx-auto"},null,8,["value"])]),_:1},16)):ce("",!0),Oe(m,{title:q(r).features.title,links:q(r).features.links},{default:Be(()=>[Oe(f,null,{default:Be(()=>[(Z(!0),ne(Ft,null,Ot(q(r).features.items,(g,b)=>(Z(),Xe(h,Ye({key:b,ref_for:!0},g),null,16))),128))]),_:1})]),_:1},8,["title","links"])])}}}),Sj=Object.freeze(Object.defineProperty({__proto__:null,default:Ej},Symbol.toStringTag,{value:"Module"}));export{y7 as a,f7 as b,Vi as c,q7 as h,Sj as i,zj as s,JH as t,Ze as v,Mo as z}; diff --git a/_nuxt/DYwN3dj-.js b/_nuxt/DYwN3dj-.js new file mode 100644 index 0000000..a62d8b0 --- /dev/null +++ b/_nuxt/DYwN3dj-.js @@ -0,0 +1 @@ +import{k as e,c as r,e as c}from"./WKNqgS7_.js";const o={};function t(n,s){return r(),c("hr")}const _=e(o,[["render",t]]);export{_ as default}; diff --git a/_nuxt/D_mu--ha.js b/_nuxt/D_mu--ha.js new file mode 100644 index 0000000..899da5a --- /dev/null +++ b/_nuxt/D_mu--ha.js @@ -0,0 +1 @@ +import{k as r,c as t,e as o,ah as s}from"./WKNqgS7_.js";const c={};function n(e,a){return t(),o("td",null,[s(e.$slots,"default")])}const d=r(c,[["render",n]]);export{d as default}; diff --git a/_nuxt/Dbl-o2qH.js b/_nuxt/Dbl-o2qH.js new file mode 100644 index 0000000..c714b0a --- /dev/null +++ b/_nuxt/Dbl-o2qH.js @@ -0,0 +1 @@ +import{d as c,an as p,ao as i,c as d,e as l,ah as u,ai as f,C as e}from"./WKNqgS7_.js";const _=c({inheritAttrs:!1,__name:"CardGroup",props:{class:{type:[String,Object,Array],default:void 0}},setup(r){const s={wrapper:"grid sm:grid-cols-2 gap-4"},a=r,{ui:t,attrs:o}=p("content.cardGroup",void 0,s,i(a,"class"),!0);return(n,m)=>(d(),l("div",f({class:e(t).wrapper},e(o)),[u(n.$slots,"default")],16))}});export{_ as default}; diff --git a/_nuxt/DdkA8PcY.js b/_nuxt/DdkA8PcY.js new file mode 100644 index 0000000..f5a1de4 --- /dev/null +++ b/_nuxt/DdkA8PcY.js @@ -0,0 +1 @@ +import{d as n,C as o,c as s,e as a,g as e,f as r,h as i}from"./WKNqgS7_.js";const d={key:0},u=n({__name:"ProseScript",props:{src:{type:String,default:""}},setup(c){return(p,t)=>o(!1)?(s(),a("div",d,t[0]||(t[0]=[e(" Rendering the "),r("code",null,"script",-1),e(" element is dangerous and is disabled by default. Consider implementing your own "),r("code",null,"ProseScript",-1),e(" element to have control over script rendering. ")]))):i("",!0)}});export{u as default}; diff --git a/_nuxt/Df0uYweg.js b/_nuxt/Df0uYweg.js new file mode 100644 index 0000000..0807b0d --- /dev/null +++ b/_nuxt/Df0uYweg.js @@ -0,0 +1 @@ +import{d as g,bh as b,B as S,p as C,E as _,aT as k,q as m,aY as A,b6 as N,S as O}from"./WKNqgS7_.js";const Q=g({name:"ContentQuery",props:{path:{type:String,required:!1,default:void 0},only:{type:Array,required:!1,default:void 0},without:{type:Array,required:!1,default:void 0},where:{type:Object,required:!1,default:void 0},sort:{type:Object,required:!1,default:void 0},limit:{type:Number,required:!1,default:void 0},skip:{type:Number,required:!1,default:void 0},locale:{type:String,required:!1,default:void 0},find:{type:String,required:!1,default:void 0}},async setup(a){const{path:t,only:r,without:o,where:u,sort:l,limit:d,skip:f,locale:s,find:h}=b(a),y=S(()=>{var e;return(e=t.value)==null?void 0:e.includes("/_")}),p=!C().public.content.experimental.advanceQuery;_(()=>a,()=>n(),{deep:!0});const i=e=>p?e!=null&&e.surround?e.surround:e!=null&&e._id||Array.isArray(e)?e:e==null?void 0:e.result:e.result,{data:v,refresh:n}=await k(`content-query-${A(a)}`,()=>{let e;return t.value?e=m(t.value):e=m(),r.value&&(e=e.only(r.value)),o.value&&(e=e.without(o.value)),u.value&&(e=e.where(u.value)),l.value&&(e=e.sort(l.value)),d.value&&(e=e.limit(d.value)),f.value&&(e=e.skip(f.value)),s.value&&(e=e.where({_locale:s.value})),h.value==="one"?e.findOne().then(i):h.value==="surround"?t.value?p?e.findSurround(t.value):e.withSurround(t.value).findOne().then(i):(console.warn("[Content] Surround queries requires `path` prop to be set."),console.warn("[Content] Query without `path` will return regular `find()` results."),e.find().then(i)):e.find().then(i)});return{isPartial:y,data:v,refresh:n}},render(a){var c;const t=N(),{data:r,refresh:o,isPartial:u,path:l,only:d,without:f,where:s,sort:h,limit:y,skip:p,locale:i,find:v}=a,n={path:l,only:d,without:f,where:s,sort:h,limit:y,skip:p,locale:i,find:v};if(n.find==="one"){if(!r&&(t!=null&&t["not-found"]))return t["not-found"]({props:n,...this.$attrs});if(t!=null&&t.empty&&(r==null?void 0:r._type)==="markdown"&&!((c=r==null?void 0:r.body)!=null&&c.children.length))return t.empty({props:n,...this.$attrs})}else if((!r||!r.length)&&t!=null&&t["not-found"])return t["not-found"]({props:n,...this.$attrs});return t!=null&&t.default?t.default({data:r,refresh:o,isPartial:u,props:n,...this.$attrs}):((w,q)=>O("pre",null,JSON.stringify({message:"You should use slots with <ContentQuery>!",slot:w,data:q},null,2)))("default",{data:r,props:n,isPartial:u})}}),R=Q;export{R as default}; diff --git a/_nuxt/DgenBvVF.js b/_nuxt/DgenBvVF.js new file mode 100644 index 0000000..7ef6bda --- /dev/null +++ b/_nuxt/DgenBvVF.js @@ -0,0 +1 @@ +import{d as l,x as u,B as d,an as m,c as h,e as _,i as s,w as f,f as x,n as o,C as a,ah as g,a9 as w,aJ as v}from"./WKNqgS7_.js";const y=["id"],b=l({__name:"ProseH1",props:{id:{type:String,required:!0}},setup(n){const t=u(),r=d(()=>({wrapper:"scroll-mt-[calc(48px+48px+var(--header-height))] lg:scroll-mt-[calc(48px+var(--header-height))]",icon:{wrapper:"-ml-6 pr-2 py-2 inline-flex opacity-0 group-hover:lg:opacity-100 transition-opacity absolute",base:"w-4 h-4 text-primary",name:t.ui.icons.hash}})),{ui:e}=m("content.prose.h1",void 0,r,void 0,!0);return(c,C)=>{const i=w,p=v;return h(),_("h1",{id:n.id,class:o(a(e).wrapper)},[s(p,{href:`#${n.id}`,class:"group"},{default:f(()=>[x("div",{class:o(a(e).icon.wrapper)},[s(i,{name:a(e).icon.name,class:o(a(e).icon.base)},null,8,["name","class"])],2),g(c.$slots,"default")]),_:3},8,["href"])],10,y)}}});export{b as default}; diff --git a/_nuxt/DiETWf-A.js b/_nuxt/DiETWf-A.js new file mode 100644 index 0000000..34e3329 --- /dev/null +++ b/_nuxt/DiETWf-A.js @@ -0,0 +1 @@ +import s from"./CUMxMy4f.js";import{d as o,b6 as u,B as f,bk as m}from"./WKNqgS7_.js";import"./BneCoJRQ.js";const d=o({name:"Markdown",extends:s,setup(t){const{parent:e}=m(),{between:n,default:a}=u(),r=f(()=>typeof t.unwrap=="string"?t.unwrap.split(" "):["*"]);return{fallbackSlot:a,tags:r,between:n,parent:e}}});export{d as default}; diff --git a/_nuxt/Dnfm4U7b.js b/_nuxt/Dnfm4U7b.js new file mode 100644 index 0000000..664e478 --- /dev/null +++ b/_nuxt/Dnfm4U7b.js @@ -0,0 +1 @@ +const n=Object.freeze(JSON.parse('{"displayName":"Diff","name":"diff","patterns":[{"captures":{"1":{"name":"punctuation.definition.separator.diff"}},"match":"^((\\\\*{15})|(={67})|(-{3}))$\\\\n?","name":"meta.separator.diff"},{"match":"^\\\\d+(,\\\\d+)*(a|d|c)\\\\d+(,\\\\d+)*$\\\\n?","name":"meta.diff.range.normal"},{"captures":{"1":{"name":"punctuation.definition.range.diff"},"2":{"name":"meta.toc-list.line-number.diff"},"3":{"name":"punctuation.definition.range.diff"}},"match":"^(@@)\\\\s*(.+?)\\\\s*(@@)($\\\\n?)?","name":"meta.diff.range.unified"},{"captures":{"3":{"name":"punctuation.definition.range.diff"},"4":{"name":"punctuation.definition.range.diff"},"6":{"name":"punctuation.definition.range.diff"},"7":{"name":"punctuation.definition.range.diff"}},"match":"^(((-{3}) .+ (-{4}))|((\\\\*{3}) .+ (\\\\*{4})))$\\\\n?","name":"meta.diff.range.context"},{"match":"^diff --git a/.*$\\\\n?","name":"meta.diff.header.git"},{"match":"^diff (-|\\\\S+\\\\s+\\\\S+).*$\\\\n?","name":"meta.diff.header.command"},{"captures":{"4":{"name":"punctuation.definition.from-file.diff"},"6":{"name":"punctuation.definition.from-file.diff"},"7":{"name":"punctuation.definition.from-file.diff"}},"match":"(^(((-{3}) .+)|((\\\\*{3}) .+))$\\\\n?|^(={4}) .+(?= - ))","name":"meta.diff.header.from-file"},{"captures":{"2":{"name":"punctuation.definition.to-file.diff"},"3":{"name":"punctuation.definition.to-file.diff"},"4":{"name":"punctuation.definition.to-file.diff"}},"match":"(^(\\\\+{3}) .+$\\\\n?| (-) .* (={4})$\\\\n?)","name":"meta.diff.header.to-file"},{"captures":{"3":{"name":"punctuation.definition.inserted.diff"},"6":{"name":"punctuation.definition.inserted.diff"}},"match":"^(((>)( .*)?)|((\\\\+).*))$\\\\n?","name":"markup.inserted.diff"},{"captures":{"1":{"name":"punctuation.definition.changed.diff"}},"match":"^(!).*$\\\\n?","name":"markup.changed.diff"},{"captures":{"3":{"name":"punctuation.definition.deleted.diff"},"6":{"name":"punctuation.definition.deleted.diff"}},"match":"^(((<)( .*)?)|((-).*))$\\\\n?","name":"markup.deleted.diff"},{"begin":"^(#)","captures":{"1":{"name":"punctuation.definition.comment.diff"}},"comment":"Git produces unified diffs with embedded comments\\"","end":"\\\\n","name":"comment.line.number-sign.diff"},{"match":"^index [0-9a-f]{7,40}\\\\.\\\\.[0-9a-f]{7,40}.*$\\\\n?","name":"meta.diff.index.git"},{"captures":{"1":{"name":"punctuation.separator.key-value.diff"},"2":{"name":"meta.toc-list.file-name.diff"}},"match":"^Index(:) (.+)$\\\\n?","name":"meta.diff.index"},{"match":"^Only in .*: .*$\\\\n?","name":"meta.diff.only-in"}],"scopeName":"source.diff"}')),e=[n];export{e as default}; diff --git a/_nuxt/Do6QRGx0.js b/_nuxt/Do6QRGx0.js new file mode 100644 index 0000000..6186d8e --- /dev/null +++ b/_nuxt/Do6QRGx0.js @@ -0,0 +1 @@ +import{d,bh as l,B as v,m as f,z as p,aT as m,bi as g,aY as h,b6 as y,S as i,aJ as _}from"./WKNqgS7_.js";const b=d({name:"ContentNavigation",props:{query:{type:Object,required:!1,default:void 0}},async setup(u){const{query:a}=l(u),n=v(()=>{var t;return typeof((t=a.value)==null?void 0:t.params)=="function"?a.value.params():a.value});if(!n.value&&f("dd-navigation").value){const{navigation:t}=p();return{navigation:t}}const{data:o}=await m(`content-navigation-${h(n.value)}`,()=>g(n.value));return{navigation:o}},render(u){const a=y(),{navigation:n}=u,o=e=>i(_,{to:e._path},()=>e.title),t=(e,r)=>i("ul",r?{"data-level":r}:null,e.map(s=>s.children?i("li",null,[o(s),t(s.children,r+1)]):i("li",null,o(s)))),c=e=>t(e,0);return a!=null&&a.default?a.default({navigation:n,...this.$attrs}):c(n)}}),q=b;export{q as default}; diff --git a/_nuxt/DqDUbQPw.js b/_nuxt/DqDUbQPw.js new file mode 100644 index 0000000..281a6d6 --- /dev/null +++ b/_nuxt/DqDUbQPw.js @@ -0,0 +1 @@ +import{d,an as n,ao as c,c as p,e as l,ah as f,ai as u,C as e}from"./WKNqgS7_.js";const y=d({inheritAttrs:!1,__name:"FieldGroup",props:{class:{type:[String,Object,Array],default:void 0}},setup(t){const r={wrapper:"mt-5 space-y-5 divide-y divide-gray-200 dark:divide-gray-800 [&>div]:pt-5 [&>div:first-child]:pt-0 [&>div:first-child]:mt-0"},s=t,{ui:a,attrs:i}=n("content.fieldGroup",void 0,r,c(s,"class"),!0);return(o,m)=>(p(),l("div",u({class:e(a).wrapper},e(i)),[f(o.$slots,"default")],16))}});export{y as default}; diff --git a/_nuxt/Dt1gzhwr.js b/_nuxt/Dt1gzhwr.js new file mode 100644 index 0000000..439b53e --- /dev/null +++ b/_nuxt/Dt1gzhwr.js @@ -0,0 +1 @@ +import t from"./D0ybgVpa.js";const e=Object.freeze(JSON.parse('{"displayName":"HTML (Derivative)","injections":{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{"comment":"Uses R: to ensure this matches after any other injections.","patterns":[{"match":"<","name":"invalid.illegal.bad-angle-bracket.html"}]}},"name":"html-derivative","patterns":[{"include":"text.html.basic#core-minus-invalid"},{"begin":"(</?)(\\\\w[^\\\\s>]*)(?<!/)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"end":"((?: ?/)?>)","endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}},"name":"meta.tag.other.unrecognized.html.derivative","patterns":[{"include":"text.html.basic#attribute"}]}],"scopeName":"text.html.derivative","embeddedLangs":["html"]}')),n=[...t,e];export{n as h}; diff --git a/_nuxt/DwTMntNX.js b/_nuxt/DwTMntNX.js new file mode 100644 index 0000000..cf746ee --- /dev/null +++ b/_nuxt/DwTMntNX.js @@ -0,0 +1 @@ +import{br as $,bs as N,bt as q,bu as U,ap as P,bv as D,bw as W,u as E,p as O,B as v,d as B,bx as H,r as I,o as F,c as k,e as T,ai as G,C as x,bg as J,ag as V,ba as X}from"./WKNqgS7_.js";async function Q(e,t){return await Y(t).catch(r=>(console.error("Failed to get image meta for "+t,r+""),{width:0,height:0,ratio:0}))}async function Y(e){if(typeof Image>"u")throw new TypeError("Image not supported");return new Promise((t,i)=>{const r=new Image;r.onload=()=>{const s={width:r.width,height:r.height,ratio:r.width/r.height};t(s)},r.onerror=s=>i(s),r.src=e})}function M(e){return t=>t?e[t]||t:e.missingValue}function Z({formatter:e,keyMap:t,joinWith:i="/",valueMap:r}={}){e||(e=(n,o)=>`${n}=${o}`),t&&typeof t!="function"&&(t=M(t));const s=r||{};return Object.keys(s).forEach(n=>{typeof s[n]!="function"&&(s[n]=M(s[n]))}),(n={})=>Object.entries(n).filter(([a,d])=>typeof d<"u").map(([a,d])=>{const l=s[a];return typeof l=="function"&&(d=l(n[a])),a=typeof t=="function"?t(a):a,e(a,d)}).join(i)}function y(e=""){if(typeof e=="number")return e;if(typeof e=="string"&&e.replace("px","").match(/^\d+$/g))return Number.parseInt(e,10)}function K(e=""){if(e===void 0||!e.length)return[];const t=new Set;for(const i of e.split(" ")){const r=Number.parseInt(i.replace("x",""));r&&t.add(r)}return Array.from(t)}function ee(e){if(e.length===0)throw new Error("`densities` must not be empty, configure to `1` to render regular size only (DPR 1.0)")}function te(e){const t={};if(typeof e=="string")for(const i of e.split(/[\s,]+/).filter(r=>r)){const r=i.split(":");r.length!==2?t["1px"]=r[0].trim():t[r[0].trim()]=r[1].trim()}else Object.assign(t,e);return t}function re(e){const t={options:e},i=(s,n={})=>C(t,s,n),r=(s,n={},o={})=>i(s,{...o,modifiers:P(n,o.modifiers||{})}).url;for(const s in e.presets)r[s]=(n,o,a)=>r(n,o,{...e.presets[s],...a});return r.options=e,r.getImage=i,r.getMeta=(s,n)=>ie(t,s,n),r.getSizes=(s,n)=>oe(t,s,n),t.$img=r,r}async function ie(e,t,i){const r=C(e,t,{...i});return typeof r.getMeta=="function"?await r.getMeta():await Q(e,r.url)}function C(e,t,i){var l,u;if(t&&typeof t!="string")throw new TypeError(`input must be a string (received ${typeof t}: ${JSON.stringify(t)})`);if(!t||t.startsWith("data:"))return{url:t};const{provider:r,defaults:s}=se(e,i.provider||e.options.provider),n=ne(e,i.preset);if(t=$(t)?t:N(t),!r.supportsAlias){for(const g in e.options.alias)if(t.startsWith(g)){const h=e.options.alias[g];h&&(t=q(h,t.slice(g.length)))}}if(r.validateDomains&&$(t)){const g=U(t).host;if(!e.options.domains.find(h=>h===g))return{url:t}}const o=P(i,n,s);o.modifiers={...o.modifiers};const a=o.modifiers.format;(l=o.modifiers)!=null&&l.width&&(o.modifiers.width=y(o.modifiers.width)),(u=o.modifiers)!=null&&u.height&&(o.modifiers.height=y(o.modifiers.height));const d=r.getImage(t,o,e);return d.format=d.format||a||"",d}function se(e,t){const i=e.options.providers[t];if(!i)throw new Error("Unknown provider: "+t);return i}function ne(e,t){if(!t)return{};if(!e.options.presets[t])throw new Error("Unknown preset: "+t);return e.options.presets[t]}function oe(e,t,i){var b,z,_,c,m;const r=y((b=i.modifiers)==null?void 0:b.width),s=y((z=i.modifiers)==null?void 0:z.height),n=te(i.sizes),o=(_=i.densities)!=null&&_.trim()?K(i.densities.trim()):e.options.densities;ee(o);const a=r&&s?s/r:0,d=[],l=[];if(Object.keys(n).length>=1){for(const f in n){const p=j(f,String(n[f]),s,a,e);if(p!==void 0){d.push({size:p.size,screenMaxWidth:p.screenMaxWidth,media:`(max-width: ${p.screenMaxWidth}px)`});for(const w of o)l.push({width:p._cWidth*w,src:A(e,t,i,p,w)})}}ae(d)}else for(const f of o){const p=Object.keys(n)[0];let w=p?j(p,String(n[p]),s,a,e):void 0;w===void 0&&(w={size:"",screenMaxWidth:0,_cWidth:(c=i.modifiers)==null?void 0:c.width,_cHeight:(m=i.modifiers)==null?void 0:m.height}),l.push({width:f,src:A(e,t,i,w,f)})}ce(l);const u=l[l.length-1],g=d.length?d.map(f=>`${f.media?f.media+" ":""}${f.size}`).join(", "):void 0,h=g?"w":"x",S=l.map(f=>`${f.src} ${f.width}${h}`).join(", ");return{sizes:g,srcset:S,src:u==null?void 0:u.src}}function j(e,t,i,r,s){const n=s.options.screens&&s.options.screens[e]||Number.parseInt(e),o=t.endsWith("vw");if(!o&&/^\d+$/.test(t)&&(t=t+"px"),!o&&!t.endsWith("px"))return;let a=Number.parseInt(t);if(!n||!a)return;o&&(a=Math.round(a/100*n));const d=r?Math.round(a*r):i;return{size:t,screenMaxWidth:n,_cWidth:a,_cHeight:d}}function A(e,t,i,r,s){return e.$img(t,{...i.modifiers,width:r._cWidth?r._cWidth*s:void 0,height:r._cHeight?r._cHeight*s:void 0},i)}function ae(e){var i;e.sort((r,s)=>r.screenMaxWidth-s.screenMaxWidth);let t=null;for(let r=e.length-1;r>=0;r--){const s=e[r];s.media===t&&e.splice(r,1),t=s.media}for(let r=0;r<e.length;r++)e[r].media=((i=e[r+1])==null?void 0:i.media)||""}function ce(e){e.sort((i,r)=>i.width-r.width);let t=null;for(let i=e.length-1;i>=0;i--){const r=e[i];r.width===t&&e.splice(i,1),t=r.width}}const de=Z({keyMap:{format:"f",fit:"fit",width:"w",height:"h",resize:"s",quality:"q",background:"b"},joinWith:"&",formatter:(e,t)=>W(e)+"_"+W(t)}),le=(e,{modifiers:t={},baseURL:i}={},r)=>{t.width&&t.height&&(t.resize=`${t.width}x${t.height}`,delete t.width,delete t.height);const s=de(t)||"_";return i||(i=q(r.options.nuxt.baseURL,"/_ipx")),{url:q(i,s,D(e))}},ue=!0,fe=!0,ge=Object.freeze(Object.defineProperty({__proto__:null,getImage:le,supportsAlias:fe,validateDomains:ue},Symbol.toStringTag,{value:"Module"})),L={screens:{xs:320,sm:640,md:768,lg:1024,xl:1280,xxl:1536,"2xl":1536},presets:{},provider:"ipxStatic",domains:[],alias:{},densities:[1,2],format:["webp"]};L.providers={ipxStatic:{provider:ge,defaults:{}}};const R=()=>{const e=O(),t=E();return t.$img||t._img||(t._img=re({...L,nuxt:{baseURL:e.app.baseURL},runtimeConfig:e}))};function he(e){var t;(t=performance==null?void 0:performance.mark)==null||t.call(performance,"mark_feature_usage",{detail:{feature:e}})}const me={src:{type:String,required:!1},format:{type:String,required:!1},quality:{type:[Number,String],required:!1},background:{type:String,required:!1},fit:{type:String,required:!1},modifiers:{type:Object,required:!1},preset:{type:String,required:!1},provider:{type:String,required:!1},sizes:{type:[Object,String],required:!1},densities:{type:String,required:!1},preload:{type:[Boolean,Object],required:!1},width:{type:[String,Number],required:!1},height:{type:[String,Number],required:!1},alt:{type:String,required:!1},referrerpolicy:{type:String,required:!1},usemap:{type:String,required:!1},longdesc:{type:String,required:!1},ismap:{type:Boolean,required:!1},loading:{type:String,required:!1,validator:e=>["lazy","eager"].includes(e)},crossorigin:{type:[Boolean,String],required:!1,validator:e=>["anonymous","use-credentials","",!0,!1].includes(e)},decoding:{type:String,required:!1,validator:e=>["async","auto","sync"].includes(e)},nonce:{type:[String],required:!1}},pe=e=>{const t=v(()=>({provider:e.provider,preset:e.preset})),i=v(()=>({width:y(e.width),height:y(e.height),alt:e.alt,referrerpolicy:e.referrerpolicy,usemap:e.usemap,longdesc:e.longdesc,ismap:e.ismap,crossorigin:e.crossorigin===!0?"anonymous":e.crossorigin||void 0,loading:e.loading,decoding:e.decoding,nonce:e.nonce})),r=R(),s=v(()=>({...e.modifiers,width:y(e.width),height:y(e.height),format:e.format,quality:e.quality||r.options.quality,background:e.background,fit:e.fit}));return{options:t,attrs:i,modifiers:s}},ye={...me,placeholder:{type:[Boolean,String,Number,Array],required:!1},placeholderClass:{type:String,required:!1}},ve=["src"],we=B({__name:"NuxtImg",props:ye,emits:["load","error"],setup(e,{emit:t}){const i=e,r=H(),s=t,n=!1,o=R(),a=pe(i),d=I(!1),l=I(),u=v(()=>o.getSizes(i.src,{...a.options.value,sizes:i.sizes,densities:i.densities,modifiers:{...a.modifiers.value,width:y(i.width),height:y(i.height)}})),g=v(()=>{const c={...a.attrs.value,"data-nuxt-img":""};return(!i.placeholder||d.value)&&(c.sizes=u.value.sizes,c.srcset=u.value.srcset),c}),h=v(()=>{let c=i.placeholder;if(c===""&&(c=!0),!c||d.value)return!1;if(typeof c=="string")return c;const m=Array.isArray(c)?c:typeof c=="number"?[c,c]:[10,10];return o(i.src,{...a.modifiers.value,width:m[0],height:m[1],quality:m[2]||50,blur:m[3]||3},a.options.value)}),S=v(()=>i.sizes?u.value.src:o(i.src,a.modifiers.value,a.options.value)),b=v(()=>h.value?h.value:S.value),_=E().isHydrating;return F(()=>{if(h.value){const c=new Image;S.value&&(c.src=S.value),i.sizes&&(c.sizes=u.value.sizes||"",c.srcset=u.value.srcset),c.onload=m=>{d.value=!0,s("load",m)},he("nuxt-image");return}l.value&&(l.value.complete&&_&&(l.value.getAttribute("data-error")?s("error",new Event("error")):s("load",new Event("load"))),l.value.onload=c=>{s("load",c)},l.value.onerror=c=>{s("error",c)})}),(c,m)=>(k(),T("img",G({ref_key:"imgEl",ref:l,class:i.placeholder&&!d.value?i.placeholderClass:void 0},{...x(n)?{onerror:"this.setAttribute('data-error', 1)"}:{},...g.value,...x(r)},{src:b.value}),null,16,ve))}}),be=B({__name:"ProseImg",props:{src:{type:String,default:""},alt:{type:String,default:""},width:{type:[String,Number],default:void 0},height:{type:[String,Number],default:void 0}},setup(e){const t=e,i=v(()=>{var r;if((r=t.src)!=null&&r.startsWith("/")&&!t.src.startsWith("//")){const s=N(J(O().app.baseURL));if(s!=="/"&&!t.src.startsWith(s))return q(s,t.src)}return t.src});return(r,s)=>(k(),V(X(x(we)),{src:x(i),alt:t.alt,width:t.width,height:t.height},null,8,["src","alt","width","height"]))}});export{be as default}; diff --git a/_nuxt/DwZvmNGs.js b/_nuxt/DwZvmNGs.js new file mode 100644 index 0000000..29e0c74 --- /dev/null +++ b/_nuxt/DwZvmNGs.js @@ -0,0 +1 @@ +import{k as r,c as o,e as s,ah as t}from"./WKNqgS7_.js";const c={};function n(e,a){return o(),s("ul",null,[t(e.$slots,"default")])}const f=r(c,[["render",n]]);export{f as default}; diff --git a/_nuxt/DyXibH8M.js b/_nuxt/DyXibH8M.js new file mode 100644 index 0000000..5726336 --- /dev/null +++ b/_nuxt/DyXibH8M.js @@ -0,0 +1,2 @@ +function p(e,t,s,i=!1){return{name:e,code(o){const f=o.children.filter(n=>n.type==="element"),c=[];f.forEach((n,d)=>{let l;for(const r of n.children){if(r.type!=="element")continue;const a=r.children[0];if(a.type!=="text")continue;let h=!1;a.value=a.value.replace(t,(...m)=>s.call(this,m,n,r,f,d)?(h=!0,""):m[0]),h&&!a.value.trim()&&(l=r)}if(l&&(n.children.splice(n.children.indexOf(l),1),n.children.length===0&&(c.push(n),i))){const r=o.children[o.children.indexOf(n)+1];r&&r.type==="text"&&r.value===` +`&&c.push(r)}});for(const n of c)o.children.splice(o.children.indexOf(n),1)}}}function g(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function u(e={},t="@shikijs/transformers:notation-map"){const{classMap:s={},classActivePre:i=void 0}=e;return p(t,new RegExp(`\\s*(?://|/\\*|<!--|#|--|%{1,2}|;{1,2}|"|')\\s+\\[!code (${Object.keys(s).map(g).join("|")})(:\\d+)?\\]\\s*(?:\\*/|-->)?\\s*$`),function([o,f,c=":1"],n,d,l,r){const a=Number.parseInt(c.slice(1),10);return l.slice(r,r+a).forEach(h=>{this.addClassToHast(h,s[f])}),i&&this.addClassToHast(this.pre,i),!0})}function v(e={}){const{classLineAdd:t="diff add",classLineRemove:s="diff remove",classActivePre:i="has-diff"}=e;return u({classMap:{"++":t,"--":s},classActivePre:i},"@shikijs/transformers:notation-diff")}function x(e={}){const{classMap:t={error:["highlighted","error"],warning:["highlighted","warning"]},classActivePre:s="has-highlighted"}=e;return u({classMap:t,classActivePre:s},"@shikijs/transformers:notation-error-level")}function A(e={}){const{classActiveLine:t="focused",classActivePre:s="has-focused"}=e;return u({classMap:{focus:t},classActivePre:s},"@shikijs/transformers:notation-focus")}function N(e={}){const{classActiveLine:t="highlighted",classActivePre:s="has-highlighted"}=e;return u({classMap:{highlight:t,hl:t},classActivePre:s},"@shikijs/transformers:notation-highlight")}export{p as createCommentNotationTransformer,v as transformerNotationDiff,x as transformerNotationErrorLevel,A as transformerNotationFocus,N as transformerNotationHighlight}; diff --git a/_nuxt/HNM5thJl.js b/_nuxt/HNM5thJl.js new file mode 100644 index 0000000..589f2e3 --- /dev/null +++ b/_nuxt/HNM5thJl.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse(`{"displayName":"Shell","name":"shellscript","patterns":[{"include":"#initial_context"}],"repository":{"alias_statement":{"begin":"(?:(?:[ \\\\t]*+)(alias)(?:[ \\\\t]*+)((?:(?:((?<!\\\\w)-\\\\w+\\\\b)(?:[ \\\\t]*+))*))(?:(?:[ \\\\t]*+)(?:((?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))(?:(?:(\\\\[)((?:(?:(?:(?:\\\\$?)(?:(?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))|@)|\\\\*)|(-?\\\\d+)))(\\\\]))?))(?:(?:(=)|(\\\\+=))|(-=))))","beginCaptures":{"1":{"name":"storage.type.alias.shell"},"2":{"patterns":[{"match":"(?<!\\\\w)-\\\\w+\\\\b","name":"string.unquoted.argument.shell constant.other.option.shell"}]},"3":{"name":"string.unquoted.argument.shell constant.other.option.shell"},"4":{"name":"variable.other.assignment.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"variable.other.assignment.shell"},"7":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"8":{"name":"punctuation.definition.array.access.shell"},"9":{"name":"keyword.operator.assignment.shell"},"10":{"name":"keyword.operator.assignment.compound.shell"},"11":{"name":"keyword.operator.assignment.compound.shell"}},"end":"(?:(?= |\\\\t|$)|(?:(?:(?:(;)|(&&))|(\\\\|\\\\|))|(&)))","endCaptures":{"1":{"name":"punctuation.terminator.statement.semicolon.shell"},"2":{"name":"punctuation.separator.statement.and.shell"},"3":{"name":"punctuation.separator.statement.or.shell"},"4":{"name":"punctuation.separator.statement.background.shell"}},"name":"meta.expression.assignment.alias.shell","patterns":[{"include":"#normal_context"}]},"argument":{"begin":"(?:[ \\\\t]++)(?!(?:&|\\\\||\\\\(|\\\\[|#|\\\\n|$|;))","beginCaptures":{},"end":"(?= |\\\\t|;|\\\\||&|$|\\\\n|\\\\)|\\\\\`)","endCaptures":{},"name":"meta.argument.shell","patterns":[{"include":"#argument_context"},{"include":"#line_continuation"}]},"argument_context":{"patterns":[{"captures":{"1":{"name":"string.unquoted.argument.shell","patterns":[{"match":"\\\\*","name":"variable.language.special.wildcard.shell"},{"include":"#variable"},{"include":"#numeric_literal"},{"captures":{"1":{"name":"constant.language.$1.shell"}},"match":"(?<!\\\\w)(\\\\b(?:true|false)\\\\b)(?!\\\\w)"}]}},"match":"(?:[ \\\\t]*+)((?:[^ \\\\t\\\\n>&;<>()$\`\\\\\\\\\\"'<\\\\|]+)(?!>))"},{"include":"#normal_context"}]},"arithmetic_double":{"patterns":[{"begin":"\\\\(\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"end":"\\\\)(?:\\\\s*)\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.double.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"arithmetic_no_dollar":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.arithmetic.single.shell"}},"name":"meta.arithmetic.shell","patterns":[{"include":"#math"},{"include":"#string"}]}]},"array_access_inline":{"captures":{"1":{"name":"punctuation.section.array.shell"},"2":{"patterns":[{"include":"#special_expansion"},{"include":"#string"},{"include":"#variable"}]},"3":{"name":"punctuation.section.array.shell"}},"match":"(?:(\\\\[)([^\\\\[\\\\]]+)(\\\\]))"},"array_value":{"begin":"(?:[ \\\\t]*+)(?:((?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))(?:(?:(\\\\[)((?:(?:(?:(?:\\\\$?)(?:(?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))|@)|\\\\*)|(-?\\\\d+)))(\\\\]))?))(?:(?:(=)|(\\\\+=))|(-=))(?:[ \\\\t]*+)(\\\\()","beginCaptures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"},"9":{"name":"punctuation.definition.array.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.array.shell"}},"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"variable.other.assignment.array.shell entity.other.attribute-name.shell"},"2":{"name":"keyword.operator.assignment.shell punctuation.definition.assignment.shell"}},"match":"(?:((?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))(=))"},{"captures":{"1":{"name":"punctuation.definition.bracket.named-array.shell"},"2":{"name":"string.unquoted.shell entity.other.attribute-name.bracket.shell"},"3":{"name":"punctuation.definition.bracket.named-array.shell"},"4":{"name":"punctuation.definition.assignment.shell"}},"match":"(?:(\\\\[)(.+?)(\\\\])(=))"},{"include":"#normal_context"},{"include":"#simple_unquoted"}]},"assignment_statement":{"patterns":[{"include":"#array_value"},{"include":"#modified_assignment_statement"},{"include":"#normal_assignment_statement"}]},"basic_command_name":{"captures":{"1":{"name":"storage.modifier.$1.shell"},"2":{"name":"entity.name.function.call.shell entity.name.command.shell","patterns":[{"match":"(?<!\\\\w)(?:continue|return|break)(?!\\\\w)","name":"keyword.control.$0.shell"},{"match":"(?<!\\\\w)(?:(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|:|\\\\.)(?!\\\\/))(?!\\\\w)(?!-)","name":"support.function.builtin.shell"},{"include":"#variable"}]}},"match":"(?:(?:(?!(?:!|&|\\\\||\\\\(|\\\\)|\\\\{|\\\\[|<|>|#|\\\\n|$|;|[ \\\\t]))(?!nocorrect |nocorrect\\t|nocorrect$|readonly |readonly\\t|readonly$|function |function\\t|function$|foreach |foreach\\t|foreach$|coproc |coproc\\t|coproc$|logout |logout\\t|logout$|export |export\\t|export$|select |select\\t|select$|repeat |repeat\\t|repeat$|pushd |pushd\\t|pushd$|until |until\\t|until$|while |while\\t|while$|local |local\\t|local$|case |case\\t|case$|done |done\\t|done$|elif |elif\\t|elif$|else |else\\t|else$|esac |esac\\t|esac$|popd |popd\\t|popd$|then |then\\t|then$|time |time\\t|time$|for |for\\t|for$|end |end\\t|end$|fi |fi\\t|fi$|do |do\\t|do$|in |in\\t|in$|if |if\\t|if$))(?:((?<=^|;|&|[ \\\\t])(?:readonly|declare|typeset|export|local)(?=[ \\\\t]|;|&|$))|((?!\\"|'|\\\\\\\\\\\\n?$)(?:[^!'\\"<> \\\\t\\\\n\\\\r]+?)))(?:(?= |\\\\t)|(?:(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\))))","name":"meta.statement.command.name.basic.shell"},"block_comment":{"begin":"(?:(?:\\\\s*+)(\\\\/\\\\*))","beginCaptures":{"1":{"name":"punctuation.definition.comment.begin.shell"}},"end":"\\\\*\\\\/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.shell"}},"name":"comment.block.shell"},"boolean":{"match":"\\\\b(?:true|false)\\\\b","name":"constant.language.$0.shell"},"case_statement":{"begin":"(?:(\\\\bcase\\\\b)(?:[ \\\\t]*+)(.+?)(?:[ \\\\t]*+)(\\\\bin\\\\b))","beginCaptures":{"1":{"name":"keyword.control.case.shell"},"2":{"patterns":[{"include":"#initial_context"}]},"3":{"name":"keyword.control.in.shell"}},"end":"\\\\besac\\\\b","endCaptures":{"0":{"name":"keyword.control.esac.shell"}},"name":"meta.case.shell","patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.operator.pattern.case.default.shell"}},"match":"(?:[ \\\\t]*+)(\\\\* *\\\\))"},{"begin":"(?<!\\\\))(?!(?:[ \\\\t]*+)(?:esac\\\\b|$))","beginCaptures":{},"end":"(?:(?=\\\\besac\\\\b)|(\\\\)))","endCaptures":{"1":{"name":"keyword.operator.pattern.case.shell"}},"name":"meta.case.entry.pattern.shell","patterns":[{"include":"#case_statement_context"}]},{"begin":"(?<=\\\\))","beginCaptures":{},"end":"(?:(;;)|(?=\\\\besac\\\\b))","endCaptures":{"1":{"name":"punctuation.terminator.statement.case.shell"}},"name":"meta.case.entry.body.shell","patterns":[{"include":"#typical_statements"},{"include":"#initial_context"}]}]},"case_statement_context":{"patterns":[{"match":"\\\\*","name":"variable.language.special.quantifier.star.shell keyword.operator.quantifier.star.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"\\\\+","name":"variable.language.special.quantifier.plus.shell keyword.operator.quantifier.plus.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"\\\\?","name":"variable.language.special.quantifier.question.shell keyword.operator.quantifier.question.shell punctuation.definition.arbitrary-repetition.shell punctuation.definition.regex.arbitrary-repetition.shell"},{"match":"@","name":"variable.language.special.at.shell keyword.operator.at.shell punctuation.definition.regex.at.shell"},{"match":"\\\\|","name":"keyword.operator.orvariable.language.special.or.shell keyword.operator.alternation.ruby.shell punctuation.definition.regex.alternation.shell punctuation.separator.regex.alternation.shell"},{"match":"\\\\\\\\.","name":"constant.character.escape.shell"},{"match":"(?<=\\\\tin| in| |\\\\t|;;)\\\\(","name":"keyword.operator.pattern.case.shell"},{"begin":"(?<=\\\\S)(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.group.shell punctuation.definition.regex.group.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.definition.regex.group.shell"}},"name":"meta.parenthese.shell","patterns":[{"include":"#case_statement_context"}]},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.character-class.shell"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.character-class.shell"}},"name":"string.regexp.character-class.shell","patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.shell"}]},{"include":"#string"},{"match":"[^) \\\\t\\\\n\\\\[?\\\\*\\\\|\\\\@]","name":"string.unquoted.pattern.shell string.regexp.unquoted.shell"}]},"command_name_range":{"begin":"\\\\G","beginCaptures":{},"end":"(?:(?= |\\\\t|;|\\\\||&|$|\\\\n|\\\\)|\\\\\`)|(?=<))","endCaptures":{},"name":"meta.statement.command.name.shell","patterns":[{"match":"(?<!\\\\w)(?:continue|return|break)(?!\\\\w)","name":"entity.name.function.call.shell entity.name.command.shell keyword.control.$0.shell"},{"match":"(?<!\\\\w)(?:(?:unfunction|continue|autoload|unsetopt|bindkey|builtin|getopts|command|declare|unalias|history|unlimit|typeset|suspend|source|printf|unhash|disown|ulimit|return|which|alias|break|false|print|shift|times|umask|umask|unset|read|type|exec|eval|wait|echo|dirs|jobs|kill|hash|stat|exit|test|trap|true|let|set|pwd|cd|fg|bg|fc|:|\\\\.)(?!\\\\/))(?!\\\\w)(?!-)","name":"entity.name.function.call.shell entity.name.command.shell support.function.builtin.shell"},{"include":"#variable"},{"captures":{"1":{"name":"entity.name.function.call.shell entity.name.command.shell"}},"match":"(?:(?<!\\\\w)(?<=\\\\G|'|\\"|\\\\}|\\\\))([^ \\\\n\\\\t\\\\r\\"'=;&\\\\|\`){<>]+))"},{"begin":"(?:(?:\\\\G|(?<! |\\\\t|;|\\\\||&|\\\\n|\\\\{|#))(?:(\\\\$?)((?:(\\")|(')))))","beginCaptures":{"1":{"name":"meta.statement.command.name.quoted.shell punctuation.definition.string.shell entity.name.function.call.shell entity.name.command.shell"},"2":{},"3":{"name":"meta.statement.command.name.quoted.shell string.quoted.double.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"},"4":{"name":"meta.statement.command.name.quoted.shell string.quoted.single.shell punctuation.definition.string.begin.shell entity.name.function.call.shell entity.name.command.shell"}},"end":"(?<!\\\\G)(?<=(?:\\\\2))","endCaptures":{},"patterns":[{"include":"#continuation_of_single_quoted_command_name"},{"include":"#continuation_of_double_quoted_command_name"}]},{"include":"#line_continuation"},{"include":"#simple_unquoted"}]},"command_statement":{"begin":"(?:(?:[ \\\\t]*+)(?:(?!(?:!|&|\\\\||\\\\(|\\\\)|\\\\{|\\\\[|<|>|#|\\\\n|$|;|[ \\\\t]))(?!nocorrect |nocorrect\\t|nocorrect$|readonly |readonly\\t|readonly$|function |function\\t|function$|foreach |foreach\\t|foreach$|coproc |coproc\\t|coproc$|logout |logout\\t|logout$|export |export\\t|export$|select |select\\t|select$|repeat |repeat\\t|repeat$|pushd |pushd\\t|pushd$|until |until\\t|until$|while |while\\t|while$|local |local\\t|local$|case |case\\t|case$|done |done\\t|done$|elif |elif\\t|elif$|else |else\\t|else$|esac |esac\\t|esac$|popd |popd\\t|popd$|then |then\\t|then$|time |time\\t|time$|for |for\\t|for$|end |end\\t|end$|fi |fi\\t|fi$|do |do\\t|do$|in |in\\t|in$|if |if\\t|if$)(?!\\\\\\\\\\\\n?$)))","beginCaptures":{},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.command.shell","patterns":[{"include":"#command_name_range"},{"include":"#line_continuation"},{"include":"#option"},{"include":"#argument"},{"include":"#string"},{"include":"#heredoc"}]},"comment":{"captures":{"1":{"name":"comment.line.number-sign.shell meta.shebang.shell"},"2":{"name":"punctuation.definition.comment.shebang.shell"},"3":{"name":"comment.line.number-sign.shell"},"4":{"name":"punctuation.definition.comment.shell"}},"match":"(?:(?:^|(?:[ \\\\t]++))(?:((?:(#!)(?:.*)))|((?:(#)(?:.*)))))"},"comments":{"patterns":[{"include":"#block_comment"},{"include":"#line_comment"}]},"compound-command":{"patterns":[{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical-expression"},{"include":"#initial_context"}]},{"begin":"(?<=\\\\s|^){(?=\\\\s|$)","beginCaptures":{"0":{"name":"punctuation.definition.group.shell"}},"end":"(?<=^|;)\\\\s*(})","endCaptures":{"1":{"name":"punctuation.definition.group.shell"}},"name":"meta.scope.group.shell","patterns":[{"include":"#initial_context"}]}]},"continuation_of_double_quoted_command_name":{"begin":"(?:\\\\G(?<=\\"))","beginCaptures":{},"contentName":"meta.statement.command.name.continuation string.quoted.double entity.name.function.call entity.name.command","end":"\\"","endCaptures":{"0":{"name":"string.quoted.double.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}},"patterns":[{"match":"\\\\\\\\[$\\\\n\`\\"\\\\\\\\]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},"continuation_of_single_quoted_command_name":{"begin":"(?:\\\\G(?<='))","beginCaptures":{},"contentName":"meta.statement.command.name.continuation string.quoted.single entity.name.function.call entity.name.command","end":"'","endCaptures":{"0":{"name":"string.quoted.single.shell punctuation.definition.string.end.shell entity.name.function.call.shell entity.name.command.shell"}}},"custom_command_names":{"patterns":[]},"custom_commands":{"patterns":[]},"double_quote_context":{"patterns":[{"match":"\\\\\\\\[$\`\\"\\\\\\\\\\\\n]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},"double_quote_escape_char":{"match":"\\\\\\\\[$\`\\"\\\\\\\\\\\\n]","name":"constant.character.escape.shell"},"floating_keyword":{"patterns":[{"match":"(?<=^|;|&| |\\\\t)(?:then|elif|else|done|end|do|if|fi)(?= |\\\\t|;|&|$)","name":"keyword.control.$0.shell"}]},"for_statement":{"patterns":[{"begin":"(?:(\\\\bfor\\\\b)(?:(?:[ \\\\t]*+)((?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))(?:[ \\\\t]*+)(\\\\bin\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.for.shell"},"2":{"name":"variable.other.for.shell"},"3":{"name":"keyword.control.in.shell"}},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.for.in.shell","patterns":[{"include":"#string"},{"include":"#simple_unquoted"},{"include":"#normal_context"}]},{"begin":"(\\\\bfor\\\\b)","beginCaptures":{"1":{"name":"keyword.control.for.shell"}},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.for.shell","patterns":[{"include":"#arithmetic_double"},{"include":"#normal_context"}]}]},"function_definition":{"applyEndPatternLast":1,"begin":"(?:[ \\\\t]*+)(?:(?:(\\\\bfunction\\\\b)(?:[ \\\\t]*+)([^ \\\\t\\\\n\\\\r()=\\"']+)(?:(?:(\\\\()(?:[ \\\\t]*+)(\\\\)))?))|(?:([^ \\\\t\\\\n\\\\r()=\\"']+)(?:[ \\\\t]*+)(\\\\()(?:[ \\\\t]*+)(\\\\))))","beginCaptures":{"1":{"name":"storage.type.function.shell"},"2":{"name":"entity.name.function.shell"},"3":{"name":"punctuation.definition.arguments.shell"},"4":{"name":"punctuation.definition.arguments.shell"},"5":{"name":"entity.name.function.shell"},"6":{"name":"punctuation.definition.arguments.shell"},"7":{"name":"punctuation.definition.arguments.shell"}},"end":"(?<=\\\\}|\\\\))","endCaptures":{},"name":"meta.function.shell","patterns":[{"match":"(?:\\\\G(?:\\\\t| |\\\\n))"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"name":"meta.function.body.shell","patterns":[{"include":"#initial_context"}]},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.shell punctuation.section.function.definition.shell"}},"name":"meta.function.body.shell","patterns":[{"include":"#initial_context"}]},{"include":"#initial_context"}]},"heredoc":{"patterns":[{"begin":"(?:((?<!<)(?:<<-))(?:[ \\\\t]*+)(\\"|')(?:[ \\\\t]*+)([^\\"']+?)(?=\\\\s|;|&|<|\\"|')((?:\\\\2))(.*))","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.quote.shell"},"3":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"4":{"name":"punctuation.definition.string.heredoc.quote.shell"},"5":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.quoted.heredoc.indent.$3","end":"(?:(?:^\\\\t*)(?:\\\\3)(?=\\\\s|;|&|$))","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.$0.shell"}},"patterns":[]},{"begin":"(?:((?<!<)(?:<<)(?!<))(?:[ \\\\t]*+)(\\"|')(?:[ \\\\t]*+)([^\\"']+?)(?=\\\\s|;|&|<|\\"|')((?:\\\\2))(.*))","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.quote.shell"},"3":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"4":{"name":"punctuation.definition.string.heredoc.quote.shell"},"5":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.quoted.heredoc.no-indent.$3","end":"(?:^(?:\\\\3)(?=\\\\s|;|&|$))","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[]},{"begin":"(?:((?<!<)(?:<<-))(?:[ \\\\t]*+)([^\\"' \\\\t]+)(?=\\\\s|;|&|<|\\"|')(.*))","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"3":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.unquoted.heredoc.indent.$2","end":"(?:(?:^\\\\t*)(?:\\\\2)(?=\\\\s|;|&|$))","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[{"include":"#double_quote_escape_char"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"(?:((?<!<)(?:<<)(?!<))(?:[ \\\\t]*+)([^\\"' \\\\t]+)(?=\\\\s|;|&|<|\\"|')(.*))","beginCaptures":{"1":{"name":"keyword.operator.heredoc.shell"},"2":{"name":"punctuation.definition.string.heredoc.delimiter.shell"},"3":{"patterns":[{"include":"#redirect_fix"},{"include":"#typical_statements"}]}},"contentName":"string.unquoted.heredoc.no-indent.$2","end":"(?:^(?:\\\\2)(?=\\\\s|;|&|$))","endCaptures":{"0":{"name":"punctuation.definition.string.heredoc.delimiter.shell"}},"patterns":[{"include":"#double_quote_escape_char"},{"include":"#variable"},{"include":"#interpolation"}]}]},"herestring":{"patterns":[{"begin":"(<<<)\\\\s*(('))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.single.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"contentName":"string.quoted.single.shell","end":"(')","endCaptures":{"0":{"name":"string.quoted.single.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell"},{"begin":"(<<<)\\\\s*((\\"))","beginCaptures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.quoted.double.shell"},"3":{"name":"punctuation.definition.string.begin.shell"}},"contentName":"string.quoted.double.shell","end":"(\\")","endCaptures":{"0":{"name":"string.quoted.double.shell"},"1":{"name":"punctuation.definition.string.end.shell"}},"name":"meta.herestring.shell","patterns":[{"include":"#double_quote_context"}]},{"captures":{"1":{"name":"keyword.operator.herestring.shell"},"2":{"name":"string.unquoted.herestring.shell","patterns":[{"include":"#initial_context"}]}},"match":"(<<<)\\\\s*(([^\\\\s)\\\\\\\\]|\\\\\\\\.)+)","name":"meta.herestring.shell"}]},"initial_context":{"patterns":[{"include":"#comment"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#logical_expression_double"},{"include":"#logical_expression_single"},{"include":"#assignment_statement"},{"include":"#case_statement"},{"include":"#for_statement"},{"include":"#loop"},{"include":"#function_definition"},{"include":"#line_continuation"},{"include":"#arithmetic_double"},{"include":"#misc_ranges"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#alias_statement"},{"include":"#normal_statement"},{"include":"#string"},{"include":"#support"}]},"inline_comment":{"captures":{"1":{"name":"comment.block.shell punctuation.definition.comment.begin.shell"},"2":{"name":"comment.block.shell"},"3":{"patterns":[{"match":"\\\\*\\\\/","name":"comment.block.shell punctuation.definition.comment.end.shell"},{"match":"\\\\*","name":"comment.block.shell"}]}},"match":"(\\\\/\\\\*)((?:(?:[^\\\\*]|(?:(?:\\\\*++)[^\\\\/]))*+)((?:(?:\\\\*++)\\\\/)))"},"interpolation":{"patterns":[{"include":"#arithmetic_dollar"},{"include":"#subshell_dollar"},{"begin":"\`","beginCaptures":{"0":{"name":"punctuation.definition.evaluation.backticks.shell"}},"end":"\`","endCaptures":{"0":{"name":"punctuation.definition.evaluation.backticks.shell"}},"name":"string.interpolated.backtick.shell","patterns":[{"match":"\\\\\\\\[\`\\\\\\\\$]","name":"constant.character.escape.shell"},{"begin":"(?<=\\\\W)(?=#)(?!#{)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.shell"}},"end":"(?!\\\\G)","patterns":[{"begin":"#","beginCaptures":{"0":{"name":"punctuation.definition.comment.shell"}},"end":"(?=\`)","name":"comment.line.number-sign.shell"}]},{"include":"#initial_context"}]}]},"keyword":{"patterns":[{"match":"(?<=^|;|&|\\\\s)(then|else|elif|fi|for|in|do|done|select|continue|esac|while|until|return)(?=\\\\s|;|&|$)","name":"keyword.control.shell"},{"match":"(?<=^|;|&|\\\\s)(?:export|declare|typeset|local|readonly)(?=\\\\s|;|&|$)","name":"storage.modifier.shell"}]},"line_comment":{"begin":"(?:\\\\s*+)(\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.definition.comment.shell"}},"end":"(?<=\\\\n)(?<!\\\\\\\\\\\\n)","endCaptures":{},"name":"comment.line.double-slash.shell","patterns":[{"include":"#line_continuation_character"}]},"line_continuation":{"match":"\\\\\\\\(?=\\\\n)","name":"constant.character.escape.line-continuation.shell"},"logical-expression":{"patterns":[{"include":"#arithmetic_no_dollar"},{"comment":"do we want a special rule for ( expr )?","match":"=[=~]?|!=?|<|>|&&|\\\\|\\\\|","name":"keyword.operator.logical.shell"},{"match":"(?<!\\\\S)-(nt|ot|ef|eq|ne|l[te]|g[te]|[a-hknoprstuwxzOGLSN])\\\\b","name":"keyword.operator.logical.shell"}]},"logical_expression_context":{"patterns":[{"include":"#regex_comparison"},{"include":"#arithmetic_no_dollar"},{"include":"#logical-expression"},{"include":"#logical_expression_single"},{"include":"#logical_expression_double"},{"include":"#comment"},{"include":"#boolean"},{"include":"#redirect_number"},{"include":"#numeric_literal"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"}]},"logical_expression_double":{"begin":"\\\\[\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"\\\\]\\\\]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical_expression_context"}]},"logical_expression_single":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.logical-expression.shell"}},"name":"meta.scope.logical-expression.shell","patterns":[{"include":"#logical_expression_context"}]},"loop":{"patterns":[{"begin":"(?<=^|;|&|\\\\s)(for)\\\\s+(.+?)\\\\s+(in)(?=\\\\s|;|&|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell","patterns":[{"include":"#string"}]},"3":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\\\s)done(?=\\\\s|;|&|$|\\\\))","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.for-in-loop.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|;|&|\\\\s)(while|until)(?=\\\\s|;|&|$)","beginCaptures":{"1":{"name":"keyword.control.shell"}},"end":"(?<=^|;|&|\\\\s)done(?=\\\\s|;|&|$|\\\\))","endCaptures":{"0":{"name":"keyword.control.shell"}},"name":"meta.scope.while-loop.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|;|&|\\\\s)(select)\\\\s+((?:[^\\\\s\\\\\\\\]|\\\\\\\\.)+)(?=\\\\s|;|&|$)","beginCaptures":{"1":{"name":"keyword.control.shell"},"2":{"name":"variable.other.loop.shell"}},"end":"(?<=^|;|&|\\\\s)(done)(?=\\\\s|;|&|$|\\\\))","endCaptures":{"1":{"name":"keyword.control.shell"}},"name":"meta.scope.select-block.shell","patterns":[{"include":"#initial_context"}]},{"begin":"(?<=^|;|&|\\\\s)if(?=\\\\s|;|&|$)","beginCaptures":{"0":{"name":"keyword.control.if.shell"}},"end":"(?<=^|;|&|\\\\s)fi(?=\\\\s|;|&|$)","endCaptures":{"0":{"name":"keyword.control.fi.shell"}},"name":"meta.scope.if-block.shell","patterns":[{"include":"#initial_context"}]}]},"math":{"patterns":[{"include":"#variable"},{"match":"\\\\+{1,2}|-{1,2}|!|~|\\\\*{1,2}|/|%|<[<=]?|>[>=]?|==|!=|^|\\\\|{1,2}|&{1,2}|\\\\?|:|,|=|[*/%+\\\\-&^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[xX][0-9A-Fa-f]+","name":"constant.numeric.hex.shell"},{"match":";","name":"punctuation.separator.semicolon.range"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9a-zA-Z@_]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"},{"match":"(?<!\\\\w)(?:[a-zA-Z_0-9]+)(?!\\\\w)","name":"variable.other.normal.shell"}]},"math_operators":{"patterns":[{"match":"\\\\+{1,2}|-{1,2}|!|~|\\\\*{1,2}|/|%|<[<=]?|>[>=]?|==|!=|^|\\\\|{1,2}|&{1,2}|\\\\?|:|,|=|[*/%+\\\\-&^|]=|<<=|>>=","name":"keyword.operator.arithmetic.shell"},{"match":"0[xX][0-9A-Fa-f]+","name":"constant.numeric.hex.shell"},{"match":"0\\\\d+","name":"constant.numeric.octal.shell"},{"match":"\\\\d{1,2}#[0-9a-zA-Z@_]+","name":"constant.numeric.other.shell"},{"match":"\\\\d+","name":"constant.numeric.integer.shell"}]},"misc_ranges":{"patterns":[{"include":"#logical_expression_single"},{"include":"#logical_expression_double"},{"include":"#subshell_dollar"},{"begin":"(?<![^ \\\\t])({)(?!\\\\w|\\\\$)","beginCaptures":{"1":{"name":"punctuation.definition.group.shell"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.group.shell"}},"name":"meta.scope.group.shell","patterns":[{"include":"#initial_context"}]}]},"modified_assignment_statement":{"begin":"(?<=^|;|&|[ \\\\t])(?:readonly|declare|typeset|export|local)(?=[ \\\\t]|;|&|$)","beginCaptures":{"0":{"name":"storage.modifier.$0.shell"}},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.shell meta.expression.assignment.modified.shell","patterns":[{"match":"(?<!\\\\w)-\\\\w+\\\\b","name":"string.unquoted.argument.shell constant.other.option.shell"},{"include":"#array_value"},{"captures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"},"9":{"name":"constant.numeric.shell constant.numeric.hex.shell"},"10":{"name":"constant.numeric.shell constant.numeric.octal.shell"},"11":{"name":"constant.numeric.shell constant.numeric.other.shell"},"12":{"name":"constant.numeric.shell constant.numeric.decimal.shell"},"13":{"name":"constant.numeric.shell constant.numeric.version.shell"},"14":{"name":"constant.numeric.shell constant.numeric.integer.shell"}},"match":"(?:((?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))(?:(?:(\\\\[)((?:(?:(?:(?:\\\\$?)(?:(?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))|@)|\\\\*)|(-?\\\\d+)))(\\\\]))?)(?:(?:(?:(=)|(\\\\+=))|(-=))?)(?:(?:(?<==| |\\\\t|^|\\\\{|\\\\(|\\\\[)(?:(?:(?:(?:(?:(0[xX][0-9A-Fa-f]+)|(0\\\\d+))|(\\\\d{1,2}#[0-9a-zA-Z@_]+))|(-?\\\\d+(?:\\\\.\\\\d+)))|(-?\\\\d+(?:\\\\.\\\\d+)+))|(-?\\\\d+))(?= |\\\\t|$|\\\\}|\\\\)|;))?))"},{"include":"#normal_context"}]},"modifiers":{"match":"(?<=^|;|&|[ \\\\t])(?:readonly|declare|typeset|export|local)(?=[ \\\\t]|;|&|$)","name":"storage.modifier.$0.shell"},"normal_assignment_statement":{"begin":"(?:[ \\\\t]*+)(?:((?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))(?:(?:(\\\\[)((?:(?:(?:(?:\\\\$?)(?:(?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w))|@)|\\\\*)|(-?\\\\d+)))(\\\\]))?))(?:(?:(=)|(\\\\+=))|(-=))","beginCaptures":{"1":{"name":"variable.other.assignment.shell"},"2":{"name":"punctuation.definition.array.access.shell"},"3":{"name":"variable.other.assignment.shell"},"4":{"name":"constant.numeric.shell constant.numeric.integer.shell"},"5":{"name":"punctuation.definition.array.access.shell"},"6":{"name":"keyword.operator.assignment.shell"},"7":{"name":"keyword.operator.assignment.compound.shell"},"8":{"name":"keyword.operator.assignment.compound.shell"}},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.expression.assignment.shell","patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#normal_assignment_statement"},{"begin":"(?<= |\\\\t)(?! |\\\\t|\\\\w+=)","beginCaptures":{},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.command.env.shell","patterns":[{"include":"#command_name_range"},{"include":"#line_continuation"},{"include":"#option"},{"include":"#argument"},{"include":"#string"}]},{"include":"#simple_unquoted"},{"include":"#normal_context"}]},"normal_context":{"patterns":[{"include":"#comment"},{"include":"#pipeline"},{"include":"#normal_statement_seperator"},{"include":"#misc_ranges"},{"include":"#boolean"},{"include":"#redirect_number"},{"include":"#numeric_literal"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"},{"include":"#parenthese"}]},"normal_statement":{"begin":"(?:(?!^[ \\\\t]*+$)(?:(?<=^until | until |\\\\tuntil |^while | while |\\\\twhile |^elif | elif |\\\\telif |^else | else |\\\\telse |^then | then |\\\\tthen |^do | do |\\\\tdo |^if | if |\\\\tif )|(?<=(?:^|;|\\\\||&|!|\\\\(|\\\\{|\\\\\`)))(?:[ \\\\t]*+)(?!nocorrect\\\\W|nocorrect\\\\$|function\\\\W|function\\\\$|foreach\\\\W|foreach\\\\$|repeat\\\\W|repeat\\\\$|logout\\\\W|logout\\\\$|coproc\\\\W|coproc\\\\$|select\\\\W|select\\\\$|while\\\\W|while\\\\$|pushd\\\\W|pushd\\\\$|until\\\\W|until\\\\$|case\\\\W|case\\\\$|done\\\\W|done\\\\$|elif\\\\W|elif\\\\$|else\\\\W|else\\\\$|esac\\\\W|esac\\\\$|popd\\\\W|popd\\\\$|then\\\\W|then\\\\$|time\\\\W|time\\\\$|for\\\\W|for\\\\$|end\\\\W|end\\\\$|fi\\\\W|fi\\\\$|do\\\\W|do\\\\$|in\\\\W|in\\\\$|if\\\\W|if\\\\$))","beginCaptures":{},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.statement.shell","patterns":[{"include":"#typical_statements"}]},"normal_statement_seperator":{"captures":{"1":{"name":"punctuation.terminator.statement.semicolon.shell"},"2":{"name":"punctuation.separator.statement.and.shell"},"3":{"name":"punctuation.separator.statement.or.shell"},"4":{"name":"punctuation.separator.statement.background.shell"}},"match":"(?:(?:(?:(;)|(&&))|(\\\\|\\\\|))|(&))"},"numeric_literal":{"captures":{"1":{"name":"constant.numeric.shell constant.numeric.hex.shell"},"2":{"name":"constant.numeric.shell constant.numeric.octal.shell"},"3":{"name":"constant.numeric.shell constant.numeric.other.shell"},"4":{"name":"constant.numeric.shell constant.numeric.decimal.shell"},"5":{"name":"constant.numeric.shell constant.numeric.version.shell"},"6":{"name":"constant.numeric.shell constant.numeric.integer.shell"}},"match":"(?<==| |\\\\t|^|\\\\{|\\\\(|\\\\[)(?:(?:(?:(?:(?:(0[xX][0-9A-Fa-f]+)|(0\\\\d+))|(\\\\d{1,2}#[0-9a-zA-Z@_]+))|(-?\\\\d+(?:\\\\.\\\\d+)))|(-?\\\\d+(?:\\\\.\\\\d+)+))|(-?\\\\d+))(?= |\\\\t|$|\\\\}|\\\\)|;)"},"option":{"begin":"(?:(?:[ \\\\t]++)(-)((?!(?:!|&|\\\\||\\\\(|\\\\)|\\\\{|\\\\[|<|>|#|\\\\n|$|;|[ \\\\t]))))","beginCaptures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"contentName":"string.unquoted.argument constant.other.option","end":"(?:(?=[ \\\\t])|(?:(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)))","endCaptures":{},"patterns":[{"include":"#option_context"}]},"option_context":{"patterns":[{"include":"#misc_ranges"},{"include":"#string"},{"include":"#variable"},{"include":"#interpolation"},{"include":"#heredoc"},{"include":"#herestring"},{"include":"#redirection"},{"include":"#pathname"},{"include":"#floating_keyword"},{"include":"#support"}]},"parenthese":{"patterns":[{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.section.parenthese.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.parenthese.shell"}},"name":"meta.parenthese.group.shell","patterns":[{"include":"#initial_context"}]}]},"pathname":{"patterns":[{"match":"(?<=\\\\s|:|=|^)~","name":"keyword.operator.tilde.shell"},{"match":"\\\\*|\\\\?","name":"keyword.operator.glob.shell"},{"begin":"([?*+@!])(\\\\()","beginCaptures":{"1":{"name":"keyword.operator.extglob.shell"},"2":{"name":"punctuation.definition.extglob.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.extglob.shell"}},"name":"meta.structure.extglob.shell","patterns":[{"include":"#initial_context"}]}]},"pipeline":{"patterns":[{"match":"(?<=^|;|&|\\\\s)(time)(?=\\\\s|;|&|$)","name":"keyword.other.shell"},{"match":"[|!]","name":"keyword.operator.pipe.shell"}]},"redirect_fix":{"captures":{"1":{"name":"keyword.operator.redirect.shell"},"2":{"name":"string.unquoted.argument.shell"}},"match":"(?:(>>?)(?:[ \\\\t]*+)([^ \\\\t\\\\n>&;<>()$\`\\\\\\\\\\"'<\\\\|]+))"},"redirect_number":{"captures":{"1":{"name":"keyword.operator.redirect.stdout.shell"},"2":{"name":"keyword.operator.redirect.stderr.shell"},"3":{"name":"keyword.operator.redirect.$3.shell"}},"match":"(?<=[ \\\\t])(?:(?:(1)|(2)|(\\\\d+))(?=>))"},"redirection":{"patterns":[{"begin":"[><]\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.interpolated.process-substitution.shell","patterns":[{"include":"#initial_context"}]},{"match":"(?<![<>])(&>|\\\\d*>&\\\\d*|\\\\d*(>>|>|<)|\\\\d*<&|\\\\d*<>)(?![<>])","name":"keyword.operator.redirect.shell"}]},"regex_comparison":{"match":"=~","name":"keyword.operator.logical.regex.shell"},"regexp":{"patterns":[{"match":"(?:.+)"}]},"simple_options":{"captures":{"0":{"patterns":[{"captures":{"1":{"name":"string.unquoted.argument.shell constant.other.option.dash.shell"},"2":{"name":"string.unquoted.argument.shell constant.other.option.shell"}},"match":"(?:[ \\\\t]++)(-)(\\\\w+)"}]}},"match":"(?:(?:[ \\\\t]++)-(?:\\\\w+))*"},"simple_unquoted":{"match":"[^ \\\\t\\\\n>&;<>()$\`\\\\\\\\\\"'<\\\\|]","name":"string.unquoted.shell"},"special_expansion":{"match":"!|:[-=?]?|\\\\*|@|##|#|%%|%|\\\\/","name":"keyword.operator.expansion.shell"},"start_of_command":{"match":"(?:(?:[ \\\\t]*+)(?:(?!(?:!|&|\\\\||\\\\(|\\\\)|\\\\{|\\\\[|<|>|#|\\\\n|$|;|[ \\\\t]))(?!nocorrect |nocorrect\\t|nocorrect$|readonly |readonly\\t|readonly$|function |function\\t|function$|foreach |foreach\\t|foreach$|coproc |coproc\\t|coproc$|logout |logout\\t|logout$|export |export\\t|export$|select |select\\t|select$|repeat |repeat\\t|repeat$|pushd |pushd\\t|pushd$|until |until\\t|until$|while |while\\t|while$|local |local\\t|local$|case |case\\t|case$|done |done\\t|done$|elif |elif\\t|elif$|else |else\\t|else$|esac |esac\\t|esac$|popd |popd\\t|popd$|then |then\\t|then$|time |time\\t|time$|for |for\\t|for$|end |end\\t|end$|fi |fi\\t|fi$|do |do\\t|do$|in |in\\t|in$|if |if\\t|if$)(?!\\\\\\\\\\\\n?$)))"},"string":{"patterns":[{"match":"\\\\\\\\.","name":"constant.character.escape.shell"},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.shell"},{"begin":"\\\\$?\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.double.shell","patterns":[{"match":"\\\\\\\\[$\\\\n\`\\"\\\\\\\\]","name":"constant.character.escape.shell"},{"include":"#variable"},{"include":"#interpolation"}]},{"begin":"\\\\$'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.shell"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.shell"}},"name":"string.quoted.single.dollar.shell","patterns":[{"match":"\\\\\\\\(?:a|b|e|f|n|r|t|v|\\\\\\\\|')","name":"constant.character.escape.ansi-c.shell"},{"match":"\\\\\\\\\\\\d{3}\\"","name":"constant.character.escape.octal.shell"},{"match":"\\\\\\\\x[0-9a-fA-F]{2}\\"","name":"constant.character.escape.hex.shell"},{"match":"\\\\\\\\c.\\"","name":"constant.character.escape.control-char.shell"}]}]},"subshell_dollar":{"patterns":[{"begin":"(?:\\\\$\\\\()","beginCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.subshell.single.shell"}},"name":"meta.scope.subshell","patterns":[{"include":"#parenthese"},{"include":"#initial_context"}]}]},"support":{"patterns":[{"match":"(?<=^|;|&|\\\\s)(?::|\\\\.)(?=\\\\s|;|&|$)","name":"support.function.builtin.shell"}]},"typical_statements":{"patterns":[{"include":"#assignment_statement"},{"include":"#case_statement"},{"include":"#for_statement"},{"include":"#while_statement"},{"include":"#function_definition"},{"include":"#command_statement"},{"include":"#line_continuation"},{"include":"#arithmetic_double"},{"include":"#normal_context"}]},"variable":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.all.shell"},"2":{"name":"variable.parameter.positional.all.shell"}},"match":"(?:(\\\\$)(\\\\@(?!\\\\w)))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"variable.parameter.positional.shell"}},"match":"(?:(\\\\$)(\\\\d(?!\\\\w)))"},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.language.special.shell"},"2":{"name":"variable.language.special.shell"}},"match":"(?:(\\\\$)([-*#?$!0_](?!\\\\w)))"},{"begin":"(?:(\\\\$)(\\\\{)(?:[ \\\\t]*+)(?=\\\\d))","beginCaptures":{"1":{"name":"punctuation.definition.variable.shell variable.parameter.positional.shell"},"2":{"name":"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"contentName":"meta.parameter-expansion","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell variable.parameter.positional.shell"}},"patterns":[{"include":"#special_expansion"},{"include":"#array_access_inline"},{"match":"\\\\d+","name":"variable.parameter.positional.shell"},{"match":"(?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w)","name":"variable.other.normal.shell"},{"include":"#variable"},{"include":"#string"}]},{"begin":"(?:(\\\\$)(\\\\{))","beginCaptures":{"1":{"name":"punctuation.definition.variable.shell"},"2":{"name":"punctuation.section.bracket.curly.variable.begin.shell punctuation.definition.variable.shell"}},"contentName":"meta.parameter-expansion","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.bracket.curly.variable.end.shell punctuation.definition.variable.shell"}},"patterns":[{"include":"#special_expansion"},{"include":"#array_access_inline"},{"match":"(?<!\\\\w)(?:[a-zA-Z_0-9-]+)(?!\\\\w)","name":"variable.other.normal.shell"},{"include":"#variable"},{"include":"#string"}]},{"captures":{"1":{"name":"punctuation.definition.variable.shell variable.other.normal.shell"},"2":{"name":"variable.other.normal.shell"}},"match":"(?:(\\\\$)((?:\\\\w+)(?!\\\\w)))"}]},"while_statement":{"patterns":[{"begin":"(\\\\bwhile\\\\b)","beginCaptures":{"1":{"name":"keyword.control.while.shell"}},"end":"(?=;|\\\\||&|\\\\n|\\\\)|\\\\\`|\\\\{|\\\\}|[ \\\\t]*#|\\\\])(?<!\\\\\\\\)","endCaptures":{},"name":"meta.while.shell","patterns":[{"include":"#line_continuation"},{"include":"#math_operators"},{"include":"#option"},{"include":"#simple_unquoted"},{"include":"#normal_context"},{"include":"#string"}]}]}},"scopeName":"source.shell","aliases":["bash","sh","shell","zsh"]}`)),n=[e];export{n as default}; diff --git a/_nuxt/NfFGm2lL.js b/_nuxt/NfFGm2lL.js new file mode 100644 index 0000000..acbc6be --- /dev/null +++ b/_nuxt/NfFGm2lL.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse(`{"displayName":"JSX","name":"jsx","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.js.jsx"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[:=(,\\\\[?+!>]|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^yield|[^\\\\._$0-9A-Za-z]yield|^throw|[^\\\\._$0-9A-Za-z]throw|^in|[^\\\\._$0-9A-Za-z]in|^of|[^\\\\._$0-9A-Za-z]of|^typeof|[^\\\\._$0-9A-Za-z]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"meta.objectliteral.js.jsx","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.js.jsx"}},"name":"meta.array.literal.js.jsx","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"variable.parameter.js.jsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync)\\\\s+)?([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?==>)","name":"meta.arrow.js.jsx"},{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync))?((?<![})!\\\\]])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.js.jsx","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js.jsx"}},"end":"((?<=\\\\}|\\\\S)(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.js.jsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.js.jsx","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.js.jsx"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.js.jsx"}]},"brackets":{"patterns":[{"begin":"{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"\\\\]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"include":"#jsx"}]},"class-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.type.class.js.jsx"}},"end":"(?<=\\\\})","name":"meta.class.js.jsx","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.js.jsx"}},"match":"[_$A-Za-z][_$0-9A-Za-z]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|\\\\/[\\\\/*])","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"storage.type.class.js.jsx"}},"end":"(?<=\\\\})","name":"meta.class.js.jsx","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=\\\\s|[;),}\\\\]:\\\\-+]|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(extends|implements)\\\\b)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.js.jsx"},"2":{"name":"punctuation.accessor.js.jsx"},"3":{"name":"punctuation.accessor.optional.js.jsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))(?=\\\\s*[_$A-Za-z][_$0-9A-Za-z]*(\\\\s*\\\\??\\\\.\\\\s*[_$A-Za-z][_$0-9A-Za-z]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.js.jsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.js.jsx"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.js.jsx"}},"name":"comment.block.documentation.js.jsx","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.js.jsx"},"2":{"name":"storage.type.internaldeclaration.js.jsx"},"3":{"name":"punctuation.decorator.internaldeclaration.js.jsx"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.js.jsx"}},"name":"comment.block.js.jsx"},{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.js.jsx"},"2":{"name":"comment.line.double-slash.js.jsx"},"3":{"name":"punctuation.definition.comment.js.jsx"},"4":{"name":"storage.type.internaldeclaration.js.jsx"},"5":{"name":"punctuation.decorator.internaldeclaration.js.jsx"}},"contentName":"comment.line.double-slash.js.jsx","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.js.jsx"},{"captures":{"1":{"name":"keyword.control.loop.js.jsx"},"2":{"name":"entity.name.label.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.js.jsx"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.js.jsx"}},"end":"(?=[;}]|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.js.jsx"},{"include":"#if-statement"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.js.jsx"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"meta.block.js.jsx","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.js.jsx"}]},"decorator":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\@","beginCaptures":{"0":{"name":"punctuation.decorator.js.jsx"}},"end":"(?=\\\\s)","name":"meta.decorator.js.jsx","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.js.jsx","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.js.jsx","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"name":"meta.parameter.object-binding-pattern.js.jsx","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"name":"meta.paramter.array-binding-pattern.js.jsx","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"variable.parameter.js.jsx"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.js.jsx","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.js.jsx","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"meta.definition.variable.js.jsx variable.other.readwrite.js.jsx"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"meta.definition.variable.js.jsx variable.other.constant.js.jsx"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.js.jsx"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.js.jsx","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.js.jsx"},"2":{"name":"entity.name.tag.directive.js.jsx"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.js.jsx"}},"name":"meta.tag.js.jsx","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.js.jsx"},{"match":"=","name":"keyword.operator.assignment.js.jsx"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.js.jsx"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.js.jsx"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!'))|[^*\\\\\\\\])*?'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([''\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.type.enum.js.jsx"},"5":{"name":"entity.name.type.enum.js.jsx"}},"end":"(?<=\\\\})","name":"meta.enum.declaration.js.jsx","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"patterns":[{"include":"#comment"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)","beginCaptures":{"0":{"name":"variable.other.enummember.js.jsx"}},"end":"(?=,|\\\\}|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\])))","end":"(?=,|\\\\}|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"keyword.control.as.js.jsx"},"3":{"name":"storage.type.namespace.js.jsx"},"4":{"name":"entity.name.type.module.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:(?:\\\\s*(=))|(?:\\\\s+(default)(?=\\\\s+)))","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"keyword.control.type.js.jsx"},"3":{"name":"keyword.operator.assignment.js.jsx"},"4":{"name":"keyword.control.default.js.jsx"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.export.default.js.jsx","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[{*])|((?=\\\\s*[_$A-Za-z][_$0-9A-Za-z]*(\\\\s|,))(?!\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"keyword.control.type.js.jsx"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.export.js.jsx","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"entity.name.function.js.jsx variable.language.this.js.jsx"},"4":{"name":"entity.name.function.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"4":{"name":"variable.parameter.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[:,]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.js.jsx"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.js.jsx"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.js.jsx"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.js.jsx"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.js.jsx"},"2":{"name":"keyword.generator.asterisk.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.js.jsx"},{"include":"#typeof-operator"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.js.jsx"},{"captures":{"1":{"name":"keyword.control.as.js.jsx"},"2":{"name":"storage.modifier.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[;,:})\\\\]]))"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.js.jsx"},"2":{"name":"keyword.control.satisfies.js.jsx"}},"end":"(?=^|[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.js.jsx"},{"match":"\\\\*=|(?<!\\\\()/=|%=|\\\\+=|-=","name":"keyword.operator.assignment.compound.js.jsx"},{"match":"\\\\&=|\\\\^=|<<=|>>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.js.jsx"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.js.jsx"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.js.jsx"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.js.jsx"},{"captures":{"1":{"name":"keyword.operator.logical.js.jsx"},"2":{"name":"keyword.operator.assignment.compound.js.jsx"},"3":{"name":"keyword.operator.arithmetic.js.jsx"}},"match":"(?<=[_$0-9A-Za-z])(!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.js.jsx"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.js.jsx"},{"match":"=","name":"keyword.operator.assignment.js.jsx"},{"match":"--","name":"keyword.operator.decrement.js.jsx"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.js.jsx"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.js.jsx"},{"begin":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.js.jsx"},"2":{"name":"keyword.operator.arithmetic.js.jsx"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.js.jsx"},"2":{"name":"keyword.operator.arithmetic.js.jsx"}},"match":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#jsx"},{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?(=|:|;|,|\\\\}|$))","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"}},"end":"(?=\\\\}|;|,|$|(^(?!\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?(=|:|;|,|$))))|(?<=\\\\})","name":"meta.field.declaration.js.jsx","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.js.jsx entity.name.function.js.jsx"},"2":{"name":"keyword.operator.optional.js.jsx"},"3":{"name":"keyword.operator.definiteassignment.js.jsx"}},"match":"(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)(?:(\\\\?)|(!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.property.js.jsx variable.object.property.js.jsx"},{"match":"\\\\?","name":"keyword.operator.optional.js.jsx"},{"match":"!","name":"keyword.operator.definiteassignment.js.jsx"}]},"for-loop":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*))await)?\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.js.jsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.js.jsx"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.js.jsx"}]},"function-call":{"patterns":[{"begin":"(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.js.jsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","end":"(?<=>)(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*[{\\\\[(]\\\\s*$))","name":"meta.function-call.js.jsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.js.jsx punctuation.accessor.optional.js.jsx"},{"match":"!","name":"meta.function-call.js.jsx keyword.operator.definiteassignment.js.jsx"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.js.jsx"}]},"function-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$A-Za-z][_$0-9A-Za-z]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.async.js.jsx"},"4":{"name":"storage.type.function.js.jsx"},"5":{"name":"keyword.generator.asterisk.js.jsx"},"6":{"name":"meta.definition.function.js.jsx entity.name.function.js.jsx"}},"end":"(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|(?<=\\\\})","name":"meta.function.js.jsx","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$A-Za-z][_$0-9A-Za-z]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"storage.type.function.js.jsx"},"3":{"name":"keyword.generator.asterisk.js.jsx"},"4":{"name":"meta.definition.function.js.jsx entity.name.function.js.jsx"}},"end":"(?=;)|(?<=\\\\})","name":"meta.function.expression.js.jsx","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.function.js.jsx entity.name.function.js.jsx"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.js.jsx"}},"name":"meta.parameters.js.jsx","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.js.jsx"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"},"3":{"name":"entity.name.function.js.jsx"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"},"3":{"name":"variable.other.constant.property.js.jsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])"},{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"},"3":{"name":"variable.other.property.js.jsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"},{"match":"([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])","name":"variable.other.constant.js.jsx"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"variable.other.readwrite.js.jsx"}]},"if-statement":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|\\\\})","patterns":[{"include":"#comment"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.js.jsx"},"2":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js.jsx"},"2":{"name":"keyword.other.js.jsx"}},"name":"string.regexp.js.jsx","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[:(])(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"keyword.control.import.js.jsx"},"4":{"name":"keyword.control.type.js.jsx"}},"end":"(?<!^import|[^\\\\._$0-9A-Za-z]import)(?=;|$|^)","name":"meta.import.js.jsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=^import|[^\\\\._$0-9A-Za-z]import)(?!\\\\s*[\\"'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.js.jsx"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"keyword.control.import.js.jsx"},"4":{"name":"keyword.control.type.js.jsx"},"5":{"name":"variable.other.readwrite.alias.js.jsx"},"6":{"name":"keyword.operator.assignment.js.jsx"},"7":{"name":"keyword.control.require.js.jsx"},"8":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"name":"meta.import-equals.external.js.jsx","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"keyword.control.import.js.jsx"},"4":{"name":"keyword.control.type.js.jsx"},"5":{"name":"variable.other.readwrite.alias.js.jsx"},"6":{"name":"keyword.operator.assignment.js.jsx"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.js.jsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.js.jsx"},"2":{"name":"punctuation.accessor.js.jsx"},"3":{"name":"punctuation.accessor.optional.js.jsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"variable.other.readwrite.js.jsx"}]}]},"import-export-assert-clause":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.js.jsx"},"2":{"name":"keyword.control.assert.js.jsx"},"3":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"(?:[_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object-literal.key.js.jsx"},{"match":":","name":"punctuation.separator.key-value.js.jsx"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"meta.block.js.jsx","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.js.jsx"},"2":{"name":"keyword.control.default.js.jsx"},"3":{"name":"constant.language.import-export-all.js.jsx"},"4":{"name":"variable.other.readwrite.js.jsx"},"5":{"name":"keyword.control.as.js.jsx"},"6":{"name":"keyword.control.default.js.jsx"},"7":{"name":"variable.other.readwrite.alias.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(?:(\\\\btype)\\\\s+)?(?:(\\\\bdefault)|(\\\\*)|(\\\\b[_$A-Za-z][_$0-9A-Za-z]*)))\\\\s+(as)\\\\s+(?:(default(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([_$A-Za-z][_$0-9A-Za-z]*))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.js.jsx"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.js.jsx"},{"captures":{"1":{"name":"keyword.control.type.js.jsx"},"2":{"name":"variable.other.readwrite.alias.js.jsx"}},"match":"(?:(\\\\btype)\\\\s+)?([_$A-Za-z][_$0-9A-Za-z]*)"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.js.jsx"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"meta.brace.square.js.jsx"},"3":{"name":"variable.parameter.js.jsx"}},"end":"(\\\\])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.js.jsx"},"2":{"name":"keyword.operator.optional.js.jsx"}},"name":"meta.indexer.declaration.js.jsx","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([+-])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$A-Za-z][_$0-9A-Za-z]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"meta.brace.square.js.jsx"},"4":{"name":"entity.name.type.js.jsx"},"5":{"name":"keyword.operator.expression.in.js.jsx"}},"end":"(\\\\])([+-])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.js.jsx"},"2":{"name":"keyword.operator.type.modifier.js.jsx"},"3":{"name":"keyword.operator.optional.js.jsx"}},"name":"meta.indexer.mappedtype.declaration.js.jsx","patterns":[{"captures":{"1":{"name":"keyword.control.as.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^\\\\]]+(\\\\])(?={@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"({)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^|}\\\\s*]|\\\\*[/])+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^{}@\\\\s|*]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.js.jsx"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s+instanceof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\s*[(]))))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.type.interface.js.jsx"}},"end":"(?<=\\\\})","name":"meta.interface.js.jsx","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.js.jsx"}},"match":"[_$A-Za-z][_$0-9A-Za-z]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G({)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"jsx":{"patterns":[{"include":"#jsx-tag-without-attributes-in-expression"},{"include":"#jsx-tag-in-expression"}]},"jsx-children":{"patterns":[{"include":"#jsx-tag-without-attributes"},{"include":"#jsx-tag"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-entities"}]},"jsx-entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.js.jsx"},"3":{"name":"punctuation.definition.entity.js.jsx"}},"match":"(&)([a-zA-Z0-9]+|#\\\\d+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.js.jsx"}]},"jsx-evaluated-code":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.js.jsx"}},"contentName":"meta.embedded.expression.js.jsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.js.jsx"}},"patterns":[{"include":"#expression"}]},"jsx-string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.js.jsx"}},"name":"string.quoted.double.js.jsx","patterns":[{"include":"#jsx-entities"}]},"jsx-string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.js.jsx"}},"name":"string.quoted.single.js.jsx","patterns":[{"include":"#jsx-entities"}]},"jsx-tag":{"begin":"(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>))","end":"(/>)|(?:(</)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>))","endCaptures":{"1":{"name":"punctuation.definition.tag.end.js.jsx"},"2":{"name":"punctuation.definition.tag.begin.js.jsx"},"3":{"name":"entity.name.tag.namespace.js.jsx"},"4":{"name":"punctuation.separator.namespace.js.jsx"},"5":{"name":"entity.name.tag.js.jsx"},"6":{"name":"support.class.component.js.jsx"},"7":{"name":"punctuation.definition.tag.end.js.jsx"}},"name":"meta.tag.js.jsx","patterns":[{"begin":"(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js.jsx"},"2":{"name":"entity.name.tag.namespace.js.jsx"},"3":{"name":"punctuation.separator.namespace.js.jsx"},"4":{"name":"entity.name.tag.js.jsx"},"5":{"name":"support.class.component.js.jsx"}},"end":"(?=[/]?>)","patterns":[{"include":"#comment"},{"include":"#type-arguments"},{"include":"#jsx-tag-attributes"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.js.jsx"}},"contentName":"meta.jsx.children.js.jsx","end":"(?=</)","patterns":[{"include":"#jsx-children"}]}]},"jsx-tag-attribute-assignment":{"match":"=(?=\\\\s*(?:'|\\"|{|/\\\\*|//|\\\\n))","name":"keyword.operator.assignment.js.jsx"},"jsx-tag-attribute-name":{"captures":{"1":{"name":"entity.other.attribute-name.namespace.js.jsx"},"2":{"name":"punctuation.separator.namespace.js.jsx"},"3":{"name":"entity.other.attribute-name.js.jsx"}},"match":"\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(:))?([_$A-Za-z][-_$0-9A-Za-z]*)(?=\\\\s|=|/?>|/\\\\*|//)"},"jsx-tag-attributes":{"begin":"\\\\s+","end":"(?=[/]?>)","name":"meta.tag.attributes.js.jsx","patterns":[{"include":"#comment"},{"include":"#jsx-tag-attribute-name"},{"include":"#jsx-tag-attribute-assignment"},{"include":"#jsx-string-double-quoted"},{"include":"#jsx-string-single-quoted"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-tag-attributes-illegal"}]},"jsx-tag-attributes-illegal":{"match":"\\\\S+","name":"invalid.illegal.attribute.js.jsx"},"jsx-tag-in-expression":{"begin":"(?<!\\\\+\\\\+|--)(?<=[({\\\\[,?=>:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^default|[^\\\\._$0-9A-Za-z]default|^yield|[^\\\\._$0-9A-Za-z]yield|^)\\\\s*(?!<\\\\s*[_$A-Za-z][_$0-9A-Za-z]*((\\\\s+extends\\\\s+[^=>])|,))(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>))","end":"(?!(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>))","patterns":[{"include":"#jsx-tag"}]},"jsx-tag-without-attributes":{"begin":"(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.js.jsx"},"2":{"name":"entity.name.tag.namespace.js.jsx"},"3":{"name":"punctuation.separator.namespace.js.jsx"},"4":{"name":"entity.name.tag.js.jsx"},"5":{"name":"support.class.component.js.jsx"},"6":{"name":"punctuation.definition.tag.end.js.jsx"}},"contentName":"meta.jsx.children.js.jsx","end":"(</)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.js.jsx"},"2":{"name":"entity.name.tag.namespace.js.jsx"},"3":{"name":"punctuation.separator.namespace.js.jsx"},"4":{"name":"entity.name.tag.js.jsx"},"5":{"name":"support.class.component.js.jsx"},"6":{"name":"punctuation.definition.tag.end.js.jsx"}},"name":"meta.tag.without-attributes.js.jsx","patterns":[{"include":"#jsx-children"}]},"jsx-tag-without-attributes-in-expression":{"begin":"(?<!\\\\+\\\\+|--)(?<=[({\\\\[,?=>:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^default|[^\\\\._$0-9A-Za-z]default|^yield|[^\\\\._$0-9A-Za-z]yield|^)\\\\s*(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>))","end":"(?!(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>))","patterns":[{"include":"#jsx-tag-without-attributes"}]},"label":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.js.jsx"},"2":{"name":"punctuation.separator.label.js.jsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.js.jsx"},"2":{"name":"punctuation.separator.label.js.jsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.modifier.async.js.jsx"},"5":{"name":"storage.type.js.jsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.modifier.async.js.jsx"},"5":{"name":"keyword.operator.new.js.jsx"},"6":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.modifier.js.jsx"},"4":{"name":"storage.modifier.async.js.jsx"},"5":{"name":"storage.type.property.js.jsx"},"6":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??)\\\\s*[(<])","end":"(?=\\\\(|<)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.method.js.jsx entity.name.function.js.jsx"},{"match":"\\\\?","name":"keyword.operator.optional.js.jsx"}]},"namespace-declaration":{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[_$A-Za-z\\"'\`]))","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.type.namespace.js.jsx"}},"end":"(?<=\\\\})|(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.namespace.declaration.js.jsx","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.type.module.js.jsx"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.js.jsx"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\s*[(]))))","name":"new.expr.js.jsx","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.js.jsx"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.js.jsx"}},"match":"\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.js.jsx"},{"captures":{"1":{"name":"storage.type.numeric.bigint.js.jsx"}},"match":"\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.js.jsx"},{"captures":{"1":{"name":"storage.type.numeric.bigint.js.jsx"}},"match":"\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.js.jsx"},{"captures":{"0":{"name":"constant.numeric.decimal.js.jsx"},"1":{"name":"meta.delimiter.decimal.period.js.jsx"},"2":{"name":"storage.type.numeric.bigint.js.jsx"},"3":{"name":"meta.delimiter.decimal.period.js.jsx"},"4":{"name":"storage.type.numeric.bigint.js.jsx"},"5":{"name":"meta.delimiter.decimal.period.js.jsx"},"6":{"name":"storage.type.numeric.bigint.js.jsx"},"7":{"name":"storage.type.numeric.bigint.js.jsx"},"8":{"name":"meta.delimiter.decimal.period.js.jsx"},"9":{"name":"storage.type.numeric.bigint.js.jsx"},"10":{"name":"meta.delimiter.decimal.period.js.jsx"},"11":{"name":"storage.type.numeric.bigint.js.jsx"},"12":{"name":"meta.delimiter.decimal.period.js.jsx"},"13":{"name":"storage.type.numeric.bigint.js.jsx"},"14":{"name":"storage.type.numeric.bigint.js.jsx"}},"match":"(?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.js.jsx"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.js.jsx"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"variable.object.property.js.jsx"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.js.jsx"},{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"},"3":{"name":"variable.other.constant.object.property.js.jsx"},"4":{"name":"variable.other.object.property.js.jsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(?:(\\\\#?[A-Z][_$\\\\dA-Z]*)|(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"},{"captures":{"1":{"name":"variable.other.constant.object.js.jsx"},"2":{"name":"variable.other.object.js.jsx"}},"match":"(?:([A-Z][_$\\\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"meta.objectliteral.js.jsx","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"storage.type.property.js.jsx"},"3":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"storage.type.property.js.jsx"},"3":{"name":"keyword.generator.asterisk.js.jsx"}},"end":"(?=\\\\(|<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[(<]))","name":"meta.object.member.js.jsx meta.object-literal.key.js.jsx","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\'\\\\\\"\\\\\`])","end":"(?=:)|((?<=[\\\\'\\\\\\"\\\\\`])(?=((\\\\s*[(<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.js.jsx meta.object-literal.key.js.jsx","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([(<,}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.js.jsx meta.object-literal.key.js.jsx","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[\\\\]\\\\'\\\\\\"\\\\\`])(?=\\\\s*[(<])","end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.js.jsx","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.js.jsx"},"1":{"name":"constant.numeric.decimal.js.jsx"}},"match":"(?![_$A-Za-z])([\\\\d]+)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.js.jsx"},{"captures":{"0":{"name":"meta.object-literal.key.js.jsx"},"1":{"name":"entity.name.function.js.jsx"}},"match":"(?:([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.js.jsx"},{"captures":{"0":{"name":"meta.object-literal.key.js.jsx"}},"match":"(?:[_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.js.jsx"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js.jsx"}},"end":"(?=,|\\\\})","name":"meta.object.member.js.jsx","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.js.jsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.js.jsx"},{"captures":{"1":{"name":"keyword.control.as.js.jsx"},"2":{"name":"storage.modifier.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.js.jsx"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.js.jsx"},"2":{"name":"keyword.control.satisfies.js.jsx"}},"end":"(?=[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|^|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.js.jsx","patterns":[{"include":"#type"}]},{"begin":"(?=[_$A-Za-z][_$0-9A-Za-z]*\\\\s*=)","end":"(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.js.jsx","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.js.jsx punctuation.separator.key-value.js.jsx"}},"end":"(?=,|\\\\})","name":"meta.object.member.js.jsx","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"},"2":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.js.jsx"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"entity.name.function.js.jsx variable.language.this.js.jsx"},"4":{"name":"entity.name.function.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"4":{"name":"variable.parameter.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.js.jsx"},"2":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.js.jsx"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?=[,)])|(?==[^>])","name":"meta.type.annotation.js.jsx","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$0-9A-Za-z]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.js.jsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.js.jsx meta.return.type.arrow.js.jsx keyword.operator.type.annotation.js.jsx"}},"contentName":"meta.arrow.js.jsx meta.return.type.arrow.js.jsx","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.js.jsx"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.js.jsx"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.js.jsx"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"(\\")|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js.jsx"},"2":{"name":"invalid.illegal.newline.js.jsx"}},"name":"string.quoted.double.js.jsx","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"(\\\\')|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js.jsx"},"2":{"name":"invalid.illegal.newline.js.jsx"}},"name":"string.quoted.single.js.jsx","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[=(:,\\\\[?+!]|^return|[^\\\\._$0-9A-Za-z]return|^case|[^\\\\._$0-9A-Za-z]case|=>|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js.jsx"},"2":{"name":"keyword.other.js.jsx"}},"name":"string.regexp.js.jsx","patterns":[{"include":"#regexp"}]},{"begin":"((?<![_$0-9A-Za-z)\\\\]]|\\\\+\\\\+|--|}|\\\\*\\\\/)|((?<=^return|[^\\\\._$0-9A-Za-z]return|^case|[^\\\\._$0-9A-Za-z]case))\\\\s*)\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.js.jsx"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.js.jsx"},"2":{"name":"keyword.other.js.jsx"}},"name":"string.regexp.js.jsx","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdDtrnvf]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[bB]|\\\\^|\\\\$","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\[1-9]\\\\d*|\\\\\\\\k<([a-zA-Z_$][\\\\w$]*)>"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|(?:\\\\?<([a-zA-Z_$][\\\\w$]*)>))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?<![:|&])(?=$|^|[{};,]|//)","name":"meta.return.type.js.jsx","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?<![:|&])((?=[{};,]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.js.jsx","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[:|&])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.js.jsx"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.js.jsx"},"single-line-comment-consuming-line-ending":{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.js.jsx"},"2":{"name":"comment.line.double-slash.js.jsx"},"3":{"name":"punctuation.definition.comment.js.jsx"},"4":{"name":"storage.type.internaldeclaration.js.jsx"},"5":{"name":"punctuation.decorator.internaldeclaration.js.jsx"}},"contentName":"comment.line.double-slash.js.jsx","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\{[0-9A-Fa-f]+\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.js.jsx"},"super-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.js.jsx"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*[(]\\\\s*[\\\\\\"\\\\'\\\\\`]))","name":"keyword.operator.expression.import.js.jsx"}]},"support-objects":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.js.jsx"},{"captures":{"1":{"name":"keyword.control.import.js.jsx"},"2":{"name":"punctuation.accessor.js.jsx"},"3":{"name":"punctuation.accessor.optional.js.jsx"},"4":{"name":"support.variable.property.importmeta.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.js.jsx"},"2":{"name":"punctuation.accessor.js.jsx"},"3":{"name":"punctuation.accessor.optional.js.jsx"},"4":{"name":"support.variable.property.target.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.js.jsx"},"2":{"name":"punctuation.accessor.optional.js.jsx"},"3":{"name":"support.variable.property.js.jsx"},"4":{"name":"support.constant.js.jsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.js.jsx"},"2":{"name":"support.type.object.module.js.jsx"},"3":{"name":"punctuation.accessor.js.jsx"},"4":{"name":"punctuation.accessor.optional.js.jsx"},"5":{"name":"support.type.object.module.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"switch-statement.expr.js.jsx","patterns":[{"include":"#comment"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.js.jsx"},"2":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"name":"switch-expression.expr.js.jsx","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"(?=\\\\})","name":"switch-block.expr.js.jsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.js.jsx"}},"end":"(?=:)","name":"case-clause.expr.js.jsx","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.js.jsx punctuation.definition.section.case-statement.js.jsx"},"2":{"name":"meta.block.js.jsx punctuation.definition.block.js.jsx"}},"contentName":"meta.block.js.jsx","end":"\\\\}","endCaptures":{"0":{"name":"meta.block.js.jsx punctuation.definition.block.js.jsx"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.js.jsx punctuation.definition.section.case-statement.js.jsx"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js.jsx"},"2":{"name":"string.template.js.jsx punctuation.definition.string.template.begin.js.jsx"}},"contentName":"string.template.js.jsx","end":"\`","endCaptures":{"0":{"name":"string.template.js.jsx punctuation.definition.string.template.end.js.jsx"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\`)","end":"(?=\`)","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.tagged-template.js.jsx"}]},{"include":"#type-arguments"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js.jsx"}},"end":"(?=\`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js.jsx"}},"contentName":"meta.embedded.line.js.jsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js.jsx"}},"name":"meta.template.expression.js.jsx","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.js.jsx"},"2":{"name":"string.template.js.jsx punctuation.definition.string.template.begin.js.jsx"}},"contentName":"string.template.js.jsx","end":"\`","endCaptures":{"0":{"name":"string.template.js.jsx punctuation.definition.string.template.end.js.jsx"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.js.jsx"}},"contentName":"meta.embedded.line.js.jsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.js.jsx"}},"name":"meta.template.expression.js.jsx","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^\\\\d])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.js.jsx"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.js.jsx"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.js.jsx"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.type.type.js.jsx"},"4":{"name":"entity.name.type.alias.js.jsx"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.type.declaration.js.jsx","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.js.jsx"},"2":{"name":"keyword.control.intrinsic.js.jsx"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.js.jsx"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?<![:|&])(?!\\\\s*[|&]\\\\s+)((?=^|[,);}\\\\]]|//)|(?==[^>])|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js.jsx","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.js.jsx"}},"end":"(?<![:|&])((?=[,);}\\\\]]|\\\\/\\\\/)|(?==[^>])|(?=^\\\\s*$)|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.js.jsx","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.js.jsx"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.js.jsx"}},"name":"meta.type.parameters.js.jsx","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.js.jsx"},"type-conditional":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.js.jsx"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.js.jsx"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*<)","beginCaptures":{"1":{"name":"meta.type.constructor.js.jsx storage.modifier.js.jsx"},"2":{"name":"meta.type.constructor.js.jsx keyword.control.new.js.jsx"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.control.new.js.jsx"}},"end":"(?<=\\\\))","name":"meta.type.constructor.js.jsx","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=[(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.js.jsx","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.js.jsx"}},"end":"(?<!=>)(?<![|&])(?=[,\\\\]){}=;>:?]|//|$)","name":"meta.type.function.return.js.jsx","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.js.jsx"}},"end":"(?<!=>)(?<![|&])((?=[,\\\\]){}=;:?>]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.js.jsx","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.js.jsx"},"2":{"name":"entity.name.type.js.jsx"},"3":{"name":"keyword.operator.expression.extends.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.js.jsx"}]},"type-name":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.js.jsx"},"2":{"name":"punctuation.accessor.js.jsx"},"3":{"name":"punctuation.accessor.optional.js.jsx"},"4":{"name":"meta.type.parameters.js.jsx punctuation.definition.typeparameters.begin.js.jsx"}},"contentName":"meta.type.parameters.js.jsx","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.js.jsx punctuation.definition.typeparameters.end.js.jsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.js.jsx"},"2":{"name":"meta.type.parameters.js.jsx punctuation.definition.typeparameters.begin.js.jsx"}},"contentName":"meta.type.parameters.js.jsx","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.js.jsx punctuation.definition.typeparameters.end.js.jsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.js.jsx"},"2":{"name":"punctuation.accessor.js.jsx"},"3":{"name":"punctuation.accessor.optional.js.jsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"entity.name.type.js.jsx"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.js.jsx"}},"name":"meta.object.type.js.jsx","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.js.jsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.js.jsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.js.jsx"}},"end":"(?=\\\\S)"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.js.jsx"},{"match":"(\\\\?|:)","name":"keyword.operator.ternary.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.js.jsx"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.js.jsx"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.js.jsx"}},"name":"meta.type.parameters.js.jsx","patterns":[{"include":"#comment"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.js.jsx"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.js.jsx"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.js.jsx"}},"name":"meta.type.paren.cover.js.jsx","patterns":[{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"entity.name.function.js.jsx variable.language.this.js.jsx"},"4":{"name":"entity.name.function.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.js.jsx"},"2":{"name":"keyword.operator.rest.js.jsx"},"3":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"4":{"name":"variable.parameter.js.jsx"},"5":{"name":"keyword.operator.optional.js.jsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.js.jsx"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.js.jsx"},"2":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"3":{"name":"variable.parameter.js.jsx"},"4":{"name":"keyword.operator.expression.is.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))\\\\s(is)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.js.jsx"},"2":{"name":"variable.parameter.js.jsx variable.language.this.js.jsx"},"3":{"name":"variable.parameter.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.js.jsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.js.jsx"}]},"type-primitive":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.js.jsx"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.js.jsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.js.jsx"}},"name":"meta.type.tuple.js.jsx","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.js.jsx"},{"captures":{"1":{"name":"entity.name.label.js.jsx"},"2":{"name":"keyword.operator.optional.js.jsx"},"3":{"name":"punctuation.separator.label.js.jsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.js.jsx"}},"end":"(?=[,);}\\\\]=>:&|{?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.js.jsx"},"var-expr":{"patterns":[{"begin":"(?=(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|((?<!^let|[^\\\\._$0-9A-Za-z]let|^var|[^\\\\._$0-9A-Za-z]var)(?=\\\\s*$)))","name":"meta.var.expr.js.jsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.type.js.jsx"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.js.jsx"}},"end":"(?<!,)(((?==|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.type.js.jsx"}},"end":"(?!(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|((?<!^const|[^\\\\._$0-9A-Za-z]const)(?=\\\\s*$)))","name":"meta.var.expr.js.jsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.type.js.jsx"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.js.jsx"}},"end":"(?<!,)(((?==|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.type.js.jsx"}},"end":"(?!(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|((?<!^using|[^\\\\._$0-9A-Za-z]using|^await\\\\s+using|[^\\\\._$0-9A-Za-z]await\\\\s+using)(?=\\\\s*$)))","name":"meta.var.expr.js.jsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.js.jsx"},"2":{"name":"storage.modifier.js.jsx"},"3":{"name":"storage.type.js.jsx"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=\\\\/\\\\/))","beginCaptures":{"1":{"name":"punctuation.separator.comma.js.jsx"}},"end":"(?<!,)(((?==|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js.jsx variable.other.constant.js.jsx entity.name.function.js.jsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.js.jsx","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)","beginCaptures":{"1":{"name":"meta.definition.variable.js.jsx variable.other.constant.js.jsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.js.jsx","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)(!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.js.jsx entity.name.function.js.jsx"},"2":{"name":"keyword.operator.definiteassignment.js.jsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.js.jsx","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.js.jsx variable.other.constant.js.jsx"},"2":{"name":"keyword.operator.definiteassignment.js.jsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.js.jsx","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.js.jsx variable.other.readwrite.js.jsx"},"2":{"name":"keyword.operator.definiteassignment.js.jsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.js.jsx","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<!=|!)(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.js.jsx"}},"end":"(?=$|^|[,);}\\\\]]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<!=|!)(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.js.jsx"}},"end":"(?=[,);}\\\\]]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![\\\\|\\\\&+\\\\-\\\\*\\\\/])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.js.jsx"}`)),n=[e];export{n as default}; diff --git a/_nuxt/PZ4IibY0.js b/_nuxt/PZ4IibY0.js new file mode 100644 index 0000000..0d79005 --- /dev/null +++ b/_nuxt/PZ4IibY0.js @@ -0,0 +1 @@ +import{d as Y,u as V,a as W,r as M,o as j,_ as ee,b as te,c as q,e as b,n as ne,F as oe,f as v,g as ie,h as L,i as U,w as z,T as B,t as ae,j as J,k as se,l as re,m as de,q as le,p as ue,s as E,v as H,x as Z,y as pe,z as ce,A as O}from"./WKNqgS7_.js";const we={key:0},ve={key:0},fe={id:"__preview_loader"},me=Y({__name:"ContentPreviewMode",props:{previewToken:{type:String,required:!0},apiURL:{type:String,required:!0},syncPreview:{type:Function,required:!0},requestPreviewSyncAPI:{type:Function,required:!0}},setup(a){const s=a,t=["__nuxt_preview","__preview_enabled"],p=V(),g=W(),c=M(!0),C=M(!1),e=M(!1),o=M("");let n;const i=async()=>{J("previewToken").value="",window.sessionStorage.removeItem("previewToken"),window.sessionStorage.removeItem("previewAPI"),await g.replace({query:{preview:void 0}}),window.location.reload()},y=async w=>{const r=await s.syncPreview(w);if(e.value!==!0){if(!r){setTimeout(()=>y(w),1e3);return}J("previewToken").value&&(e.value=!0,await g.replace({query:{}}),p.callHook("nuxt-studio:preview:ready"),window.parent&&window.self!==window.parent&&n.disconnect())}};return j(async()=>{n=(await ee(()=>import("./ce1gcSEv.js"),[],import.meta.url)).connect(`${s.apiURL}/preview`,{transports:["websocket","polling"],auth:{token:s.previewToken}});let r;n.on("connect",()=>{r=setTimeout(()=>{e.value||(r=setTimeout(()=>{o.value="Preview sync timed out",e.value=!1},3e4),n.emit("draft:requestSync"))},3e4)});const x=()=>{r&&(clearTimeout(r),r=null)};n.on("draft:sync",async A=>{if(x(),!A){try{n.once("draft:ready",()=>{n.emit("draft:requestSync")}),await s.requestPreviewSyncAPI()}catch(T){switch(x(),T.response.status){case 404:o.value="Preview draft not found",e.value=!1;break;default:o.value="An error occurred while syncing preview",e.value=!1}}return}y(A)}),n.on("draft:unauthorized",()=>{x(),o.value="Unauthorized preview",e.value=!1}),n.on("disconnect",()=>{x()}),document.body.classList.add(...t),n.on("draft:update",A=>{C.value=!0,s.syncPreview(A),C.value=!1})}),te(()=>{document.body.classList.remove(...t)}),(w,r)=>(q(),b("div",null,[c.value?(q(),b("div",{key:0,id:"__nuxt_preview",class:ne({__preview_ready:e.value,__preview_refreshing:C.value})},[e.value?(q(),b(oe,{key:0},[r[0]||(r[0]=v("svg",{viewBox:"0 0 90 90",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[v("path",{d:"M50.0016 71.0999h29.2561c.9293.0001 1.8422-.241 2.6469-.6992.8047-.4582 1.4729-1.1173 1.9373-1.9109.4645-.7936.7088-1.6939.7083-2.6102-.0004-.9162-.2455-1.8163-.7106-2.6095L64.192 29.713c-.4644-.7934-1.1325-1.4523-1.937-1.9105-.8046-.4581-1.7173-.6993-2.6463-.6993-.9291 0-1.8418.2412-2.6463.6993-.8046.4582-1.4726 1.1171-1.937 1.9105l-5.0238 8.5861-9.8224-16.7898c-.4648-.7934-1.1332-1.4522-1.938-1.9102-.8047-.4581-1.7176-.6992-2.6468-.6992-.9292 0-1.842.2411-2.6468.6992-.8048.458-1.4731 1.1168-1.9379 1.9102L6.56062 63.2701c-.46512.7932-.71021 1.6933-.71061 2.6095-.00041.9163.24389 1.8166.70831 2.6102.46443.7936 1.1326 1.4527 1.93732 1.9109.80473.4582 1.71766.6993 2.64686.6992h18.3646c7.2763 0 12.6422-3.1516 16.3345-9.3002l8.9642-15.3081 4.8015-8.1925 14.4099 24.6083H54.8058l-4.8042 8.1925ZM29.2077 62.899l-12.8161-.0028L35.603 30.0869l9.5857 16.4047-6.418 10.9645c-2.4521 3.9894-5.2377 5.4429-9.563 5.4429Z",fill:"currentColor"})],-1)),r[1]||(r[1]=v("span",null,[v("a",{href:"https://nuxt.studio",target:"_blank",rel:"noopener"},"Nuxt Studio"),ie(": Preview enabled")],-1)),v("button",{onClick:i}," Close ")],64)):L("",!0)],2)):L("",!0),U(B,{name:"preview-loading"},{default:z(()=>[c.value&&!e.value&&!o.value?(q(),b("div",we,[r[4]||(r[4]=v("div",{id:"__preview_background"},null,-1)),v("div",{id:"__preview_loader"},[r[2]||(r[2]=v("svg",{id:"__preview_loading_icon",width:"32",height:"32",viewBox:"0 0 24 24"},[v("path",{fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M4 4v5h.582m15.356 2A8.001 8.001 0 0 0 4.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 0 1-15.357-2m15.357 2H15"})],-1)),r[3]||(r[3]=v("p",null,"Initializing the preview...",-1)),v("button",{onClick:i}," Cancel ")])])):L("",!0)]),_:1}),U(B,{name:"preview-loading"},{default:z(()=>[o.value?(q(),b("div",ve,[r[5]||(r[5]=v("div",{id:"__preview_background"},null,-1)),v("div",fe,[v("p",null,ae(o.value),1),v("button",{onClick:i}," Exit preview ")])])):L("",!0)]),_:1})]))}}),ye=se(me,[["__scopeId","data-v-53594541"]]),he=(a=[],s,t)=>{const p=[...s||[]],g=[...t||[]],c=JSON.parse(JSON.stringify(a));for(const e of p)if(e.new)c.push({path:e.path,parsed:e.parsed});else if(e.oldPath)if(g.splice(g.findIndex(n=>n.path===e.oldPath),1),p.find(n=>n.path===e.oldPath))c.push({path:e.path,parsed:e.parsed});else{const n=c.find(i=>i.path===e.oldPath);n&&(n.path=e.path,e.parsed?n.parsed=e.parsed:e.pathMeta&&["_file","_path","_id","_locale"].forEach(i=>{n.parsed[i]=e.pathMeta[i]}))}else{const o=c.find(n=>n.path===e.path);o?Object.assign(o,{path:e.path,parsed:e.parsed}):c.push({path:e.path,parsed:e.parsed})}for(const e of g)c.splice(c.findIndex(o=>o.path===e.path),1);const C=new Intl.Collator(void 0,{numeric:!0});return c.sort((e,o)=>C.compare(e.path,o.path)),c},k={appConfig:"app.config.ts",appConfigV4:"app/app.config.ts",nuxtConfig:"nuxt.config.ts"},ge=re((a,s,t)=>{if(Array.isArray(a[s])&&Array.isArray(t))return a[s]=t,!0}),_e=a=>{let s;return t=>(s||(s=a()),s)};function G(a,s){for(const t in a){const p=s[t];t in s||delete a[t],p!==null&&typeof p=="object"&&G(a[t],s[t])}}function Q(a,s){for(const t in s){const p=s[t];p!==null&&typeof p=="object"?Array.isArray(p)&&Array.isArray(a[t])?a[t]=p:(a[t]=a[t]||{},Q(a[t],p)):a[t]=p}}const ke=()=>{const a=V(),s={},t=de("studio-client-db",()=>null);t.value||(a.hook("content:storage",o=>{t.value=o}),le("/non-existing-path").findOne());const p=async o=>{var y,w,r;const n=window.sessionStorage.getItem("previewToken");if(!o)return null;o=o.replace(/\/$/,"");let i=await((y=t.value)==null?void 0:y.getItem(`${n}:${o}`));return i||(i=await((w=t.value)==null?void 0:w.getItem(`cached:${o}`))),i||(i=i=await((r=t.value)==null?void 0:r.getItem(o))),i||(i=s[o||"/"]),i};return{storage:t,findContentItem:p,updateContentItem:(o,n)=>{var i;t.value&&(s[n.parsed._path]=n.parsed,t.value.setItem(`${o}:${(i=n.parsed)==null?void 0:i._id}`,JSON.stringify(n.parsed)))},removeContentItem:async(o,n)=>{var y;const i=await p(n);if(await((y=t.value)==null?void 0:y.removeItem(`${o}:${n}`)),i){delete s[i._path];const w=await p(i._id);w&&(s[w._path]=w)}},removeAllContentItems:async o=>{const n=await t.value.getKeys(`${o}:`);await Promise.all(n.map(i=>t.value.removeItem(i)))},setPreviewMetaItems:async(o,n)=>{const i=new Set(n.map(y=>y.parsed._id.split(":").shift()));await t.value.setItem(`${o}$`,JSON.stringify({ignoreSources:Array.from(i)}))}}},Ce=_e(()=>JSON.parse(JSON.stringify(Z())));let F=[];const Pe=()=>{const a=V(),{storage:s,findContentItem:t,updateContentItem:p,removeContentItem:g,removeAllContentItems:c,setPreviewMetaItems:C}=ke(),{studio:e,content:o}=ue().public,n=window.sessionStorage.getItem("previewAPI")||(e==null?void 0:e.apiURL),i=Ce(),y=async u=>{const d=window.sessionStorage.getItem("previewToken");c(d),C(d,u),await Promise.all(u.map(f=>{p(d,f)}))},w=u=>{const d=H(a,Z);d!=null&&d.ui&&(d.ui.icons={...d.ui.icons,dynamic:!0}),Q(d,ge(u,i)),u||G(d,i)},r=async u=>{if(F=u.files=u.files||F||[],!s.value)return!1;F=[];const d=he(u.files,u.additions,u.deletions),f=d.filter(I=>![k.appConfig,k.appConfigV4,k.nuxtConfig].includes(I.path));await y(f);const h=d.find(I=>[k.appConfig,k.appConfigV4].includes(I.path));return w(h==null?void 0:h.parsed),T(),!0},x=async()=>{const u=window.sessionStorage.getItem("previewToken");await $fetch("api/projects/preview/sync",{baseURL:n,method:"POST",params:{token:u}})},A=()=>{const u=window.sessionStorage.getItem("previewToken"),d=document.createElement("div");d.id="__nuxt_preview_wrapper",document.body.appendChild(d),pe(ye,{previewToken:u,apiURL:n,syncPreview:r,requestPreviewSyncAPI:x}).mount(d)},T=async()=>{if(o!=null&&o.documentDriven){const{pages:u}=H(a,ce),d=await Promise.all(Object.keys(u.value).map(async f=>{var h;return await t(((h=u.value[f])==null?void 0:h._id)??f)}));u.value=d.reduce((f,h,I)=>(h&&(f[Object.keys(u.value)[I]]=h),f),{})}await a.hooks.callHookParallel("app:data:refresh")};return{mountPreviewUI:A,initiateIframeCommunication:X};function X(){if(!window.parent||window.self===window.parent)return;const u=W(),d=E(),f=M(""),h=l=>({path:l.path,query:O(l.query),params:O(l.params),fullPath:l.fullPath,meta:O(l.meta)});window.addEventListener("keydown",l=>{(l.metaKey||l.ctrlKey||l.altKey||l.shiftKey)&&window.parent.postMessage({type:"nuxt-studio:preview:keydown",payload:{key:l.key,metaKey:l.metaKey,ctrlKey:l.ctrlKey,shiftKey:l.shiftKey,altKey:l.altKey}},"*")}),window.addEventListener("message",async l=>{var D;if(!["https://nuxt.studio","https://new.nuxt.studio","https://new.dev.nuxt.studio","https://dev.nuxt.studio","http://localhost:3000",...((D=e==null?void 0:e.iframeMessagingAllowedOrigins)==null?void 0:D.split(",").map(m=>m.trim()))||[]].includes(l.origin))return;const{type:N,payload:R={}}=l.data||{};switch(N){case"nuxt-studio:editor:file-selected":{const m=await t(R.path);if(!m||m._partial)return;if(!String(R.path).endsWith(".md")){const P=u.resolve(m._path);if(!P||!P.matched||P.matched.length===0)return}m._path!==E().path&&(f.value=m._path,u.push(m._path));break}case"nuxt-studio:editor:media-changed":case"nuxt-studio:editor:file-changed":{const m=window.sessionStorage.getItem("previewToken"),{additions:P=[],deletions:S=[]}=R;for(const K of P)await p(m,K);for(const K of S)await g(m,K.path);T();break}case"nuxt-studio:config:file-changed":{const{additions:m=[],deletions:P=[]}=R,S=m.find($=>[k.appConfig,k.appConfigV4].includes($.path));S&&w(S==null?void 0:S.parsed),P.find($=>[k.appConfig,k.appConfigV4].includes($.path))&&w(void 0)}}}),a.hook("page:finish",()=>{I(),a.payload.prerenderedAt&&T()}),a.hook("content:document-driven:finish",({route:l,page:_})=>{l.meta.studio_page_contentId=_==null?void 0:_._id}),a.hook("nuxt-studio:preview:ready",()=>{window.parent.postMessage({type:"nuxt-studio:preview:ready",payload:h(E())},"*"),setTimeout(()=>{I()},100)});function I(){const l=Array.from(window.document.querySelectorAll("[data-content-id]")).map(N=>N.getAttribute("data-content-id")),_=Array.from(new Set([d.meta.studio_page_contentId,...l])).filter(Boolean);if(f.value===_[0]){f.value="";return}window.openContentInStudioEditor(_,{navigate:!0,pageContentId:d.meta.studio_page_contentId})}window.openContentInStudioEditor=(l,_={})=>{window.parent.postMessage({type:"nuxt-studio:preview:navigate",payload:{...h(d),contentIds:l,..._}},"*")}}};export{Pe as useStudio}; diff --git a/_nuxt/ProseCode.B_fgAJq0.css b/_nuxt/ProseCode.B_fgAJq0.css new file mode 100644 index 0000000..5662666 --- /dev/null +++ b/_nuxt/ProseCode.B_fgAJq0.css @@ -0,0 +1 @@ +pre code .line{display:block;min-height:1rem} diff --git a/_nuxt/R2AG9nOp.js b/_nuxt/R2AG9nOp.js new file mode 100644 index 0000000..bbd0ab1 --- /dev/null +++ b/_nuxt/R2AG9nOp.js @@ -0,0 +1 @@ +import{_ as l}from"./D6W5XTfC.js";import{d as n,c as s,ag as i,w as r,f as o,n as g,aj as u,ah as m}from"./WKNqgS7_.js";import"./CWTHGu1v.js";import"./CuXcSdBY.js";const p=n({__name:"ProsePre",props:{code:{type:String,default:""},language:{type:String,default:null},filename:{type:String,default:null},highlights:{type:Array,default:()=>[]},meta:{type:String,default:null},class:{type:String,default:null},style:{type:[String,Object],default:null}},setup(e){return(a,f)=>{const t=l;return s(),i(t,{code:e.code,language:e.language,filename:e.filename,highlights:e.highlights,meta:e.meta},{default:r(()=>[o("pre",{class:g(a.$props.class),style:u(e.style)},[m(a.$slots,"default")],6)]),_:3},8,["code","language","filename","highlights","meta"])}}});export{p as default}; diff --git a/_nuxt/WKNqgS7_.js b/_nuxt/WKNqgS7_.js new file mode 100644 index 0000000..c20be78 --- /dev/null +++ b/_nuxt/WKNqgS7_.js @@ -0,0 +1,55 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./i3M2S4r6.js","./D-llQu22.js","./g2z_gaTr.js","./CtS59gnC.js","./BneCoJRQ.js","./DY7OrFLh.js","./Cpj98o6Y.js","./COj52qHV.js","./index.GovekSNP.css","./pvolzCCv.js","./Cv00pZP1.js","./BBZIarDJ.js","./C9Mei_rU.js","./CWTHGu1v.js","./CAXRF4Ia.js","./BmV_GQpb.js","./D6W5XTfC.js","./CuXcSdBY.js","./ProseCode.B_fgAJq0.css","./CPdV1HBm.js","./CRTu1PAQ.js","./jVz3gLGx.js","./Df0uYweg.js","./rV6PYh0J.js","./DHoNGUg4.js","./CUMxMy4f.js","./DiETWf-A.js","./R2AG9nOp.js","./PZ4IibY0.js","./useStudio.CMm9bqh_.css","./CXLurpFu.js","./C58JAWZH.js","./ContentSearch.BnrkXUn-.css"])))=>i.map(i=>d[i]); +/** +* @vue/shared v3.5.12 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**//*! #__NO_SIDE_EFFECTS__ */function Ll(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const je={},Dr=[],cn=()=>{},_m=()=>!1,ns=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Ml=e=>e.startsWith("onUpdate:"),Xe=Object.assign,jl=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},xm=Object.prototype.hasOwnProperty,Oe=(e,t)=>xm.call(e,t),de=Array.isArray,Nr=e=>rs(e)==="[object Map]",ed=e=>rs(e)==="[object Set]",km=e=>rs(e)==="[object RegExp]",he=e=>typeof e=="function",Ve=e=>typeof e=="string",Pn=e=>typeof e=="symbol",Ue=e=>e!==null&&typeof e=="object",Dl=e=>(Ue(e)||he(e))&&he(e.then)&&he(e.catch),td=Object.prototype.toString,rs=e=>td.call(e),Sm=e=>rs(e).slice(8,-1),nd=e=>rs(e)==="[object Object]",Nl=e=>Ve(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Hr=Ll(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),_i=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Em=/-(\w)/g,Nt=_i(e=>e.replace(Em,(t,n)=>n?n.toUpperCase():"")),Cm=/\B([A-Z])/g,Xn=_i(e=>e.replace(Cm,"-$1").toLowerCase()),xi=_i(e=>e.charAt(0).toUpperCase()+e.slice(1)),qi=_i(e=>e?`on${xi(e)}`:""),Vn=(e,t)=>!Object.is(e,t),To=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},rd=(e,t,n,r=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},Pm=e=>{const t=parseFloat(e);return isNaN(t)?e:t},od=e=>{const t=Ve(e)?Number(e):NaN;return isNaN(t)?e:t};let Vc;const ki=()=>Vc||(Vc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function ro(e){if(de(e)){const t={};for(let n=0;n<e.length;n++){const r=e[n],o=Ve(r)?$m(r):ro(r);if(o)for(const s in o)t[s]=o[s]}return t}else if(Ve(e)||Ue(e))return e}const Tm=/;(?![^(]*\))/g,Am=/:([^]+)/,Om=/\/\*[^]*?\*\//g;function $m(e){const t={};return e.replace(Om,"").split(Tm).forEach(n=>{if(n){const r=n.split(Am);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function W(e){let t="";if(Ve(e))t=e;else if(de(e))for(let n=0;n<e.length;n++){const r=W(e[n]);r&&(t+=r+" ")}else if(Ue(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}function Gs(e){if(!e)return null;let{class:t,style:n}=e;return t&&!Ve(t)&&(e.class=W(t)),n&&(e.style=ro(n)),e}const Rm="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Im=Ll(Rm);function sd(e){return!!e||e===""}const id=e=>!!(e&&e.__v_isRef===!0),Fe=e=>Ve(e)?e:e==null?"":de(e)||Ue(e)&&(e.toString===td||!he(e.toString))?id(e)?Fe(e.value):JSON.stringify(e,ad,2):String(e),ad=(e,t)=>id(t)?ad(e,t.value):Nr(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,o],s)=>(n[Ki(r,s)+" =>"]=o,n),{})}:ed(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>Ki(n))}:Pn(t)?Ki(t):Ue(t)&&!de(t)&&!nd(t)?String(t):t,Ki=(e,t="")=>{var n;return Pn(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.5.12 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let yt;class ld{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=yt,!t&&yt&&(this.index=(yt.scopes||(yt.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].pause();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=yt;try{return yt=this,t()}finally{yt=n}}}on(){yt=this}off(){yt=this.parent}stop(t){if(this._active){let n,r;for(n=0,r=this.effects.length;n<r;n++)this.effects[n].stop();for(n=0,r=this.cleanups.length;n<r;n++)this.cleanups[n]();if(this.scopes)for(n=0,r=this.scopes.length;n<r;n++)this.scopes[n].stop(!0);if(!this.detached&&this.parent&&!t){const o=this.parent.scopes.pop();o&&o!==this&&(this.parent.scopes[this.index]=o,o.index=this.index)}this.parent=void 0,this._active=!1}}}function cd(e){return new ld(e)}function Pr(){return yt}function _r(e,t=!1){yt&&yt.cleanups.push(e)}let He;const Gi=new WeakSet;class ud{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,yt&&yt.active&&yt.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Gi.has(this)&&(Gi.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||dd(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Wc(this),pd(this);const t=He,n=Yt;He=this,Yt=!0;try{return this.fn()}finally{hd(this),He=t,Yt=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)Bl(t);this.deps=this.depsTail=void 0,Wc(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Gi.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Ca(this)&&this.run()}get dirty(){return Ca(this)}}let fd=0,Ao,Oo;function dd(e,t=!1){if(e.flags|=8,t){e.next=Oo,Oo=e;return}e.next=Ao,Ao=e}function Hl(){fd++}function Fl(){if(--fd>0)return;if(Oo){let t=Oo;for(Oo=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Ao;){let t=Ao;for(Ao=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(r){e||(e=r)}t=n}}if(e)throw e}function pd(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function hd(e){let t,n=e.depsTail,r=n;for(;r;){const o=r.prevDep;r.version===-1?(r===n&&(n=o),Bl(r),Lm(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=o}e.deps=t,e.depsTail=n}function Ca(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(gd(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function gd(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Bo))return;e.globalVersion=Bo;const t=e.dep;if(e.flags|=2,t.version>0&&!e.isSSR&&e.deps&&!Ca(e)){e.flags&=-3;return}const n=He,r=Yt;He=e,Yt=!0;try{pd(e);const o=e.fn(e._value);(t.version===0||Vn(o,e._value))&&(e._value=o,t.version++)}catch(o){throw t.version++,o}finally{He=n,Yt=r,hd(e),e.flags&=-3}}function Bl(e,t=!1){const{dep:n,prevSub:r,nextSub:o}=e;if(r&&(r.nextSub=o,e.prevSub=void 0),o&&(o.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)Bl(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Lm(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Yt=!0;const md=[];function Jn(){md.push(Yt),Yt=!1}function Zn(){const e=md.pop();Yt=e===void 0?!0:e}function Wc(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=He;He=void 0;try{t()}finally{He=n}}}let Bo=0;class Mm{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Si{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0}track(t){if(!He||!Yt||He===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==He)n=this.activeLink=new Mm(He,this),He.deps?(n.prevDep=He.depsTail,He.depsTail.nextDep=n,He.depsTail=n):He.deps=He.depsTail=n,vd(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const r=n.nextDep;r.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=r),n.prevDep=He.depsTail,n.nextDep=void 0,He.depsTail.nextDep=n,He.depsTail=n,He.deps===n&&(He.deps=r)}return n}trigger(t){this.version++,Bo++,this.notify(t)}notify(t){Hl();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Fl()}}}function vd(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let r=t.deps;r;r=r.nextDep)vd(r)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Ys=new WeakMap,hr=Symbol(""),Pa=Symbol(""),Uo=Symbol("");function dt(e,t,n){if(Yt&&He){let r=Ys.get(e);r||Ys.set(e,r=new Map);let o=r.get(n);o||(r.set(n,o=new Si),o.map=r,o.key=n),o.track()}}function _n(e,t,n,r,o,s){const i=Ys.get(e);if(!i){Bo++;return}const a=l=>{l&&l.trigger()};if(Hl(),t==="clear")i.forEach(a);else{const l=de(e),u=l&&Nl(n);if(l&&n==="length"){const c=Number(r);i.forEach((f,d)=>{(d==="length"||d===Uo||!Pn(d)&&d>=c)&&a(f)})}else switch((n!==void 0||i.has(void 0))&&a(i.get(n)),u&&a(i.get(Uo)),t){case"add":l?u&&a(i.get("length")):(a(i.get(hr)),Nr(e)&&a(i.get(Pa)));break;case"delete":l||(a(i.get(hr)),Nr(e)&&a(i.get(Pa)));break;case"set":Nr(e)&&a(i.get(hr));break}}Fl()}function jm(e,t){const n=Ys.get(e);return n&&n.get(t)}function Ar(e){const t=Te(e);return t===e?t:(dt(t,"iterate",Uo),jt(e)?t:t.map(pt))}function Ei(e){return dt(e=Te(e),"iterate",Uo),e}const Dm={__proto__:null,[Symbol.iterator](){return Yi(this,Symbol.iterator,pt)},concat(...e){return Ar(this).concat(...e.map(t=>de(t)?Ar(t):t))},entries(){return Yi(this,"entries",e=>(e[1]=pt(e[1]),e))},every(e,t){return hn(this,"every",e,t,void 0,arguments)},filter(e,t){return hn(this,"filter",e,t,n=>n.map(pt),arguments)},find(e,t){return hn(this,"find",e,t,pt,arguments)},findIndex(e,t){return hn(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return hn(this,"findLast",e,t,pt,arguments)},findLastIndex(e,t){return hn(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return hn(this,"forEach",e,t,void 0,arguments)},includes(...e){return Qi(this,"includes",e)},indexOf(...e){return Qi(this,"indexOf",e)},join(e){return Ar(this).join(e)},lastIndexOf(...e){return Qi(this,"lastIndexOf",e)},map(e,t){return hn(this,"map",e,t,void 0,arguments)},pop(){return uo(this,"pop")},push(...e){return uo(this,"push",e)},reduce(e,...t){return qc(this,"reduce",e,t)},reduceRight(e,...t){return qc(this,"reduceRight",e,t)},shift(){return uo(this,"shift")},some(e,t){return hn(this,"some",e,t,void 0,arguments)},splice(...e){return uo(this,"splice",e)},toReversed(){return Ar(this).toReversed()},toSorted(e){return Ar(this).toSorted(e)},toSpliced(...e){return Ar(this).toSpliced(...e)},unshift(...e){return uo(this,"unshift",e)},values(){return Yi(this,"values",pt)}};function Yi(e,t,n){const r=Ei(e),o=r[t]();return r!==e&&!jt(e)&&(o._next=o.next,o.next=()=>{const s=o._next();return s.value&&(s.value=n(s.value)),s}),o}const Nm=Array.prototype;function hn(e,t,n,r,o,s){const i=Ei(e),a=i!==e&&!jt(e),l=i[t];if(l!==Nm[t]){const f=l.apply(e,s);return a?pt(f):f}let u=n;i!==e&&(a?u=function(f,d){return n.call(this,pt(f),d,e)}:n.length>2&&(u=function(f,d){return n.call(this,f,d,e)}));const c=l.call(i,u,r);return a&&o?o(c):c}function qc(e,t,n,r){const o=Ei(e);let s=n;return o!==e&&(jt(e)?n.length>3&&(s=function(i,a,l){return n.call(this,i,a,l,e)}):s=function(i,a,l){return n.call(this,i,pt(a),l,e)}),o[t](s,...r)}function Qi(e,t,n){const r=Te(e);dt(r,"iterate",Uo);const o=r[t](...n);return(o===-1||o===!1)&&Vl(n[0])?(n[0]=Te(n[0]),r[t](...n)):o}function uo(e,t,n=[]){Jn(),Hl();const r=Te(e)[t].apply(e,n);return Fl(),Zn(),r}const Hm=Ll("__proto__,__v_isRef,__isVue"),yd=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Pn));function Fm(e){Pn(e)||(e=String(e));const t=Te(this);return dt(t,"has",e),t.hasOwnProperty(e)}class bd{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){const o=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!o;if(n==="__v_isReadonly")return o;if(n==="__v_isShallow")return s;if(n==="__v_raw")return r===(o?s?Qm:kd:s?xd:_d).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const i=de(t);if(!o){let l;if(i&&(l=Dm[n]))return l;if(n==="hasOwnProperty")return Fm}const a=Reflect.get(t,n,Ye(t)?t:r);return(Pn(n)?yd.has(n):Hm(n))||(o||dt(t,"get",n),s)?a:Ye(a)?i&&Nl(n)?a:a.value:Ue(a)?o?Ci(a):Bt(a):a}}class wd extends bd{constructor(t=!1){super(!1,t)}set(t,n,r,o){let s=t[n];if(!this._isShallow){const l=Gn(s);if(!jt(r)&&!Gn(r)&&(s=Te(s),r=Te(r)),!de(t)&&Ye(s)&&!Ye(r))return l?!1:(s.value=r,!0)}const i=de(t)&&Nl(n)?Number(n)<t.length:Oe(t,n),a=Reflect.set(t,n,r,Ye(t)?t:o);return t===Te(o)&&(i?Vn(r,s)&&_n(t,"set",n,r):_n(t,"add",n,r)),a}deleteProperty(t,n){const r=Oe(t,n);t[n];const o=Reflect.deleteProperty(t,n);return o&&r&&_n(t,"delete",n,void 0),o}has(t,n){const r=Reflect.has(t,n);return(!Pn(n)||!yd.has(n))&&dt(t,"has",n),r}ownKeys(t){return dt(t,"iterate",de(t)?"length":hr),Reflect.ownKeys(t)}}class Bm extends bd{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Um=new wd,zm=new Bm,Vm=new wd(!0);const Ta=e=>e,ys=e=>Reflect.getPrototypeOf(e);function Wm(e,t,n){return function(...r){const o=this.__v_raw,s=Te(o),i=Nr(s),a=e==="entries"||e===Symbol.iterator&&i,l=e==="keys"&&i,u=o[e](...r),c=n?Ta:t?Aa:pt;return!t&&dt(s,"iterate",l?Pa:hr),{next(){const{value:f,done:d}=u.next();return d?{value:f,done:d}:{value:a?[c(f[0]),c(f[1])]:c(f),done:d}},[Symbol.iterator](){return this}}}}function bs(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function qm(e,t){const n={get(o){const s=this.__v_raw,i=Te(s),a=Te(o);e||(Vn(o,a)&&dt(i,"get",o),dt(i,"get",a));const{has:l}=ys(i),u=t?Ta:e?Aa:pt;if(l.call(i,o))return u(s.get(o));if(l.call(i,a))return u(s.get(a));s!==i&&s.get(o)},get size(){const o=this.__v_raw;return!e&&dt(Te(o),"iterate",hr),Reflect.get(o,"size",o)},has(o){const s=this.__v_raw,i=Te(s),a=Te(o);return e||(Vn(o,a)&&dt(i,"has",o),dt(i,"has",a)),o===a?s.has(o):s.has(o)||s.has(a)},forEach(o,s){const i=this,a=i.__v_raw,l=Te(a),u=t?Ta:e?Aa:pt;return!e&&dt(l,"iterate",hr),a.forEach((c,f)=>o.call(s,u(c),u(f),i))}};return Xe(n,e?{add:bs("add"),set:bs("set"),delete:bs("delete"),clear:bs("clear")}:{add(o){!t&&!jt(o)&&!Gn(o)&&(o=Te(o));const s=Te(this);return ys(s).has.call(s,o)||(s.add(o),_n(s,"add",o,o)),this},set(o,s){!t&&!jt(s)&&!Gn(s)&&(s=Te(s));const i=Te(this),{has:a,get:l}=ys(i);let u=a.call(i,o);u||(o=Te(o),u=a.call(i,o));const c=l.call(i,o);return i.set(o,s),u?Vn(s,c)&&_n(i,"set",o,s):_n(i,"add",o,s),this},delete(o){const s=Te(this),{has:i,get:a}=ys(s);let l=i.call(s,o);l||(o=Te(o),l=i.call(s,o)),a&&a.call(s,o);const u=s.delete(o);return l&&_n(s,"delete",o,void 0),u},clear(){const o=Te(this),s=o.size!==0,i=o.clear();return s&&_n(o,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(o=>{n[o]=Wm(o,e,t)}),n}function Ul(e,t){const n=qm(e,t);return(r,o,s)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?r:Reflect.get(Oe(n,o)&&o in r?n:r,o,s)}const Km={get:Ul(!1,!1)},Gm={get:Ul(!1,!0)},Ym={get:Ul(!0,!1)};const _d=new WeakMap,xd=new WeakMap,kd=new WeakMap,Qm=new WeakMap;function Xm(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Jm(e){return e.__v_skip||!Object.isExtensible(e)?0:Xm(Sm(e))}function Bt(e){return Gn(e)?e:zl(e,!1,Um,Km,_d)}function kn(e){return zl(e,!1,Vm,Gm,xd)}function Ci(e){return zl(e,!0,zm,Ym,kd)}function zl(e,t,n,r,o){if(!Ue(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const s=o.get(e);if(s)return s;const i=Jm(e);if(i===0)return e;const a=new Proxy(e,i===2?r:n);return o.set(e,a),a}function gr(e){return Gn(e)?gr(e.__v_raw):!!(e&&e.__v_isReactive)}function Gn(e){return!!(e&&e.__v_isReadonly)}function jt(e){return!!(e&&e.__v_isShallow)}function Vl(e){return e?!!e.__v_raw:!1}function Te(e){const t=e&&e.__v_raw;return t?Te(t):e}function Zm(e){return!Oe(e,"__v_skip")&&Object.isExtensible(e)&&rd(e,"__v_skip",!0),e}const pt=e=>Ue(e)?Bt(e):e,Aa=e=>Ue(e)?Ci(e):e;function Ye(e){return e?e.__v_isRef===!0:!1}function H(e){return Sd(e,!1)}function Qt(e){return Sd(e,!0)}function Sd(e,t){return Ye(e)?e:new ev(e,t)}class ev{constructor(t,n){this.dep=new Si,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Te(t),this._value=n?t:pt(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,r=this.__v_isShallow||jt(t)||Gn(t);t=r?t:Te(t),Vn(t,n)&&(this._rawValue=t,this._value=r?t:pt(t),this.dep.trigger())}}function WA(e){e.dep&&e.dep.trigger()}function E(e){return Ye(e)?e.value:e}function ln(e){return he(e)?e():E(e)}const tv={get:(e,t,n)=>t==="__v_raw"?e:E(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Ye(o)&&!Ye(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function Ed(e){return gr(e)?e:new Proxy(e,tv)}class nv{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new Si,{get:r,set:o}=t(n.track.bind(n),n.trigger.bind(n));this._get=r,this._set=o}get value(){return this._value=this._get()}set value(t){this._set(t)}}function rv(e){return new nv(e)}function qA(e){const t=de(e)?new Array(e.length):{};for(const n in e)t[n]=Cd(e,n);return t}class ov{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0,this._value=void 0}get value(){const t=this._object[this._key];return this._value=t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return jm(Te(this._object),this._key)}}class sv{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function xe(e,t,n){return Ye(e)?e:he(e)?new sv(e):Ue(e)&&arguments.length>1?Cd(e,t,n):H(e)}function Cd(e,t,n){const r=e[t];return Ye(r)?r:new ov(e,t,n)}class iv{constructor(t,n,r){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Si(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Bo-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=r}notify(){if(this.flags|=16,!(this.flags&8)&&He!==this)return dd(this,!0),!0}get value(){const t=this.dep.track();return gd(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function av(e,t,n=!1){let r,o;return he(e)?r=e:(r=e.get,o=e.set),new iv(r,o,n)}const ws={},Qs=new WeakMap;let ur;function lv(e,t=!1,n=ur){if(n){let r=Qs.get(n);r||Qs.set(n,r=[]),r.push(e)}}function cv(e,t,n=je){const{immediate:r,deep:o,once:s,scheduler:i,augmentJob:a,call:l}=n,u=v=>o?v:jt(v)||o===!1||o===0?xn(v,1):xn(v);let c,f,d,p,m=!1,h=!1;if(Ye(e)?(f=()=>e.value,m=jt(e)):gr(e)?(f=()=>u(e),m=!0):de(e)?(h=!0,m=e.some(v=>gr(v)||jt(v)),f=()=>e.map(v=>{if(Ye(v))return v.value;if(gr(v))return u(v);if(he(v))return l?l(v,2):v()})):he(e)?t?f=l?()=>l(e,2):e:f=()=>{if(d){Jn();try{d()}finally{Zn()}}const v=ur;ur=c;try{return l?l(e,3,[p]):e(p)}finally{ur=v}}:f=cn,t&&o){const v=f,w=o===!0?1/0:o;f=()=>xn(v(),w)}const y=Pr(),x=()=>{c.stop(),y&&jl(y.effects,c)};if(s&&t){const v=t;t=(...w)=>{v(...w),x()}}let b=h?new Array(e.length).fill(ws):ws;const g=v=>{if(!(!(c.flags&1)||!c.dirty&&!v))if(t){const w=c.run();if(o||m||(h?w.some((S,C)=>Vn(S,b[C])):Vn(w,b))){d&&d();const S=ur;ur=c;try{const C=[w,b===ws?void 0:h&&b[0]===ws?[]:b,p];l?l(t,3,C):t(...C),b=w}finally{ur=S}}}else c.run()};return a&&a(g),c=new ud(f),c.scheduler=i?()=>i(g,!1):g,p=v=>lv(v,!1,c),d=c.onStop=()=>{const v=Qs.get(c);if(v){if(l)l(v,4);else for(const w of v)w();Qs.delete(c)}},t?r?g(!0):b=c.run():i?i(g.bind(null,!0),!0):c.run(),x.pause=c.pause.bind(c),x.resume=c.resume.bind(c),x.stop=x,x}function xn(e,t=1/0,n){if(t<=0||!Ue(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,Ye(e))xn(e.value,t,n);else if(de(e))for(let r=0;r<e.length;r++)xn(e[r],t,n);else if(ed(e)||Nr(e))e.forEach(r=>{xn(r,t,n)});else if(nd(e)){for(const r in e)xn(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&xn(e[r],t,n)}return e}/** +* @vue/runtime-core v3.5.12 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function os(e,t,n,r){try{return r?e(...r):e()}catch(o){oo(o,t,n)}}function Xt(e,t,n,r){if(he(e)){const o=os(e,t,n,r);return o&&Dl(o)&&o.catch(s=>{oo(s,t,n)}),o}if(de(e)){const o=[];for(let s=0;s<e.length;s++)o.push(Xt(e[s],t,n,r));return o}}function oo(e,t,n,r=!0){const o=t?t.vnode:null,{errorHandler:s,throwUnhandledErrorInProduction:i}=t&&t.appContext.config||je;if(t){let a=t.parent;const l=t.proxy,u=`https://vuejs.org/error-reference/#runtime-${n}`;for(;a;){const c=a.ec;if(c){for(let f=0;f<c.length;f++)if(c[f](e,l,u)===!1)return}a=a.parent}if(s){Jn(),os(s,null,10,[e,l,u]),Zn();return}}uv(e,n,o,r,i)}function uv(e,t,n,r=!0,o=!1){if(o)throw e;console.error(e)}const bt=[];let sn=-1;const Fr=[];let jn=null,$r=0;const Pd=Promise.resolve();let Xs=null;function er(e){const t=Xs||Pd;return e?t.then(this?e.bind(this):e):t}function fv(e){let t=sn+1,n=bt.length;for(;t<n;){const r=t+n>>>1,o=bt[r],s=zo(o);s<e||s===e&&o.flags&2?t=r+1:n=r}return t}function Wl(e){if(!(e.flags&1)){const t=zo(e),n=bt[bt.length-1];!n||!(e.flags&2)&&t>=zo(n)?bt.push(e):bt.splice(fv(t),0,e),e.flags|=1,Td()}}function Td(){Xs||(Xs=Pd.then(Ad))}function Oa(e){de(e)?Fr.push(...e):jn&&e.id===-1?jn.splice($r+1,0,e):e.flags&1||(Fr.push(e),e.flags|=1),Td()}function Kc(e,t,n=sn+1){for(;n<bt.length;n++){const r=bt[n];if(r&&r.flags&2){if(e&&r.id!==e.uid)continue;bt.splice(n,1),n--,r.flags&4&&(r.flags&=-2),r(),r.flags&4||(r.flags&=-2)}}}function Js(e){if(Fr.length){const t=[...new Set(Fr)].sort((n,r)=>zo(n)-zo(r));if(Fr.length=0,jn){jn.push(...t);return}for(jn=t,$r=0;$r<jn.length;$r++){const n=jn[$r];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}jn=null,$r=0}}const zo=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Ad(e){try{for(sn=0;sn<bt.length;sn++){const t=bt[sn];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),os(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;sn<bt.length;sn++){const t=bt[sn];t&&(t.flags&=-2)}sn=-1,bt.length=0,Js(),Xs=null,(bt.length||Fr.length)&&Ad()}}let rt=null,Od=null;function Zs(e){const t=rt;return rt=e,Od=e&&e.type.__scopeId||null,t}function ie(e,t=rt,n){if(!t||e._n)return e;const r=(...o)=>{r._d&&au(-1);const s=Zs(t);let i;try{i=e(...o)}finally{Zs(s),r._d&&au(1)}return i};return r._n=!0,r._c=!0,r._d=!0,r}function dv(e,t){if(rt===null)return e;const n=Ri(rt),r=e.dirs||(e.dirs=[]);for(let o=0;o<t.length;o++){let[s,i,a,l=je]=t[o];s&&(he(s)&&(s={mounted:s,updated:s}),s.deep&&xn(i),r.push({dir:s,instance:n,value:i,oldValue:void 0,arg:a,modifiers:l}))}return e}function an(e,t,n,r){const o=e.dirs,s=t&&t.dirs;for(let i=0;i<o.length;i++){const a=o[i];s&&(a.oldValue=s[i].value);let l=a.dir[r];l&&(Jn(),Xt(l,n,8,[e.el,a,e,t]),Zn())}}const $d=Symbol("_vte"),Rd=e=>e.__isTeleport,$o=e=>e&&(e.disabled||e.disabled===""),pv=e=>e&&(e.defer||e.defer===""),Gc=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Yc=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,$a=(e,t)=>{const n=e&&e.to;return Ve(n)?t?t(n):null:n},hv={name:"Teleport",__isTeleport:!0,process(e,t,n,r,o,s,i,a,l,u){const{mc:c,pc:f,pbc:d,o:{insert:p,querySelector:m,createText:h,createComment:y}}=u,x=$o(t.props);let{shapeFlag:b,children:g,dynamicChildren:v}=t;if(e==null){const w=t.el=h(""),S=t.anchor=h("");p(w,n,r),p(S,n,r);const C=(A,T)=>{b&16&&(o&&o.isCE&&(o.ce._teleportTarget=A),c(g,A,T,o,s,i,a,l))},R=()=>{const A=t.target=$a(t.props,m),T=Ld(A,t,h,p);A&&(i!=="svg"&&Gc(A)?i="svg":i!=="mathml"&&Yc(A)&&(i="mathml"),x||(C(A,T),Ds(t,!1)))};x&&(C(n,S),Ds(t,!0)),pv(t.props)?at(R,s):R()}else{t.el=e.el,t.targetStart=e.targetStart;const w=t.anchor=e.anchor,S=t.target=e.target,C=t.targetAnchor=e.targetAnchor,R=$o(e.props),A=R?n:S,T=R?w:C;if(i==="svg"||Gc(S)?i="svg":(i==="mathml"||Yc(S))&&(i="mathml"),v?(d(e.dynamicChildren,v,A,o,s,i,a),Ql(e,t,!0)):l||f(e,t,A,T,o,s,i,a,!1),x)R?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):_s(t,n,w,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const U=t.target=$a(t.props,m);U&&_s(t,U,null,u,0)}else R&&_s(t,S,C,u,1);Ds(t,x)}},remove(e,t,n,{um:r,o:{remove:o}},s){const{shapeFlag:i,children:a,anchor:l,targetStart:u,targetAnchor:c,target:f,props:d}=e;if(f&&(o(u),o(c)),s&&o(l),i&16){const p=s||!$o(d);for(let m=0;m<a.length;m++){const h=a[m];r(h,t,n,p,!!h.dynamicChildren)}}},move:_s,hydrate:gv};function _s(e,t,n,{o:{insert:r},m:o},s=2){s===0&&r(e.targetAnchor,t,n);const{el:i,anchor:a,shapeFlag:l,children:u,props:c}=e,f=s===2;if(f&&r(i,t,n),(!f||$o(c))&&l&16)for(let d=0;d<u.length;d++)o(u[d],t,n,2);f&&r(a,t,n)}function gv(e,t,n,r,o,s,{o:{nextSibling:i,parentNode:a,querySelector:l,insert:u,createText:c}},f){const d=t.target=$a(t.props,l);if(d){const p=$o(t.props),m=d._lpa||d.firstChild;if(t.shapeFlag&16)if(p)t.anchor=f(i(e),t,a(e),n,r,o,s),t.targetStart=m,t.targetAnchor=m&&i(m);else{t.anchor=i(e);let h=m;for(;h;){if(h&&h.nodeType===8){if(h.data==="teleport start anchor")t.targetStart=h;else if(h.data==="teleport anchor"){t.targetAnchor=h,d._lpa=t.targetAnchor&&i(t.targetAnchor);break}}h=i(h)}t.targetAnchor||Ld(d,t,c,u),f(m&&i(m),t,d,n,r,o,s)}Ds(t,p)}return t.anchor&&i(t.anchor)}const Id=hv;function Ds(e,t){const n=e.ctx;if(n&&n.ut){let r,o;for(t?(r=e.el,o=e.anchor):(r=e.targetStart,o=e.targetAnchor);r&&r!==o;)r.nodeType===1&&r.setAttribute("data-v-owner",n.uid),r=r.nextSibling;n.ut()}}function Ld(e,t,n,r){const o=t.targetStart=n(""),s=t.targetAnchor=n("");return o[$d]=s,e&&(r(o,e),r(s,e)),s}const Dn=Symbol("_leaveCb"),xs=Symbol("_enterCb");function mv(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Me(()=>{e.isMounted=!0}),is(()=>{e.isUnmounting=!0}),e}const Lt=[Function,Array],Md={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Lt,onEnter:Lt,onAfterEnter:Lt,onEnterCancelled:Lt,onBeforeLeave:Lt,onLeave:Lt,onAfterLeave:Lt,onLeaveCancelled:Lt,onBeforeAppear:Lt,onAppear:Lt,onAfterAppear:Lt,onAppearCancelled:Lt},jd=e=>{const t=e.subTree;return t.component?jd(t.component):t},vv={name:"BaseTransition",props:Md,setup(e,{slots:t}){const n=Ut(),r=mv();return()=>{const o=t.default&&Hd(t.default(),!0);if(!o||!o.length)return;const s=Dd(o),i=Te(e),{mode:a}=i;if(r.isLeaving)return Xi(s);const l=Qc(s);if(!l)return Xi(s);let u=Ra(l,i,r,n,d=>u=d);l.type!==tt&&Vr(l,u);const c=n.subTree,f=c&&Qc(c);if(f&&f.type!==tt&&!Kt(l,f)&&jd(n).type!==tt){const d=Ra(f,i,r,n);if(Vr(f,d),a==="out-in"&&l.type!==tt)return r.isLeaving=!0,d.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete d.afterLeave},Xi(s);a==="in-out"&&l.type!==tt&&(d.delayLeave=(p,m,h)=>{const y=Nd(r,f);y[String(f.key)]=f,p[Dn]=()=>{m(),p[Dn]=void 0,delete u.delayedLeave},u.delayedLeave=h})}return s}}};function Dd(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==tt){t=n;break}}return t}const yv=vv;function Nd(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Ra(e,t,n,r,o){const{appear:s,mode:i,persisted:a=!1,onBeforeEnter:l,onEnter:u,onAfterEnter:c,onEnterCancelled:f,onBeforeLeave:d,onLeave:p,onAfterLeave:m,onLeaveCancelled:h,onBeforeAppear:y,onAppear:x,onAfterAppear:b,onAppearCancelled:g}=t,v=String(e.key),w=Nd(n,e),S=(A,T)=>{A&&Xt(A,r,9,T)},C=(A,T)=>{const U=T[1];S(A,T),de(A)?A.every(O=>O.length<=1)&&U():A.length<=1&&U()},R={mode:i,persisted:a,beforeEnter(A){let T=l;if(!n.isMounted)if(s)T=y||l;else return;A[Dn]&&A[Dn](!0);const U=w[v];U&&Kt(e,U)&&U.el[Dn]&&U.el[Dn](),S(T,[A])},enter(A){let T=u,U=c,O=f;if(!n.isMounted)if(s)T=x||u,U=b||c,O=g||f;else return;let F=!1;const le=A[xs]=pe=>{F||(F=!0,pe?S(O,[A]):S(U,[A]),R.delayedLeave&&R.delayedLeave(),A[xs]=void 0)};T?C(T,[A,le]):le()},leave(A,T){const U=String(e.key);if(A[xs]&&A[xs](!0),n.isUnmounting)return T();S(d,[A]);let O=!1;const F=A[Dn]=le=>{O||(O=!0,T(),le?S(h,[A]):S(m,[A]),A[Dn]=void 0,w[U]===e&&delete w[U])};w[U]=e,p?C(p,[A,F]):F()},clone(A){const T=Ra(A,t,n,r,o);return o&&o(T),T}};return R}function Xi(e){if(ss(e))return e=dn(e),e.children=null,e}function Qc(e){if(!ss(e))return Rd(e.type)&&e.children?Dd(e.children):e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&he(n.default))return n.default()}}function Vr(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Vr(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Hd(e,t=!1,n){let r=[],o=0;for(let s=0;s<e.length;s++){let i=e[s];const a=n==null?i.key:String(n)+String(i.key!=null?i.key:s);i.type===Se?(i.patchFlag&128&&o++,r=r.concat(Hd(i.children,t,a))):(t||i.type!==tt)&&r.push(a!=null?dn(i,{key:a}):i)}if(o>1)for(let s=0;s<r.length;s++)r[s].patchFlag=-2;return r}/*! #__NO_SIDE_EFFECTS__ */function ee(e,t){return he(e)?Xe({name:e.name},t,{setup:e}):e}function Pi(){const e=Ut();return e?(e.appContext.config.idPrefix||"v")+"-"+e.ids[0]+e.ids[1]++:""}function ql(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function ei(e,t,n,r,o=!1){if(de(e)){e.forEach((m,h)=>ei(m,t&&(de(t)?t[h]:t),n,r,o));return}if(Wn(r)&&!o)return;const s=r.shapeFlag&4?Ri(r.component):r.el,i=o?null:s,{i:a,r:l}=e,u=t&&t.r,c=a.refs===je?a.refs={}:a.refs,f=a.setupState,d=Te(f),p=f===je?()=>!1:m=>Oe(d,m);if(u!=null&&u!==l&&(Ve(u)?(c[u]=null,p(u)&&(f[u]=null)):Ye(u)&&(u.value=null)),he(l))os(l,a,12,[i,c]);else{const m=Ve(l),h=Ye(l);if(m||h){const y=()=>{if(e.f){const x=m?p(l)?f[l]:c[l]:l.value;o?de(x)&&jl(x,s):de(x)?x.includes(s)||x.push(s):m?(c[l]=[s],p(l)&&(f[l]=c[l])):(l.value=[s],e.k&&(c[e.k]=l.value))}else m?(c[l]=i,p(l)&&(f[l]=i)):h&&(l.value=i,e.k&&(c[e.k]=i))};i?(y.id=-1,at(y,n)):y()}}}let Xc=!1;const Or=()=>{Xc||(console.error("Hydration completed but contains mismatches."),Xc=!0)},bv=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",wv=e=>e.namespaceURI.includes("MathML"),ks=e=>{if(e.nodeType===1){if(bv(e))return"svg";if(wv(e))return"mathml"}},Ir=e=>e.nodeType===8;function _v(e){const{mt:t,p:n,o:{patchProp:r,createText:o,nextSibling:s,parentNode:i,remove:a,insert:l,createComment:u}}=e,c=(g,v)=>{if(!v.hasChildNodes()){n(null,g,v),Js(),v._vnode=g;return}f(v.firstChild,g,null,null,null),Js(),v._vnode=g},f=(g,v,w,S,C,R=!1)=>{R=R||!!v.dynamicChildren;const A=Ir(g)&&g.data==="[",T=()=>h(g,v,w,S,C,A),{type:U,ref:O,shapeFlag:F,patchFlag:le}=v;let pe=g.nodeType;v.el=g,le===-2&&(R=!1,v.dynamicChildren=null);let B=null;switch(U){case vr:pe!==3?v.children===""?(l(v.el=o(""),i(g),g),B=g):B=T():(g.data!==v.children&&(Or(),g.data=v.children),B=s(g));break;case tt:b(g)?(B=s(g),x(v.el=g.content.firstChild,g,w)):pe!==8||A?B=T():B=s(g);break;case Io:if(A&&(g=s(g),pe=g.nodeType),pe===1||pe===3){B=g;const Z=!v.children.length;for(let X=0;X<v.staticCount;X++)Z&&(v.children+=B.nodeType===1?B.outerHTML:B.data),X===v.staticCount-1&&(v.anchor=B),B=s(B);return A?s(B):B}else T();break;case Se:A?B=m(g,v,w,S,C,R):B=T();break;default:if(F&1)(pe!==1||v.type.toLowerCase()!==g.tagName.toLowerCase())&&!b(g)?B=T():B=d(g,v,w,S,C,R);else if(F&6){v.slotScopeIds=C;const Z=i(g);if(A?B=y(g):Ir(g)&&g.data==="teleport start"?B=y(g,g.data,"teleport end"):B=s(g),t(v,Z,null,w,S,ks(Z),R),Wn(v)){let X;A?(X=Y(Se),X.anchor=B?B.previousSibling:Z.lastChild):X=g.nodeType===3?st(""):Y("div"),X.el=g,v.component.subTree=X}}else F&64?pe!==8?B=T():B=v.type.hydrate(g,v,w,S,C,R,e,p):F&128&&(B=v.type.hydrate(g,v,w,S,ks(i(g)),C,R,e,f))}return O!=null&&ei(O,null,S,v),B},d=(g,v,w,S,C,R)=>{R=R||!!v.dynamicChildren;const{type:A,props:T,patchFlag:U,shapeFlag:O,dirs:F,transition:le}=v,pe=A==="input"||A==="option";if(pe||U!==-1){F&&an(v,null,w,"created");let B=!1;if(b(g)){B=fp(null,le)&&w&&w.vnode.props&&w.vnode.props.appear;const X=g.content.firstChild;B&&le.beforeEnter(X),x(X,g,w),v.el=g=X}if(O&16&&!(T&&(T.innerHTML||T.textContent))){let X=p(g.firstChild,v,g,w,S,C,R);for(;X;){Ss(g,1)||Or();const Ee=X;X=X.nextSibling,a(Ee)}}else if(O&8){let X=v.children;X[0]===` +`&&(g.tagName==="PRE"||g.tagName==="TEXTAREA")&&(X=X.slice(1)),g.textContent!==X&&(Ss(g,0)||Or(),g.textContent=v.children)}if(T){if(pe||!R||U&48){const X=g.tagName.includes("-");for(const Ee in T)(pe&&(Ee.endsWith("value")||Ee==="indeterminate")||ns(Ee)&&!Hr(Ee)||Ee[0]==="."||X)&&r(g,Ee,null,T[Ee],void 0,w)}else if(T.onClick)r(g,"onClick",null,T.onClick,void 0,w);else if(U&4&&gr(T.style))for(const X in T.style)T.style[X]}let Z;(Z=T&&T.onVnodeBeforeMount)&&xt(Z,w,v),F&&an(v,null,w,"beforeMount"),((Z=T&&T.onVnodeMounted)||F||B)&&mp(()=>{Z&&xt(Z,w,v),B&&le.enter(g),F&&an(v,null,w,"mounted")},S)}return g.nextSibling},p=(g,v,w,S,C,R,A)=>{A=A||!!v.dynamicChildren;const T=v.children,U=T.length;for(let O=0;O<U;O++){const F=A?T[O]:T[O]=At(T[O]),le=F.type===vr;g?(le&&!A&&O+1<U&&At(T[O+1]).type===vr&&(l(o(g.data.slice(F.children.length)),w,s(g)),g.data=F.children),g=f(g,F,S,C,R,A)):le&&!F.children?l(F.el=o(""),w):(Ss(w,1)||Or(),n(null,F,w,null,S,C,ks(w),R))}return g},m=(g,v,w,S,C,R)=>{const{slotScopeIds:A}=v;A&&(C=C?C.concat(A):A);const T=i(g),U=p(s(g),v,T,w,S,C,R);return U&&Ir(U)&&U.data==="]"?s(v.anchor=U):(Or(),l(v.anchor=u("]"),T,U),U)},h=(g,v,w,S,C,R)=>{if(Ss(g.parentElement,1)||Or(),v.el=null,R){const U=y(g);for(;;){const O=s(g);if(O&&O!==U)a(O);else break}}const A=s(g),T=i(g);return a(g),n(null,v,T,A,w,S,ks(T),C),A},y=(g,v="[",w="]")=>{let S=0;for(;g;)if(g=s(g),g&&Ir(g)&&(g.data===v&&S++,g.data===w)){if(S===0)return s(g);S--}return g},x=(g,v,w)=>{const S=v.parentNode;S&&S.replaceChild(g,v);let C=w;for(;C;)C.vnode.el===v&&(C.vnode.el=C.subTree.el=g),C=C.parent},b=g=>g.nodeType===1&&g.tagName==="TEMPLATE";return[c,f]}const Jc="data-allow-mismatch",xv={0:"text",1:"children",2:"class",3:"style",4:"attribute"};function Ss(e,t){if(t===0||t===1)for(;e&&!e.hasAttribute(Jc);)e=e.parentElement;const n=e&&e.getAttribute(Jc);if(n==null)return!1;if(n==="")return!0;{const r=n.split(",");return t===0&&r.includes("children")?!0:n.split(",").includes(xv[t])}}ki().requestIdleCallback;ki().cancelIdleCallback;function kv(e,t){if(Ir(e)&&e.data==="["){let n=1,r=e.nextSibling;for(;r;){if(r.nodeType===1){if(t(r)===!1)break}else if(Ir(r))if(r.data==="]"){if(--n===0)break}else r.data==="["&&n++;r=r.nextSibling}}else t(e)}const Wn=e=>!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function ue(e){he(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:r,delay:o=200,hydrate:s,timeout:i,suspensible:a=!0,onError:l}=e;let u=null,c,f=0;const d=()=>(f++,u=null,p()),p=()=>{let m;return u||(m=u=t().catch(h=>{if(h=h instanceof Error?h:new Error(String(h)),l)return new Promise((y,x)=>{l(h,()=>y(d()),()=>x(h),f+1)});throw h}).then(h=>m!==u&&u?u:(h&&(h.__esModule||h[Symbol.toStringTag]==="Module")&&(h=h.default),c=h,h)))};return ee({name:"AsyncComponentWrapper",__asyncLoader:p,__asyncHydrate(m,h,y){const x=s?()=>{const b=s(y,g=>kv(m,g));b&&(h.bum||(h.bum=[])).push(b)}:y;c?x():p().then(()=>!h.isUnmounted&&x())},get __asyncResolved(){return c},setup(){const m=nt;if(ql(m),c)return()=>Ji(c,m);const h=g=>{u=null,oo(g,m,13,!r)};if(a&&m.suspense||Kr)return p().then(g=>()=>Ji(g,m)).catch(g=>(h(g),()=>r?Y(r,{error:g}):null));const y=H(!1),x=H(),b=H(!!o);return o&&setTimeout(()=>{b.value=!1},o),i!=null&&setTimeout(()=>{if(!y.value&&!x.value){const g=new Error(`Async component timed out after ${i}ms.`);h(g),x.value=g}},i),p().then(()=>{y.value=!0,m.parent&&ss(m.parent.vnode)&&m.parent.update()}).catch(g=>{h(g),x.value=g}),()=>{if(y.value&&c)return Ji(c,m);if(x.value&&r)return Y(r,{error:x.value});if(n&&!b.value)return Y(n)}}})}function Ji(e,t){const{ref:n,props:r,children:o,ce:s}=t.vnode,i=Y(e,r,o);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const ss=e=>e.type.__isKeepAlive,Sv={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Ut(),r=n.ctx;if(!r.renderer)return()=>{const b=t.default&&t.default();return b&&b.length===1?b[0]:b};const o=new Map,s=new Set;let i=null;const a=n.suspense,{renderer:{p:l,m:u,um:c,o:{createElement:f}}}=r,d=f("div");r.activate=(b,g,v,w,S)=>{const C=b.component;u(b,g,v,0,a),l(C.vnode,b,g,v,C,a,w,b.slotScopeIds,S),at(()=>{C.isDeactivated=!1,C.a&&To(C.a);const R=b.props&&b.props.onVnodeMounted;R&&xt(R,C.parent,b)},a)},r.deactivate=b=>{const g=b.component;ni(g.m),ni(g.a),u(b,d,null,1,a),at(()=>{g.da&&To(g.da);const v=b.props&&b.props.onVnodeUnmounted;v&&xt(v,g.parent,b),g.isDeactivated=!0},a)};function p(b){Zi(b),c(b,n,a,!0)}function m(b){o.forEach((g,v)=>{const w=Ba(g.type);w&&!b(w)&&h(v)})}function h(b){const g=o.get(b);g&&(!i||!Kt(g,i))?p(g):i&&Zi(i),o.delete(b),s.delete(b)}$e(()=>[e.include,e.exclude],([b,g])=>{b&&m(v=>Eo(b,v)),g&&m(v=>!Eo(g,v))},{flush:"post",deep:!0});let y=null;const x=()=>{y!=null&&(ri(n.subTree.type)?at(()=>{o.set(y,Es(n.subTree))},n.subTree.suspense):o.set(y,Es(n.subTree)))};return Me(x),zd(x),is(()=>{o.forEach(b=>{const{subTree:g,suspense:v}=n,w=Es(g);if(b.type===w.type&&b.key===w.key){Zi(w);const S=w.component.da;S&&at(S,v);return}p(b)})}),()=>{if(y=null,!t.default)return i=null;const b=t.default(),g=b[0];if(b.length>1)return i=null,b;if(!xr(g)||!(g.shapeFlag&4)&&!(g.shapeFlag&128))return i=null,g;let v=Es(g);if(v.type===tt)return i=null,v;const w=v.type,S=Ba(Wn(v)?v.type.__asyncResolved||{}:w),{include:C,exclude:R,max:A}=e;if(C&&(!S||!Eo(C,S))||R&&S&&Eo(R,S))return v.shapeFlag&=-257,i=v,g;const T=v.key==null?w:v.key,U=o.get(T);return v.el&&(v=dn(v),g.shapeFlag&128&&(g.ssContent=v)),y=T,U?(v.el=U.el,v.component=U.component,v.transition&&Vr(v,v.transition),v.shapeFlag|=512,s.delete(T),s.add(T)):(s.add(T),A&&s.size>parseInt(A,10)&&h(s.values().next().value)),v.shapeFlag|=256,i=v,ri(g.type)?g:v}}},Ev=Sv;function Eo(e,t){return de(e)?e.some(n=>Eo(n,t)):Ve(e)?e.split(",").includes(t):km(e)?(e.lastIndex=0,e.test(t)):!1}function Fd(e,t){Ud(e,"a",t)}function Bd(e,t){Ud(e,"da",t)}function Ud(e,t,n=nt){const r=e.__wdc||(e.__wdc=()=>{let o=n;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(Ti(t,r,n),n){let o=n.parent;for(;o&&o.parent;)ss(o.parent.vnode)&&Cv(r,t,n,o),o=o.parent}}function Cv(e,t,n,r){const o=Ti(t,e,r,!0);ot(()=>{jl(r[t],o)},n)}function Zi(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function Es(e){return e.shapeFlag&128?e.ssContent:e}function Ti(e,t,n=nt,r=!1){if(n){const o=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{Jn();const a=kr(n),l=Xt(t,n,e,i);return a(),Zn(),l});return r?o.unshift(s):o.push(s),s}}const Tn=e=>(t,n=nt)=>{(!Kr||e==="sp")&&Ti(e,(...r)=>t(...r),n)},Kl=Tn("bm"),Me=Tn("m"),Pv=Tn("bu"),zd=Tn("u"),is=Tn("bum"),ot=Tn("um"),Tv=Tn("sp"),Av=Tn("rtg"),Ov=Tn("rtc");function Vd(e,t=nt){Ti("ec",e,t)}const Wd="components";function qn(e,t){return Kd(Wd,e,!0,t)||e}const qd=Symbol.for("v-ndc");function Wr(e){return Ve(e)?Kd(Wd,e,!1)||e:e||qd}function Kd(e,t,n=!0,r=!1){const o=rt||nt;if(o){const s=o.type;{const a=Ba(s,!1);if(a&&(a===t||a===Nt(t)||a===xi(Nt(t))))return s}const i=Zc(o[e]||s[e],t)||Zc(o.appContext[e],t);return!i&&r?s:i}}function Zc(e,t){return e&&(e[t]||e[Nt(t)]||e[xi(Nt(t))])}function Et(e,t,n,r){let o;const s=n,i=de(e);if(i||Ve(e)){const a=i&&gr(e);let l=!1;a&&(l=!jt(e),e=Ei(e)),o=new Array(e.length);for(let u=0,c=e.length;u<c;u++)o[u]=t(l?pt(e[u]):e[u],u,void 0,s)}else if(typeof e=="number"){o=new Array(e);for(let a=0;a<e;a++)o[a]=t(a+1,a,void 0,s)}else if(Ue(e))if(e[Symbol.iterator])o=Array.from(e,(a,l)=>t(a,l,void 0,s));else{const a=Object.keys(e);o=new Array(a.length);for(let l=0,u=a.length;l<u;l++){const c=a[l];o[l]=t(e[c],c,l,s)}}else o=[];return o}function Ai(e,t){for(let n=0;n<t.length;n++){const r=t[n];if(de(r))for(let o=0;o<r.length;o++)e[r[o].name]=r[o].fn;else r&&(e[r.name]=r.key?(...o)=>{const s=r.fn(...o);return s&&(s.key=r.key),s}:r.fn)}return e}function be(e,t,n={},r,o){if(rt.ce||rt.parent&&Wn(rt.parent)&&rt.parent.ce)return t!=="default"&&(n.name=t),M(),re(Se,null,[Y("slot",n,r&&r())],64);let s=e[t];s&&s._c&&(s._d=!1),M();const i=s&&Gd(s(n)),a=n.key||i&&i.key,l=re(Se,{key:(a&&!Pn(a)?a:`_${t}`)+(!i&&r?"_fb":"")},i||(r?r():[]),i&&e._===1?64:-2);return!o&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),s&&s._c&&(s._d=!0),l}function Gd(e){return e.some(t=>xr(t)?!(t.type===tt||t.type===Se&&!Gd(t.children)):!0)?e:null}const Ia=e=>e?wp(e)?Ri(e):Ia(e.parent):null,Ro=Xe(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Ia(e.parent),$root:e=>Ia(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Gl(e),$forceUpdate:e=>e.f||(e.f=()=>{Wl(e.update)}),$nextTick:e=>e.n||(e.n=er.bind(e.proxy)),$watch:e=>Jv.bind(e)}),ea=(e,t)=>e!==je&&!e.__isScriptSetup&&Oe(e,t),$v={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:r,data:o,props:s,accessCache:i,type:a,appContext:l}=e;let u;if(t[0]!=="$"){const p=i[t];if(p!==void 0)switch(p){case 1:return r[t];case 2:return o[t];case 4:return n[t];case 3:return s[t]}else{if(ea(r,t))return i[t]=1,r[t];if(o!==je&&Oe(o,t))return i[t]=2,o[t];if((u=e.propsOptions[0])&&Oe(u,t))return i[t]=3,s[t];if(n!==je&&Oe(n,t))return i[t]=4,n[t];La&&(i[t]=0)}}const c=Ro[t];let f,d;if(c)return t==="$attrs"&&dt(e.attrs,"get",""),c(e);if((f=a.__cssModules)&&(f=f[t]))return f;if(n!==je&&Oe(n,t))return i[t]=4,n[t];if(d=l.config.globalProperties,Oe(d,t))return d[t]},set({_:e},t,n){const{data:r,setupState:o,ctx:s}=e;return ea(o,t)?(o[t]=n,!0):r!==je&&Oe(r,t)?(r[t]=n,!0):Oe(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:o,propsOptions:s}},i){let a;return!!n[i]||e!==je&&Oe(e,i)||ea(t,i)||(a=s[0])&&Oe(a,i)||Oe(r,i)||Oe(Ro,i)||Oe(o.config.globalProperties,i)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Oe(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Yd(){return Qd().slots}function Rv(){return Qd().attrs}function Qd(){const e=Ut();return e.setupContext||(e.setupContext=xp(e))}function eu(e){return de(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function Xd(e){const t=Ut();let n=e();return Ha(),Dl(n)&&(n=n.catch(r=>{throw kr(t),r})),[n,()=>kr(t)]}let La=!0;function Iv(e){const t=Gl(e),n=e.proxy,r=e.ctx;La=!1,t.beforeCreate&&tu(t.beforeCreate,e,"bc");const{data:o,computed:s,methods:i,watch:a,provide:l,inject:u,created:c,beforeMount:f,mounted:d,beforeUpdate:p,updated:m,activated:h,deactivated:y,beforeDestroy:x,beforeUnmount:b,destroyed:g,unmounted:v,render:w,renderTracked:S,renderTriggered:C,errorCaptured:R,serverPrefetch:A,expose:T,inheritAttrs:U,components:O,directives:F,filters:le}=t;if(u&&Lv(u,r,null),i)for(const Z in i){const X=i[Z];he(X)&&(r[Z]=X.bind(n))}if(o){const Z=o.call(n,n);Ue(Z)&&(e.data=Bt(Z))}if(La=!0,s)for(const Z in s){const X=s[Z],Ee=he(X)?X.bind(n,n):he(X.get)?X.get.bind(n,n):cn,et=!he(X)&&he(X.set)?X.set.bind(n):cn,fe=$({get:Ee,set:et});Object.defineProperty(r,Z,{enumerable:!0,configurable:!0,get:()=>fe.value,set:ye=>fe.value=ye})}if(a)for(const Z in a)Jd(a[Z],r,n,Z);if(l){const Z=he(l)?l.call(n):l;Reflect.ownKeys(Z).forEach(X=>{Be(X,Z[X])})}c&&tu(c,e,"c");function B(Z,X){de(X)?X.forEach(Ee=>Z(Ee.bind(n))):X&&Z(X.bind(n))}if(B(Kl,f),B(Me,d),B(Pv,p),B(zd,m),B(Fd,h),B(Bd,y),B(Vd,R),B(Ov,S),B(Av,C),B(is,b),B(ot,v),B(Tv,A),de(T))if(T.length){const Z=e.exposed||(e.exposed={});T.forEach(X=>{Object.defineProperty(Z,X,{get:()=>n[X],set:Ee=>n[X]=Ee})})}else e.exposed||(e.exposed={});w&&e.render===cn&&(e.render=w),U!=null&&(e.inheritAttrs=U),O&&(e.components=O),F&&(e.directives=F),A&&ql(e)}function Lv(e,t,n=cn){de(e)&&(e=Ma(e));for(const r in e){const o=e[r];let s;Ue(o)?"default"in o?s=Ce(o.from||r,o.default,!0):s=Ce(o.from||r):s=Ce(o),Ye(s)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[r]=s}}function tu(e,t,n){Xt(de(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Jd(e,t,n,r){let o=r.includes(".")?pp(n,r):()=>n[r];if(Ve(e)){const s=t[e];he(s)&&$e(o,s)}else if(he(e))$e(o,e.bind(n));else if(Ue(e))if(de(e))e.forEach(s=>Jd(s,t,n,r));else{const s=he(e.handler)?e.handler.bind(n):t[e.handler];he(s)&&$e(o,s,e)}}function Gl(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,a=s.get(t);let l;return a?l=a:!o.length&&!n&&!r?l=t:(l={},o.length&&o.forEach(u=>ti(l,u,i,!0)),ti(l,t,i)),Ue(t)&&s.set(t,l),l}function ti(e,t,n,r=!1){const{mixins:o,extends:s}=t;s&&ti(e,s,n,!0),o&&o.forEach(i=>ti(e,i,n,!0));for(const i in t)if(!(r&&i==="expose")){const a=Mv[i]||n&&n[i];e[i]=a?a(e[i],t[i]):t[i]}return e}const Mv={data:nu,props:ru,emits:ru,methods:Co,computed:Co,beforeCreate:vt,created:vt,beforeMount:vt,mounted:vt,beforeUpdate:vt,updated:vt,beforeDestroy:vt,beforeUnmount:vt,destroyed:vt,unmounted:vt,activated:vt,deactivated:vt,errorCaptured:vt,serverPrefetch:vt,components:Co,directives:Co,watch:Dv,provide:nu,inject:jv};function nu(e,t){return t?e?function(){return Xe(he(e)?e.call(this,this):e,he(t)?t.call(this,this):t)}:t:e}function jv(e,t){return Co(Ma(e),Ma(t))}function Ma(e){if(de(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function vt(e,t){return e?[...new Set([].concat(e,t))]:t}function Co(e,t){return e?Xe(Object.create(null),e,t):t}function ru(e,t){return e?de(e)&&de(t)?[...new Set([...e,...t])]:Xe(Object.create(null),eu(e),eu(t??{})):t}function Dv(e,t){if(!e)return t;if(!t)return e;const n=Xe(Object.create(null),e);for(const r in t)n[r]=vt(e[r],t[r]);return n}function Zd(){return{app:null,config:{isNativeTag:_m,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Nv=0;function Hv(e,t){return function(r,o=null){he(r)||(r=Xe({},r)),o!=null&&!Ue(o)&&(o=null);const s=Zd(),i=new WeakSet,a=[];let l=!1;const u=s.app={_uid:Nv++,_component:r,_props:o,_container:null,_context:s,_instance:null,version:kp,get config(){return s.config},set config(c){},use(c,...f){return i.has(c)||(c&&he(c.install)?(i.add(c),c.install(u,...f)):he(c)&&(i.add(c),c(u,...f))),u},mixin(c){return s.mixins.includes(c)||s.mixins.push(c),u},component(c,f){return f?(s.components[c]=f,u):s.components[c]},directive(c,f){return f?(s.directives[c]=f,u):s.directives[c]},mount(c,f,d){if(!l){const p=u._ceVNode||Y(r,o);return p.appContext=s,d===!0?d="svg":d===!1&&(d=void 0),f&&t?t(p,c):e(p,c,d),l=!0,u._container=c,c.__vue_app__=u,Ri(p.component)}},onUnmount(c){a.push(c)},unmount(){l&&(Xt(a,u._instance,16),e(null,u._container),delete u._container.__vue_app__)},provide(c,f){return s.provides[c]=f,u},runWithContext(c){const f=mr;mr=u;try{return c()}finally{mr=f}}};return u}}let mr=null;function Be(e,t){if(nt){let n=nt.provides;const r=nt.parent&&nt.parent.provides;r===n&&(n=nt.provides=Object.create(r)),n[e]=t}}function Ce(e,t,n=!1){const r=nt||rt;if(r||mr){const o=mr?mr._context.provides:r?r.parent==null?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides:void 0;if(o&&e in o)return o[e];if(arguments.length>1)return n&&he(t)?t.call(r&&r.proxy):t}}function ep(){return!!(nt||rt||mr)}const tp={},np=()=>Object.create(tp),rp=e=>Object.getPrototypeOf(e)===tp;function Fv(e,t,n,r=!1){const o={},s=np();e.propsDefaults=Object.create(null),op(e,t,o,s);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);n?e.props=r?o:kn(o):e.type.props?e.props=o:e.props=s,e.attrs=s}function Bv(e,t,n,r){const{props:o,attrs:s,vnode:{patchFlag:i}}=e,a=Te(o),[l]=e.propsOptions;let u=!1;if((r||i>0)&&!(i&16)){if(i&8){const c=e.vnode.dynamicProps;for(let f=0;f<c.length;f++){let d=c[f];if($i(e.emitsOptions,d))continue;const p=t[d];if(l)if(Oe(s,d))p!==s[d]&&(s[d]=p,u=!0);else{const m=Nt(d);o[m]=ja(l,a,m,p,e,!1)}else p!==s[d]&&(s[d]=p,u=!0)}}}else{op(e,t,o,s)&&(u=!0);let c;for(const f in a)(!t||!Oe(t,f)&&((c=Xn(f))===f||!Oe(t,c)))&&(l?n&&(n[f]!==void 0||n[c]!==void 0)&&(o[f]=ja(l,a,f,void 0,e,!0)):delete o[f]);if(s!==a)for(const f in s)(!t||!Oe(t,f))&&(delete s[f],u=!0)}u&&_n(e.attrs,"set","")}function op(e,t,n,r){const[o,s]=e.propsOptions;let i=!1,a;if(t)for(let l in t){if(Hr(l))continue;const u=t[l];let c;o&&Oe(o,c=Nt(l))?!s||!s.includes(c)?n[c]=u:(a||(a={}))[c]=u:$i(e.emitsOptions,l)||(!(l in r)||u!==r[l])&&(r[l]=u,i=!0)}if(s){const l=Te(n),u=a||je;for(let c=0;c<s.length;c++){const f=s[c];n[f]=ja(o,l,f,u[f],e,!Oe(u,f))}}return i}function ja(e,t,n,r,o,s){const i=e[n];if(i!=null){const a=Oe(i,"default");if(a&&r===void 0){const l=i.default;if(i.type!==Function&&!i.skipFactory&&he(l)){const{propsDefaults:u}=o;if(n in u)r=u[n];else{const c=kr(o);r=u[n]=l.call(null,t),c()}}else r=l;o.ce&&o.ce._setProp(n,r)}i[0]&&(s&&!a?r=!1:i[1]&&(r===""||r===Xn(n))&&(r=!0))}return r}const Uv=new WeakMap;function sp(e,t,n=!1){const r=n?Uv:t.propsCache,o=r.get(e);if(o)return o;const s=e.props,i={},a=[];let l=!1;if(!he(e)){const c=f=>{l=!0;const[d,p]=sp(f,t,!0);Xe(i,d),p&&a.push(...p)};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!s&&!l)return Ue(e)&&r.set(e,Dr),Dr;if(de(s))for(let c=0;c<s.length;c++){const f=Nt(s[c]);ou(f)&&(i[f]=je)}else if(s)for(const c in s){const f=Nt(c);if(ou(f)){const d=s[c],p=i[f]=de(d)||he(d)?{type:d}:Xe({},d),m=p.type;let h=!1,y=!0;if(de(m))for(let x=0;x<m.length;++x){const b=m[x],g=he(b)&&b.name;if(g==="Boolean"){h=!0;break}else g==="String"&&(y=!1)}else h=he(m)&&m.name==="Boolean";p[0]=h,p[1]=y,(h||Oe(p,"default"))&&a.push(f)}}const u=[i,a];return Ue(e)&&r.set(e,u),u}function ou(e){return e[0]!=="$"&&!Hr(e)}const ip=e=>e[0]==="_"||e==="$stable",Yl=e=>de(e)?e.map(At):[At(e)],zv=(e,t,n)=>{if(t._n)return t;const r=ie((...o)=>Yl(t(...o)),n);return r._c=!1,r},ap=(e,t,n)=>{const r=e._ctx;for(const o in e){if(ip(o))continue;const s=e[o];if(he(s))t[o]=zv(o,s,r);else if(s!=null){const i=Yl(s);t[o]=()=>i}}},lp=(e,t)=>{const n=Yl(t);e.slots.default=()=>n},cp=(e,t,n)=>{for(const r in t)(n||r!=="_")&&(e[r]=t[r])},Vv=(e,t,n)=>{const r=e.slots=np();if(e.vnode.shapeFlag&32){const o=t._;o?(cp(r,t,n),n&&rd(r,"_",o,!0)):ap(t,r)}else t&&lp(e,t)},Wv=(e,t,n)=>{const{vnode:r,slots:o}=e;let s=!0,i=je;if(r.shapeFlag&32){const a=t._;a?n&&a===1?s=!1:cp(o,t,n):(s=!t.$stable,ap(t,o)),i=t}else t&&(lp(e,t),i={default:1});if(s)for(const a in o)!ip(a)&&i[a]==null&&delete o[a]},at=mp;function qv(e){return up(e)}function Kv(e){return up(e,_v)}function up(e,t){const n=ki();n.__VUE__=!0;const{insert:r,remove:o,patchProp:s,createElement:i,createText:a,createComment:l,setText:u,setElementText:c,parentNode:f,nextSibling:d,setScopeId:p=cn,insertStaticContent:m}=e,h=(_,k,P,j=null,I=null,D=null,K=void 0,z=null,V=!!k.dynamicChildren)=>{if(_===k)return;_&&!Kt(_,k)&&(j=L(_),ye(_,I,D,!0),_=null),k.patchFlag===-2&&(V=!1,k.dynamicChildren=null);const{type:N,ref:ce,shapeFlag:Q}=k;switch(N){case vr:y(_,k,P,j);break;case tt:x(_,k,P,j);break;case Io:_==null&&b(k,P,j,K);break;case Se:O(_,k,P,j,I,D,K,z,V);break;default:Q&1?w(_,k,P,j,I,D,K,z,V):Q&6?F(_,k,P,j,I,D,K,z,V):(Q&64||Q&128)&&N.process(_,k,P,j,I,D,K,z,V,te)}ce!=null&&I&&ei(ce,_&&_.ref,D,k||_,!k)},y=(_,k,P,j)=>{if(_==null)r(k.el=a(k.children),P,j);else{const I=k.el=_.el;k.children!==_.children&&u(I,k.children)}},x=(_,k,P,j)=>{_==null?r(k.el=l(k.children||""),P,j):k.el=_.el},b=(_,k,P,j)=>{[_.el,_.anchor]=m(_.children,k,P,j,_.el,_.anchor)},g=({el:_,anchor:k},P,j)=>{let I;for(;_&&_!==k;)I=d(_),r(_,P,j),_=I;r(k,P,j)},v=({el:_,anchor:k})=>{let P;for(;_&&_!==k;)P=d(_),o(_),_=P;o(k)},w=(_,k,P,j,I,D,K,z,V)=>{k.type==="svg"?K="svg":k.type==="math"&&(K="mathml"),_==null?S(k,P,j,I,D,K,z,V):A(_,k,I,D,K,z,V)},S=(_,k,P,j,I,D,K,z)=>{let V,N;const{props:ce,shapeFlag:Q,transition:ne,dirs:ge}=_;if(V=_.el=i(_.type,D,ce&&ce.is,ce),Q&8?c(V,_.children):Q&16&&R(_.children,V,null,j,I,ta(_,D),K,z),ge&&an(_,null,j,"created"),C(V,_,_.scopeId,K,j),ce){for(const Re in ce)Re!=="value"&&!Hr(Re)&&s(V,Re,null,ce[Re],D,j);"value"in ce&&s(V,"value",null,ce.value,D),(N=ce.onVnodeBeforeMount)&&xt(N,j,_)}ge&&an(_,null,j,"beforeMount");const ke=fp(I,ne);ke&&ne.beforeEnter(V),r(V,k,P),((N=ce&&ce.onVnodeMounted)||ke||ge)&&at(()=>{N&&xt(N,j,_),ke&&ne.enter(V),ge&&an(_,null,j,"mounted")},I)},C=(_,k,P,j,I)=>{if(P&&p(_,P),j)for(let D=0;D<j.length;D++)p(_,j[D]);if(I){let D=I.subTree;if(k===D||ri(D.type)&&(D.ssContent===k||D.ssFallback===k)){const K=I.vnode;C(_,K,K.scopeId,K.slotScopeIds,I.parent)}}},R=(_,k,P,j,I,D,K,z,V=0)=>{for(let N=V;N<_.length;N++){const ce=_[N]=z?Nn(_[N]):At(_[N]);h(null,ce,k,P,j,I,D,K,z)}},A=(_,k,P,j,I,D,K)=>{const z=k.el=_.el;let{patchFlag:V,dynamicChildren:N,dirs:ce}=k;V|=_.patchFlag&16;const Q=_.props||je,ne=k.props||je;let ge;if(P&&rr(P,!1),(ge=ne.onVnodeBeforeUpdate)&&xt(ge,P,k,_),ce&&an(k,_,P,"beforeUpdate"),P&&rr(P,!0),(Q.innerHTML&&ne.innerHTML==null||Q.textContent&&ne.textContent==null)&&c(z,""),N?T(_.dynamicChildren,N,z,P,j,ta(k,I),D):K||X(_,k,z,null,P,j,ta(k,I),D,!1),V>0){if(V&16)U(z,Q,ne,P,I);else if(V&2&&Q.class!==ne.class&&s(z,"class",null,ne.class,I),V&4&&s(z,"style",Q.style,ne.style,I),V&8){const ke=k.dynamicProps;for(let Re=0;Re<ke.length;Re++){const Ie=ke[Re],Ct=Q[Ie],ft=ne[Ie];(ft!==Ct||Ie==="value")&&s(z,Ie,Ct,ft,I,P)}}V&1&&_.children!==k.children&&c(z,k.children)}else!K&&N==null&&U(z,Q,ne,P,I);((ge=ne.onVnodeUpdated)||ce)&&at(()=>{ge&&xt(ge,P,k,_),ce&&an(k,_,P,"updated")},j)},T=(_,k,P,j,I,D,K)=>{for(let z=0;z<k.length;z++){const V=_[z],N=k[z],ce=V.el&&(V.type===Se||!Kt(V,N)||V.shapeFlag&70)?f(V.el):P;h(V,N,ce,null,j,I,D,K,!0)}},U=(_,k,P,j,I)=>{if(k!==P){if(k!==je)for(const D in k)!Hr(D)&&!(D in P)&&s(_,D,k[D],null,I,j);for(const D in P){if(Hr(D))continue;const K=P[D],z=k[D];K!==z&&D!=="value"&&s(_,D,z,K,I,j)}"value"in P&&s(_,"value",k.value,P.value,I)}},O=(_,k,P,j,I,D,K,z,V)=>{const N=k.el=_?_.el:a(""),ce=k.anchor=_?_.anchor:a("");let{patchFlag:Q,dynamicChildren:ne,slotScopeIds:ge}=k;ge&&(z=z?z.concat(ge):ge),_==null?(r(N,P,j),r(ce,P,j),R(k.children||[],P,ce,I,D,K,z,V)):Q>0&&Q&64&&ne&&_.dynamicChildren?(T(_.dynamicChildren,ne,P,I,D,K,z),(k.key!=null||I&&k===I.subTree)&&Ql(_,k,!0)):X(_,k,P,ce,I,D,K,z,V)},F=(_,k,P,j,I,D,K,z,V)=>{k.slotScopeIds=z,_==null?k.shapeFlag&512?I.ctx.activate(k,P,j,K,V):le(k,P,j,I,D,K,V):pe(_,k,V)},le=(_,k,P,j,I,D,K)=>{const z=_.component=hy(_,j,I);if(ss(_)&&(z.ctx.renderer=te),gy(z,!1,K),z.asyncDep){if(I&&I.registerDep(z,B,K),!_.el){const V=z.subTree=Y(tt);x(null,V,k,P)}}else B(z,_,k,P,I,D,K)},pe=(_,k,P)=>{const j=k.component=_.component;if(oy(_,k,P))if(j.asyncDep&&!j.asyncResolved){Z(j,k,P);return}else j.next=k,j.update();else k.el=_.el,j.vnode=k},B=(_,k,P,j,I,D,K)=>{const z=()=>{if(_.isMounted){let{next:Q,bu:ne,u:ge,parent:ke,vnode:Re}=_;{const Pt=dp(_);if(Pt){Q&&(Q.el=Re.el,Z(_,Q,K)),Pt.asyncDep.then(()=>{_.isUnmounted||z()});return}}let Ie=Q,Ct;rr(_,!1),Q?(Q.el=Re.el,Z(_,Q,K)):Q=Re,ne&&To(ne),(Ct=Q.props&&Q.props.onVnodeBeforeUpdate)&&xt(Ct,ke,Q,Re),rr(_,!0);const ft=na(_),Vt=_.subTree;_.subTree=ft,h(Vt,ft,f(Vt.el),L(Vt),_,I,D),Q.el=ft.el,Ie===null&&Xl(_,ft.el),ge&&at(ge,I),(Ct=Q.props&&Q.props.onVnodeUpdated)&&at(()=>xt(Ct,ke,Q,Re),I)}else{let Q;const{el:ne,props:ge}=k,{bm:ke,m:Re,parent:Ie,root:Ct,type:ft}=_,Vt=Wn(k);if(rr(_,!1),ke&&To(ke),!Vt&&(Q=ge&&ge.onVnodeBeforeMount)&&xt(Q,Ie,k),rr(_,!0),ne&&Ne){const Pt=()=>{_.subTree=na(_),Ne(ne,_.subTree,_,I,null)};Vt&&ft.__asyncHydrate?ft.__asyncHydrate(ne,_,Pt):Pt()}else{Ct.ce&&Ct.ce._injectChildStyle(ft);const Pt=_.subTree=na(_);h(null,Pt,P,j,_,I,D),k.el=Pt.el}if(Re&&at(Re,I),!Vt&&(Q=ge&&ge.onVnodeMounted)){const Pt=k;at(()=>xt(Q,Ie,Pt),I)}(k.shapeFlag&256||Ie&&Wn(Ie.vnode)&&Ie.vnode.shapeFlag&256)&&_.a&&at(_.a,I),_.isMounted=!0,k=P=j=null}};_.scope.on();const V=_.effect=new ud(z);_.scope.off();const N=_.update=V.run.bind(V),ce=_.job=V.runIfDirty.bind(V);ce.i=_,ce.id=_.uid,V.scheduler=()=>Wl(ce),rr(_,!0),N()},Z=(_,k,P)=>{k.component=_;const j=_.vnode.props;_.vnode=k,_.next=null,Bv(_,k.props,j,P),Wv(_,k.children,P),Jn(),Kc(_),Zn()},X=(_,k,P,j,I,D,K,z,V=!1)=>{const N=_&&_.children,ce=_?_.shapeFlag:0,Q=k.children,{patchFlag:ne,shapeFlag:ge}=k;if(ne>0){if(ne&128){et(N,Q,P,j,I,D,K,z,V);return}else if(ne&256){Ee(N,Q,P,j,I,D,K,z,V);return}}ge&8?(ce&16&&Ke(N,I,D),Q!==N&&c(P,Q)):ce&16?ge&16?et(N,Q,P,j,I,D,K,z,V):Ke(N,I,D,!0):(ce&8&&c(P,""),ge&16&&R(Q,P,j,I,D,K,z,V))},Ee=(_,k,P,j,I,D,K,z,V)=>{_=_||Dr,k=k||Dr;const N=_.length,ce=k.length,Q=Math.min(N,ce);let ne;for(ne=0;ne<Q;ne++){const ge=k[ne]=V?Nn(k[ne]):At(k[ne]);h(_[ne],ge,P,null,I,D,K,z,V)}N>ce?Ke(_,I,D,!0,!1,Q):R(k,P,j,I,D,K,z,V,Q)},et=(_,k,P,j,I,D,K,z,V)=>{let N=0;const ce=k.length;let Q=_.length-1,ne=ce-1;for(;N<=Q&&N<=ne;){const ge=_[N],ke=k[N]=V?Nn(k[N]):At(k[N]);if(Kt(ge,ke))h(ge,ke,P,null,I,D,K,z,V);else break;N++}for(;N<=Q&&N<=ne;){const ge=_[Q],ke=k[ne]=V?Nn(k[ne]):At(k[ne]);if(Kt(ge,ke))h(ge,ke,P,null,I,D,K,z,V);else break;Q--,ne--}if(N>Q){if(N<=ne){const ge=ne+1,ke=ge<ce?k[ge].el:j;for(;N<=ne;)h(null,k[N]=V?Nn(k[N]):At(k[N]),P,ke,I,D,K,z,V),N++}}else if(N>ne)for(;N<=Q;)ye(_[N],I,D,!0),N++;else{const ge=N,ke=N,Re=new Map;for(N=ke;N<=ne;N++){const Tt=k[N]=V?Nn(k[N]):At(k[N]);Tt.key!=null&&Re.set(Tt.key,N)}let Ie,Ct=0;const ft=ne-ke+1;let Vt=!1,Pt=0;const co=new Array(ft);for(N=0;N<ft;N++)co[N]=0;for(N=ge;N<=Q;N++){const Tt=_[N];if(Ct>=ft){ye(Tt,I,D,!0);continue}let on;if(Tt.key!=null)on=Re.get(Tt.key);else for(Ie=ke;Ie<=ne;Ie++)if(co[Ie-ke]===0&&Kt(Tt,k[Ie])){on=Ie;break}on===void 0?ye(Tt,I,D,!0):(co[on-ke]=N+1,on>=Pt?Pt=on:Vt=!0,h(Tt,k[on],P,null,I,D,K,z,V),Ct++)}const Uc=Vt?Gv(co):Dr;for(Ie=Uc.length-1,N=ft-1;N>=0;N--){const Tt=ke+N,on=k[Tt],zc=Tt+1<ce?k[Tt+1].el:j;co[N]===0?h(null,on,P,zc,I,D,K,z,V):Vt&&(Ie<0||N!==Uc[Ie]?fe(on,P,zc,2):Ie--)}}},fe=(_,k,P,j,I=null)=>{const{el:D,type:K,transition:z,children:V,shapeFlag:N}=_;if(N&6){fe(_.component.subTree,k,P,j);return}if(N&128){_.suspense.move(k,P,j);return}if(N&64){K.move(_,k,P,te);return}if(K===Se){r(D,k,P);for(let Q=0;Q<V.length;Q++)fe(V[Q],k,P,j);r(_.anchor,k,P);return}if(K===Io){g(_,k,P);return}if(j!==2&&N&1&&z)if(j===0)z.beforeEnter(D),r(D,k,P),at(()=>z.enter(D),I);else{const{leave:Q,delayLeave:ne,afterLeave:ge}=z,ke=()=>r(D,k,P),Re=()=>{Q(D,()=>{ke(),ge&&ge()})};ne?ne(D,ke,Re):Re()}else r(D,k,P)},ye=(_,k,P,j=!1,I=!1)=>{const{type:D,props:K,ref:z,children:V,dynamicChildren:N,shapeFlag:ce,patchFlag:Q,dirs:ne,cacheIndex:ge}=_;if(Q===-2&&(I=!1),z!=null&&ei(z,null,P,_,!0),ge!=null&&(k.renderCache[ge]=void 0),ce&256){k.ctx.deactivate(_);return}const ke=ce&1&&ne,Re=!Wn(_);let Ie;if(Re&&(Ie=K&&K.onVnodeBeforeUnmount)&&xt(Ie,k,_),ce&6)ct(_.component,P,j);else{if(ce&128){_.suspense.unmount(P,j);return}ke&&an(_,null,k,"beforeUnmount"),ce&64?_.type.remove(_,k,P,te,j):N&&!N.hasOnce&&(D!==Se||Q>0&&Q&64)?Ke(N,k,P,!1,!0):(D===Se&&Q&384||!I&&ce&16)&&Ke(V,k,P),j&&qe(_)}(Re&&(Ie=K&&K.onVnodeUnmounted)||ke)&&at(()=>{Ie&&xt(Ie,k,_),ke&&an(_,null,k,"unmounted")},P)},qe=_=>{const{type:k,el:P,anchor:j,transition:I}=_;if(k===Se){De(P,j);return}if(k===Io){v(_);return}const D=()=>{o(P),I&&!I.persisted&&I.afterLeave&&I.afterLeave()};if(_.shapeFlag&1&&I&&!I.persisted){const{leave:K,delayLeave:z}=I,V=()=>K(P,D);z?z(_.el,D,V):V()}else D()},De=(_,k)=>{let P;for(;_!==k;)P=d(_),o(_),_=P;o(k)},ct=(_,k,P)=>{const{bum:j,scope:I,job:D,subTree:K,um:z,m:V,a:N}=_;ni(V),ni(N),j&&To(j),I.stop(),D&&(D.flags|=8,ye(K,_,k,P)),z&&at(z,k),at(()=>{_.isUnmounted=!0},k),k&&k.pendingBranch&&!k.isUnmounted&&_.asyncDep&&!_.asyncResolved&&_.suspenseId===k.pendingId&&(k.deps--,k.deps===0&&k.resolve())},Ke=(_,k,P,j=!1,I=!1,D=0)=>{for(let K=D;K<_.length;K++)ye(_[K],k,P,j,I)},L=_=>{if(_.shapeFlag&6)return L(_.component.subTree);if(_.shapeFlag&128)return _.suspense.next();const k=d(_.anchor||_.el),P=k&&k[$d];return P?d(P):k};let G=!1;const q=(_,k,P)=>{_==null?k._vnode&&ye(k._vnode,null,null,!0):h(k._vnode||null,_,k,null,null,null,P),k._vnode=_,G||(G=!0,Kc(),Js(),G=!1)},te={p:h,um:ye,m:fe,r:qe,mt:le,mc:R,pc:X,pbc:T,n:L,o:e};let Pe,Ne;return t&&([Pe,Ne]=t(te)),{render:q,hydrate:Pe,createApp:Hv(q,Pe)}}function ta({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function rr({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function fp(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Ql(e,t,n=!1){const r=e.children,o=t.children;if(de(r)&&de(o))for(let s=0;s<r.length;s++){const i=r[s];let a=o[s];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=o[s]=Nn(o[s]),a.el=i.el),!n&&a.patchFlag!==-2&&Ql(i,a)),a.type===vr&&(a.el=i.el)}}function Gv(e){const t=e.slice(),n=[0];let r,o,s,i,a;const l=e.length;for(r=0;r<l;r++){const u=e[r];if(u!==0){if(o=n[n.length-1],e[o]<u){t[r]=o,n.push(r);continue}for(s=0,i=n.length-1;s<i;)a=s+i>>1,e[n[a]]<u?s=a+1:i=a;u<e[n[s]]&&(s>0&&(t[r]=n[s-1]),n[s]=r)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function dp(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:dp(t)}function ni(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}const Yv=Symbol.for("v-scx"),Qv=()=>Ce(Yv);function Je(e,t){return Oi(e,null,t)}function Xv(e,t){return Oi(e,null,{flush:"post"})}function $e(e,t,n){return Oi(e,t,n)}function Oi(e,t,n=je){const{immediate:r,deep:o,flush:s,once:i}=n,a=Xe({},n),l=t&&r||!t&&s!=="post";let u;if(Kr){if(s==="sync"){const p=Qv();u=p.__watcherHandles||(p.__watcherHandles=[])}else if(!l){const p=()=>{};return p.stop=cn,p.resume=cn,p.pause=cn,p}}const c=nt;a.call=(p,m,h)=>Xt(p,c,m,h);let f=!1;s==="post"?a.scheduler=p=>{at(p,c&&c.suspense)}:s!=="sync"&&(f=!0,a.scheduler=(p,m)=>{m?p():Wl(p)}),a.augmentJob=p=>{t&&(p.flags|=4),f&&(p.flags|=2,c&&(p.id=c.uid,p.i=c))};const d=cv(e,t,a);return Kr&&(u?u.push(d):l&&d()),d}function Jv(e,t,n){const r=this.proxy,o=Ve(e)?e.includes(".")?pp(r,e):()=>r[e]:e.bind(r,r);let s;he(t)?s=t:(s=t.handler,n=t);const i=kr(this),a=Oi(o,s.bind(r),n);return i(),a}function pp(e,t){const n=t.split(".");return()=>{let r=e;for(let o=0;o<n.length&&r;o++)r=r[n[o]];return r}}const Zv=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Nt(t)}Modifiers`]||e[`${Xn(t)}Modifiers`];function ey(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||je;let o=n;const s=t.startsWith("update:"),i=s&&Zv(r,t.slice(7));i&&(i.trim&&(o=n.map(c=>Ve(c)?c.trim():c)),i.number&&(o=n.map(Pm)));let a,l=r[a=qi(t)]||r[a=qi(Nt(t))];!l&&s&&(l=r[a=qi(Xn(t))]),l&&Xt(l,e,6,o);const u=r[a+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,Xt(u,e,6,o)}}function hp(e,t,n=!1){const r=t.emitsCache,o=r.get(e);if(o!==void 0)return o;const s=e.emits;let i={},a=!1;if(!he(e)){const l=u=>{const c=hp(u,t,!0);c&&(a=!0,Xe(i,c))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!a?(Ue(e)&&r.set(e,null),null):(de(s)?s.forEach(l=>i[l]=null):Xe(i,s),Ue(e)&&r.set(e,i),i)}function $i(e,t){return!e||!ns(t)?!1:(t=t.slice(2).replace(/Once$/,""),Oe(e,t[0].toLowerCase()+t.slice(1))||Oe(e,Xn(t))||Oe(e,t))}function na(e){const{type:t,vnode:n,proxy:r,withProxy:o,propsOptions:[s],slots:i,attrs:a,emit:l,render:u,renderCache:c,props:f,data:d,setupState:p,ctx:m,inheritAttrs:h}=e,y=Zs(e);let x,b;try{if(n.shapeFlag&4){const v=o||r,w=v;x=At(u.call(w,v,c,f,p,d,m)),b=a}else{const v=t;x=At(v.length>1?v(f,{attrs:a,slots:i,emit:l}):v(f,null)),b=t.props?a:ny(a)}}catch(v){Lo.length=0,oo(v,e,1),x=Y(tt)}let g=x;if(b&&h!==!1){const v=Object.keys(b),{shapeFlag:w}=g;v.length&&w&7&&(s&&v.some(Ml)&&(b=ry(b,s)),g=dn(g,b,!1,!0))}return n.dirs&&(g=dn(g,null,!1,!0),g.dirs=g.dirs?g.dirs.concat(n.dirs):n.dirs),n.transition&&Vr(g,n.transition),x=g,Zs(y),x}function ty(e,t=!0){let n;for(let r=0;r<e.length;r++){const o=e[r];if(xr(o)){if(o.type!==tt||o.children==="v-if"){if(n)return;n=o}}else return}return n}const ny=e=>{let t;for(const n in e)(n==="class"||n==="style"||ns(n))&&((t||(t={}))[n]=e[n]);return t},ry=(e,t)=>{const n={};for(const r in e)(!Ml(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function oy(e,t,n){const{props:r,children:o,component:s}=e,{props:i,children:a,patchFlag:l}=t,u=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return r?su(r,i,u):!!i;if(l&8){const c=t.dynamicProps;for(let f=0;f<c.length;f++){const d=c[f];if(i[d]!==r[d]&&!$i(u,d))return!0}}}else return(o||a)&&(!a||!a.$stable)?!0:r===i?!1:r?i?su(r,i,u):!0:!!i;return!1}function su(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let o=0;o<r.length;o++){const s=r[o];if(t[s]!==e[s]&&!$i(n,s))return!0}return!1}function Xl({vnode:e,parent:t},n){for(;t;){const r=t.subTree;if(r.suspense&&r.suspense.activeBranch===e&&(r.el=e.el),r===e)(e=t.vnode).el=n,t=t.parent;else break}}const ri=e=>e.__isSuspense;let Da=0;const sy={name:"Suspense",__isSuspense:!0,process(e,t,n,r,o,s,i,a,l,u){if(e==null)iy(t,n,r,o,s,i,a,l,u);else{if(s&&s.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}ay(e,t,n,r,o,i,a,l,u)}},hydrate:ly,normalize:cy},Jl=sy;function Vo(e,t){const n=e.props&&e.props[t];he(n)&&n()}function iy(e,t,n,r,o,s,i,a,l){const{p:u,o:{createElement:c}}=l,f=c("div"),d=e.suspense=gp(e,o,r,t,f,n,s,i,a,l);u(null,d.pendingBranch=e.ssContent,f,null,r,d,s,i),d.deps>0?(Vo(e,"onPending"),Vo(e,"onFallback"),u(null,e.ssFallback,t,n,r,null,s,i),Br(d,e.ssFallback)):d.resolve(!1,!0)}function ay(e,t,n,r,o,s,i,a,{p:l,um:u,o:{createElement:c}}){const f=t.suspense=e.suspense;f.vnode=t,t.el=e.el;const d=t.ssContent,p=t.ssFallback,{activeBranch:m,pendingBranch:h,isInFallback:y,isHydrating:x}=f;if(h)f.pendingBranch=d,Kt(d,h)?(l(h,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0?f.resolve():y&&(x||(l(m,p,n,r,o,null,s,i,a),Br(f,p)))):(f.pendingId=Da++,x?(f.isHydrating=!1,f.activeBranch=h):u(h,o,f),f.deps=0,f.effects.length=0,f.hiddenContainer=c("div"),y?(l(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0?f.resolve():(l(m,p,n,r,o,null,s,i,a),Br(f,p))):m&&Kt(d,m)?(l(m,d,n,r,o,f,s,i,a),f.resolve(!0)):(l(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0&&f.resolve()));else if(m&&Kt(d,m))l(m,d,n,r,o,f,s,i,a),Br(f,d);else if(Vo(t,"onPending"),f.pendingBranch=d,d.shapeFlag&512?f.pendingId=d.component.suspenseId:f.pendingId=Da++,l(null,d,f.hiddenContainer,null,o,f,s,i,a),f.deps<=0)f.resolve();else{const{timeout:b,pendingId:g}=f;b>0?setTimeout(()=>{f.pendingId===g&&f.fallback(p)},b):b===0&&f.fallback(p)}}function gp(e,t,n,r,o,s,i,a,l,u,c=!1){const{p:f,m:d,um:p,n:m,o:{parentNode:h,remove:y}}=u;let x;const b=uy(e);b&&t&&t.pendingBranch&&(x=t.pendingId,t.deps++);const g=e.props?od(e.props.timeout):void 0,v=s,w={vnode:e,parent:t,parentComponent:n,namespace:i,container:r,hiddenContainer:o,deps:0,pendingId:Da++,timeout:typeof g=="number"?g:-1,activeBranch:null,pendingBranch:null,isInFallback:!c,isHydrating:c,isUnmounted:!1,effects:[],resolve(S=!1,C=!1){const{vnode:R,activeBranch:A,pendingBranch:T,pendingId:U,effects:O,parentComponent:F,container:le}=w;let pe=!1;w.isHydrating?w.isHydrating=!1:S||(pe=A&&T.transition&&T.transition.mode==="out-in",pe&&(A.transition.afterLeave=()=>{U===w.pendingId&&(d(T,le,s===v?m(A):s,0),Oa(O))}),A&&(h(A.el)===le&&(s=m(A)),p(A,F,w,!0)),pe||d(T,le,s,0)),Br(w,T),w.pendingBranch=null,w.isInFallback=!1;let B=w.parent,Z=!1;for(;B;){if(B.pendingBranch){B.effects.push(...O),Z=!0;break}B=B.parent}!Z&&!pe&&Oa(O),w.effects=[],b&&t&&t.pendingBranch&&x===t.pendingId&&(t.deps--,t.deps===0&&!C&&t.resolve()),Vo(R,"onResolve")},fallback(S){if(!w.pendingBranch)return;const{vnode:C,activeBranch:R,parentComponent:A,container:T,namespace:U}=w;Vo(C,"onFallback");const O=m(R),F=()=>{w.isInFallback&&(f(null,S,T,O,A,null,U,a,l),Br(w,S))},le=S.transition&&S.transition.mode==="out-in";le&&(R.transition.afterLeave=F),w.isInFallback=!0,p(R,A,null,!0),le||F()},move(S,C,R){w.activeBranch&&d(w.activeBranch,S,C,R),w.container=S},next(){return w.activeBranch&&m(w.activeBranch)},registerDep(S,C,R){const A=!!w.pendingBranch;A&&w.deps++;const T=S.vnode.el;S.asyncDep.catch(U=>{oo(U,S,0)}).then(U=>{if(S.isUnmounted||w.isUnmounted||w.pendingId!==S.suspenseId)return;S.asyncResolved=!0;const{vnode:O}=S;Fa(S,U,!1),T&&(O.el=T);const F=!T&&S.subTree.el;C(S,O,h(T||S.subTree.el),T?null:m(S.subTree),w,i,R),F&&y(F),Xl(S,O.el),A&&--w.deps===0&&w.resolve()})},unmount(S,C){w.isUnmounted=!0,w.activeBranch&&p(w.activeBranch,n,S,C),w.pendingBranch&&p(w.pendingBranch,n,S,C)}};return w}function ly(e,t,n,r,o,s,i,a,l){const u=t.suspense=gp(t,r,n,e.parentNode,document.createElement("div"),null,o,s,i,a,!0),c=l(e,u.pendingBranch=t.ssContent,n,u,s,i);return u.deps===0&&u.resolve(!1,!0),c}function cy(e){const{shapeFlag:t,children:n}=e,r=t&32;e.ssContent=iu(r?n.default:n),e.ssFallback=r?iu(n.fallback):Y(tt)}function iu(e){let t;if(he(e)){const n=qr&&e._c;n&&(e._d=!1,M()),e=e(),n&&(e._d=!0,t=St,vp())}return de(e)&&(e=ty(e)),e=At(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function mp(e,t){t&&t.pendingBranch?de(e)?t.effects.push(...e):t.effects.push(e):Oa(e)}function Br(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e;let o=t.el;for(;!o&&t.component;)t=t.component.subTree,o=t.el;n.el=o,r&&r.subTree===n&&(r.vnode.el=o,Xl(r,o))}function uy(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==!1}const Se=Symbol.for("v-fgt"),vr=Symbol.for("v-txt"),tt=Symbol.for("v-cmt"),Io=Symbol.for("v-stc"),Lo=[];let St=null;function M(e=!1){Lo.push(St=e?null:[])}function vp(){Lo.pop(),St=Lo[Lo.length-1]||null}let qr=1;function au(e){qr+=e,e<0&&St&&(St.hasOnce=!0)}function yp(e){return e.dynamicChildren=qr>0?St||Dr:null,vp(),qr>0&&St&&St.push(e),e}function se(e,t,n,r,o,s){return yp(Ae(e,t,n,r,o,s,!0))}function re(e,t,n,r,o){return yp(Y(e,t,n,r,o,!0))}function xr(e){return e?e.__v_isVNode===!0:!1}function Kt(e,t){return e.type===t.type&&e.key===t.key}const bp=({key:e})=>e??null,Ns=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Ve(e)||Ye(e)||he(e)?{i:rt,r:e,k:t,f:!!n}:e:null);function Ae(e,t=null,n=null,r=0,o=null,s=e===Se?0:1,i=!1,a=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&bp(t),ref:t&&Ns(t),scopeId:Od,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:r,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:rt};return a?(Zl(l,n),s&128&&e.normalize(l)):n&&(l.shapeFlag|=Ve(n)?8:16),qr>0&&!i&&St&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&St.push(l),l}const Y=fy;function fy(e,t=null,n=null,r=0,o=null,s=!1){if((!e||e===qd)&&(e=tt),xr(e)){const a=dn(e,t,!0);return n&&Zl(a,n),qr>0&&!s&&St&&(a.shapeFlag&6?St[St.indexOf(e)]=a:St.push(a)),a.patchFlag=-2,a}if(yy(e)&&(e=e.__vccOpts),t){t=oi(t);let{class:a,style:l}=t;a&&!Ve(a)&&(t.class=W(a)),Ue(l)&&(Vl(l)&&!de(l)&&(l=Xe({},l)),t.style=ro(l))}const i=Ve(e)?1:ri(e)?128:Rd(e)?64:Ue(e)?4:he(e)?2:0;return Ae(e,t,n,r,o,i,s,!0)}function oi(e){return e?Vl(e)||rp(e)?Xe({},e):e:null}function dn(e,t,n=!1,r=!1){const{props:o,ref:s,patchFlag:i,children:a,transition:l}=e,u=t?ae(o||{},t):o,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&bp(u),ref:t&&t.ref?n&&s?de(s)?s.concat(Ns(t)):[s,Ns(t)]:Ns(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Se?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&dn(e.ssContent),ssFallback:e.ssFallback&&dn(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&r&&Vr(c,l.clone(c)),c}function st(e=" ",t=0){return Y(vr,null,e,t)}function me(e="",t=!1){return t?(M(),re(tt,null,e)):Y(tt,null,e)}function At(e){return e==null||typeof e=="boolean"?Y(tt):de(e)?Y(Se,null,e.slice()):xr(e)?Nn(e):Y(vr,null,String(e))}function Nn(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:dn(e)}function Zl(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(de(t))n=16;else if(typeof t=="object")if(r&65){const o=t.default;o&&(o._c&&(o._d=!1),Zl(e,o()),o._c&&(o._d=!0));return}else{n=32;const o=t._;!o&&!rp(t)?t._ctx=rt:o===3&&rt&&(rt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else he(t)?(t={default:t,_ctx:rt},n=32):(t=String(t),r&64?(n=16,t=[st(t)]):n=8);e.children=t,e.shapeFlag|=n}function ae(...e){const t={};for(let n=0;n<e.length;n++){const r=e[n];for(const o in r)if(o==="class")t.class!==r.class&&(t.class=W([t.class,r.class]));else if(o==="style")t.style=ro([t.style,r.style]);else if(ns(o)){const s=t[o],i=r[o];i&&s!==i&&!(de(s)&&s.includes(i))&&(t[o]=s?[].concat(s,i):i)}else o!==""&&(t[o]=r[o])}return t}function xt(e,t,n,r=null){Xt(e,t,7,[n,r])}const dy=Zd();let py=0;function hy(e,t,n){const r=e.type,o=(t?t.appContext:e.appContext)||dy,s={uid:py++,vnode:e,type:r,parent:t,appContext:o,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new ld(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(o.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:sp(r,o),emitsOptions:hp(r,o),emit:null,emitted:null,propsDefaults:je,inheritAttrs:r.inheritAttrs,ctx:je,data:je,props:je,attrs:je,slots:je,refs:je,setupState:je,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return s.ctx={_:s},s.root=t?t.root:s,s.emit=ey.bind(null,s),e.ce&&e.ce(s),s}let nt=null;const Ut=()=>nt||rt;let si,Na;{const e=ki(),t=(n,r)=>{let o;return(o=e[n])||(o=e[n]=[]),o.push(r),s=>{o.length>1?o.forEach(i=>i(s)):o[0](s)}};si=t("__VUE_INSTANCE_SETTERS__",n=>nt=n),Na=t("__VUE_SSR_SETTERS__",n=>Kr=n)}const kr=e=>{const t=nt;return si(e),e.scope.on(),()=>{e.scope.off(),si(t)}},Ha=()=>{nt&&nt.scope.off(),si(null)};function wp(e){return e.vnode.shapeFlag&4}let Kr=!1;function gy(e,t=!1,n=!1){t&&Na(t);const{props:r,children:o}=e.vnode,s=wp(e);Fv(e,r,s,t),Vv(e,o,n);const i=s?my(e,t):void 0;return t&&Na(!1),i}function my(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,$v);const{setup:r}=n;if(r){Jn();const o=e.setupContext=r.length>1?xp(e):null,s=kr(e),i=os(r,e,0,[e.props,o]),a=Dl(i);if(Zn(),s(),(a||e.sp)&&!Wn(e)&&ql(e),a){if(i.then(Ha,Ha),t)return i.then(l=>{Fa(e,l,t)}).catch(l=>{oo(l,e,0)});e.asyncDep=i}else Fa(e,i,t)}else _p(e,t)}function Fa(e,t,n){he(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ue(t)&&(e.setupState=Ed(t)),_p(e,n)}let lu;function _p(e,t,n){const r=e.type;if(!e.render){if(!t&&lu&&!r.render){const o=r.template||Gl(e).template;if(o){const{isCustomElement:s,compilerOptions:i}=e.appContext.config,{delimiters:a,compilerOptions:l}=r,u=Xe(Xe({isCustomElement:s,delimiters:a},i),l);r.render=lu(o,u)}}e.render=r.render||cn}{const o=kr(e);Jn();try{Iv(e)}finally{Zn(),o()}}}const vy={get(e,t){return dt(e,"get",""),e[t]}};function xp(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,vy),slots:e.slots,emit:e.emit,expose:t}}function Ri(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Ed(Zm(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Ro)return Ro[n](e)},has(t,n){return n in t||n in Ro}})):e.proxy}function Ba(e,t=!0){return he(e)?e.displayName||e.name:e.name||t&&e.__name}function yy(e){return he(e)&&"__vccOpts"in e}const $=(e,t)=>av(e,t,Kr);function ve(e,t,n){const r=arguments.length;return r===2?Ue(t)&&!de(t)?xr(t)?Y(e,null,[t]):Y(e,t):Y(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&xr(n)&&(n=[n]),Y(e,t,n))}const kp="3.5.12";/** +* @vue/runtime-dom v3.5.12 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let Ua;const cu=typeof window<"u"&&window.trustedTypes;if(cu)try{Ua=cu.createPolicy("vue",{createHTML:e=>e})}catch{}const Sp=Ua?e=>Ua.createHTML(e):e=>e,by="http://www.w3.org/2000/svg",wy="http://www.w3.org/1998/Math/MathML",wn=typeof document<"u"?document:null,uu=wn&&wn.createElement("template"),_y={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t==="svg"?wn.createElementNS(by,e):t==="mathml"?wn.createElementNS(wy,e):n?wn.createElement(e,{is:n}):wn.createElement(e);return e==="select"&&r&&r.multiple!=null&&o.setAttribute("multiple",r.multiple),o},createText:e=>wn.createTextNode(e),createComment:e=>wn.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>wn.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,o,s){const i=n?n.previousSibling:t.lastChild;if(o&&(o===s||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),!(o===s||!(o=o.nextSibling)););else{uu.innerHTML=Sp(r==="svg"?`<svg>${e}</svg>`:r==="mathml"?`<math>${e}</math>`:e);const a=uu.content;if(r==="svg"||r==="mathml"){const l=a.firstChild;for(;l.firstChild;)a.appendChild(l.firstChild);a.removeChild(l)}t.insertBefore(a,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},$n="transition",fo="animation",Wo=Symbol("_vtc"),Ep={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},xy=Xe({},Md,Ep),ky=e=>(e.displayName="Transition",e.props=xy,e),Gr=ky((e,{slots:t})=>ve(yv,Sy(e),t)),or=(e,t=[])=>{de(e)?e.forEach(n=>n(...t)):e&&e(...t)},fu=e=>e?de(e)?e.some(t=>t.length>1):e.length>1:!1;function Sy(e){const t={};for(const O in e)O in Ep||(t[O]=e[O]);if(e.css===!1)return t;const{name:n="v",type:r,duration:o,enterFromClass:s=`${n}-enter-from`,enterActiveClass:i=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:l=s,appearActiveClass:u=i,appearToClass:c=a,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:d=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,m=Ey(o),h=m&&m[0],y=m&&m[1],{onBeforeEnter:x,onEnter:b,onEnterCancelled:g,onLeave:v,onLeaveCancelled:w,onBeforeAppear:S=x,onAppear:C=b,onAppearCancelled:R=g}=t,A=(O,F,le)=>{sr(O,F?c:a),sr(O,F?u:i),le&&le()},T=(O,F)=>{O._isLeaving=!1,sr(O,f),sr(O,p),sr(O,d),F&&F()},U=O=>(F,le)=>{const pe=O?C:b,B=()=>A(F,O,le);or(pe,[F,B]),du(()=>{sr(F,O?l:s),Rn(F,O?c:a),fu(pe)||pu(F,r,h,B)})};return Xe(t,{onBeforeEnter(O){or(x,[O]),Rn(O,s),Rn(O,i)},onBeforeAppear(O){or(S,[O]),Rn(O,l),Rn(O,u)},onEnter:U(!1),onAppear:U(!0),onLeave(O,F){O._isLeaving=!0;const le=()=>T(O,F);Rn(O,f),Rn(O,d),Ty(),du(()=>{O._isLeaving&&(sr(O,f),Rn(O,p),fu(v)||pu(O,r,y,le))}),or(v,[O,le])},onEnterCancelled(O){A(O,!1),or(g,[O])},onAppearCancelled(O){A(O,!0),or(R,[O])},onLeaveCancelled(O){T(O),or(w,[O])}})}function Ey(e){if(e==null)return null;if(Ue(e))return[ra(e.enter),ra(e.leave)];{const t=ra(e);return[t,t]}}function ra(e){return od(e)}function Rn(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Wo]||(e[Wo]=new Set)).add(t)}function sr(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[Wo];n&&(n.delete(t),n.size||(e[Wo]=void 0))}function du(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Cy=0;function pu(e,t,n,r){const o=e._endId=++Cy,s=()=>{o===e._endId&&r()};if(n!=null)return setTimeout(s,n);const{type:i,timeout:a,propCount:l}=Py(e,t);if(!i)return r();const u=i+"end";let c=0;const f=()=>{e.removeEventListener(u,d),s()},d=p=>{p.target===e&&++c>=l&&f()};setTimeout(()=>{c<l&&f()},a+1),e.addEventListener(u,d)}function Py(e,t){const n=window.getComputedStyle(e),r=m=>(n[m]||"").split(", "),o=r(`${$n}Delay`),s=r(`${$n}Duration`),i=hu(o,s),a=r(`${fo}Delay`),l=r(`${fo}Duration`),u=hu(a,l);let c=null,f=0,d=0;t===$n?i>0&&(c=$n,f=i,d=s.length):t===fo?u>0&&(c=fo,f=u,d=l.length):(f=Math.max(i,u),c=f>0?i>u?$n:fo:null,d=c?c===$n?s.length:l.length:0);const p=c===$n&&/\b(transform|all)(,|$)/.test(r(`${$n}Property`).toString());return{type:c,timeout:f,propCount:d,hasTransform:p}}function hu(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,r)=>gu(n)+gu(e[r])))}function gu(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Ty(){return document.body.offsetHeight}function Ay(e,t,n){const r=e[Wo];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const ii=Symbol("_vod"),Cp=Symbol("_vsh"),Oy={beforeMount(e,{value:t},{transition:n}){e[ii]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):po(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),po(e,!0),r.enter(e)):r.leave(e,()=>{po(e,!1)}):po(e,t))},beforeUnmount(e,{value:t}){po(e,t)}};function po(e,t){e.style.display=t?e[ii]:"none",e[Cp]=!t}const Pp=Symbol("");function KA(e){const t=Ut();if(!t)return;const n=t.ut=(o=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(s=>ai(s,o))},r=()=>{const o=e(t.proxy);t.ce?ai(t.ce,o):za(t.subTree,o),n(o)};Kl(()=>{Xv(r)}),Me(()=>{const o=new MutationObserver(r);o.observe(t.subTree.el.parentNode,{childList:!0}),ot(()=>o.disconnect())})}function za(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{za(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)ai(e.el,t);else if(e.type===Se)e.children.forEach(n=>za(n,t));else if(e.type===Io){let{el:n,anchor:r}=e;for(;n&&(ai(n,t),n!==r);)n=n.nextSibling}}function ai(e,t){if(e.nodeType===1){const n=e.style;let r="";for(const o in t)n.setProperty(`--${o}`,t[o]),r+=`--${o}: ${t[o]};`;n[Pp]=r}}const $y=/(^|;)\s*display\s*:/;function Ry(e,t,n){const r=e.style,o=Ve(n);let s=!1;if(n&&!o){if(t)if(Ve(t))for(const i of t.split(";")){const a=i.slice(0,i.indexOf(":")).trim();n[a]==null&&Hs(r,a,"")}else for(const i in t)n[i]==null&&Hs(r,i,"");for(const i in n)i==="display"&&(s=!0),Hs(r,i,n[i])}else if(o){if(t!==n){const i=r[Pp];i&&(n+=";"+i),r.cssText=n,s=$y.test(n)}}else t&&e.removeAttribute("style");ii in e&&(e[ii]=s?r.display:"",e[Cp]&&(r.display="none"))}const mu=/\s*!important$/;function Hs(e,t,n){if(de(n))n.forEach(r=>Hs(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=Iy(e,t);mu.test(n)?e.setProperty(Xn(r),n.replace(mu,""),"important"):e[r]=n}}const vu=["Webkit","Moz","ms"],oa={};function Iy(e,t){const n=oa[t];if(n)return n;let r=Nt(t);if(r!=="filter"&&r in e)return oa[t]=r;r=xi(r);for(let o=0;o<vu.length;o++){const s=vu[o]+r;if(s in e)return oa[t]=s}return t}const yu="http://www.w3.org/1999/xlink";function bu(e,t,n,r,o,s=Im(t)){r&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(yu,t.slice(6,t.length)):e.setAttributeNS(yu,t,n):n==null||s&&!sd(n)?e.removeAttribute(t):e.setAttribute(t,s?"":Pn(n)?String(n):n)}function wu(e,t,n,r,o){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?Sp(n):n);return}const s=e.tagName;if(t==="value"&&s!=="PROGRESS"&&!s.includes("-")){const a=s==="OPTION"?e.getAttribute("value")||"":e.value,l=n==null?e.type==="checkbox"?"on":"":String(n);(a!==l||!("_value"in e))&&(e.value=l),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const a=typeof e[t];a==="boolean"?n=sd(n):n==null&&a==="string"?(n="",i=!0):a==="number"&&(n=0,i=!0)}try{e[t]=n}catch{}i&&e.removeAttribute(o||t)}function Ly(e,t,n,r){e.addEventListener(t,n,r)}function My(e,t,n,r){e.removeEventListener(t,n,r)}const _u=Symbol("_vei");function jy(e,t,n,r,o=null){const s=e[_u]||(e[_u]={}),i=s[t];if(r&&i)i.value=r;else{const[a,l]=Dy(t);if(r){const u=s[t]=Fy(r,o);Ly(e,a,u,l)}else i&&(My(e,a,i,l),s[t]=void 0)}}const xu=/(?:Once|Passive|Capture)$/;function Dy(e){let t;if(xu.test(e)){t={};let r;for(;r=e.match(xu);)e=e.slice(0,e.length-r[0].length),t[r[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):Xn(e.slice(2)),t]}let sa=0;const Ny=Promise.resolve(),Hy=()=>sa||(Ny.then(()=>sa=0),sa=Date.now());function Fy(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;Xt(By(r,n.value),t,5,[r])};return n.value=e,n.attached=Hy(),n}function By(e,t){if(de(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>o=>!o._stopped&&r&&r(o))}else return t}const ku=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Uy=(e,t,n,r,o,s)=>{const i=o==="svg";t==="class"?Ay(e,r,i):t==="style"?Ry(e,n,r):ns(t)?Ml(t)||jy(e,t,n,r,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):zy(e,t,r,i))?(wu(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&bu(e,t,r,i,s,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!Ve(r))?wu(e,Nt(t),r,s,t):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),bu(e,t,r,i))};function zy(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&ku(t)&&he(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return ku(t)&&Ve(n)?!1:t in e}const Vy=["ctrl","shift","alt","meta"],Wy={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Vy.some(n=>e[`${n}Key`]&&!t.includes(n))},ia=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(o,...s)=>{for(let i=0;i<t.length;i++){const a=Wy[t[i]];if(a&&a(o,t))return}return e(o,...s)})},qy={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Su=(e,t)=>{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=o=>{if(!("key"in o))return;const s=Xn(o.key);if(t.some(i=>i===s||qy[i]===s))return e(o)})},Tp=Xe({patchProp:Uy},_y);let Mo,Eu=!1;function Ky(){return Mo||(Mo=qv(Tp))}function Gy(){return Mo=Eu?Mo:Kv(Tp),Eu=!0,Mo}const Yy=(...e)=>{const t=Ky().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=Op(r);if(!o)return;const s=t._component;!he(s)&&!s.render&&!s.template&&(s.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const i=n(o,!1,Ap(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t},Qy=(...e)=>{const t=Gy().createApp(...e),{mount:n}=t;return t.mount=r=>{const o=Op(r);if(o)return n(o,!0,Ap(o))},t};function Ap(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Op(e){return Ve(e)?document.querySelector(e):e}const Xy=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,Jy=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,Zy=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function e0(e,t){if(e==="__proto__"||e==="constructor"&&t&&typeof t=="object"&&"prototype"in t){t0(e);return}return t}function t0(e){console.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}function qo(e,t={}){if(typeof e!="string")return e;const n=e.trim();if(e[0]==='"'&&e.endsWith('"')&&!e.includes("\\"))return n.slice(1,-1);if(n.length<=9){const r=n.toLowerCase();if(r==="true")return!0;if(r==="false")return!1;if(r==="undefined")return;if(r==="null")return null;if(r==="nan")return Number.NaN;if(r==="infinity")return Number.POSITIVE_INFINITY;if(r==="-infinity")return Number.NEGATIVE_INFINITY}if(!Zy.test(e)){if(t.strict)throw new SyntaxError("[destr] Invalid JSON");return e}try{if(Xy.test(e)||Jy.test(e)){if(t.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(e,e0)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}const $p=/#/g,Rp=/&/g,Ip=/\//g,n0=/=/g,r0=/\?/g,Ii=/\+/g,o0=/%5e/gi,s0=/%60/gi,i0=/%7c/gi,a0=/%20/gi,l0=/%252f/gi;function Lp(e){return encodeURI(""+e).replace(i0,"|")}function Va(e){return Lp(typeof e=="string"?e:JSON.stringify(e)).replace(Ii,"%2B").replace(a0,"+").replace($p,"%23").replace(Rp,"%26").replace(s0,"`").replace(o0,"^").replace(Ip,"%2F")}function aa(e){return Va(e).replace(n0,"%3D")}function c0(e){return Lp(e).replace($p,"%23").replace(r0,"%3F").replace(l0,"%2F").replace(Rp,"%26").replace(Ii,"%2B")}function GA(e){return c0(e).replace(Ip,"%2F")}function li(e=""){try{return decodeURIComponent(""+e)}catch{return""+e}}function u0(e){return li(e.replace(Ii," "))}function f0(e){return li(e.replace(Ii," "))}function Mp(e=""){const t={};e[0]==="?"&&(e=e.slice(1));for(const n of e.split("&")){const r=n.match(/([^=]+)=?(.*)/)||[];if(r.length<2)continue;const o=u0(r[1]);if(o==="__proto__"||o==="constructor")continue;const s=f0(r[2]||"");t[o]===void 0?t[o]=s:Array.isArray(t[o])?t[o].push(s):t[o]=[t[o],s]}return t}function d0(e,t){return(typeof t=="number"||typeof t=="boolean")&&(t=String(t)),t?Array.isArray(t)?t.map(n=>`${aa(e)}=${Va(n)}`).join("&"):`${aa(e)}=${Va(t)}`:aa(e)}function p0(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>d0(t,e[t])).filter(Boolean).join("&")}const h0=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,g0=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,m0=/^([/\\]\s*){2,}[^/\\]/,v0=/^[\s\0]*(blob|data|javascript|vbscript):$/i,y0=/\/$|\/\?|\/#/,b0=/^\.?\//;function An(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?h0.test(e):g0.test(e)||(t.acceptRelative?m0.test(e):!1)}function w0(e){return!!e&&v0.test(e)}function Wa(e="",t){return t?y0.test(e):e.endsWith("/")}function as(e="",t){if(!t)return(Wa(e)?e.slice(0,-1):e)||"/";if(!Wa(e,!0))return e||"/";let n=e,r="";const o=e.indexOf("#");o>=0&&(n=e.slice(0,o),r=e.slice(o));const[s,...i]=n.split("?");return((s.endsWith("/")?s.slice(0,-1):s)||"/")+(i.length>0?`?${i.join("?")}`:"")+r}function ci(e="",t){if(!t)return e.endsWith("/")?e:e+"/";if(Wa(e,!0))return e||"/";let n=e,r="";const o=e.indexOf("#");if(o>=0&&(n=e.slice(0,o),r=e.slice(o),!n))return r;const[s,...i]=n.split("?");return s+"/"+(i.length>0?`?${i.join("?")}`:"")+r}function _0(e=""){return e.startsWith("/")}function qa(e=""){return _0(e)?e:"/"+e}function jp(e,t){if(Np(t)||An(e))return e;const n=as(t);return e.startsWith(n)?e:ls(n,e)}function Cu(e,t){if(Np(t))return e;const n=as(t);if(!e.startsWith(n))return e;const r=e.slice(n.length);return r[0]==="/"?r:"/"+r}function Dp(e,t){const n=S0(e),r={...Mp(n.search),...t};return n.search=p0(r),E0(n)}function Np(e){return!e||e==="/"}function x0(e){return e&&e!=="/"}function ls(e,...t){let n=e||"";for(const r of t.filter(o=>x0(o)))if(n){const o=r.replace(b0,"");n=ci(n)+o}else n=r;return n}function Hp(...e){var i,a,l,u;const t=/\/(?!\/)/,n=e.filter(Boolean),r=[];let o=0;for(const c of n)if(!(!c||c==="/")){for(const[f,d]of c.split(t).entries())if(!(!d||d===".")){if(d===".."){if(r.length===1&&An(r[0]))continue;r.pop(),o--;continue}if(f===1&&((i=r[r.length-1])!=null&&i.endsWith(":/"))){r[r.length-1]+="/"+d;continue}r.push(d),o++}}let s=r.join("/");return o>=0?(a=n[0])!=null&&a.startsWith("/")&&!s.startsWith("/")?s="/"+s:(l=n[0])!=null&&l.startsWith("./")&&!s.startsWith("./")&&(s="./"+s):s="../".repeat(-1*o)+s,(u=n[n.length-1])!=null&&u.endsWith("/")&&!s.endsWith("/")&&(s+="/"),s}function k0(e,t,n={}){return n.trailingSlash||(e=ci(e),t=ci(t)),n.leadingSlash||(e=qa(e),t=qa(t)),n.encoding||(e=li(e),t=li(t)),e===t}const Fp=Symbol.for("ufo:protocolRelative");function S0(e="",t){const n=e.match(/^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i);if(n){const[,f,d=""]=n;return{protocol:f.toLowerCase(),pathname:d,href:f+d,auth:"",host:"",search:"",hash:""}}if(!An(e,{acceptRelative:!0}))return Pu(e);const[,r="",o,s=""]=e.replace(/\\/g,"/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/)||[];let[,i="",a=""]=s.match(/([^#/?]*)(.*)?/)||[];r==="file:"&&(a=a.replace(/\/(?=[A-Za-z]:)/,""));const{pathname:l,search:u,hash:c}=Pu(a);return{protocol:r.toLowerCase(),auth:o?o.slice(0,Math.max(0,o.length-1)):"",host:i,pathname:l,search:u,hash:c,[Fp]:!r}}function Pu(e=""){const[t="",n="",r=""]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:r}}function E0(e){const t=e.pathname||"",n=e.search?(e.search.startsWith("?")?"":"?")+e.search:"",r=e.hash||"",o=e.auth?e.auth+"@":"",s=e.host||"";return(e.protocol||e[Fp]?(e.protocol||"")+"//":"")+o+s+t+n+r}class C0 extends Error{constructor(t,n){super(t,n),this.name="FetchError",n!=null&&n.cause&&!this.cause&&(this.cause=n.cause)}}function P0(e){var l,u,c,f,d;const t=((l=e.error)==null?void 0:l.message)||((u=e.error)==null?void 0:u.toString())||"",n=((c=e.request)==null?void 0:c.method)||((f=e.options)==null?void 0:f.method)||"GET",r=((d=e.request)==null?void 0:d.url)||String(e.request)||"/",o=`[${n}] ${JSON.stringify(r)}`,s=e.response?`${e.response.status} ${e.response.statusText}`:"<no response>",i=`${o}: ${s}${t?` ${t}`:""}`,a=new C0(i,e.error?{cause:e.error}:void 0);for(const p of["request","options","response"])Object.defineProperty(a,p,{get(){return e[p]}});for(const[p,m]of[["data","_data"],["status","status"],["statusCode","status"],["statusText","statusText"],["statusMessage","statusText"]])Object.defineProperty(a,p,{get(){return e.response&&e.response[m]}});return a}const T0=new Set(Object.freeze(["PATCH","POST","PUT","DELETE"]));function Tu(e="GET"){return T0.has(e.toUpperCase())}function A0(e){if(e===void 0)return!1;const t=typeof e;return t==="string"||t==="number"||t==="boolean"||t===null?!0:t!=="object"?!1:Array.isArray(e)?!0:e.buffer?!1:e.constructor&&e.constructor.name==="Object"||typeof e.toJSON=="function"}const O0=new Set(["image/svg","application/xml","application/xhtml","application/html"]),$0=/^application\/(?:[\w!#$%&*.^`~-]*\+)?json(;.+)?$/i;function R0(e=""){if(!e)return"json";const t=e.split(";").shift()||"";return $0.test(t)?"json":O0.has(t)||t.startsWith("text/")?"text":"blob"}function I0(e,t,n,r){const o=L0((t==null?void 0:t.headers)??(e==null?void 0:e.headers),n==null?void 0:n.headers,r);let s;return(n!=null&&n.query||n!=null&&n.params||t!=null&&t.params||t!=null&&t.query)&&(s={...n==null?void 0:n.params,...n==null?void 0:n.query,...t==null?void 0:t.params,...t==null?void 0:t.query}),{...n,...t,query:s,params:s,headers:o}}function L0(e,t,n){if(!t)return new n(e);const r=new n(t);if(e)for(const[o,s]of Symbol.iterator in e||Array.isArray(e)?e:new n(e))r.set(o,s);return r}async function Cs(e,t){if(t)if(Array.isArray(t))for(const n of t)await n(e);else await t(e)}const M0=new Set([408,409,425,429,500,502,503,504]),j0=new Set([101,204,205,304]);function Bp(e={}){const{fetch:t=globalThis.fetch,Headers:n=globalThis.Headers,AbortController:r=globalThis.AbortController}=e;async function o(a){const l=a.error&&a.error.name==="AbortError"&&!a.options.timeout||!1;if(a.options.retry!==!1&&!l){let c;typeof a.options.retry=="number"?c=a.options.retry:c=Tu(a.options.method)?0:1;const f=a.response&&a.response.status||500;if(c>0&&(Array.isArray(a.options.retryStatusCodes)?a.options.retryStatusCodes.includes(f):M0.has(f))){const d=typeof a.options.retryDelay=="function"?a.options.retryDelay(a):a.options.retryDelay||0;return d>0&&await new Promise(p=>setTimeout(p,d)),s(a.request,{...a.options,retry:c-1})}}const u=P0(a);throw Error.captureStackTrace&&Error.captureStackTrace(u,s),u}const s=async function(l,u={}){const c={request:l,options:I0(l,u,e.defaults,n),response:void 0,error:void 0};c.options.method&&(c.options.method=c.options.method.toUpperCase()),c.options.onRequest&&await Cs(c,c.options.onRequest),typeof c.request=="string"&&(c.options.baseURL&&(c.request=jp(c.request,c.options.baseURL)),c.options.query&&(c.request=Dp(c.request,c.options.query),delete c.options.query),"query"in c.options&&delete c.options.query,"params"in c.options&&delete c.options.params),c.options.body&&Tu(c.options.method)&&(A0(c.options.body)?(c.options.body=typeof c.options.body=="string"?c.options.body:JSON.stringify(c.options.body),c.options.headers=new n(c.options.headers||{}),c.options.headers.has("content-type")||c.options.headers.set("content-type","application/json"),c.options.headers.has("accept")||c.options.headers.set("accept","application/json")):("pipeTo"in c.options.body&&typeof c.options.body.pipeTo=="function"||typeof c.options.body.pipe=="function")&&("duplex"in c.options||(c.options.duplex="half")));let f;if(!c.options.signal&&c.options.timeout){const p=new r;f=setTimeout(()=>{const m=new Error("[TimeoutError]: The operation was aborted due to timeout");m.name="TimeoutError",m.code=23,p.abort(m)},c.options.timeout),c.options.signal=p.signal}try{c.response=await t(c.request,c.options)}catch(p){return c.error=p,c.options.onRequestError&&await Cs(c,c.options.onRequestError),await o(c)}finally{f&&clearTimeout(f)}if((c.response.body||c.response._bodyInit)&&!j0.has(c.response.status)&&c.options.method!=="HEAD"){const p=(c.options.parseResponse?"json":c.options.responseType)||R0(c.response.headers.get("content-type")||"");switch(p){case"json":{const m=await c.response.text(),h=c.options.parseResponse||qo;c.response._data=h(m);break}case"stream":{c.response._data=c.response.body||c.response._bodyInit;break}default:c.response._data=await c.response[p]()}}return c.options.onResponse&&await Cs(c,c.options.onResponse),!c.options.ignoreResponseError&&c.response.status>=400&&c.response.status<600?(c.options.onResponseError&&await Cs(c,c.options.onResponseError),await o(c)):c.response},i=async function(l,u){return(await s(l,u))._data};return i.raw=s,i.native=(...a)=>t(...a),i.create=(a={},l={})=>Bp({...e,...l,defaults:{...e.defaults,...l.defaults,...a}}),i}const ui=function(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("unable to locate global object")}(),D0=ui.fetch?(...e)=>ui.fetch(...e):()=>Promise.reject(new Error("[ofetch] global.fetch is not supported!")),N0=ui.Headers,H0=ui.AbortController,F0=Bp({fetch:D0,Headers:N0,AbortController:H0}),B0=F0,U0=()=>{var e;return((e=window==null?void 0:window.__NUXT__)==null?void 0:e.config)||{}},fi=U0().app,z0=()=>fi.baseURL,V0=()=>fi.buildAssetsDir,ec=(...e)=>Hp(Up(),V0(),...e),Up=(...e)=>{const t=fi.cdnURL||fi.baseURL;return e.length?Hp(t,...e):t};globalThis.__buildAssetsURL=ec,globalThis.__publicAssetsURL=Up;globalThis.$fetch||(globalThis.$fetch=B0.create({baseURL:z0()}));function Ka(e,t={},n){for(const r in e){const o=e[r],s=n?`${n}:${r}`:r;typeof o=="object"&&o!==null?Ka(o,t,s):typeof o=="function"&&(t[s]=o)}return t}const W0={run:e=>e()},q0=()=>W0,zp=typeof console.createTask<"u"?console.createTask:q0;function K0(e,t){const n=t.shift(),r=zp(n);return e.reduce((o,s)=>o.then(()=>r.run(()=>s(...t))),Promise.resolve())}function G0(e,t){const n=t.shift(),r=zp(n);return Promise.all(e.map(o=>r.run(()=>o(...t))))}function la(e,t){for(const n of[...e])n(t)}class Y0{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(t,n,r={}){if(!t||typeof n!="function")return()=>{};const o=t;let s;for(;this._deprecatedHooks[t];)s=this._deprecatedHooks[t],t=s.to;if(s&&!r.allowDeprecated){let i=s.message;i||(i=`${o} hook has been deprecated`+(s.to?`, please use ${s.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(i)||(console.warn(i),this._deprecatedMessages.add(i))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+t.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[t]=this._hooks[t]||[],this._hooks[t].push(n),()=>{n&&(this.removeHook(t,n),n=void 0)}}hookOnce(t,n){let r,o=(...s)=>(typeof r=="function"&&r(),r=void 0,o=void 0,n(...s));return r=this.hook(t,o),r}removeHook(t,n){if(this._hooks[t]){const r=this._hooks[t].indexOf(n);r!==-1&&this._hooks[t].splice(r,1),this._hooks[t].length===0&&delete this._hooks[t]}}deprecateHook(t,n){this._deprecatedHooks[t]=typeof n=="string"?{to:n}:n;const r=this._hooks[t]||[];delete this._hooks[t];for(const o of r)this.hook(t,o)}deprecateHooks(t){Object.assign(this._deprecatedHooks,t);for(const n in t)this.deprecateHook(n,t[n])}addHooks(t){const n=Ka(t),r=Object.keys(n).map(o=>this.hook(o,n[o]));return()=>{for(const o of r.splice(0,r.length))o()}}removeHooks(t){const n=Ka(t);for(const r in n)this.removeHook(r,n[r])}removeAllHooks(){for(const t in this._hooks)delete this._hooks[t]}callHook(t,...n){return n.unshift(t),this.callHookWith(K0,t,...n)}callHookParallel(t,...n){return n.unshift(t),this.callHookWith(G0,t,...n)}callHookWith(t,n,...r){const o=this._before||this._after?{name:n,args:r,context:{}}:void 0;this._before&&la(this._before,o);const s=t(n in this._hooks?[...this._hooks[n]]:[],r);return s instanceof Promise?s.finally(()=>{this._after&&o&&la(this._after,o)}):(this._after&&o&&la(this._after,o),s)}beforeEach(t){return this._before=this._before||[],this._before.push(t),()=>{if(this._before!==void 0){const n=this._before.indexOf(t);n!==-1&&this._before.splice(n,1)}}}afterEach(t){return this._after=this._after||[],this._after.push(t),()=>{if(this._after!==void 0){const n=this._after.indexOf(t);n!==-1&&this._after.splice(n,1)}}}}function Vp(){return new Y0}function Q0(e={}){let t,n=!1;const r=i=>{if(t&&t!==i)throw new Error("Context conflict")};let o;if(e.asyncContext){const i=e.AsyncLocalStorage||globalThis.AsyncLocalStorage;i?o=new i:console.warn("[unctx] `AsyncLocalStorage` is not provided.")}const s=()=>{if(o&&t===void 0){const i=o.getStore();if(i!==void 0)return i}return t};return{use:()=>{const i=s();if(i===void 0)throw new Error("Context is not available");return i},tryUse:()=>s(),set:(i,a)=>{a||r(i),t=i,n=!0},unset:()=>{t=void 0,n=!1},call:(i,a)=>{r(i),t=i;try{return o?o.run(i,a):a()}finally{n||(t=void 0)}},async callAsync(i,a){t=i;const l=()=>{t=i},u=()=>t===i?l:void 0;Ga.add(u);try{const c=o?o.run(i,a):a();return n||(t=void 0),await c}finally{Ga.delete(u)}}}}function X0(e={}){const t={};return{get(n,r={}){return t[n]||(t[n]=Q0({...e,...r})),t[n],t[n]}}}const di=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof global<"u"?global:typeof window<"u"?window:{},Au="__unctx__",J0=di[Au]||(di[Au]=X0()),Z0=(e,t={})=>J0.get(e,t),Ou="__unctx_async_handlers__",Ga=di[Ou]||(di[Ou]=new Set);function Ur(e){const t=[];for(const o of Ga){const s=o();s&&t.push(s)}const n=()=>{for(const o of t)o()};let r=e();return r&&typeof r=="object"&&"catch"in r&&(r=r.catch(o=>{throw n(),o})),[r,n]}const eb=!1,Ya=!1,tb=!1,nb={componentName:"NuxtLink",prefetch:!0,prefetchOn:{visibility:!0}},Lr={deep:!1},rb=void 0,ob={},sb="#__nuxt",Wp="nuxt-app",$u=36e5,ib="vite:preloadError";function qp(e=Wp){return Z0(e,{asyncContext:!1})}const ab="__nuxt_plugin";function lb(e){var o;let t=0;const n={_id:e.id||Wp||"nuxt-app",_scope:cd(),provide:void 0,globalName:"nuxt",versions:{get nuxt(){return"3.14.159"},get vue(){return n.vueApp.version}},payload:kn({...((o=e.ssrContext)==null?void 0:o.payload)||{},data:kn({}),state:Bt({}),once:new Set,_errors:kn({})}),static:{data:{}},runWithContext(s){return n._scope.active&&!Pr()?n._scope.run(()=>Ru(n,s)):Ru(n,s)},isHydrating:!0,deferHydration(){if(!n.isHydrating)return()=>{};t++;let s=!1;return()=>{if(!s&&(s=!0,t--,t===0))return n.isHydrating=!1,n.callHook("app:suspense:resolve")}},_asyncDataPromises:{},_asyncData:kn({}),_payloadRevivers:{},...e};{const s=window.__NUXT__;if(s)for(const i in s)switch(i){case"data":case"state":case"_errors":Object.assign(n.payload[i],s[i]);break;default:n.payload[i]=s[i]}}n.hooks=Vp(),n.hook=n.hooks.hook,n.callHook=n.hooks.callHook,n.provide=(s,i)=>{const a="$"+s;Ps(n,a,i),Ps(n.vueApp.config.globalProperties,a,i)},Ps(n.vueApp,"$nuxt",n),Ps(n.vueApp.config.globalProperties,"$nuxt",n);{window.addEventListener(ib,i=>{n.callHook("app:chunkError",{error:i.payload}),(n.isHydrating||i.payload.message.includes("Unable to preload CSS"))&&i.preventDefault()}),window.useNuxtApp=window.useNuxtApp||_e;const s=n.hook("app:error",(...i)=>{console.error("[nuxt] error caught during app initialization",...i)});n.hook("app:mounted",s)}const r=n.payload.config;return n.provide("config",r),n}function cb(e,t){t.hooks&&e.hooks.addHooks(t.hooks)}async function ub(e,t){if(typeof t=="function"){const{provide:n}=await e.runWithContext(()=>t(e))||{};if(n&&typeof n=="object")for(const r in n)e.provide(r,n[r])}}async function fb(e,t){const n=[],r=[],o=[],s=[];let i=0;async function a(l){var c;const u=((c=l.dependsOn)==null?void 0:c.filter(f=>t.some(d=>d._name===f)&&!n.includes(f)))??[];if(u.length>0)r.push([new Set(u),l]);else{const f=ub(e,l).then(async()=>{l._name&&(n.push(l._name),await Promise.all(r.map(async([d,p])=>{d.has(l._name)&&(d.delete(l._name),d.size===0&&(i++,await a(p)))})))});l.parallel?o.push(f.catch(d=>s.push(d))):await f}}for(const l of t)cb(e,l);for(const l of t)await a(l);if(await Promise.all(o),i)for(let l=0;l<i;l++)await Promise.all(o);if(s.length)throw s[0]}function it(e){if(typeof e=="function")return e;const t=e._name||e.name;return delete e.name,Object.assign(e.setup||(()=>{}),e,{[ab]:!0,_name:t})}function Ru(e,t,n){const r=()=>t();return qp(e._id).set(e),e.vueApp.runWithContext(r)}function db(e){var n;let t;return ep()&&(t=(n=Ut())==null?void 0:n.appContext.app.$nuxt),t=t||qp(e).tryUse(),t||null}function _e(e){const t=db(e);if(!t)throw new Error("[nuxt] instance unavailable");return t}function zt(e){return _e().$config}function Ps(e,t,n){Object.defineProperty(e,t,{get:()=>n})}function pb(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");const n={},r=t||{},o=r.decode||hb;let s=0;for(;s<e.length;){const i=e.indexOf("=",s);if(i===-1)break;let a=e.indexOf(";",s);if(a===-1)a=e.length;else if(a<i){s=e.lastIndexOf(";",i-1)+1;continue}const l=e.slice(s,i).trim();if(r!=null&&r.filter&&!(r!=null&&r.filter(l))){s=a+1;continue}if(n[l]===void 0){let u=e.slice(i+1,a).trim();u.codePointAt(0)===34&&(u=u.slice(1,-1)),n[l]=gb(u,o)}s=a+1}return n}function hb(e){return e.includes("%")?decodeURIComponent(e):e}function gb(e,t){try{return t(e)}catch{return e}}const Ts=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Iu(e,t,n){const r=n||{},o=r.encode||encodeURIComponent;if(typeof o!="function")throw new TypeError("option encode is invalid");if(!Ts.test(e))throw new TypeError("argument name is invalid");const s=o(t);if(s&&!Ts.test(s))throw new TypeError("argument val is invalid");let i=e+"="+s;if(r.maxAge!==void 0&&r.maxAge!==null){const a=r.maxAge-0;if(Number.isNaN(a)||!Number.isFinite(a))throw new TypeError("option maxAge is invalid");i+="; Max-Age="+Math.floor(a)}if(r.domain){if(!Ts.test(r.domain))throw new TypeError("option domain is invalid");i+="; Domain="+r.domain}if(r.path){if(!Ts.test(r.path))throw new TypeError("option path is invalid");i+="; Path="+r.path}if(r.expires){if(!mb(r.expires)||Number.isNaN(r.expires.valueOf()))throw new TypeError("option expires is invalid");i+="; Expires="+r.expires.toUTCString()}if(r.httpOnly&&(i+="; HttpOnly"),r.secure&&(i+="; Secure"),r.priority)switch(typeof r.priority=="string"?r.priority.toLowerCase():r.priority){case"low":{i+="; Priority=Low";break}case"medium":{i+="; Priority=Medium";break}case"high":{i+="; Priority=High";break}default:throw new TypeError("option priority is invalid")}if(r.sameSite)switch(typeof r.sameSite=="string"?r.sameSite.toLowerCase():r.sameSite){case!0:{i+="; SameSite=Strict";break}case"lax":{i+="; SameSite=Lax";break}case"strict":{i+="; SameSite=Strict";break}case"none":{i+="; SameSite=None";break}default:throw new TypeError("option sameSite is invalid")}return r.partitioned&&(i+="; Partitioned"),i}function mb(e){return Object.prototype.toString.call(e)==="[object Date]"||e instanceof Date}const Lu=Object.freeze({ignoreUnknown:!1,respectType:!1,respectFunctionNames:!1,respectFunctionProperties:!1,unorderedObjects:!0,unorderedArrays:!1,unorderedSets:!1,excludeKeys:void 0,excludeValues:void 0,replacer:void 0});function Qa(e,t){t?t={...Lu,...t}:t=Lu;const n=Kp(t);return n.dispatch(e),n.toString()}const vb=Object.freeze(["prototype","__proto__","constructor"]);function Kp(e){let t="",n=new Map;const r=o=>{t+=o};return{toString(){return t},getContext(){return n},dispatch(o){return e.replacer&&(o=e.replacer(o)),this[o===null?"null":typeof o](o)},object(o){if(o&&typeof o.toJSON=="function")return this.object(o.toJSON());const s=Object.prototype.toString.call(o);let i="";const a=s.length;a<10?i="unknown:["+s+"]":i=s.slice(8,a-1),i=i.toLowerCase();let l=null;if((l=n.get(o))===void 0)n.set(o,n.size);else return this.dispatch("[CIRCULAR:"+l+"]");if(typeof Buffer<"u"&&Buffer.isBuffer&&Buffer.isBuffer(o))return r("buffer:"),r(o.toString("utf8"));if(i!=="object"&&i!=="function"&&i!=="asyncfunction")this[i]?this[i](o):e.ignoreUnknown||this.unkown(o,i);else{let u=Object.keys(o);e.unorderedObjects&&(u=u.sort());let c=[];e.respectType!==!1&&!Mu(o)&&(c=vb),e.excludeKeys&&(u=u.filter(d=>!e.excludeKeys(d)),c=c.filter(d=>!e.excludeKeys(d))),r("object:"+(u.length+c.length)+":");const f=d=>{this.dispatch(d),r(":"),e.excludeValues||this.dispatch(o[d]),r(",")};for(const d of u)f(d);for(const d of c)f(d)}},array(o,s){if(s=s===void 0?e.unorderedArrays!==!1:s,r("array:"+o.length+":"),!s||o.length<=1){for(const l of o)this.dispatch(l);return}const i=new Map,a=o.map(l=>{const u=Kp(e);u.dispatch(l);for(const[c,f]of u.getContext())i.set(c,f);return u.toString()});return n=i,a.sort(),this.array(a,!1)},date(o){return r("date:"+o.toJSON())},symbol(o){return r("symbol:"+o.toString())},unkown(o,s){if(r(s),!!o&&(r(":"),o&&typeof o.entries=="function"))return this.array(Array.from(o.entries()),!0)},error(o){return r("error:"+o.toString())},boolean(o){return r("bool:"+o)},string(o){r("string:"+o.length+":"),r(o)},function(o){r("fn:"),Mu(o)?this.dispatch("[native]"):this.dispatch(o.toString()),e.respectFunctionNames!==!1&&this.dispatch("function-name:"+String(o.name)),e.respectFunctionProperties&&this.object(o)},number(o){return r("number:"+o)},xml(o){return r("xml:"+o.toString())},null(){return r("Null")},undefined(){return r("Undefined")},regexp(o){return r("regex:"+o.toString())},uint8array(o){return r("uint8array:"),this.dispatch(Array.prototype.slice.call(o))},uint8clampedarray(o){return r("uint8clampedarray:"),this.dispatch(Array.prototype.slice.call(o))},int8array(o){return r("int8array:"),this.dispatch(Array.prototype.slice.call(o))},uint16array(o){return r("uint16array:"),this.dispatch(Array.prototype.slice.call(o))},int16array(o){return r("int16array:"),this.dispatch(Array.prototype.slice.call(o))},uint32array(o){return r("uint32array:"),this.dispatch(Array.prototype.slice.call(o))},int32array(o){return r("int32array:"),this.dispatch(Array.prototype.slice.call(o))},float32array(o){return r("float32array:"),this.dispatch(Array.prototype.slice.call(o))},float64array(o){return r("float64array:"),this.dispatch(Array.prototype.slice.call(o))},arraybuffer(o){return r("arraybuffer:"),this.dispatch(new Uint8Array(o))},url(o){return r("url:"+o.toString())},map(o){r("map:");const s=[...o];return this.array(s,e.unorderedSets!==!1)},set(o){r("set:");const s=[...o];return this.array(s,e.unorderedSets!==!1)},file(o){return r("file:"),this.dispatch([o.name,o.size,o.type,o.lastModfied])},blob(){if(e.ignoreUnknown)return r("[blob]");throw new Error(`Hashing Blob objects is currently not supported +Use "options.replacer" or "options.ignoreUnknown" +`)},domwindow(){return r("domwindow")},bigint(o){return r("bigint:"+o.toString())},process(){return r("process")},timer(){return r("timer")},pipe(){return r("pipe")},tcp(){return r("tcp")},udp(){return r("udp")},tty(){return r("tty")},statwatcher(){return r("statwatcher")},securecontext(){return r("securecontext")},connection(){return r("connection")},zlib(){return r("zlib")},context(){return r("context")},nodescript(){return r("nodescript")},httpparser(){return r("httpparser")},dataview(){return r("dataview")},signal(){return r("signal")},fsevent(){return r("fsevent")},tlswrap(){return r("tlswrap")}}}const Gp="[native code] }",yb=Gp.length;function Mu(e){return typeof e!="function"?!1:Function.prototype.toString.call(e).slice(-yb)===Gp}var bb=Object.defineProperty,wb=(e,t,n)=>t in e?bb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Mr=(e,t,n)=>(wb(e,typeof t!="symbol"?t+"":t,n),n);class Kn{constructor(t,n){Mr(this,"words"),Mr(this,"sigBytes"),t=this.words=t||[],this.sigBytes=n===void 0?t.length*4:n}toString(t){return(t||_b).stringify(this)}concat(t){if(this.clamp(),this.sigBytes%4)for(let n=0;n<t.sigBytes;n++){const r=t.words[n>>>2]>>>24-n%4*8&255;this.words[this.sigBytes+n>>>2]|=r<<24-(this.sigBytes+n)%4*8}else for(let n=0;n<t.sigBytes;n+=4)this.words[this.sigBytes+n>>>2]=t.words[n>>>2];return this.sigBytes+=t.sigBytes,this}clamp(){this.words[this.sigBytes>>>2]&=4294967295<<32-this.sigBytes%4*8,this.words.length=Math.ceil(this.sigBytes/4)}clone(){return new Kn([...this.words])}}const _b={stringify(e){const t=[];for(let n=0;n<e.sigBytes;n++){const r=e.words[n>>>2]>>>24-n%4*8&255;t.push((r>>>4).toString(16),(r&15).toString(16))}return t.join("")}},xb={stringify(e){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=[];for(let r=0;r<e.sigBytes;r+=3){const o=e.words[r>>>2]>>>24-r%4*8&255,s=e.words[r+1>>>2]>>>24-(r+1)%4*8&255,i=e.words[r+2>>>2]>>>24-(r+2)%4*8&255,a=o<<16|s<<8|i;for(let l=0;l<4&&r*8+l*6<e.sigBytes*8;l++)n.push(t.charAt(a>>>6*(3-l)&63))}return n.join("")}},kb={parse(e){const t=e.length,n=[];for(let r=0;r<t;r++)n[r>>>2]|=(e.charCodeAt(r)&255)<<24-r%4*8;return new Kn(n,t)}},Sb={parse(e){return kb.parse(unescape(encodeURIComponent(e)))}};class Eb{constructor(){Mr(this,"_data",new Kn),Mr(this,"_nDataBytes",0),Mr(this,"_minBufferSize",0),Mr(this,"blockSize",512/32)}reset(){this._data=new Kn,this._nDataBytes=0}_append(t){typeof t=="string"&&(t=Sb.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes}_doProcessBlock(t,n){}_process(t){let n,r=this._data.sigBytes/(this.blockSize*4);t?r=Math.ceil(r):r=Math.max((r|0)-this._minBufferSize,0);const o=r*this.blockSize,s=Math.min(o*4,this._data.sigBytes);if(o){for(let i=0;i<o;i+=this.blockSize)this._doProcessBlock(this._data.words,i);n=this._data.words.splice(0,o),this._data.sigBytes-=s}return new Kn(n,s)}}class Cb extends Eb{update(t){return this._append(t),this._process(),this}finalize(t){t&&this._append(t)}}var Pb=Object.defineProperty,Tb=(e,t,n)=>t in e?Pb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Ab=(e,t,n)=>(Tb(e,t+"",n),n);const ju=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],Ob=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998],ir=[];class $b extends Cb{constructor(){super(...arguments),Ab(this,"_hash",new Kn([...ju]))}reset(){super.reset(),this._hash=new Kn([...ju])}_doProcessBlock(t,n){const r=this._hash.words;let o=r[0],s=r[1],i=r[2],a=r[3],l=r[4],u=r[5],c=r[6],f=r[7];for(let d=0;d<64;d++){if(d<16)ir[d]=t[n+d]|0;else{const g=ir[d-15],v=(g<<25|g>>>7)^(g<<14|g>>>18)^g>>>3,w=ir[d-2],S=(w<<15|w>>>17)^(w<<13|w>>>19)^w>>>10;ir[d]=v+ir[d-7]+S+ir[d-16]}const p=l&u^~l&c,m=o&s^o&i^s&i,h=(o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22),y=(l<<26|l>>>6)^(l<<21|l>>>11)^(l<<7|l>>>25),x=f+y+p+Ob[d]+ir[d],b=h+m;f=c,c=u,u=l,l=a+x|0,a=i,i=s,s=o,o=x+b|0}r[0]=r[0]+o|0,r[1]=r[1]+s|0,r[2]=r[2]+i|0,r[3]=r[3]+a|0,r[4]=r[4]+l|0,r[5]=r[5]+u|0,r[6]=r[6]+c|0,r[7]=r[7]+f|0}finalize(t){super.finalize(t);const n=this._nDataBytes*8,r=this._data.sigBytes*8;return this._data.words[r>>>5]|=128<<24-r%32,this._data.words[(r+64>>>9<<4)+14]=Math.floor(n/4294967296),this._data.words[(r+64>>>9<<4)+15]=n,this._data.sigBytes=this._data.words.length*4,this._process(),this._hash}}function Rb(e){return new $b().finalize(e).toString(xb)}function Ko(e,t={}){const n=typeof e=="string"?e:Qa(e,t);return Rb(n).slice(0,10)}function Yp(e,t,n={}){return e===t||Qa(e,n)===Qa(t,n)}function Ib(e,t){return{ctx:{table:e},matchAll:n=>Xp(n,e)}}function Qp(e){const t={};for(const n in e)t[n]=n==="dynamic"?new Map(Object.entries(e[n]).map(([r,o])=>[r,Qp(o)])):new Map(Object.entries(e[n]));return t}function Lb(e){return Ib(Qp(e))}function Xp(e,t,n){e.endsWith("/")&&(e=e.slice(0,-1)||"/");const r=[];for(const[s,i]of Du(t.wildcard))(e===s||e.startsWith(s+"/"))&&r.push(i);for(const[s,i]of Du(t.dynamic))if(e.startsWith(s+"/")){const a="/"+e.slice(s.length).split("/").splice(2).join("/");r.push(...Xp(a,i))}const o=t.static.get(e);return o&&r.push(o),r.filter(Boolean)}function Du(e){return[...e.entries()].sort((t,n)=>t[0].length-n[0].length)}function ca(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function Xa(e,t,n=".",r){if(!ca(t))return Xa(e,{},n,r);const o=Object.assign({},t);for(const s in e){if(s==="__proto__"||s==="constructor")continue;const i=e[s];i!=null&&(r&&r(o,s,i,n)||(Array.isArray(i)&&Array.isArray(o[s])?o[s]=[...i,...o[s]]:ca(i)&&ca(o[s])?o[s]=Xa(i,o[s],(n?`${n}.`:"")+s.toString(),r):o[s]=i))}return o}function tc(e){return(...t)=>t.reduce((n,r)=>Xa(n,r,"",e),{})}const Li=tc(),Mb=tc((e,t,n)=>{if(e[t]!==void 0&&typeof n=="function")return e[t]=n(e[t]),!0});function jb(e,t){try{return t in e}catch{return!1}}var Db=Object.defineProperty,Nb=(e,t,n)=>t in e?Db(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,fr=(e,t,n)=>(Nb(e,typeof t!="symbol"?t+"":t,n),n);class Ja extends Error{constructor(t,n={}){super(t,n),fr(this,"statusCode",500),fr(this,"fatal",!1),fr(this,"unhandled",!1),fr(this,"statusMessage"),fr(this,"data"),fr(this,"cause"),n.cause&&!this.cause&&(this.cause=n.cause)}toJSON(){const t={message:this.message,statusCode:el(this.statusCode,500)};return this.statusMessage&&(t.statusMessage=Jp(this.statusMessage)),this.data!==void 0&&(t.data=this.data),t}}fr(Ja,"__h3_error__",!0);function Za(e){if(typeof e=="string")return new Ja(e);if(Hb(e))return e;const t=new Ja(e.message??e.statusMessage??"",{cause:e.cause||e});if(jb(e,"stack"))try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=el(e.statusCode,t.statusCode):e.status&&(t.statusCode=el(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){const n=t.statusMessage;Jp(t.statusMessage)!==n&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function Hb(e){var t;return((t=e==null?void 0:e.constructor)==null?void 0:t.__h3_error__)===!0}const Fb=/[^\u0009\u0020-\u007E]/g;function Jp(e=""){return e.replace(Fb,"")}function el(e,t=200){return!e||(typeof e=="string"&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}const Zp=Symbol("layout-meta"),so=Symbol("route"),gt=()=>{var e;return(e=_e())==null?void 0:e.$router},En=()=>ep()?Ce(so,_e()._route):_e()._route;const Bb=()=>{try{if(_e()._processingMiddleware)return!0}catch{return!1}return!1},Ub=(e,t)=>{e||(e="/");const n=typeof e=="string"?e:"path"in e?tl(e):gt().resolve(e).href;if(t!=null&&t.open){const{target:l="_blank",windowFeatures:u={}}=t.open,c=Object.entries(u).filter(([f,d])=>d!==void 0).map(([f,d])=>`${f.toLowerCase()}=${d}`).join(", ");return open(n,l,c),Promise.resolve()}const r=An(n,{acceptRelative:!0}),o=(t==null?void 0:t.external)||r;if(o){if(!(t!=null&&t.external))throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`.");const{protocol:l}=new URL(n,window.location.href);if(l&&w0(l))throw new Error(`Cannot navigate to a URL with '${l}' protocol.`)}const s=Bb();if(!o&&s)return e;const i=gt(),a=_e();return o?(a._scope.stop(),t!=null&&t.replace?location.replace(n):location.href=n,s?a.isHydrating?new Promise(()=>{}):!1:Promise.resolve()):t!=null&&t.replace?i.replace(e):i.push(e)};function tl(e){return Dp(e.path||"",e.query||{})+(e.hash||"")}const eh="__nuxt_error",Mi=()=>xe(_e().payload,"error"),jr=e=>{const t=cs(e);try{const n=_e(),r=Mi();n.hooks.callHook("app:error",t),r.value=r.value||t}catch{throw t}return t},th=async(e={})=>{const t=_e(),n=Mi();t.callHook("app:error:cleared",e),e.redirect&&await gt().replace(e.redirect),n.value=rb},zb=e=>!!e&&typeof e=="object"&&eh in e,cs=e=>{const t=Za(e);return Object.defineProperty(t,eh,{value:!0,configurable:!1,writable:!1}),t};function Nu(e){const t=Wb(e),n=new ArrayBuffer(t.length),r=new DataView(n);for(let o=0;o<n.byteLength;o++)r.setUint8(o,t.charCodeAt(o));return n}const Vb="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";function Wb(e){e.length%4===0&&(e=e.replace(/==?$/,""));let t="",n=0,r=0;for(let o=0;o<e.length;o++)n<<=6,n|=Vb.indexOf(e[o]),r+=6,r===24&&(t+=String.fromCharCode((n&16711680)>>16),t+=String.fromCharCode((n&65280)>>8),t+=String.fromCharCode(n&255),n=r=0);return r===12?(n>>=4,t+=String.fromCharCode(n)):r===18&&(n>>=2,t+=String.fromCharCode((n&65280)>>8),t+=String.fromCharCode(n&255)),t}const qb=-1,Kb=-2,Gb=-3,Yb=-4,Qb=-5,Xb=-6;function Jb(e,t){return Zb(JSON.parse(e),t)}function Zb(e,t){if(typeof e=="number")return o(e,!0);if(!Array.isArray(e)||e.length===0)throw new Error("Invalid input");const n=e,r=Array(n.length);function o(s,i=!1){if(s===qb)return;if(s===Gb)return NaN;if(s===Yb)return 1/0;if(s===Qb)return-1/0;if(s===Xb)return-0;if(i)throw new Error("Invalid input");if(s in r)return r[s];const a=n[s];if(!a||typeof a!="object")r[s]=a;else if(Array.isArray(a))if(typeof a[0]=="string"){const l=a[0],u=t==null?void 0:t[l];if(u)return r[s]=u(o(a[1]));switch(l){case"Date":r[s]=new Date(a[1]);break;case"Set":const c=new Set;r[s]=c;for(let p=1;p<a.length;p+=1)c.add(o(a[p]));break;case"Map":const f=new Map;r[s]=f;for(let p=1;p<a.length;p+=2)f.set(o(a[p]),o(a[p+1]));break;case"RegExp":r[s]=new RegExp(a[1],a[2]);break;case"Object":r[s]=Object(a[1]);break;case"BigInt":r[s]=BigInt(a[1]);break;case"null":const d=Object.create(null);r[s]=d;for(let p=1;p<a.length;p+=2)d[a[p]]=o(a[p+1]);break;case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"BigInt64Array":case"BigUint64Array":{const p=globalThis[l],m=a[1],h=Nu(m),y=new p(h);r[s]=y;break}case"ArrayBuffer":{const p=a[1],m=Nu(p);r[s]=m;break}default:throw new Error(`Unknown type ${l}`)}}else{const l=new Array(a.length);r[s]=l;for(let u=0;u<a.length;u+=1){const c=a[u];c!==Kb&&(l[u]=o(c))}}else{const l={};r[s]=l;for(const u in a){const c=a[u];l[u]=o(c)}}return r[s]}return o(0)}const ew=new Set(["title","titleTemplate","script","style","noscript"]),Fs=new Set(["base","meta","link","style","script","noscript"]),tw=new Set(["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"]),nw=new Set(["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"]),nh=new Set(["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"]),rw=typeof window<"u";function pi(e){let t=9;for(let n=0;n<e.length;)t=Math.imul(t^e.charCodeAt(n++),9**9);return((t^t>>>9)+65536).toString(16).substring(1,8).toLowerCase()}function nl(e){if(e._h)return e._h;if(e._d)return pi(e._d);let t=`${e.tag}:${e.textContent||e.innerHTML||""}:`;for(const n in e.props)t+=`${n}:${String(e.props[n])},`;return pi(t)}function rh(e,t){const n=[],r=t.resolveKeyData||(s=>s.key),o=t.resolveValueData||(s=>s.value);for(const[s,i]of Object.entries(e))n.push(...(Array.isArray(i)?i:[i]).map(a=>{const l={key:s,value:a},u=o(l);return typeof u=="object"?rh(u,t):Array.isArray(u)?u:{[typeof t.key=="function"?t.key(l):t.key]:r(l),[typeof t.value=="function"?t.value(l):t.value]:u}}).flat());return n}function oh(e,t){return Object.entries(e).map(([n,r])=>{if(typeof r=="object"&&(r=oh(r,t)),t.resolve){const o=t.resolve({key:n,value:r});if(typeof o<"u")return o}return typeof r=="number"&&(r=r.toString()),typeof r=="string"&&t.wrapValue&&(r=r.replace(new RegExp(t.wrapValue,"g"),`\\${t.wrapValue}`),r=`${t.wrapValue}${r}${t.wrapValue}`),`${n}${t.keyValueSeparator||""}${r}`}).join(t.entrySeparator||"")}const mt=e=>({keyValue:e,metaKey:"property"}),ua=e=>({keyValue:e}),nc={appleItunesApp:{unpack:{entrySeparator:", ",resolve({key:e,value:t}){return`${Sn(e)}=${t}`}}},articleExpirationTime:mt("article:expiration_time"),articleModifiedTime:mt("article:modified_time"),articlePublishedTime:mt("article:published_time"),bookReleaseDate:mt("book:release_date"),charset:{metaKey:"charset"},contentSecurityPolicy:{unpack:{entrySeparator:"; ",resolve({key:e,value:t}){return`${Sn(e)} ${t}`}},metaKey:"http-equiv"},contentType:{metaKey:"http-equiv"},defaultStyle:{metaKey:"http-equiv"},fbAppId:mt("fb:app_id"),msapplicationConfig:ua("msapplication-Config"),msapplicationTileColor:ua("msapplication-TileColor"),msapplicationTileImage:ua("msapplication-TileImage"),ogAudioSecureUrl:mt("og:audio:secure_url"),ogAudioUrl:mt("og:audio"),ogImageSecureUrl:mt("og:image:secure_url"),ogImageUrl:mt("og:image"),ogSiteName:mt("og:site_name"),ogVideoSecureUrl:mt("og:video:secure_url"),ogVideoUrl:mt("og:video"),profileFirstName:mt("profile:first_name"),profileLastName:mt("profile:last_name"),profileUsername:mt("profile:username"),refresh:{metaKey:"http-equiv",unpack:{entrySeparator:";",resolve({key:e,value:t}){if(e==="seconds")return`${t}`}}},robots:{unpack:{entrySeparator:", ",resolve({key:e,value:t}){return typeof t=="boolean"?`${Sn(e)}`:`${Sn(e)}:${t}`}}},xUaCompatible:{metaKey:"http-equiv"}},sh=new Set(["og","book","article","profile"]);function ih(e){var r;const t=Sn(e),n=t.indexOf(":");return sh.has(t.substring(0,n))?"property":((r=nc[e])==null?void 0:r.metaKey)||"name"}function ow(e){var t;return((t=nc[e])==null?void 0:t.keyValue)||Sn(e)}function Sn(e){const t=e.replace(/([A-Z])/g,"-$1").toLowerCase(),n=t.indexOf("-"),r=t.substring(0,n);return r==="twitter"||sh.has(r)?e.replace(/([A-Z])/g,":$1").toLowerCase():t}function rl(e){if(Array.isArray(e))return e.map(n=>rl(n));if(typeof e!="object"||Array.isArray(e))return e;const t={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[Sn(n)]=rl(e[n]));return t}function sw(e,t){const n=nc[t];return t==="refresh"?`${e.seconds};url=${e.url}`:oh(rl(e),{keyValueSeparator:"=",entrySeparator:", ",resolve({value:r,key:o}){if(r===null)return"";if(typeof r=="boolean")return`${o}`},...n==null?void 0:n.unpack})}const ah=new Set(["og:image","og:video","og:audio","twitter:image"]);function lh(e){const t={};for(const n in e){if(!Object.prototype.hasOwnProperty.call(e,n))continue;const r=e[n];String(r)!=="false"&&n&&(t[n]=r)}return t}function Hu(e,t){const n=lh(t),r=Sn(e),o=ih(r);if(ah.has(r)){const s={};for(const i in n)Object.prototype.hasOwnProperty.call(n,i)&&(s[`${e}${i==="url"?"":`${i[0].toUpperCase()}${i.slice(1)}`}`]=n[i]);return rc(s).sort((i,a)=>{var l,u;return(((l=i[o])==null?void 0:l.length)||0)-(((u=a[o])==null?void 0:u.length)||0)})}return[{[o]:r,...n}]}function rc(e){const t=[],n={};for(const o in e){if(!Object.prototype.hasOwnProperty.call(e,o))continue;const s=e[o];if(!Array.isArray(s)){if(typeof s=="object"&&s){if(ah.has(Sn(o))){t.push(...Hu(o,s));continue}n[o]=lh(s)}else n[o]=s;continue}for(const i of s)t.push(...typeof i=="string"?rc({[o]:i}):Hu(o,i))}const r=rh(n,{key({key:o}){return ih(o)},value({key:o}){return o==="charset"?"charset":"content"},resolveKeyData({key:o}){return ow(o)},resolveValueData({value:o,key:s}){return o===null?"_null":typeof o=="object"?sw(o,s):typeof o=="number"?o.toString():o}});return[...t,...r].map(o=>(o.content==="_null"&&(o.content=null),o))}function iw(e,t){return e instanceof Promise?e.then(t):t(e)}function ol(e,t,n,r){const o=r||uh(typeof t=="object"&&typeof t!="function"&&!(t instanceof Promise)?{...t}:{[e==="script"||e==="noscript"||e==="style"?"innerHTML":"textContent"]:t},e==="templateParams"||e==="titleTemplate");if(o instanceof Promise)return o.then(i=>ol(e,t,n,i));const s={tag:e,props:o};for(const i of nh){const a=s.props[i]!==void 0?s.props[i]:n[i];a!==void 0&&((!(i==="innerHTML"||i==="textContent"||i==="children")||ew.has(s.tag))&&(s[i==="children"?"innerHTML":i]=a),delete s.props[i])}return s.props.body&&(s.tagPosition="bodyClose",delete s.props.body),s.tag==="script"&&typeof s.innerHTML=="object"&&(s.innerHTML=JSON.stringify(s.innerHTML),s.props.type=s.props.type||"application/json"),Array.isArray(s.props.content)?s.props.content.map(i=>({...s,props:{...s.props,content:i}})):s}function aw(e,t){var r;const n=e==="class"?" ":";";return t&&typeof t=="object"&&!Array.isArray(t)&&(t=Object.entries(t).filter(([,o])=>o).map(([o,s])=>e==="style"?`${o}:${s}`:o)),(r=String(Array.isArray(t)?t.join(n):t))==null?void 0:r.split(n).filter(o=>!!o.trim()).join(n)}function ch(e,t,n,r){for(let o=r;o<n.length;o+=1){const s=n[o];if(s==="class"||s==="style"){e[s]=aw(s,e[s]);continue}if(e[s]instanceof Promise)return e[s].then(i=>(e[s]=i,ch(e,t,n,o)));if(!t&&!nh.has(s)){const i=String(e[s]),a=s.startsWith("data-");i==="true"||i===""?e[s]=a?"true":!0:e[s]||(a&&i==="false"?e[s]="false":delete e[s])}}}function uh(e,t=!1){const n=ch(e,t,Object.keys(e),0);return n instanceof Promise?n.then(()=>e):e}const lw=10;function fh(e,t,n){for(let r=n;r<t.length;r+=1){const o=t[r];if(o instanceof Promise)return o.then(s=>(t[r]=s,fh(e,t,r)));Array.isArray(o)?e.push(...o):e.push(o)}}function cw(e){const t=[],n=e.resolvedInput;for(const o in n){if(!Object.prototype.hasOwnProperty.call(n,o))continue;const s=n[o];if(!(s===void 0||!tw.has(o))){if(Array.isArray(s)){for(const i of s)t.push(ol(o,i,e));continue}t.push(ol(o,s,e))}}if(t.length===0)return[];const r=[];return iw(fh(r,t,0),()=>r.map((o,s)=>(o._e=e._i,e.mode&&(o._m=e.mode),o._p=(e._i<<lw)+s,o)))}const Fu=new Set(["onload","onerror","onabort","onprogress","onloadstart"]),Bu={base:-10,title:10},Uu={critical:-80,high:-10,low:20};function hi(e){const t=e.tagPriority;if(typeof t=="number")return t;let n=100;return e.tag==="meta"?e.props["http-equiv"]==="content-security-policy"?n=-30:e.props.charset?n=-20:e.props.name==="viewport"&&(n=-15):e.tag==="link"&&e.props.rel==="preconnect"?n=20:e.tag in Bu&&(n=Bu[e.tag]),t&&t in Uu?n+Uu[t]:n}const uw=[{prefix:"before:",offset:-1},{prefix:"after:",offset:1}],fw=["name","property","http-equiv"];function dh(e){const{props:t,tag:n}=e;if(nw.has(n))return n;if(n==="link"&&t.rel==="canonical")return"canonical";if(t.charset)return"charset";if(t.id)return`${n}:id:${t.id}`;for(const r of fw)if(t[r]!==void 0)return`${n}:${r}:${t[r]}`;return!1}const Hn="%separator";function dw(e,t,n=!1){var o;let r;if(t==="s"||t==="pageTitle")r=e.pageTitle;else if(t.includes(".")){const s=t.indexOf(".");r=(o=e[t.substring(0,s)])==null?void 0:o[t.substring(s+1)]}else r=e[t];if(r!==void 0)return n?(r||"").replace(/"/g,'\\"'):r||""}const pw=new RegExp(`${Hn}(?:\\s*${Hn})*`,"g");function As(e,t,n,r=!1){if(typeof e!="string"||!e.includes("%"))return e;let o=e;try{o=decodeURI(e)}catch{}const s=o.match(/%\w+(?:\.\w+)?/g);if(!s)return e;const i=e.includes(Hn);return e=e.replace(/%\w+(?:\.\w+)?/g,a=>{if(a===Hn||!s.includes(a))return a;const l=dw(t,a.slice(1),r);return l!==void 0?l:a}).trim(),i&&(e.endsWith(Hn)&&(e=e.slice(0,-Hn.length)),e.startsWith(Hn)&&(e=e.slice(Hn.length)),e=e.replace(pw,n).trim()),e}function zu(e,t){return e==null?t||null:typeof e=="function"?e(t):e}async function ph(e,t={}){const n=t.document||e.resolvedOptions.document;if(!n||!e.dirty)return;const r={shouldRender:!0,tags:[]};if(await e.hooks.callHook("dom:beforeRender",r),!!r.shouldRender)return e._domUpdatePromise||(e._domUpdatePromise=new Promise(async o=>{var f;const s=(await e.resolveTags()).map(d=>({tag:d,id:Fs.has(d.tag)?nl(d):d.tag,shouldRender:!0}));let i=e._dom;if(!i){i={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};const d=new Set;for(const p of["body","head"]){const m=(f=n[p])==null?void 0:f.children;for(const h of m){const y=h.tagName.toLowerCase();if(!Fs.has(y))continue;const x={tag:y,props:await uh(h.getAttributeNames().reduce((w,S)=>({...w,[S]:h.getAttribute(S)}),{})),innerHTML:h.innerHTML},b=dh(x);let g=b,v=1;for(;g&&d.has(g);)g=`${b}:${v++}`;g&&(x._d=g,d.add(g)),i.elMap[h.getAttribute("data-hid")||nl(x)]=h}}}i.pendingSideEffects={...i.sideEffects},i.sideEffects={};function a(d,p,m){const h=`${d}:${p}`;i.sideEffects[h]=m,delete i.pendingSideEffects[h]}function l({id:d,$el:p,tag:m}){const h=m.tag.endsWith("Attrs");if(i.elMap[d]=p,h||(m.textContent&&m.textContent!==p.textContent&&(p.textContent=m.textContent),m.innerHTML&&m.innerHTML!==p.innerHTML&&(p.innerHTML=m.innerHTML),a(d,"el",()=>{var y;(y=i.elMap[d])==null||y.remove(),delete i.elMap[d]})),m._eventHandlers)for(const y in m._eventHandlers)Object.prototype.hasOwnProperty.call(m._eventHandlers,y)&&p.getAttribute(`data-${y}`)!==""&&((m.tag==="bodyAttrs"?n.defaultView:p).addEventListener(y.substring(2),m._eventHandlers[y].bind(p)),p.setAttribute(`data-${y}`,""));for(const y in m.props){if(!Object.prototype.hasOwnProperty.call(m.props,y))continue;const x=m.props[y],b=`attr:${y}`;if(y==="class"){if(!x)continue;for(const g of x.split(" "))h&&a(d,`${b}:${g}`,()=>p.classList.remove(g)),!p.classList.contains(g)&&p.classList.add(g)}else if(y==="style"){if(!x)continue;for(const g of x.split(";")){const v=g.indexOf(":"),w=g.substring(0,v).trim(),S=g.substring(v+1).trim();a(d,`${b}:${w}`,()=>{p.style.removeProperty(w)}),p.style.setProperty(w,S)}}else p.getAttribute(y)!==x&&p.setAttribute(y,x===!0?"":String(x)),h&&a(d,b,()=>p.removeAttribute(y))}}const u=[],c={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const d of s){const{tag:p,shouldRender:m,id:h}=d;if(m){if(p.tag==="title"){n.title=p.textContent;continue}d.$el=d.$el||i.elMap[h],d.$el?l(d):Fs.has(p.tag)&&u.push(d)}}for(const d of u){const p=d.tag.tagPosition||"head";d.$el=n.createElement(d.tag.tag),l(d),c[p]=c[p]||n.createDocumentFragment(),c[p].appendChild(d.$el)}for(const d of s)await e.hooks.callHook("dom:renderTag",d,n,a);c.head&&n.head.appendChild(c.head),c.bodyOpen&&n.body.insertBefore(c.bodyOpen,n.body.firstChild),c.bodyClose&&n.body.appendChild(c.bodyClose);for(const d in i.pendingSideEffects)i.pendingSideEffects[d]();e._dom=i,await e.hooks.callHook("dom:rendered",{renders:s}),o()}).finally(()=>{e._domUpdatePromise=void 0,e.dirty=!1})),e._domUpdatePromise}function hw(e,t={}){const n=t.delayFn||(r=>setTimeout(r,10));return e._domDebouncedUpdatePromise=e._domDebouncedUpdatePromise||new Promise(r=>n(()=>ph(e,t).then(()=>{delete e._domDebouncedUpdatePromise,r()})))}function gw(e){return t=>{var r,o;const n=((o=(r=t.resolvedOptions.document)==null?void 0:r.head.querySelector('script[id="unhead:payload"]'))==null?void 0:o.innerHTML)||!1;return n&&t.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":s=>{hw(s,e)}}}}}const mw=new Set(["templateParams","htmlAttrs","bodyAttrs"]),vw={hooks:{"tag:normalise":({tag:e})=>{e.props.hid&&(e.key=e.props.hid,delete e.props.hid),e.props.vmid&&(e.key=e.props.vmid,delete e.props.vmid),e.props.key&&(e.key=e.props.key,delete e.props.key);const t=dh(e);t&&!t.startsWith("meta:og:")&&!t.startsWith("meta:twitter:")&&delete e.key;const n=t||(e.key?`${e.tag}:${e.key}`:!1);n&&(e._d=n)},"tags:resolve":e=>{const t=Object.create(null);for(const r of e.tags){const o=(r.key?`${r.tag}:${r.key}`:r._d)||nl(r),s=t[o];if(s){let a=r==null?void 0:r.tagDuplicateStrategy;if(!a&&mw.has(r.tag)&&(a="merge"),a==="merge"){const l=s.props;l.style&&r.props.style&&(l.style[l.style.length-1]!==";"&&(l.style+=";"),r.props.style=`${l.style} ${r.props.style}`),l.class&&r.props.class?r.props.class=`${l.class} ${r.props.class}`:l.class&&(r.props.class=l.class),t[o].props={...l,...r.props};continue}else if(r._e===s._e){s._duped=s._duped||[],r._d=`${s._d}:${s._duped.length+1}`,s._duped.push(r);continue}else if(hi(r)>hi(s))continue}if(!(r.innerHTML||r.textContent||Object.keys(r.props).length!==0)&&Fs.has(r.tag)){delete t[o];continue}t[o]=r}const n=[];for(const r in t){const o=t[r],s=o._duped;n.push(o),s&&(delete o._duped,n.push(...s))}e.tags=n,e.tags=e.tags.filter(r=>!(r.tag==="meta"&&(r.props.name||r.props.property)&&!r.props.content))}}},yw=new Set(["script","link","bodyAttrs"]),bw=e=>({hooks:{"tags:resolve":t=>{for(const n of t.tags){if(!yw.has(n.tag))continue;const r=n.props;for(const o in r){if(o[0]!=="o"||o[1]!=="n"||!Object.prototype.hasOwnProperty.call(r,o))continue;const s=r[o];typeof s=="function"&&(e.ssr&&Fu.has(o)?r[o]=`this.dataset.${o}fired = true`:delete r[o],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[o]=s)}e.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||pi(n.props.src||n.props.href))}},"dom:renderTag":({$el:t,tag:n})=>{var o,s;const r=t==null?void 0:t.dataset;if(r)for(const i in r){if(!i.endsWith("fired"))continue;const a=i.slice(0,-5);Fu.has(a)&&((s=(o=n._eventHandlers)==null?void 0:o[a])==null||s.call(t,new Event(a.substring(2))))}}}}),ww=new Set(["link","style","script","noscript"]),_w={hooks:{"tag:normalise":({tag:e})=>{e.key&&ww.has(e.tag)&&(e.props["data-hid"]=e._h=pi(e.key))}}},xw={mode:"server",hooks:{"tags:beforeResolve":e=>{const t={};let n=!1;for(const r of e.tags)r._m!=="server"||r.tag!=="titleTemplate"&&r.tag!=="templateParams"&&r.tag!=="title"||(t[r.tag]=r.tag==="title"||r.tag==="titleTemplate"?r.textContent:r.props,n=!0);n&&e.tags.push({tag:"script",innerHTML:JSON.stringify(t),props:{id:"unhead:payload",type:"application/json"}})}}},kw={hooks:{"tags:resolve":e=>{var t;for(const n of e.tags)if(typeof n.tagPriority=="string")for(const{prefix:r,offset:o}of uw){if(!n.tagPriority.startsWith(r))continue;const s=n.tagPriority.substring(r.length),i=(t=e.tags.find(a=>a._d===s))==null?void 0:t._p;if(i!==void 0){n._p=i+o;break}}e.tags.sort((n,r)=>{const o=hi(n),s=hi(r);return o<s?-1:o>s?1:n._p-r._p})}}},Sw={meta:"content",link:"href",htmlAttrs:"lang"},Ew=["innerHTML","textContent"],Cw=e=>({hooks:{"tags:resolve":t=>{var i;const{tags:n}=t;let r;for(let a=0;a<n.length;a+=1)n[a].tag==="templateParams"&&(r=t.tags.splice(a,1)[0].props,a-=1);const o=r||{},s=o.separator||"|";delete o.separator,o.pageTitle=As(o.pageTitle||((i=n.find(a=>a.tag==="title"))==null?void 0:i.textContent)||"",o,s);for(const a of n){if(a.processTemplateParams===!1)continue;const l=Sw[a.tag];if(l&&typeof a.props[l]=="string")a.props[l]=As(a.props[l],o,s);else if(a.processTemplateParams||a.tag==="titleTemplate"||a.tag==="title")for(const u of Ew)typeof a[u]=="string"&&(a[u]=As(a[u],o,s,a.tag==="script"&&a.props.type.endsWith("json")))}e._templateParams=o,e._separator=s},"tags:afterResolve":({tags:t})=>{let n;for(let r=0;r<t.length;r+=1){const o=t[r];o.tag==="title"&&o.processTemplateParams!==!1&&(n=o)}n!=null&&n.textContent&&(n.textContent=As(n.textContent,e._templateParams,e._separator))}}}),Pw={hooks:{"tags:resolve":e=>{const{tags:t}=e;let n,r;for(let o=0;o<t.length;o+=1){const s=t[o];s.tag==="title"?n=s:s.tag==="titleTemplate"&&(r=s)}if(r&&n){const o=zu(r.textContent,n.textContent);o!==null?n.textContent=o||n.textContent:e.tags.splice(e.tags.indexOf(n),1)}else if(r){const o=zu(r.textContent);o!==null&&(r.textContent=o,r.tag="title",r=void 0)}r&&e.tags.splice(e.tags.indexOf(r),1)}}},Tw={hooks:{"tags:afterResolve":e=>{for(const t of e.tags)typeof t.innerHTML=="string"&&(t.innerHTML&&(t.props.type==="application/ld+json"||t.props.type==="application/json")?t.innerHTML=t.innerHTML.replace(/</g,"\\u003C"):t.innerHTML=t.innerHTML.replace(new RegExp(`</${t.tag}`,"g"),`<\\/${t.tag}`))}}};let hh;function Aw(e={}){const t=Ow(e);return t.use(gw()),hh=t}function Vu(e,t){return!e||e==="server"&&t||e==="client"&&!t}function Ow(e={}){const t=Vp();t.addHooks(e.hooks||{}),e.document=e.document||(rw?document:void 0);const n=!e.document,r=()=>{a.dirty=!0,t.callHook("entries:updated",a)};let o=0,s=[];const i=[],a={plugins:i,dirty:!1,resolvedOptions:e,hooks:t,headEntries(){return s},use(l){const u=typeof l=="function"?l(a):l;(!u.key||!i.some(c=>c.key===u.key))&&(i.push(u),Vu(u.mode,n)&&t.addHooks(u.hooks||{}))},push(l,u){u==null||delete u.head;const c={_i:o++,input:l,...u};return Vu(c.mode,n)&&(s.push(c),r()),{dispose(){s=s.filter(f=>f._i!==c._i),r()},patch(f){for(const d of s)d._i===c._i&&(d.input=c.input=f);r()}}},async resolveTags(){const l={tags:[],entries:[...s]};await t.callHook("entries:resolve",l);for(const u of l.entries){const c=u.resolvedInput||u.input;if(u.resolvedInput=await(u.transform?u.transform(c):c),u.resolvedInput)for(const f of await cw(u)){const d={tag:f,entry:u,resolvedOptions:a.resolvedOptions};await t.callHook("tag:normalise",d),l.tags.push(d.tag)}}return await t.callHook("tags:beforeResolve",l),await t.callHook("tags:resolve",l),await t.callHook("tags:afterResolve",l),l.tags},ssr:n};return[vw,xw,bw,_w,kw,Cw,Pw,Tw,...(e==null?void 0:e.plugins)||[]].forEach(l=>a.use(l)),a.hooks.callHook("init",a),a}function $w(){return hh}const Rw=kp[0]==="3";function Iw(e){return typeof e=="function"?e():E(e)}function gi(e){if(e instanceof Promise||e instanceof Date||e instanceof RegExp)return e;const t=Iw(e);if(!e||!t)return t;if(Array.isArray(t))return t.map(n=>gi(n));if(typeof t=="object"){const n={};for(const r in t)if(Object.prototype.hasOwnProperty.call(t,r)){if(r==="titleTemplate"||r[0]==="o"&&r[1]==="n"){n[r]=E(t[r]);continue}n[r]=gi(t[r])}return n}return t}const Lw={hooks:{"entries:resolve":e=>{for(const t of e.entries)t.resolvedInput=gi(t.input)}}},gh="usehead";function Mw(e){return{install(n){Rw&&(n.config.globalProperties.$unhead=e,n.config.globalProperties.$head=e,n.provide(gh,e))}}.install}function jw(e={}){e.domDelayFn=e.domDelayFn||(n=>er(()=>setTimeout(()=>n(),0)));const t=Aw(e);return t.use(Lw),t.install=Mw(t),t}const sl=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},il="__unhead_injection_handler__";function Dw(e){sl[il]=e}function Nw(){if(il in sl)return sl[il]();const e=Ce(gh);return e||$w()}function us(e,t={}){const n=t.head||Nw();if(n)return n.ssr?n.push(e,t):Hw(n,e,t)}function Hw(e,t,n={}){const r=H(!1),o=H({});Je(()=>{o.value=r.value?{}:gi(t)});const s=e.push(o.value,n);return $e(o,a=>{s.patch(a)}),Ut()&&(is(()=>{s.dispose()}),Bd(()=>{r.value=!0}),Fd(()=>{r.value=!1})),s}function mh(e,t){const{title:n,titleTemplate:r,...o}=e;return us({title:n,titleTemplate:r,_flatMeta:o},{...t,transform(s){const i=rc({...s._flatMeta});return delete s._flatMeta,{...s,meta:i}}})}let Bs,Us;function Fw(){return Bs=$fetch(ec(`builds/meta/${zt().app.buildId}.json`),{responseType:"json"}),Bs.then(e=>{Us=Lb(e.matcher)}).catch(e=>{console.error("[nuxt] Error fetching app manifest.",e)}),Bs}function ji(){return Bs||Fw()}async function oc(e){if(await ji(),!Us)return console.error("[nuxt] Error creating app manifest matcher.",Us),{};try{return Li({},...Us.matchAll(e).reverse())}catch(t){return console.error("[nuxt] Error matching route rules.",t),{}}}async function Wu(e,t={}){const n=await Uw(e,t),r=_e(),o=r._payloadCache=r._payloadCache||{};return n in o?o[n]||null:(o[n]=yh(e).then(s=>s?vh(n).then(i=>i||(delete o[n],null)):(o[n]=null,null)),o[n])}const Bw="_payload.json";async function Uw(e,t={}){const n=new URL(e,"http://localhost");if(n.host!=="localhost"||An(n.pathname,{acceptRelative:!0}))throw new Error("Payload URL must not include hostname: "+e);const r=zt(),o=t.hash||(t.fresh?Date.now():r.app.buildId),s=r.app.cdnURL,i=s&&await yh(e)?s:r.app.baseURL;return ls(i,n.pathname,Bw+(o?`?${o}`:""))}async function vh(e){const t=fetch(e).then(n=>n.text().then(bh));try{return await t}catch(n){console.warn("[nuxt] Cannot load payload ",e,n)}return null}async function yh(e=En().path){if(e=as(e),(await ji()).prerendered.includes(e))return!0;const n=await oc(e);return!!n.prerender&&!n.redirect}let ar=null;async function zw(){var r;if(ar)return ar;const e=document.getElementById("__NUXT_DATA__");if(!e)return{};const t=await bh(e.textContent||""),n=e.dataset.src?await vh(e.dataset.src):void 0;return ar={...t,...n,...window.__NUXT__},(r=ar.config)!=null&&r.public&&(ar.config.public=Bt(ar.config.public)),ar}async function bh(e){return await Jb(e,_e()._payloadRevivers)}function Vw(e,t){_e()._payloadRevivers[e]=t}const wh=[["NuxtError",e=>cs(e)],["EmptyShallowRef",e=>Qt(e==="_"?void 0:e==="0n"?BigInt(0):qo(e))],["EmptyRef",e=>H(e==="_"?void 0:e==="0n"?BigInt(0):qo(e))],["ShallowRef",e=>Qt(e)],["ShallowReactive",e=>kn(e)],["Ref",e=>H(e)],["Reactive",e=>Bt(e)]];wh.push(["Island",({key:e,params:t,result:n})=>{const r=_e();return r.isHydrating||(r.payload.data[e]=r.payload.data[e]||$fetch(`/__nuxt_island/${e}.json`,{responseType:"json",...t?{params:t}:{}}).then(o=>(r.payload.data[e]=o,o))),{html:"",...n}}]);const Ww=it({name:"nuxt:revive-payload:client",order:-30,async setup(e){let t,n;for(const[r,o]of wh)Vw(r,o);Object.assign(e.payload,([t,n]=Ur(()=>e.runWithContext(zw)),t=await t,n(),t)),window.__NUXT__=e.payload}}),qw=[],Kw=it({name:"nuxt:head",enforce:"pre",setup(e){const t=jw({plugins:qw});Dw(()=>_e().vueApp._context.provides.usehead),e.vueApp.use(t);{let n=!0;const r=async()=>{n=!1,await ph(t)};t.hooks.hook("dom:beforeRender",o=>{o.shouldRender=!n}),e.hooks.hook("page:start",()=>{n=!0}),e.hooks.hook("page:finish",()=>{e.isHydrating||r()}),e.hooks.hook("app:error",r),e.hooks.hook("app:suspense:resolve",r)}}});/*! + * vue-router v4.4.5 + * (c) 2024 Eduardo San Martin Morote + * @license MIT + */const Rr=typeof document<"u";function _h(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function Gw(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&_h(e.default)}const Le=Object.assign;function fa(e,t){const n={};for(const r in t){const o=t[r];n[r]=Jt(o)?o.map(e):e(o)}return n}const jo=()=>{},Jt=Array.isArray,xh=/#/g,Yw=/&/g,Qw=/\//g,Xw=/=/g,Jw=/\?/g,kh=/\+/g,Zw=/%5B/g,e_=/%5D/g,Sh=/%5E/g,t_=/%60/g,Eh=/%7B/g,n_=/%7C/g,Ch=/%7D/g,r_=/%20/g;function sc(e){return encodeURI(""+e).replace(n_,"|").replace(Zw,"[").replace(e_,"]")}function o_(e){return sc(e).replace(Eh,"{").replace(Ch,"}").replace(Sh,"^")}function al(e){return sc(e).replace(kh,"%2B").replace(r_,"+").replace(xh,"%23").replace(Yw,"%26").replace(t_,"`").replace(Eh,"{").replace(Ch,"}").replace(Sh,"^")}function s_(e){return al(e).replace(Xw,"%3D")}function i_(e){return sc(e).replace(xh,"%23").replace(Jw,"%3F")}function a_(e){return e==null?"":i_(e).replace(Qw,"%2F")}function Go(e){try{return decodeURIComponent(""+e)}catch{}return""+e}const l_=/\/$/,c_=e=>e.replace(l_,"");function da(e,t,n="/"){let r,o={},s="",i="";const a=t.indexOf("#");let l=t.indexOf("?");return a<l&&a>=0&&(l=-1),l>-1&&(r=t.slice(0,l),s=t.slice(l+1,a>-1?a:t.length),o=e(s)),a>-1&&(r=r||t.slice(0,a),i=t.slice(a,t.length)),r=p_(r??t,n),{fullPath:r+(s&&"?")+s+i,path:r,query:o,hash:Go(i)}}function u_(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function qu(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function f_(e,t,n){const r=t.matched.length-1,o=n.matched.length-1;return r>-1&&r===o&&Yr(t.matched[r],n.matched[o])&&Ph(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Yr(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Ph(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(const n in e)if(!d_(e[n],t[n]))return!1;return!0}function d_(e,t){return Jt(e)?Ku(e,t):Jt(t)?Ku(t,e):e===t}function Ku(e,t){return Jt(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function p_(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),o=r[r.length-1];(o===".."||o===".")&&r.push("");let s=n.length-1,i,a;for(i=0;i<r.length;i++)if(a=r[i],a!==".")if(a==="..")s>1&&s--;else break;return n.slice(0,s).join("/")+"/"+r.slice(i).join("/")}const Wt={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};var Yo;(function(e){e.pop="pop",e.push="push"})(Yo||(Yo={}));var Do;(function(e){e.back="back",e.forward="forward",e.unknown=""})(Do||(Do={}));function h_(e){if(!e)if(Rr){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),c_(e)}const g_=/^[^#]+#/;function m_(e,t){return e.replace(g_,"#")+t}function v_(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const Di=()=>({left:window.scrollX,top:window.scrollY});function y_(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),o=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!o)return;t=v_(o,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Gu(e,t){return(history.state?history.state.position-t:-1)+e}const ll=new Map;function b_(e,t){ll.set(e,t)}function w_(e){const t=ll.get(e);return ll.delete(e),t}let __=()=>location.protocol+"//"+location.host;function Th(e,t){const{pathname:n,search:r,hash:o}=t,s=e.indexOf("#");if(s>-1){let a=o.includes(e.slice(s))?e.slice(s).length:1,l=o.slice(a);return l[0]!=="/"&&(l="/"+l),qu(l,"")}return qu(n,e)+r+o}function x_(e,t,n,r){let o=[],s=[],i=null;const a=({state:d})=>{const p=Th(e,location),m=n.value,h=t.value;let y=0;if(d){if(n.value=p,t.value=d,i&&i===m){i=null;return}y=h?d.position-h.position:0}else r(p);o.forEach(x=>{x(n.value,m,{delta:y,type:Yo.pop,direction:y?y>0?Do.forward:Do.back:Do.unknown})})};function l(){i=n.value}function u(d){o.push(d);const p=()=>{const m=o.indexOf(d);m>-1&&o.splice(m,1)};return s.push(p),p}function c(){const{history:d}=window;d.state&&d.replaceState(Le({},d.state,{scroll:Di()}),"")}function f(){for(const d of s)d();s=[],window.removeEventListener("popstate",a),window.removeEventListener("beforeunload",c)}return window.addEventListener("popstate",a),window.addEventListener("beforeunload",c,{passive:!0}),{pauseListeners:l,listen:u,destroy:f}}function Yu(e,t,n,r=!1,o=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:o?Di():null}}function k_(e){const{history:t,location:n}=window,r={value:Th(e,n)},o={value:t.state};o.value||s(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function s(l,u,c){const f=e.indexOf("#"),d=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+l:__()+e+l;try{t[c?"replaceState":"pushState"](u,"",d),o.value=u}catch(p){console.error(p),n[c?"replace":"assign"](d)}}function i(l,u){const c=Le({},t.state,Yu(o.value.back,l,o.value.forward,!0),u,{position:o.value.position});s(l,c,!0),r.value=l}function a(l,u){const c=Le({},o.value,t.state,{forward:l,scroll:Di()});s(c.current,c,!0);const f=Le({},Yu(r.value,l,null),{position:c.position+1},u);s(l,f,!1),r.value=l}return{location:r,state:o,push:a,replace:i}}function Ah(e){e=h_(e);const t=k_(e),n=x_(e,t.state,t.location,t.replace);function r(s,i=!0){i||n.pauseListeners(),history.go(s)}const o=Le({location:"",base:e,go:r,createHref:m_.bind(null,e)},t,n);return Object.defineProperty(o,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(o,"state",{enumerable:!0,get:()=>t.state.value}),o}function S_(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),Ah(e)}function E_(e){return typeof e=="string"||e&&typeof e=="object"}function Oh(e){return typeof e=="string"||typeof e=="symbol"}const $h=Symbol("");var Qu;(function(e){e[e.aborted=4]="aborted",e[e.cancelled=8]="cancelled",e[e.duplicated=16]="duplicated"})(Qu||(Qu={}));function Qr(e,t){return Le(new Error,{type:e,[$h]:!0},t)}function gn(e,t){return e instanceof Error&&$h in e&&(t==null||!!(e.type&t))}const Xu="[^/]+?",C_={sensitive:!1,strict:!1,start:!0,end:!0},P_=/[.+*?^${}()[\]/\\]/g;function T_(e,t){const n=Le({},C_,t),r=[];let o=n.start?"^":"";const s=[];for(const u of e){const c=u.length?[]:[90];n.strict&&!u.length&&(o+="/");for(let f=0;f<u.length;f++){const d=u[f];let p=40+(n.sensitive?.25:0);if(d.type===0)f||(o+="/"),o+=d.value.replace(P_,"\\$&"),p+=40;else if(d.type===1){const{value:m,repeatable:h,optional:y,regexp:x}=d;s.push({name:m,repeatable:h,optional:y});const b=x||Xu;if(b!==Xu){p+=10;try{new RegExp(`(${b})`)}catch(v){throw new Error(`Invalid custom RegExp for param "${m}" (${b}): `+v.message)}}let g=h?`((?:${b})(?:/(?:${b}))*)`:`(${b})`;f||(g=y&&u.length<2?`(?:/${g})`:"/"+g),y&&(g+="?"),o+=g,p+=20,y&&(p+=-8),h&&(p+=-20),b===".*"&&(p+=-50)}c.push(p)}r.push(c)}if(n.strict&&n.end){const u=r.length-1;r[u][r[u].length-1]+=.7000000000000001}n.strict||(o+="/?"),n.end?o+="$":n.strict&&(o+="(?:/|$)");const i=new RegExp(o,n.sensitive?"":"i");function a(u){const c=u.match(i),f={};if(!c)return null;for(let d=1;d<c.length;d++){const p=c[d]||"",m=s[d-1];f[m.name]=p&&m.repeatable?p.split("/"):p}return f}function l(u){let c="",f=!1;for(const d of e){(!f||!c.endsWith("/"))&&(c+="/"),f=!1;for(const p of d)if(p.type===0)c+=p.value;else if(p.type===1){const{value:m,repeatable:h,optional:y}=p,x=m in u?u[m]:"";if(Jt(x)&&!h)throw new Error(`Provided param "${m}" is an array but it is not repeatable (* or + modifiers)`);const b=Jt(x)?x.join("/"):x;if(!b)if(y)d.length<2&&(c.endsWith("/")?c=c.slice(0,-1):f=!0);else throw new Error(`Missing required param "${m}"`);c+=b}}return c||"/"}return{re:i,score:r,keys:s,parse:a,stringify:l}}function A_(e,t){let n=0;for(;n<e.length&&n<t.length;){const r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===80?-1:1:e.length>t.length?t.length===1&&t[0]===80?1:-1:0}function Rh(e,t){let n=0;const r=e.score,o=t.score;for(;n<r.length&&n<o.length;){const s=A_(r[n],o[n]);if(s)return s;n++}if(Math.abs(o.length-r.length)===1){if(Ju(r))return 1;if(Ju(o))return-1}return o.length-r.length}function Ju(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const O_={type:0,value:""},$_=/[a-zA-Z0-9_]/;function R_(e){if(!e)return[[]];if(e==="/")return[[O_]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${u}": ${p}`)}let n=0,r=n;const o=[];let s;function i(){s&&o.push(s),s=[]}let a=0,l,u="",c="";function f(){u&&(n===0?s.push({type:0,value:u}):n===1||n===2||n===3?(s.length>1&&(l==="*"||l==="+")&&t(`A repeatable param (${u}) must be alone in its segment. eg: '/:ids+.`),s.push({type:1,value:u,regexp:c,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):t("Invalid state to consume buffer"),u="")}function d(){u+=l}for(;a<e.length;){if(l=e[a++],l==="\\"&&n!==2){r=n,n=4;continue}switch(n){case 0:l==="/"?(u&&f(),i()):l===":"?(f(),n=1):d();break;case 4:d(),n=r;break;case 1:l==="("?n=2:$_.test(l)?d():(f(),n=0,l!=="*"&&l!=="?"&&l!=="+"&&a--);break;case 2:l===")"?c[c.length-1]=="\\"?c=c.slice(0,-1)+l:n=3:c+=l;break;case 3:f(),n=0,l!=="*"&&l!=="?"&&l!=="+"&&a--,c="";break;default:t("Unknown state");break}}return n===2&&t(`Unfinished custom RegExp for param "${u}"`),f(),i(),o}function I_(e,t,n){const r=T_(R_(e.path),n),o=Le(r,{record:e,parent:t,children:[],alias:[]});return t&&!o.record.aliasOf==!t.record.aliasOf&&t.children.push(o),o}function L_(e,t){const n=[],r=new Map;t=nf({strict:!1,end:!0,sensitive:!1},t);function o(f){return r.get(f)}function s(f,d,p){const m=!p,h=ef(f);h.aliasOf=p&&p.record;const y=nf(t,f),x=[h];if("alias"in f){const v=typeof f.alias=="string"?[f.alias]:f.alias;for(const w of v)x.push(ef(Le({},h,{components:p?p.record.components:h.components,path:w,aliasOf:p?p.record:h})))}let b,g;for(const v of x){const{path:w}=v;if(d&&w[0]!=="/"){const S=d.record.path,C=S[S.length-1]==="/"?"":"/";v.path=d.record.path+(w&&C+w)}if(b=I_(v,d,y),p?p.alias.push(b):(g=g||b,g!==b&&g.alias.push(b),m&&f.name&&!tf(b)&&i(f.name)),Ih(b)&&l(b),h.children){const S=h.children;for(let C=0;C<S.length;C++)s(S[C],b,p&&p.children[C])}p=p||b}return g?()=>{i(g)}:jo}function i(f){if(Oh(f)){const d=r.get(f);d&&(r.delete(f),n.splice(n.indexOf(d),1),d.children.forEach(i),d.alias.forEach(i))}else{const d=n.indexOf(f);d>-1&&(n.splice(d,1),f.record.name&&r.delete(f.record.name),f.children.forEach(i),f.alias.forEach(i))}}function a(){return n}function l(f){const d=D_(f,n);n.splice(d,0,f),f.record.name&&!tf(f)&&r.set(f.record.name,f)}function u(f,d){let p,m={},h,y;if("name"in f&&f.name){if(p=r.get(f.name),!p)throw Qr(1,{location:f});y=p.record.name,m=Le(Zu(d.params,p.keys.filter(g=>!g.optional).concat(p.parent?p.parent.keys.filter(g=>g.optional):[]).map(g=>g.name)),f.params&&Zu(f.params,p.keys.map(g=>g.name))),h=p.stringify(m)}else if(f.path!=null)h=f.path,p=n.find(g=>g.re.test(h)),p&&(m=p.parse(h),y=p.record.name);else{if(p=d.name?r.get(d.name):n.find(g=>g.re.test(d.path)),!p)throw Qr(1,{location:f,currentLocation:d});y=p.record.name,m=Le({},d.params,f.params),h=p.stringify(m)}const x=[];let b=p;for(;b;)x.unshift(b.record),b=b.parent;return{name:y,path:h,params:m,matched:x,meta:j_(x)}}e.forEach(f=>s(f));function c(){n.length=0,r.clear()}return{addRoute:s,resolve:u,removeRoute:i,clearRoutes:c,getRoutes:a,getRecordMatcher:o}}function Zu(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function ef(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:M_(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function M_(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function tf(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function j_(e){return e.reduce((t,n)=>Le(t,n.meta),{})}function nf(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}function D_(e,t){let n=0,r=t.length;for(;n!==r;){const s=n+r>>1;Rh(e,t[s])<0?r=s:n=s+1}const o=N_(e);return o&&(r=t.lastIndexOf(o,r-1)),r}function N_(e){let t=e;for(;t=t.parent;)if(Ih(t)&&Rh(e,t)===0)return t}function Ih({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function H_(e){const t={};if(e===""||e==="?")return t;const r=(e[0]==="?"?e.slice(1):e).split("&");for(let o=0;o<r.length;++o){const s=r[o].replace(kh," "),i=s.indexOf("="),a=Go(i<0?s:s.slice(0,i)),l=i<0?null:Go(s.slice(i+1));if(a in t){let u=t[a];Jt(u)||(u=t[a]=[u]),u.push(l)}else t[a]=l}return t}function rf(e){let t="";for(let n in e){const r=e[n];if(n=s_(n),r==null){r!==void 0&&(t+=(t.length?"&":"")+n);continue}(Jt(r)?r.map(s=>s&&al(s)):[r&&al(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function F_(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=Jt(r)?r.map(o=>o==null?null:""+o):r==null?r:""+r)}return t}const B_=Symbol(""),of=Symbol(""),ic=Symbol(""),ac=Symbol(""),cl=Symbol("");function ho(){let e=[];function t(r){return e.push(r),()=>{const o=e.indexOf(r);o>-1&&e.splice(o,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Fn(e,t,n,r,o,s=i=>i()){const i=r&&(r.enterCallbacks[o]=r.enterCallbacks[o]||[]);return()=>new Promise((a,l)=>{const u=d=>{d===!1?l(Qr(4,{from:n,to:t})):d instanceof Error?l(d):E_(d)?l(Qr(2,{from:t,to:d})):(i&&r.enterCallbacks[o]===i&&typeof d=="function"&&i.push(d),a())},c=s(()=>e.call(r&&r.instances[o],t,n,u));let f=Promise.resolve(c);e.length<3&&(f=f.then(u)),f.catch(d=>l(d))})}function pa(e,t,n,r,o=s=>s()){const s=[];for(const i of e)for(const a in i.components){let l=i.components[a];if(!(t!=="beforeRouteEnter"&&!i.instances[a]))if(_h(l)){const c=(l.__vccOpts||l)[t];c&&s.push(Fn(c,n,r,i,a,o))}else{let u=l();s.push(()=>u.then(c=>{if(!c)throw new Error(`Couldn't resolve component "${a}" at "${i.path}"`);const f=Gw(c)?c.default:c;i.mods[a]=c,i.components[a]=f;const p=(f.__vccOpts||f)[t];return p&&Fn(p,n,r,i,a,o)()}))}}return s}function sf(e){const t=Ce(ic),n=Ce(ac),r=$(()=>{const l=E(e.to);return t.resolve(l)}),o=$(()=>{const{matched:l}=r.value,{length:u}=l,c=l[u-1],f=n.matched;if(!c||!f.length)return-1;const d=f.findIndex(Yr.bind(null,c));if(d>-1)return d;const p=af(l[u-2]);return u>1&&af(c)===p&&f[f.length-1].path!==p?f.findIndex(Yr.bind(null,l[u-2])):d}),s=$(()=>o.value>-1&&W_(n.params,r.value.params)),i=$(()=>o.value>-1&&o.value===n.matched.length-1&&Ph(n.params,r.value.params));function a(l={}){return V_(l)?t[E(e.replace)?"replace":"push"](E(e.to)).catch(jo):Promise.resolve()}return{route:r,href:$(()=>r.value.href),isActive:s,isExactActive:i,navigate:a}}const U_=ee({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"}},useLink:sf,setup(e,{slots:t}){const n=Bt(sf(e)),{options:r}=Ce(ic),o=$(()=>({[lf(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[lf(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const s=t.default&&t.default(n);return e.custom?s:ve("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:o.value},s)}}}),z_=U_;function V_(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function W_(e,t){for(const n in t){const r=t[n],o=e[n];if(typeof r=="string"){if(r!==o)return!1}else if(!Jt(o)||o.length!==r.length||r.some((s,i)=>s!==o[i]))return!1}return!0}function af(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const lf=(e,t,n)=>e??t??n,q_=ee({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=Ce(cl),o=$(()=>e.route||r.value),s=Ce(of,0),i=$(()=>{let u=E(s);const{matched:c}=o.value;let f;for(;(f=c[u])&&!f.components;)u++;return u}),a=$(()=>o.value.matched[i.value]);Be(of,$(()=>i.value+1)),Be(B_,a),Be(cl,o);const l=H();return $e(()=>[l.value,a.value,e.name],([u,c,f],[d,p,m])=>{c&&(c.instances[f]=u,p&&p!==c&&u&&u===d&&(c.leaveGuards.size||(c.leaveGuards=p.leaveGuards),c.updateGuards.size||(c.updateGuards=p.updateGuards))),u&&c&&(!p||!Yr(c,p)||!d)&&(c.enterCallbacks[f]||[]).forEach(h=>h(u))},{flush:"post"}),()=>{const u=o.value,c=e.name,f=a.value,d=f&&f.components[c];if(!d)return cf(n.default,{Component:d,route:u});const p=f.props[c],m=p?p===!0?u.params:typeof p=="function"?p(u):p:null,y=ve(d,Le({},m,t,{onVnodeUnmounted:x=>{x.component.isUnmounted&&(f.instances[c]=null)},ref:l}));return cf(n.default,{Component:y,route:u})||y}}});function cf(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const Lh=q_;function K_(e){const t=L_(e.routes,e),n=e.parseQuery||H_,r=e.stringifyQuery||rf,o=e.history,s=ho(),i=ho(),a=ho(),l=Qt(Wt);let u=Wt;Rr&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const c=fa.bind(null,L=>""+L),f=fa.bind(null,a_),d=fa.bind(null,Go);function p(L,G){let q,te;return Oh(L)?(q=t.getRecordMatcher(L),te=G):te=L,t.addRoute(te,q)}function m(L){const G=t.getRecordMatcher(L);G&&t.removeRoute(G)}function h(){return t.getRoutes().map(L=>L.record)}function y(L){return!!t.getRecordMatcher(L)}function x(L,G){if(G=Le({},G||l.value),typeof L=="string"){const k=da(n,L,G.path),P=t.resolve({path:k.path},G),j=o.createHref(k.fullPath);return Le(k,P,{params:d(P.params),hash:Go(k.hash),redirectedFrom:void 0,href:j})}let q;if(L.path!=null)q=Le({},L,{path:da(n,L.path,G.path).path});else{const k=Le({},L.params);for(const P in k)k[P]==null&&delete k[P];q=Le({},L,{params:f(k)}),G.params=f(G.params)}const te=t.resolve(q,G),Pe=L.hash||"";te.params=c(d(te.params));const Ne=u_(r,Le({},L,{hash:o_(Pe),path:te.path})),_=o.createHref(Ne);return Le({fullPath:Ne,hash:Pe,query:r===rf?F_(L.query):L.query||{}},te,{redirectedFrom:void 0,href:_})}function b(L){return typeof L=="string"?da(n,L,l.value.path):Le({},L)}function g(L,G){if(u!==L)return Qr(8,{from:G,to:L})}function v(L){return C(L)}function w(L){return v(Le(b(L),{replace:!0}))}function S(L){const G=L.matched[L.matched.length-1];if(G&&G.redirect){const{redirect:q}=G;let te=typeof q=="function"?q(L):q;return typeof te=="string"&&(te=te.includes("?")||te.includes("#")?te=b(te):{path:te},te.params={}),Le({query:L.query,hash:L.hash,params:te.path!=null?{}:L.params},te)}}function C(L,G){const q=u=x(L),te=l.value,Pe=L.state,Ne=L.force,_=L.replace===!0,k=S(q);if(k)return C(Le(b(k),{state:typeof k=="object"?Le({},Pe,k.state):Pe,force:Ne,replace:_}),G||q);const P=q;P.redirectedFrom=G;let j;return!Ne&&f_(r,te,q)&&(j=Qr(16,{to:P,from:te}),fe(te,te,!0,!1)),(j?Promise.resolve(j):T(P,te)).catch(I=>gn(I)?gn(I,2)?I:et(I):X(I,P,te)).then(I=>{if(I){if(gn(I,2))return C(Le({replace:_},b(I.to),{state:typeof I.to=="object"?Le({},Pe,I.to.state):Pe,force:Ne}),G||P)}else I=O(P,te,!0,_,Pe);return U(P,te,I),I})}function R(L,G){const q=g(L,G);return q?Promise.reject(q):Promise.resolve()}function A(L){const G=De.values().next().value;return G&&typeof G.runWithContext=="function"?G.runWithContext(L):L()}function T(L,G){let q;const[te,Pe,Ne]=G_(L,G);q=pa(te.reverse(),"beforeRouteLeave",L,G);for(const k of te)k.leaveGuards.forEach(P=>{q.push(Fn(P,L,G))});const _=R.bind(null,L,G);return q.push(_),Ke(q).then(()=>{q=[];for(const k of s.list())q.push(Fn(k,L,G));return q.push(_),Ke(q)}).then(()=>{q=pa(Pe,"beforeRouteUpdate",L,G);for(const k of Pe)k.updateGuards.forEach(P=>{q.push(Fn(P,L,G))});return q.push(_),Ke(q)}).then(()=>{q=[];for(const k of Ne)if(k.beforeEnter)if(Jt(k.beforeEnter))for(const P of k.beforeEnter)q.push(Fn(P,L,G));else q.push(Fn(k.beforeEnter,L,G));return q.push(_),Ke(q)}).then(()=>(L.matched.forEach(k=>k.enterCallbacks={}),q=pa(Ne,"beforeRouteEnter",L,G,A),q.push(_),Ke(q))).then(()=>{q=[];for(const k of i.list())q.push(Fn(k,L,G));return q.push(_),Ke(q)}).catch(k=>gn(k,8)?k:Promise.reject(k))}function U(L,G,q){a.list().forEach(te=>A(()=>te(L,G,q)))}function O(L,G,q,te,Pe){const Ne=g(L,G);if(Ne)return Ne;const _=G===Wt,k=Rr?history.state:{};q&&(te||_?o.replace(L.fullPath,Le({scroll:_&&k&&k.scroll},Pe)):o.push(L.fullPath,Pe)),l.value=L,fe(L,G,q,_),et()}let F;function le(){F||(F=o.listen((L,G,q)=>{if(!ct.listening)return;const te=x(L),Pe=S(te);if(Pe){C(Le(Pe,{replace:!0}),te).catch(jo);return}u=te;const Ne=l.value;Rr&&b_(Gu(Ne.fullPath,q.delta),Di()),T(te,Ne).catch(_=>gn(_,12)?_:gn(_,2)?(C(_.to,te).then(k=>{gn(k,20)&&!q.delta&&q.type===Yo.pop&&o.go(-1,!1)}).catch(jo),Promise.reject()):(q.delta&&o.go(-q.delta,!1),X(_,te,Ne))).then(_=>{_=_||O(te,Ne,!1),_&&(q.delta&&!gn(_,8)?o.go(-q.delta,!1):q.type===Yo.pop&&gn(_,20)&&o.go(-1,!1)),U(te,Ne,_)}).catch(jo)}))}let pe=ho(),B=ho(),Z;function X(L,G,q){et(L);const te=B.list();return te.length?te.forEach(Pe=>Pe(L,G,q)):console.error(L),Promise.reject(L)}function Ee(){return Z&&l.value!==Wt?Promise.resolve():new Promise((L,G)=>{pe.add([L,G])})}function et(L){return Z||(Z=!L,le(),pe.list().forEach(([G,q])=>L?q(L):G()),pe.reset()),L}function fe(L,G,q,te){const{scrollBehavior:Pe}=e;if(!Rr||!Pe)return Promise.resolve();const Ne=!q&&w_(Gu(L.fullPath,0))||(te||!q)&&history.state&&history.state.scroll||null;return er().then(()=>Pe(L,G,Ne)).then(_=>_&&y_(_)).catch(_=>X(_,L,G))}const ye=L=>o.go(L);let qe;const De=new Set,ct={currentRoute:l,listening:!0,addRoute:p,removeRoute:m,clearRoutes:t.clearRoutes,hasRoute:y,getRoutes:h,resolve:x,options:e,push:v,replace:w,go:ye,back:()=>ye(-1),forward:()=>ye(1),beforeEach:s.add,beforeResolve:i.add,afterEach:a.add,onError:B.add,isReady:Ee,install(L){const G=this;L.component("RouterLink",z_),L.component("RouterView",Lh),L.config.globalProperties.$router=G,Object.defineProperty(L.config.globalProperties,"$route",{enumerable:!0,get:()=>E(l)}),Rr&&!qe&&l.value===Wt&&(qe=!0,v(o.location).catch(Pe=>{}));const q={};for(const Pe in Wt)Object.defineProperty(q,Pe,{get:()=>l.value[Pe],enumerable:!0});L.provide(ic,G),L.provide(ac,kn(q)),L.provide(cl,l);const te=L.unmount;De.add(L),L.unmount=function(){De.delete(L),De.size<1&&(u=Wt,F&&F(),F=null,l.value=Wt,qe=!1,Z=!1),te()}}};function Ke(L){return L.reduce((G,q)=>G.then(()=>A(q)),Promise.resolve())}return ct}function G_(e,t){const n=[],r=[],o=[],s=Math.max(t.matched.length,e.matched.length);for(let i=0;i<s;i++){const a=t.matched[i];a&&(e.matched.find(u=>Yr(u,a))?r.push(a):n.push(a));const l=e.matched[i];l&&(t.matched.find(u=>Yr(u,l))||o.push(l))}return[n,r,o]}function Y_(e){return Ce(ac)}const Q_=/(:\w+)\([^)]+\)/g,X_=/(:\w+)[?+*]/g,J_=/:\w+/g,Z_=(e,t)=>t.path.replace(Q_,"$1").replace(X_,"$1").replace(J_,n=>{var r;return((r=e.params[n.slice(1)])==null?void 0:r.toString())||""}),ul=(e,t)=>{const n=e.route.matched.find(o=>{var s;return((s=o.components)==null?void 0:s.default)===e.Component.type}),r=t??(n==null?void 0:n.meta.key)??(n&&Z_(e.route,n));return typeof r=="function"?r(e.route):r},e1=(e,t)=>({default:()=>e?ve(Ev,e===!0?{}:e,t):t});function lc(e){return Array.isArray(e)?e:[e]}const t1="modulepreload",n1=function(e,t){return new URL(e,t).href},uf={},oe=function(t,n,r){let o=Promise.resolve();if(n&&n.length>0){const i=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),l=(a==null?void 0:a.nonce)||(a==null?void 0:a.getAttribute("nonce"));o=Promise.allSettled(n.map(u=>{if(u=n1(u,r),u in uf)return;uf[u]=!0;const c=u.endsWith(".css"),f=c?'[rel="stylesheet"]':"";if(!!r)for(let m=i.length-1;m>=0;m--){const h=i[m];if(h.href===u&&(!c||h.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${u}"]${f}`))return;const p=document.createElement("link");if(p.rel=c?"stylesheet":t1,c||(p.as="script"),p.crossOrigin="",p.href=u,l&&p.setAttribute("nonce",l),document.head.appendChild(p),c)return new Promise((m,h)=>{p.addEventListener("load",m),p.addEventListener("error",()=>h(new Error(`Unable to preload CSS for ${u}`)))})}))}function s(i){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=i,window.dispatchEvent(a),!a.defaultPrevented)throw i}return o.then(i=>{for(const a of i||[])a.status==="rejected"&&s(a.reason);return t().catch(s)})},r1={layout:"docs"},ha=[{name:"slug",path:"/:slug(.*)*",meta:r1||{},component:()=>oe(()=>import("./i3M2S4r6.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url)},{name:"index",path:"/",component:()=>oe(()=>import("./DY7OrFLh.js").then(e=>e.i),__vite__mapDeps([5,3,4,6,7,8]),import.meta.url)}],Mh=(e,t,n)=>(t=t===!0?{}:t,{default:()=>{var r;return t?ve(e,t,n):(r=n.default)==null?void 0:r.call(n)}}),o1=/(:\w+)\([^)]+\)/g,s1=/(:\w+)[?+*]/g,i1=/:\w+/g;function ff(e){const t=(e==null?void 0:e.meta.key)??e.path.replace(o1,"$1").replace(s1,"$1").replace(i1,n=>{var r;return((r=e.params[n.slice(1)])==null?void 0:r.toString())||""});return typeof t=="function"?t(e):t}function a1(e,t){return e===t||t===Wt?!1:ff(e)!==ff(t)?!0:!e.matched.every((r,o)=>{var s,i;return r.components&&r.components.default===((i=(s=t.matched[o])==null?void 0:s.components)==null?void 0:i.default)})}const l1={scrollBehavior(e,t,n){var u;const r=_e(),o=((u=gt().options)==null?void 0:u.scrollBehaviorType)??"auto";let s=n||void 0;const i=typeof e.meta.scrollToTop=="function"?e.meta.scrollToTop(e,t):e.meta.scrollToTop;if(!s&&t&&e&&i!==!1&&a1(e,t)&&(s={left:0,top:0}),e.path===t.path)return t.hash&&!e.hash?{left:0,top:0}:e.hash?{el:e.hash,top:df(e.hash),behavior:o}:!1;const a=c=>!!(c.meta.pageTransition??Ya),l=a(t)&&a(e)?"page:transition:finish":"page:finish";return new Promise(c=>{r.hooks.hookOnce(l,async()=>{await new Promise(f=>setTimeout(f,0)),e.hash&&(s={el:e.hash,top:df(e.hash),behavior:o}),c(s)})})}};function df(e){try{const t=document.querySelector(e);if(t)return(Number.parseFloat(getComputedStyle(t).scrollMarginTop)||0)+(Number.parseFloat(getComputedStyle(document.documentElement).scrollPaddingTop)||0)}catch{}return 0}function pf(e){const t=document.querySelector(e);if(t){const n=Number.parseFloat(getComputedStyle(t).scrollMarginTop);return{el:e,behavior:"smooth",top:n}}}const c1={scrollBehavior(e,t,n){const r=_e();if(!(history.state&&history.state.stop))return history.state&&history.state.smooth?{el:history.state.smooth,behavior:"smooth"}:n?new Promise(o=>{r.hooks.hookOnce("page:finish",()=>{setTimeout(()=>o(n),50)})}):e.hash?new Promise(o=>{e.path===t.path?setTimeout(()=>o(pf(e.hash)),50):r.hooks.hookOnce("page:finish",()=>{setTimeout(()=>o(pf(e.hash)),50)})}):new Promise(o=>{r.hooks.hookOnce("page:finish",()=>{setTimeout(()=>o({top:0}),50)})})}},u1={hashMode:!1,scrollBehaviorType:"auto"},Mt={...u1,...l1,...c1},f1=async e=>{var l;let t,n;if(!((l=e.meta)!=null&&l.validate))return;const r=_e(),o=gt(),s=([t,n]=Ur(()=>Promise.resolve(e.meta.validate(e))),t=await t,n(),t);if(s===!0)return;const i=cs({statusCode:s&&s.statusCode||404,statusMessage:s&&s.statusMessage||`Page Not Found: ${e.fullPath}`,data:{path:e.fullPath}}),a=o.beforeResolve(u=>{if(a(),u===e){const c=o.afterEach(async()=>{c(),await r.runWithContext(()=>jr(i)),window==null||window.history.pushState({},"",e.fullPath)});return!1}})},d1=async e=>{let t,n;const r=([t,n]=Ur(()=>oc(e.path)),t=await t,n(),t);if(r.redirect)return An(r.redirect,{acceptRelative:!0})?(window.location.href=r.redirect,!1):r.redirect},p1=[f1,d1],No={};function h1(e,t,n){const{pathname:r,search:o,hash:s}=t,i=e.indexOf("#");if(i>-1){const u=s.includes(e.slice(i))?e.slice(i).length:1;let c=s.slice(u);return c[0]!=="/"&&(c="/"+c),Cu(c,"")}const a=Cu(r,e),l=!n||k0(a,n,{trailingSlash:!0})?a:n;return l+(l.includes("?")?"":o)+s}const g1=it({name:"nuxt:router",enforce:"pre",async setup(e){var y;let t,n,r=zt().app.baseURL;Mt.hashMode&&!r.includes("#")&&(r+="#");const o=((y=Mt.history)==null?void 0:y.call(Mt,r))??(Mt.hashMode?S_(r):Ah(r)),s=Mt.routes?([t,n]=Ur(()=>Mt.routes(ha)),t=await t,n(),t??ha):ha;let i;const a=K_({...Mt,scrollBehavior:(x,b,g)=>{if(b===Wt){i=g;return}if(Mt.scrollBehavior){if(a.options.scrollBehavior=Mt.scrollBehavior,"scrollRestoration"in window.history){const v=a.beforeEach(()=>{v(),window.history.scrollRestoration="manual"})}return Mt.scrollBehavior(x,Wt,i||g)}},history:o,routes:s});"scrollRestoration"in window.history&&(window.history.scrollRestoration="auto"),e.vueApp.use(a);const l=Qt(a.currentRoute.value);a.afterEach((x,b)=>{l.value=b}),Object.defineProperty(e.vueApp.config.globalProperties,"previousRoute",{get:()=>l.value});const u=h1(r,window.location,e.payload.path),c=Qt(a.currentRoute.value),f=()=>{c.value=a.currentRoute.value};e.hook("page:finish",f),a.afterEach((x,b)=>{var g,v,w,S;((v=(g=x.matched[0])==null?void 0:g.components)==null?void 0:v.default)===((S=(w=b.matched[0])==null?void 0:w.components)==null?void 0:S.default)&&f()});const d={};for(const x in c.value)Object.defineProperty(d,x,{get:()=>c.value[x],enumerable:!0});e._route=kn(d),e._middleware=e._middleware||{global:[],named:{}};const p=Mi();a.afterEach(async(x,b,g)=>{delete e._processingMiddleware,!e.isHydrating&&p.value&&await e.runWithContext(th),g&&await e.callHook("page:loading:end")});try{[t,n]=Ur(()=>a.isReady()),await t,n()}catch(x){[t,n]=Ur(()=>e.runWithContext(()=>jr(x))),await t,n()}const m=u!==a.currentRoute.value.fullPath?a.resolve(u):a.currentRoute.value;f();const h=e.payload.state._layout;return a.beforeEach(async(x,b)=>{var g;await e.callHook("page:loading:start"),x.meta=Bt(x.meta),e.isHydrating&&h&&!Gn(x.meta.layout)&&(x.meta.layout=h),e._processingMiddleware=!0;{const v=new Set([...p1,...e._middleware.global]);for(const w of x.matched){const S=w.meta.middleware;if(S)for(const C of lc(S))v.add(C)}{const w=await e.runWithContext(()=>oc(x.path));if(w.appMiddleware)for(const S in w.appMiddleware)w.appMiddleware[S]?v.add(S):v.delete(S)}for(const w of v){const S=typeof w=="string"?e._middleware.named[w]||await((g=No[w])==null?void 0:g.call(No).then(R=>R.default||R)):w;if(!S)throw new Error(`Unknown route middleware: '${w}'.`);const C=await e.runWithContext(()=>S(x,b));if(!e.payload.serverRendered&&e.isHydrating&&(C===!1||C instanceof Error)){const R=C||Za({statusCode:404,statusMessage:`Page Not Found: ${u}`});return await e.runWithContext(()=>jr(R)),!1}if(C!==!0&&(C||C===!1))return C}}}),a.onError(async()=>{delete e._processingMiddleware,await e.callHook("page:loading:end")}),a.afterEach(async(x,b)=>{x.matched.length===0&&await e.runWithContext(()=>jr(Za({statusCode:404,fatal:!1,statusMessage:`Page not found: ${x.fullPath}`,data:{path:x.fullPath}})))}),e.hooks.hookOnce("app:created",async()=>{try{"name"in m&&(m.name=void 0),await a.replace({...m,force:!0}),a.options.scrollBehavior=Mt.scrollBehavior}catch(x){await e.runWithContext(()=>jr(x))}}),{provide:{router:a}}}}),fl=globalThis.requestIdleCallback||(e=>{const t=Date.now(),n={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))};return setTimeout(()=>{e(n)},1)}),m1=globalThis.cancelIdleCallback||(e=>{clearTimeout(e)}),Ni=e=>{const t=_e();t.isHydrating?t.hooks.hookOnce("app:suspense:resolve",()=>{fl(()=>e())}):fl(()=>e())},v1=e=>e==="defer"||e===!1;function cc(...e){var h;const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);let[n,r,o={}]=e;if(typeof n!="string")throw new TypeError("[nuxt] [asyncData] key must be a string.");if(typeof r!="function")throw new TypeError("[nuxt] [asyncData] handler must be a function.");const s=_e(),i=r,a=()=>Lr.value,l=()=>s.isHydrating?s.payload.data[n]:s.static.data[n];o.server=o.server??!0,o.default=o.default??a,o.getCachedData=o.getCachedData??l,o.lazy=o.lazy??!1,o.immediate=o.immediate??!0,o.deep=o.deep??Lr.deep,o.dedupe=o.dedupe??"cancel";const u=o.getCachedData(n,s),c=u!=null;if(!s._asyncData[n]||!o.immediate){(h=s.payload._errors)[n]??(h[n]=Lr.errorValue);const y=o.deep?H:Qt;s._asyncData[n]={data:y(c?u:o.default()),pending:H(!c),error:xe(s.payload._errors,n),status:H("idle"),_default:o.default}}const f={...s._asyncData[n]};delete f._default,f.refresh=f.execute=(y={})=>{if(s._asyncDataPromises[n]){if(v1(y.dedupe??o.dedupe))return s._asyncDataPromises[n];s._asyncDataPromises[n].cancelled=!0}if(y._initial||s.isHydrating&&y._initial!==!1){const b=y._initial?u:o.getCachedData(n,s);if(b!=null)return Promise.resolve(b)}f.pending.value=!0,f.status.value="pending";const x=new Promise((b,g)=>{try{b(i(s))}catch(v){g(v)}}).then(async b=>{if(x.cancelled)return s._asyncDataPromises[n];let g=b;o.transform&&(g=await o.transform(b)),o.pick&&(g=b1(g,o.pick)),s.payload.data[n]=g,f.data.value=g,f.error.value=Lr.errorValue,f.status.value="success"}).catch(b=>{if(x.cancelled)return s._asyncDataPromises[n];f.error.value=cs(b),f.data.value=E(o.default()),f.status.value="error"}).finally(()=>{x.cancelled||(f.pending.value=!1,delete s._asyncDataPromises[n])});return s._asyncDataPromises[n]=x,s._asyncDataPromises[n]},f.clear=()=>y1(s,n);const d=()=>f.refresh({_initial:!0}),p=o.server!==!1&&s.payload.serverRendered;{const y=Ut();if(y&&!y._nuxtOnBeforeMountCbs){y._nuxtOnBeforeMountCbs=[];const g=y._nuxtOnBeforeMountCbs;Kl(()=>{g.forEach(v=>{v()}),g.splice(0,g.length)}),ot(()=>g.splice(0,g.length))}p&&s.isHydrating&&(f.error.value||u!=null)?(f.pending.value=!1,f.status.value=f.error.value?"error":"success"):y&&(s.payload.serverRendered&&s.isHydrating||o.lazy)&&o.immediate?y._nuxtOnBeforeMountCbs.push(d):o.immediate&&d();const x=Pr();if(o.watch){const g=$e(o.watch,()=>f.refresh());x&&_r(g)}const b=s.hook("app:data:refresh",async g=>{(!g||g.includes(n))&&await f.refresh()});x&&_r(b)}const m=Promise.resolve(s._asyncDataPromises[n]).then(()=>f);return Object.assign(m,f),m}function y1(e,t){t in e.payload.data&&(e.payload.data[t]=void 0),t in e.payload._errors&&(e.payload._errors[t]=Lr.errorValue),e._asyncData[t]&&(e._asyncData[t].data.value=e._asyncData[t]._default(),e._asyncData[t].error.value=Lr.errorValue,e._asyncData[t].pending.value=!1,e._asyncData[t].status.value="idle"),t in e._asyncDataPromises&&(e._asyncDataPromises[t]&&(e._asyncDataPromises[t].cancelled=!0),e._asyncDataPromises[t]=void 0)}function b1(e,t){const n={};for(const r of t)n[r]=e[r];return n}const w1="$s";function io(...e){const t=typeof e[e.length-1]=="string"?e.pop():void 0;typeof e[0]!="string"&&e.unshift(t);const[n,r]=e;if(!n||typeof n!="string")throw new TypeError("[nuxt] [useState] key must be a string: "+n);if(r!==void 0&&typeof r!="function")throw new Error("[nuxt] [useState] init must be a function: "+r);const o=w1+n,s=_e(),i=xe(s.payload.state,o);if(i.value===void 0&&r){const a=r();if(Ye(a))return s.payload.state[o]=a,a;i.value=a}return i}function _1(e,t,n){const[r={},o]=typeof t=="string"?[{},t]:[t,n],s=$(()=>ln(e)),i=r.key||Ko([o,typeof s.value=="string"?s.value:"",...x1(r)]);if(!i||typeof i!="string")throw new TypeError("[nuxt] [useFetch] key must be a string: "+i);const a=i===o?"$f"+i:i;if(!r.baseURL&&typeof s.value=="string"&&s.value[0]==="/"&&s.value[1]==="/")throw new Error('[nuxt] [useFetch] the request URL must not start with "//".');const{server:l,lazy:u,default:c,transform:f,pick:d,watch:p,immediate:m,getCachedData:h,deep:y,dedupe:x,...b}=r,g=Bt({...ob,...b,cache:typeof r.cache=="boolean"?void 0:r.cache}),v={server:l,lazy:u,default:c,transform:f,pick:d,immediate:m,getCachedData:h,deep:y,dedupe:x,watch:p===!1?[]:[g,s,...p||[]]};let w;return cc(a,()=>{var T;(T=w==null?void 0:w.abort)==null||T.call(w,new DOMException("Request aborted as another request to the same endpoint was initiated.","AbortError")),w=typeof AbortController<"u"?new AbortController:{};const C=ln(r.timeout);let R;return C&&(R=setTimeout(()=>w.abort(new DOMException("Request aborted due to timeout.","AbortError")),C),w.signal.onabort=()=>clearTimeout(R)),(r.$fetch||globalThis.$fetch)(s.value,{signal:w.signal,...g}).finally(()=>{clearTimeout(R)})},v)}function jh(e,t,n){const[r={},o]=typeof t=="string"?[{},t]:[t,n];return _1(e,{...r,lazy:!0},o)}function x1(e){var n;const t=[((n=ln(e.method))==null?void 0:n.toUpperCase())||"GET",ln(e.baseURL)];for(const r of[e.params||e.query]){const o=ln(r);if(!o)continue;const s={};for(const[i,a]of Object.entries(o))s[ln(i)]=ln(a);t.push(s)}return t}function qt(e){if(typeof e!="object")return e;var t,n,r=Object.prototype.toString.call(e);if(r==="[object Object]"){if(e.constructor!==Object&&typeof e.constructor=="function"){n=new e.constructor;for(t in e)e.hasOwnProperty(t)&&n[t]!==e[t]&&(n[t]=qt(e[t]))}else{n={};for(t in e)t==="__proto__"?Object.defineProperty(n,t,{value:qt(e[t]),configurable:!0,enumerable:!0,writable:!0}):n[t]=qt(e[t])}return n}if(r==="[object Array]"){for(t=e.length,n=Array(t);t--;)n[t]=qt(e[t]);return n}return r==="[object Set]"?(n=new Set,e.forEach(function(o){n.add(qt(o))}),n):r==="[object Map]"?(n=new Map,e.forEach(function(o,s){n.set(qt(s),qt(o))}),n):r==="[object Date]"?new Date(+e):r==="[object RegExp]"?(n=new RegExp(e.source,e.flags),n.lastIndex=e.lastIndex,n):r==="[object DataView]"?new e.constructor(qt(e.buffer)):r==="[object ArrayBuffer]"?e.slice(0):r.slice(-6)==="Array]"?new e.constructor(e):e}const k1={path:"/",watch:!0,decode:e=>qo(decodeURIComponent(e)),encode:e=>encodeURIComponent(typeof e=="string"?e:JSON.stringify(e))},Os=window.cookieStore;function zs(e,t){var l;const n={...k1,...t};n.filter??(n.filter=u=>u===e);const r=hf(n)||{};let o;n.maxAge!==void 0?o=n.maxAge*1e3:n.expires&&(o=n.expires.getTime()-Date.now());const s=o!==void 0&&o<=0,i=qt(s?void 0:r[e]??((l=n.default)==null?void 0:l.call(n))),a=o&&!s?C1(i,o,n.watch&&n.watch!=="shallow"):H(i);{let u=null;try{!Os&&typeof BroadcastChannel<"u"&&(u=new BroadcastChannel(`nuxt:cookies:${e}`))}catch{}const c=()=>{n.readonly||Yp(a.value,r[e])||(E1(e,a.value,n),r[e]=qt(a.value),u==null||u.postMessage({value:n.encode(a.value)}))},f=m=>{var y;const h=m.refresh?(y=hf(n))==null?void 0:y[e]:n.decode(m.value);d=!0,a.value=h,r[e]=qt(h),er(()=>{d=!1})};let d=!1;const p=!!Pr();if(p&&_r(()=>{d=!0,c(),u==null||u.close()}),Os){const m=h=>{const y=h.changed.find(b=>b.name===e),x=h.deleted.find(b=>b.name===e);y&&f({value:y.value}),x&&f({value:null})};Os.addEventListener("change",m),p&&_r(()=>Os.removeEventListener("change",m))}else u&&(u.onmessage=({data:m})=>f(m));n.watch?$e(a,()=>{d||c()},{deep:n.watch!=="shallow"}):c()}return a}function hf(e={}){return pb(document.cookie,e)}function S1(e,t,n={}){return t==null?Iu(e,t,{...n,maxAge:-1}):Iu(e,t,n)}function E1(e,t,n={}){document.cookie=S1(e,t,n)}const gf=2147483647;function C1(e,t,n){let r,o,s=0;const i=n?H(e):{value:e};return Pr()&&_r(()=>{o==null||o(),clearTimeout(r)}),rv((a,l)=>{n&&(o=$e(i,l));function u(){s=0,clearTimeout(r);const c=t-s,f=c<gf?c:gf;r=setTimeout(()=>{if(s+=f,s<t)return u();i.value=void 0,l()},f)}return{get(){return a(),i.value},set(c){u(),i.value=c,l()}}})}async function Dh(e,t=gt()){const{path:n,matched:r}=t.resolve(e);if(!r.length||(t._routePreloaded||(t._routePreloaded=new Set),t._routePreloaded.has(n)))return;const o=t._preloadPromises=t._preloadPromises||[];if(o.length>4)return Promise.all(o).then(()=>Dh(e,t));t._routePreloaded.add(n);const s=r.map(i=>{var a;return(a=i.components)==null?void 0:a.default}).filter(i=>typeof i=="function");for(const i of s){const a=Promise.resolve(i()).catch(()=>{}).finally(()=>o.splice(o.indexOf(a)));o.push(a)}await Promise.all(o)}function P1(e={}){const t=e.path||window.location.pathname;let n={};try{n=qo(sessionStorage.getItem("nuxt:reload")||"{}")}catch{}if(e.force||(n==null?void 0:n.path)!==t||(n==null?void 0:n.expires)<Date.now()){try{sessionStorage.setItem("nuxt:reload",JSON.stringify({path:t,expires:Date.now()+(e.ttl??1e4)}))}catch{}if(e.persistState)try{sessionStorage.setItem("nuxt:reload:state",JSON.stringify({state:_e().payload.state}))}catch{}window.location.pathname!==t?window.location.href=t:window.location.reload()}}const T1=(...e)=>e.find(t=>t!==void 0);function A1(e){const t=e.componentName||"NuxtLink";function n(o,s){if(!o||e.trailingSlash!=="append"&&e.trailingSlash!=="remove")return o;if(typeof o=="string")return mf(o,e.trailingSlash);const i="path"in o&&o.path!==void 0?o.path:s(o).path;return{...o,name:void 0,path:mf(i,e.trailingSlash)}}function r(o){const s=gt(),i=zt(),a=$(()=>!!o.target&&o.target!=="_self"),l=$(()=>{const h=o.to||o.href||"";return typeof h=="string"&&An(h,{acceptRelative:!0})}),u=qn("RouterLink"),c=u&&typeof u!="string"?u.useLink:void 0,f=$(()=>{if(o.external)return!0;const h=o.to||o.href||"";return typeof h=="object"?!1:h===""||l.value}),d=$(()=>{const h=o.to||o.href||"";return f.value?h:n(h,s.resolve)}),p=f.value||c==null?void 0:c({...o,to:d}),m=$(()=>{var h;if(!d.value||l.value)return d.value;if(f.value){const y=typeof d.value=="object"&&"path"in d.value?tl(d.value):d.value,x=typeof y=="object"?s.resolve(y).href:y;return n(x,s.resolve)}return typeof d.value=="object"?((h=s.resolve(d.value))==null?void 0:h.href)??null:n(ls(i.app.baseURL,d.value),s.resolve)});return{to:d,hasTarget:a,isAbsoluteUrl:l,isExternal:f,href:m,isActive:(p==null?void 0:p.isActive)??$(()=>d.value===s.currentRoute.value.path),isExactActive:(p==null?void 0:p.isExactActive)??$(()=>d.value===s.currentRoute.value.path),route:(p==null?void 0:p.route)??$(()=>s.resolve(d.value)),async navigate(){await Ub(m.value,{replace:o.replace,external:f.value||a.value})}}}return ee({name:t,props:{to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},prefetchOn:{type:[String,Object],default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1},custom:{type:Boolean,default:void 0,required:!1}},useLink:r,setup(o,{slots:s}){const i=gt(),{to:a,href:l,navigate:u,isExternal:c,hasTarget:f,isAbsoluteUrl:d}=r(o),p=H(!1),m=H(null),h=b=>{var g;m.value=o.custom?(g=b==null?void 0:b.$el)==null?void 0:g.nextElementSibling:b==null?void 0:b.$el};function y(b){var g,v;return!p.value&&(typeof o.prefetchOn=="string"?o.prefetchOn===b:((g=o.prefetchOn)==null?void 0:g[b])??((v=e.prefetchOn)==null?void 0:v[b]))&&(o.prefetch??e.prefetch)!==!1&&o.noPrefetch!==!0&&o.target!=="_blank"&&!R1()}async function x(b=_e()){if(p.value)return;p.value=!0;const g=typeof a.value=="string"?a.value:c.value?tl(a.value):i.resolve(a.value).fullPath,v=c.value?new URL(g,window.location.href).href:g;await Promise.all([b.hooks.callHook("link:prefetch",v).catch(()=>{}),!c.value&&!f.value&&Dh(a.value,i).catch(()=>{})])}if(y("visibility")){const b=_e();let g,v=null;Me(()=>{const w=O1();Ni(()=>{g=fl(()=>{var S;(S=m==null?void 0:m.value)!=null&&S.tagName&&(v=w.observe(m.value,async()=>{v==null||v(),v=null,await x(b)}))})})}),is(()=>{g&&m1(g),v==null||v(),v=null})}return()=>{var v;if(!c.value&&!f.value){const w={ref:h,to:a.value,activeClass:o.activeClass||e.activeClass,exactActiveClass:o.exactActiveClass||e.exactActiveClass,replace:o.replace,ariaCurrentValue:o.ariaCurrentValue,custom:o.custom};return o.custom||(y("interaction")&&(w.onPointerenter=x.bind(null,void 0),w.onFocus=x.bind(null,void 0)),p.value&&(w.class=o.prefetchedClass||e.prefetchedClass),w.rel=o.rel||void 0),ve(qn("RouterLink"),w,s.default)}const b=o.target||null,g=T1(o.noRel?"":o.rel,e.externalRelAttribute,d.value||f.value?"noopener noreferrer":"")||null;return o.custom?s.default?s.default({href:l.value,navigate:u,prefetch:x,get route(){if(!l.value)return;const w=new URL(l.value,window.location.href);return{path:w.pathname,fullPath:w.pathname,get query(){return Mp(w.search)},hash:w.hash,params:{},name:void 0,matched:[],redirectedFrom:void 0,meta:{},href:l.value}},rel:g,target:b,isExternal:c.value||f.value,isActive:!1,isExactActive:!1}):null:ve("a",{ref:m,href:l.value||null,rel:g,target:b},(v=s.default)==null?void 0:v.call(s))}}})}const Nh=A1(nb);function mf(e,t){const n=t==="append"?ci:as;return An(e)&&!e.startsWith("http")?e:n(e,!0)}function O1(){const e=_e();if(e._observer)return e._observer;let t=null;const n=new Map,r=(s,i)=>(t||(t=new IntersectionObserver(a=>{for(const l of a){const u=n.get(l.target);(l.isIntersecting||l.intersectionRatio>0)&&u&&u()}})),n.set(s,i),t.observe(s),()=>{n.delete(s),t.unobserve(s),n.size===0&&(t.disconnect(),t=null)});return e._observer={observe:r}}const $1=/2g/;function R1(){const e=navigator.connection;return!!(e&&(e.saveData||$1.test(e.effectiveType)))}const I1={ui:{primary:"green",gray:"slate",footer:{bottom:{left:"text-sm text-gray-500 dark:text-gray-400",wrapper:"border-t border-gray-200 dark:border-gray-800"}}},seo:{siteName:"Nuxt UI Pro - Docs template"},header:{logo:{alt:"",light:"",dark:""},search:!0,colorMode:!0,links:[{icon:"i-simple-icons-github",to:"https://github.com/nuxt-ui-pro/docs",target:"_blank","aria-label":"Docs template on GitHub"}]},footer:{credits:"Copyright © 2023",colorMode:!1,links:[{icon:"i-simple-icons-nuxtdotjs",to:"https://nuxt.com",target:"_blank","aria-label":"Nuxt Website"},{icon:"i-simple-icons-discord",to:"https://discord.com/invite/ps2h6QT",target:"_blank","aria-label":"Nuxt UI on Discord"},{icon:"i-simple-icons-x",to:"https://x.com/nuxt_js",target:"_blank","aria-label":"Nuxt on X"},{icon:"i-simple-icons-github",to:"https://github.com/nuxt/ui",target:"_blank","aria-label":"Nuxt UI on GitHub"}]},toc:{title:"Table of Contents",bottom:{title:"Community",edit:"https://github.com/nuxt-ui-pro/docs/edit/main/content",links:[{icon:"i-heroicons-star",label:"Star on GitHub",to:"https://github.com/nuxt/ui",target:"_blank"},{icon:"i-heroicons-book-open",label:"Nuxt UI Pro docs",to:"https://ui.nuxt.com/pro/guide",target:"_blank"},{icon:"i-simple-icons-nuxtdotjs",label:"Purchase a license",to:"https://ui.nuxt.com/pro/purchase",target:"_blank"}]}}},L1={ui:{variables:{light:{background:"255 255 255",foreground:"var(--color-gray-700)"},dark:{background:"var(--color-gray-900)",foreground:"var(--color-gray-200)"},header:{height:"4rem"}},icons:{dark:"i-heroicons-moon-20-solid",light:"i-heroicons-sun-20-solid",system:"i-heroicons-computer-desktop-20-solid",search:"i-heroicons-magnifying-glass-20-solid",external:"i-heroicons-arrow-up-right-20-solid",chevron:"i-heroicons-chevron-down-20-solid",hash:"i-heroicons-hashtag-20-solid",menu:"i-heroicons-bars-3-20-solid",close:"i-heroicons-x-mark-20-solid",check:"i-heroicons-check-circle-20-solid"},presets:{button:{primary:{color:"white",variant:"solid"},secondary:{color:"gray",variant:"ghost"},input:{color:"white",variant:"outline",ui:{font:"",color:{white:{outline:"ring-1 ring-inset ring-gray-300 dark:ring-gray-700 hover:ring-gray-300 dark:hover:ring-gray-700 hover:bg-gray-100/50 dark:hover:bg-gray-800/50 text-gray-400 dark:text-gray-500 hover:text-gray-700 dark:hover:text-gray-200 focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"}}}}}}}},M1={nuxt:{},icon:{provider:"server",class:"",aliases:{},iconifyApiEndpoint:"https://api.iconify.design",localApiEndpoint:"/api/_nuxt_icon",fallbackToApi:!0,cssSelectorPrefix:"i-",cssWherePseudo:!0,mode:"css",attrs:{"aria-hidden":!0},collections:["academicons","akar-icons","ant-design","arcticons","basil","bi","bitcoin-icons","bpmn","brandico","bx","bxl","bxs","bytesize","carbon","catppuccin","cbi","charm","ci","cib","cif","cil","circle-flags","circum","clarity","codicon","covid","cryptocurrency","cryptocurrency-color","dashicons","devicon","devicon-plain","ei","el","emojione","emojione-monotone","emojione-v1","entypo","entypo-social","eos-icons","ep","et","eva","f7","fa","fa-brands","fa-regular","fa-solid","fa6-brands","fa6-regular","fa6-solid","fad","fe","feather","file-icons","flag","flagpack","flat-color-icons","flat-ui","flowbite","fluent","fluent-emoji","fluent-emoji-flat","fluent-emoji-high-contrast","fluent-mdl2","fontelico","fontisto","formkit","foundation","fxemoji","gala","game-icons","geo","gg","gis","gravity-ui","gridicons","grommet-icons","guidance","healthicons","heroicons","heroicons-outline","heroicons-solid","hugeicons","humbleicons","ic","icomoon-free","icon-park","icon-park-outline","icon-park-solid","icon-park-twotone","iconamoon","iconoir","icons8","il","ion","iwwa","jam","la","lets-icons","line-md","logos","ls","lucide","lucide-lab","mage","majesticons","maki","map","marketeq","material-symbols","material-symbols-light","mdi","mdi-light","medical-icon","memory","meteocons","mi","mingcute","mono-icons","mynaui","nimbus","nonicons","noto","noto-v1","octicon","oi","ooui","openmoji","oui","pajamas","pepicons","pepicons-pencil","pepicons-pop","pepicons-print","ph","pixelarticons","prime","ps","quill","radix-icons","raphael","ri","rivet-icons","si-glyph","simple-icons","simple-line-icons","skill-icons","solar","streamline","streamline-emojis","subway","svg-spinners","system-uicons","tabler","tdesign","teenyicons","token","token-branded","topcoat","twemoji","typcn","uil","uim","uis","uit","uiw","unjs","vaadin","vs","vscode-icons","websymbol","weui","whh","wi","wpf","zmdi","zondicons"],fetchTimeout:1500},ui:{primary:"green",gray:"cool",colors:["red","orange","amber","yellow","lime","green","emerald","teal","cyan","sky","blue","indigo","violet","purple","fuchsia","pink","rose","primary"],strategy:"merge"}},We=Mb(I1,L1,M1);function Ze(){const e=_e();return e._appConfig||(e._appConfig=Bt(We)),e._appConfig}const j1=it({name:"nuxt-site-config:init",enforce:"pre",async setup(e){const t=io("site-config");let n={};return n=t.value||window.__NUXT_SITE_CONFIG__,{provide:{nuxtSiteConfig:n}}}}),D1=it({name:"nuxt:payload",setup(e){gt().beforeResolve(async(t,n)=>{if(t.path===n.path)return;const r=await Wu(t.path);r&&Object.assign(e.static.data,r.data)}),Ni(()=>{var t;e.hooks.hook("link:prefetch",async n=>{const{hostname:r}=new URL(n,window.location.href);r===window.location.hostname&&await Wu(n)}),((t=navigator.connection)==null?void 0:t.effectiveType)!=="slow-2g"&&setTimeout(ji,1e3)})}}),N1=it(()=>{const e=gt();Ni(()=>{e.beforeResolve(async()=>{await new Promise(t=>{setTimeout(t,100),requestAnimationFrame(()=>{setTimeout(t,0)})})})})}),H1=it(e=>{let t;async function n(){const r=await ji();t&&clearTimeout(t),t=setTimeout(n,$u);try{const o=await $fetch(ec("builds/latest.json")+`?${Date.now()}`);o.id!==r.id&&e.hooks.callHook("app:manifest:update",o)}catch{}}Ni(()=>{t=setTimeout(n,$u)})}),F1=it({name:"nuxt:chunk-reload",setup(e){const t=gt(),n=zt(),r=new Set;t.beforeEach(()=>{r.clear()}),e.hook("app:chunkError",({error:s})=>{r.add(s)});function o(s){const a="href"in s&&s.href[0]==="#"?n.app.baseURL+s.href:ls(n.app.baseURL,s.fullPath);P1({path:a,persistState:!0})}e.hook("app:manifest:update",()=>{t.beforeResolve(o)}),t.onError((s,i)=>{r.has(s)&&o(i)})}}),B1=ue(()=>oe(()=>import("./pvolzCCv.js"),__vite__mapDeps([9,10,4]),import.meta.url).then(e=>e.default||e.default||e)),U1=ue(()=>oe(()=>import("./BBZIarDJ.js"),__vite__mapDeps([11,7,10,4]),import.meta.url).then(e=>e.default||e.default||e)),z1=ue(()=>oe(()=>import("./Dbl-o2qH.js"),[],import.meta.url).then(e=>e.default||e.default||e)),V1=ue(()=>oe(()=>import("./C9Mei_rU.js"),__vite__mapDeps([12,13]),import.meta.url).then(e=>e.default||e.default||e)),W1=ue(()=>oe(()=>import("./CAXRF4Ia.js"),__vite__mapDeps([14,10,4]),import.meta.url).then(e=>e.default||e.default||e)),q1=ue(()=>oe(()=>import("./Bq6KmDO_.js"),[],import.meta.url).then(e=>e.default||e.default||e)),K1=ue(()=>oe(()=>import("./DqDUbQPw.js"),[],import.meta.url).then(e=>e.default||e.default||e)),G1=ue(()=>oe(()=>import("./D9I4tSfz.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Y1=ue(()=>oe(()=>import("./DQnMtYqJ.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Q1=ue(()=>oe(()=>import("./BmV_GQpb.js"),__vite__mapDeps([15,16,13,17,18]),import.meta.url).then(e=>e.default||e.default||e)),X1=ue(()=>oe(()=>import("./CPdV1HBm.js"),__vite__mapDeps([19,17]),import.meta.url).then(e=>e.default||e.default||e)),J1=ue(()=>oe(()=>import("./CRTu1PAQ.js"),__vite__mapDeps([20,13]),import.meta.url).then(e=>e.default||e.default||e)),Z1=ue(()=>oe(()=>import("./DgenBvVF.js"),[],import.meta.url).then(e=>e.default||e.default||e)),ex=ue(()=>oe(()=>import("./DT7GmsMW.js"),[],import.meta.url).then(e=>e.default||e.default||e)),tx=ue(()=>oe(()=>import("./5APy8Axm.js"),[],import.meta.url).then(e=>e.default||e.default||e)),nx=ue(()=>oe(()=>import("./BfW8uTTt.js"),[],import.meta.url).then(e=>e.default||e.default||e)),rx=ue(()=>oe(()=>import("./jVz3gLGx.js"),__vite__mapDeps([21,1,2,3,4,22]),import.meta.url).then(e=>e.default||e.default||e)),ox=ue(()=>oe(()=>import("./rV6PYh0J.js"),__vite__mapDeps([23,22]),import.meta.url).then(e=>e.default||e.default||e)),sx=ue(()=>oe(()=>import("./Do6QRGx0.js"),[],import.meta.url).then(e=>e.default||e.default||e)),ix=ue(()=>oe(()=>import("./Df0uYweg.js"),[],import.meta.url).then(e=>e.default||e.default||e)),ax=ue(()=>oe(()=>import("./D-llQu22.js"),__vite__mapDeps([1,2,3,4]),import.meta.url).then(e=>e.default||e.default||e)),lx=ue(()=>oe(()=>import("./DHoNGUg4.js"),__vite__mapDeps([24,2,3,4]),import.meta.url).then(e=>e.default||e.default||e)),cx=ue(()=>oe(()=>import("./CUMxMy4f.js"),__vite__mapDeps([25,4]),import.meta.url).then(e=>e.default||e.default||e)),ux=ue(()=>oe(()=>import("./DT1PYp9M.js"),[],import.meta.url).then(e=>e.default||e.default||e)),fx=ue(()=>oe(()=>import("./DXR6eBOr.js"),[],import.meta.url).then(e=>e.default||e.default||e)),dx=ue(()=>oe(()=>import("./DiETWf-A.js"),__vite__mapDeps([26,25,4]),import.meta.url).then(e=>e.default||e.default||e)),px=ue(()=>oe(()=>import("./DQroEG0t.js"),[],import.meta.url).then(e=>e.default||e.default||e)),hx=ue(()=>oe(()=>import("./R2AG9nOp.js"),__vite__mapDeps([27,16,13,17,18]),import.meta.url).then(e=>e.default||e.default||e)),gx=ue(()=>oe(()=>import("./DLNnAE6d.js"),[],import.meta.url).then(e=>e.default||e.default||e)),mx=ue(()=>oe(()=>import("./bB7ibIIp.js"),[],import.meta.url).then(e=>e.default||e.default||e)),vx=ue(()=>oe(()=>import("./Bcmapgcr.js"),[],import.meta.url).then(e=>e.default||e.default||e)),yx=ue(()=>oe(()=>import("./CboE8M4c.js"),[],import.meta.url).then(e=>e.default||e.default||e)),bx=ue(()=>oe(()=>import("./Bt1lc6BL.js"),[],import.meta.url).then(e=>e.default||e.default||e)),wx=ue(()=>oe(()=>import("./DYwN3dj-.js"),[],import.meta.url).then(e=>e.default||e.default||e)),_x=ue(()=>oe(()=>import("./DwTMntNX.js"),[],import.meta.url).then(e=>e.default||e.default||e)),xx=ue(()=>oe(()=>import("./BZfx9C-e.js"),[],import.meta.url).then(e=>e.default||e.default||e)),kx=ue(()=>oe(()=>import("./C8G3FUCM.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Sx=ue(()=>oe(()=>import("./Bb-sXBL5.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Ex=ue(()=>oe(()=>import("./DdkA8PcY.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Cx=ue(()=>oe(()=>import("./Bh0h7kXY.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Px=ue(()=>oe(()=>import("./g8YQgL3n.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Tx=ue(()=>oe(()=>import("./f0q8Ca6b.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Ax=ue(()=>oe(()=>import("./D_mu--ha.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Ox=ue(()=>oe(()=>import("./BV-5FLB8.js"),[],import.meta.url).then(e=>e.default||e.default||e)),$x=ue(()=>oe(()=>import("./-1x9XUuu.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Rx=ue(()=>oe(()=>import("./C71A92y3.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Ix=ue(()=>oe(()=>import("./DwZvmNGs.js"),[],import.meta.url).then(e=>e.default||e.default||e)),Lx=ue(()=>oe(()=>Promise.resolve().then(()=>LC),void 0,import.meta.url).then(e=>e.default||e.default||e)),Mx=ue(()=>oe(()=>Promise.resolve().then(()=>TC),void 0,import.meta.url).then(e=>e.default||e.default||e)),jx=ue(()=>oe(()=>Promise.resolve().then(()=>EC),void 0,import.meta.url).then(e=>e.default||e.default||e)),Dx=[["Callout",B1],["Card",U1],["CardGroup",z1],["CodeGroup",V1],["Collapsible",W1],["Field",q1],["FieldGroup",K1],["Shortcut",G1],["Tabs",Y1],["ProseCode",Q1],["ProseCodeButton",X1],["ProseCodeIcon",J1],["ProseH1",Z1],["ProseH2",ex],["ProseH3",tx],["ProseH4",nx],["ContentDoc",rx],["ContentList",ox],["ContentNavigation",sx],["ContentQuery",ix],["ContentRenderer",ax],["ContentRendererMarkdown",lx],["MDCSlot",cx],["DocumentDrivenEmpty",ux],["DocumentDrivenNotFound",fx],["Markdown",dx],["ProseCodeInline",px],["ProsePre",hx],["ProseA",gx],["ProseBlockquote",mx],["ProseEm",vx],["ProseH5",yx],["ProseH6",bx],["ProseHr",wx],["ProseImg",_x],["ProseLi",xx],["ProseOl",kx],["ProseP",Sx],["ProseScript",Ex],["ProseStrong",Cx],["ProseTable",Px],["ProseTbody",Tx],["ProseTd",Ax],["ProseTh",Ox],["ProseThead",$x],["ProseTr",Rx],["ProseUl",Ix],["UButton",Lx],["UIcon",Mx],["Icon",jx]],Nx=it({name:"nuxt:global-components",setup(e){for(const[t,n]of Dx)e.vueApp.component(t,n),e.vueApp.component("Lazy"+t,n)}}),Bn={docs:()=>oe(()=>import("./4UyRv5WE.js"),[],import.meta.url)},Hx=it({name:"nuxt:prefetch",setup(e){const t=gt();e.hooks.hook("app:mounted",()=>{t.beforeEach(async n=>{var o;const r=(o=n==null?void 0:n.meta)==null?void 0:o.layout;r&&typeof Bn[r]=="function"&&await Bn[r]()})}),e.hooks.hook("link:prefetch",n=>{if(An(n))return;const r=t.resolve(n);if(!r)return;const o=r.meta.layout;let s=lc(r.meta.middleware);s=s.filter(i=>typeof i=="string");for(const i of s)typeof No[i]=="function"&&No[i]();o&&typeof Bn[o]=="function"&&Bn[o]()})}}),Fx=it(e=>{const t=zt().public.studio||{},n=En(),r=zs("previewToken",{sameSite:"none",secure:!0}),o=io("studio-client-db",()=>null);async function s(){const i=await oe(()=>import("./PZ4IibY0.js"),__vite__mapDeps([28,29]),import.meta.url).then(u=>u.useStudio),{mountPreviewUI:a,initiateIframeCommunication:l}=i();a(),l()}if(t.apiURL){if(Object.prototype.hasOwnProperty.call(n.query,"preview")&&!n.query.preview||!n.query.preview&&!r.value)return;n.query.preview&&(r.value=String(n.query.preview)),window.sessionStorage.setItem("previewToken",String(r.value)),window.sessionStorage.setItem("previewAPI",typeof n.query.staging<"u"?"https://dev-api.nuxt.studio":t.apiURL),e.hook("content:storage",i=>{o.value=i}),e.hook("app:mounted",async()=>{await s()})}});function Yn(e){return Pr()?(_r(e),!0):!1}function Hh(e){let t=0,n,r;const o=()=>{t-=1,r&&t<=0&&(r.stop(),n=void 0,r=void 0)};return(...s)=>(t+=1,r||(r=cd(!0),n=r.run(()=>e(...s))),Yn(o),n)}function Ht(e){return typeof e=="function"?e():E(e)}const Qo=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Bx=e=>e!=null,Ux=Object.prototype.toString,zx=e=>Ux.call(e)==="[object Object]",vf=()=>+Date.now(),Xo=()=>{};function Fh(e,t){function n(...r){return new Promise((o,s)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(o).catch(s)})}return n}const Vx=e=>e();function Wx(e,t={}){let n,r,o=Xo;const s=a=>{clearTimeout(a),o(),o=Xo};return a=>{const l=Ht(e),u=Ht(t.maxWait);return n&&s(n),l<=0||u!==void 0&&u<=0?(r&&(s(r),r=null),Promise.resolve(a())):new Promise((c,f)=>{o=t.rejectOnCancel?f:c,u&&!r&&(r=setTimeout(()=>{n&&s(n),r=null,c(a())},u)),n=setTimeout(()=>{r&&s(r),r=null,c(a())},l)})}}function qx(...e){let t=0,n,r=!0,o=Xo,s,i,a,l,u;!Ye(e[0])&&typeof e[0]=="object"?{delay:i,trailing:a=!0,leading:l=!0,rejectOnCancel:u=!1}=e[0]:[i,a=!0,l=!0,u=!1]=e;const c=()=>{n&&(clearTimeout(n),n=void 0,o(),o=Xo)};return d=>{const p=Ht(i),m=Date.now()-t,h=()=>s=d();return c(),p<=0?(t=Date.now(),h()):(m>p&&(l||!r)?(t=Date.now(),h()):a&&(s=new Promise((y,x)=>{o=u?x:y,n=setTimeout(()=>{t=Date.now(),r=!0,y(h()),c()},Math.max(0,p-m))})),!l&&!n&&(n=setTimeout(()=>r=!0,p)),r=!1,s)}}function Kx(e){let t;function n(){return t||(t=e()),t}return n.reset=async()=>{const r=t;t=void 0,r&&await r},n}function Gx(e,t){var n;if(typeof e=="number")return e+t;const r=((n=e.match(/^-?\d+\.?\d*/))==null?void 0:n[0])||"",o=e.slice(r.length),s=Number.parseFloat(r)+t;return Number.isNaN(s)?e:s+o}function YA(e,t=200,n={}){return Fh(Wx(t,n),e)}function Yx(e,t,n={}){const{eventFilter:r=Vx,...o}=n;return $e(e,Fh(r,t),o)}function Qx(e,t=1e3,n={}){const{immediate:r=!0,immediateCallback:o=!1}=n;let s=null;const i=H(!1);function a(){s&&(clearInterval(s),s=null)}function l(){i.value=!1,a()}function u(){const c=Ht(t);c<=0||(i.value=!0,o&&e(),a(),i.value&&(s=setInterval(e,c)))}if(r&&Qo&&u(),Ye(t)||typeof t=="function"){const c=$e(t,()=>{i.value&&Qo&&u()});Yn(c)}return Yn(l),{isActive:i,pause:l,resume:u}}function Xx(e,t,n={}){const{immediate:r=!0}=n,o=H(!1);let s=null;function i(){s&&(clearTimeout(s),s=null)}function a(){o.value=!1,i()}function l(...u){i(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=null,e(...u)},Ht(t))}return r&&(o.value=!0,Qo&&l()),Yn(a),{isPending:Ci(o),start:l,stop:a}}function QA(e,t,n={}){const{throttle:r=0,trailing:o=!0,leading:s=!0,...i}=n;return Yx(e,t,{...i,eventFilter:qx(r,o,s)})}const Tr=Qo?window:void 0,Bh=Qo?window.navigator:void 0;function mi(e){var t;const n=Ht(e);return(t=n==null?void 0:n.$el)!=null?t:n}function Un(...e){let t,n,r,o;if(typeof e[0]=="string"||Array.isArray(e[0])?([n,r,o]=e,t=Tr):[t,n,r,o]=e,!t)return Xo;Array.isArray(n)||(n=[n]),Array.isArray(r)||(r=[r]);const s=[],i=()=>{s.forEach(c=>c()),s.length=0},a=(c,f,d,p)=>(c.addEventListener(f,d,p),()=>c.removeEventListener(f,d,p)),l=$e(()=>[mi(t),Ht(o)],([c,f])=>{if(i(),!c)return;const d=zx(f)?{...f}:f;s.push(...n.flatMap(p=>r.map(m=>a(c,p,m,d))))},{immediate:!0,flush:"post"}),u=()=>{l(),i()};return Yn(u),u}function Jx(){const e=H(!1),t=Ut();return t&&Me(()=>{e.value=!0},t),e}function Hi(e){const t=Jx();return $(()=>(t.value,!!e()))}function Zx(e,t,n={}){const{window:r=Tr,...o}=n;let s;const i=Hi(()=>r&&"MutationObserver"in r),a=()=>{s&&(s.disconnect(),s=void 0)},l=$(()=>{const d=Ht(e),p=(Array.isArray(d)?d:[d]).map(mi).filter(Bx);return new Set(p)}),u=$e(()=>l.value,d=>{a(),i.value&&d.size&&(s=new MutationObserver(t),d.forEach(p=>s.observe(p,o)))},{immediate:!0,flush:"post"}),c=()=>s==null?void 0:s.takeRecords(),f=()=>{u(),a()};return Yn(f),{isSupported:i,stop:f,takeRecords:c}}function ek(e={}){var t;const{window:n=Tr,deep:r=!0,triggerOnRemoval:o=!1}=e,s=(t=e.document)!=null?t:n==null?void 0:n.document,i=()=>{var u;let c=s==null?void 0:s.activeElement;if(r)for(;c!=null&&c.shadowRoot;)c=(u=c==null?void 0:c.shadowRoot)==null?void 0:u.activeElement;return c},a=H(),l=()=>{a.value=i()};return n&&(Un(n,"blur",u=>{u.relatedTarget===null&&l()},!0),Un(n,"focus",l,!0)),o&&Zx(s,u=>{u.filter(c=>c.removedNodes.length).map(c=>Array.from(c.removedNodes)).flat().forEach(c=>{c===a.value&&l()})},{childList:!0,subtree:!0}),l(),a}function tk(e,t={}){const{immediate:n=!0,fpsLimit:r=void 0,window:o=Tr}=t,s=H(!1),i=r?1e3/r:null;let a=0,l=null;function u(d){if(!s.value||!o)return;a||(a=d);const p=d-a;if(i&&p<i){l=o.requestAnimationFrame(u);return}a=d,e({delta:p,timestamp:d}),l=o.requestAnimationFrame(u)}function c(){!s.value&&o&&(s.value=!0,a=0,l=o.requestAnimationFrame(u))}function f(){s.value=!1,l!=null&&o&&(o.cancelAnimationFrame(l),l=null)}return n&&c(),Yn(f),{isActive:Ci(s),pause:f,resume:c}}function go(e,t={}){const{window:n=Tr}=t,r=Hi(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function");let o;const s=H(!1),i=u=>{s.value=u.matches},a=()=>{o&&("removeEventListener"in o?o.removeEventListener("change",i):o.removeListener(i))},l=Je(()=>{r.value&&(a(),o=n.matchMedia(Ht(e)),"addEventListener"in o?o.addEventListener("change",i):o.addListener(i),s.value=o.matches)});return Yn(()=>{l(),a(),o=void 0}),s}const XA={sm:640,md:768,lg:1024,xl:1280,"2xl":1536};function JA(e,t={}){function n(c,f){let d=Ht(e[Ht(c)]);return f!=null&&(d=Gx(d,f)),typeof d=="number"&&(d=`${d}px`),d}const{window:r=Tr,strategy:o="min-width"}=t;function s(c){return r?r.matchMedia(c).matches:!1}const i=c=>go(()=>`(min-width: ${n(c)})`,t),a=c=>go(()=>`(max-width: ${n(c)})`,t),l=Object.keys(e).reduce((c,f)=>(Object.defineProperty(c,f,{get:()=>o==="min-width"?i(f):a(f),enumerable:!0,configurable:!0}),c),{});function u(){const c=Object.keys(e).map(f=>[f,i(f)]);return $(()=>c.filter(([,f])=>f.value).map(([f])=>f))}return Object.assign(l,{greaterOrEqual:i,smallerOrEqual:a,greater(c){return go(()=>`(min-width: ${n(c,.1)})`,t)},smaller(c){return go(()=>`(max-width: ${n(c,-.1)})`,t)},between(c,f){return go(()=>`(min-width: ${n(c)}) and (max-width: ${n(f,-.1)})`,t)},isGreater(c){return s(`(min-width: ${n(c,.1)})`)},isGreaterOrEqual(c){return s(`(min-width: ${n(c)})`)},isSmaller(c){return s(`(max-width: ${n(c,-.1)})`)},isSmallerOrEqual(c){return s(`(max-width: ${n(c)})`)},isInBetween(c,f){return s(`(min-width: ${n(c)}) and (max-width: ${n(f,-.1)})`)},current:u,active(){const c=u();return $(()=>c.value.length===0?"":c.value.at(-1))}})}function yf(e,t={}){const{controls:n=!1,navigator:r=Bh}=t,o=Hi(()=>r&&"permissions"in r),s=Qt(),i=typeof e=="string"?{name:e}:e,a=Qt(),l=()=>{var c,f;a.value=(f=(c=s.value)==null?void 0:c.state)!=null?f:"prompt"};Un(s,"change",l);const u=Kx(async()=>{if(o.value){if(!s.value)try{s.value=await r.permissions.query(i)}catch{s.value=void 0}finally{l()}if(n)return Te(s.value)}});return u(),n?{state:a,isSupported:o,query:u}:a}function ZA(e={}){const{navigator:t=Bh,read:n=!1,source:r,copiedDuring:o=1500,legacy:s=!1}=e,i=Hi(()=>t&&"clipboard"in t),a=yf("clipboard-read"),l=yf("clipboard-write"),u=$(()=>i.value||s),c=H(""),f=H(!1),d=Xx(()=>f.value=!1,o);function p(){i.value&&x(a.value)?t.clipboard.readText().then(b=>{c.value=b}):c.value=y()}u.value&&n&&Un(["copy","cut"],p);async function m(b=Ht(r)){u.value&&b!=null&&(i.value&&x(l.value)?await t.clipboard.writeText(b):h(b),c.value=b,f.value=!0,d.start())}function h(b){const g=document.createElement("textarea");g.value=b??"",g.style.position="absolute",g.style.opacity="0",document.body.appendChild(g),g.select(),document.execCommand("copy"),g.remove()}function y(){var b,g,v;return(v=(g=(b=document==null?void 0:document.getSelection)==null?void 0:b.call(document))==null?void 0:g.toString())!=null?v:""}function x(b){return b==="granted"||b==="prompt"}return{isSupported:u,text:c,copied:f,copy:m}}const nk={page:e=>[e.pageX,e.pageY],client:e=>[e.clientX,e.clientY],screen:e=>[e.screenX,e.screenY],movement:e=>e instanceof Touch?null:[e.movementX,e.movementY]};function eO(e={}){const{type:t="page",touch:n=!0,resetOnTouchEnds:r=!1,initialValue:o={x:0,y:0},window:s=Tr,target:i=s,scroll:a=!0,eventFilter:l}=e;let u=null;const c=H(o.x),f=H(o.y),d=H(null),p=typeof t=="function"?t:nk[t],m=w=>{const S=p(w);u=w,S&&([c.value,f.value]=S,d.value="mouse")},h=w=>{if(w.touches.length>0){const S=p(w.touches[0]);S&&([c.value,f.value]=S,d.value="touch")}},y=()=>{if(!u||!s)return;const w=p(u);u instanceof MouseEvent&&w&&(c.value=w[0]+s.scrollX,f.value=w[1]+s.scrollY)},x=()=>{c.value=o.x,f.value=o.y},b=l?w=>l(()=>m(w),{}):w=>m(w),g=l?w=>l(()=>h(w),{}):w=>h(w),v=l?()=>l(()=>y(),{}):()=>y();if(i){const w={passive:!0};Un(i,["mousemove","dragover"],b,w),n&&t!=="movement"&&(Un(i,["touchstart","touchmove"],g,w),r&&Un(i,"touchend",x,w)),a&&t==="page"&&Un(s,"scroll",v,{passive:!0})}return{x:c,y:f,sourceType:d}}function rk(e={}){const{controls:t=!1,offset:n=0,immediate:r=!0,interval:o="requestAnimationFrame",callback:s}=e,i=H(vf()+n),a=()=>i.value=vf()+n,l=s?()=>{a(),s(i.value)}:a,u=o==="requestAnimationFrame"?tk(l,{immediate:r}):Qx(l,o,{immediate:r});return t?{timestamp:i,...u}:i}const ok=Symbol("nuxt-ui.slideover"),sk=it(e=>{const t=Qt({component:"div",props:{}});e.vueApp.provide(ok,t)}),ik=Symbol("nuxt-ui.modal"),ak=it(e=>{const t=Qt({component:"div",props:{}});e.vueApp.provide(ik,t)}),uc="-",lk=e=>{const t=uk(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:i=>{const a=i.split(uc);return a[0]===""&&a.length!==1&&a.shift(),Uh(a,t)||ck(i)},getConflictingClassGroupIds:(i,a)=>{const l=n[i]||[];return a&&r[i]?[...l,...r[i]]:l}}},Uh=(e,t)=>{var i;if(e.length===0)return t.classGroupId;const n=e[0],r=t.nextPart.get(n),o=r?Uh(e.slice(1),r):void 0;if(o)return o;if(t.validators.length===0)return;const s=e.join(uc);return(i=t.validators.find(({validator:a})=>a(s)))==null?void 0:i.classGroupId},bf=/^\[(.+)\]$/,ck=e=>{if(bf.test(e)){const t=bf.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},uk=e=>{const{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return dk(Object.entries(e.classGroups),n).forEach(([s,i])=>{dl(i,r,s,t)}),r},dl=(e,t,n,r)=>{e.forEach(o=>{if(typeof o=="string"){const s=o===""?t:wf(t,o);s.classGroupId=n;return}if(typeof o=="function"){if(fk(o)){dl(o(r),t,n,r);return}t.validators.push({validator:o,classGroupId:n});return}Object.entries(o).forEach(([s,i])=>{dl(i,wf(t,s),n,r)})})},wf=(e,t)=>{let n=e;return t.split(uc).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},fk=e=>e.isThemeGetter,dk=(e,t)=>t?e.map(([n,r])=>{const o=r.map(s=>typeof s=="string"?t+s:typeof s=="object"?Object.fromEntries(Object.entries(s).map(([i,a])=>[t+i,a])):s);return[n,o]}):e,pk=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,r=new Map;const o=(s,i)=>{n.set(s,i),t++,t>e&&(t=0,r=n,n=new Map)};return{get(s){let i=n.get(s);if(i!==void 0)return i;if((i=r.get(s))!==void 0)return o(s,i),i},set(s,i){n.has(s)?n.set(s,i):o(s,i)}}},zh="!",hk=e=>{const{separator:t,experimentalParseClassName:n}=e,r=t.length===1,o=t[0],s=t.length,i=a=>{const l=[];let u=0,c=0,f;for(let y=0;y<a.length;y++){let x=a[y];if(u===0){if(x===o&&(r||a.slice(y,y+s)===t)){l.push(a.slice(c,y)),c=y+s;continue}if(x==="/"){f=y;continue}}x==="["?u++:x==="]"&&u--}const d=l.length===0?a:a.substring(c),p=d.startsWith(zh),m=p?d.substring(1):d,h=f&&f>c?f-c:void 0;return{modifiers:l,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:h}};return n?a=>n({className:a,parseClassName:i}):i},gk=e=>{if(e.length<=1)return e;const t=[];let n=[];return e.forEach(r=>{r[0]==="["?(t.push(...n.sort(),r),n=[]):n.push(r)}),t.push(...n.sort()),t},mk=e=>({cache:pk(e.cacheSize),parseClassName:hk(e),...lk(e)}),vk=/\s+/,yk=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:o}=t,s=[],i=e.trim().split(vk);let a="";for(let l=i.length-1;l>=0;l-=1){const u=i[l],{modifiers:c,hasImportantModifier:f,baseClassName:d,maybePostfixModifierPosition:p}=n(u);let m=!!p,h=r(m?d.substring(0,p):d);if(!h){if(!m){a=u+(a.length>0?" "+a:a);continue}if(h=r(d),!h){a=u+(a.length>0?" "+a:a);continue}m=!1}const y=gk(c).join(":"),x=f?y+zh:y,b=x+h;if(s.includes(b))continue;s.push(b);const g=o(h,m);for(let v=0;v<g.length;++v){const w=g[v];s.push(x+w)}a=u+(a.length>0?" "+a:a)}return a};function ut(){let e=0,t,n,r="";for(;e<arguments.length;)(t=arguments[e++])&&(n=Vh(t))&&(r&&(r+=" "),r+=n);return r}const Vh=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=Vh(e[r]))&&(n&&(n+=" "),n+=t);return n};function pl(e,...t){let n,r,o,s=i;function i(l){const u=t.reduce((c,f)=>f(c),e());return n=mk(u),r=n.cache.get,o=n.cache.set,s=a,a(l)}function a(l){const u=r(l);if(u)return u;const c=yk(l,n);return o(l,c),c}return function(){return s(ut.apply(null,arguments))}}const ze=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},Wh=/^\[(?:([a-z-]+):)?(.+)\]$/i,bk=/^\d+\/\d+$/,wk=new Set(["px","full","screen"]),_k=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,xk=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,kk=/^(rgba?|hsla?|hwb|(ok)?(lab|lch))\(.+\)$/,Sk=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Ek=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,mn=e=>zr(e)||wk.has(e)||bk.test(e),In=e=>ao(e,"length",Ik),zr=e=>!!e&&!Number.isNaN(Number(e)),ga=e=>ao(e,"number",zr),mo=e=>!!e&&Number.isInteger(Number(e)),Ck=e=>e.endsWith("%")&&zr(e.slice(0,-1)),we=e=>Wh.test(e),Ln=e=>_k.test(e),Pk=new Set(["length","size","percentage"]),Tk=e=>ao(e,Pk,qh),Ak=e=>ao(e,"position",qh),Ok=new Set(["image","url"]),$k=e=>ao(e,Ok,Mk),Rk=e=>ao(e,"",Lk),vo=()=>!0,ao=(e,t,n)=>{const r=Wh.exec(e);return r?r[1]?typeof t=="string"?r[1]===t:t.has(r[1]):n(r[2]):!1},Ik=e=>xk.test(e)&&!kk.test(e),qh=()=>!1,Lk=e=>Sk.test(e),Mk=e=>Ek.test(e),hl=()=>{const e=ze("colors"),t=ze("spacing"),n=ze("blur"),r=ze("brightness"),o=ze("borderColor"),s=ze("borderRadius"),i=ze("borderSpacing"),a=ze("borderWidth"),l=ze("contrast"),u=ze("grayscale"),c=ze("hueRotate"),f=ze("invert"),d=ze("gap"),p=ze("gradientColorStops"),m=ze("gradientColorStopPositions"),h=ze("inset"),y=ze("margin"),x=ze("opacity"),b=ze("padding"),g=ze("saturate"),v=ze("scale"),w=ze("sepia"),S=ze("skew"),C=ze("space"),R=ze("translate"),A=()=>["auto","contain","none"],T=()=>["auto","hidden","clip","visible","scroll"],U=()=>["auto",we,t],O=()=>[we,t],F=()=>["",mn,In],le=()=>["auto",zr,we],pe=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],B=()=>["solid","dashed","dotted","double","none"],Z=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],X=()=>["start","end","center","between","around","evenly","stretch"],Ee=()=>["","0",we],et=()=>["auto","avoid","all","avoid-page","page","left","right","column"],fe=()=>[zr,we];return{cacheSize:500,separator:":",theme:{colors:[vo],spacing:[mn,In],blur:["none","",Ln,we],brightness:fe(),borderColor:[e],borderRadius:["none","","full",Ln,we],borderSpacing:O(),borderWidth:F(),contrast:fe(),grayscale:Ee(),hueRotate:fe(),invert:Ee(),gap:O(),gradientColorStops:[e],gradientColorStopPositions:[Ck,In],inset:U(),margin:U(),opacity:fe(),padding:O(),saturate:fe(),scale:fe(),sepia:Ee(),skew:fe(),space:O(),translate:O()},classGroups:{aspect:[{aspect:["auto","square","video",we]}],container:["container"],columns:[{columns:[Ln]}],"break-after":[{"break-after":et()}],"break-before":[{"break-before":et()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...pe(),we]}],overflow:[{overflow:T()}],"overflow-x":[{"overflow-x":T()}],"overflow-y":[{"overflow-y":T()}],overscroll:[{overscroll:A()}],"overscroll-x":[{"overscroll-x":A()}],"overscroll-y":[{"overscroll-y":A()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[h]}],"inset-x":[{"inset-x":[h]}],"inset-y":[{"inset-y":[h]}],start:[{start:[h]}],end:[{end:[h]}],top:[{top:[h]}],right:[{right:[h]}],bottom:[{bottom:[h]}],left:[{left:[h]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",mo,we]}],basis:[{basis:U()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",we]}],grow:[{grow:Ee()}],shrink:[{shrink:Ee()}],order:[{order:["first","last","none",mo,we]}],"grid-cols":[{"grid-cols":[vo]}],"col-start-end":[{col:["auto",{span:["full",mo,we]},we]}],"col-start":[{"col-start":le()}],"col-end":[{"col-end":le()}],"grid-rows":[{"grid-rows":[vo]}],"row-start-end":[{row:["auto",{span:[mo,we]},we]}],"row-start":[{"row-start":le()}],"row-end":[{"row-end":le()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",we]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",we]}],gap:[{gap:[d]}],"gap-x":[{"gap-x":[d]}],"gap-y":[{"gap-y":[d]}],"justify-content":[{justify:["normal",...X()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...X(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...X(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[b]}],px:[{px:[b]}],py:[{py:[b]}],ps:[{ps:[b]}],pe:[{pe:[b]}],pt:[{pt:[b]}],pr:[{pr:[b]}],pb:[{pb:[b]}],pl:[{pl:[b]}],m:[{m:[y]}],mx:[{mx:[y]}],my:[{my:[y]}],ms:[{ms:[y]}],me:[{me:[y]}],mt:[{mt:[y]}],mr:[{mr:[y]}],mb:[{mb:[y]}],ml:[{ml:[y]}],"space-x":[{"space-x":[C]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[C]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",we,t]}],"min-w":[{"min-w":[we,t,"min","max","fit"]}],"max-w":[{"max-w":[we,t,"none","full","min","max","fit","prose",{screen:[Ln]},Ln]}],h:[{h:[we,t,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[we,t,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[we,t,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[we,t,"auto","min","max","fit"]}],"font-size":[{text:["base",Ln,In]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",ga]}],"font-family":[{font:[vo]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractons"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",we]}],"line-clamp":[{"line-clamp":["none",zr,ga]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",mn,we]}],"list-image":[{"list-image":["none",we]}],"list-style-type":[{list:["none","disc","decimal",we]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[x]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[x]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...B(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",mn,In]}],"underline-offset":[{"underline-offset":["auto",mn,we]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:O()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",we]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",we]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[x]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...pe(),Ak]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",Tk]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},$k]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[m]}],"gradient-via-pos":[{via:[m]}],"gradient-to-pos":[{to:[m]}],"gradient-from":[{from:[p]}],"gradient-via":[{via:[p]}],"gradient-to":[{to:[p]}],rounded:[{rounded:[s]}],"rounded-s":[{"rounded-s":[s]}],"rounded-e":[{"rounded-e":[s]}],"rounded-t":[{"rounded-t":[s]}],"rounded-r":[{"rounded-r":[s]}],"rounded-b":[{"rounded-b":[s]}],"rounded-l":[{"rounded-l":[s]}],"rounded-ss":[{"rounded-ss":[s]}],"rounded-se":[{"rounded-se":[s]}],"rounded-ee":[{"rounded-ee":[s]}],"rounded-es":[{"rounded-es":[s]}],"rounded-tl":[{"rounded-tl":[s]}],"rounded-tr":[{"rounded-tr":[s]}],"rounded-br":[{"rounded-br":[s]}],"rounded-bl":[{"rounded-bl":[s]}],"border-w":[{border:[a]}],"border-w-x":[{"border-x":[a]}],"border-w-y":[{"border-y":[a]}],"border-w-s":[{"border-s":[a]}],"border-w-e":[{"border-e":[a]}],"border-w-t":[{"border-t":[a]}],"border-w-r":[{"border-r":[a]}],"border-w-b":[{"border-b":[a]}],"border-w-l":[{"border-l":[a]}],"border-opacity":[{"border-opacity":[x]}],"border-style":[{border:[...B(),"hidden"]}],"divide-x":[{"divide-x":[a]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[a]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[x]}],"divide-style":[{divide:B()}],"border-color":[{border:[o]}],"border-color-x":[{"border-x":[o]}],"border-color-y":[{"border-y":[o]}],"border-color-s":[{"border-s":[o]}],"border-color-e":[{"border-e":[o]}],"border-color-t":[{"border-t":[o]}],"border-color-r":[{"border-r":[o]}],"border-color-b":[{"border-b":[o]}],"border-color-l":[{"border-l":[o]}],"divide-color":[{divide:[o]}],"outline-style":[{outline:["",...B()]}],"outline-offset":[{"outline-offset":[mn,we]}],"outline-w":[{outline:[mn,In]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:F()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[x]}],"ring-offset-w":[{"ring-offset":[mn,In]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",Ln,Rk]}],"shadow-color":[{shadow:[vo]}],opacity:[{opacity:[x]}],"mix-blend":[{"mix-blend":[...Z(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":Z()}],filter:[{filter:["","none"]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[l]}],"drop-shadow":[{"drop-shadow":["","none",Ln,we]}],grayscale:[{grayscale:[u]}],"hue-rotate":[{"hue-rotate":[c]}],invert:[{invert:[f]}],saturate:[{saturate:[g]}],sepia:[{sepia:[w]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[l]}],"backdrop-grayscale":[{"backdrop-grayscale":[u]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[c]}],"backdrop-invert":[{"backdrop-invert":[f]}],"backdrop-opacity":[{"backdrop-opacity":[x]}],"backdrop-saturate":[{"backdrop-saturate":[g]}],"backdrop-sepia":[{"backdrop-sepia":[w]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[i]}],"border-spacing-x":[{"border-spacing-x":[i]}],"border-spacing-y":[{"border-spacing-y":[i]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",we]}],duration:[{duration:fe()}],ease:[{ease:["linear","in","out","in-out",we]}],delay:[{delay:fe()}],animate:[{animate:["none","spin","ping","pulse","bounce",we]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[v]}],"scale-x":[{"scale-x":[v]}],"scale-y":[{"scale-y":[v]}],rotate:[{rotate:[mo,we]}],"translate-x":[{"translate-x":[R]}],"translate-y":[{"translate-y":[R]}],"skew-x":[{"skew-x":[S]}],"skew-y":[{"skew-y":[S]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",we]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",we]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":O()}],"scroll-mx":[{"scroll-mx":O()}],"scroll-my":[{"scroll-my":O()}],"scroll-ms":[{"scroll-ms":O()}],"scroll-me":[{"scroll-me":O()}],"scroll-mt":[{"scroll-mt":O()}],"scroll-mr":[{"scroll-mr":O()}],"scroll-mb":[{"scroll-mb":O()}],"scroll-ml":[{"scroll-ml":O()}],"scroll-p":[{"scroll-p":O()}],"scroll-px":[{"scroll-px":O()}],"scroll-py":[{"scroll-py":O()}],"scroll-ps":[{"scroll-ps":O()}],"scroll-pe":[{"scroll-pe":O()}],"scroll-pt":[{"scroll-pt":O()}],"scroll-pr":[{"scroll-pr":O()}],"scroll-pb":[{"scroll-pb":O()}],"scroll-pl":[{"scroll-pl":O()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",we]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[mn,In,ga]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},jk=(e,{cacheSize:t,prefix:n,separator:r,experimentalParseClassName:o,extend:s={},override:i={}})=>{Po(e,"cacheSize",t),Po(e,"prefix",n),Po(e,"separator",r),Po(e,"experimentalParseClassName",o);for(const a in i)Dk(e[a],i[a]);for(const a in s)Nk(e[a],s[a]);return e},Po=(e,t,n)=>{n!==void 0&&(e[t]=n)},Dk=(e,t)=>{if(t)for(const n in t)Po(e,n,t[n])},Nk=(e,t)=>{if(t)for(const n in t){const r=t[n];r!==void 0&&(e[n]=(e[n]||[]).concat(r))}},Hk=(e,...t)=>typeof e=="function"?pl(hl,e,...t):pl(()=>jk(hl(),e),...t),Ft=pl(hl);function Kh(e,t){const n={...e};for(const r of t)delete n[r];return n}function gl(e,t,n){typeof t=="string"&&(t=t.split(".").map(o=>{const s=Number(o);return Number.isNaN(s)?o:s}));let r=e;for(const o of t){if(r==null)return n;r=r[o]}return r!==void 0?r:n}const Fi={to:{type:[String,Object],default:void 0,required:!1},href:{type:[String,Object],default:void 0,required:!1},target:{type:String,default:void 0,required:!1},rel:{type:String,default:void 0,required:!1},noRel:{type:Boolean,default:void 0,required:!1},prefetch:{type:Boolean,default:void 0,required:!1},noPrefetch:{type:Boolean,default:void 0,required:!1},activeClass:{type:String,default:void 0,required:!1},exactActiveClass:{type:String,default:void 0,required:!1},prefetchedClass:{type:String,default:void 0,required:!1},replace:{type:Boolean,default:void 0,required:!1},ariaCurrentValue:{type:String,default:void 0,required:!1},external:{type:Boolean,default:void 0,required:!1}},Fk={as:{type:String,default:"button"},type:{type:String,default:"button"},disabled:{type:Boolean,default:null},active:{type:Boolean,default:void 0},exact:{type:Boolean,default:!1},exactQuery:{type:Boolean,default:!1},exactHash:{type:Boolean,default:!1},inactiveClass:{type:String,default:void 0}},Bk=e=>Object.keys(Fi).reduce((n,r)=>(e[r]!==void 0&&(n[r]=e[r]),n),{}),Xr=e=>[...Object.keys(Fi),...Object.keys(Fk),"ariaLabel","title"].reduce((n,r)=>(e[r]!==void 0&&(n[r]=e[r]),n),{}),Uk=Hk({extend:{classGroups:{icons:[e=>e.startsWith("i-")]}}}),zk=tc((e,t,n,r)=>{if(r==="default"||r.startsWith("default.")||r==="popper"||r.startsWith("popper.")||r.endsWith("avatar")&&t==="size"||r.endsWith("chip")&&t==="size"||r.endsWith("badge")&&t==="size"||t==="color"||t==="variant")return!1;if(typeof e[t]=="string"&&typeof n=="string"&&e[t]&&n)return e[t]=Uk(e[t],n),!0});function tn(e,...t){return e==="override"?Li({},...t):zk({},...t)}const Gh=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i;function _f(e){return Gh.test(e)?Vk(e):e}function Vk(e){const t=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;e=e.replace(t,function(r,o,s,i){return o+o+s+s+i+i});const n=Gh.exec(e);return n?`${Number.parseInt(n[1],16)} ${Number.parseInt(n[2],16)} ${Number.parseInt(n[3],16)}`:null}const Wk="inherit",qk="currentColor",Kk="transparent",Gk="#000",Yk="#fff",Qk={50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},Xk={50:"rgb(var(--color-gray-50) / <alpha-value>)",100:"rgb(var(--color-gray-100) / <alpha-value>)",200:"rgb(var(--color-gray-200) / <alpha-value>)",300:"rgb(var(--color-gray-300) / <alpha-value>)",400:"rgb(var(--color-gray-400) / <alpha-value>)",500:"rgb(var(--color-gray-500) / <alpha-value>)",600:"rgb(var(--color-gray-600) / <alpha-value>)",700:"rgb(var(--color-gray-700) / <alpha-value>)",800:"rgb(var(--color-gray-800) / <alpha-value>)",900:"rgb(var(--color-gray-900) / <alpha-value>)",950:"rgb(var(--color-gray-950) / <alpha-value>)"},Jk={50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b",950:"#09090b"},Zk={50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717",950:"#0a0a0a"},eS={50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917",950:"#0c0a09"},tS={50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d",950:"#450a0a"},nS={50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12",950:"#431407"},rS={50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f",950:"#451a03"},oS={50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12",950:"#422006"},sS={50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314",950:"#1a2e05"},iS={50:"#EFFDF5",100:"#D9FBE8",200:"#B3F5D1",300:"#75EDAE",400:"#00DC82",500:"#00C16A",600:"#00A155",700:"#007F45",800:"#016538",900:"#0A5331",950:"#052e16"},aS={50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b",950:"#022c22"},lS={50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a",950:"#042f2e"},cS={50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},uS={50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e",950:"#082f49"},fS={50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"},dS={50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81",950:"#1e1b4b"},pS={50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},hS={50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87",950:"#3b0764"},gS={50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75",950:"#4a044e"},mS={50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843",950:"#500724"},vS={50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337",950:"#4c0519"},yS="rgb(var(--ui-background) / <alpha-value>)",bS="rgb(var(--ui-foreground) / <alpha-value>)",wS={50:"rgb(var(--color-primary-50) / <alpha-value>)",100:"rgb(var(--color-primary-100) / <alpha-value>)",200:"rgb(var(--color-primary-200) / <alpha-value>)",300:"rgb(var(--color-primary-300) / <alpha-value>)",400:"rgb(var(--color-primary-400) / <alpha-value>)",500:"rgb(var(--color-primary-500) / <alpha-value>)",600:"rgb(var(--color-primary-600) / <alpha-value>)",700:"rgb(var(--color-primary-700) / <alpha-value>)",800:"rgb(var(--color-primary-800) / <alpha-value>)",900:"rgb(var(--color-primary-900) / <alpha-value>)",950:"rgb(var(--color-primary-950) / <alpha-value>)",DEFAULT:"rgb(var(--color-primary-DEFAULT) / <alpha-value>)"},_S={50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},$s={inherit:Wk,current:qk,transparent:Kk,black:Gk,white:Yk,slate:Qk,gray:Xk,zinc:Jk,neutral:Zk,stone:eS,red:tS,orange:nS,amber:rS,yellow:oS,lime:sS,green:iS,emerald:aS,teal:lS,cyan:cS,sky:uS,blue:fS,indigo:dS,violet:pS,purple:hS,fuchsia:gS,pink:mS,rose:vS,background:yS,foreground:bS,primary:wS,cool:_S},xS=it(()=>{const e=Ze(),t=_e(),n=$(()=>{const o=gl($s,e.ui.primary),s=gl($s,e.ui.gray);return o||console.warn(`[@nuxt/ui] Primary color '${e.ui.primary}' not found in Tailwind config`),s||console.warn(`[@nuxt/ui] Gray color '${e.ui.gray}' not found in Tailwind config`),`:root { +${Object.entries(o||$s.green).map(([i,a])=>`--color-primary-${i}: ${_f(a)};`).join(` +`)} +--color-primary-DEFAULT: var(--color-primary-500); + +${Object.entries(s||$s.cool).map(([i,a])=>`--color-gray-${i}: ${_f(a)};`).join(` +`)} +} + +.dark { + --color-primary-DEFAULT: var(--color-primary-400); +} +`}),r={style:[{innerHTML:()=>n.value,tagPriority:-2,id:"nuxt-ui-colors"}]};if(t.isHydrating&&!t.payload.serverRendered){const o=document.createElement("style");o.innerHTML=n.value,o.setAttribute("data-nuxt-ui-colors",""),document.head.appendChild(o),r.script=[{innerHTML:"document.head.removeChild(document.querySelector('[data-nuxt-ui-colors]'))"}]}us(r)}),kS="__NUXT_COLOR_MODE__",ma="nuxt-color-mode",SS="localStorage",vn=window[kS]||{},ES=it(e=>{const t=io("color-mode",()=>Bt({preference:vn.preference,value:vn.value,unknown:!1,forced:!1})).value;gt().afterEach(s=>{const i=s.meta.colorMode;i&&i!=="system"?(t.value=i,t.forced=!0):(i==="system"&&console.warn("You cannot force the colorMode to system at the page level."),t.forced=!1,t.value=t.preference==="system"?vn.getColorScheme():t.preference)});let n;function r(){n||!window.matchMedia||(n=window.matchMedia("(prefers-color-scheme: dark)"),n.addEventListener("change",()=>{!t.forced&&t.preference==="system"&&(t.value=vn.getColorScheme())}))}function o(s,i){var a,l;switch(s){case"cookie":window.document.cookie=ma+"="+i;break;case"sessionStorage":(a=window.sessionStorage)==null||a.setItem(ma,i);break;case"localStorage":default:(l=window.localStorage)==null||l.setItem(ma,i)}}$e(()=>t.preference,s=>{t.forced||(s==="system"?(t.value=vn.getColorScheme(),r()):t.value=s,o(SS,s))},{immediate:!0}),$e(()=>t.value,(s,i)=>{let a;a=window.document.createElement("style"),a.appendChild(document.createTextNode("*{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}")),window.document.head.appendChild(a),vn.removeColorScheme(i),vn.addColorScheme(s),window.getComputedStyle(a).opacity,document.head.removeChild(a)}),t.preference==="system"&&r(),e.hook("app:mounted",()=>{t.unknown&&(t.preference=vn.preference,t.value=vn.value,t.unknown=!1)}),e.provide("colorMode",t)}),Yh=/^[a-z0-9]+(-[a-z0-9]+)*$/,fs=(e,t,n,r="")=>{const o=e.split(":");if(e.slice(0,1)==="@"){if(o.length<2||o.length>3)return null;r=o.shift().slice(1)}if(o.length>3||!o.length)return null;if(o.length>1){const a=o.pop(),l=o.pop(),u={provider:o.length>0?o[0]:r,prefix:l,name:a};return t&&!Vs(u)?null:u}const s=o[0],i=s.split("-");if(i.length>1){const a={provider:r,prefix:i.shift(),name:i.join("-")};return t&&!Vs(a)?null:a}if(n&&r===""){const a={provider:r,prefix:"",name:s};return t&&!Vs(a,n)?null:a}return null},Vs=(e,t)=>e?!!((t&&e.prefix===""||e.prefix)&&e.name):!1,Qh=Object.freeze({left:0,top:0,width:16,height:16}),vi=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),lo=Object.freeze({...Qh,...vi}),ml=Object.freeze({...lo,body:"",hidden:!1});function CS(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function xf(e,t){const n=CS(e,t);for(const r in ml)r in vi?r in e&&!(r in n)&&(n[r]=vi[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function PS(e,t){const n=e.icons,r=e.aliases||Object.create(null),o=Object.create(null);function s(i){if(n[i])return o[i]=[];if(!(i in o)){o[i]=null;const a=r[i]&&r[i].parent,l=a&&s(a);l&&(o[i]=[a].concat(l))}return o[i]}return Object.keys(n).concat(Object.keys(r)).forEach(s),o}function TS(e,t,n){const r=e.icons,o=e.aliases||Object.create(null);let s={};function i(a){s=xf(r[a]||o[a],s)}return i(t),n.forEach(i),xf(e,s)}function Xh(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(o=>{t(o,null),n.push(o)});const r=PS(e);for(const o in r){const s=r[o];s&&(t(o,TS(e,o,s)),n.push(o))}return n}const AS={provider:"",aliases:{},not_found:{},...Qh};function va(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function Jh(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!va(e,AS))return null;const n=t.icons;for(const o in n){const s=n[o];if(!o||typeof s.body!="string"||!va(s,ml))return null}const r=t.aliases||Object.create(null);for(const o in r){const s=r[o],i=s.parent;if(!o||typeof i!="string"||!n[i]&&!r[i]||!va(s,ml))return null}return t}const kf=Object.create(null);function OS(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function Sr(e,t){const n=kf[e]||(kf[e]=Object.create(null));return n[t]||(n[t]=OS(e,t))}function fc(e,t){return Jh(t)?Xh(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function $S(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}let Jo=!1;function Zh(e){return typeof e=="boolean"&&(Jo=e),Jo}function dc(e){const t=typeof e=="string"?fs(e,!0,Jo):e;if(t){const n=Sr(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function pc(e,t){const n=fs(e,!0,Jo);if(!n)return!1;const r=Sr(n.provider,n.prefix);return t?$S(r,n.name,t):(r.missing.add(n.name),!0)}function RS(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),Jo&&!t&&!e.prefix){let o=!1;return Jh(e)&&(e.prefix="",Xh(e,(s,i)=>{pc(s,i)&&(o=!0)})),o}const n=e.prefix;if(!Vs({provider:t,prefix:n,name:"a"}))return!1;const r=Sr(t,n);return!!fc(r,e)}function vl(e){const t=dc(e);return t&&{...lo,...t}}const eg=Object.freeze({width:null,height:null}),tg=Object.freeze({...eg,...vi}),IS=/(-?[0-9.]*[0-9]+[0-9.]*)/g,LS=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function Sf(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(IS);if(r===null||!r.length)return e;const o=[];let s=r.shift(),i=LS.test(s);for(;;){if(i){const a=parseFloat(s);isNaN(a)?o.push(s):o.push(Math.ceil(a*t*n)/n)}else o.push(s);if(s=r.shift(),s===void 0)return o.join("");i=!i}}function MS(e,t="defs"){let n="";const r=e.indexOf("<"+t);for(;r>=0;){const o=e.indexOf(">",r),s=e.indexOf("</"+t);if(o===-1||s===-1)break;const i=e.indexOf(">",s);if(i===-1)break;n+=e.slice(o+1,s).trim(),e=e.slice(0,r).trim()+e.slice(i+1)}return{defs:n,content:e}}function jS(e,t){return e?"<defs>"+e+"</defs>"+t:t}function DS(e,t,n){const r=MS(e);return jS(r.defs,t+r.content+n)}const NS=e=>e==="unset"||e==="undefined"||e==="none";function HS(e,t){const n={...lo,...e},r={...tg,...t},o={left:n.left,top:n.top,width:n.width,height:n.height};let s=n.body;[n,r].forEach(h=>{const y=[],x=h.hFlip,b=h.vFlip;let g=h.rotate;x?b?g+=2:(y.push("translate("+(o.width+o.left).toString()+" "+(0-o.top).toString()+")"),y.push("scale(-1 1)"),o.top=o.left=0):b&&(y.push("translate("+(0-o.left).toString()+" "+(o.height+o.top).toString()+")"),y.push("scale(1 -1)"),o.top=o.left=0);let v;switch(g<0&&(g-=Math.floor(g/4)*4),g=g%4,g){case 1:v=o.height/2+o.top,y.unshift("rotate(90 "+v.toString()+" "+v.toString()+")");break;case 2:y.unshift("rotate(180 "+(o.width/2+o.left).toString()+" "+(o.height/2+o.top).toString()+")");break;case 3:v=o.width/2+o.left,y.unshift("rotate(-90 "+v.toString()+" "+v.toString()+")");break}g%2===1&&(o.left!==o.top&&(v=o.left,o.left=o.top,o.top=v),o.width!==o.height&&(v=o.width,o.width=o.height,o.height=v)),y.length&&(s=DS(s,'<g transform="'+y.join(" ")+'">',"</g>"))});const i=r.width,a=r.height,l=o.width,u=o.height;let c,f;i===null?(f=a===null?"1em":a==="auto"?u:a,c=Sf(f,l/u)):(c=i==="auto"?l:i,f=a===null?Sf(c,u/l):a==="auto"?u:a);const d={},p=(h,y)=>{NS(y)||(d[h]=y.toString())};p("width",c),p("height",f);const m=[o.left,o.top,l,u];return d.viewBox=m.join(" "),{attributes:d,viewBox:m,body:s}}const FS=/\sid="(\S+)"/g,BS="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let US=0;function zS(e,t=BS){const n=[];let r;for(;r=FS.exec(e);)n.push(r[1]);if(!n.length)return e;const o="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(s=>{const i=typeof t=="function"?t(s):t+(US++).toString(),a=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+a+')([")]|\\.[a-z])',"g"),"$1"+i+o+"$3")}),e=e.replace(new RegExp(o,"g"),""),e}const yl=Object.create(null);function ng(e,t){yl[e]=t}function bl(e){return yl[e]||yl[""]}function hc(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Bi=Object.create(null),yo=["https://api.simplesvg.com","https://api.unisvg.com"],Ws=[];for(;yo.length>0;)yo.length===1||Math.random()>.5?Ws.push(yo.shift()):Ws.push(yo.pop());Bi[""]=hc({resources:["https://api.iconify.design"].concat(Ws)});function rg(e,t){const n=hc(t);return n===null?!1:(Bi[e]=n,!0)}function Ui(e){return Bi[e]}function VS(){return Object.keys(Bi)}const WS=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let yi=WS();function qS(e){yi=e}function KS(){return yi}function GS(e,t){const n=Ui(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let o=0;n.resources.forEach(i=>{o=Math.max(o,i.length)});const s=t+".json?icons=";r=n.maxURL-o-n.path.length-s.length}return r}function YS(e){return e===404}const QS=(e,t,n)=>{const r=[],o=GS(e,t),s="icons";let i={type:s,provider:e,prefix:t,icons:[]},a=0;return n.forEach((l,u)=>{a+=l.length+1,a>=o&&u>0&&(r.push(i),i={type:s,provider:e,prefix:t,icons:[]},a=l.length),i.icons.push(l)}),r.push(i),r};function XS(e){if(typeof e=="string"){const t=Ui(e);if(t)return t.path}return"/"}const JS=(e,t,n)=>{if(!yi){n("abort",424);return}let r=XS(t.provider);switch(t.type){case"icons":{const s=t.prefix,a=t.icons.join(","),l=new URLSearchParams({icons:a});r+=s+".json?"+l.toString();break}case"custom":{const s=t.uri;r+=s.slice(0,1)==="/"?s.slice(1):s;break}default:n("abort",400);return}let o=503;yi(e+r).then(s=>{const i=s.status;if(i!==200){setTimeout(()=>{n(YS(i)?"abort":"next",i)});return}return o=501,s.json()}).then(s=>{if(typeof s!="object"||s===null){setTimeout(()=>{s===404?n("abort",s):n("next",o)});return}setTimeout(()=>{n("success",s)})}).catch(()=>{n("next",o)})},ZS={prepare:QS,send:JS};function eE(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((o,s)=>o.provider!==s.provider?o.provider.localeCompare(s.provider):o.prefix!==s.prefix?o.prefix.localeCompare(s.prefix):o.name.localeCompare(s.name));let r={provider:"",prefix:"",name:""};return e.forEach(o=>{if(r.name===o.name&&r.prefix===o.prefix&&r.provider===o.provider)return;r=o;const s=o.provider,i=o.prefix,a=o.name,l=n[s]||(n[s]=Object.create(null)),u=l[i]||(l[i]=Sr(s,i));let c;a in u.icons?c=t.loaded:i===""||u.missing.has(a)?c=t.missing:c=t.pending;const f={provider:s,prefix:i,name:a};c.push(f)}),t}function og(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(o=>o.id!==t))})}function tE(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,o=e.prefix;t.forEach(s=>{const i=s.icons,a=i.pending.length;i.pending=i.pending.filter(l=>{if(l.prefix!==o)return!0;const u=l.name;if(e.icons[u])i.loaded.push({provider:r,prefix:o,name:u});else if(e.missing.has(u))i.missing.push({provider:r,prefix:o,name:u});else return n=!0,!0;return!1}),i.pending.length!==a&&(n||og([e],s.id),s.callback(i.loaded.slice(0),i.missing.slice(0),i.pending.slice(0),s.abort))})}))}let nE=0;function rE(e,t,n){const r=nE++,o=og.bind(null,n,r);if(!t.pending.length)return o;const s={id:r,icons:t,callback:e,abort:o};return n.forEach(i=>{(i.loaderCallbacks||(i.loaderCallbacks=[])).push(s)}),o}function oE(e,t=!0,n=!1){const r=[];return e.forEach(o=>{const s=typeof o=="string"?fs(o,t,n):o;s&&r.push(s)}),r}var sE={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function iE(e,t,n,r){const o=e.resources.length,s=e.random?Math.floor(Math.random()*o):e.index;let i;if(e.random){let S=e.resources.slice(0);for(i=[];S.length>1;){const C=Math.floor(Math.random()*S.length);i.push(S[C]),S=S.slice(0,C).concat(S.slice(C+1))}i=i.concat(S)}else i=e.resources.slice(s).concat(e.resources.slice(0,s));const a=Date.now();let l="pending",u=0,c,f=null,d=[],p=[];typeof r=="function"&&p.push(r);function m(){f&&(clearTimeout(f),f=null)}function h(){l==="pending"&&(l="aborted"),m(),d.forEach(S=>{S.status==="pending"&&(S.status="aborted")}),d=[]}function y(S,C){C&&(p=[]),typeof S=="function"&&p.push(S)}function x(){return{startTime:a,payload:t,status:l,queriesSent:u,queriesPending:d.length,subscribe:y,abort:h}}function b(){l="failed",p.forEach(S=>{S(void 0,c)})}function g(){d.forEach(S=>{S.status==="pending"&&(S.status="aborted")}),d=[]}function v(S,C,R){const A=C!=="success";switch(d=d.filter(T=>T!==S),l){case"pending":break;case"failed":if(A||!e.dataAfterTimeout)return;break;default:return}if(C==="abort"){c=R,b();return}if(A){c=R,d.length||(i.length?w():b());return}if(m(),g(),!e.random){const T=e.resources.indexOf(S.resource);T!==-1&&T!==e.index&&(e.index=T)}l="completed",p.forEach(T=>{T(R)})}function w(){if(l!=="pending")return;m();const S=i.shift();if(S===void 0){if(d.length){f=setTimeout(()=>{m(),l==="pending"&&(g(),b())},e.timeout);return}b();return}const C={status:"pending",resource:S,callback:(R,A)=>{v(C,R,A)}};d.push(C),u++,f=setTimeout(w,e.rotate),n(S,t,C.callback)}return setTimeout(w),x}function sg(e){const t={...sE,...e};let n=[];function r(){n=n.filter(a=>a().status==="pending")}function o(a,l,u){const c=iE(t,a,l,(f,d)=>{r(),u&&u(f,d)});return n.push(c),c}function s(a){return n.find(l=>a(l))||null}return{query:o,find:s,setIndex:a=>{t.index=a},getIndex:()=>t.index,cleanup:r}}function Ef(){}const ya=Object.create(null);function aE(e){if(!ya[e]){const t=Ui(e);if(!t)return;const n=sg(t),r={config:t,redundancy:n};ya[e]=r}return ya[e]}function ig(e,t,n){let r,o;if(typeof e=="string"){const s=bl(e);if(!s)return n(void 0,424),Ef;o=s.send;const i=aE(e);i&&(r=i.redundancy)}else{const s=hc(e);if(s){r=sg(s);const i=e.resources?e.resources[0]:"",a=bl(i);a&&(o=a.send)}}return!r||!o?(n(void 0,424),Ef):r.query(t,o,n)().abort}const Cf="iconify2",Zo="iconify",ag=Zo+"-count",Pf=Zo+"-version",lg=36e5,lE=168,cE=50;function wl(e,t){try{return e.getItem(t)}catch{}}function gc(e,t,n){try{return e.setItem(t,n),!0}catch{}}function Tf(e,t){try{e.removeItem(t)}catch{}}function _l(e,t){return gc(e,ag,t.toString())}function xl(e){return parseInt(wl(e,ag))||0}const yr={local:!0,session:!0},cg={local:new Set,session:new Set};let mc=!1;function uE(e){mc=e}let Rs=typeof window>"u"?{}:window;function ug(e){const t=e+"Storage";try{if(Rs&&Rs[t]&&typeof Rs[t].length=="number")return Rs[t]}catch{}yr[e]=!1}function fg(e,t){const n=ug(e);if(!n)return;const r=wl(n,Pf);if(r!==Cf){if(r){const a=xl(n);for(let l=0;l<a;l++)Tf(n,Zo+l.toString())}gc(n,Pf,Cf),_l(n,0);return}const o=Math.floor(Date.now()/lg)-lE,s=a=>{const l=Zo+a.toString(),u=wl(n,l);if(typeof u=="string"){try{const c=JSON.parse(u);if(typeof c=="object"&&typeof c.cached=="number"&&c.cached>o&&typeof c.provider=="string"&&typeof c.data=="object"&&typeof c.data.prefix=="string"&&t(c,a))return!0}catch{}Tf(n,l)}};let i=xl(n);for(let a=i-1;a>=0;a--)s(a)||(a===i-1?(i--,_l(n,i)):cg[e].add(a))}function dg(){if(!mc){uE(!0);for(const e in yr)fg(e,t=>{const n=t.data,r=t.provider,o=n.prefix,s=Sr(r,o);if(!fc(s,n).length)return!1;const i=n.lastModified||-1;return s.lastModifiedCached=s.lastModifiedCached?Math.min(s.lastModifiedCached,i):i,!0})}}function fE(e,t){const n=e.lastModifiedCached;if(n&&n>=t)return n===t;if(e.lastModifiedCached=t,n)for(const r in yr)fg(r,o=>{const s=o.data;return o.provider!==e.provider||s.prefix!==e.prefix||s.lastModified===t});return!0}function dE(e,t){mc||dg();function n(r){let o;if(!yr[r]||!(o=ug(r)))return;const s=cg[r];let i;if(s.size)s.delete(i=Array.from(s).shift());else if(i=xl(o),i>=cE||!_l(o,i+1))return;const a={cached:Math.floor(Date.now()/lg),provider:e.provider,data:t};return gc(o,Zo+i.toString(),JSON.stringify(a))}t.lastModified&&!fE(e,t.lastModified)||Object.keys(t.icons).length&&(t.not_found&&(t=Object.assign({},t),delete t.not_found),n("local")||n("session"))}function Af(){}function pE(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,tE(e)}))}function hE(e){const t=[],n=[];return e.forEach(r=>{(r.match(Yh)?t:n).push(r)}),{valid:t,invalid:n}}function bo(e,t,n,r){function o(){const s=e.pendingIcons;t.forEach(i=>{s&&s.delete(i),e.icons[i]||e.missing.add(i)})}if(n&&typeof n=="object")try{if(!fc(e,n).length){o();return}r&&dE(e,n)}catch(s){console.error(s)}o(),pE(e)}function Of(e,t){e instanceof Promise?e.then(n=>{t(n)}).catch(()=>{t(null)}):t(e)}function gE(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,o=e.iconsToLoad;if(delete e.iconsToLoad,!o||!o.length)return;const s=e.loadIcon;if(e.loadIcons&&(o.length>1||!s)){Of(e.loadIcons(o,r,n),c=>{bo(e,o,c,!1)});return}if(s){o.forEach(c=>{const f=s(c,r,n);Of(f,d=>{const p=d?{prefix:r,icons:{[c]:d}}:null;bo(e,[c],p,!1)})});return}const{valid:i,invalid:a}=hE(o);if(a.length&&bo(e,a,null,!1),!i.length)return;const l=r.match(Yh)?bl(n):null;if(!l){bo(e,i,null,!1);return}l.prepare(n,r,i).forEach(c=>{ig(n,c,f=>{bo(e,c.icons,f,!0)})})}))}const pg=(e,t)=>{const n=oE(e,!0,Zh()),r=eE(n);if(!r.pending.length){let l=!0;return t&&setTimeout(()=>{l&&t(r.loaded,r.missing,r.pending,Af)}),()=>{l=!1}}const o=Object.create(null),s=[];let i,a;return r.pending.forEach(l=>{const{provider:u,prefix:c}=l;if(c===a&&u===i)return;i=u,a=c,s.push(Sr(u,c));const f=o[u]||(o[u]=Object.create(null));f[c]||(f[c]=[])}),r.pending.forEach(l=>{const{provider:u,prefix:c,name:f}=l,d=Sr(u,c),p=d.pendingIcons||(d.pendingIcons=new Set);p.has(f)||(p.add(f),o[u][c].push(f))}),s.forEach(l=>{const u=o[l.provider][l.prefix];u.length&&gE(l,u)}),t?rE(t,r,s):Af},mE=e=>new Promise((t,n)=>{const r=typeof e=="string"?fs(e,!0):e;if(!r){n(e);return}pg([r||e],o=>{if(o.length&&r){const s=dc(r);if(s){t({...lo,...s});return}}n(e)})});function vE(e,t){switch(e){case"local":case"session":yr[e]=t;break;case"all":for(const n in yr)yr[n]=t;break}}function yE(e,t){const n={...e};for(const r in t){const o=t[r],s=typeof o;r in eg?(o===null||o&&(s==="string"||s==="number"))&&(n[r]=o):s===typeof n[r]&&(n[r]=r==="rotate"?o%4:o)}return n}const bE=/[\s,]+/;function wE(e,t){t.split(bE).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function _E(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(o){for(;o<0;)o+=4;return o%4}if(n===""){const o=parseInt(e);return isNaN(o)?0:r(o)}else if(n!==e){let o=0;switch(n){case"%":o=25;break;case"deg":o=90}if(o){let s=parseFloat(e.slice(0,e.length-n.length));return isNaN(s)?0:(s=s/o,s%1===0?r(s):0)}}return t}function xE(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}function kE(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function SE(e){return"data:image/svg+xml,"+kE(e)}function EE(e){return'url("'+SE(e)+'")'}const $f={...tg,inline:!1},CE={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},PE={display:"inline-block"},kl={backgroundColor:"currentColor"},hg={backgroundColor:"transparent"},Rf={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},If={webkitMask:kl,mask:kl,background:hg};for(const e in If){const t=If[e];for(const n in Rf)t[e+n]=Rf[n]}const qs={};["horizontal","vertical"].forEach(e=>{const t=e.slice(0,1)+"Flip";qs[e+"-flip"]=t,qs[e.slice(0,1)+"-flip"]=t,qs[e+"Flip"]=t});function Lf(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const Mf=(e,t)=>{const n=yE($f,t),r={...CE},o=t.mode||"svg",s={},i=t.style,a=typeof i=="object"&&!(i instanceof Array)?i:{};for(let h in t){const y=t[h];if(y!==void 0)switch(h){case"icon":case"style":case"onLoad":case"mode":case"ssr":break;case"inline":case"hFlip":case"vFlip":n[h]=y===!0||y==="true"||y===1;break;case"flip":typeof y=="string"&&wE(n,y);break;case"color":s.color=y;break;case"rotate":typeof y=="string"?n[h]=_E(y):typeof y=="number"&&(n[h]=y);break;case"ariaHidden":case"aria-hidden":y!==!0&&y!=="true"&&delete r["aria-hidden"];break;default:{const x=qs[h];x?(y===!0||y==="true"||y===1)&&(n[x]=!0):$f[h]===void 0&&(r[h]=y)}}}const l=HS(e,n),u=l.attributes;if(n.inline&&(s.verticalAlign="-0.125em"),o==="svg"){r.style={...s,...a},Object.assign(r,u);let h=0,y=t.id;return typeof y=="string"&&(y=y.replace(/-/g,"_")),r.innerHTML=zS(l.body,y?()=>y+"ID"+h++:"iconifyVue"),ve("svg",r)}const{body:c,width:f,height:d}=e,p=o==="mask"||(o==="bg"?!1:c.indexOf("currentColor")!==-1),m=xE(c,{...u,width:f+"",height:d+""});return r.style={...s,"--svg":EE(m),width:Lf(u.width),height:Lf(u.height),...PE,...p?kl:hg,...a},ve("span",r)};function TE(e){vE(e,!1)}Zh(!0);ng("",ZS);if(typeof document<"u"&&typeof window<"u"){dg();const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!RS(r))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const r="IconifyProviders["+n+"] is invalid.";try{const o=t[n];if(typeof o!="object"||!o||o.resources===void 0)continue;rg(n,o)||console.error(r)}catch{console.error(r)}}}}const AE={...lo,body:""},OE=ee({inheritAttrs:!1,data(){return{_name:"",_loadingIcon:null,iconMounted:!1,counter:0}},mounted(){this.iconMounted=!0},unmounted(){this.abortLoading()},methods:{abortLoading(){this._loadingIcon&&(this._loadingIcon.abort(),this._loadingIcon=null)},getIcon(e,t,n){if(typeof e=="object"&&e!==null&&typeof e.body=="string")return this._name="",this.abortLoading(),{data:e};let r;if(typeof e!="string"||(r=fs(e,!1,!0))===null)return this.abortLoading(),null;let o=dc(r);if(!o)return(!this._loadingIcon||this._loadingIcon.name!==e)&&(this.abortLoading(),this._name="",o!==null&&(this._loadingIcon={name:e,abort:pg([r],()=>{this.counter++})})),null;if(this.abortLoading(),this._name!==e&&(this._name=e,t&&t(e)),n){o=Object.assign({},o);const i=n(o.body,r.name,r.prefix,r.provider);typeof i=="string"&&(o.body=i)}const s=["iconify"];return r.prefix!==""&&s.push("iconify--"+r.prefix),r.provider!==""&&s.push("iconify--"+r.provider),{data:o,classes:s}}},render(){this.counter;const e=this.$attrs,t=this.iconMounted||e.ssr?this.getIcon(e.icon,e.onLoad,e.customise):null;if(!t)return Mf(AE,e);let n=e;return t.classes&&(n={...e,class:(typeof e.class=="string"?e.class+" ":"")+t.classes.join(" ")}),Mf({...lo,...t.data},n)}}),$E={getAPIConfig:Ui,setAPIModule:ng,sendAPIQuery:ig,setFetch:qS,getFetch:KS,listAPIProviders:VS},RE=it({name:"@nuxt/icon",setup(){var r,o;const e=zt(),t=Ze().icon;$E.setFetch($fetch.native),TE("all");const n=[];if(t.provider==="server"){const s=((o=(r=e.app)==null?void 0:r.baseURL)==null?void 0:o.replace(/\/$/,""))??"";n.push(s+(t.localApiEndpoint||"/api/_nuxt_icon")),(t.fallbackToApi===!0||t.fallbackToApi==="client-only")&&n.push(t.iconifyApiEndpoint)}else n.push(t.iconifyApiEndpoint);rg("",{resources:n})}}),IE=it(()=>{navigator&&navigator.userAgent&&navigator.userAgent.match(/Win[a-z0-9]*;/)&&document.documentElement.classList.add("nuxt-ui-scrollbars")}),LE=it(()=>({provide:{ui:Ze().ui.presets}})),ME=it(()=>{const e=Ze(),t=_e(),n=$(()=>`:root { + --header-height: ${e.ui.variables.header.height}; + + ${Object.entries(e.ui.variables.light).map(([o,s])=>`--ui-${o}: ${s};`).join(` +`)} +} + +.dark { + ${Object.entries(e.ui.variables.dark).map(([o,s])=>`--ui-${o}: ${s};`).join(` +`)} +}`),r={style:[{innerHTML:()=>n.value,tagPriority:-2,id:"nuxt-ui-variables"}]};if(t.isHydrating&&!t.payload.serverRendered){const o=document.createElement("style");o.innerHTML=n.value,o.setAttribute("data-nuxt-ui-variables",""),document.head.appendChild(o),r.script=[{innerHTML:"document.head.removeChild(document.querySelector('[data-nuxt-ui-variables]'))"}]}us(r)}),jE=[Ww,Kw,g1,j1,D1,N1,H1,F1,Nx,Hx,Fx,sk,ak,xS,ES,RE,IE,LE,ME];function DE(e,t){const n=t/e*100;return 2/Math.PI*100*Math.atan(n/50)}function NE(e={}){const{duration:t=2e3,throttle:n=200,hideDelay:r=500,resetDelay:o=400}=e,s=e.estimatedProgress||DE,i=_e(),a=H(0),l=H(!1),u=H(!1);let c=!1,f,d,p,m;const h=()=>{u.value=!1,y(0)};function y(C=0){if(!i.isHydrating){if(C>=100)return b();v(),a.value=C<0?0:C,n?d=setTimeout(()=>{l.value=!0,w()},n):(l.value=!0,w())}}function x(){p=setTimeout(()=>{l.value=!1,m=setTimeout(()=>{a.value=0},o)},r)}function b(C={}){a.value=100,c=!0,v(),g(),C.error&&(u.value=!0),C.force?(a.value=0,l.value=!1):x()}function g(){clearTimeout(p),clearTimeout(m)}function v(){clearTimeout(d),cancelAnimationFrame(f)}function w(){c=!1;let C;function R(A){if(c)return;C??(C=A);const T=A-C;a.value=Math.max(0,Math.min(100,s(t,T))),f=requestAnimationFrame(R)}f=requestAnimationFrame(R)}let S=()=>{};{const C=i.hook("page:loading:start",()=>{h()}),R=i.hook("page:loading:end",()=>{b()}),A=i.hook("vue:error",()=>b());S=()=>{A(),C(),R(),v()}}return{_cleanup:S,progress:$(()=>a.value),isLoading:$(()=>l.value),error:$(()=>u.value),start:h,set:y,finish:b,clear:v}}function HE(e={}){const t=_e(),n=t._loadingIndicator=t._loadingIndicator||NE(e);return Pr()&&(t._loadingIndicatorDeps=t._loadingIndicatorDeps||0,t._loadingIndicatorDeps++,_r(()=>{t._loadingIndicatorDeps--,t._loadingIndicatorDeps===0&&(n._cleanup(),delete t._loadingIndicator)})),n}const FE=ee({name:"NuxtLoadingIndicator",props:{throttle:{type:Number,default:200},duration:{type:Number,default:2e3},height:{type:Number,default:3},color:{type:[String,Boolean],default:"repeating-linear-gradient(to right,#00dc82 0%,#34cdfe 50%,#0047e1 100%)"},errorColor:{type:String,default:"repeating-linear-gradient(to right,#f87171 0%,#ef4444 100%)"},estimatedProgress:{type:Function,required:!1}},setup(e,{slots:t,expose:n}){const{progress:r,isLoading:o,error:s,start:i,finish:a,clear:l}=HE({duration:e.duration,throttle:e.throttle,estimatedProgress:e.estimatedProgress});return n({progress:r,isLoading:o,error:s,start:i,finish:a,clear:l}),()=>ve("div",{class:"nuxt-loading-indicator",style:{position:"fixed",top:0,right:0,left:0,pointerEvents:"none",width:"auto",height:`${e.height}px`,opacity:o.value?1:0,background:s.value?e.errorColor:e.color||void 0,backgroundSize:`${100/r.value*100}% auto`,transform:`scaleX(${r.value}%)`,transformOrigin:"left",transition:"transform 0.1s, height 0.4s, opacity 0.4s",zIndex:999999}},t)}}),BE=ee({inheritAttrs:!1,__name:"ColorModeImage",props:{as:{type:[String,Object],default:"img"},dark:{type:String,required:!0},light:{type:String,required:!0}},setup(e){return(t,n)=>(M(),se(Se,null,[(M(),re(Wr(e.as),ae({src:e.light,class:"dark:hidden"},t.$attrs),null,16,["src"])),(M(),re(Wr(e.as),ae({src:e.dark,class:"hidden dark:block"},t.$attrs),null,16,["src"]))],64))}}),Qe=(e,t,n,r,o=!1)=>{const s=Rv(),i=Ze(),a=$(()=>{var d;const u=ln(t),c=ln(n),f=ln(r);return tn((u==null?void 0:u.strategy)||((d=i.ui)==null?void 0:d.strategy),f?{wrapper:f}:{},u||{},o?gl(i.ui,e,{}):{},c||{})}),l=$(()=>Kh(s,["class"]));return{ui:a,attrs:l}};function gg({ui:e,props:t}){const n=Ut();if(Be("ButtonGroupContextConsumer",!0),Ce("ButtonGroupContextConsumer",!1))return{size:$(()=>t.size),rounded:$(()=>e.value.rounded)};let o=n.parent,s;for(;o&&!s;){if(o.type.name==="ButtonGroup"){s=Ce(`group-${o.uid}`);break}o=o.parent}const i=$(()=>s==null?void 0:s.value.children.indexOf(n));return Me(()=>{s==null||s.value.register(n)}),ot(()=>{s==null||s.value.unregister(n)}),{size:$(()=>s!=null&&s.value?(s==null?void 0:s.value.size)??e.value.default.size:t.size),rounded:$(()=>!s||i.value===-1?e.value.rounded:s.value.children.length===1?s.value.ui.rounded:i.value===0?s.value.rounded.start:i.value===s.value.children.length-1?s.value.rounded.end:"rounded-none")}}const UE={wrapper:"relative inline-flex items-center justify-center flex-shrink-0",background:"bg-gray-100 dark:bg-gray-800",rounded:"rounded-full",text:"font-medium leading-none text-gray-900 dark:text-white truncate",placeholder:"font-medium leading-none text-gray-500 dark:text-gray-400 truncate",size:{"3xs":"h-4 w-4 text-[8px]","2xs":"h-5 w-5 text-[10px]",xs:"h-6 w-6 text-xs",sm:"h-8 w-8 text-sm",md:"h-10 w-10 text-base",lg:"h-12 w-12 text-lg",xl:"h-14 w-14 text-xl","2xl":"h-16 w-16 text-2xl","3xl":"h-20 w-20 text-3xl"},chip:{base:"absolute rounded-full ring-1 ring-white dark:ring-gray-900 flex items-center justify-center text-white dark:text-gray-900 font-medium",background:"bg-{color}-500 dark:bg-{color}-400",position:{"top-right":"top-0 right-0","bottom-right":"bottom-0 right-0","top-left":"top-0 left-0","bottom-left":"bottom-0 left-0"},size:{"3xs":"h-[4px] min-w-[4px] text-[4px] p-px","2xs":"h-[5px] min-w-[5px] text-[5px] p-px",xs:"h-1.5 min-w-[0.375rem] text-[6px] p-px",sm:"h-2 min-w-[0.5rem] text-[7px] p-0.5",md:"h-2.5 min-w-[0.625rem] text-[8px] p-0.5",lg:"h-3 min-w-[0.75rem] text-[10px] p-0.5",xl:"h-3.5 min-w-[0.875rem] text-[11px] p-1","2xl":"h-4 min-w-[1rem] text-[12px] p-1","3xl":"h-5 min-w-[1.25rem] text-[14px] p-1"}},icon:{base:"text-gray-500 dark:text-gray-400 flex-shrink-0",size:{"3xs":"h-2 w-2","2xs":"h-2.5 w-2.5",xs:"h-3 w-3",sm:"h-4 w-4",md:"h-5 w-5",lg:"h-6 w-6",xl:"h-7 w-7","2xl":"h-8 w-8","3xl":"h-10 w-10"}},default:{size:"sm",icon:null,chipColor:null,chipPosition:"top-right"}},zE={base:"inline-flex items-center",rounded:"rounded-md",font:"font-medium",size:{xs:"text-xs px-1.5 py-0.5",sm:"text-xs px-2 py-1",md:"text-sm px-2 py-1",lg:"text-sm px-2.5 py-1.5"},color:{white:{solid:"ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-900 dark:text-white bg-white dark:bg-gray-900"},gray:{solid:"ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-700 dark:text-gray-200 bg-gray-50 dark:bg-gray-800"},black:{solid:"text-white dark:text-gray-900 bg-gray-900 dark:bg-white"}},variant:{solid:"bg-{color}-500 dark:bg-{color}-400 text-white dark:text-gray-900",outline:"text-{color}-500 dark:text-{color}-400 ring-1 ring-inset ring-{color}-500 dark:ring-{color}-400",soft:"bg-{color}-50 dark:bg-{color}-400 dark:bg-opacity-10 text-{color}-500 dark:text-{color}-400",subtle:"bg-{color}-50 dark:bg-{color}-400 dark:bg-opacity-10 text-{color}-500 dark:text-{color}-400 ring-1 ring-inset ring-{color}-500 dark:ring-{color}-400 ring-opacity-25 dark:ring-opacity-25"},default:{size:"sm",variant:"solid",color:"primary"}},mg={base:"focus:outline-none focus-visible:outline-0 disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:cursor-not-allowed aria-disabled:opacity-75 flex-shrink-0",font:"font-medium",rounded:"rounded-md",truncate:"text-left break-all line-clamp-1",block:"w-full flex justify-center items-center",inline:"inline-flex items-center",size:{"2xs":"text-xs",xs:"text-xs",sm:"text-sm",md:"text-sm",lg:"text-sm",xl:"text-base"},gap:{"2xs":"gap-x-1",xs:"gap-x-1.5",sm:"gap-x-1.5",md:"gap-x-2",lg:"gap-x-2.5",xl:"gap-x-2.5"},padding:{"2xs":"px-2 py-1",xs:"px-2.5 py-1.5",sm:"px-2.5 py-1.5",md:"px-3 py-2",lg:"px-3.5 py-2.5",xl:"px-3.5 py-2.5"},square:{"2xs":"p-1",xs:"p-1.5",sm:"p-1.5",md:"p-2",lg:"p-2.5",xl:"p-2.5"},color:{white:{solid:"shadow-sm ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-900 dark:text-white bg-white hover:bg-gray-50 disabled:bg-white aria-disabled:bg-white dark:bg-gray-900 dark:hover:bg-gray-800/50 dark:disabled:bg-gray-900 dark:aria-disabled:bg-gray-900 focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",ghost:"text-gray-900 dark:text-white hover:bg-white dark:hover:bg-gray-900 focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"},gray:{solid:"shadow-sm ring-1 ring-inset ring-gray-300 dark:ring-gray-700 text-gray-700 dark:text-gray-200 bg-gray-50 hover:bg-gray-100 disabled:bg-gray-50 aria-disabled:bg-gray-50 dark:bg-gray-800 dark:hover:bg-gray-700/50 dark:disabled:bg-gray-800 dark:aria-disabled:bg-gray-800 focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",ghost:"text-gray-700 dark:text-gray-200 hover:text-gray-900 dark:hover:text-white hover:bg-gray-50 dark:hover:bg-gray-800 focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",link:"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 underline-offset-4 hover:underline focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"},black:{solid:"shadow-sm text-white dark:text-gray-900 bg-gray-900 hover:bg-gray-800 disabled:bg-gray-900 aria-disabled:bg-gray-900 dark:bg-white dark:hover:bg-gray-100 dark:disabled:bg-white dark:aria-disabled:bg-white focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400",link:"text-gray-900 dark:text-white underline-offset-4 hover:underline focus-visible:ring-inset focus-visible:ring-2 focus-visible:ring-primary-500 dark:focus-visible:ring-primary-400"}},variant:{solid:"shadow-sm text-white dark:text-gray-900 bg-{color}-500 hover:bg-{color}-600 disabled:bg-{color}-500 aria-disabled:bg-{color}-500 dark:bg-{color}-400 dark:hover:bg-{color}-500 dark:disabled:bg-{color}-400 dark:aria-disabled:bg-{color}-400 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-{color}-500 dark:focus-visible:outline-{color}-400",outline:"ring-1 ring-inset ring-current text-{color}-500 dark:text-{color}-400 hover:bg-{color}-50 disabled:bg-transparent aria-disabled:bg-transparent dark:hover:bg-{color}-950 dark:disabled:bg-transparent dark:aria-disabled:bg-transparent focus-visible:ring-2 focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400",soft:"text-{color}-500 dark:text-{color}-400 bg-{color}-50 hover:bg-{color}-100 disabled:bg-{color}-50 aria-disabled:bg-{color}-50 dark:bg-{color}-950 dark:hover:bg-{color}-900 dark:disabled:bg-{color}-950 dark:aria-disabled:bg-{color}-950 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400",ghost:"text-{color}-500 dark:text-{color}-400 hover:bg-{color}-50 disabled:bg-transparent aria-disabled:bg-transparent dark:hover:bg-{color}-950 dark:disabled:bg-transparent dark:aria-disabled:bg-transparent focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400",link:"text-{color}-500 hover:text-{color}-600 disabled:text-{color}-500 aria-disabled:text-{color}-500 dark:text-{color}-400 dark:hover:text-{color}-500 dark:disabled:text-{color}-400 dark:aria-disabled:text-{color}-400 underline-offset-4 hover:underline focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-{color}-500 dark:focus-visible:ring-{color}-400"},icon:{base:"flex-shrink-0",loading:"animate-spin",size:{"2xs":"h-4 w-4",xs:"h-4 w-4",sm:"h-5 w-5",md:"h-5 w-5",lg:"h-5 w-5",xl:"h-6 w-6"}},default:{size:"sm",variant:"solid",color:"primary",loadingIcon:"i-heroicons-arrow-path-20-solid"}},ds={base:"invisible before:visible before:block before:rotate-45 before:z-[-1] before:w-2 before:h-2",ring:"before:ring-1 before:ring-gray-200 dark:before:ring-gray-800",rounded:"before:rounded-sm",background:"before:bg-gray-200 dark:before:bg-gray-800",shadow:"before:shadow",placement:"group-data-[popper-placement*='right']:-left-1 group-data-[popper-placement*='left']:-right-1 group-data-[popper-placement*='top']:-bottom-1 group-data-[popper-placement*='bottom']:-top-1"};({...ds});const VE={wrapper:"w-full flex flex-col",container:"w-full flex flex-col",item:{base:"",size:"text-sm",color:"text-gray-500 dark:text-gray-400",padding:"pt-1.5 pb-3",icon:"ms-auto transform transition-transform duration-200 flex-shrink-0"},transition:{enterActiveClass:"overflow-hidden transition-[height] duration-200 ease-out",leaveActiveClass:"overflow-hidden transition-[height] duration-200 ease-out"},default:{openIcon:"i-heroicons-chevron-down-20-solid",closeIcon:"",class:"mb-1.5 w-full",variant:"soft",truncate:!0}},WE={base:"inline-flex items-center justify-center text-gray-900 dark:text-white",padding:"px-1",size:{xs:"h-4 min-w-[16px] text-[10px]",sm:"h-5 min-w-[20px] text-[11px]",md:"h-6 min-w-[24px] text-[12px]"},rounded:"rounded",font:"font-medium font-sans",background:"bg-gray-100 dark:bg-gray-800",ring:"ring-1 ring-gray-300 dark:ring-gray-700 ring-inset",default:{size:"sm"}},jf={container:"z-20 group",trigger:"flex items-center w-full",width:"w-full",height:"max-h-60",base:"relative focus:outline-none overflow-y-auto scroll-py-1",background:"bg-white dark:bg-gray-800",shadow:"shadow-lg",rounded:"rounded-md",padding:"p-1",ring:"ring-1 ring-gray-200 dark:ring-gray-700",empty:"text-sm text-gray-400 dark:text-gray-500 px-2 py-1.5",option:{base:"cursor-default select-none relative flex items-center justify-between gap-1",rounded:"rounded-md",padding:"px-1.5 py-1.5",size:"text-sm",color:"text-gray-900 dark:text-white",container:"flex items-center gap-1.5 min-w-0",active:"bg-gray-100 dark:bg-gray-900",inactive:"",selected:"pe-7",disabled:"cursor-not-allowed opacity-50",empty:"text-sm text-gray-400 dark:text-gray-500 px-2 py-1.5",icon:{base:"flex-shrink-0 h-5 w-5",active:"text-gray-900 dark:text-white",inactive:"text-gray-400 dark:text-gray-500"},selectedIcon:{wrapper:"absolute inset-y-0 end-0 flex items-center",padding:"pe-2",base:"h-5 w-5 text-gray-900 dark:text-white flex-shrink-0"},avatar:{base:"flex-shrink-0",size:"2xs"},chip:{base:"flex-shrink-0 w-2 h-2 mx-1 rounded-full"}},transition:{leaveActiveClass:"transition ease-in duration-100",leaveFromClass:"opacity-100",leaveToClass:"opacity-0"},popper:{placement:"bottom-end"},default:{selectedIcon:"i-heroicons-check-20-solid",trailingIcon:"i-heroicons-chevron-down-20-solid",empty:{label:"No options."},optionEmpty:{label:'No results for "{query}".'}},arrow:{...ds,ring:"before:ring-1 before:ring-gray-200 dark:before:ring-gray-700",background:"before:bg-white dark:before:bg-gray-700"}};({...jf,option:{...jf.option},arrow:{...ds}});const qE={base:"mx-auto",padding:"px-4 sm:px-6 lg:px-8",constrained:"max-w-7xl"};({...ds});const KE={wrapper:"relative",container:"z-50 group",trigger:"inline-flex w-full",width:"",background:"bg-white dark:bg-gray-900",shadow:"shadow-lg",rounded:"rounded-md",ring:"ring-1 ring-gray-200 dark:ring-gray-800",base:"overflow-hidden focus:outline-none relative",transition:{enterActiveClass:"transition ease-out duration-200",enterFromClass:"opacity-0 translate-y-1",enterToClass:"opacity-100 translate-y-0",leaveActiveClass:"transition ease-in duration-150",leaveFromClass:"opacity-100 translate-y-0",leaveToClass:"opacity-0 translate-y-1"},overlay:{base:"fixed inset-0 transition-opacity z-50",background:"bg-gray-200/75 dark:bg-gray-800/75",transition:{enterActiveClass:"ease-out duration-200",enterFromClass:"opacity-0",enterToClass:"opacity-100",leaveActiveClass:"ease-in duration-150",leaveFromClass:"opacity-100",leaveToClass:"opacity-0"}},popper:{strategy:"fixed"},default:{openDelay:0,closeDelay:0},arrow:ds},GE={wrapper:"w-full pointer-events-auto",container:"relative overflow-hidden",inner:"w-0 flex-1",title:"text-sm font-medium text-gray-900 dark:text-white",description:"mt-1 text-sm leading-4 text-gray-500 dark:text-gray-400",actions:"flex items-center gap-2 mt-3 flex-shrink-0",background:"bg-white dark:bg-gray-900",shadow:"shadow-lg",rounded:"rounded-lg",padding:"p-4",gap:"gap-3",ring:"ring-1 ring-gray-200 dark:ring-gray-800",icon:{base:"flex-shrink-0 w-5 h-5",color:"text-{color}-500 dark:text-{color}-400"},avatar:{base:"flex-shrink-0 self-center",size:"md"},progress:{base:"absolute bottom-0 end-0 start-0 h-1",background:"bg-{color}-500 dark:bg-{color}-400"},transition:{enterActiveClass:"transform ease-out duration-300 transition",enterFromClass:"translate-y-2 opacity-0 sm:translate-y-0 sm:translate-x-2",enterToClass:"translate-y-0 opacity-100 sm:translate-x-0",leaveActiveClass:"transition ease-in duration-100",leaveFromClass:"opacity-100",leaveToClass:"opacity-0"},default:{color:"primary",icon:null,timeout:5e3,closeButton:{icon:"i-heroicons-x-mark-20-solid",color:"gray",variant:"link",padded:!1},actionButton:{size:"xs",color:"white"}}},YE={wrapper:"fixed flex flex-col justify-end z-[55]",position:"bottom-0 end-0",width:"w-full sm:w-96",container:"px-4 sm:px-6 py-6 space-y-3 overflow-y-auto"},nn=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n},Mn=tn(We.ui.strategy,We.ui.badge,zE),QE=ee({inheritAttrs:!1,props:{size:{type:String,default:()=>Mn.default.size,validator(e){return Object.keys(Mn.size).includes(e)}},color:{type:String,default:()=>Mn.default.color,validator(e){return[...We.ui.colors,...Object.keys(Mn.color)].includes(e)}},variant:{type:String,default:()=>Mn.default.variant,validator(e){return[...Object.keys(Mn.variant),...Object.values(Mn.color).flatMap(t=>Object.keys(t))].includes(e)}},label:{type:[String,Number],default:null},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(e){const{ui:t,attrs:n}=Qe("badge",xe(e,"ui"),Mn),{size:r,rounded:o}=gg({ui:t,props:e}),s=$(()=>{var a,l;const i=((l=(a=t.value.color)==null?void 0:a[e.color])==null?void 0:l[e.variant])||t.value.variant[e.variant];return Ft(ut(t.value.base,t.value.font,o.value,t.value.size[r.value],i==null?void 0:i.replaceAll("{color}",e.color)),e.class)});return{attrs:n,badgeClass:s}}});function XE(e,t,n,r,o,s){return M(),se("span",ae({class:e.badgeClass},e.attrs),[be(e.$slots,"default",{},()=>[st(Fe(e.label),1)])],16)}const vg=nn(QE,[["render",XE]]),ba=tn(We.ui.strategy,We.ui.kbd,WE),JE=ee({inheritAttrs:!1,props:{value:{type:String,default:null},size:{type:String,default:()=>ba.default.size,validator(e){return Object.keys(ba.size).includes(e)}},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(e){const{ui:t,attrs:n}=Qe("kbd",xe(e,"ui"),ba),r=$(()=>Ft(ut(t.value.base,t.value.size[e.size],t.value.padding,t.value.rounded,t.value.font,t.value.background,t.value.ring),e.class));return{ui:t,attrs:n,kbdClass:r}}});function ZE(e,t,n,r,o,s){return M(),se("kbd",ae({class:e.kbdClass},e.attrs),[be(e.$slots,"default",{},()=>[st(Fe(e.value),1)])],16)}const eC=nn(JE,[["render",ZE]]),tC=Object.freeze({left:0,top:0,width:16,height:16}),yg=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),vc=Object.freeze({...tC,...yg});Object.freeze({...vc,body:"",hidden:!1});function nC(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}const rC=/(-?[0-9.]*[0-9]+[0-9.]*)/g,oC=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function Sl(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(rC);if(r===null||!r.length)return e;const o=[];let s=r.shift(),i=oC.test(s);for(;;){if(i){const a=parseFloat(s);isNaN(a)?o.push(s):o.push(Math.ceil(a*t*n)/n)}else o.push(s);if(s=r.shift(),s===void 0)return o.join("");i=!i}}function sC(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function iC(e){return"data:image/svg+xml,"+sC(e)}function aC(e){return'url("'+iC(e)+'")'}function lC(e){const[t,n,r,o]=e;if(r!==o){const s=Math.max(r,o);return[t-(s-r)/2,n-(s-o)/2,s,s]}return e}const cC=Object.freeze({width:null,height:null}),uC=Object.freeze({...cC,...yg});function fC(e,t="defs"){let n="";const r=e.indexOf("<"+t);for(;r>=0;){const o=e.indexOf(">",r),s=e.indexOf("</"+t);if(o===-1||s===-1)break;const i=e.indexOf(">",s);if(i===-1)break;n+=e.slice(o+1,s).trim(),e=e.slice(0,r).trim()+e.slice(i+1)}return{defs:n,content:e}}function dC(e,t){return e?"<defs>"+e+"</defs>"+t:t}function pC(e,t,n){const r=fC(e);return dC(r.defs,t+r.content+n)}const hC=e=>e==="unset"||e==="undefined"||e==="none";function gC(e,t){const n={...vc,...e},r={...uC,...t},o={left:n.left,top:n.top,width:n.width,height:n.height};let s=n.body;[n,r].forEach(h=>{const y=[],x=h.hFlip,b=h.vFlip;let g=h.rotate;x?b?g+=2:(y.push("translate("+(o.width+o.left).toString()+" "+(0-o.top).toString()+")"),y.push("scale(-1 1)"),o.top=o.left=0):b&&(y.push("translate("+(0-o.left).toString()+" "+(o.height+o.top).toString()+")"),y.push("scale(1 -1)"),o.top=o.left=0);let v;switch(g<0&&(g-=Math.floor(g/4)*4),g=g%4,g){case 1:v=o.height/2+o.top,y.unshift("rotate(90 "+v.toString()+" "+v.toString()+")");break;case 2:y.unshift("rotate(180 "+(o.width/2+o.left).toString()+" "+(o.height/2+o.top).toString()+")");break;case 3:v=o.width/2+o.left,y.unshift("rotate(-90 "+v.toString()+" "+v.toString()+")");break}g%2===1&&(o.left!==o.top&&(v=o.left,o.left=o.top,o.top=v),o.width!==o.height&&(v=o.width,o.width=o.height,o.height=v)),y.length&&(s=pC(s,'<g transform="'+y.join(" ")+'">',"</g>"))});const i=r.width,a=r.height,l=o.width,u=o.height;let c,f;i===null?(f=a===null?"1em":a==="auto"?u:a,c=Sl(f,l/u)):(c=i==="auto"?l:i,f=a===null?Sl(c,u/l):a==="auto"?u:a);const d={},p=(h,y)=>{hC(y)||(d[h]=y.toString())};p("width",c),p("height",f);const m=[o.left,o.top,l,u];return d.viewBox=m.join(" "),{attributes:d,viewBox:m,body:s}}function mC(e){const t={display:"inline-block",width:"1em",height:"1em"},n=e.varName;switch(e.pseudoSelector&&(t.content="''"),e.mode){case"background":n&&(t["background-image"]="var(--"+n+")"),t["background-repeat"]="no-repeat",t["background-size"]="100% 100%";break;case"mask":t["background-color"]="currentColor",n&&(t["mask-image"]=t["-webkit-mask-image"]="var(--"+n+")"),t["mask-repeat"]=t["-webkit-mask-repeat"]="no-repeat",t["mask-size"]=t["-webkit-mask-size"]="100% 100%";break}return t}function vC(e,t){const n={},r=t.varName,o=gC(e);let s=o.viewBox;s[2]!==s[3]&&(t.forceSquare?s=lC(s):n.width=Sl("1em",s[2]/s[3]));const i=nC(o.body.replace(/currentColor/g,t.color||"black"),{viewBox:`${s[0]} ${s[1]} ${s[2]} ${s[3]}`,width:`${s[2]}`,height:`${s[3]}`}),a=aC(i);if(r)n["--"+r]=a;else switch(t.mode){case"background":n["background-image"]=a;break;case"mask":n["mask-image"]=n["-webkit-mask-image"]=a;break}return n}const wa={selectorStart:{compressed:"{",compact:" {",expanded:" {"},selectorEnd:{compressed:"}",compact:`; } +`,expanded:`; +} +`},rule:{compressed:"{key}:",compact:" {key}: ",expanded:` + {key}: `}};function yC(e,t="expanded"){const n=[];for(let r=0;r<e.length;r++){const{selector:o,rules:s}=e[r];let a=(o instanceof Array?o.join(t==="compressed"?",":", "):o)+wa.selectorStart[t],l=!0;for(const u in s)l||(a+=";"),a+=wa.rule[t].replace("{key}",u)+s[u],l=!1;a+=wa.selectorEnd[t],n.push(a)}return n.join(t==="compressed"?"":` +`)}function bC(e,t={}){const n=t.customise?t.customise(e.body):e.body,r=t.mode||(t.color||!n.includes("currentColor")?"background":"mask");let o=t.varName;o===void 0&&r==="mask"&&(o="svg");const s={...t,mode:r,varName:o};r==="background"&&delete s.varName;const i={...t.rules,...mC(s),...vC({...vc,...e,body:n},s)},a=t.iconSelector||".icon";return yC([{selector:a,rules:i}],s.format)}async function wC(e,t){if(!e)return null;const n=vl(e);if(n)return n;let r;const o=mE(e).catch(()=>(console.warn(`[Icon] failed to load icon \`${e}\``),null));return t>0?await Promise.race([o,new Promise(s=>{r=setTimeout(()=>{console.warn(`[Icon] loading icon \`${e}\` timed out after ${t}ms`),s()},t)})]).finally(()=>clearTimeout(r)):await o,vl(e)}function bg(e){const t=Ze().icon,n=(t.collections||[]).sort((r,o)=>o.length-r.length);return $(()=>{var i;const r=e(),o=r.startsWith(t.cssSelectorPrefix)?r.slice(t.cssSelectorPrefix.length):r,s=((i=t.aliases)==null?void 0:i[o])||o;if(!s.includes(":")){const a=n.find(l=>s.startsWith(l+"-"));return a?a+":"+s.slice(a.length+1):s}return s})}let wo;function _C(e){return e.replace(/([^\w-])/g,"\\$1")}function xC(){if(wo)return wo;wo=new Set;const e=n=>{if(n=n.replace(/^:where\((.*)\)$/,"$1").trim(),n.startsWith("."))return n},t=n=>{if(n!=null&&n.length)for(const r of n){r!=null&&r.cssRules&&t(r.cssRules);const o=r==null?void 0:r.selectorText;if(typeof o=="string"){const s=e(o);s&&wo.add(s)}}};if(typeof document<"u")for(const n of document.styleSheets)try{const r=n.cssRules||n.rules;t(r)}catch{}return wo}const kC=ee({name:"NuxtIconCss",props:{name:{type:String,required:!0},customize:{type:Function,required:!1}},setup(e){const t=_e(),n=Ze().icon,r=$(()=>e.name?n.cssSelectorPrefix+e.name:"");function o(a){var c,f;if(!a)return;const l=vl(a);if(l)return l;const u=(f=(c=t.payload)==null?void 0:c.data)==null?void 0:f[a];if(u)return pc(a,u),u}const s=$(()=>"."+_C(r.value));function i(a,l=!0){let u=s.value;n.cssWherePseudo&&(u=`:where(${u})`);const c=bC(a,{iconSelector:u,format:"compressed",customise:e.customize});return n.cssLayer&&l?`@layer ${n.cssLayer} { ${c} }`:c}{const a=xC();async function l(u){if(a.has(s.value)||typeof document>"u")return;const c=document.createElement("style");c.textContent=i(u);const f=document.head.querySelector('style, link[rel="stylesheet"]');f?document.head.insertBefore(c,f):document.head.appendChild(c),a.add(s.value)}$e(()=>e.name,()=>{if(a.has(s.value))return;const u=o(e.name);u?l(u):wC(e.name,n.fetchTimeout).then(c=>{c&&l(c)}).catch(()=>null)},{immediate:!0})}return()=>ve("span",{class:["iconify",r.value]})}}),SC=ee({name:"NuxtIconSvg",props:{name:{type:String,required:!0},customize:{type:Function,required:!1}},async setup(e,{slots:t}){const n=_e();Ze().icon;const r=bg(()=>e.name),o="i-"+r.value;if(r.value){const s=n.payload.data[o];s&&pc(r.value,s)}return()=>ve(OE,{icon:r.value,ssr:!0,customise:e.customize},t)}}),wg=ee({name:"NuxtIcon",props:{name:{type:String,required:!0},mode:{type:String,required:!1,default:null},size:{type:[Number,String],required:!1,default:null},customize:{type:Function,required:!1}},async setup(e,{slots:t}){const n=_e(),r=Ze().icon,o=bg(()=>e.name),s=$(()=>{var l;return((l=n.vueApp)==null?void 0:l.component(o.value))||((e.mode||r.mode)==="svg"?SC:kC)}),i=$(()=>{const l=e.size||r.size;return l?{fontSize:Number.isNaN(+l)?l:l+"px"}:null}),a=e.customize||r.customize;return()=>ve(s.value,{...r.attrs,name:o.value,class:r.class,style:i.value,customize:a},t)}}),EC=Object.freeze(Object.defineProperty({__proto__:null,default:wg},Symbol.toStringTag,{value:"Module"})),CC=ee({props:{name:{type:String,required:!0},mode:{type:String,required:!1,default:null},size:{type:[Number,String],required:!1,default:null},customize:{type:Function,required:!1,default:null}}});function PC(e,t,n,r,o,s){const i=wg;return M(),re(i,Gs(oi(e.$props)),null,16)}const wt=nn(CC,[["render",PC]]),TC=Object.freeze(Object.defineProperty({__proto__:null,default:wt},Symbol.toStringTag,{value:"Module"})),AC=ee({inheritAttrs:!1,props:{...Fi,as:{type:String,default:"button"},type:{type:String,default:"button"},disabled:{type:Boolean,default:null},active:{type:Boolean,default:void 0},exact:{type:Boolean,default:!1},exactQuery:{type:Boolean,default:!1},exactHash:{type:Boolean,default:!1},inactiveClass:{type:String,default:void 0}},setup(e){function t(n,r,{isActive:o,isExactActive:s}){return e.exactQuery&&!Yp(n.query,r.query)||e.exactHash&&n.hash!==r.hash?e.inactiveClass:e.exact&&s||!e.exact&&o?e.activeClass:e.inactiveClass}return{resolveLinkClass:t}}}),OC=["href","aria-disabled","role","rel","target","tabindex","onClick"];function $C(e,t,n,r,o,s){const i=Nh;return e.to?(M(),re(i,ae({key:1},e.$props,{custom:""}),{default:ie(({route:a,href:l,target:u,rel:c,navigate:f,isActive:d,isExactActive:p,isExternal:m})=>[Ae("a",ae(e.$attrs,{href:e.disabled?void 0:l,"aria-disabled":e.disabled?"true":void 0,role:e.disabled?"link":void 0,rel:c,target:u,class:e.active!==void 0?e.active?e.activeClass:e.inactiveClass:e.resolveLinkClass(a,e._.provides[so]||e.$route,{isActive:d,isExactActive:p}),tabindex:e.disabled?-1:void 0,onClick:h=>!m&&!e.disabled&&f(h)}),[be(e.$slots,"default",Gs(oi({isActive:e.active!==void 0?e.active:e.exact?p:d})))],16,OC)]),_:3},16)):(M(),re(Wr(e.as),ae({key:0,type:e.type,disabled:e.disabled},e.$attrs,{class:e.active?e.activeClass:e.inactiveClass}),{default:ie(()=>[be(e.$slots,"default",Gs(oi({isActive:e.active})))]),_:3},16,["type","disabled","class"]))}const tr=nn(AC,[["render",$C]]),yn=tn(We.ui.strategy,We.ui.button,mg),RC=ee({components:{UIcon:wt,ULink:tr},inheritAttrs:!1,props:{...Fi,type:{type:String,default:"button"},block:{type:Boolean,default:!1},label:{type:String,default:null},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},padded:{type:Boolean,default:!0},size:{type:String,default:()=>yn.default.size,validator(e){return Object.keys(yn.size).includes(e)}},color:{type:String,default:()=>yn.default.color,validator(e){return[...We.ui.colors,...Object.keys(yn.color)].includes(e)}},variant:{type:String,default:()=>yn.default.variant,validator(e){return[...Object.keys(yn.variant),...Object.values(yn.color).flatMap(t=>Object.keys(t))].includes(e)}},icon:{type:String,default:null},loadingIcon:{type:String,default:()=>yn.default.loadingIcon},leadingIcon:{type:String,default:null},trailingIcon:{type:String,default:null},trailing:{type:Boolean,default:!1},leading:{type:Boolean,default:!1},square:{type:Boolean,default:!1},truncate:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(e,{slots:t}){const{ui:n,attrs:r}=Qe("button",xe(e,"ui"),yn),{size:o,rounded:s}=gg({ui:n,props:e}),i=$(()=>e.icon&&e.leading||e.icon&&!e.trailing||e.loading&&!e.trailing||e.leadingIcon),a=$(()=>e.icon&&e.trailing||e.loading&&e.trailing||e.trailingIcon),l=$(()=>e.square||!t.default&&!e.label),u=$(()=>{var y,x;const h=((x=(y=n.value.color)==null?void 0:y[e.color])==null?void 0:x[e.variant])||n.value.variant[e.variant];return Ft(ut(n.value.base,n.value.font,s.value,n.value.size[o.value],n.value.gap[o.value],e.padded&&n.value[l.value?"square":"padding"][o.value],h==null?void 0:h.replaceAll("{color}",e.color),e.block?n.value.block:n.value.inline),e.class)}),c=$(()=>e.loading?e.loadingIcon:e.leadingIcon||e.icon),f=$(()=>e.loading&&!i.value?e.loadingIcon:e.trailingIcon||e.icon),d=$(()=>ut(n.value.icon.base,n.value.icon.size[o.value],e.loading&&n.value.icon.loading)),p=$(()=>ut(n.value.icon.base,n.value.icon.size[o.value],e.loading&&!i.value&&n.value.icon.loading)),m=$(()=>Bk(e));return{ui:n,attrs:r,isLeading:i,isTrailing:a,isSquare:l,buttonClass:u,leadingIconName:c,trailingIconName:f,leadingIconClass:d,trailingIconClass:p,linkProps:m}}});function IC(e,t,n,r,o,s){const i=wt,a=tr;return M(),re(a,ae({type:e.type,disabled:e.disabled||e.loading,class:e.buttonClass},{...e.linkProps,...e.attrs}),{default:ie(()=>[be(e.$slots,"leading",{disabled:e.disabled,loading:e.loading},()=>[e.isLeading&&e.leadingIconName?(M(),re(i,{key:0,name:e.leadingIconName,class:W(e.leadingIconClass),"aria-hidden":"true"},null,8,["name","class"])):me("",!0)]),be(e.$slots,"default",{},()=>[e.label?(M(),se("span",{key:0,class:W([e.truncate?e.ui.truncate:""])},Fe(e.label),3)):me("",!0)]),be(e.$slots,"trailing",{disabled:e.disabled,loading:e.loading},()=>[e.isTrailing&&e.trailingIconName?(M(),re(i,{key:0,name:e.trailingIconName,class:W(e.trailingIconClass),"aria-hidden":"true"},null,8,["name","class"])):me("",!0)])]),_:3},16,["type","disabled","class"])}const rn=nn(RC,[["render",IC]]),LC=Object.freeze(Object.defineProperty({__proto__:null,default:rn},Symbol.toStringTag,{value:"Module"})),MC=()=>{const e=En(),t=H(!1),n=H(!1),r=H(!1),o=H(!1);function s(){if(t.value){t.value=!1,setTimeout(()=>{n.value=!n.value},0);return}n.value=!n.value}function i(){if(r.value){r.value=!1,setTimeout(()=>{o.value=!o.value},200);return}o.value=!o.value}return $e(()=>e.path,()=>{r.value=!1}),{isHeaderDialogOpen:t,isContentSearchModalOpen:n,isDashboardSidebarSlidoverOpen:r,isDashboardSidebarSlideoverOpen:r,isDashboardSearchModalOpen:o,toggleContentSearch:s,toggleDashboardSearch:i}},_g=Hh(MC),jC=()=>{const e=$(()=>navigator&&navigator.userAgent&&navigator.userAgent.match(/Macintosh;/)),t=H(" "),n=ek(),r=$(()=>{var a,l,u;const o=(a=n.value)==null?void 0:a.tagName,s=(l=n.value)==null?void 0:l.contentEditable;return o==="INPUT"||o==="TEXTAREA"||s==="true"||s==="plaintext-only"?((u=n.value)==null?void 0:u.name)||!0:!1});return Me(()=>{t.value=e.value?"⌘":"Ctrl"}),{macOS:e,metaSymbol:t,activeElement:n,usingInput:r}},DC=Hh(jC),NC={class:"hidden lg:flex items-center gap-0.5 ml-auto -my-1 flex-shrink-0"},HC=ee({__name:"ContentSearchButton",props:{label:{type:String,default:"Search..."}},setup(e){const t=Ze(),{$ui:n}=_e(),{toggleContentSearch:r}=_g(),{metaSymbol:o}=DC();return(s,i)=>{var u,c,f,d;const a=eC,l=rn;return M(),re(l,ae({icon:E(t).ui.icons.search,label:e.label,truncate:""},e.label?(c=(u=E(n))==null?void 0:u.button)==null?void 0:c.input:(d=(f=E(n))==null?void 0:f.button)==null?void 0:d.secondary,{"aria-label":"Search",class:[!!e.label&&"flex-1"],onClick:E(r)}),Ai({_:2},[e.label?{name:"trailing",fn:ie(()=>[Ae("div",NC,[Y(a,null,{default:ie(()=>[st(Fe(E(o)),1)]),_:1}),Y(a,null,{default:ie(()=>i[0]||(i[0]=[st(" K ")])),_:1})])]),key:"0"}:void 0]),1040,["icon","label","class","onClick"])}}}),FC=Symbol.for("nuxt:client-only"),yc=ee({name:"ClientOnly",inheritAttrs:!1,props:["fallback","placeholder","placeholderTag","fallbackTag"],setup(e,{slots:t,attrs:n}){const r=H(!1);return Me(()=>{r.value=!0}),Be(FC,!0),o=>{var l;if(r.value)return(l=t.default)==null?void 0:l.call(t);const s=t.fallback||t.placeholder;if(s)return s();const i=o.fallback||o.placeholder||"",a=o.fallbackTag||o.placeholderTag||"span";return se(a,n,i)}}}),BC=()=>io("color-mode").value,xg=ee({inheritAttrs:!1,__name:"ColorModeButton",setup(e){const t=BC(),n=Ze(),{$ui:r}=_e(),o=$({get(){return t.value==="dark"},set(){t.preference=t.value==="dark"?"light":"dark"}});return(s,i)=>{var u;const a=rn,l=yc;return(u=E(t))!=null&&u.forced?me("",!0):(M(),re(l,{key:0},{fallback:ie(()=>i[1]||(i[1]=[Ae("div",{class:"w-8 h-8"},null,-1)])),default:ie(()=>{var c,f;return[Y(a,ae({icon:E(o)?E(n).ui.icons.dark:E(n).ui.icons.light},{...(f=(c=E(r))==null?void 0:c.button)==null?void 0:f.secondary,...s.$attrs},{"aria-label":`Switch to ${E(o)?"light":"dark"} mode`,onClick:i[0]||(i[0]=d=>o.value=!E(o))}),null,16,["icon","aria-label"])]}),_:1}))}}});function bc(e){typeof queueMicrotask=="function"?queueMicrotask(e):Promise.resolve().then(e).catch(t=>setTimeout(()=>{throw t}))}function ps(){let e=[],t={addEventListener(n,r,o,s){return n.addEventListener(r,o,s),t.add(()=>n.removeEventListener(r,o,s))},requestAnimationFrame(...n){let r=requestAnimationFrame(...n);t.add(()=>cancelAnimationFrame(r))},nextFrame(...n){t.requestAnimationFrame(()=>{t.requestAnimationFrame(...n)})},setTimeout(...n){let r=setTimeout(...n);t.add(()=>clearTimeout(r))},microTask(...n){let r={current:!0};return bc(()=>{r.current&&n[0]()}),t.add(()=>{r.current=!1})},style(n,r,o){let s=n.style.getPropertyValue(r);return Object.assign(n.style,{[r]:o}),this.add(()=>{Object.assign(n.style,{[r]:s})})},group(n){let r=ps();return n(r),this.add(()=>r.dispose())},add(n){return e.push(n),()=>{let r=e.indexOf(n);if(r>=0)for(let o of e.splice(r,1))o()}},dispose(){for(let n of e.splice(0))n()}};return t}var Df;let kg=Symbol("headlessui.useid"),UC=0;const un=(Df=Pi)!=null?Df:function(){return Ce(kg,()=>`${++UC}`)()};function wc(e){Be(kg,e)}function J(e){var t;if(e==null||e.value==null)return null;let n=(t=e.value.$el)!=null?t:e.value;return n instanceof Node?n:null}function lt(e,t,...n){if(e in t){let o=t[e];return typeof o=="function"?o(...n):o}let r=new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map(o=>`"${o}"`).join(", ")}.`);throw Error.captureStackTrace&&Error.captureStackTrace(r,lt),r}var zC=Object.defineProperty,VC=(e,t,n)=>t in e?zC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Nf=(e,t,n)=>(VC(e,typeof t!="symbol"?t+"":t,n),n);let WC=class{constructor(){Nf(this,"current",this.detect()),Nf(this,"currentId",0)}set(t){this.current!==t&&(this.currentId=0,this.current=t)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}},hs=new WC;function On(e){if(hs.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e!=null&&e.hasOwnProperty("value")){let t=J(e);if(t)return t.ownerDocument}return document}let El=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(e=>`${e}:not([tabindex='-1'])`).join(",");var ht=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(ht||{}),es=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(es||{}),qC=(e=>(e[e.Previous=-1]="Previous",e[e.Next=1]="Next",e))(qC||{});function zi(e=document.body){return e==null?[]:Array.from(e.querySelectorAll(El)).sort((t,n)=>Math.sign((t.tabIndex||Number.MAX_SAFE_INTEGER)-(n.tabIndex||Number.MAX_SAFE_INTEGER)))}var _c=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(_c||{});function Sg(e,t=0){var n;return e===((n=On(e))==null?void 0:n.body)?!1:lt(t,{0(){return e.matches(El)},1(){let r=e;for(;r!==null;){if(r.matches(El))return!0;r=r.parentElement}return!1}})}var KC=(e=>(e[e.Keyboard=0]="Keyboard",e[e.Mouse=1]="Mouse",e))(KC||{});typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.headlessuiFocusVisible="")},!0),document.addEventListener("click",e=>{e.detail===1?delete document.documentElement.dataset.headlessuiFocusVisible:e.detail===0&&(document.documentElement.dataset.headlessuiFocusVisible="")},!0));function br(e){e==null||e.focus({preventScroll:!0})}let GC=["textarea","input"].join(",");function YC(e){var t,n;return(n=(t=e==null?void 0:e.matches)==null?void 0:t.call(e,GC))!=null?n:!1}function QC(e,t=n=>n){return e.slice().sort((n,r)=>{let o=t(n),s=t(r);if(o===null||s===null)return 0;let i=o.compareDocumentPosition(s);return i&Node.DOCUMENT_POSITION_FOLLOWING?-1:i&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function Gt(e,t,{sorted:n=!0,relativeTo:r=null,skipElements:o=[]}={}){var s;let i=(s=Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e==null?void 0:e.ownerDocument)!=null?s:document,a=Array.isArray(e)?n?QC(e):e:zi(e);o.length>0&&a.length>1&&(a=a.filter(m=>!o.includes(m))),r=r??i.activeElement;let l=(()=>{if(t&5)return 1;if(t&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),u=(()=>{if(t&1)return 0;if(t&2)return Math.max(0,a.indexOf(r))-1;if(t&4)return Math.max(0,a.indexOf(r))+1;if(t&8)return a.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),c=t&32?{preventScroll:!0}:{},f=0,d=a.length,p;do{if(f>=d||f+d<=0)return 0;let m=u+f;if(t&16)m=(m+d)%d;else{if(m<0)return 3;if(m>=d)return 1}p=a[m],p==null||p.focus(c),f+=l}while(p!==i.activeElement);return t&6&&YC(p)&&p.select(),2}function Eg(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function XC(){return/Android/gi.test(window.navigator.userAgent)}function JC(){return Eg()||XC()}function Is(e,t,n){hs.isServer||Je(r=>{document.addEventListener(e,t,n),r(()=>document.removeEventListener(e,t,n))})}function Cg(e,t,n){hs.isServer||Je(r=>{window.addEventListener(e,t,n),r(()=>window.removeEventListener(e,t,n))})}function Pg(e,t,n=$(()=>!0)){function r(s,i){if(!n.value||s.defaultPrevented)return;let a=i(s);if(a===null||!a.getRootNode().contains(a))return;let l=function u(c){return typeof c=="function"?u(c()):Array.isArray(c)||c instanceof Set?c:[c]}(e);for(let u of l){if(u===null)continue;let c=u instanceof HTMLElement?u:J(u);if(c!=null&&c.contains(a)||s.composed&&s.composedPath().includes(c))return}return!Sg(a,_c.Loose)&&a.tabIndex!==-1&&s.preventDefault(),t(s,a)}let o=H(null);Is("pointerdown",s=>{var i,a;n.value&&(o.value=((a=(i=s.composedPath)==null?void 0:i.call(s))==null?void 0:a[0])||s.target)},!0),Is("mousedown",s=>{var i,a;n.value&&(o.value=((a=(i=s.composedPath)==null?void 0:i.call(s))==null?void 0:a[0])||s.target)},!0),Is("click",s=>{JC()||o.value&&(r(s,()=>o.value),o.value=null)},!0),Is("touchend",s=>r(s,()=>s.target instanceof HTMLElement?s.target:null),!0),Cg("blur",s=>r(s,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function Hf(e,t){if(e)return e;let n=t??"button";if(typeof n=="string"&&n.toLowerCase()==="button")return"button"}function Tg(e,t){let n=H(Hf(e.value.type,e.value.as));return Me(()=>{n.value=Hf(e.value.type,e.value.as)}),Je(()=>{var r;n.value||J(t)&&J(t)instanceof HTMLButtonElement&&!((r=J(t))!=null&&r.hasAttribute("type"))&&(n.value="button")}),n}var Qn=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(Qn||{}),zn=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(zn||{});function _t({visible:e=!0,features:t=0,ourProps:n,theirProps:r,...o}){var s;let i=Og(r,n),a=Object.assign(o,{props:i});if(e||t&2&&i.static)return _a(a);if(t&1){let l=(s=i.unmount)==null||s?0:1;return lt(l,{0(){return null},1(){return _a({...o,props:{...i,hidden:!0,style:{display:"none"}}})}})}return _a(a)}function _a({props:e,attrs:t,slots:n,slot:r,name:o}){var s,i;let{as:a,...l}=$g(e,["unmount","static"]),u=(s=n.default)==null?void 0:s.call(n,r),c={};if(r){let f=!1,d=[];for(let[p,m]of Object.entries(r))typeof m=="boolean"&&(f=!0),m===!0&&d.push(p);f&&(c["data-headlessui-state"]=d.join(" "))}if(a==="template"){if(u=Ag(u??[]),Object.keys(l).length>0||Object.keys(t).length>0){let[f,...d]=u??[];if(!ZC(f)||d.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${o} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(l).concat(Object.keys(t)).map(h=>h.trim()).filter((h,y,x)=>x.indexOf(h)===y).sort((h,y)=>h.localeCompare(y)).map(h=>` - ${h}`).join(` +`),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map(h=>` - ${h}`).join(` +`)].join(` +`));let p=Og((i=f.props)!=null?i:{},l,c),m=dn(f,p,!0);for(let h in p)h.startsWith("on")&&(m.props||(m.props={}),m.props[h]=p[h]);return m}return Array.isArray(u)&&u.length===1?u[0]:u}return ve(a,Object.assign({},l,c),{default:()=>u})}function Ag(e){return e.flatMap(t=>t.type===Se?Ag(t.children):[t])}function Og(...e){if(e.length===0)return{};if(e.length===1)return e[0];let t={},n={};for(let r of e)for(let o in r)o.startsWith("on")&&typeof r[o]=="function"?(n[o]!=null||(n[o]=[]),n[o].push(r[o])):t[o]=r[o];if(t.disabled||t["aria-disabled"])return Object.assign(t,Object.fromEntries(Object.keys(n).map(r=>[r,void 0])));for(let r in n)Object.assign(t,{[r](o,...s){let i=n[r];for(let a of i){if(o instanceof Event&&o.defaultPrevented)return;a(o,...s)}}});return t}function nO(e){let t=Object.assign({},e);for(let n in t)t[n]===void 0&&delete t[n];return t}function $g(e,t=[]){let n=Object.assign({},e);for(let r of t)r in n&&delete n[r];return n}function ZC(e){return e==null?!1:typeof e.type=="string"||typeof e.type=="object"||typeof e.type=="function"}var Er=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(Er||{});let Jr=ee({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(e,{slots:t,attrs:n}){return()=>{var r;let{features:o,...s}=e,i={"aria-hidden":(o&2)===2?!0:(r=s["aria-hidden"])!=null?r:void 0,hidden:(o&4)===4?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(o&4)===4&&(o&2)!==2&&{display:"none"}}};return _t({ourProps:i,theirProps:s,slot:{},attrs:n,slots:t,name:"Hidden"})}}}),Rg=Symbol("Context");var Ge=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(Ge||{});function eP(){return gs()!==null}function gs(){return Ce(Rg,null)}function xc(e){Be(Rg,e)}var kt=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(kt||{});function tP(e){function t(){document.readyState!=="loading"&&(e(),document.removeEventListener("DOMContentLoaded",t))}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("DOMContentLoaded",t),t())}let dr=[];tP(()=>{function e(t){t.target instanceof HTMLElement&&t.target!==document.body&&dr[0]!==t.target&&(dr.unshift(t.target),dr=dr.filter(n=>n!=null&&n.isConnected),dr.splice(10))}window.addEventListener("click",e,{capture:!0}),window.addEventListener("mousedown",e,{capture:!0}),window.addEventListener("focus",e,{capture:!0}),document.body.addEventListener("click",e,{capture:!0}),document.body.addEventListener("mousedown",e,{capture:!0}),document.body.addEventListener("focus",e,{capture:!0})});function kc(e,t,n,r){hs.isServer||Je(o=>{e=e??window,e.addEventListener(t,n,r),o(()=>e.removeEventListener(t,n,r))})}var Ot=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))(Ot||{});function Sc(){let e=H(0);return Cg("keydown",t=>{t.key==="Tab"&&(e.value=t.shiftKey?1:0)}),e}function Ig(e){if(!e)return new Set;if(typeof e=="function")return new Set(e());let t=new Set;for(let n of e.value){let r=J(n);r instanceof HTMLElement&&t.add(r)}return t}var Lg=(e=>(e[e.None=1]="None",e[e.InitialFocus=2]="InitialFocus",e[e.TabLock=4]="TabLock",e[e.FocusLock=8]="FocusLock",e[e.RestoreFocus=16]="RestoreFocus",e[e.All=30]="All",e))(Lg||{});let _o=Object.assign(ee({name:"FocusTrap",props:{as:{type:[Object,String],default:"div"},initialFocus:{type:Object,default:null},features:{type:Number,default:30},containers:{type:[Object,Function],default:H(new Set)}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){let o=H(null);r({el:o,$el:o});let s=$(()=>On(o)),i=H(!1);Me(()=>i.value=!0),ot(()=>i.value=!1),rP({ownerDocument:s},$(()=>i.value&&!!(e.features&16)));let a=oP({ownerDocument:s,container:o,initialFocus:$(()=>e.initialFocus)},$(()=>i.value&&!!(e.features&2)));sP({ownerDocument:s,container:o,containers:e.containers,previousActiveElement:a},$(()=>i.value&&!!(e.features&8)));let l=Sc();function u(p){let m=J(o);m&&(h=>h())(()=>{lt(l.value,{[Ot.Forwards]:()=>{Gt(m,ht.First,{skipElements:[p.relatedTarget]})},[Ot.Backwards]:()=>{Gt(m,ht.Last,{skipElements:[p.relatedTarget]})}})})}let c=H(!1);function f(p){p.key==="Tab"&&(c.value=!0,requestAnimationFrame(()=>{c.value=!1}))}function d(p){if(!i.value)return;let m=Ig(e.containers);J(o)instanceof HTMLElement&&m.add(J(o));let h=p.relatedTarget;h instanceof HTMLElement&&h.dataset.headlessuiFocusGuard!=="true"&&(Mg(m,h)||(c.value?Gt(J(o),lt(l.value,{[Ot.Forwards]:()=>ht.Next,[Ot.Backwards]:()=>ht.Previous})|ht.WrapAround,{relativeTo:p.target}):p.target instanceof HTMLElement&&br(p.target)))}return()=>{let p={},m={ref:o,onKeydown:f,onFocusout:d},{features:h,initialFocus:y,containers:x,...b}=e;return ve(Se,[!!(h&4)&&ve(Jr,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:u,features:Er.Focusable}),_t({ourProps:m,theirProps:{...t,...b},slot:p,attrs:t,slots:n,name:"FocusTrap"}),!!(h&4)&&ve(Jr,{as:"button",type:"button","data-headlessui-focus-guard":!0,onFocus:u,features:Er.Focusable})])}}}),{features:Lg});function nP(e){let t=H(dr.slice());return $e([e],([n],[r])=>{r===!0&&n===!1?bc(()=>{t.value.splice(0)}):r===!1&&n===!0&&(t.value=dr.slice())},{flush:"post"}),()=>{var n;return(n=t.value.find(r=>r!=null&&r.isConnected))!=null?n:null}}function rP({ownerDocument:e},t){let n=nP(t);Me(()=>{Je(()=>{var r,o;t.value||((r=e.value)==null?void 0:r.activeElement)===((o=e.value)==null?void 0:o.body)&&br(n())},{flush:"post"})}),ot(()=>{t.value&&br(n())})}function oP({ownerDocument:e,container:t,initialFocus:n},r){let o=H(null),s=H(!1);return Me(()=>s.value=!0),ot(()=>s.value=!1),Me(()=>{$e([t,n,r],(i,a)=>{if(i.every((u,c)=>(a==null?void 0:a[c])===u)||!r.value)return;let l=J(t);l&&bc(()=>{var u,c;if(!s.value)return;let f=J(n),d=(u=e.value)==null?void 0:u.activeElement;if(f){if(f===d){o.value=d;return}}else if(l.contains(d)){o.value=d;return}f?br(f):Gt(l,ht.First|ht.NoScroll)===es.Error&&console.warn("There are no focusable elements inside the <FocusTrap />"),o.value=(c=e.value)==null?void 0:c.activeElement})},{immediate:!0,flush:"post"})}),o}function sP({ownerDocument:e,container:t,containers:n,previousActiveElement:r},o){var s;kc((s=e.value)==null?void 0:s.defaultView,"focus",i=>{if(!o.value)return;let a=Ig(n);J(t)instanceof HTMLElement&&a.add(J(t));let l=r.value;if(!l)return;let u=i.target;u&&u instanceof HTMLElement?Mg(a,u)?(r.value=u,br(u)):(i.preventDefault(),i.stopPropagation(),br(l)):br(r.value)},!0)}function Mg(e,t){for(let n of e)if(n.contains(t))return!0;return!1}function iP(e){let t=Qt(e.getSnapshot());return ot(e.subscribe(()=>{t.value=e.getSnapshot()})),t}function aP(e,t){let n=e(),r=new Set;return{getSnapshot(){return n},subscribe(o){return r.add(o),()=>r.delete(o)},dispatch(o,...s){let i=t[o].call(n,...s);i&&(n=i,r.forEach(a=>a()))}}}function lP(){let e;return{before({doc:t}){var n;let r=t.documentElement;e=((n=t.defaultView)!=null?n:window).innerWidth-r.clientWidth},after({doc:t,d:n}){let r=t.documentElement,o=r.clientWidth-r.offsetWidth,s=e-o;n.style(r,"paddingRight",`${s}px`)}}}function cP(){return Eg()?{before({doc:e,d:t,meta:n}){function r(o){return n.containers.flatMap(s=>s()).some(s=>s.contains(o))}t.microTask(()=>{var o;if(window.getComputedStyle(e.documentElement).scrollBehavior!=="auto"){let a=ps();a.style(e.documentElement,"scrollBehavior","auto"),t.add(()=>t.microTask(()=>a.dispose()))}let s=(o=window.scrollY)!=null?o:window.pageYOffset,i=null;t.addEventListener(e,"click",a=>{if(a.target instanceof HTMLElement)try{let l=a.target.closest("a");if(!l)return;let{hash:u}=new URL(l.href),c=e.querySelector(u);c&&!r(c)&&(i=c)}catch{}},!0),t.addEventListener(e,"touchstart",a=>{if(a.target instanceof HTMLElement)if(r(a.target)){let l=a.target;for(;l.parentElement&&r(l.parentElement);)l=l.parentElement;t.style(l,"overscrollBehavior","contain")}else t.style(a.target,"touchAction","none")}),t.addEventListener(e,"touchmove",a=>{if(a.target instanceof HTMLElement){if(a.target.tagName==="INPUT")return;if(r(a.target)){let l=a.target;for(;l.parentElement&&l.dataset.headlessuiPortal!==""&&!(l.scrollHeight>l.clientHeight||l.scrollWidth>l.clientWidth);)l=l.parentElement;l.dataset.headlessuiPortal===""&&a.preventDefault()}else a.preventDefault()}},{passive:!1}),t.add(()=>{var a;let l=(a=window.scrollY)!=null?a:window.pageYOffset;s!==l&&window.scrollTo(0,s),i&&i.isConnected&&(i.scrollIntoView({block:"nearest"}),i=null)})})}}:{}}function uP(){return{before({doc:e,d:t}){t.style(e.documentElement,"overflow","hidden")}}}function fP(e){let t={};for(let n of e)Object.assign(t,n(t));return t}let pr=aP(()=>new Map,{PUSH(e,t){var n;let r=(n=this.get(e))!=null?n:{doc:e,count:0,d:ps(),meta:new Set};return r.count++,r.meta.add(t),this.set(e,r),this},POP(e,t){let n=this.get(e);return n&&(n.count--,n.meta.delete(t)),this},SCROLL_PREVENT({doc:e,d:t,meta:n}){let r={doc:e,d:t,meta:fP(n)},o=[cP(),lP(),uP()];o.forEach(({before:s})=>s==null?void 0:s(r)),o.forEach(({after:s})=>s==null?void 0:s(r))},SCROLL_ALLOW({d:e}){e.dispose()},TEARDOWN({doc:e}){this.delete(e)}});pr.subscribe(()=>{let e=pr.getSnapshot(),t=new Map;for(let[n]of e)t.set(n,n.documentElement.style.overflow);for(let n of e.values()){let r=t.get(n.doc)==="hidden",o=n.count!==0;(o&&!r||!o&&r)&&pr.dispatch(n.count>0?"SCROLL_PREVENT":"SCROLL_ALLOW",n),n.count===0&&pr.dispatch("TEARDOWN",n)}});function dP(e,t,n){let r=iP(pr),o=$(()=>{let s=e.value?r.value.get(e.value):void 0;return s?s.count>0:!1});return $e([e,t],([s,i],[a],l)=>{if(!s||!i)return;pr.dispatch("PUSH",s,n);let u=!1;l(()=>{u||(pr.dispatch("POP",a??s,n),u=!0)})},{immediate:!0}),o}let xa=new Map,xo=new Map;function Ff(e,t=H(!0)){Je(n=>{var r;if(!t.value)return;let o=J(e);if(!o)return;n(function(){var i;if(!o)return;let a=(i=xo.get(o))!=null?i:1;if(a===1?xo.delete(o):xo.set(o,a-1),a!==1)return;let l=xa.get(o);l&&(l["aria-hidden"]===null?o.removeAttribute("aria-hidden"):o.setAttribute("aria-hidden",l["aria-hidden"]),o.inert=l.inert,xa.delete(o))});let s=(r=xo.get(o))!=null?r:0;xo.set(o,s+1),s===0&&(xa.set(o,{"aria-hidden":o.getAttribute("aria-hidden"),inert:o.inert}),o.setAttribute("aria-hidden","true"),o.inert=!0)})}function jg({defaultContainers:e=[],portals:t,mainTreeNodeRef:n}={}){let r=H(null),o=On(r);function s(){var i,a,l;let u=[];for(let c of e)c!==null&&(c instanceof HTMLElement?u.push(c):"value"in c&&c.value instanceof HTMLElement&&u.push(c.value));if(t!=null&&t.value)for(let c of t.value)u.push(c);for(let c of(i=o==null?void 0:o.querySelectorAll("html > *, body > *"))!=null?i:[])c!==document.body&&c!==document.head&&c instanceof HTMLElement&&c.id!=="headlessui-portal-root"&&(c.contains(J(r))||c.contains((l=(a=J(r))==null?void 0:a.getRootNode())==null?void 0:l.host)||u.some(f=>c.contains(f))||u.push(c));return u}return{resolveContainers:s,contains(i){return s().some(a=>a.contains(i))},mainTreeNodeRef:r,MainTreeNode(){return n!=null?null:ve(Jr,{features:Er.Hidden,ref:r})}}}let Dg=Symbol("ForcePortalRootContext");function pP(){return Ce(Dg,!1)}let Bf=ee({name:"ForcePortalRoot",props:{as:{type:[Object,String],default:"template"},force:{type:Boolean,default:!1}},setup(e,{slots:t,attrs:n}){return Be(Dg,e.force),()=>{let{force:r,...o}=e;return _t({theirProps:o,ourProps:{},slot:{},slots:t,attrs:n,name:"ForcePortalRoot"})}}}),Ng=Symbol("StackContext");var Cl=(e=>(e[e.Add=0]="Add",e[e.Remove=1]="Remove",e))(Cl||{});function hP(){return Ce(Ng,()=>{})}function gP({type:e,enabled:t,element:n,onUpdate:r}){let o=hP();function s(...i){r==null||r(...i),o(...i)}Me(()=>{$e(t,(i,a)=>{i?s(0,e,n):a===!0&&s(1,e,n)},{immediate:!0,flush:"sync"})}),ot(()=>{t.value&&s(1,e,n)}),Be(Ng,s)}let mP=Symbol("DescriptionContext");function vP({slot:e=H({}),name:t="Description",props:n={}}={}){let r=H([]);function o(s){return r.value.push(s),()=>{let i=r.value.indexOf(s);i!==-1&&r.value.splice(i,1)}}return Be(mP,{register:o,slot:e,name:t,props:n}),$(()=>r.value.length>0?r.value.join(" "):void 0)}function yP(e){let t=On(e);if(!t){if(e===null)return null;throw new Error(`[Headless UI]: Cannot find ownerDocument for contextElement: ${e}`)}let n=t.getElementById("headlessui-portal-root");if(n)return n;let r=t.createElement("div");return r.setAttribute("id","headlessui-portal-root"),t.body.appendChild(r)}const Pl=new WeakMap;function bP(e){var t;return(t=Pl.get(e))!=null?t:0}function Uf(e,t){let n=t(bP(e));return n<=0?Pl.delete(e):Pl.set(e,n),n}let wP=ee({name:"Portal",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n}){let r=H(null),o=$(()=>On(r)),s=pP(),i=Ce(Fg,null),a=H(s===!0||i==null?yP(r.value):i.resolveTarget());a.value&&Uf(a.value,d=>d+1);let l=H(!1);Me(()=>{l.value=!0}),Je(()=>{s||i!=null&&(a.value=i.resolveTarget())});let u=Ce(Tl,null),c=!1,f=Ut();return $e(r,()=>{if(c||!u)return;let d=J(r);d&&(ot(u.register(d),f),c=!0)}),ot(()=>{var d,p;let m=(d=o.value)==null?void 0:d.getElementById("headlessui-portal-root");!m||a.value!==m||Uf(a.value,h=>h-1)||a.value.children.length>0||(p=a.value.parentElement)==null||p.removeChild(a.value)}),()=>{if(!l.value||a.value===null)return null;let d={ref:r,"data-headlessui-portal":""};return ve(Id,{to:a.value},_t({ourProps:d,theirProps:e,slot:{},attrs:n,slots:t,name:"Portal"}))}}}),Tl=Symbol("PortalParentContext");function Hg(){let e=Ce(Tl,null),t=H([]);function n(s){return t.value.push(s),e&&e.register(s),()=>r(s)}function r(s){let i=t.value.indexOf(s);i!==-1&&t.value.splice(i,1),e&&e.unregister(s)}let o={register:n,unregister:r,portals:t};return[t,ee({name:"PortalWrapper",setup(s,{slots:i}){return Be(Tl,o),()=>{var a;return(a=i.default)==null?void 0:a.call(i)}}})]}let Fg=Symbol("PortalGroupContext"),_P=ee({name:"PortalGroup",props:{as:{type:[Object,String],default:"template"},target:{type:Object,default:null}},setup(e,{attrs:t,slots:n}){let r=Bt({resolveTarget(){return e.target}});return Be(Fg,r),()=>{let{target:o,...s}=e;return _t({theirProps:s,ourProps:{},slot:{},attrs:t,slots:n,name:"PortalGroup"})}}});var xP=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(xP||{});let Al=Symbol("DialogContext");function Bg(e){let t=Ce(Al,null);if(t===null){let n=new Error(`<${e} /> is missing a parent <Dialog /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,Bg),n}return t}let Ls="DC8F892D-2EBD-447C-A4C8-A03058436FF4",kP=ee({name:"Dialog",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},open:{type:[Boolean,String],default:Ls},initialFocus:{type:Object,default:null},id:{type:String,default:null},role:{type:String,default:"dialog"}},emits:{close:e=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:o}){var s,i;let a=(s=e.id)!=null?s:`headlessui-dialog-${un()}`,l=H(!1);Me(()=>{l.value=!0});let u=!1,c=$(()=>e.role==="dialog"||e.role==="alertdialog"?e.role:(u||(u=!0,console.warn(`Invalid role [${c}] passed to <Dialog />. Only \`dialog\` and and \`alertdialog\` are supported. Using \`dialog\` instead.`)),"dialog")),f=H(0),d=gs(),p=$(()=>e.open===Ls&&d!==null?(d.value&Ge.Open)===Ge.Open:e.open),m=H(null),h=$(()=>On(m));if(o({el:m,$el:m}),!(e.open!==Ls||d!==null))throw new Error("You forgot to provide an `open` prop to the `Dialog`.");if(typeof p.value!="boolean")throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${p.value===Ls?void 0:e.open}`);let y=$(()=>l.value&&p.value?0:1),x=$(()=>y.value===0),b=$(()=>f.value>1),g=Ce(Al,null)!==null,[v,w]=Hg(),{resolveContainers:S,mainTreeNodeRef:C,MainTreeNode:R}=jg({portals:v,defaultContainers:[$(()=>{var fe;return(fe=Z.panelRef.value)!=null?fe:m.value})]}),A=$(()=>b.value?"parent":"leaf"),T=$(()=>d!==null?(d.value&Ge.Closing)===Ge.Closing:!1),U=$(()=>g||T.value?!1:x.value),O=$(()=>{var fe,ye,qe;return(qe=Array.from((ye=(fe=h.value)==null?void 0:fe.querySelectorAll("body > *"))!=null?ye:[]).find(De=>De.id==="headlessui-portal-root"?!1:De.contains(J(C))&&De instanceof HTMLElement))!=null?qe:null});Ff(O,U);let F=$(()=>b.value?!0:x.value),le=$(()=>{var fe,ye,qe;return(qe=Array.from((ye=(fe=h.value)==null?void 0:fe.querySelectorAll("[data-headlessui-portal]"))!=null?ye:[]).find(De=>De.contains(J(C))&&De instanceof HTMLElement))!=null?qe:null});Ff(le,F),gP({type:"Dialog",enabled:$(()=>y.value===0),element:m,onUpdate:(fe,ye)=>{if(ye==="Dialog")return lt(fe,{[Cl.Add]:()=>f.value+=1,[Cl.Remove]:()=>f.value-=1})}});let pe=vP({name:"DialogDescription",slot:$(()=>({open:p.value}))}),B=H(null),Z={titleId:B,panelRef:H(null),dialogState:y,setTitleId(fe){B.value!==fe&&(B.value=fe)},close(){t("close",!1)}};Be(Al,Z);let X=$(()=>!(!x.value||b.value));Pg(S,(fe,ye)=>{fe.preventDefault(),Z.close(),er(()=>ye==null?void 0:ye.focus())},X);let Ee=$(()=>!(b.value||y.value!==0));kc((i=h.value)==null?void 0:i.defaultView,"keydown",fe=>{Ee.value&&(fe.defaultPrevented||fe.key===kt.Escape&&(fe.preventDefault(),fe.stopPropagation(),Z.close()))});let et=$(()=>!(T.value||y.value!==0||g));return dP(h,et,fe=>{var ye;return{containers:[...(ye=fe.containers)!=null?ye:[],S]}}),Je(fe=>{if(y.value!==0)return;let ye=J(m);if(!ye)return;let qe=new ResizeObserver(De=>{for(let ct of De){let Ke=ct.target.getBoundingClientRect();Ke.x===0&&Ke.y===0&&Ke.width===0&&Ke.height===0&&Z.close()}});qe.observe(ye),fe(()=>qe.disconnect())}),()=>{let{open:fe,initialFocus:ye,...qe}=e,De={...n,ref:m,id:a,role:c.value,"aria-modal":y.value===0?!0:void 0,"aria-labelledby":B.value,"aria-describedby":pe.value},ct={open:y.value===0};return ve(Bf,{force:!0},()=>[ve(wP,()=>ve(_P,{target:m.value},()=>ve(Bf,{force:!1},()=>ve(_o,{initialFocus:ye,containers:S,features:x.value?lt(A.value,{parent:_o.features.RestoreFocus,leaf:_o.features.All&~_o.features.FocusLock}):_o.features.None},()=>ve(w,{},()=>_t({ourProps:De,theirProps:{...qe,...n},slot:ct,attrs:n,slots:r,visible:y.value===0,features:Qn.RenderStrategy|Qn.Static,name:"Dialog"})))))),ve(R)])}}}),SP=ee({name:"DialogPanel",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){var o;let s=(o=e.id)!=null?o:`headlessui-dialog-panel-${un()}`,i=Bg("DialogPanel");r({el:i.panelRef,$el:i.panelRef});function a(l){l.stopPropagation()}return()=>{let{...l}=e,u={id:s,ref:i.panelRef,onClick:a};return _t({ourProps:u,theirProps:l,slot:{open:i.dialogState.value===0},attrs:t,slots:n,name:"DialogPanel"})}}});var EP=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(EP||{});let Ug=Symbol("DisclosureContext");function Ec(e){let t=Ce(Ug,null);if(t===null){let n=new Error(`<${e} /> is missing a parent <Disclosure /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,Ec),n}return t}let zg=Symbol("DisclosurePanelContext");function CP(){return Ce(zg,null)}let PP=ee({name:"Disclosure",props:{as:{type:[Object,String],default:"template"},defaultOpen:{type:[Boolean],default:!1}},setup(e,{slots:t,attrs:n}){let r=H(e.defaultOpen?0:1),o=H(null),s=H(null),i={buttonId:H(`headlessui-disclosure-button-${un()}`),panelId:H(`headlessui-disclosure-panel-${un()}`),disclosureState:r,panel:o,button:s,toggleDisclosure(){r.value=lt(r.value,{0:1,1:0})},closeDisclosure(){r.value!==1&&(r.value=1)},close(a){i.closeDisclosure();let l=a?a instanceof HTMLElement?a:a.value instanceof HTMLElement?J(a):J(i.button):J(i.button);l==null||l.focus()}};return Be(Ug,i),xc($(()=>lt(r.value,{0:Ge.Open,1:Ge.Closed}))),()=>{let{defaultOpen:a,...l}=e,u={open:r.value===0,close:i.close};return _t({theirProps:l,ourProps:{},slot:u,slots:t,attrs:n,name:"Disclosure"})}}}),TP=ee({name:"DisclosureButton",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){let o=Ec("DisclosureButton"),s=CP(),i=$(()=>s===null?!1:s.value===o.panelId.value);Me(()=>{i.value||e.id!==null&&(o.buttonId.value=e.id)}),ot(()=>{i.value||(o.buttonId.value=null)});let a=H(null);r({el:a,$el:a}),i.value||Je(()=>{o.button.value=a.value});let l=Tg($(()=>({as:e.as,type:t.type})),a);function u(){var d;e.disabled||(i.value?(o.toggleDisclosure(),(d=J(o.button))==null||d.focus()):o.toggleDisclosure())}function c(d){var p;if(!e.disabled)if(i.value)switch(d.key){case kt.Space:case kt.Enter:d.preventDefault(),d.stopPropagation(),o.toggleDisclosure(),(p=J(o.button))==null||p.focus();break}else switch(d.key){case kt.Space:case kt.Enter:d.preventDefault(),d.stopPropagation(),o.toggleDisclosure();break}}function f(d){switch(d.key){case kt.Space:d.preventDefault();break}}return()=>{var d;let p={open:o.disclosureState.value===0},{id:m,...h}=e,y=i.value?{ref:a,type:l.value,onClick:u,onKeydown:c}:{id:(d=o.buttonId.value)!=null?d:m,ref:a,type:l.value,"aria-expanded":o.disclosureState.value===0,"aria-controls":o.disclosureState.value===0||J(o.panel)?o.panelId.value:void 0,disabled:e.disabled?!0:void 0,onClick:u,onKeydown:c,onKeyup:f};return _t({ourProps:y,theirProps:h,slot:p,attrs:t,slots:n,name:"DisclosureButton"})}}}),AP=ee({name:"DisclosurePanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:null}},setup(e,{attrs:t,slots:n,expose:r}){let o=Ec("DisclosurePanel");Me(()=>{e.id!==null&&(o.panelId.value=e.id)}),ot(()=>{o.panelId.value=null}),r({el:o.panel,$el:o.panel}),Be(zg,o.panelId);let s=gs(),i=$(()=>s!==null?(s.value&Ge.Open)===Ge.Open:o.disclosureState.value===0);return()=>{var a;let l={open:o.disclosureState.value===0,close:o.close},{id:u,...c}=e,f={id:(a=o.panelId.value)!=null?a:u,ref:o.panel};return _t({ourProps:f,theirProps:c,slot:l,attrs:t,slots:n,features:Qn.RenderStrategy|Qn.Static,visible:i.value,name:"DisclosurePanel"})}}});var OP=(e=>(e[e.Open=0]="Open",e[e.Closed=1]="Closed",e))(OP||{});let Vg=Symbol("PopoverContext");function Cc(e){let t=Ce(Vg,null);if(t===null){let n=new Error(`<${e} /> is missing a parent <${Kg.name} /> component.`);throw Error.captureStackTrace&&Error.captureStackTrace(n,Cc),n}return t}let $P=Symbol("PopoverGroupContext");function Wg(){return Ce($P,null)}let qg=Symbol("PopoverPanelContext");function RP(){return Ce(qg,null)}let Kg=ee({name:"Popover",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n,expose:r}){var o;let s=H(null);r({el:s,$el:s});let i=H(1),a=H(null),l=H(null),u=H(null),c=H(null),f=$(()=>On(s)),d=$(()=>{var w,S;if(!J(a)||!J(c))return!1;for(let F of document.querySelectorAll("body > *"))if(Number(F==null?void 0:F.contains(J(a)))^Number(F==null?void 0:F.contains(J(c))))return!0;let C=zi(),R=C.indexOf(J(a)),A=(R+C.length-1)%C.length,T=(R+1)%C.length,U=C[A],O=C[T];return!((w=J(c))!=null&&w.contains(U))&&!((S=J(c))!=null&&S.contains(O))}),p={popoverState:i,buttonId:H(null),panelId:H(null),panel:c,button:a,isPortalled:d,beforePanelSentinel:l,afterPanelSentinel:u,togglePopover(){i.value=lt(i.value,{0:1,1:0})},closePopover(){i.value!==1&&(i.value=1)},close(w){p.closePopover();let S=w?w instanceof HTMLElement?w:w.value instanceof HTMLElement?J(w):J(p.button):J(p.button);S==null||S.focus()}};Be(Vg,p),xc($(()=>lt(i.value,{0:Ge.Open,1:Ge.Closed})));let m={buttonId:p.buttonId,panelId:p.panelId,close(){p.closePopover()}},h=Wg(),y=h==null?void 0:h.registerPopover,[x,b]=Hg(),g=jg({mainTreeNodeRef:h==null?void 0:h.mainTreeNodeRef,portals:x,defaultContainers:[a,c]});function v(){var w,S,C,R;return(R=h==null?void 0:h.isFocusWithinPopoverGroup())!=null?R:((w=f.value)==null?void 0:w.activeElement)&&(((S=J(a))==null?void 0:S.contains(f.value.activeElement))||((C=J(c))==null?void 0:C.contains(f.value.activeElement)))}return Je(()=>y==null?void 0:y(m)),kc((o=f.value)==null?void 0:o.defaultView,"focus",w=>{var S,C;w.target!==window&&w.target instanceof HTMLElement&&i.value===0&&(v()||a&&c&&(g.contains(w.target)||(S=J(p.beforePanelSentinel))!=null&&S.contains(w.target)||(C=J(p.afterPanelSentinel))!=null&&C.contains(w.target)||p.closePopover()))},!0),Pg(g.resolveContainers,(w,S)=>{var C;p.closePopover(),Sg(S,_c.Loose)||(w.preventDefault(),(C=J(a))==null||C.focus())},$(()=>i.value===0)),()=>{let w={open:i.value===0,close:p.close};return ve(Se,[ve(b,{},()=>_t({theirProps:{...e,...n},ourProps:{ref:s},slot:w,slots:t,attrs:n,name:"Popover"})),ve(g.MainTreeNode)])}}}),IP=ee({name:"PopoverButton",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:null}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){var o;let s=(o=e.id)!=null?o:`headlessui-popover-button-${un()}`,i=Cc("PopoverButton"),a=$(()=>On(i.button));r({el:i.button,$el:i.button}),Me(()=>{i.buttonId.value=s}),ot(()=>{i.buttonId.value=null});let l=Wg(),u=l==null?void 0:l.closeOthers,c=RP(),f=$(()=>c===null?!1:c.value===i.panelId.value),d=H(null),p=`headlessui-focus-sentinel-${un()}`;f.value||Je(()=>{i.button.value=J(d)});let m=Tg($(()=>({as:e.as,type:t.type})),d);function h(w){var S,C,R,A,T;if(f.value){if(i.popoverState.value===1)return;switch(w.key){case kt.Space:case kt.Enter:w.preventDefault(),(C=(S=w.target).click)==null||C.call(S),i.closePopover(),(R=J(i.button))==null||R.focus();break}}else switch(w.key){case kt.Space:case kt.Enter:w.preventDefault(),w.stopPropagation(),i.popoverState.value===1&&(u==null||u(i.buttonId.value)),i.togglePopover();break;case kt.Escape:if(i.popoverState.value!==0)return u==null?void 0:u(i.buttonId.value);if(!J(i.button)||(A=a.value)!=null&&A.activeElement&&!((T=J(i.button))!=null&&T.contains(a.value.activeElement)))return;w.preventDefault(),w.stopPropagation(),i.closePopover();break}}function y(w){f.value||w.key===kt.Space&&w.preventDefault()}function x(w){var S,C;e.disabled||(f.value?(i.closePopover(),(S=J(i.button))==null||S.focus()):(w.preventDefault(),w.stopPropagation(),i.popoverState.value===1&&(u==null||u(i.buttonId.value)),i.togglePopover(),(C=J(i.button))==null||C.focus()))}function b(w){w.preventDefault(),w.stopPropagation()}let g=Sc();function v(){let w=J(i.panel);if(!w)return;function S(){lt(g.value,{[Ot.Forwards]:()=>Gt(w,ht.First),[Ot.Backwards]:()=>Gt(w,ht.Last)})===es.Error&&Gt(zi().filter(C=>C.dataset.headlessuiFocusGuard!=="true"),lt(g.value,{[Ot.Forwards]:ht.Next,[Ot.Backwards]:ht.Previous}),{relativeTo:J(i.button)})}S()}return()=>{let w=i.popoverState.value===0,S={open:w},{...C}=e,R=f.value?{ref:d,type:m.value,onKeydown:h,onClick:x}:{ref:d,id:s,type:m.value,"aria-expanded":i.popoverState.value===0,"aria-controls":J(i.panel)?i.panelId.value:void 0,disabled:e.disabled?!0:void 0,onKeydown:h,onKeyup:y,onClick:x,onMousedown:b};return ve(Se,[_t({ourProps:R,theirProps:{...t,...C},slot:S,attrs:t,slots:n,name:"PopoverButton"}),w&&!f.value&&i.isPortalled.value&&ve(Jr,{id:p,features:Er.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:v})])}}}),LP=ee({name:"PopoverPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},focus:{type:Boolean,default:!1},id:{type:String,default:null}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){var o;let s=(o=e.id)!=null?o:`headlessui-popover-panel-${un()}`,{focus:i}=e,a=Cc("PopoverPanel"),l=$(()=>On(a.panel)),u=`headlessui-focus-sentinel-before-${un()}`,c=`headlessui-focus-sentinel-after-${un()}`;r({el:a.panel,$el:a.panel}),Me(()=>{a.panelId.value=s}),ot(()=>{a.panelId.value=null}),Be(qg,a.panelId),Je(()=>{var b,g;if(!i||a.popoverState.value!==0||!a.panel)return;let v=(b=l.value)==null?void 0:b.activeElement;(g=J(a.panel))!=null&&g.contains(v)||Gt(J(a.panel),ht.First)});let f=gs(),d=$(()=>f!==null?(f.value&Ge.Open)===Ge.Open:a.popoverState.value===0);function p(b){var g,v;switch(b.key){case kt.Escape:if(a.popoverState.value!==0||!J(a.panel)||l.value&&!((g=J(a.panel))!=null&&g.contains(l.value.activeElement)))return;b.preventDefault(),b.stopPropagation(),a.closePopover(),(v=J(a.button))==null||v.focus();break}}function m(b){var g,v,w,S,C;let R=b.relatedTarget;R&&J(a.panel)&&((g=J(a.panel))!=null&&g.contains(R)||(a.closePopover(),((w=(v=J(a.beforePanelSentinel))==null?void 0:v.contains)!=null&&w.call(v,R)||(C=(S=J(a.afterPanelSentinel))==null?void 0:S.contains)!=null&&C.call(S,R))&&R.focus({preventScroll:!0})))}let h=Sc();function y(){let b=J(a.panel);if(!b)return;function g(){lt(h.value,{[Ot.Forwards]:()=>{var v;Gt(b,ht.First)===es.Error&&((v=J(a.afterPanelSentinel))==null||v.focus())},[Ot.Backwards]:()=>{var v;(v=J(a.button))==null||v.focus({preventScroll:!0})}})}g()}function x(){let b=J(a.panel);if(!b)return;function g(){lt(h.value,{[Ot.Forwards]:()=>{let v=J(a.button),w=J(a.panel);if(!v)return;let S=zi(),C=S.indexOf(v),R=S.slice(0,C+1),A=[...S.slice(C+1),...R];for(let T of A.slice())if(T.dataset.headlessuiFocusGuard==="true"||w!=null&&w.contains(T)){let U=A.indexOf(T);U!==-1&&A.splice(U,1)}Gt(A,ht.First,{sorted:!1})},[Ot.Backwards]:()=>{var v;Gt(b,ht.Previous)===es.Error&&((v=J(a.button))==null||v.focus())}})}g()}return()=>{let b={open:a.popoverState.value===0,close:a.close},{focus:g,...v}=e,w={ref:a.panel,id:s,onKeydown:p,onFocusout:i&&a.popoverState.value===0?m:void 0,tabIndex:-1};return _t({ourProps:w,theirProps:{...t,...v},attrs:t,slot:b,slots:{...n,default:(...S)=>{var C;return[ve(Se,[d.value&&a.isPortalled.value&&ve(Jr,{id:u,ref:a.beforePanelSentinel,features:Er.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:y}),(C=n.default)==null?void 0:C.call(n,...S),d.value&&a.isPortalled.value&&ve(Jr,{id:c,ref:a.afterPanelSentinel,features:Er.Focusable,"data-headlessui-focus-guard":!0,as:"button",type:"button",onFocus:x})])]}},features:Qn.RenderStrategy|Qn.Static,visible:d.value,name:"PopoverPanel"})}}});function MP(e){let t={called:!1};return(...n)=>{if(!t.called)return t.called=!0,e(...n)}}function ka(e,...t){e&&t.length>0&&e.classList.add(...t)}function Ms(e,...t){e&&t.length>0&&e.classList.remove(...t)}var Ol=(e=>(e.Finished="finished",e.Cancelled="cancelled",e))(Ol||{});function jP(e,t){let n=ps();if(!e)return n.dispose;let{transitionDuration:r,transitionDelay:o}=getComputedStyle(e),[s,i]=[r,o].map(a=>{let[l=0]=a.split(",").filter(Boolean).map(u=>u.includes("ms")?parseFloat(u):parseFloat(u)*1e3).sort((u,c)=>c-u);return l});return s!==0?n.setTimeout(()=>t("finished"),s+i):t("finished"),n.add(()=>t("cancelled")),n.dispose}function zf(e,t,n,r,o,s){let i=ps(),a=s!==void 0?MP(s):()=>{};return Ms(e,...o),ka(e,...t,...n),i.nextFrame(()=>{Ms(e,...n),ka(e,...r),i.add(jP(e,l=>(Ms(e,...r,...t),ka(e,...o),a(l))))}),i.add(()=>Ms(e,...t,...n,...r,...o)),i.add(()=>a("cancelled")),i.dispose}function lr(e=""){return e.split(/\s+/).filter(t=>t.length>1)}let Pc=Symbol("TransitionContext");var DP=(e=>(e.Visible="visible",e.Hidden="hidden",e))(DP||{});function NP(){return Ce(Pc,null)!==null}function HP(){let e=Ce(Pc,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}function FP(){let e=Ce(Tc,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}let Tc=Symbol("NestingContext");function Vi(e){return"children"in e?Vi(e.children):e.value.filter(({state:t})=>t==="visible").length>0}function Gg(e){let t=H([]),n=H(!1);Me(()=>n.value=!0),ot(()=>n.value=!1);function r(s,i=zn.Hidden){let a=t.value.findIndex(({id:l})=>l===s);a!==-1&&(lt(i,{[zn.Unmount](){t.value.splice(a,1)},[zn.Hidden](){t.value[a].state="hidden"}}),!Vi(t)&&n.value&&(e==null||e()))}function o(s){let i=t.value.find(({id:a})=>a===s);return i?i.state!=="visible"&&(i.state="visible"):t.value.push({id:s,state:"visible"}),()=>r(s,zn.Unmount)}return{children:t,register:o,unregister:r}}let Yg=Qn.RenderStrategy,BP=ee({props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:o}){let s=H(0);function i(){s.value|=Ge.Opening,t("beforeEnter")}function a(){s.value&=~Ge.Opening,t("afterEnter")}function l(){s.value|=Ge.Closing,t("beforeLeave")}function u(){s.value&=~Ge.Closing,t("afterLeave")}if(!NP()&&eP())return()=>ve(Qg,{...e,onBeforeEnter:i,onAfterEnter:a,onBeforeLeave:l,onAfterLeave:u},r);let c=H(null),f=$(()=>e.unmount?zn.Unmount:zn.Hidden);o({el:c,$el:c});let{show:d,appear:p}=HP(),{register:m,unregister:h}=FP(),y=H(d.value?"visible":"hidden"),x={value:!0},b=un(),g={value:!1},v=Gg(()=>{!g.value&&y.value!=="hidden"&&(y.value="hidden",h(b),u())});Me(()=>{let F=m(b);ot(F)}),Je(()=>{if(f.value===zn.Hidden&&b){if(d.value&&y.value!=="visible"){y.value="visible";return}lt(y.value,{hidden:()=>h(b),visible:()=>m(b)})}});let w=lr(e.enter),S=lr(e.enterFrom),C=lr(e.enterTo),R=lr(e.entered),A=lr(e.leave),T=lr(e.leaveFrom),U=lr(e.leaveTo);Me(()=>{Je(()=>{if(y.value==="visible"){let F=J(c);if(F instanceof Comment&&F.data==="")throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}})});function O(F){let le=x.value&&!p.value,pe=J(c);!pe||!(pe instanceof HTMLElement)||le||(g.value=!0,d.value&&i(),d.value||l(),F(d.value?zf(pe,w,S,C,R,B=>{g.value=!1,B===Ol.Finished&&a()}):zf(pe,A,T,U,R,B=>{g.value=!1,B===Ol.Finished&&(Vi(v)||(y.value="hidden",h(b),u()))})))}return Me(()=>{$e([d],(F,le,pe)=>{O(pe),x.value=!1},{immediate:!0})}),Be(Tc,v),xc($(()=>lt(y.value,{visible:Ge.Open,hidden:Ge.Closed})|s.value)),()=>{let{appear:F,show:le,enter:pe,enterFrom:B,enterTo:Z,entered:X,leave:Ee,leaveFrom:et,leaveTo:fe,...ye}=e,qe={ref:c},De={...ye,...p.value&&d.value&&hs.isServer?{class:W([n.class,ye.class,...w,...S])}:{}};return _t({theirProps:De,ourProps:qe,slot:{},slots:r,attrs:n,features:Yg,visible:y.value==="visible",name:"TransitionChild"})}}}),UP=BP,Qg=ee({inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r}){let o=gs(),s=$(()=>e.show===null&&o!==null?(o.value&Ge.Open)===Ge.Open:e.show);Je(()=>{if(![!0,!1].includes(s.value))throw new Error('A <Transition /> is used but it is missing a `:show="true | false"` prop.')});let i=H(s.value?"visible":"hidden"),a=Gg(()=>{i.value="hidden"}),l=H(!0),u={show:s,appear:$(()=>e.appear||!l.value)};return Me(()=>{Je(()=>{l.value=!1,s.value?i.value="visible":Vi(a)||(i.value="hidden")})}),Be(Tc,a),Be(Pc,u),()=>{let c=$g(e,["show","appear","unmount","onBeforeEnter","onBeforeLeave","onAfterEnter","onAfterLeave"]),f={unmount:e.unmount};return _t({ourProps:{...f,as:"template"},theirProps:{},slot:{},slots:{...r,default:()=>[ve(UP,{onBeforeEnter:()=>t("beforeEnter"),onAfterEnter:()=>t("afterEnter"),onBeforeLeave:()=>t("beforeLeave"),onAfterLeave:()=>t("afterLeave"),...n,...f,...c},r.default)]},attrs:{},features:Yg,visible:i.value==="visible",name:"Transition"})}}});const Sa=tn(We.ui.strategy,We.ui.accordion,VE),zP=tn(We.ui.strategy,We.ui.button,mg),VP=ee({components:{HDisclosure:PP,HDisclosureButton:TP,HDisclosurePanel:AP,UIcon:wt,UButton:rn},inheritAttrs:!1,props:{items:{type:Array,default:()=>[]},defaultOpen:{type:Boolean,default:!1},openIcon:{type:String,default:()=>Sa.default.openIcon},unmount:{type:Boolean,default:!1},closeIcon:{type:String,default:()=>Sa.default.closeIcon},multiple:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["open"],setup(e,{emit:t}){const{ui:n,attrs:r}=Qe("accordion",xe(e,"ui"),Sa,xe(e,"class")),o=$(()=>zP),s=H([]),i=$(()=>s.value.map(({open:d})=>d));$e(i,(d,p)=>{for(const m in d){const h=p[m],y=d[m];!h&&y&&t("open",m)}},{immediate:!0});function a(d,p){!e.items[d].closeOthers&&e.multiple||s.value.forEach(m=>{m.open&&m.close(p.target)})}function l(d,p){const m=d;m.style.height="0",m.offsetHeight,m.style.height=m.scrollHeight+"px",m.addEventListener("transitionend",p,{once:!0})}function u(d){const p=d;p.style.height=p.scrollHeight+"px",p.offsetHeight}function c(d){const p=d;p.style.height="auto"}function f(d,p){const m=d;m.style.height="0",m.addEventListener("transitionend",p,{once:!0})}return wc(()=>Pi()),{ui:n,uiButton:o,attrs:r,buttonRefs:s,closeOthers:a,omit:Kh,onEnter:l,onBeforeLeave:u,onAfterEnter:c,onLeave:f}}}),WP={key:1};function qP(e,t,n,r,o,s){const i=wt,a=rn,l=qn("HDisclosureButton"),u=qn("HDisclosurePanel"),c=qn("HDisclosure");return M(),se("div",{class:W(e.ui.wrapper)},[(M(!0),se(Se,null,Et(e.items,(f,d)=>(M(),re(c,{key:d,as:"div",class:W(e.ui.container),"default-open":e.defaultOpen||f.defaultOpen},{default:ie(({open:p,close:m})=>[Y(l,{ref_for:!0,ref:()=>e.buttonRefs[d]={open:p,close:m},as:"template",disabled:f.disabled,onClick:h=>e.closeOthers(d,h),onKeydown:[Su(h=>e.closeOthers(d,h),["enter"]),Su(h=>e.closeOthers(d,h),["space"])]},{default:ie(()=>[be(e.$slots,"default",{item:f,index:d,open:p,close:m},()=>[Y(a,ae({ref_for:!0},{...e.omit(e.ui.default,["openIcon","closeIcon"]),...e.attrs,...e.omit(f,["slot","disabled","content","defaultOpen"])}),{trailing:ie(()=>[Y(i,{name:p&&e.closeIcon?e.closeIcon:e.openIcon,class:W([p&&!e.closeIcon?"-rotate-180":"",e.uiButton.icon.size[f.size||e.uiButton.default.size],e.ui.item.icon])},null,8,["name","class"])]),_:2},1040)])]),_:2},1032,["disabled","onClick","onKeydown"]),Y(Gr,ae({ref_for:!0},e.ui.transition,{onEnter:e.onEnter,onAfterEnter:e.onAfterEnter,onBeforeLeave:e.onBeforeLeave,onLeave:e.onLeave}),{default:ie(()=>[e.unmount?(M(),re(u,{key:0,class:W([e.ui.item.base,e.ui.item.size,e.ui.item.color,e.ui.item.padding]),unmount:""},{default:ie(()=>[be(e.$slots,f.slot||"item",{item:f,index:d,open:p,close:m},()=>[st(Fe(f.content),1)])]),_:2},1032,["class"])):dv((M(),se("div",WP,[Y(u,{class:W([e.ui.item.base,e.ui.item.size,e.ui.item.color,e.ui.item.padding]),static:""},{default:ie(()=>[be(e.$slots,f.slot||"item",{item:f,index:d,open:p,close:m},()=>[st(Fe(f.content),1)])]),_:2},1032,["class"])],512)),[[Oy,p]])]),_:2},1040,["onEnter","onAfterEnter","onBeforeLeave","onLeave"])]),_:2},1032,["class","default-open"]))),128))],2)}const KP=nn(VP,[["render",qP]]),GP=ee({inheritAttrs:!1,__name:"NavigationAccordion",props:{level:{type:Number,default:0},links:{type:Array,default:()=>[]},multiple:{type:Boolean,default:!0},defaultOpen:{type:[Boolean,Number],default:void 0},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=Ze(),n=$(()=>{const l=ut("space-y-3",r.level>0&&"border-l border-gray-200 dark:border-gray-800 -ml-px hover:border-gray-300 dark:hover:border-gray-700"),u=ut("border-l border-gray-200 dark:border-gray-800",r.level>0?"ml-6":"ml-2.5");return{wrapper:l,container:"space-y-3",item:{padding:"",color:"text-inherit dark:text-inherit"},button:{base:"flex items-center gap-1.5 group w-full focus-visible:outline-primary",active:"text-primary border-current",inactive:"border-transparent",level:"border-l -ml-px pl-3.5",icon:{base:"w-5 h-5 flex-shrink-0"},trailingIcon:{name:t.ui.icons.chevron,base:"w-5 h-5 ms-auto transform transition-transform duration-200 flex-shrink-0 mr-1.5",active:"text-gray-700 dark:text-gray-200",inactive:"text-gray-500 dark:text-gray-400 group-hover:text-gray-700 dark:group-hover:text-gray-200 -rotate-90"},label:"text-sm/6 font-semibold truncate"},tree:u,links:{}}}),r=e,o=En(),{ui:s,attrs:i}=Qe("navigation.accordion",xe(r,"ui"),n,xe(r,"class"),!0),a=$(()=>{var l;return(l=r.links)==null?void 0:l.map(u=>{const c=!r.defaultOpen||typeof r.defaultOpen=="number"&&r.level<r.defaultOpen||u.to&&o.path.startsWith(u.to.toString());return{label:u.label,icon:u.icon,slot:u.label.toLowerCase(),disabled:u.disabled,defaultOpen:c,children:u.children}})});return(l,u)=>{const c=wt,f=tr,d=Xg,p=KP;return M(),re(p,ae({key:E(o).path,items:E(a),multiple:e.multiple,ui:E(s)},E(i)),Ai({default:ie(({item:m,open:h})=>[Y(f,{class:W([E(s).button.base,e.level>0&&E(s).button.level]),"active-class":E(s).button.active,"inactive-class":E(s).button.inactive},{default:ie(()=>[m.icon?(M(),re(c,{key:0,name:m.icon,class:W(E(s).button.icon.base)},null,8,["name","class"])):me("",!0),Ae("span",{class:W(E(s).button.label)},Fe(m.label),3),m.disabled?me("",!0):(M(),re(c,{key:1,name:E(s).button.trailingIcon.name,class:W([E(s).button.trailingIcon.base,h?E(s).button.trailingIcon.active:E(s).button.trailingIcon.inactive])},null,8,["name","class"]))]),_:2},1032,["class","active-class","inactive-class"])]),_:2},[Et(e.links,({label:m},h)=>({name:m.toLowerCase(),fn:ie(({item:y})=>[Y(d,{links:y.children,level:e.level+1,"default-open":e.defaultOpen,multiple:e.multiple,class:W(E(s).tree),ui:{links:E(s).links}},null,8,["links","level","default-open","multiple","class","ui"])])}))]),1040,["items","multiple","ui"])}}}),YP=ee({inheritAttrs:!1,__name:"NavigationLinks",props:{level:{type:Number,default:0},links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t={wrapper:"space-y-3",wrapperLevel:"space-y-1.5",base:"flex items-center gap-1.5 group",active:"text-primary font-medium border-current",inactive:"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 border-transparent hover:border-gray-500 dark:hover:border-gray-400",level:"border-l -ml-px pl-4",icon:{base:"w-5 h-5 flex-shrink-0"},badge:{base:"rounded-full"},label:"text-sm/6 truncate"},n=e,{ui:r,attrs:o}=Qe("navigation.links",xe(n,"ui"),t,xe(n,"class"),!0);return(s,i)=>{var c;const a=wt,l=vg,u=tr;return(c=e.links)!=null&&c.length?(M(),se("div",ae({key:0,class:e.level>0?E(r).wrapperLevel:E(r).wrapper},E(o)),[(M(!0),se(Se,null,Et(e.links,(f,d)=>(M(),re(u,ae({key:d,ref_for:!0},E(Xr)(f),{class:[E(r).base,e.level>0&&E(r).level],"active-class":E(r).active,"inactive-class":E(r).inactive,onClick:f.click}),{default:ie(()=>[f.icon?(M(),re(a,{key:0,name:f.icon,class:W(E(Ft)(E(r).icon.base,f.iconClass))},null,8,["name","class"])):me("",!0),Ae("span",{class:W(E(r).label)},Fe(f.label),3),be(s.$slots,"badge",{link:f},()=>[f.badge?(M(),re(l,ae({key:0,ref_for:!0},typeof f.badge=="string"?{size:"xs",variant:"subtle",label:f.badge}:{size:"xs",variant:"subtle",...f.badge},{class:E(r).badge.base}),null,16,["class"])):me("",!0)])]),_:2},1040,["class","active-class","inactive-class","onClick"]))),128))],16)):me("",!0)}}}),Xg=ee({inheritAttrs:!1,__name:"NavigationTree",props:{level:{type:Number,default:0},links:{type:Array,default:()=>[]},multiple:{type:Boolean,default:!0},defaultOpen:{type:[Boolean,Number],default:void 0},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t={wrapper:"space-y-3",accordion:{},links:{}},n=e,{ui:r,attrs:o}=Qe("navigation.tree",xe(n,"ui"),t,xe(n,"class"),!0),s=$(()=>{var l;const i=[];let a={type:void 0,children:[]};for(const u of n.links){const c=(l=u.children)!=null&&l.length?"accordion":"link";a.type||(a.type=c),a.type===c?a.children.push(u):(i.push(a),a={type:c,children:[u]})}return a.children.length&&i.push(a),i});return(i,a)=>{var c;const l=GP,u=YP;return(c=E(s))!=null&&c.length?(M(),se("nav",ae({key:0,class:E(r).wrapper},E(o)),[(M(!0),se(Se,null,Et(E(s),(f,d)=>(M(),se(Se,{key:d},[f.type==="accordion"?(M(),re(l,{key:0,links:f.children,level:e.level,multiple:e.multiple,"default-open":e.defaultOpen,ui:{...E(r).accordion,links:E(r).links}},null,8,["links","level","multiple","default-open","ui"])):(M(),re(u,{key:1,links:f.children,level:e.level,ui:E(r).links},null,8,["links","level","ui"]))],64))),128))],16)):me("",!0)}}}),QP=ee({inheritAttrs:!1,__name:"HeaderPopoverLinks",props:{links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=Ze(),n=$(()=>({wrapper:"p-2 space-y-1",base:"block px-2 py-1.5 rounded-md flex items-start gap-1.5",active:"bg-gray-100/50 dark:bg-gray-800/50 text-primary",inactive:"hover:bg-gray-100/50 dark:hover:bg-gray-800/50",label:"font-semibold text-sm/6 inline-block relative",description:"text-sm leading-snug text-gray-500 dark:text-gray-400 line-clamp-2",icon:{base:"w-4 h-4 flex-shrink-0 mt-1"},externalIcon:{name:t.ui.icons.external,base:"w-3 h-3 absolute top-0.5 -right-3.5 text-gray-400 dark:text-gray-500"}})),r=e,{ui:o,attrs:s}=Qe("header.popover.links",xe(r,"ui"),n,xe(r,"class"),!0);return(i,a)=>{var c;const l=wt,u=tr;return(c=e.links)!=null&&c.length?(M(),se("div",ae({key:0,class:E(o).wrapper},E(s)),[(M(!0),se(Se,null,Et(e.links,(f,d)=>(M(),re(u,ae({key:d,ref_for:!0},E(Xr)(f),{class:E(o).base,"active-class":E(o).active,"inactive-class":E(o).inactive,onClick:f.click}),{default:ie(()=>[f.icon?(M(),re(l,{key:0,name:f.icon,class:W(E(Ft)(E(o).icon.base,f.iconClass))},null,8,["name","class"])):me("",!0),Ae("p",{class:W([f.target==="_blank"&&"pr-3"])},[Ae("span",{class:W(E(o).label)},[st(Fe(f.label)+" ",1),f.target==="_blank"?(M(),re(l,{key:0,name:E(o).externalIcon.name,class:W(E(o).externalIcon.base)},null,8,["name","class"])):me("",!0)],2),f.description?(M(),se("span",{key:0,class:W(E(o).description)},Fe(f.description),3)):me("",!0)],2)]),_:2},1040,["class","active-class","inactive-class","onClick"]))),128))],16)):me("",!0)}}});function It(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Cr(e){var t=It(e).Element;return e instanceof t||e instanceof Element}function Dt(e){var t=It(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Ac(e){if(typeof ShadowRoot>"u")return!1;var t=It(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}var wr=Math.max,bi=Math.min,Zr=Math.round;function $l(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function Jg(){return!/^((?!chrome|android).)*safari/i.test($l())}function eo(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),o=1,s=1;t&&Dt(e)&&(o=e.offsetWidth>0&&Zr(r.width)/e.offsetWidth||1,s=e.offsetHeight>0&&Zr(r.height)/e.offsetHeight||1);var i=Cr(e)?It(e):window,a=i.visualViewport,l=!Jg()&&n,u=(r.left+(l&&a?a.offsetLeft:0))/o,c=(r.top+(l&&a?a.offsetTop:0))/s,f=r.width/o,d=r.height/s;return{width:f,height:d,top:c,right:u+f,bottom:c+d,left:u,x:u,y:c}}function Oc(e){var t=It(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function XP(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function JP(e){return e===It(e)||!Dt(e)?Oc(e):XP(e)}function pn(e){return e?(e.nodeName||"").toLowerCase():null}function nr(e){return((Cr(e)?e.ownerDocument:e.document)||window.document).documentElement}function $c(e){return eo(nr(e)).left+Oc(e).scrollLeft}function Cn(e){return It(e).getComputedStyle(e)}function Rc(e){var t=Cn(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function ZP(e){var t=e.getBoundingClientRect(),n=Zr(t.width)/e.offsetWidth||1,r=Zr(t.height)/e.offsetHeight||1;return n!==1||r!==1}function eT(e,t,n){n===void 0&&(n=!1);var r=Dt(t),o=Dt(t)&&ZP(t),s=nr(t),i=eo(e,o,n),a={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!n)&&((pn(t)!=="body"||Rc(s))&&(a=JP(t)),Dt(t)?(l=eo(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):s&&(l.x=$c(s))),{x:i.left+a.scrollLeft-l.x,y:i.top+a.scrollTop-l.y,width:i.width,height:i.height}}function Ic(e){var t=eo(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function Wi(e){return pn(e)==="html"?e:e.assignedSlot||e.parentNode||(Ac(e)?e.host:null)||nr(e)}function Zg(e){return["html","body","#document"].indexOf(pn(e))>=0?e.ownerDocument.body:Dt(e)&&Rc(e)?e:Zg(Wi(e))}function Ho(e,t){var n;t===void 0&&(t=[]);var r=Zg(e),o=r===((n=e.ownerDocument)==null?void 0:n.body),s=It(r),i=o?[s].concat(s.visualViewport||[],Rc(r)?r:[]):r,a=t.concat(i);return o?a:a.concat(Ho(Wi(i)))}function tT(e){return["table","td","th"].indexOf(pn(e))>=0}function Vf(e){return!Dt(e)||Cn(e).position==="fixed"?null:e.offsetParent}function nT(e){var t=/firefox/i.test($l()),n=/Trident/i.test($l());if(n&&Dt(e)){var r=Cn(e);if(r.position==="fixed")return null}var o=Wi(e);for(Ac(o)&&(o=o.host);Dt(o)&&["html","body"].indexOf(pn(o))<0;){var s=Cn(o);if(s.transform!=="none"||s.perspective!=="none"||s.contain==="paint"||["transform","perspective"].indexOf(s.willChange)!==-1||t&&s.willChange==="filter"||t&&s.filter&&s.filter!=="none")return o;o=o.parentNode}return null}function ms(e){for(var t=It(e),n=Vf(e);n&&tT(n)&&Cn(n).position==="static";)n=Vf(n);return n&&(pn(n)==="html"||pn(n)==="body"&&Cn(n).position==="static")?t:n||nT(e)||t}var $t="top",Zt="bottom",en="right",Rt="left",Lc="auto",vs=[$t,Zt,en,Rt],to="start",ts="end",rT="clippingParents",em="viewport",ko="popper",oT="reference",Wf=vs.reduce(function(e,t){return e.concat([t+"-"+to,t+"-"+ts])},[]),tm=[].concat(vs,[Lc]).reduce(function(e,t){return e.concat([t,t+"-"+to,t+"-"+ts])},[]),sT="beforeRead",iT="read",aT="afterRead",lT="beforeMain",cT="main",uT="afterMain",fT="beforeWrite",dT="write",pT="afterWrite",hT=[sT,iT,aT,lT,cT,uT,fT,dT,pT];function gT(e){var t=new Map,n=new Set,r=[];e.forEach(function(s){t.set(s.name,s)});function o(s){n.add(s.name);var i=[].concat(s.requires||[],s.requiresIfExists||[]);i.forEach(function(a){if(!n.has(a)){var l=t.get(a);l&&o(l)}}),r.push(s)}return e.forEach(function(s){n.has(s.name)||o(s)}),r}function mT(e){var t=gT(e);return hT.reduce(function(n,r){return n.concat(t.filter(function(o){return o.phase===r}))},[])}function vT(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function yT(e){var t=e.reduce(function(n,r){var o=n[r.name];return n[r.name]=o?Object.assign({},o,r,{options:Object.assign({},o.options,r.options),data:Object.assign({},o.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}function bT(e,t){var n=It(e),r=nr(e),o=n.visualViewport,s=r.clientWidth,i=r.clientHeight,a=0,l=0;if(o){s=o.width,i=o.height;var u=Jg();(u||!u&&t==="fixed")&&(a=o.offsetLeft,l=o.offsetTop)}return{width:s,height:i,x:a+$c(e),y:l}}function wT(e){var t,n=nr(e),r=Oc(e),o=(t=e.ownerDocument)==null?void 0:t.body,s=wr(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),i=wr(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),a=-r.scrollLeft+$c(e),l=-r.scrollTop;return Cn(o||n).direction==="rtl"&&(a+=wr(n.clientWidth,o?o.clientWidth:0)-s),{width:s,height:i,x:a,y:l}}function nm(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&Ac(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function Rl(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function _T(e,t){var n=eo(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function qf(e,t,n){return t===em?Rl(bT(e,n)):Cr(t)?_T(t,n):Rl(wT(nr(e)))}function xT(e){var t=Ho(Wi(e)),n=["absolute","fixed"].indexOf(Cn(e).position)>=0,r=n&&Dt(e)?ms(e):e;return Cr(r)?t.filter(function(o){return Cr(o)&&nm(o,r)&&pn(o)!=="body"}):[]}function kT(e,t,n,r){var o=t==="clippingParents"?xT(e):[].concat(t),s=[].concat(o,[n]),i=s[0],a=s.reduce(function(l,u){var c=qf(e,u,r);return l.top=wr(c.top,l.top),l.right=bi(c.right,l.right),l.bottom=bi(c.bottom,l.bottom),l.left=wr(c.left,l.left),l},qf(e,i,r));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function fn(e){return e.split("-")[0]}function no(e){return e.split("-")[1]}function Mc(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function rm(e){var t=e.reference,n=e.element,r=e.placement,o=r?fn(r):null,s=r?no(r):null,i=t.x+t.width/2-n.width/2,a=t.y+t.height/2-n.height/2,l;switch(o){case $t:l={x:i,y:t.y-n.height};break;case Zt:l={x:i,y:t.y+t.height};break;case en:l={x:t.x+t.width,y:a};break;case Rt:l={x:t.x-n.width,y:a};break;default:l={x:t.x,y:t.y}}var u=o?Mc(o):null;if(u!=null){var c=u==="y"?"height":"width";switch(s){case to:l[u]=l[u]-(t[c]/2-n[c]/2);break;case ts:l[u]=l[u]+(t[c]/2-n[c]/2);break}}return l}function om(){return{top:0,right:0,bottom:0,left:0}}function sm(e){return Object.assign({},om(),e)}function im(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}function jc(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=r===void 0?e.placement:r,s=n.strategy,i=s===void 0?e.strategy:s,a=n.boundary,l=a===void 0?rT:a,u=n.rootBoundary,c=u===void 0?em:u,f=n.elementContext,d=f===void 0?ko:f,p=n.altBoundary,m=p===void 0?!1:p,h=n.padding,y=h===void 0?0:h,x=sm(typeof y!="number"?y:im(y,vs)),b=d===ko?oT:ko,g=e.rects.popper,v=e.elements[m?b:d],w=kT(Cr(v)?v:v.contextElement||nr(e.elements.popper),l,c,i),S=eo(e.elements.reference),C=rm({reference:S,element:g,strategy:"absolute",placement:o}),R=Rl(Object.assign({},g,C)),A=d===ko?R:S,T={top:w.top-A.top+x.top,bottom:A.bottom-w.bottom+x.bottom,left:w.left-A.left+x.left,right:A.right-w.right+x.right},U=e.modifiersData.offset;if(d===ko&&U){var O=U[o];Object.keys(T).forEach(function(F){var le=[en,Zt].indexOf(F)>=0?1:-1,pe=[$t,Zt].indexOf(F)>=0?"y":"x";T[F]+=O[pe]*le})}return T}var Kf={placement:"bottom",modifiers:[],strategy:"absolute"};function Gf(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function ST(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,o=t.defaultOptions,s=o===void 0?Kf:o;return function(a,l,u){u===void 0&&(u=s);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},Kf,s),modifiersData:{},elements:{reference:a,popper:l},attributes:{},styles:{}},f=[],d=!1,p={state:c,setOptions:function(x){var b=typeof x=="function"?x(c.options):x;h(),c.options=Object.assign({},s,c.options,b),c.scrollParents={reference:Cr(a)?Ho(a):a.contextElement?Ho(a.contextElement):[],popper:Ho(l)};var g=mT(yT([].concat(r,c.options.modifiers)));return c.orderedModifiers=g.filter(function(v){return v.enabled}),m(),p.update()},forceUpdate:function(){if(!d){var x=c.elements,b=x.reference,g=x.popper;if(Gf(b,g)){c.rects={reference:eT(b,ms(g),c.options.strategy==="fixed"),popper:Ic(g)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(T){return c.modifiersData[T.name]=Object.assign({},T.data)});for(var v=0;v<c.orderedModifiers.length;v++){if(c.reset===!0){c.reset=!1,v=-1;continue}var w=c.orderedModifiers[v],S=w.fn,C=w.options,R=C===void 0?{}:C,A=w.name;typeof S=="function"&&(c=S({state:c,options:R,name:A,instance:p})||c)}}}},update:vT(function(){return new Promise(function(y){p.forceUpdate(),y(c)})}),destroy:function(){h(),d=!0}};if(!Gf(a,l))return p;p.setOptions(u).then(function(y){!d&&u.onFirstUpdate&&u.onFirstUpdate(y)});function m(){c.orderedModifiers.forEach(function(y){var x=y.name,b=y.options,g=b===void 0?{}:b,v=y.effect;if(typeof v=="function"){var w=v({state:c,name:x,instance:p,options:g}),S=function(){};f.push(w||S)}})}function h(){f.forEach(function(y){return y()}),f=[]}return p}}var js={passive:!0};function ET(e){var t=e.state,n=e.instance,r=e.options,o=r.scroll,s=o===void 0?!0:o,i=r.resize,a=i===void 0?!0:i,l=It(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&u.forEach(function(c){c.addEventListener("scroll",n.update,js)}),a&&l.addEventListener("resize",n.update,js),function(){s&&u.forEach(function(c){c.removeEventListener("scroll",n.update,js)}),a&&l.removeEventListener("resize",n.update,js)}}const am={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:ET,data:{}};function CT(e){var t=e.state,n=e.name;t.modifiersData[n]=rm({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})}const PT={name:"popperOffsets",enabled:!0,phase:"read",fn:CT,data:{}};var TT={top:"auto",right:"auto",bottom:"auto",left:"auto"};function AT(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:Zr(n*o)/o||0,y:Zr(r*o)/o||0}}function Yf(e){var t,n=e.popper,r=e.popperRect,o=e.placement,s=e.variation,i=e.offsets,a=e.position,l=e.gpuAcceleration,u=e.adaptive,c=e.roundOffsets,f=e.isFixed,d=i.x,p=d===void 0?0:d,m=i.y,h=m===void 0?0:m,y=typeof c=="function"?c({x:p,y:h}):{x:p,y:h};p=y.x,h=y.y;var x=i.hasOwnProperty("x"),b=i.hasOwnProperty("y"),g=Rt,v=$t,w=window;if(u){var S=ms(n),C="clientHeight",R="clientWidth";if(S===It(n)&&(S=nr(n),Cn(S).position!=="static"&&a==="absolute"&&(C="scrollHeight",R="scrollWidth")),S=S,o===$t||(o===Rt||o===en)&&s===ts){v=Zt;var A=f&&S===w&&w.visualViewport?w.visualViewport.height:S[C];h-=A-r.height,h*=l?1:-1}if(o===Rt||(o===$t||o===Zt)&&s===ts){g=en;var T=f&&S===w&&w.visualViewport?w.visualViewport.width:S[R];p-=T-r.width,p*=l?1:-1}}var U=Object.assign({position:a},u&&TT),O=c===!0?AT({x:p,y:h},It(n)):{x:p,y:h};if(p=O.x,h=O.y,l){var F;return Object.assign({},U,(F={},F[v]=b?"0":"",F[g]=x?"0":"",F.transform=(w.devicePixelRatio||1)<=1?"translate("+p+"px, "+h+"px)":"translate3d("+p+"px, "+h+"px, 0)",F))}return Object.assign({},U,(t={},t[v]=b?h+"px":"",t[g]=x?p+"px":"",t.transform="",t))}function OT(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=r===void 0?!0:r,s=n.adaptive,i=s===void 0?!0:s,a=n.roundOffsets,l=a===void 0?!0:a,u={placement:fn(t.placement),variation:no(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Yf(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Yf(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const lm={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:OT,data:{}};function $T(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},o=t.attributes[n]||{},s=t.elements[n];!Dt(s)||!pn(s)||(Object.assign(s.style,r),Object.keys(o).forEach(function(i){var a=o[i];a===!1?s.removeAttribute(i):s.setAttribute(i,a===!0?"":a)}))})}function RT(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var o=t.elements[r],s=t.attributes[r]||{},i=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),a=i.reduce(function(l,u){return l[u]="",l},{});!Dt(o)||!pn(o)||(Object.assign(o.style,a),Object.keys(s).forEach(function(l){o.removeAttribute(l)}))})}}const IT={name:"applyStyles",enabled:!0,phase:"write",fn:$T,effect:RT,requires:["computeStyles"]};var LT=[am,PT,lm,IT],MT={left:"right",right:"left",bottom:"top",top:"bottom"};function Ks(e){return e.replace(/left|right|bottom|top/g,function(t){return MT[t]})}var jT={start:"end",end:"start"};function Qf(e){return e.replace(/start|end/g,function(t){return jT[t]})}function DT(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=n.boundary,s=n.rootBoundary,i=n.padding,a=n.flipVariations,l=n.allowedAutoPlacements,u=l===void 0?tm:l,c=no(r),f=c?a?Wf:Wf.filter(function(m){return no(m)===c}):vs,d=f.filter(function(m){return u.indexOf(m)>=0});d.length===0&&(d=f);var p=d.reduce(function(m,h){return m[h]=jc(e,{placement:h,boundary:o,rootBoundary:s,padding:i})[fn(h)],m},{});return Object.keys(p).sort(function(m,h){return p[m]-p[h]})}function NT(e){if(fn(e)===Lc)return[];var t=Ks(e);return[Qf(e),t,Qf(t)]}function HT(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,s=o===void 0?!0:o,i=n.altAxis,a=i===void 0?!0:i,l=n.fallbackPlacements,u=n.padding,c=n.boundary,f=n.rootBoundary,d=n.altBoundary,p=n.flipVariations,m=p===void 0?!0:p,h=n.allowedAutoPlacements,y=t.options.placement,x=fn(y),b=x===y,g=l||(b||!m?[Ks(y)]:NT(y)),v=[y].concat(g).reduce(function(De,ct){return De.concat(fn(ct)===Lc?DT(t,{placement:ct,boundary:c,rootBoundary:f,padding:u,flipVariations:m,allowedAutoPlacements:h}):ct)},[]),w=t.rects.reference,S=t.rects.popper,C=new Map,R=!0,A=v[0],T=0;T<v.length;T++){var U=v[T],O=fn(U),F=no(U)===to,le=[$t,Zt].indexOf(O)>=0,pe=le?"width":"height",B=jc(t,{placement:U,boundary:c,rootBoundary:f,altBoundary:d,padding:u}),Z=le?F?en:Rt:F?Zt:$t;w[pe]>S[pe]&&(Z=Ks(Z));var X=Ks(Z),Ee=[];if(s&&Ee.push(B[O]<=0),a&&Ee.push(B[Z]<=0,B[X]<=0),Ee.every(function(De){return De})){A=U,R=!1;break}C.set(U,Ee)}if(R)for(var et=m?3:1,fe=function(ct){var Ke=v.find(function(L){var G=C.get(L);if(G)return G.slice(0,ct).every(function(q){return q})});if(Ke)return A=Ke,"break"},ye=et;ye>0;ye--){var qe=fe(ye);if(qe==="break")break}t.placement!==A&&(t.modifiersData[r]._skip=!0,t.placement=A,t.reset=!0)}}const FT={name:"flip",enabled:!0,phase:"main",fn:HT,requiresIfExists:["offset"],data:{_skip:!1}};function BT(e,t,n){var r=fn(e),o=[Rt,$t].indexOf(r)>=0?-1:1,s=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,i=s[0],a=s[1];return i=i||0,a=(a||0)*o,[Rt,en].indexOf(r)>=0?{x:a,y:i}:{x:i,y:a}}function UT(e){var t=e.state,n=e.options,r=e.name,o=n.offset,s=o===void 0?[0,0]:o,i=tm.reduce(function(c,f){return c[f]=BT(f,t.rects,s),c},{}),a=i[t.placement],l=a.x,u=a.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=i}const zT={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:UT};function VT(e){return e==="x"?"y":"x"}function Fo(e,t,n){return wr(e,bi(t,n))}function WT(e,t,n){var r=Fo(e,t,n);return r>n?n:r}function qT(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,s=o===void 0?!0:o,i=n.altAxis,a=i===void 0?!1:i,l=n.boundary,u=n.rootBoundary,c=n.altBoundary,f=n.padding,d=n.tether,p=d===void 0?!0:d,m=n.tetherOffset,h=m===void 0?0:m,y=jc(t,{boundary:l,rootBoundary:u,padding:f,altBoundary:c}),x=fn(t.placement),b=no(t.placement),g=!b,v=Mc(x),w=VT(v),S=t.modifiersData.popperOffsets,C=t.rects.reference,R=t.rects.popper,A=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,T=typeof A=="number"?{mainAxis:A,altAxis:A}:Object.assign({mainAxis:0,altAxis:0},A),U=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,O={x:0,y:0};if(S){if(s){var F,le=v==="y"?$t:Rt,pe=v==="y"?Zt:en,B=v==="y"?"height":"width",Z=S[v],X=Z+y[le],Ee=Z-y[pe],et=p?-R[B]/2:0,fe=b===to?C[B]:R[B],ye=b===to?-R[B]:-C[B],qe=t.elements.arrow,De=p&&qe?Ic(qe):{width:0,height:0},ct=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:om(),Ke=ct[le],L=ct[pe],G=Fo(0,C[B],De[B]),q=g?C[B]/2-et-G-Ke-T.mainAxis:fe-G-Ke-T.mainAxis,te=g?-C[B]/2+et+G+L+T.mainAxis:ye+G+L+T.mainAxis,Pe=t.elements.arrow&&ms(t.elements.arrow),Ne=Pe?v==="y"?Pe.clientTop||0:Pe.clientLeft||0:0,_=(F=U==null?void 0:U[v])!=null?F:0,k=Z+q-_-Ne,P=Z+te-_,j=Fo(p?bi(X,k):X,Z,p?wr(Ee,P):Ee);S[v]=j,O[v]=j-Z}if(a){var I,D=v==="x"?$t:Rt,K=v==="x"?Zt:en,z=S[w],V=w==="y"?"height":"width",N=z+y[D],ce=z-y[K],Q=[$t,Rt].indexOf(x)!==-1,ne=(I=U==null?void 0:U[w])!=null?I:0,ge=Q?N:z-C[V]-R[V]-ne+T.altAxis,ke=Q?z+C[V]+R[V]-ne-T.altAxis:ce,Re=p&&Q?WT(ge,z,ke):Fo(p?ge:N,z,p?ke:ce);S[w]=Re,O[w]=Re-z}t.modifiersData[r]=O}}const KT={name:"preventOverflow",enabled:!0,phase:"main",fn:qT,requiresIfExists:["offset"]};var GT=function(t,n){return t=typeof t=="function"?t(Object.assign({},n.rects,{placement:n.placement})):t,sm(typeof t!="number"?t:im(t,vs))};function YT(e){var t,n=e.state,r=e.name,o=e.options,s=n.elements.arrow,i=n.modifiersData.popperOffsets,a=fn(n.placement),l=Mc(a),u=[Rt,en].indexOf(a)>=0,c=u?"height":"width";if(!(!s||!i)){var f=GT(o.padding,n),d=Ic(s),p=l==="y"?$t:Rt,m=l==="y"?Zt:en,h=n.rects.reference[c]+n.rects.reference[l]-i[l]-n.rects.popper[c],y=i[l]-n.rects.reference[l],x=ms(s),b=x?l==="y"?x.clientHeight||0:x.clientWidth||0:0,g=h/2-y/2,v=f[p],w=b-d[c]-f[m],S=b/2-d[c]/2+g,C=Fo(v,S,w),R=l;n.modifiersData[r]=(t={},t[R]=C,t.centerOffset=C-S,t)}}function QT(e){var t=e.state,n=e.options,r=n.element,o=r===void 0?"[data-popper-arrow]":r;o!=null&&(typeof o=="string"&&(o=t.elements.popper.querySelector(o),!o)||nm(t.elements.popper,o)&&(t.elements.arrow=o))}const XT={name:"arrow",enabled:!0,phase:"main",fn:YT,effect:QT,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]},JT=ST({defaultModifiers:[...LT,zT,FT,KT,lm,am,XT]});function ZT({locked:e=!1,overflowPadding:t=8,offsetDistance:n=8,offsetSkid:r=0,gpuAcceleration:o=!0,adaptive:s=!0,scroll:i=!0,resize:a=!0,arrow:l=!1,placement:u,strategy:c},f){const d=H(null),p=H(null),m=H(null);return Me(()=>{Je(h=>{if(!p.value||!d.value&&!(f!=null&&f.value))return;const y=mi(p),x=mi(d);if(!(y instanceof HTMLElement)||!x)return;const b={modifiers:[{name:"flip",enabled:!e},{name:"preventOverflow",options:{padding:t}},{name:"offset",options:{offset:[r,n]}},{name:"computeStyles",options:{adaptive:s,gpuAcceleration:o}},{name:"eventListeners",options:{scroll:i,resize:a}},{name:"arrow",enabled:l}]};u&&(b.placement=u),c&&(b.strategy=c),m.value=JT(x,y,b),h(m.value.destroy)})}),[d,p,m]}const Ea=tn(We.ui.strategy,We.ui.popover,KE),eA=ee({components:{HPopover:Kg,HPopoverButton:IP,HPopoverPanel:LP},inheritAttrs:!1,props:{mode:{type:String,default:"click",validator:e=>["click","hover"].includes(e)},open:{type:Boolean,default:void 0},disabled:{type:Boolean,default:!1},openDelay:{type:Number,default:()=>Ea.default.openDelay},closeDelay:{type:Number,default:()=>Ea.default.closeDelay},overlay:{type:Boolean,default:!1},popper:{type:Object,default:()=>({})},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["update:open"],setup(e,{emit:t}){const{ui:n,attrs:r}=Qe("popover",xe(e,"ui"),Ea,xe(e,"class")),o=$(()=>Li(e.mode==="hover"?{offsetDistance:0}:{},e.popper,n.value.popper)),[s,i]=ZT(o.value),a=H(null),l=H(null);let u=null,c=null;Me(()=>{var x,b;const h=(x=a.value)==null?void 0:x.$.provides;if(!h)return;const y=Object.getOwnPropertySymbols(h);l.value=y.length&&h[y[0]],e.open&&((b=l.value)==null||b.togglePopover())});const f=$(()=>{var b,g,v;if(e.mode!=="hover")return{};const h=((b=e.popper)==null?void 0:b.offsetDistance)||((g=n.value.popper)==null?void 0:g.offsetDistance)||8,y=(v=o.value.placement)==null?void 0:v.split("-")[0],x=`${h}px`;return y==="top"||y==="bottom"?{paddingTop:x,paddingBottom:x}:y==="left"||y==="right"?{paddingLeft:x,paddingRight:x}:{paddingTop:x,paddingBottom:x,paddingLeft:x,paddingRight:x}});function d(h){!h.cancelable||!l.value||e.mode==="click"||(l.value.popoverState===0?l.value.closePopover():l.value.togglePopover())}function p(){e.mode!=="hover"||!l.value||(c&&(clearTimeout(c),c=null),l.value.popoverState!==0&&(u=u||setTimeout(()=>{l.value.togglePopover&&l.value.togglePopover(),u=null},e.openDelay)))}function m(){e.mode!=="hover"||!l.value||(u&&(clearTimeout(u),u=null),l.value.popoverState!==1&&(c=c||setTimeout(()=>{l.value.closePopover&&l.value.closePopover(),c=null},e.closeDelay)))}return $e(()=>e.open,(h,y)=>{l.value&&(y===void 0||h===y||(h?l.value.popoverState=0:l.value.closePopover()))}),$e(()=>{var h;return(h=l.value)==null?void 0:h.popoverState},(h,y)=>{y===void 0||h===y||t("update:open",h===0)}),wc(()=>Pi()),{ui:n,attrs:r,popover:a,popper:o,trigger:s,container:i,containerStyle:f,onTouchStart:d,onMouseEnter:p,onMouseLeave:m}}}),tA=["disabled"];function nA(e,t,n,r,o,s){const i=qn("HPopoverButton"),a=qn("HPopoverPanel"),l=qn("HPopover");return M(),re(l,ae({ref:"popover",class:e.ui.wrapper},e.attrs,{onMouseleave:e.onMouseLeave}),{default:ie(({open:u,close:c})=>[Y(i,{ref:"trigger",as:"div",disabled:e.disabled,class:W(e.ui.trigger),role:"button",onMouseenter:e.onMouseEnter,onTouchstartPassive:e.onTouchStart},{default:ie(()=>[be(e.$slots,"default",{open:u,close:c},()=>[Ae("button",{disabled:e.disabled}," Open ",8,tA)])]),_:2},1032,["disabled","class","onMouseenter","onTouchstartPassive"]),e.overlay?(M(),re(Gr,ae({key:0,appear:""},e.ui.overlay.transition),{default:ie(()=>[u?(M(),se("div",{key:0,class:W([e.ui.overlay.base,e.ui.overlay.background])},null,2)):me("",!0)]),_:2},1040)):me("",!0),u?(M(),se("div",{key:1,ref:"container",class:W([e.ui.container,e.ui.width]),style:ro(e.containerStyle),onMouseenter:t[0]||(t[0]=(...f)=>e.onMouseEnter&&e.onMouseEnter(...f))},[Y(Gr,ae({appear:""},e.ui.transition),{default:ie(()=>[Ae("div",null,[e.popper.arrow?(M(),se("div",{key:0,"data-popper-arrow":"",class:W(Object.values(e.ui.arrow))},null,2)):me("",!0),Y(a,{class:W([e.ui.base,e.ui.background,e.ui.ring,e.ui.rounded,e.ui.shadow]),static:""},{default:ie(()=>[be(e.$slots,"panel",{open:u,close:c})]),_:2},1032,["class"])])]),_:2},1040)],38)):me("",!0)]),_:3},16,["class","onMouseleave"])}const rA=nn(eA,[["render",nA]]),oA=ee({inheritAttrs:!1,__name:"HeaderLinks",props:{links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=Ze(),n=$(()=>({wrapper:"flex items-center gap-x-8",base:"text-sm/6 font-semibold flex items-center gap-1",active:"text-primary",inactive:"hover:text-primary",trailingIcon:{name:t.ui.icons.chevron,base:"w-5 h-5 transform transition-transform duration-200 flex-shrink-0",active:"rotate-180",inactive:""},externalIcon:{name:t.ui.icons.external,base:"w-3 h-3 absolute top-0.5 -right-3.5 text-gray-400 dark:text-gray-500"},default:{popover:{mode:"hover",openDelay:0,ui:{width:"max-w-[16rem]"}}}})),r=e,{ui:o,attrs:s}=Qe("header.links",xe(r,"ui"),n,xe(r,"class"),!0);return(i,a)=>{var d;const l=wt,u=tr,c=QP,f=rA;return(d=e.links)!=null&&d.length?(M(),se("ul",ae({key:0,class:E(o).wrapper},E(s)),[(M(!0),se(Se,null,Et(e.links,(p,m)=>{var h;return M(),se("li",{key:m,class:"relative"},[(h=p.children)!=null&&h.length?(M(),re(f,ae({key:0,ref_for:!0},E(o).default.popover),{default:ie(({open:y})=>[Y(u,ae({ref_for:!0},E(Xr)(p),{class:E(o).base,"active-class":E(o).active,"inactive-class":E(o).inactive,onClick:p.click}),{default:ie(()=>[be(i.$slots,"label",{link:p},()=>[st(Fe(p.label),1)]),Y(l,{name:E(o).trailingIcon.name,class:W([E(o).trailingIcon.base,y?E(o).trailingIcon.active:E(o).trailingIcon.inactive])},null,8,["name","class"])]),_:2},1040,["class","active-class","inactive-class","onClick"])]),panel:ie(({close:y})=>[be(i.$slots,"panel",{link:p,close:y},()=>[Y(c,{links:p.children,onClick:y},null,8,["links","onClick"])])]),_:2},1040)):(M(),re(u,ae({key:1,ref_for:!0},E(Xr)(p),{class:E(o).base,"active-class":E(o).active,"inactive-class":E(o).inactive,onClick:p.click}),{default:ie(()=>[be(i.$slots,"label",{link:p},()=>[st(Fe(p.label),1)]),p.target==="_blank"?(M(),re(l,{key:0,name:E(o).externalIcon.name,class:W(E(o).externalIcon.base)},null,8,["name","class"])):me("",!0)]),_:2},1040,["class","active-class","inactive-class","onClick"]))])}),128))],16)):me("",!0)}}}),sA=tn(We.ui.strategy,We.ui.container,qE),iA=ee({inheritAttrs:!1,props:{as:{type:String,default:"div"},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(e){const{ui:t,attrs:n}=Qe("container",xe(e,"ui"),sA),r=$(()=>Ft(ut(t.value.base,t.value.padding,t.value.constrained),e.class));return{ui:t,attrs:n,containerClass:r}}});function aA(e,t,n,r,o,s){return M(),re(Wr(e.as),ae({class:e.containerClass},e.attrs),{default:ie(()=>[be(e.$slots,"default")]),_:3},16,["class"])}const Dc=nn(iA,[["render",aA]]),lA=ee({inheritAttrs:!1,__name:"AsideLinks",props:{links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=Ze(),n=$(()=>({wrapper:"space-y-3 mb-3 lg:mb-6 -mx-1 lg:mx-0",base:"flex items-center gap-1.5 lg:gap-2 group",active:"text-primary font-semibold",inactive:"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 font-medium",icon:{wrapper:"rounded-md p-1 inline-flex ring-inset ring-1",base:"w-4 h-4 flex-shrink-0",active:"bg-primary ring-primary text-background",inactive:"bg-gray-100/50 dark:bg-gray-800/50 ring-gray-300 dark:ring-gray-700 group-hover:bg-primary group-hover:ring-primary group-hover:text-background"},externalIcon:{name:t.ui.icons.external,base:"w-3 h-3 absolute top-0.5 -right-3.5 text-gray-400 dark:text-gray-500"},label:"text-sm/6 relative"})),r=e,{ui:o,attrs:s}=Qe("aside.links",xe(r,"ui"),n,xe(r,"class"),!0);return(i,a)=>{var c;const l=wt,u=tr;return(c=e.links)!=null&&c.length?(M(),se("div",ae({key:0,class:E(o).wrapper},E(s)),[(M(!0),se(Se,null,Et(e.links,(f,d)=>(M(),re(u,ae({key:d,ref_for:!0},E(Xr)(f),{class:E(o).base,"active-class":E(o).active,"inactive-class":E(o).inactive,onClick:f.click}),{default:ie(({isActive:p})=>[f.icon?(M(),se("div",{key:0,class:W([E(o).icon.wrapper,f.active||p?E(o).icon.active:E(o).icon.inactive])},[Y(l,{name:f.icon,class:W(E(Ft)(E(o).icon.base,f.iconClass))},null,8,["name","class"])],2)):me("",!0),Ae("span",{class:W(E(o).label)},[st(Fe(f.label)+" ",1),f.target==="_blank"?(M(),re(l,{key:0,name:E(o).externalIcon.name,class:W(E(o).externalIcon.base)},null,8,["name","class"])):me("",!0)],2)]),_:2},1040,["class","active-class","inactive-class","onClick"]))),128))],16)):me("",!0)}}}),Il=e=>e.map(t=>{if(!t.children||typeof t.children=="string")return t.children||"";if(Array.isArray(t.children))return Il(t.children);if(t.children.default)return Il(t.children.default())}).join(""),cA=ee({inheritAttrs:!1,__name:"Header",props:{to:{type:String,default:"/"},title:{type:String,default:void 0},links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=Ze(),n=$(()=>({wrapper:"bg-background/75 backdrop-blur border-b border-gray-200 dark:border-gray-800 -mb-px sticky top-0 z-50",container:"flex items-center justify-between gap-3 h-[--header-height]",left:"lg:flex-1 flex items-center gap-1.5",center:"hidden lg:flex",right:"flex items-center justify-end lg:flex-1 gap-1.5",logo:"flex-shrink-0 font-bold text-xl text-gray-900 dark:text-white flex items-end gap-1.5",panel:{wrapper:"fixed inset-0 z-50 overflow-y-auto bg-background lg:hidden",header:"px-4 sm:px-6",body:"px-4 sm:px-6 pt-3 pb-6"},button:{base:"lg:hidden",icon:{open:t.ui.icons.menu,close:t.ui.icons.close}}})),r=e,o=En(),s=Yd(),{$ui:i}=_e(),{isHeaderDialogOpen:a}=_g(),{ui:l,attrs:u}=Qe("header",xe(r,"ui"),n,xe(r,"class"),!0),c=$(()=>(r.title||s.logo&&Il(s.logo())||"Logo").trim());return $e(()=>o.fullPath,()=>{a.value=!1}),wc(()=>Pi()),(f,d)=>{const p=Nh,m=oA,h=rn,y=Dc,x=lA;return M(),se("header",ae({class:E(l).wrapper},E(u)),[be(f.$slots,"top"),Y(y,{class:W(E(l).container)},{default:ie(()=>[Ae("div",{class:W(E(l).left)},[be(f.$slots,"left",{},()=>[Y(p,{to:e.to,"aria-label":E(c),class:W(E(l).logo)},{default:ie(()=>[be(f.$slots,"logo",{},()=>[st(Fe(e.title||"Nuxt UI Pro"),1)])]),_:3},8,["to","aria-label","class"])])],2),be(f.$slots,"center",{},()=>[Y(m,{links:e.links,class:W(E(l).center)},null,8,["links","class"])]),Ae("div",{class:W(E(l).right)},[be(f.$slots,"right"),be(f.$slots,"panel-button",{open:E(a)},()=>{var b,g;return[e.links.length||f.$slots.panel?(M(),re(h,ae({key:0,class:E(l).button.base},(g=(b=E(i))==null?void 0:b.button)==null?void 0:g.secondary,{"aria-label":`${E(a)?"Close":"Open"} Menu`,icon:E(a)?E(l).button.icon.close:E(l).button.icon.open,onClick:d[0]||(d[0]=v=>a.value=!E(a))}),null,16,["class","aria-label","icon"])):me("",!0)]})],2)]),_:3},8,["class"]),be(f.$slots,"bottom"),Y(E(Qg),{show:E(a),as:"template"},{default:ie(()=>[Y(E(kP),{as:"div",onClose:d[2]||(d[2]=b=>a.value=!1)},{default:ie(()=>[Y(E(SP),{class:W(E(l).panel.wrapper)},{default:ie(()=>[Ae("div",{class:W([E(l).panel.header,E(l).wrapper])},[Ae("div",{class:W(E(l).container)},[Ae("div",{class:W(E(l).left)},[be(f.$slots,"left",{},()=>[Y(p,{to:e.to,"aria-label":E(c),class:W(E(l).logo)},{default:ie(()=>[be(f.$slots,"logo",{},()=>[st(Fe(e.title||"Nuxt UI Pro"),1)])]),_:3},8,["to","aria-label","class"])])],2),be(f.$slots,"center"),Ae("div",{class:W(E(l).right)},[be(f.$slots,"right"),be(f.$slots,"panel-button",{open:E(a)},()=>{var b,g;return[Y(h,ae({class:E(l).button.base},(g=(b=E(i))==null?void 0:b.button)==null?void 0:g.secondary,{"aria-label":`${E(a)?"Close":"Open"} Menu`,icon:E(a)?E(l).button.icon.close:E(l).button.icon.open,onClick:d[1]||(d[1]=v=>a.value=!E(a))}),null,16,["class","aria-label","icon"])]})],2)],2)],2),Ae("div",{class:W(E(l).panel.body)},[be(f.$slots,"panel",{},()=>[Y(x,{links:e.links},null,8,["links"])])],2)]),_:3},8,["class"])]),_:3})]),_:3},8,["show"])],16)}}}),uA=/\d/,fA=["-","_","/","."];function dA(e=""){if(!uA.test(e))return e!==e.toLowerCase()}function Nc(e,t){const n=fA,r=[];if(!e||typeof e!="string")return r;let o="",s,i;for(const a of e){const l=n.includes(a);if(l===!0){r.push(o),o="",s=void 0;continue}const u=dA(a);if(i===!1){if(s===!1&&u===!0){r.push(o),o=a,s=u;continue}if(s===!0&&u===!1&&o.length>1){const c=o.at(-1);r.push(o.slice(0,Math.max(0,o.length-1))),o=c+a,s=u;continue}}o+=a,s=u,i=l}return r.push(o),r}function cm(e){return e?e[0].toUpperCase()+e.slice(1):""}function rO(e,t){return e?(Array.isArray(e)?e:Nc(e)).map(n=>cm(t!=null&&t.normalize?n.toLowerCase():n)).join(""):""}function oO(e,t){return e?(Array.isArray(e)?e:Nc(e)).map(n=>n.toLowerCase()).join("-"):""}function um(e,t){const n={[(t==null?void 0:t.labelAttribute)||"title"]:"label",_path:"to"};return e.map(r=>{var s;const o={};for(const i in r){if(i==="children"){o.children=(s=r.children)!=null&&s.length?um(r.children,t):void 0;continue}r[i]&&(o[n[i]||i]=r[i])}return o})}function sO(e){var t;return(t=e._dir)!=null&&t.title?e._dir.title:Nc(e._dir).map(n=>cm(n)).join(" ")}function pA(e,t){return!e||!t?[]:e.reduce((n,r)=>(t._path&&(t._path+"/").startsWith(r._path+"/")&&r.children&&(n.push(r),n.push(...pA(r.children,t))),n),[])}const fm=ee({__name:"AppHeader",setup(e){const t=Ce("navigation",[]),{header:n}=Ze();return(r,o)=>{var d;const s=BE,i=vg,a=HC,l=xg,u=rn,c=Xg,f=cA;return M(),re(f,null,Ai({logo:ie(()=>{var p,m,h,y,x;return[(m=(p=E(n))==null?void 0:p.logo)!=null&&m.dark||(y=(h=E(n))==null?void 0:h.logo)!=null&&y.light?(M(),re(s,Gs(ae({key:0},{class:"h-6 w-auto",...(x=E(n))==null?void 0:x.logo})),null,16)):(M(),se(Se,{key:1},[o[0]||(o[0]=st(" Nuxt UI Pro ")),Y(i,{label:"Docs",variant:"subtle",class:"mb-0.5"})],64))]}),right:ie(()=>{var p,m,h;return[(p=E(n))!=null&&p.search?(M(),re(a,{key:0,label:null,class:"lg:hidden"})):me("",!0),(m=E(n))!=null&&m.colorMode?(M(),re(l,{key:1})):me("",!0),(h=E(n))!=null&&h.links?(M(!0),se(Se,{key:2},Et(E(n).links,(y,x)=>(M(),re(u,ae({key:x,ref_for:!0},{color:"gray",variant:"ghost",...y}),null,16))),128)):me("",!0)]}),panel:ie(()=>[Y(c,{links:("mapContentNavigation"in r?r.mapContentNavigation:E(um))(E(t))},null,8,["links"])]),_:2},[(d=E(n))!=null&&d.search?{name:"center",fn:ie(()=>[Y(a,{class:"hidden lg:flex"})]),key:"0"}:void 0]),1024)}}}),hA=ee({props:{vnode:{type:Object,required:!0},route:{type:Object,required:!0},vnodeRef:Object,renderKey:String,trackRootNodes:Boolean},setup(e){const t=e.renderKey,n=e.route,r={};for(const o in e.route)Object.defineProperty(r,o,{get:()=>t===e.renderKey?e.route[o]:n[o],enumerable:!0});return Be(so,kn(r)),()=>ve(e.vnode,{ref:e.vnodeRef})}}),gA=ee({name:"NuxtPage",inheritAttrs:!1,props:{name:{type:String},transition:{type:[Boolean,Object],default:void 0},keepalive:{type:[Boolean,Object],default:void 0},route:{type:Object},pageKey:{type:[Function,String],default:null}},setup(e,{attrs:t,slots:n,expose:r}){const o=_e(),s=H(),i=Ce(so,null);let a;r({pageRef:s});const l=Ce(Zp,null);let u;const c=o.deferHydration();if(o.isHydrating){const f=o.hooks.hookOnce("app:error",c);gt().beforeEach(f)}return e.pageKey&&$e(()=>e.pageKey,(f,d)=>{f!==d&&o.callHook("page:loading:start")}),()=>ve(Lh,{name:e.name,route:e.route,...t},{default:f=>{const d=vA(i,f.route,f.Component),p=i&&i.matched.length===f.route.matched.length;if(!f.Component){if(u&&!p)return u;c();return}if(u&&l&&!l.isCurrent(f.route))return u;if(d&&i&&(!l||l!=null&&l.isCurrent(i)))return p?u:null;const m=ul(f,e.pageKey);!o.isHydrating&&!yA(i,f.route,f.Component)&&a===m&&o.callHook("page:loading:end"),a=m;const h=!!(e.transition??f.route.meta.pageTransition??Ya),y=h&&mA([e.transition,f.route.meta.pageTransition,Ya,{onAfterLeave:()=>{o.callHook("page:transition:finish",f.Component)}}].filter(Boolean)),x=e.keepalive??f.route.meta.keepalive??tb;return u=Mh(Gr,h&&y,e1(x,ve(Jl,{suspensible:!0,onPending:()=>o.callHook("page:start",f.Component),onResolve:()=>{er(()=>o.callHook("page:finish",f.Component).then(()=>o.callHook("page:loading:end")).finally(c))}},{default:()=>{const b=ve(hA,{key:m||void 0,vnode:n.default?ve(Se,void 0,n.default(f)):f.Component,route:f.route,renderKey:m||void 0,trackRootNodes:h,vnodeRef:s});return x&&(b.type.name=f.Component.type.name||f.Component.type.__name||"RouteProvider"),b}}))).default(),u}})}});function mA(e){const t=e.map(n=>({...n,onAfterLeave:n.onAfterLeave?lc(n.onAfterLeave):void 0}));return Li(...t)}function vA(e,t,n){if(!e)return!1;const r=t.matched.findIndex(o=>{var s;return((s=o.components)==null?void 0:s.default)===(n==null?void 0:n.type)});return!r||r===-1?!1:t.matched.slice(0,r).some((o,s)=>{var i,a,l;return((i=o.components)==null?void 0:i.default)!==((l=(a=e.matched[s])==null?void 0:a.components)==null?void 0:l.default)})||n&&ul({route:t,Component:n})!==ul({route:e,Component:n})}function yA(e,t,n){return e?t.matched.findIndex(o=>{var s;return((s=o.components)==null?void 0:s.default)===(n==null?void 0:n.type)})<t.matched.length-1:!1}const bA=ee({name:"LayoutLoader",inheritAttrs:!1,props:{name:String,layoutProps:Object},async setup(e,t){const n=await Bn[e.name]().then(r=>r.default||r);return()=>ve(n,e.layoutProps,t.slots)}}),wA=ee({name:"NuxtLayout",inheritAttrs:!1,props:{name:{type:[String,Boolean,Object],default:null},fallback:{type:[String,Object],default:null}},setup(e,t){const n=_e(),r=Ce(so),o=r===En()?Y_():r,s=$(()=>{let l=E(e.name)??o.meta.layout??"default";return l&&!(l in Bn)&&e.fallback&&(l=E(e.fallback)),l}),i=H();t.expose({layoutRef:i});const a=n.deferHydration();if(n.isHydrating){const l=n.hooks.hookOnce("app:error",a);gt().beforeEach(l)}return()=>{const l=s.value&&s.value in Bn,u=o.meta.layoutTransition??eb;return Mh(Gr,l&&u,{default:()=>ve(Jl,{suspensible:!0,onResolve:()=>{er(a)}},{default:()=>ve(_A,{layoutProps:ae(t.attrs,{ref:i}),key:s.value||void 0,name:s.value,shouldProvide:!e.name,hasTransition:!!u},t.slots)})}).default()}}}),_A=ee({name:"NuxtLayoutProvider",inheritAttrs:!1,props:{name:{type:[String,Boolean]},layoutProps:{type:Object},hasTransition:{type:Boolean},shouldProvide:{type:Boolean}},setup(e,t){const n=e.name;return e.shouldProvide&&Be(Zp,{isCurrent:r=>n===(r.meta.layout??"default")}),()=>{var r,o;return!n||typeof n=="string"&&!(n in Bn)?(o=(r=t.slots).default)==null?void 0:o.call(r):ve(bA,{key:n,layoutProps:e.layoutProps,name:n},t.slots)}}}),dm=ee({inheritAttrs:!1,__name:"Main",props:{class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t={wrapper:"min-h-[calc(100vh-var(--header-height))]"},n=e,{ui:r,attrs:o}=Qe("main",xe(n,"ui"),t,xe(n,"class"),!0);return(s,i)=>(M(),se("main",ae({class:E(r).wrapper},E(o)),[be(s.$slots,"default")],16))}}),xA=ee({inheritAttrs:!1,__name:"FooterLinks",props:{links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t=Ze(),n=$(()=>({wrapper:"flex flex-col md:flex-row items-center justify-center gap-4 lg:gap-6",base:"text-sm",active:"text-gray-900 dark:text-white font-medium",inactive:"text-gray-500 dark:text-gray-400 hover:text-gray-600 dark:hover:text-gray-300",externalIcon:{name:t.ui.icons.external,base:"w-3 h-3 absolute top-0.5 -right-3.5 text-gray-400 dark:text-gray-500"}})),r=e,{ui:o,attrs:s}=Qe("footer.links",xe(r,"ui"),n,xe(r,"class"),!0);return(i,a)=>{var c;const l=wt,u=tr;return(c=e.links)!=null&&c.length?(M(),se("ul",ae({key:0,class:E(o).wrapper},E(s)),[(M(!0),se(Se,null,Et(e.links,(f,d)=>(M(),se("li",{key:d,class:"relative"},[Y(u,ae({ref_for:!0},E(Xr)(f),{class:E(o).base,"active-class":E(o).active,"inactive-class":E(o).inactive,onClick:f.click}),{default:ie(()=>[st(Fe(f.label)+" ",1),f.target==="_blank"?(M(),re(l,{key:0,name:E(o).externalIcon.name,class:W(E(o).externalIcon.base)},null,8,["name","class"])):me("",!0)]),_:2},1040,["class","active-class","inactive-class","onClick"])]))),128))],16)):me("",!0)}}}),kA=ee({inheritAttrs:!1,__name:"Footer",props:{links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t={wrapper:"relative",top:{wrapper:"",container:"py-8 lg:py-12"},bottom:{wrapper:"",container:"py-8 lg:py-4 lg:flex lg:items-center lg:justify-between lg:gap-x-3",left:"flex items-center justify-center lg:justify-start lg:flex-1 gap-x-1.5 mt-3 lg:mt-0 lg:order-1",center:"mt-3 lg:mt-0 lg:order-2 flex items-center justify-center",right:"lg:flex-1 flex items-center justify-center lg:justify-end gap-x-1.5 lg:order-3"}},n=e,{ui:r,attrs:o}=Qe("footer",xe(n,"ui"),t,xe(n,"class"),!0);return(s,i)=>{const a=Dc,l=xA;return M(),se("footer",ae({class:E(r).wrapper},E(o)),[s.$slots.top?(M(),se("div",{key:0,class:W(E(r).top.wrapper)},[Y(a,{class:W(E(r).top.container)},{default:ie(()=>[be(s.$slots,"top")]),_:3},8,["class"])],2)):me("",!0),Ae("div",{class:W(E(r).bottom.wrapper)},[Y(a,{class:W(E(r).bottom.container)},{default:ie(()=>[Ae("div",{class:W(E(r).bottom.right)},[be(s.$slots,"right")],2),Ae("div",{class:W(E(r).bottom.center)},[be(s.$slots,"center",{},()=>[Y(l,{links:e.links},null,8,["links"])])],2),Ae("div",{class:W(E(r).bottom.left)},[be(s.$slots,"left")],2)]),_:3},8,["class"])],2)],16)}}}),pm=ee({__name:"AppFooter",setup(e){const{footer:t}=Ze();return(n,r)=>{const o=xg,s=rn,i=kA;return M(),re(i,null,{left:ie(()=>[st(Fe(E(t).credits),1)]),right:ie(()=>{var a,l,u;return[(a=E(t))!=null&&a.colorMode?(M(),re(o,{key:0})):me("",!0),(l=E(t))!=null&&l.links?(M(!0),se(Se,{key:1},Et((u=E(t))==null?void 0:u.links,(c,f)=>(M(),re(s,ae({key:f,ref_for:!0},{color:"gray",variant:"ghost",...c}),null,16))),128)):me("",!0)]}),_:1})}}}),cr=tn(We.ui.strategy,We.ui.avatar,UE),SA=ee({components:{UIcon:wt},inheritAttrs:!1,props:{as:{type:[String,Object],default:"img"},src:{type:[String,Boolean],default:null},alt:{type:String,default:null},text:{type:String,default:null},icon:{type:String,default:()=>cr.default.icon},size:{type:String,default:()=>cr.default.size,validator(e){return Object.keys(cr.size).includes(e)}},chipColor:{type:String,default:()=>cr.default.chipColor,validator(e){return["gray",...We.ui.colors].includes(e)}},chipPosition:{type:String,default:()=>cr.default.chipPosition,validator(e){return Object.keys(cr.chip.position).includes(e)}},chipText:{type:[String,Number],default:null},imgClass:{type:String,default:""},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(e){const{ui:t,attrs:n}=Qe("avatar",xe(e,"ui"),cr),r=$(()=>typeof e.src=="boolean"?null:e.src),o=$(()=>(e.alt||"").split(" ").map(f=>f.charAt(0)).join("").substring(0,2)),s=$(()=>Ft(ut(t.value.wrapper,(u.value||!r.value)&&t.value.background,t.value.rounded,t.value.size[e.size]),e.class)),i=$(()=>Ft(ut(t.value.rounded,t.value.size[e.size]),e.imgClass)),a=$(()=>ut(t.value.icon.base,t.value.icon.size[e.size])),l=$(()=>ut(t.value.chip.base,t.value.chip.size[e.size],t.value.chip.position[e.chipPosition],t.value.chip.background.replaceAll("{color}",e.chipColor))),u=H(!1);$e(()=>e.src,()=>{u.value&&(u.value=!1)});function c(){u.value=!0}return{ui:t,attrs:n,wrapperClass:s,imgClass:i,iconClass:a,chipClass:l,url:r,placeholder:o,error:u,onError:c}}});function EA(e,t,n,r,o,s){const i=wt;return M(),se("span",{class:W(e.wrapperClass)},[e.url&&!e.error?(M(),re(Wr(e.as),ae({key:0,class:e.imgClass,alt:e.alt,src:e.url},e.attrs,{onError:e.onError}),null,16,["class","alt","src","onError"])):e.text?(M(),se("span",{key:1,class:W(e.ui.text)},Fe(e.text),3)):e.icon?(M(),re(i,{key:2,name:e.icon,class:W(e.iconClass)},null,8,["name","class"])):e.placeholder?(M(),se("span",{key:3,class:W(e.ui.placeholder)},Fe(e.placeholder),3)):me("",!0),e.chipColor?(M(),se("span",{key:4,class:W(e.chipClass)},Fe(e.chipText),3)):me("",!0),be(e.$slots,"default")],2)}const hm=nn(SA,[["render",EA]]);function CA(e,t,n){let r=null;const{pause:o,resume:s,timestamp:i}=rk({controls:!0}),a=H(null),l=$(()=>a.value?t-(i.value-a.value):0);function u(...h){r=setTimeout(()=>{r=null,a.value=null,e(...h)},l.value)}function c(){r&&(clearTimeout(r),r=null)}function f(){a.value=Date.now(),u()}function d(){c(),o()}function p(){c(),o()}function m(){u(),s(),a.value=(a.value||0)+(Date.now()-i.value)}return f(),{start:f,stop:d,pause:p,resume:m,remaining:l}}const So=tn(We.ui.strategy,We.ui.notification,GE),PA=ee({components:{UIcon:wt,UAvatar:hm,UButton:rn},inheritAttrs:!1,props:{id:{type:[String,Number],required:!0},title:{type:String,default:null},description:{type:String,default:null},icon:{type:String,default:()=>So.default.icon},avatar:{type:Object,default:null},closeButton:{type:Object,default:()=>So.default.closeButton},timeout:{type:Number,default:()=>So.default.timeout},actions:{type:Array,default:()=>[]},callback:{type:Function,default:null},color:{type:String,default:()=>So.default.color,validator(e){return["gray",...We.ui.colors].includes(e)}},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},emits:["close"],setup(e,{emit:t}){const{ui:n,attrs:r}=Qe("notification",xe(e,"ui"),So);let o=null;const s=H(e.timeout),i=$(()=>{var h,y;return Ft(ut(n.value.wrapper,(h=n.value.background)==null?void 0:h.replaceAll("{color}",e.color),n.value.rounded,n.value.shadow,(y=n.value.ring)==null?void 0:y.replaceAll("{color}",e.color)),e.class)}),a=$(()=>{var h;return ut(n.value.progress.base,(h=n.value.progress.background)==null?void 0:h.replaceAll("{color}",e.color))}),l=$(()=>({width:`${s.value/e.timeout*100||0}%`})),u=$(()=>{var h;return ut(n.value.icon.base,(h=n.value.icon.color)==null?void 0:h.replaceAll("{color}",e.color))});function c(){o&&o.pause()}function f(){o&&o.resume()}function d(){o&&o.stop(),e.callback&&e.callback(),t("close")}function p(h){o&&o.stop(),h.click&&h.click(),t("close")}function m(){o&&o.stop(),e.timeout&&(o=CA(()=>{d()},e.timeout),Je(()=>{s.value=o.remaining.value}))}return $e(()=>e.timeout,m),Me(m),ot(()=>{o&&o.stop()}),{ui:n,attrs:r,wrapperClass:i,progressClass:a,progressStyle:l,iconClass:u,onMouseover:c,onMouseleave:f,onClose:d,onAction:p,twMerge:Ft}}});function TA(e,t,n,r,o,s){const i=wt,a=hm,l=rn;return M(),re(Gr,ae({appear:""},e.ui.transition),{default:ie(()=>[Ae("div",ae({class:e.wrapperClass,role:"status"},e.attrs,{onMouseover:t[0]||(t[0]=(...u)=>e.onMouseover&&e.onMouseover(...u)),onMouseleave:t[1]||(t[1]=(...u)=>e.onMouseleave&&e.onMouseleave(...u))}),[Ae("div",{class:W([e.ui.container,e.ui.rounded,e.ui.ring])},[Ae("div",{class:W(["flex",[e.ui.padding,e.ui.gap,{"items-start":e.description||e.$slots.description,"items-center":!e.description&&!e.$slots.description}]])},[e.icon?(M(),re(i,{key:0,name:e.icon,class:W(e.iconClass)},null,8,["name","class"])):me("",!0),e.avatar?(M(),re(a,ae({key:1},{size:e.ui.avatar.size,...e.avatar},{class:e.ui.avatar.base}),null,16,["class"])):me("",!0),Ae("div",{class:W(e.ui.inner)},[e.title||e.$slots.title?(M(),se("p",{key:0,class:W(e.ui.title)},[be(e.$slots,"title",{title:e.title},()=>[st(Fe(e.title),1)])],2)):me("",!0),e.description||e.$slots.description?(M(),se("div",{key:1,class:W(e.twMerge(e.ui.description,!e.title&&!e.$slots.title&&"mt-0 leading-5"))},[be(e.$slots,"description",{description:e.description},()=>[st(Fe(e.description),1)])],2)):me("",!0),(e.description||e.$slots.description)&&e.actions.length?(M(),se("div",{key:2,class:W(e.ui.actions)},[(M(!0),se(Se,null,Et(e.actions,(u,c)=>(M(),re(l,ae({key:c,ref_for:!0},{...e.ui.default.actionButton||{},...u},{onClick:ia(f=>e.onAction(u),["stop"])}),null,16,["onClick"]))),128))],2)):me("",!0)],2),e.closeButton||!e.description&&!e.$slots.description&&e.actions.length?(M(),se("div",{key:2,class:W(e.twMerge(e.ui.actions,"mt-0"))},[!e.description&&!e.$slots.description&&e.actions.length?(M(!0),se(Se,{key:0},Et(e.actions,(u,c)=>(M(),re(l,ae({key:c,ref_for:!0},{...e.ui.default.actionButton||{},...u},{onClick:ia(f=>e.onAction(u),["stop"])}),null,16,["onClick"]))),128)):me("",!0),e.closeButton?(M(),re(l,ae({key:1,"aria-label":"Close"},{...e.ui.default.closeButton||{},...e.closeButton},{onClick:ia(e.onClose,["stop"])}),null,16,["onClick"])):me("",!0)],2)):me("",!0)],2),e.timeout?(M(),se("div",{key:0,class:W(e.progressClass),style:ro(e.progressStyle)},null,6)):me("",!0)],2)],16)]),_:3},16)}const gm=nn(PA,[["render",TA]]);function AA(){const e=io("notifications",()=>[]);function t(s){const i={id:new Date().getTime().toString(),...s};return e.value.findIndex(l=>l.id===i.id)===-1&&e.value.push(i),i}function n(s){e.value=e.value.filter(i=>i.id!==s)}function r(s,i){const a=e.value.findIndex(l=>l.id===s);if(a!==-1){const l=e.value[a];e.value.splice(a,1,{...l,...i})}}function o(){e.value=[]}return{add:t,remove:n,update:r,clear:o}}const OA=tn(We.ui.strategy,We.ui.notifications,YE),$A=ee({components:{UNotification:gm},inheritAttrs:!1,props:{class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(e){const{ui:t,attrs:n}=Qe("notifications",xe(e,"ui"),OA),r=AA(),o=io("notifications",()=>[]),s=$(()=>Ft(ut(t.value.wrapper,t.value.position,t.value.width),e.class));return{ui:t,attrs:n,toast:r,notifications:o,wrapperClass:s}}});function RA(e,t,n,r,o,s){const i=gm;return M(),re(Id,{to:"body"},[Ae("div",ae({class:e.wrapperClass,role:"region"},e.attrs),[e.notifications.length?(M(),se("div",{key:0,class:W(e.ui.container)},[(M(!0),se(Se,null,Et(e.notifications,a=>(M(),se("div",{key:a.id},[Y(i,ae({ref_for:!0},a,{class:a.click&&"cursor-pointer",onClick:l=>a.click&&a.click(a),onClose:l=>e.toast.remove(a.id)}),Ai({_:2},[Et(e.$slots,(l,u)=>({name:u,fn:ie(c=>[be(e.$slots,u,ae({ref_for:!0},c))])}))]),1040,["class","onClick","onClose"])]))),128))],2)):me("",!0)],16)])}const mm=nn($A,[["render",RA]]);function Hc(e){return JSON.stringify(e,IA)}function IA(e,t){return t instanceof RegExp?`--REGEX ${t.toString()}`:t}const vm=e=>{let t=Hc(e);return t=typeof Buffer<"u"?Buffer.from(t).toString("base64"):btoa(t),t=t.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,""),(t.match(/.{1,100}/g)||[]).join("/")},Fc=()=>({isEnabled:()=>{const r=En().query;return Object.prototype.hasOwnProperty.call(r,"preview")&&!r.preview?!1:!!(r.preview||zs("previewToken").value||sessionStorage.getItem("previewToken"))},getPreviewToken:()=>zs("previewToken").value||sessionStorage.getItem("previewToken")||void 0,setPreviewToken:r=>{zs("previewToken").value=r,En().query.preview=r||"",r?sessionStorage.setItem("previewToken",r):sessionStorage.removeItem("previewToken"),window.location.reload()}}),wi=e=>jp(e,zt().public.content.api.baseURL),iO=()=>{throw console.warn("useContent is only accessible when you are using `documentDriven` mode."),console.warn("Learn more by visiting: https://content.nuxt.com/document-driven"),new Error("useContent is only accessible when you are using `documentDriven` mode.")},ym=()=>{const{experimental:e}=zt().public.content;return e.clientDB?!0:Fc().isEnabled()},Xf=(e,t)=>t.split(".").reduce((n,r)=>n&&n[r],e),Bc=(e,t)=>Object.keys(e).filter(t).reduce((n,r)=>Object.assign(n,{[r]:e[r]}),{}),aO=e=>t=>e&&e.length?Bc(t,n=>!e.includes(n)):t,lO=e=>t=>Array.isArray(t)?t.map(n=>e(n)):e(t),bm=e=>{const t=[],n=[];for(const r of e)["$","_"].includes(r)?t.push(r):n.push(r);return{prefixes:t,properties:n}},cO=(e=[])=>t=>{if(e.length===0||!t)return t;const{prefixes:n,properties:r}=bm(e);return Bc(t,o=>!r.includes(o)&&!n.includes(o[0]))},uO=(e=[])=>t=>{if(e.length===0||!t)return t;const{prefixes:n,properties:r}=bm(e);return Bc(t,o=>r.includes(o)||n.includes(o[0]))},fO=(e,t)=>{const n=new Intl.Collator(t.$locale,{numeric:t.$numeric,caseFirst:t.$caseFirst,sensitivity:t.$sensitivity}),r=Object.keys(t).filter(o=>!o.startsWith("$"));for(const o of r)e=e.sort((s,i)=>{const a=[Xf(s,o),Xf(i,o)].map(l=>{if(l!==null)return l instanceof Date?l.toISOString():l});return t[o]===-1&&a.reverse(),n.compare(a[0],a[1])});return e},dO=(e,t="Expected an array")=>{if(!Array.isArray(e))throw new TypeError(t)},bn=e=>Array.isArray(e)?e:[void 0,null].includes(e)?[]:[e],LA=["sort","where","only","without"];function MA(e,t={}){const n={};for(const i of Object.keys(t.initialParams||{}))n[i]=LA.includes(i)?bn(t.initialParams[i]):t.initialParams[i];const r=(i,a=l=>l)=>(...l)=>(n[i]=a(...l),s),o=i=>{var a;return t.legacy?i!=null&&i.surround?i.surround:i&&(i!=null&&i.dirConfig&&(i.result={_path:(a=i.dirConfig)==null?void 0:a._path,...i.result,_dir:i.dirConfig}),i!=null&&i._path||Array.isArray(i)||!Object.prototype.hasOwnProperty.call(i,"result")?i:i==null?void 0:i.result):i},s={params:()=>({...n,...n.where?{where:[...bn(n.where)]}:{},...n.sort?{sort:[...bn(n.sort)]}:{}}),only:r("only",bn),without:r("without",bn),where:r("where",i=>[...bn(n.where),...bn(i)]),sort:r("sort",i=>[...bn(n.sort),...bn(i)]),limit:r("limit",i=>parseInt(String(i),10)),skip:r("skip",i=>parseInt(String(i),10)),find:()=>e(s).then(o),findOne:()=>e(r("first")(!0)).then(o),count:()=>e(r("count")(!0)).then(o),locale:i=>s.where({_locale:i}),withSurround:r("surround",(i,a)=>({query:i,...a})),withDirConfig:()=>r("dirConfig")(!0)};return t.legacy&&(s.findSurround=(i,a)=>s.withSurround(i,a).find().then(o)),s}const jA=()=>async e=>{const{content:t}=zt().public,n=e.params(),r=t.experimental.stripQueryParameters?wi(`/query/${`${Ko(n)}.${t.integrity}`}/${vm(n)}.json`):wi(`/query/${Ko(n)}.${t.integrity}.json`);if(ym())return(await oe(()=>import("./CXLurpFu.js"),__vite__mapDeps([30,6]),import.meta.url).then(i=>i.useContentDatabase())).fetch(e);const o=await $fetch(r,{method:"GET",responseType:"json",params:t.experimental.stripQueryParameters?void 0:{_params:Hc(n),previewToken:Fc().getPreviewToken()}});if(typeof o=="string"&&o.startsWith("<!DOCTYPE html>"))throw new Error("Not found");return o};function DA(e,...t){const{content:n}=zt().public,r=MA(jA(),{initialParams:typeof e!="string"?e:{},legacy:!0});let o;typeof e=="string"&&(o=qa(ls(e,...t)));const s=r.params;return r.params=()=>{var a,l,u;const i=s();return o&&(i.where=i.where||[],i.first&&(i.where||[]).length===0?i.where.push({_path:as(o)}):i.where.push({_path:new RegExp(`^${o.replace(/[-[\]{}()*+.,^$\s/]/g,"\\$&")}`)})),(a=i.sort)!=null&&a.length||(i.sort=[{_stem:1,$numeric:!0}]),n.locales.length&&((u=(l=i.where)==null?void 0:l.find(f=>f._locale))!=null&&u._locale||(i.where=i.where||[],i.where.push({_locale:n.defaultLocale}))),i},r}const wm=async e=>{const{content:t}=zt().public;typeof(e==null?void 0:e.params)!="function"&&(e=DA(e));const n=e.params(),r=t.experimental.stripQueryParameters?wi(`/navigation/${`${Ko(n)}.${t.integrity}`}/${vm(n)}.json`):wi(`/navigation/${Ko(n)}.${t.integrity}.json`);if(ym())return(await oe(()=>import("./CXLurpFu.js"),__vite__mapDeps([30,6]),import.meta.url).then(i=>i.generateNavigation))(n);const o=await $fetch(r,{method:"GET",responseType:"json",params:t.experimental.stripQueryParameters?void 0:{_params:Hc(n),previewToken:Fc().getPreviewToken()}});if(typeof o=="string"&&o.startsWith("<!DOCTYPE html>"))throw new Error("Not found");return o},NA=ue(()=>oe(()=>import("./C58JAWZH.js"),__vite__mapDeps([31,32]),import.meta.url).then(e=>e.default||e)),HA=ee({__name:"app",async setup(e){let t,n;const{seo:r}=Ze(),{data:o}=([t,n]=Xd(()=>cc("navigation",()=>wm())),t=await t,n(),t),{data:s}=jh("/api/search.json",{default:()=>[],server:!1},"$oieNZtZfvS");return us({meta:[{name:"viewport",content:"width=device-width, initial-scale=1"}],link:[{rel:"icon",href:"/favicon.ico"}],htmlAttrs:{lang:"en"}}),mh({titleTemplate:`%s - ${r==null?void 0:r.siteName}`,ogSiteName:r==null?void 0:r.siteName,ogImage:"https://docs-template.nuxt.dev/social-card.png",twitterImage:"https://docs-template.nuxt.dev/social-card.png",twitterCard:"summary_large_image"}),Be("navigation",o),(i,a)=>{const l=FE,u=fm,c=gA,f=wA,d=dm,p=pm,m=NA,h=yc,y=mm;return M(),se("div",null,[Y(l),Y(u),Y(d,null,{default:ie(()=>[Y(f,null,{default:ie(()=>[Y(c)]),_:1})]),_:1}),Y(p),Y(h,null,{default:ie(()=>[Y(m,{files:E(s),navigation:E(o)},null,8,["files","navigation"])]),_:1}),Y(y)])}}}),FA=ee({inheritAttrs:!1,__name:"PageError",props:{error:{type:Object,default:void 0},status:{type:Number,default:404},name:{type:String,default:"An error occurred"},message:{type:String,default:"This is not the page you're looking for."},clearButton:{type:Object,default:()=>({})},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t={wrapper:"min-h-[calc(100vh-var(--header-height))] flex flex-col items-center justify-center",status:"text-base font-semibold text-primary",name:"text-3xl font-bold tracking-tight text-gray-900 dark:text-white sm:text-5xl",message:"mt-6 text-base/7 text-gray-500 dark:text-gray-400 text-center",links:"mt-10 flex items-center justify-center gap-x-6",default:{clearButton:{label:"Go back home",color:"primary",size:"lg"}}},n=e,{ui:r,attrs:o}=Qe("page.error",xe(n,"ui"),t,xe(n,"class"),!0),s=()=>th({redirect:"/"});return(i,a)=>{var u,c,f,d;const l=rn;return M(),se("div",ae({class:E(r).wrapper},E(o)),[Ae("p",{class:W(E(r).status)},Fe(((u=e.error)==null?void 0:u.statusCode)||e.status),3),Ae("h1",{class:W(E(r).name)},Fe(((c=e.error)==null?void 0:c.name)||((f=e.error)==null?void 0:f.statusMessage)||e.name),3),Ae("p",{class:W(E(r).message)},Fe((d=e.error)!=null&&d.message&&e.error.message!==(e.error.name||e.error.statusMessage||e.name)?e.error.message:e.message),3),Ae("div",{class:W(E(r).links)},[Y(l,ae({...E(r).default.clearButton,...e.clearButton},{onClick:s}),null,16)],2)],16)}}}),BA=ee({inheritAttrs:!1,__name:"Page",props:{class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(e){const t={wrapper:"flex flex-col lg:grid lg:grid-cols-10 lg:gap-8",left:"lg:col-span-2",center:{narrow:"lg:col-span-6",base:"lg:col-span-8",full:"lg:col-span-10"},right:"lg:col-span-2 order-first lg:order-last"},n=e,r=Yd(),{ui:o,attrs:s}=Qe("page",xe(n,"ui"),t,xe(n,"class"),!0),i=$(()=>r.left&&r.right?o.value.center.narrow:r.left||r.right?o.value.center.base:o.value.center.full);return(a,l)=>(M(),se("div",ae({class:E(o).wrapper},E(s)),[a.$slots.left?(M(),se("div",{key:0,class:W(E(o).left)},[be(a.$slots,"left")],2)):me("",!0),Ae("div",{class:W(E(i))},[be(a.$slots,"default")],2),a.$slots.right?(M(),se("div",{key:1,class:W(E(o).right)},[be(a.$slots,"right")],2)):me("",!0)],16))}}),UA=ue(()=>oe(()=>import("./C58JAWZH.js"),__vite__mapDeps([31,32]),import.meta.url).then(e=>e.default||e)),zA=ee({__name:"error",props:{error:{type:Object,required:!0}},async setup(e){let t,n;us({htmlAttrs:{lang:"en"}}),mh({title:"Page not found",description:"We are sorry but this page could not be found."});const{data:r}=([t,n]=Xd(()=>cc("navigation",()=>wm())),t=await t,n(),t),{data:o}=jh("/api/search.json",{default:()=>[],server:!1},"$WyDDCPVa65");return Be("navigation",r),(s,i)=>{const a=fm,l=FA,u=BA,c=Dc,f=dm,d=pm,p=UA,m=yc,h=mm;return M(),se("div",null,[Y(a),Y(f,null,{default:ie(()=>[Y(c,null,{default:ie(()=>[Y(u,null,{default:ie(()=>[Y(l,{error:e.error},null,8,["error"])]),_:1})]),_:1})]),_:1}),Y(d),Y(m,null,{default:ie(()=>[Y(p,{files:E(o),navigation:E(r)},null,8,["files","navigation"])]),_:1}),Y(h)])}}}),VA={key:0},Jf={__name:"nuxt-root",setup(e){const t=()=>null,n=_e(),r=n.deferHydration();if(n.isHydrating){const l=n.hooks.hookOnce("app:error",r);gt().beforeEach(l)}const o=!1;Be(so,En()),n.hooks.callHookWith(l=>l.map(u=>u()),"vue:setup");const s=Mi(),i=!1;Vd((l,u,c)=>{if(n.hooks.callHook("vue:error",l,u,c).catch(f=>console.error("[nuxt] Error in `vue:error` hook",f)),zb(l)&&(l.fatal||l.unhandled))return n.runWithContext(()=>jr(l)),!1});const a=!1;return(l,u)=>(M(),re(Jl,{onResolve:E(r)},{default:ie(()=>[E(i)?(M(),se("div",VA)):E(s)?(M(),re(E(zA),{key:1,error:E(s)},null,8,["error"])):E(a)?(M(),re(E(t),{key:2,context:E(a)},null,8,["context"])):E(o)?(M(),re(Wr(E(o)),{key:3})):(M(),re(E(HA),{key:4}))]),_:1},8,["onResolve"]))}};let Zf;{let e;Zf=async function(){var i,a;if(e)return e;const r=!!(((i=window.__NUXT__)==null?void 0:i.serverRendered)??((a=document.getElementById("__NUXT_DATA__"))==null?void 0:a.dataset.ssr)==="true")?Qy(Jf):Yy(Jf),o=lb({vueApp:r});async function s(l){await o.callHook("app:error",l),o.payload.error=o.payload.error||cs(l)}r.config.errorHandler=s,o.hook("app:suspense:resolve",()=>{r.config.errorHandler===s&&(r.config.errorHandler=void 0)});try{await fb(o,jE)}catch(l){s(l)}try{await o.hooks.callHook("app:created",r),await o.hooks.callHook("app:beforeMount",r),r.mount(sb),await o.hooks.callHook("app:mounted",r),await er()}catch(l){s(l)}return r},e=Zf().catch(t=>{throw console.error("Error while mounting app:",t),t})}export{Qn as $,Te as A,$ as B,E as C,Qt as D,$e as E,Se as F,WA as G,_r as H,ps as I,Je as J,On as K,lt as L,Bt as M,J as N,Pg as O,Be as P,xc as Q,Ge as R,ve as S,Gr as T,Jr as U,nO as V,Er as W,_t as X,$g as Y,un as Z,oe as _,gt as a,eO as a$,gs as a0,Ce as a1,dn as a2,QC as a3,kt as a4,er as a5,dr as a6,JC as a7,Ht as a8,wt as a9,Un as aA,_g as aB,JA as aC,BC as aD,pA as aE,Gs as aF,oi as aG,Ye as aH,XA as aI,Nh as aJ,Ft as aK,Xr as aL,tr as aM,Kl as aN,is as aO,ia as aP,Xd as aQ,cs as aR,mh as aS,cc as aT,sO as aU,BA as aV,as as aW,oO as aX,Ko as aY,Dc as aZ,Hh as a_,hm as aa,eC as ab,wc as ac,Pi as ad,qn as ae,Et as af,re as ag,be as ah,ae as ai,ro as aj,tn as ak,We as al,rn as am,Qe as an,xe as ao,Li as ap,YA as aq,ut as ar,dv as as,Oy as at,Ai as au,kP as av,SP as aw,Qg as ax,BP as ay,DC as az,ot as b,Tr as b0,QA as b1,mi as b2,Fi as b3,KA as b4,$s as b5,Yd as b6,Bk as b7,Il as b8,vg as b9,Xg as bA,Xf as bB,dO as bC,bn as bD,aO as bE,fO as bF,lO as bG,cO as bH,uO as bI,MA as bJ,jp as bK,Wr as ba,TP as bb,AP as bc,PP as bd,Pv as be,us as bf,ci as bg,qA as bh,wm as bi,Fc as bj,Ut as bk,rO as bl,vr as bm,tt as bn,qo as bo,ZA as bp,AA as bq,An as br,qa as bs,ls as bt,S0 as bu,c0 as bv,GA as bw,Rv as bx,lA as by,um as bz,M as c,ee as d,se as e,Ae as f,st as g,me as h,Y as i,zs as j,nn as k,tc as l,io as m,W as n,Me as o,zt as p,DA as q,H as r,En as s,Fe as t,_e as u,Ru as v,ie as w,Ze as x,Yy as y,iO as z}; diff --git a/_nuxt/bB7ibIIp.js b/_nuxt/bB7ibIIp.js new file mode 100644 index 0000000..a3474af --- /dev/null +++ b/_nuxt/bB7ibIIp.js @@ -0,0 +1 @@ +import{k as o,c as t,e as c,ah as r}from"./WKNqgS7_.js";const s={};function n(e,a){return t(),c("blockquote",null,[r(e.$slots,"default")])}const f=o(s,[["render",n]]);export{f as default}; diff --git a/_nuxt/bNaE6FFb.js b/_nuxt/bNaE6FFb.js new file mode 100644 index 0000000..73ac4c9 --- /dev/null +++ b/_nuxt/bNaE6FFb.js @@ -0,0 +1 @@ +let e;function i(){return e||(e=Promise.all([])),e}export{i as getMdcConfigs}; diff --git a/_nuxt/builds/latest.json b/_nuxt/builds/latest.json new file mode 100644 index 0000000..96cd1b5 --- /dev/null +++ b/_nuxt/builds/latest.json @@ -0,0 +1 @@ +{"id":"90892267-6f19-48d5-ab68-ecdb994d2b51","timestamp":1741786528167} \ No newline at end of file diff --git a/_nuxt/builds/meta/90892267-6f19-48d5-ab68-ecdb994d2b51.json b/_nuxt/builds/meta/90892267-6f19-48d5-ab68-ecdb994d2b51.json new file mode 100644 index 0000000..ace0e56 --- /dev/null +++ b/_nuxt/builds/meta/90892267-6f19-48d5-ab68-ecdb994d2b51.json @@ -0,0 +1 @@ +{"id":"90892267-6f19-48d5-ab68-ecdb994d2b51","timestamp":1741786528167,"matcher":{"static":{"/api/search.json":{"prerender":true}},"wildcard":{},"dynamic":{}},"prerendered":["/","/getting-started","/getting-started/code-of-conduct","/mobile-app/poc","/mobile-app/poc/code-generation","/mobile-app/poc/architecture","/mobile-app/onboarding/tech-stack","/web/guide","/mobile-app/thought-processses/architecture","/mobile-app/onboarding","/mobile-app/thought-processses/decoupling","/mobile-app/thought-processses/state-management","/mobile-app/thought-processses"]} \ No newline at end of file diff --git a/_nuxt/ce1gcSEv.js b/_nuxt/ce1gcSEv.js new file mode 100644 index 0000000..ce9b943 --- /dev/null +++ b/_nuxt/ce1gcSEv.js @@ -0,0 +1 @@ +const y=Object.create(null);y.open="0";y.close="1";y.ping="2";y.pong="3";y.message="4";y.upgrade="5";y.noop="6";const A=Object.create(null);Object.keys(y).forEach(i=>{A[y[i]]=i});const P={type:"error",data:"parser error"},Q=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",G=typeof ArrayBuffer=="function",j=i=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(i):i&&i.buffer instanceof ArrayBuffer,V=({type:i,data:e},t,s)=>Q&&e instanceof Blob?t?s(e):$(e,s):G&&(e instanceof ArrayBuffer||j(e))?t?s(e):$(new Blob([e]),s):s(y[i]+(e||"")),$=(i,e)=>{const t=new FileReader;return t.onload=function(){const s=t.result.split(",")[1];e("b"+(s||""))},t.readAsDataURL(i)};function Y(i){return i instanceof Uint8Array?i:i instanceof ArrayBuffer?new Uint8Array(i):new Uint8Array(i.buffer,i.byteOffset,i.byteLength)}let B;function ue(i,e){if(Q&&i.data instanceof Blob)return i.data.arrayBuffer().then(Y).then(e);if(G&&(i.data instanceof ArrayBuffer||j(i.data)))return e(Y(i.data));V(i,!1,t=>{B||(B=new TextEncoder),e(B.encode(t))})}const z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",E=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let i=0;i<z.length;i++)E[z.charCodeAt(i)]=i;const fe=i=>{let e=i.length*.75,t=i.length,s,n=0,r,o,c,h;i[i.length-1]==="="&&(e--,i[i.length-2]==="="&&e--);const g=new ArrayBuffer(e),f=new Uint8Array(g);for(s=0;s<t;s+=4)r=E[i.charCodeAt(s)],o=E[i.charCodeAt(s+1)],c=E[i.charCodeAt(s+2)],h=E[i.charCodeAt(s+3)],f[n++]=r<<2|o>>4,f[n++]=(o&15)<<4|c>>2,f[n++]=(c&3)<<6|h&63;return g},le=typeof ArrayBuffer=="function",M=(i,e)=>{if(typeof i!="string")return{type:"message",data:Z(i,e)};const t=i.charAt(0);return t==="b"?{type:"message",data:pe(i.substring(1),e)}:A[t]?i.length>1?{type:A[t],data:i.substring(1)}:{type:A[t]}:P},pe=(i,e)=>{if(le){const t=fe(i);return Z(t,e)}else return{base64:!0,data:i}},Z=(i,e)=>{switch(e){case"blob":return i instanceof Blob?i:new Blob([i]);case"arraybuffer":default:return i instanceof ArrayBuffer?i:i.buffer}},ee="",de=(i,e)=>{const t=i.length,s=new Array(t);let n=0;i.forEach((r,o)=>{V(r,!1,c=>{s[o]=c,++n===t&&e(s.join(ee))})})},ye=(i,e)=>{const t=i.split(ee),s=[];for(let n=0;n<t.length;n++){const r=M(t[n],e);if(s.push(r),r.type==="error")break}return s};function ge(){return new TransformStream({transform(i,e){ue(i,t=>{const s=t.length;let n;if(s<126)n=new Uint8Array(1),new DataView(n.buffer).setUint8(0,s);else if(s<65536){n=new Uint8Array(3);const r=new DataView(n.buffer);r.setUint8(0,126),r.setUint16(1,s)}else{n=new Uint8Array(9);const r=new DataView(n.buffer);r.setUint8(0,127),r.setBigUint64(1,BigInt(s))}i.data&&typeof i.data!="string"&&(n[0]|=128),e.enqueue(n),e.enqueue(t)})}})}let x;function k(i){return i.reduce((e,t)=>e+t.length,0)}function T(i,e){if(i[0].length===e)return i.shift();const t=new Uint8Array(e);let s=0;for(let n=0;n<e;n++)t[n]=i[0][s++],s===i[0].length&&(i.shift(),s=0);return i.length&&s<i[0].length&&(i[0]=i[0].slice(s)),t}function me(i,e){x||(x=new TextDecoder);const t=[];let s=0,n=-1,r=!1;return new TransformStream({transform(o,c){for(t.push(o);;){if(s===0){if(k(t)<1)break;const h=T(t,1);r=(h[0]&128)===128,n=h[0]&127,n<126?s=3:n===126?s=1:s=2}else if(s===1){if(k(t)<2)break;const h=T(t,2);n=new DataView(h.buffer,h.byteOffset,h.length).getUint16(0),s=3}else if(s===2){if(k(t)<8)break;const h=T(t,8),g=new DataView(h.buffer,h.byteOffset,h.length),f=g.getUint32(0);if(f>Math.pow(2,21)-1){c.enqueue(P);break}n=f*Math.pow(2,32)+g.getUint32(4),s=3}else{if(k(t)<n)break;const h=T(t,n);c.enqueue(M(r?h:x.decode(h),e)),s=0}if(n===0||n>i){c.enqueue(P);break}}}})}const te=4;function u(i){if(i)return _e(i)}function _e(i){for(var e in u.prototype)i[e]=u.prototype[e];return i}u.prototype.on=u.prototype.addEventListener=function(i,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+i]=this._callbacks["$"+i]||[]).push(e),this};u.prototype.once=function(i,e){function t(){this.off(i,t),e.apply(this,arguments)}return t.fn=e,this.on(i,t),this};u.prototype.off=u.prototype.removeListener=u.prototype.removeAllListeners=u.prototype.removeEventListener=function(i,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+i];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+i],this;for(var s,n=0;n<t.length;n++)if(s=t[n],s===e||s.fn===e){t.splice(n,1);break}return t.length===0&&delete this._callbacks["$"+i],this};u.prototype.emit=function(i){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),t=this._callbacks["$"+i],s=1;s<arguments.length;s++)e[s-1]=arguments[s];if(t){t=t.slice(0);for(var s=0,n=t.length;s<n;++s)t[s].apply(this,e)}return this};u.prototype.emitReserved=u.prototype.emit;u.prototype.listeners=function(i){return this._callbacks=this._callbacks||{},this._callbacks["$"+i]||[]};u.prototype.hasListeners=function(i){return!!this.listeners(i).length};const C=typeof Promise=="function"&&typeof Promise.resolve=="function"?e=>Promise.resolve().then(e):(e,t)=>t(e,0),l=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),be="arraybuffer";function se(i,...e){return e.reduce((t,s)=>(i.hasOwnProperty(s)&&(t[s]=i[s]),t),{})}const we=l.setTimeout,ve=l.clearTimeout;function S(i,e){e.useNativeTimers?(i.setTimeoutFn=we.bind(l),i.clearTimeoutFn=ve.bind(l)):(i.setTimeoutFn=l.setTimeout.bind(l),i.clearTimeoutFn=l.clearTimeout.bind(l))}const Ee=1.33;function ke(i){return typeof i=="string"?Te(i):Math.ceil((i.byteLength||i.size)*Ee)}function Te(i){let e=0,t=0;for(let s=0,n=i.length;s<n;s++)e=i.charCodeAt(s),e<128?t+=1:e<2048?t+=2:e<55296||e>=57344?t+=3:(s++,t+=4);return t}function ie(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function Ae(i){let e="";for(let t in i)i.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(i[t]));return e}function Re(i){let e={},t=i.split("&");for(let s=0,n=t.length;s<n;s++){let r=t[s].split("=");e[decodeURIComponent(r[0])]=decodeURIComponent(r[1])}return e}class Oe extends Error{constructor(e,t,s){super(e),this.description=t,this.context=s,this.type="TransportError"}}class H extends u{constructor(e){super(),this.writable=!1,S(this,e),this.opts=e,this.query=e.query,this.socket=e.socket,this.supportsBinary=!e.forceBase64}onError(e,t,s){return super.emitReserved("error",new Oe(e,t,s)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(e){this.readyState==="open"&&this.write(e)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(e){const t=M(e,this.socket.binaryType);this.onPacket(t)}onPacket(e){super.emitReserved("packet",e)}onClose(e){this.readyState="closed",super.emitReserved("close",e)}pause(e){}createUri(e,t={}){return e+"://"+this._hostname()+this._port()+this.opts.path+this._query(t)}_hostname(){const e=this.opts.hostname;return e.indexOf(":")===-1?e:"["+e+"]"}_port(){return this.opts.port&&(this.opts.secure&&+(this.opts.port!==443)||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(e){const t=Ae(e);return t.length?"?"+t:""}}class ne extends H{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(e){this.readyState="pausing";const t=()=>{this.readyState="paused",e()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||t()})),this.writable||(s++,this.once("drain",function(){--s||t()}))}else t()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};ye(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,de(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=ie()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let re=!1;try{re=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const Ce=re;function Se(){}class Be extends ne{constructor(e){if(super(e),typeof location<"u"){const t=location.protocol==="https:";let s=location.port;s||(s=t?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||s!==e.port}}doWrite(e,t){const s=this.request({method:"POST",data:e});s.on("success",t),s.on("error",(n,r)=>{this.onError("xhr post error",n,r)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,s)=>{this.onError("xhr poll error",t,s)}),this.pollXhr=e}}class d extends u{constructor(e,t,s){super(),this.createRequest=e,S(this,s),this._opts=s,this._method=s.method||"GET",this._uri=t,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var e;const t=se(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(t);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let n in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(n)&&s.setRequestHeader(n,this._opts.extraHeaders[n])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var n;s.readyState===3&&((n=this._opts.cookieJar)===null||n===void 0||n.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(n){this.setTimeoutFn(()=>{this._onError(n)},0);return}typeof document<"u"&&(this._index=d.requestsCount++,d.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=Se,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete d.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}d.requestsCount=0;d.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",J);else if(typeof addEventListener=="function"){const i="onpagehide"in l?"pagehide":"unload";addEventListener(i,J,!1)}}function J(){for(let i in d.requests)d.requests.hasOwnProperty(i)&&d.requests[i].abort()}const xe=function(){const i=oe({xdomain:!1});return i&&i.responseType!==null}();class Ne extends Be{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=xe&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new d(oe,this.uri(),e)}}function oe(i){const e=i.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||Ce))return new XMLHttpRequest}catch{}if(!e)try{return new l[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const ae=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class Le extends H{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,s=ae?{}:se(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,s)}catch(n){return this.emitReserved("error",n)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const s=e[t],n=t===e.length-1;V(s,this.supportsBinary,r=>{try{this.doWrite(s,r)}catch{}n&&C(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=ie()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const N=l.WebSocket||l.MozWebSocket;class Pe extends Le{createSocket(e,t,s){return ae?new N(e,t,s):t?new N(e,t):new N(e)}doWrite(e,t){this.ws.send(t)}}class qe extends H{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=me(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=e.readable.pipeThrough(t).getReader(),n=ge();n.readable.pipeTo(e.writable),this._writer=n.writable.getWriter();const r=()=>{s.read().then(({done:c,value:h})=>{c||(this.onPacket(h),r())}).catch(c=>{})};r();const o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this._writer.write(o).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t<e.length;t++){const s=e[t],n=t===e.length-1;this._writer.write(s).then(()=>{n&&C(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const De={websocket:Pe,webtransport:qe,polling:Ne},Ie=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,Ue=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function q(i){if(i.length>8e3)throw"URI too long";const e=i,t=i.indexOf("["),s=i.indexOf("]");t!=-1&&s!=-1&&(i=i.substring(0,t)+i.substring(t,s).replace(/:/g,";")+i.substring(s,i.length));let n=Ie.exec(i||""),r={},o=14;for(;o--;)r[Ue[o]]=n[o]||"";return t!=-1&&s!=-1&&(r.source=e,r.host=r.host.substring(1,r.host.length-1).replace(/;/g,":"),r.authority=r.authority.replace("[","").replace("]","").replace(/;/g,":"),r.ipv6uri=!0),r.pathNames=Fe(r,r.path),r.queryKey=Ve(r,r.query),r}function Fe(i,e){const t=/\/{2,9}/g,s=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&s.splice(0,1),e.slice(-1)=="/"&&s.splice(s.length-1,1),s}function Ve(i,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,n,r){n&&(t[n]=r)}),t}const D=typeof addEventListener=="function"&&typeof removeEventListener=="function",R=[];D&&addEventListener("offline",()=>{R.forEach(i=>i())},!1);class _ extends u{constructor(e,t){if(super(),this.binaryType=be,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(t=e,e=null),e){const s=q(e);t.hostname=s.host,t.secure=s.protocol==="https"||s.protocol==="wss",t.port=s.port,s.query&&(t.query=s.query)}else t.host&&(t.hostname=q(t.host).host);S(this,t),this.secure=t.secure!=null?t.secure:typeof location<"u"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=t.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(s=>{const n=s.prototype.name;this.transports.push(n),this._transportsByName[n]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=Re(this.opts.query)),D&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},R.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=te,t.transport=e,this.id&&(t.sid=this.id);const s=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&_.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",t=>this._onClose("transport close",t))}onOpen(){this.readyState="open",_.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let s=0;s<this.writeBuffer.length;s++){const n=this.writeBuffer[s].data;if(n&&(t+=ke(n)),s>0&&t>this._maxPayload)return this.writeBuffer.slice(0,s);t+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,C(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,s){return this._sendPacket("message",e,t,s),this}send(e,t,s){return this._sendPacket("message",e,t,s),this}_sendPacket(e,t,s,n){if(typeof t=="function"&&(n=t,t=void 0),typeof s=="function"&&(n=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const r={type:e,data:t,options:s};this.emitReserved("packetCreate",r),this.writeBuffer.push(r),n&&this.once("flush",n),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},s=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():e()}):this.upgrading?s():e()),this}_onError(e){if(_.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),D&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=R.indexOf(this._offlineEventListener);s!==-1&&R.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}_.protocol=te;class Me extends _{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e<this._upgrades.length;e++)this._probe(this._upgrades[e])}_probe(e){let t=this.createTransport(e),s=!1;_.priorWebsocketSuccess=!1;const n=()=>{s||(t.send([{type:"ping",data:"probe"}]),t.once("packet",m=>{if(!s)if(m.type==="pong"&&m.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;_.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(f(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const w=new Error("probe error");w.transport=t.name,this.emitReserved("upgradeError",w)}}))};function r(){s||(s=!0,f(),t.close(),t=null)}const o=m=>{const w=new Error("probe error: "+m);w.transport=t.name,r(),this.emitReserved("upgradeError",w)};function c(){o("transport closed")}function h(){o("socket closed")}function g(m){t&&m.name!==t.name&&r()}const f=()=>{t.removeListener("open",n),t.removeListener("error",o),t.removeListener("close",c),this.off("close",h),this.off("upgrading",g)};t.once("open",n),t.once("error",o),t.once("close",c),this.once("close",h),this.once("upgrading",g),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{s||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let s=0;s<e.length;s++)~this.transports.indexOf(e[s])&&t.push(e[s]);return t}}let He=class extends Me{constructor(e,t={}){const s=typeof e=="object"?e:t;(!s.transports||s.transports&&typeof s.transports[0]=="string")&&(s.transports=(s.transports||["polling","websocket","webtransport"]).map(n=>De[n]).filter(n=>!!n)),super(e,s)}};class it extends ne{doPoll(){this._fetch().then(e=>{if(!e.ok)return this.onError("fetch read error",e.status,e);e.text().then(t=>this.onData(t))}).catch(e=>{this.onError("fetch read error",e)})}doWrite(e,t){this._fetch(e).then(s=>{if(!s.ok)return this.onError("fetch write error",s.status,s);t()}).catch(s=>{this.onError("fetch write error",s)})}_fetch(e){var t;const s=e!==void 0,n=new Headers(this.opts.extraHeaders);return s&&n.set("content-type","text/plain;charset=UTF-8"),(t=this.socket._cookieJar)===null||t===void 0||t.appendCookies(n),fetch(this.uri(),{method:s?"POST":"GET",body:s?e:null,headers:n,credentials:this.opts.withCredentials?"include":"omit"}).then(r=>{var o;return(o=this.socket._cookieJar)===null||o===void 0||o.parseCookies(r.headers.getSetCookie()),r})}}function We(i,e="",t){let s=i;t=t||typeof location<"u"&&location,i==null&&(i=t.protocol+"//"+t.host),typeof i=="string"&&(i.charAt(0)==="/"&&(i.charAt(1)==="/"?i=t.protocol+i:i=t.host+i),/^(https?|wss?):\/\//.test(i)||(typeof t<"u"?i=t.protocol+"//"+i:i="https://"+i),s=q(i)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const r=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+r+":"+s.port+e,s.href=s.protocol+"://"+r+(t&&t.port===s.port?"":":"+s.port),s}const Ke=typeof ArrayBuffer=="function",$e=i=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(i):i.buffer instanceof ArrayBuffer,ce=Object.prototype.toString,Ye=typeof Blob=="function"||typeof Blob<"u"&&ce.call(Blob)==="[object BlobConstructor]",ze=typeof File=="function"||typeof File<"u"&&ce.call(File)==="[object FileConstructor]";function W(i){return Ke&&(i instanceof ArrayBuffer||$e(i))||Ye&&i instanceof Blob||ze&&i instanceof File}function O(i,e){if(!i||typeof i!="object")return!1;if(Array.isArray(i)){for(let t=0,s=i.length;t<s;t++)if(O(i[t]))return!0;return!1}if(W(i))return!0;if(i.toJSON&&typeof i.toJSON=="function"&&arguments.length===1)return O(i.toJSON(),!0);for(const t in i)if(Object.prototype.hasOwnProperty.call(i,t)&&O(i[t]))return!0;return!1}function Je(i){const e=[],t=i.data,s=i;return s.data=I(t,e),s.attachments=e.length,{packet:s,buffers:e}}function I(i,e){if(!i)return i;if(W(i)){const t={_placeholder:!0,num:e.length};return e.push(i),t}else if(Array.isArray(i)){const t=new Array(i.length);for(let s=0;s<i.length;s++)t[s]=I(i[s],e);return t}else if(typeof i=="object"&&!(i instanceof Date)){const t={};for(const s in i)Object.prototype.hasOwnProperty.call(i,s)&&(t[s]=I(i[s],e));return t}return i}function Xe(i,e){return i.data=U(i.data,e),delete i.attachments,i}function U(i,e){if(!i)return i;if(i&&i._placeholder===!0){if(typeof i.num=="number"&&i.num>=0&&i.num<e.length)return e[i.num];throw new Error("illegal attachments")}else if(Array.isArray(i))for(let t=0;t<i.length;t++)i[t]=U(i[t],e);else if(typeof i=="object")for(const t in i)Object.prototype.hasOwnProperty.call(i,t)&&(i[t]=U(i[t],e));return i}const Qe=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"],Ge=5;var a;(function(i){i[i.CONNECT=0]="CONNECT",i[i.DISCONNECT=1]="DISCONNECT",i[i.EVENT=2]="EVENT",i[i.ACK=3]="ACK",i[i.CONNECT_ERROR=4]="CONNECT_ERROR",i[i.BINARY_EVENT=5]="BINARY_EVENT",i[i.BINARY_ACK=6]="BINARY_ACK"})(a||(a={}));class je{constructor(e){this.replacer=e}encode(e){return(e.type===a.EVENT||e.type===a.ACK)&&O(e)?this.encodeAsBinary({type:e.type===a.EVENT?a.BINARY_EVENT:a.BINARY_ACK,nsp:e.nsp,data:e.data,id:e.id}):[this.encodeAsString(e)]}encodeAsString(e){let t=""+e.type;return(e.type===a.BINARY_EVENT||e.type===a.BINARY_ACK)&&(t+=e.attachments+"-"),e.nsp&&e.nsp!=="/"&&(t+=e.nsp+","),e.id!=null&&(t+=e.id),e.data!=null&&(t+=JSON.stringify(e.data,this.replacer)),t}encodeAsBinary(e){const t=Je(e),s=this.encodeAsString(t.packet),n=t.buffers;return n.unshift(s),n}}function X(i){return Object.prototype.toString.call(i)==="[object Object]"}class K extends u{constructor(e){super(),this.reviver=e}add(e){let t;if(typeof e=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");t=this.decodeString(e);const s=t.type===a.BINARY_EVENT;s||t.type===a.BINARY_ACK?(t.type=s?a.EVENT:a.ACK,this.reconstructor=new Ze(t),t.attachments===0&&super.emitReserved("decoded",t)):super.emitReserved("decoded",t)}else if(W(e)||e.base64)if(this.reconstructor)t=this.reconstructor.takeBinaryData(e),t&&(this.reconstructor=null,super.emitReserved("decoded",t));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+e)}decodeString(e){let t=0;const s={type:Number(e.charAt(0))};if(a[s.type]===void 0)throw new Error("unknown packet type "+s.type);if(s.type===a.BINARY_EVENT||s.type===a.BINARY_ACK){const r=t+1;for(;e.charAt(++t)!=="-"&&t!=e.length;);const o=e.substring(r,t);if(o!=Number(o)||e.charAt(t)!=="-")throw new Error("Illegal attachments");s.attachments=Number(o)}if(e.charAt(t+1)==="/"){const r=t+1;for(;++t&&!(e.charAt(t)===","||t===e.length););s.nsp=e.substring(r,t)}else s.nsp="/";const n=e.charAt(t+1);if(n!==""&&Number(n)==n){const r=t+1;for(;++t;){const o=e.charAt(t);if(o==null||Number(o)!=o){--t;break}if(t===e.length)break}s.id=Number(e.substring(r,t+1))}if(e.charAt(++t)){const r=this.tryParse(e.substr(t));if(K.isPayloadValid(s.type,r))s.data=r;else throw new Error("invalid payload")}return s}tryParse(e){try{return JSON.parse(e,this.reviver)}catch{return!1}}static isPayloadValid(e,t){switch(e){case a.CONNECT:return X(t);case a.DISCONNECT:return t===void 0;case a.CONNECT_ERROR:return typeof t=="string"||X(t);case a.EVENT:case a.BINARY_EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&Qe.indexOf(t[0])===-1);case a.ACK:case a.BINARY_ACK:return Array.isArray(t)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}}class Ze{constructor(e){this.packet=e,this.buffers=[],this.reconPack=e}takeBinaryData(e){if(this.buffers.push(e),this.buffers.length===this.reconPack.attachments){const t=Xe(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}const et=Object.freeze(Object.defineProperty({__proto__:null,Decoder:K,Encoder:je,get PacketType(){return a},protocol:Ge},Symbol.toStringTag,{value:"Module"}));function p(i,e,t){return i.on(e,t),function(){i.off(e,t)}}const tt=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class he extends u{constructor(e,t,s){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=e,this.nsp=t,s&&s.auth&&(this.auth=s.auth),this._opts=Object.assign({},s),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;const e=this.io;this.subs=[p(e,"open",this.onopen.bind(this)),p(e,"packet",this.onpacket.bind(this)),p(e,"error",this.onerror.bind(this)),p(e,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...e){return e.unshift("message"),this.emit.apply(this,e),this}emit(e,...t){var s,n,r;if(tt.hasOwnProperty(e))throw new Error('"'+e.toString()+'" is a reserved event name');if(t.unshift(e),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(t),this;const o={type:a.EVENT,data:t};if(o.options={},o.options.compress=this.flags.compress!==!1,typeof t[t.length-1]=="function"){const f=this.ids++,m=t.pop();this._registerAckCallback(f,m),o.id=f}const c=(n=(s=this.io.engine)===null||s===void 0?void 0:s.transport)===null||n===void 0?void 0:n.writable,h=this.connected&&!(!((r=this.io.engine)===null||r===void 0)&&r._hasPingExpired());return this.flags.volatile&&!c||(h?(this.notifyOutgoingListeners(o),this.packet(o)):this.sendBuffer.push(o)),this.flags={},this}_registerAckCallback(e,t){var s;const n=(s=this.flags.timeout)!==null&&s!==void 0?s:this._opts.ackTimeout;if(n===void 0){this.acks[e]=t;return}const r=this.io.setTimeoutFn(()=>{delete this.acks[e];for(let c=0;c<this.sendBuffer.length;c++)this.sendBuffer[c].id===e&&this.sendBuffer.splice(c,1);t.call(this,new Error("operation has timed out"))},n),o=(...c)=>{this.io.clearTimeoutFn(r),t.apply(this,c)};o.withError=!0,this.acks[e]=o}emitWithAck(e,...t){return new Promise((s,n)=>{const r=(o,c)=>o?n(o):s(c);r.withError=!0,t.push(r),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((n,...r)=>s!==this._queue[0]?void 0:(n!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(n)):(this._queue.shift(),t&&t(null,...r)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:a.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(s=>String(s.id)===e)){const s=this.acks[e];delete this.acks[e],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case a.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case a.EVENT:case a.BINARY_EVENT:this.onevent(e);break;case a.ACK:case a.BINARY_ACK:this.onack(e);break;case a.DISCONNECT:this.ondisconnect();break;case a.CONNECT_ERROR:this.destroy();const s=new Error(e.data.message);s.data=e.data.data,this.emitReserved("connect_error",s);break}}onevent(e){const t=e.data||[];e.id!=null&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const s of t)s.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let s=!1;return function(...n){s||(s=!0,t.packet({type:a.ACK,id:e,data:n}))}}onack(e){const t=this.acks[e.id];typeof t=="function"&&(delete this.acks[e.id],t.withError&&e.data.unshift(null),t.apply(this,e.data))}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this.emitReserved("connect"),this._drainQueue(!0)}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:a.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let s=0;s<t.length;s++)if(e===t[s])return t.splice(s,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(e),this}prependAnyOutgoing(e){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(e),this}offAnyOutgoing(e){if(!this._anyOutgoingListeners)return this;if(e){const t=this._anyOutgoingListeners;for(let s=0;s<t.length;s++)if(e===t[s])return t.splice(s,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(e){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){const t=this._anyOutgoingListeners.slice();for(const s of t)s.apply(this,e.data)}}}function b(i){i=i||{},this.ms=i.min||100,this.max=i.max||1e4,this.factor=i.factor||2,this.jitter=i.jitter>0&&i.jitter<=1?i.jitter:0,this.attempts=0}b.prototype.duration=function(){var i=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*i);i=Math.floor(e*10)&1?i+t:i-t}return Math.min(i,this.max)|0};b.prototype.reset=function(){this.attempts=0};b.prototype.setMin=function(i){this.ms=i};b.prototype.setMax=function(i){this.max=i};b.prototype.setJitter=function(i){this.jitter=i};class F extends u{constructor(e,t){var s;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,S(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((s=t.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new b({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const n=t.parser||et;this.encoder=new n.Encoder,this.decoder=new n.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new He(this.uri,this.opts);const t=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const n=p(t,"open",function(){s.onopen(),e&&e()}),r=c=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",c),e?e(c):this.maybeReconnectOnOpen()},o=p(t,"error",r);if(this._timeout!==!1){const c=this._timeout,h=this.setTimeoutFn(()=>{n(),r(new Error("timeout")),t.close()},c);this.opts.autoUnref&&h.unref(),this.subs.push(()=>{this.clearTimeoutFn(h)})}return this.subs.push(n),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(p(e,"ping",this.onping.bind(this)),p(e,"data",this.ondata.bind(this)),p(e,"error",this.onerror.bind(this)),p(e,"close",this.onclose.bind(this)),p(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){C(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let s=this.nsps[e];return s?this._autoConnect&&!s.active&&s.connect():(s=new he(this,e,t),this.nsps[e]=s),s}_destroy(e){const t=Object.keys(this.nsps);for(const s of t)if(this.nsps[s].active)return;this._close()}_packet(e){const t=this.encoder.encode(e);for(let s=0;s<t.length;s++)this.engine.write(t[s],e.options)}cleanup(){this.subs.forEach(e=>e()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(n=>{n?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",n)):e.onreconnect()}))},t);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const v={};function L(i,e){typeof i=="object"&&(e=i,i=void 0),e=e||{};const t=We(i,e.path||"/socket.io"),s=t.source,n=t.id,r=t.path,o=v[n]&&r in v[n].nsps,c=e.forceNew||e["force new connection"]||e.multiplex===!1||o;let h;return c?h=new F(s,e):(v[n]||(v[n]=new F(s,e)),h=v[n]),t.query&&!e.query&&(e.query=t.queryKey),h.socket(t.path,e)}Object.assign(L,{Manager:F,Socket:he,io:L,connect:L});export{it as Fetch,F as Manager,Pe as NodeWebSocket,Ne as NodeXHR,he as Socket,Pe as WebSocket,qe as WebTransport,Ne as XHR,L as connect,L as default,L as io,Ge as protocol}; diff --git a/_nuxt/f0q8Ca6b.js b/_nuxt/f0q8Ca6b.js new file mode 100644 index 0000000..6662650 --- /dev/null +++ b/_nuxt/f0q8Ca6b.js @@ -0,0 +1 @@ +import{k as o,c as r,e as t,ah as s}from"./WKNqgS7_.js";const c={};function n(e,a){return r(),t("tbody",null,[s(e.$slots,"default")])}const d=o(c,[["render",n]]);export{d as default}; diff --git a/_nuxt/g2z_gaTr.js b/_nuxt/g2z_gaTr.js new file mode 100644 index 0000000..8e67c5a --- /dev/null +++ b/_nuxt/g2z_gaTr.js @@ -0,0 +1 @@ +import{_ as p}from"./CtS59gnC.js";import{d as l,bj as m,B as o,c as i,ag as v,C as b}from"./WKNqgS7_.js";const _=l({__name:"ContentRendererMarkdown",props:{value:{type:Object,required:!0},excerpt:{type:Boolean,default:!1},tag:{type:String,default:"div"},components:{type:Object,default:()=>({})},data:{type:Object,default:()=>({})}},setup(a){const e=a,d=m().isEnabled(),r=o(()=>{let t=e.value.body||e.value;return e.excerpt&&e.value.excerpt&&(t=e.value.excerpt),t}),c=o(()=>{const{body:t,excerpt:u,...n}=e.value;return{...n,...e.data}}),s=o(()=>({...e.components,...c.value._components||{}}));return(t,u)=>{const n=p;return i(),v(n,{body:r.value,data:c.value,tag:a.tag,components:s.value,"data-content-id":b(d)?a.value._id:void 0},null,8,["body","data","tag","components","data-content-id"])}}});export{_}; diff --git a/_nuxt/g8YQgL3n.js b/_nuxt/g8YQgL3n.js new file mode 100644 index 0000000..ff40cb4 --- /dev/null +++ b/_nuxt/g8YQgL3n.js @@ -0,0 +1 @@ +import{k as r,c as t,e as a,ah as o}from"./WKNqgS7_.js";const s={};function c(e,n){return t(),a("table",null,[o(e.$slots,"default")])}const f=r(s,[["render",c]]);export{f as default}; diff --git a/_nuxt/g_GSZ1hr.js b/_nuxt/g_GSZ1hr.js new file mode 100644 index 0000000..7079209 --- /dev/null +++ b/_nuxt/g_GSZ1hr.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse(`{"displayName":"CSS","name":"css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#combinators"},{"include":"#selector"},{"include":"#at-rules"},{"include":"#rule-list"}],"repository":{"at-rules":{"patterns":[{"begin":"\\\\A(?:\\\\xEF\\\\xBB\\\\xBF)?(?i:(?=\\\\s*@charset\\\\b))","end":";|(?=$)","endCaptures":{"0":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.charset.css","patterns":[{"captures":{"1":{"name":"invalid.illegal.not-lowercase.charset.css"},"2":{"name":"invalid.illegal.leading-whitespace.charset.css"},"3":{"name":"invalid.illegal.no-whitespace.charset.css"},"4":{"name":"invalid.illegal.whitespace.charset.css"},"5":{"name":"invalid.illegal.not-double-quoted.charset.css"},"6":{"name":"invalid.illegal.unclosed-string.charset.css"},"7":{"name":"invalid.illegal.unexpected-characters.charset.css"}},"match":"\\\\G((?!@charset)@\\\\w+)|\\\\G(\\\\s+)|(@charset\\\\S[^;]*)|(?<=@charset)(\\\\x20{2,}|\\\\t+)|(?<=@charset\\\\x20)([^\\";]+)|(\\"[^\\"]+$)|(?<=\\")([^;]+)"},{"captures":{"1":{"name":"keyword.control.at-rule.charset.css"},"2":{"name":"punctuation.definition.keyword.css"}},"match":"((@)charset)(?=\\\\s)"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"\\"|$","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.double.css","patterns":[{"begin":"(?:\\\\G|^)(?=(?:[^\\"])+$)","end":"$","name":"invalid.illegal.unclosed.string.css"}]}]},{"begin":"(?i)((@)import)(?:\\\\s+|$|(?=['\\"]|/\\\\*))","beginCaptures":{"1":{"name":"keyword.control.at-rule.import.css"},"2":{"name":"punctuation.definition.keyword.css"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.import.css","patterns":[{"begin":"\\\\G\\\\s*(?=/\\\\*)","end":"(?<=\\\\*/)\\\\s*","patterns":[{"include":"#comment-block"}]},{"include":"#string"},{"include":"#url"},{"include":"#media-query-list"}]},{"begin":"(?i)((@)font-face)(?=\\\\s*|{|/\\\\*|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.font-face.css"},"2":{"name":"punctuation.definition.keyword.css"}},"end":"(?!\\\\G)","name":"meta.at-rule.font-face.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#rule-list"}]},{"begin":"(?i)(@)page(?=[\\\\s:{]|/\\\\*|$)","captures":{"0":{"name":"keyword.control.at-rule.page.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*($|[:{;]))","name":"meta.at-rule.page.css","patterns":[{"include":"#rule-list"}]},{"begin":"(?i)(?=@media(\\\\s|\\\\(|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)media","beginCaptures":{"0":{"name":"keyword.control.at-rule.media.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*[{;])","name":"meta.at-rule.media.header.css","patterns":[{"include":"#media-query-list"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.media.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.media.end.bracket.curly.css"}},"name":"meta.at-rule.media.body.css","patterns":[{"include":"$self"}]}]},{"begin":"(?i)(?=@counter-style([\\\\s'\\"{;]|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)counter-style","beginCaptures":{"0":{"name":"keyword.control.at-rule.counter-style.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*{)","name":"meta.at-rule.counter-style.header.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"captures":{"0":{"patterns":[{"include":"#escapes"}]}},"match":"(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.parameter.style-name.css"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.property-list.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.property-list.end.bracket.curly.css"}},"name":"meta.at-rule.counter-style.body.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#rule-list-innards"}]}]},{"begin":"(?i)(?=@document([\\\\s'\\"{;]|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)document","beginCaptures":{"0":{"name":"keyword.control.at-rule.document.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*[{;])","name":"meta.at-rule.document.header.css","patterns":[{"begin":"(?i)(?<![\\\\w-])(url-prefix|domain|regexp)(\\\\()","beginCaptures":{"1":{"name":"support.function.document-rule.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.document-rule.css","patterns":[{"include":"#string"},{"include":"#comment-block"},{"include":"#escapes"},{"match":"[^'\\")\\\\s]+","name":"variable.parameter.document-rule.css"}]},{"include":"#url"},{"include":"#commas"},{"include":"#comment-block"},{"include":"#escapes"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.document.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.document.end.bracket.curly.css"}},"name":"meta.at-rule.document.body.css","patterns":[{"include":"$self"}]}]},{"begin":"(?i)(?=@(?:-(?:webkit|moz|o|ms)-)?keyframes([\\\\s'\\"{;]|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)(?:-(?:webkit|moz|o|ms)-)?keyframes","beginCaptures":{"0":{"name":"keyword.control.at-rule.keyframes.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*{)","name":"meta.at-rule.keyframes.header.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"captures":{"0":{"patterns":[{"include":"#escapes"}]}},"match":"(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.parameter.keyframe-list.css"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.keyframes.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.keyframes.end.bracket.curly.css"}},"name":"meta.at-rule.keyframes.body.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"captures":{"1":{"name":"entity.other.keyframe-offset.css"},"2":{"name":"entity.other.keyframe-offset.percentage.css"}},"match":"(?i)(?<![\\\\w-])(from|to)(?![\\\\w-])|([-+]?(?:\\\\d+(?:\\\\.\\\\d+)?|\\\\.\\\\d+)%)"},{"include":"#rule-list"}]}]},{"begin":"(?i)(?=@supports(\\\\s|\\\\(|/\\\\*|$))","end":"(?<=})(?!\\\\G)|(?=;)","patterns":[{"begin":"(?i)\\\\G(@)supports","beginCaptures":{"0":{"name":"keyword.control.at-rule.supports.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*[{;])","name":"meta.at-rule.supports.header.css","patterns":[{"include":"#feature-query-operators"},{"include":"#feature-query"},{"include":"#comment-block"},{"include":"#escapes"}]},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.supports.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.supports.end.bracket.curly.css"}},"name":"meta.at-rule.supports.body.css","patterns":[{"include":"$self"}]}]},{"begin":"(?i)((@)(-(ms|o)-)?viewport)(?=[\\\\s'\\"{;]|/\\\\*|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.viewport.css"},"2":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*[@{;])","name":"meta.at-rule.viewport.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"}]},{"begin":"(?i)((@)font-feature-values)(?=[\\\\s'\\"{;]|/\\\\*|$)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.at-rule.font-feature-values.css"},"2":{"name":"punctuation.definition.keyword.css"}},"contentName":"variable.parameter.font-name.css","end":"(?=\\\\s*[@{;])","name":"meta.at-rule.font-features.css","patterns":[{"include":"#comment-block"},{"include":"#escapes"}]},{"include":"#font-features"},{"begin":"(?i)((@)namespace)(?=[\\\\s'\\";]|/\\\\*|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.namespace.css"},"2":{"name":"punctuation.definition.keyword.css"}},"end":";|(?=[@{])","endCaptures":{"0":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.namespace.css","patterns":[{"include":"#url"},{"captures":{"1":{"patterns":[{"include":"#comment-block"}]},"2":{"name":"entity.name.function.namespace-prefix.css","patterns":[{"include":"#escapes"}]}},"match":"(?i)(?:\\\\G|^|(?<=\\\\s))(?=(?<=\\\\s|^)(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])|\\\\s*/\\\\*(?:[^*]|\\\\*[^/])*\\\\*/)(.*?)((?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*)"},{"include":"#comment-block"},{"include":"#escapes"},{"include":"#string"}]},{"begin":"(?i)(?=@[\\\\w-]+[^;]+;s*$)","end":"(?<=;)(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)[\\\\w-]+","beginCaptures":{"0":{"name":"keyword.control.at-rule.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":";","endCaptures":{"0":{"name":"punctuation.terminator.rule.css"}},"name":"meta.at-rule.header.css"}]},{"begin":"(?i)(?=@[\\\\w-]+(\\\\s|\\\\(|{|/\\\\*|$))","end":"(?<=})(?!\\\\G)","patterns":[{"begin":"(?i)\\\\G(@)[\\\\w-]+","beginCaptures":{"0":{"name":"keyword.control.at-rule.css"},"1":{"name":"punctuation.definition.keyword.css"}},"end":"(?=\\\\s*[{;])","name":"meta.at-rule.header.css"},{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.end.bracket.curly.css"}},"name":"meta.at-rule.body.css","patterns":[{"include":"$self"}]}]}]},"color-keywords":{"patterns":[{"match":"(?i)(?<![\\\\w-])(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|teal|white|yellow)(?![\\\\w-])","name":"support.constant.color.w3c-standard-color-name.css"},{"match":"(?i)(?<![\\\\w-])(aliceblue|antiquewhite|aquamarine|azure|beige|bisque|blanchedalmond|blueviolet|brown|burlywood|cadetblue|chartreuse|chocolate|coral|cornflowerblue|cornsilk|crimson|cyan|darkblue|darkcyan|darkgoldenrod|darkgray|darkgreen|darkgrey|darkkhaki|darkmagenta|darkolivegreen|darkorange|darkorchid|darkred|darksalmon|darkseagreen|darkslateblue|darkslategray|darkslategrey|darkturquoise|darkviolet|deeppink|deepskyblue|dimgray|dimgrey|dodgerblue|firebrick|floralwhite|forestgreen|gainsboro|ghostwhite|gold|goldenrod|greenyellow|grey|honeydew|hotpink|indianred|indigo|ivory|khaki|lavender|lavenderblush|lawngreen|lemonchiffon|lightblue|lightcoral|lightcyan|lightgoldenrodyellow|lightgray|lightgreen|lightgrey|lightpink|lightsalmon|lightseagreen|lightskyblue|lightslategray|lightslategrey|lightsteelblue|lightyellow|limegreen|linen|magenta|mediumaquamarine|mediumblue|mediumorchid|mediumpurple|mediumseagreen|mediumslateblue|mediumspringgreen|mediumturquoise|mediumvioletred|midnightblue|mintcream|mistyrose|moccasin|navajowhite|oldlace|olivedrab|orangered|orchid|palegoldenrod|palegreen|paleturquoise|palevioletred|papayawhip|peachpuff|peru|pink|plum|powderblue|rebeccapurple|rosybrown|royalblue|saddlebrown|salmon|sandybrown|seagreen|seashell|sienna|skyblue|slateblue|slategray|slategrey|snow|springgreen|steelblue|tan|thistle|tomato|transparent|turquoise|violet|wheat|whitesmoke|yellowgreen)(?![\\\\w-])","name":"support.constant.color.w3c-extended-color-name.css"},{"match":"(?i)(?<![\\\\w-])currentColor(?![\\\\w-])","name":"support.constant.color.current.css"},{"match":"(?i)(?<![\\\\w-])(ActiveBorder|ActiveCaption|AppWorkspace|Background|ButtonFace|ButtonHighlight|ButtonShadow|ButtonText|CaptionText|GrayText|Highlight|HighlightText|InactiveBorder|InactiveCaption|InactiveCaptionText|InfoBackground|InfoText|Menu|MenuText|Scrollbar|ThreeDDarkShadow|ThreeDFace|ThreeDHighlight|ThreeDLightShadow|ThreeDShadow|Window|WindowFrame|WindowText)(?![\\\\w-])","name":"invalid.deprecated.color.system.css"}]},"combinators":{"patterns":[{"match":"/deep/|>>>","name":"invalid.deprecated.combinator.css"},{"match":">>|>|\\\\+|~","name":"keyword.operator.combinator.css"}]},"commas":{"match":",","name":"punctuation.separator.list.comma.css"},"comment-block":{"begin":"/\\\\*","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.css"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.end.css"}},"name":"comment.block.css"},"escapes":{"patterns":[{"match":"\\\\\\\\[0-9a-fA-F]{1,6}","name":"constant.character.escape.codepoint.css"},{"begin":"\\\\\\\\$\\\\s*","end":"^(?<!\\\\G)","name":"constant.character.escape.newline.css"},{"match":"\\\\\\\\.","name":"constant.character.escape.css"}]},"feature-query":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.condition.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.condition.end.bracket.round.css"}},"name":"meta.feature-query.css","patterns":[{"include":"#feature-query-operators"},{"include":"#feature-query"}]},"feature-query-operators":{"patterns":[{"match":"(?i)(?<=[\\\\s()]|^|\\\\*/)(and|not|or)(?=[\\\\s()]|/\\\\*|$)","name":"keyword.operator.logical.feature.$1.css"},{"include":"#rule-list-innards"}]},"font-features":{"begin":"(?i)((@)(annotation|character-variant|ornaments|styleset|stylistic|swash))(?=[\\\\s@'\\"{;]|/\\\\*|$)","beginCaptures":{"1":{"name":"keyword.control.at-rule.\${3:/downcase}.css"},"2":{"name":"punctuation.definition.keyword.css"}},"end":"(?<=})","name":"meta.at-rule.\${3:/downcase}.css","patterns":[{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.property-list.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.property-list.end.bracket.curly.css"}},"name":"meta.property-list.font-feature.css","patterns":[{"captures":{"0":{"patterns":[{"include":"#escapes"}]}},"match":"(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.font-feature.css"},{"include":"#rule-list-innards"}]}]},"functional-pseudo-classes":{"patterns":[{"begin":"(?i)((:)dir)(\\\\()","beginCaptures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"punctuation.definition.entity.css"},"3":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"match":"(?i)(?<![\\\\w-])(ltr|rtl)(?![\\\\w-])","name":"support.constant.text-direction.css"},{"include":"#property-values"}]},{"begin":"(?i)((:)lang)(\\\\()","beginCaptures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"punctuation.definition.entity.css"},"3":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"match":"(?<=[(,\\\\s])[a-zA-Z]+(-[a-zA-Z0-9]*|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*(?=[),\\\\s])","name":"support.constant.language-range.css"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.double.css","patterns":[{"include":"#escapes"},{"match":"(?<=[\\"\\\\s])[a-zA-Z*]+(-[a-zA-Z0-9*]*)*(?=[\\"\\\\s])","name":"support.constant.language-range.css"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.single.css","patterns":[{"include":"#escapes"},{"match":"(?<=['\\\\s])[a-zA-Z*]+(-[a-zA-Z0-9*]*)*(?=['\\\\s])","name":"support.constant.language-range.css"}]},{"include":"#commas"}]},{"begin":"(?i)((:)(?:not|has|matches|where|is))(\\\\()","beginCaptures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"punctuation.definition.entity.css"},"3":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"include":"#selector-innards"}]},{"begin":"(?i)((:)nth-(?:last-)?(?:child|of-type))(\\\\()","beginCaptures":{"1":{"name":"entity.other.attribute-name.pseudo-class.css"},"2":{"name":"punctuation.definition.entity.css"},"3":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"match":"(?i)[+-]?(\\\\d+n?|n)(\\\\s*[+-]\\\\s*\\\\d+)?","name":"constant.numeric.css"},{"match":"(?i)even|odd","name":"support.constant.parity.css"}]}]},"functions":{"patterns":[{"begin":"(?i)(?<![\\\\w-])(calc)(\\\\()","beginCaptures":{"1":{"name":"support.function.calc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.calc.css","patterns":[{"match":"[*/]|(?<=\\\\s|^)[-+](?=\\\\s|$)","name":"keyword.operator.arithmetic.css"},{"include":"#property-values"}]},{"begin":"(?i)(?<![\\\\w-])(rgba?|rgb|hsla?|hsl|hwb|lab|oklab|lch|oklch|color)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.color.css","patterns":[{"include":"#property-values"}]},{"begin":"(?i)(?<![\\\\w-])((?:-webkit-|-moz-|-o-)?(?:repeating-)?(?:linear|radial|conic)-gradient)(\\\\()","beginCaptures":{"1":{"name":"support.function.gradient.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.gradient.css","patterns":[{"match":"(?i)(?<![\\\\w-])(from|to|at|in|hue)(?![\\\\w-])","name":"keyword.operator.gradient.css"},{"include":"#property-values"}]},{"begin":"(?i)(?<![\\\\w-])(-webkit-gradient)(\\\\()","beginCaptures":{"1":{"name":"invalid.deprecated.gradient.function.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.gradient.invalid.deprecated.gradient.css","patterns":[{"begin":"(?i)(?<![\\\\w-])(from|to|color-stop)(\\\\()","beginCaptures":{"1":{"name":"invalid.deprecated.function.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"include":"#property-values"}]},{"include":"#property-values"}]},{"begin":"(?i)(?<![\\\\w-])(annotation|attr|blur|brightness|character-variant|clamp|contrast|counters?|cross-fade|drop-shadow|element|fit-content|format|grayscale|hue-rotate|color-mix|image-set|invert|local|max|min|minmax|opacity|ornaments|repeat|saturate|sepia|styleset|stylistic|swash|symbols|cos|sin|tan|acos|asin|atan|atan2|hypot|sqrt|pow|log|exp|abs|sign)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.misc.css","patterns":[{"match":"(?i)(?<=[,\\\\s\\"]|\\\\*/|^)\\\\d+x(?=[\\\\s,\\"')]|/\\\\*|$)","name":"constant.numeric.other.density.css"},{"include":"#property-values"},{"match":"[^'\\"),\\\\s]+","name":"variable.parameter.misc.css"}]},{"begin":"(?i)(?<![\\\\w-])(circle|ellipse|inset|polygon|rect)(\\\\()","beginCaptures":{"1":{"name":"support.function.shape.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.shape.css","patterns":[{"match":"(?i)(?<=\\\\s|^|\\\\*/)(at|round)(?=\\\\s|/\\\\*|$)","name":"keyword.operator.shape.css"},{"include":"#property-values"}]},{"begin":"(?i)(?<![\\\\w-])(cubic-bezier|steps)(\\\\()","beginCaptures":{"1":{"name":"support.function.timing-function.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.timing-function.css","patterns":[{"match":"(?i)(?<![\\\\w-])(start|end)(?=\\\\s*\\\\)|$)","name":"support.constant.step-direction.css"},{"include":"#property-values"}]},{"begin":"(?i)(?<![\\\\w-])((?:translate|scale|rotate)(?:[XYZ]|3D)?|matrix(?:3D)?|skew[XY]?|perspective)(\\\\()","beginCaptures":{"1":{"name":"support.function.transform.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"patterns":[{"include":"#property-values"}]},{"include":"#url"},{"begin":"(?i)(?<![\\\\w-])(var)(\\\\()","beginCaptures":{"1":{"name":"support.function.misc.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.variable.css","patterns":[{"match":"--(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.argument.css"},{"include":"#property-values"}]}]},"media-feature-keywords":{"match":"(?i)(?<=^|\\\\s|:|\\\\*/)(?:portrait|landscape|progressive|interlace|fullscreen|standalone|minimal-ui|browser|hover)(?=\\\\s|\\\\)|$)","name":"support.constant.property-value.css"},"media-features":{"captures":{"1":{"name":"support.type.property-name.media.css"},"2":{"name":"support.type.property-name.media.css"},"3":{"name":"support.type.vendored.property-name.media.css"}},"match":"(?i)(?<=^|\\\\s|\\\\(|\\\\*/)(?:((?:min-|max-)?(?:height|width|aspect-ratio|color|color-index|monochrome|resolution)|grid|scan|orientation|display-mode|hover)|((?:min-|max-)?device-(?:height|width|aspect-ratio))|((?:[-_](?:webkit|apple|khtml|epub|moz|ms|o|xv|ah|rim|atsc|hp|tc|wap|ro)|(?:mso|prince))-[\\\\w-]+(?=\\\\s*(?:/\\\\*(?:[^*]|\\\\*[^/])*\\\\*/)?\\\\s*[:)])))(?=\\\\s|$|[><:=]|\\\\)|/\\\\*)"},"media-query":{"begin":"\\\\G","end":"(?=\\\\s*[{;])","patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#media-types"},{"match":"(?i)(?<=\\\\s|^|,|\\\\*/)(only|not)(?=\\\\s|{|/\\\\*|$)","name":"keyword.operator.logical.$1.media.css"},{"match":"(?i)(?<=\\\\s|^|\\\\*/|\\\\))and(?=\\\\s|/\\\\*|$)","name":"keyword.operator.logical.and.media.css"},{"match":",(?:(?:\\\\s*,)+|(?=\\\\s*[;){]))","name":"invalid.illegal.comma.css"},{"include":"#commas"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.bracket.round.css"}},"patterns":[{"include":"#media-features"},{"include":"#media-feature-keywords"},{"match":":","name":"punctuation.separator.key-value.css"},{"match":">=|<=|=|<|>","name":"keyword.operator.comparison.css"},{"captures":{"1":{"name":"constant.numeric.css"},"2":{"name":"keyword.operator.arithmetic.css"},"3":{"name":"constant.numeric.css"}},"match":"(\\\\d+)\\\\s*(/)\\\\s*(\\\\d+)","name":"meta.ratio.css"},{"include":"#numeric-values"},{"include":"#comment-block"}]}]},"media-query-list":{"begin":"(?=\\\\s*[^{;])","end":"(?=\\\\s*[{;])","patterns":[{"include":"#media-query"}]},"media-types":{"captures":{"1":{"name":"support.constant.media.css"},"2":{"name":"invalid.deprecated.constant.media.css"}},"match":"(?i)(?<=^|\\\\s|,|\\\\*/)(?:(all|print|screen|speech)|(aural|braille|embossed|handheld|projection|tty|tv))(?=$|[{,\\\\s;]|/\\\\*)"},"numeric-values":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.constant.css"}},"match":"(#)(?:[0-9a-fA-F]{3,4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})\\\\b","name":"constant.other.color.rgb-value.hex.css"},{"captures":{"1":{"name":"keyword.other.unit.percentage.css"},"2":{"name":"keyword.other.unit.\${2:/downcase}.css"}},"match":"(?i)(?<![\\\\w-])[-+]?(?:\\\\d+(?:\\\\.\\\\d+)?|\\\\.\\\\d+)(?:(?<=\\\\d)E[-+]?\\\\d+)?(?:(%)|(deg|grad|rad|turn|Hz|kHz|ch|cm|em|ex|fr|in|mm|mozmm|pc|pt|px|q|rem|rch|rex|rlh|ic|ric|rcap|vh|vw|vb|vi|svh|svw|svb|svi|dvh|dvw|dvb|dvi|lvh|lvw|lvb|lvi|vmax|vmin|cqw|cqi|cqh|cqb|cqmin|cqmax|dpi|dpcm|dppx|s|ms)\\\\b)?","name":"constant.numeric.css"}]},"property-keywords":{"patterns":[{"match":"(?i)(?<![\\\\w-])(above|absolute|active|add|additive|after-edge|alias|all|all-petite-caps|all-scroll|all-small-caps|alpha|alphabetic|alternate|alternate-reverse|always|antialiased|auto|auto-fill|auto-fit|auto-pos|available|avoid|avoid-column|avoid-page|avoid-region|backwards|balance|baseline|before-edge|below|bevel|bidi-override|blink|block|block-axis|block-start|block-end|bold|bolder|border|border-box|both|bottom|bottom-outside|break-all|break-word|bullets|butt|capitalize|caption|cell|center|central|char|circle|clip|clone|close-quote|closest-corner|closest-side|col-resize|collapse|color|color-burn|color-dodge|column|column-reverse|common-ligatures|compact|condensed|contain|content|content-box|contents|context-menu|contextual|copy|cover|crisp-edges|crispEdges|crosshair|cyclic|dark|darken|dashed|decimal|default|dense|diagonal-fractions|difference|digits|disabled|disc|discretionary-ligatures|distribute|distribute-all-lines|distribute-letter|distribute-space|dot|dotted|double|double-circle|downleft|downright|e-resize|each-line|ease|ease-in|ease-in-out|ease-out|economy|ellipse|ellipsis|embed|end|evenodd|ew-resize|exact|exclude|exclusion|expanded|extends|extra-condensed|extra-expanded|fallback|farthest-corner|farthest-side|fill|fill-available|fill-box|filled|fit-content|fixed|flat|flex|flex-end|flex-start|flip|flow-root|forwards|freeze|from-image|full-width|geometricPrecision|georgian|grab|grabbing|grayscale|grid|groove|hand|hanging|hard-light|help|hidden|hide|historical-forms|historical-ligatures|horizontal|horizontal-tb|hue|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|ideographic|inactive|infinite|inherit|initial|inline|inline-axis|inline-block|inline-end|inline-flex|inline-grid|inline-list-item|inline-start|inline-table|inset|inside|inter-character|inter-ideograph|inter-word|intersect|invert|isolate|isolate-override|italic|jis04|jis78|jis83|jis90|justify|justify-all|kannada|keep-all|landscape|large|larger|left|light|lighten|lighter|line|line-edge|line-through|linear|linearRGB|lining-nums|list-item|local|loose|lowercase|lr|lr-tb|ltr|luminance|luminosity|main-size|mandatory|manipulation|manual|margin-box|match-parent|match-source|mathematical|max-content|medium|menu|message-box|middle|min-content|miter|mixed|move|multiply|n-resize|narrower|ne-resize|nearest-neighbor|nesw-resize|newspaper|no-change|no-clip|no-close-quote|no-common-ligatures|no-contextual|no-discretionary-ligatures|no-drop|no-historical-ligatures|no-open-quote|no-repeat|none|nonzero|normal|not-allowed|nowrap|ns-resize|numbers|numeric|nw-resize|nwse-resize|oblique|oldstyle-nums|open|open-quote|optimizeLegibility|optimizeQuality|optimizeSpeed|optional|ordinal|outset|outside|over|overlay|overline|padding|padding-box|page|painted|pan-down|pan-left|pan-right|pan-up|pan-x|pan-y|paused|petite-caps|pixelated|plaintext|pointer|portrait|pre|pre-line|pre-wrap|preserve-3d|progress|progressive|proportional-nums|proportional-width|proximity|radial|recto|region|relative|remove|repeat|repeat-[xy]|reset-size|reverse|revert|ridge|right|rl|rl-tb|round|row|row-resize|row-reverse|row-severse|rtl|ruby|ruby-base|ruby-base-container|ruby-text|ruby-text-container|run-in|running|s-resize|saturation|scale-down|screen|scroll|scroll-position|se-resize|semi-condensed|semi-expanded|separate|sesame|show|sideways|sideways-left|sideways-lr|sideways-right|sideways-rl|simplified|slashed-zero|slice|small|small-caps|small-caption|smaller|smooth|soft-light|solid|space|space-around|space-between|space-evenly|spell-out|square|sRGB|stacked-fractions|start|static|status-bar|swap|step-end|step-start|sticky|stretch|strict|stroke|stroke-box|style|sub|subgrid|subpixel-antialiased|subtract|super|sw-resize|symbolic|table|table-caption|table-cell|table-column|table-column-group|table-footer-group|table-header-group|table-row|table-row-group|tabular-nums|tb|tb-rl|text|text-after-edge|text-before-edge|text-bottom|text-top|thick|thin|titling-caps|top|top-outside|touch|traditional|transparent|triangle|ultra-condensed|ultra-expanded|under|underline|unicase|unset|upleft|uppercase|upright|use-glyph-orientation|use-script|verso|vertical|vertical-ideographic|vertical-lr|vertical-rl|vertical-text|view-box|visible|visibleFill|visiblePainted|visibleStroke|w-resize|wait|wavy|weight|whitespace|wider|words|wrap|wrap-reverse|x|x-large|x-small|xx-large|xx-small|y|zero|zoom-in|zoom-out)(?![\\\\w-])","name":"support.constant.property-value.css"},{"match":"(?i)(?<![\\\\w-])(arabic-indic|armenian|bengali|cambodian|circle|cjk-decimal|cjk-earthly-branch|cjk-heavenly-stem|cjk-ideographic|decimal|decimal-leading-zero|devanagari|disc|disclosure-closed|disclosure-open|ethiopic-halehame-am|ethiopic-halehame-ti-e[rt]|ethiopic-numeric|georgian|gujarati|gurmukhi|hangul|hangul-consonant|hebrew|hiragana|hiragana-iroha|japanese-formal|japanese-informal|kannada|katakana|katakana-iroha|khmer|korean-hangul-formal|korean-hanja-formal|korean-hanja-informal|lao|lower-alpha|lower-armenian|lower-greek|lower-latin|lower-roman|malayalam|mongolian|myanmar|oriya|persian|simp-chinese-formal|simp-chinese-informal|square|tamil|telugu|thai|tibetan|trad-chinese-formal|trad-chinese-informal|upper-alpha|upper-armenian|upper-latin|upper-roman|urdu)(?![\\\\w-])","name":"support.constant.property-value.list-style-type.css"},{"match":"(?<![\\\\w-])(?i:-(?:ah|apple|atsc|epub|hp|khtml|moz|ms|o|rim|ro|tc|wap|webkit|xv)|(?:mso|prince))-[a-zA-Z-]+","name":"support.constant.vendored.property-value.css"},{"match":"(?<![\\\\w-])(?i:arial|century|comic|courier|garamond|georgia|helvetica|impact|lucida|symbol|system-ui|system|tahoma|times|trebuchet|ui-monospace|ui-rounded|ui-sans-serif|ui-serif|utopia|verdana|webdings|sans-serif|serif|monospace)(?![\\\\w-])","name":"support.constant.font-name.css"}]},"property-names":{"patterns":[{"match":"(?i)(?<![\\\\w-])(?:accent-color|additive-symbols|align-content|align-items|align-self|all|animation|animation-delay|animation-direction|animation-duration|animation-fill-mode|animation-iteration-count|animation-name|animation-play-state|animation-timing-function|backdrop-filter|backface-visibility|background|background-attachment|background-blend-mode|background-clip|background-color|background-image|background-origin|background-position|background-position-[xy]|background-repeat|background-size|bleed|block-size|border|border-block-end|border-block-end-color|border-block-end-style|border-block-end-width|border-block-start|border-block-start-color|border-block-start-style|border-block-start-width|border-bottom|border-bottom-color|border-bottom-left-radius|border-bottom-right-radius|border-bottom-style|border-bottom-width|border-collapse|border-color|border-end-end-radius|border-end-start-radius|border-image|border-image-outset|border-image-repeat|border-image-slice|border-image-source|border-image-width|border-inline-end|border-inline-end-color|border-inline-end-style|border-inline-end-width|border-inline-start|border-inline-start-color|border-inline-start-style|border-inline-start-width|border-left|border-left-color|border-left-style|border-left-width|border-radius|border-right|border-right-color|border-right-style|border-right-width|border-spacing|border-start-end-radius|border-start-start-radius|border-style|border-top|border-top-color|border-top-left-radius|border-top-right-radius|border-top-style|border-top-width|border-width|bottom|box-decoration-break|box-shadow|box-sizing|break-after|break-before|break-inside|caption-side|caret-color|clear|clip|clip-path|clip-rule|color|color-adjust|color-interpolation-filters|color-scheme|column-count|column-fill|column-gap|column-rule|column-rule-color|column-rule-style|column-rule-width|column-span|column-width|columns|contain|container|container-name|container-type|content|counter-increment|counter-reset|cursor|direction|display|empty-cells|enable-background|fallback|fill|fill-opacity|fill-rule|filter|flex|flex-basis|flex-direction|flex-flow|flex-grow|flex-shrink|flex-wrap|float|flood-color|flood-opacity|font|font-display|font-family|font-feature-settings|font-kerning|font-language-override|font-optical-sizing|font-size|font-size-adjust|font-stretch|font-style|font-synthesis|font-variant|font-variant-alternates|font-variant-caps|font-variant-east-asian|font-variant-ligatures|font-variant-numeric|font-variant-position|font-variation-settings|font-weight|gap|glyph-orientation-horizontal|glyph-orientation-vertical|grid|grid-area|grid-auto-columns|grid-auto-flow|grid-auto-rows|grid-column|grid-column-end|grid-column-gap|grid-column-start|grid-gap|grid-row|grid-row-end|grid-row-gap|grid-row-start|grid-template|grid-template-areas|grid-template-columns|grid-template-rows|hanging-punctuation|height|hyphens|image-orientation|image-rendering|image-resolution|ime-mode|initial-letter|initial-letter-align|inline-size|inset|inset-block|inset-block-end|inset-block-start|inset-inline|inset-inline-end|inset-inline-start|isolation|justify-content|justify-items|justify-self|kerning|left|letter-spacing|lighting-color|line-break|line-clamp|line-height|list-style|list-style-image|list-style-position|list-style-type|margin|margin-block|margin-block-end|margin-block-start|margin-bottom|margin-inline|margin-inline-end|margin-inline-start|margin-left|margin-right|margin-top|marker-end|marker-mid|marker-start|marks|mask|mask-border|mask-border-mode|mask-border-outset|mask-border-repeat|mask-border-slice|mask-border-source|mask-border-width|mask-clip|mask-composite|mask-image|mask-mode|mask-origin|mask-position|mask-repeat|mask-size|mask-type|max-block-size|max-height|max-inline-size|max-lines|max-width|max-zoom|min-block-size|min-height|min-inline-size|min-width|min-zoom|mix-blend-mode|negative|object-fit|object-position|offset|offset-anchor|offset-distance|offset-path|offset-position|offset-rotation|opacity|order|orientation|orphans|outline|outline-color|outline-offset|outline-style|outline-width|overflow|overflow-anchor|overflow-block|overflow-inline|overflow-wrap|overflow-[xy]|overscroll-behavior|overscroll-behavior-block|overscroll-behavior-inline|overscroll-behavior-[xy]|pad|padding|padding-block|padding-block-end|padding-block-start|padding-bottom|padding-inline|padding-inline-end|padding-inline-start|padding-left|padding-right|padding-top|page-break-after|page-break-before|page-break-inside|paint-order|perspective|perspective-origin|place-content|place-items|place-self|pointer-events|position|prefix|quotes|range|resize|right|rotate|row-gap|ruby-align|ruby-merge|ruby-position|scale|scroll-behavior|scroll-margin|scroll-margin-block|scroll-margin-block-end|scroll-margin-block-start|scroll-margin-bottom|scroll-margin-inline|scroll-margin-inline-end|scroll-margin-inline-start|scroll-margin-left|scroll-margin-right|scroll-margin-top|scroll-padding|scroll-padding-block|scroll-padding-block-end|scroll-padding-block-start|scroll-padding-bottom|scroll-padding-inline|scroll-padding-inline-end|scroll-padding-inline-start|scroll-padding-left|scroll-padding-right|scroll-padding-top|scroll-snap-align|scroll-snap-coordinate|scroll-snap-destination|scroll-snap-stop|scroll-snap-type|scrollbar-color|scrollbar-gutter|scrollbar-width|shape-image-threshold|shape-margin|shape-outside|shape-rendering|size|speak-as|src|stop-color|stop-opacity|stroke|stroke-dasharray|stroke-dashoffset|stroke-linecap|stroke-linejoin|stroke-miterlimit|stroke-opacity|stroke-width|suffix|symbols|system|tab-size|table-layout|text-align|text-align-last|text-anchor|text-combine-upright|text-decoration|text-decoration-color|text-decoration-line|text-decoration-skip|text-decoration-skip-ink|text-decoration-style|text-decoration-thickness|text-emphasis|text-emphasis-color|text-emphasis-position|text-emphasis-style|text-indent|text-justify|text-orientation|text-overflow|text-rendering|text-shadow|text-size-adjust|text-transform|text-underline-offset|text-underline-position|top|touch-action|transform|transform-box|transform-origin|transform-style|transition|transition-delay|transition-duration|transition-property|transition-timing-function|translate|unicode-bidi|unicode-range|user-select|user-zoom|vertical-align|visibility|white-space|widows|width|will-change|word-break|word-spacing|word-wrap|writing-mode|z-index|zoom|alignment-baseline|baseline-shift|clip-rule|color-interpolation|color-interpolation-filters|color-profile|color-rendering|cx|cy|dominant-baseline|enable-background|fill|fill-opacity|fill-rule|flood-color|flood-opacity|glyph-orientation-horizontal|glyph-orientation-vertical|height|kerning|lighting-color|marker-end|marker-mid|marker-start|r|rx|ry|shape-rendering|stop-color|stop-opacity|stroke|stroke-dasharray|stroke-dashoffset|stroke-linecap|stroke-linejoin|stroke-miterlimit|stroke-opacity|stroke-width|text-anchor|width|x|y|adjust|after|align|align-last|alignment|alignment-adjust|appearance|attachment|azimuth|background-break|balance|baseline|before|bidi|binding|bookmark|bookmark-label|bookmark-level|bookmark-target|border-length|bottom-color|bottom-left-radius|bottom-right-radius|bottom-style|bottom-width|box|box-align|box-direction|box-flex|box-flex-group|box-lines|box-ordinal-group|box-orient|box-pack|break|character|collapse|column|column-break-after|column-break-before|count|counter|crop|cue|cue-after|cue-before|decoration|decoration-break|delay|display-model|display-role|down|drop|drop-initial-after-adjust|drop-initial-after-align|drop-initial-before-adjust|drop-initial-before-align|drop-initial-size|drop-initial-value|duration|elevation|emphasis|family|fit|fit-position|flex-group|float-offset|gap|grid-columns|grid-rows|hanging-punctuation|header|hyphenate|hyphenate-after|hyphenate-before|hyphenate-character|hyphenate-lines|hyphenate-resource|icon|image|increment|indent|index|initial-after-adjust|initial-after-align|initial-before-adjust|initial-before-align|initial-size|initial-value|inline-box-align|iteration-count|justify|label|left-color|left-style|left-width|length|level|line|line-stacking|line-stacking-ruby|line-stacking-shift|line-stacking-strategy|lines|list|mark|mark-after|mark-before|marks|marquee|marquee-direction|marquee-play-count|marquee-speed|marquee-style|max|min|model|move-to|name|nav|nav-down|nav-index|nav-left|nav-right|nav-up|new|numeral|offset|ordinal-group|orient|origin|overflow-style|overhang|pack|page|page-policy|pause|pause-after|pause-before|phonemes|pitch|pitch-range|play-count|play-during|play-state|point|presentation|presentation-level|profile|property|punctuation|punctuation-trim|radius|rate|rendering-intent|repeat|replace|reset|resolution|resource|respond-to|rest|rest-after|rest-before|richness|right-color|right-style|right-width|role|rotation|rotation-point|rows|ruby|ruby-overhang|ruby-span|rule|rule-color|rule-style|rule-width|shadow|size|size-adjust|sizing|space|space-collapse|spacing|span|speak|speak-header|speak-numeral|speak-punctuation|speech|speech-rate|speed|stacking|stacking-ruby|stacking-shift|stacking-strategy|stress|stretch|string-set|style|style-image|style-position|style-type|target|target-name|target-new|target-position|text|text-height|text-justify|text-outline|text-replace|text-wrap|timing-function|top-color|top-left-radius|top-right-radius|top-style|top-width|trim|unicode|up|user-select|variant|voice|voice-balance|voice-duration|voice-family|voice-pitch|voice-pitch-range|voice-rate|voice-stress|voice-volume|volume|weight|white|white-space-collapse|word|wrap)(?![\\\\w-])","name":"support.type.property-name.css"},{"match":"(?<![\\\\w-])(?i:-(?:ah|apple|atsc|epub|hp|khtml|moz|ms|o|rim|ro|tc|wap|webkit|xv)|(?:mso|prince))-[a-zA-Z-]+","name":"support.type.vendored.property-name.css"}]},"property-values":{"patterns":[{"include":"#commas"},{"include":"#comment-block"},{"include":"#escapes"},{"include":"#functions"},{"include":"#property-keywords"},{"include":"#unicode-range"},{"include":"#numeric-values"},{"include":"#color-keywords"},{"include":"#string"},{"match":"!\\\\s*important(?![\\\\w-])","name":"keyword.other.important.css"}]},"pseudo-classes":{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"name":"invalid.illegal.colon.css"}},"match":"(?i)(:)(:*)(?:active|any-link|checked|default|disabled|empty|enabled|first|(?:first|last|only)-(?:child|of-type)|focus|focus-visible|focus-within|fullscreen|host|hover|in-range|indeterminate|invalid|left|link|optional|out-of-range|read-only|read-write|required|right|root|scope|target|unresolved|valid|visited)(?![\\\\w-]|\\\\s*[;}])","name":"entity.other.attribute-name.pseudo-class.css"},"pseudo-elements":{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"name":"punctuation.definition.entity.css"}},"match":"(?i)(?:(::?)(?:after|before|first-letter|first-line|(?:-(?:ah|apple|atsc|epub|hp|khtml|moz|ms|o|rim|ro|tc|wap|webkit|xv)|(?:mso|prince))-[a-z-]+)|(::)(?:backdrop|content|grammar-error|marker|placeholder|selection|shadow|spelling-error))(?![\\\\w-]|\\\\s*[;}])","name":"entity.other.attribute-name.pseudo-element.css"},"rule-list":{"begin":"{","beginCaptures":{"0":{"name":"punctuation.section.property-list.begin.bracket.curly.css"}},"end":"}","endCaptures":{"0":{"name":"punctuation.section.property-list.end.bracket.curly.css"}},"name":"meta.property-list.css","patterns":[{"include":"#rule-list-innards"}]},"rule-list-innards":{"patterns":[{"include":"#comment-block"},{"include":"#escapes"},{"include":"#font-features"},{"match":"(?<![\\\\w-])--(?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*","name":"variable.css"},{"begin":"(?<![-a-zA-Z])(?=[-a-zA-Z])","end":"$|(?![-a-zA-Z])","name":"meta.property-name.css","patterns":[{"include":"#property-names"}]},{"begin":"(:)\\\\s*","beginCaptures":{"1":{"name":"punctuation.separator.key-value.css"}},"contentName":"meta.property-value.css","end":"\\\\s*(;)|\\\\s*(?=}|\\\\))","endCaptures":{"1":{"name":"punctuation.terminator.rule.css"}},"patterns":[{"include":"#comment-block"},{"include":"#property-values"}]},{"match":";","name":"punctuation.terminator.rule.css"}]},"selector":{"begin":"(?=(?:\\\\|)?(?:[-\\\\[:.*#a-zA-Z_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.)))","end":"(?=\\\\s*[/@{)])","name":"meta.selector.css","patterns":[{"include":"#selector-innards"}]},"selector-innards":{"patterns":[{"include":"#comment-block"},{"include":"#commas"},{"include":"#escapes"},{"include":"#combinators"},{"captures":{"1":{"name":"entity.other.namespace-prefix.css"},"2":{"name":"punctuation.separator.css"}},"match":"(?:^|(?<=[\\\\s,(};]))(?![-\\\\w*]+\\\\|(?![-\\\\[:.*#a-zA-Z_]|[^\\\\x00-\\\\x7F]))((?:[-a-zA-Z_]|[^\\\\x00-\\\\x7F])(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*|\\\\*)?(\\\\|)"},{"include":"#tag-names"},{"match":"\\\\*","name":"entity.name.tag.wildcard.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"patterns":[{"include":"#escapes"}]}},"match":"(?<![@\\\\w-])([.#])((?:-?\\\\d|-(?=$|[\\\\s,.#)\\\\[:{>+~|]|/\\\\*)|(?:[-a-zA-Z_0-9]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*(?:[!\\"'%&(*;<?@^\`|\\\\]}]|/(?!\\\\*))+)(?:[-a-zA-Z_0-9]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))*)","name":"invalid.illegal.bad-identifier.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"patterns":[{"include":"#escapes"}]}},"match":"(\\\\.)((?:[-a-zA-Z_0-9]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)(?=$|[\\\\s,.#)\\\\[:{>+~|]|/\\\\*)","name":"entity.other.attribute-name.class.css"},{"captures":{"1":{"name":"punctuation.definition.entity.css"},"2":{"patterns":[{"include":"#escapes"}]}},"match":"(\\\\#)(-?(?!\\\\d)(?:[-a-zA-Z0-9_]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)(?=$|[\\\\s,.#)\\\\[:{>+~|]|/\\\\*)","name":"entity.other.attribute-name.id.css"},{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.entity.begin.bracket.square.css"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.entity.end.bracket.square.css"}},"name":"meta.attribute-selector.css","patterns":[{"include":"#comment-block"},{"include":"#string"},{"captures":{"1":{"name":"storage.modifier.ignore-case.css"}},"match":"(?<=[\\"'\\\\s]|^|\\\\*/)\\\\s*([iI])\\\\s*(?=[\\\\s\\\\]]|/\\\\*|$)"},{"captures":{"1":{"name":"string.unquoted.attribute-value.css","patterns":[{"include":"#escapes"}]}},"match":"(?<==)\\\\s*((?!/\\\\*)(?:[^\\\\\\\\\\"'\\\\s\\\\]]|\\\\\\\\.)+)"},{"include":"#escapes"},{"match":"[~|^$*]?=","name":"keyword.operator.pattern.css"},{"match":"\\\\|","name":"punctuation.separator.css"},{"captures":{"1":{"name":"entity.other.namespace-prefix.css","patterns":[{"include":"#escapes"}]}},"match":"(-?(?!\\\\d)(?:[\\\\w-]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+|\\\\*)(?=\\\\|(?!\\\\s|=|$|\\\\])(?:-?(?!\\\\d)|[\\\\\\\\\\\\w-]|[^\\\\x00-\\\\x7F]))"},{"captures":{"1":{"name":"entity.other.attribute-name.css","patterns":[{"include":"#escapes"}]}},"match":"(-?(?!\\\\d)(?>[\\\\w-]|[^\\\\x00-\\\\x7F]|\\\\\\\\(?:[0-9a-fA-F]{1,6}|.))+)\\\\s*(?=[~|^\\\\]$*=]|/\\\\*)"}]},{"include":"#pseudo-classes"},{"include":"#pseudo-elements"},{"include":"#functional-pseudo-classes"},{"match":"(?<![@\\\\w-])(?=[a-z]\\\\w*-)(?:(?![A-Z])[\\\\w-])+(?![(\\\\w-])","name":"entity.name.tag.custom.css"}]},"string":{"patterns":[{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"\\"|(?<!\\\\\\\\)(?=$|\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.double.css","patterns":[{"begin":"(?:\\\\G|^)(?=(?:[^\\\\\\\\\\"]|\\\\\\\\.)+$)","end":"$","name":"invalid.illegal.unclosed.string.css","patterns":[{"include":"#escapes"}]},{"include":"#escapes"}]},{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.css"}},"end":"'|(?<!\\\\\\\\)(?=$|\\\\n)","endCaptures":{"0":{"name":"punctuation.definition.string.end.css"}},"name":"string.quoted.single.css","patterns":[{"begin":"(?:\\\\G|^)(?=(?:[^\\\\\\\\']|\\\\\\\\.)+$)","end":"$","name":"invalid.illegal.unclosed.string.css","patterns":[{"include":"#escapes"}]},{"include":"#escapes"}]}]},"tag-names":{"match":"(?i)(?<![\\\\w:-])(?:a|abbr|acronym|address|applet|area|article|aside|audio|b|base|basefont|bdi|bdo|bgsound|big|blink|blockquote|body|br|button|canvas|caption|center|cite|code|col|colgroup|command|content|data|datalist|dd|del|details|dfn|dialog|dir|div|dl|dt|element|em|embed|fieldset|figcaption|figure|font|footer|form|frame|frameset|h[1-6]|head|header|hgroup|hr|html|i|iframe|image|img|input|ins|isindex|kbd|keygen|label|legend|li|link|listing|main|map|mark|marquee|math|menu|menuitem|meta|meter|multicol|nav|nextid|nobr|noembed|noframes|noscript|object|ol|optgroup|option|output|p|param|picture|plaintext|pre|progress|q|rb|rp|rt|rtc|ruby|s|samp|script|section|select|shadow|slot|small|source|spacer|span|strike|strong|style|sub|summary|sup|table|tbody|td|template|textarea|tfoot|th|thead|time|title|tr|track|tt|u|ul|var|video|wbr|xmp|altGlyph|altGlyphDef|altGlyphItem|animate|animateColor|animateMotion|animateTransform|circle|clipPath|color-profile|cursor|defs|desc|discard|ellipse|feBlend|feColorMatrix|feComponentTransfer|feComposite|feConvolveMatrix|feDiffuseLighting|feDisplacementMap|feDistantLight|feDropShadow|feFlood|feFuncA|feFuncB|feFuncG|feFuncR|feGaussianBlur|feImage|feMerge|feMergeNode|feMorphology|feOffset|fePointLight|feSpecularLighting|feSpotLight|feTile|feTurbulence|filter|font-face|font-face-format|font-face-name|font-face-src|font-face-uri|foreignObject|g|glyph|glyphRef|hatch|hatchpath|hkern|line|linearGradient|marker|mask|mesh|meshgradient|meshpatch|meshrow|metadata|missing-glyph|mpath|path|pattern|polygon|polyline|radialGradient|rect|set|solidcolor|stop|svg|switch|symbol|text|textPath|tref|tspan|use|view|vkern|annotation|annotation-xml|maction|maligngroup|malignmark|math|menclose|merror|mfenced|mfrac|mglyph|mi|mlabeledtr|mlongdiv|mmultiscripts|mn|mo|mover|mpadded|mphantom|mroot|mrow|ms|mscarries|mscarry|msgroup|msline|mspace|msqrt|msrow|mstack|mstyle|msub|msubsup|msup|mtable|mtd|mtext|mtr|munder|munderover|semantics)(?=[+~>\\\\s,.#|){:\\\\[]|/\\\\*|$)","name":"entity.name.tag.css"},"unicode-range":{"captures":{"0":{"name":"constant.other.unicode-range.css"},"1":{"name":"punctuation.separator.dash.unicode-range.css"}},"match":"(?<![\\\\w-])[Uu]\\\\+[0-9A-Fa-f?]{1,6}(?:(-)[0-9A-Fa-f]{1,6})?(?![\\\\w-])"},"url":{"begin":"(?i)(?<![\\\\w@-])(url)(\\\\()","beginCaptures":{"1":{"name":"support.function.url.css"},"2":{"name":"punctuation.section.function.begin.bracket.round.css"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.section.function.end.bracket.round.css"}},"name":"meta.function.url.css","patterns":[{"match":"[^'\\")\\\\s]+","name":"variable.parameter.url.css"},{"include":"#string"},{"include":"#comment-block"},{"include":"#escapes"}]}},"scopeName":"source.css"}`)),t=[e];export{t as default}; diff --git a/_nuxt/i3M2S4r6.js b/_nuxt/i3M2S4r6.js new file mode 100644 index 0000000..fafc371 --- /dev/null +++ b/_nuxt/i3M2S4r6.js @@ -0,0 +1 @@ +import{d as S,an as A,ao as b,c as i,e as u,n as c,C as e,ah as x,g as L,t as $,h as f,f as y,i as C,F as H,af as M,ag as h,ai as _,a9 as z,am as le,w as O,aJ as ce,ak as ue,al as ee,k as de,aa as R,B as U,aK as E,ar as q,x as V,aL as pe,aM as ge,r as T,E as fe,aN as me,aO as ye,a as be,u as ve,aP as he,s as ke,aQ as te,aR as xe,aS as _e,au as ae,aT as ne,aU as we,aV as $e,q as se,aW as Ce}from"./WKNqgS7_.js";import Se from"./D-llQu22.js";import"./g2z_gaTr.js";import"./CtS59gnC.js";import"./BneCoJRQ.js";const Ae={wrapper:{base:"flex items-center align-center text-center",horizontal:"w-full flex-row",vertical:"flex-col"},container:{base:"font-medium text-gray-700 dark:text-gray-200 flex",horizontal:"mx-3 whitespace-nowrap",vertical:"my-2"},border:{base:"flex border-gray-200 dark:border-gray-800",horizontal:"w-full",vertical:"h-full",size:{horizontal:{"2xs":"border-t",xs:"border-t-[2px]",sm:"border-t-[3px]",md:"border-t-[4px]",lg:"border-t-[5px]",xl:"border-t-[6px]"},vertical:{"2xs":"border-s",xs:"border-s-[2px]",sm:"border-s-[3px]",md:"border-s-[4px]",lg:"border-s-[5px]",xl:"border-s-[6px]"}},type:{solid:"border-solid",dotted:"border-dotted",dashed:"border-dashed"}},icon:{base:"flex-shrink-0 w-5 h-5"},avatar:{base:"flex-shrink-0",size:"2xs"},label:"text-sm",default:{size:"2xs",type:"solid"}},Ue={class:"flex flex-col lg:flex-row items-start gap-6"},Oe={class:"flex-1"},ze=S({inheritAttrs:!1,__name:"PageHeader",props:{headline:{type:String,default:void 0},title:{type:String,default:void 0},description:{type:String,default:void 0},icon:{type:String,default:void 0},links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(t){const r={wrapper:"relative border-b border-gray-200 dark:border-gray-800 py-8",container:"flex flex-col lg:flex-row lg:items-center lg:justify-between",headline:"mb-3 text-sm/6 font-semibold text-primary flex items-center gap-1.5",title:"text-3xl sm:text-4xl font-bold text-gray-900 dark:text-white tracking-tight",description:"mt-4 text-lg text-gray-500 dark:text-gray-400",icon:{wrapper:"flex",base:"w-10 h-10 flex-shrink-0 text-primary"},links:"flex flex-wrap items-center gap-1.5 mt-4 lg:mt-0"},l=t,{ui:s,attrs:a}=A("page.header",b(l,"ui"),r,b(l,"class"),!0);return(o,n)=>{var p;const g=z,m=le;return i(),u("div",_({class:e(s).wrapper},e(a)),[t.headline||o.$slots.headline?(i(),u("div",{key:0,class:c(e(s).headline)},[x(o.$slots,"headline",{},()=>[L($(t.headline),1)])],2)):f("",!0),y("div",Ue,[t.icon||o.$slots.icon?(i(),u("div",{key:0,class:c(e(s).icon.wrapper)},[x(o.$slots,"icon",{},()=>[C(g,{name:t.icon,class:c(e(s).icon.base)},null,8,["name","class"])])],2)):f("",!0),y("div",Oe,[y("div",{class:c(e(s).container)},[y("h1",{class:c(e(s).title)},[x(o.$slots,"title",{},()=>[L($(t.title),1)])],2),(p=t.links)!=null&&p.length||o.$slots.links?(i(),u("div",{key:0,class:c(e(s).links)},[x(o.$slots,"links",{},()=>[(i(!0),u(H,null,M(t.links,(v,d)=>(i(),h(m,_({key:d,ref_for:!0},{...v,target:v.target||"_blank",color:v.color||"white"},{onClick:v.click}),null,16,["onClick"]))),128))])],2)):f("",!0)],2),t.description||o.$slots.description?(i(),u("div",{key:0,class:c(e(s).description)},[x(o.$slots,"description",{},()=>[L($(t.description),1)])],2)):f("",!0),x(o.$slots,"default")])])],16)}}}),je=S({inheritAttrs:!1,__name:"ContentSurroundLink",props:{link:{type:Object,required:!0},icon:{type:String,default:void 0},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(t){const r={wrapper:"block px-6 py-8 border not-prose rounded-lg border-gray-200 dark:border-gray-800 hover:bg-gray-100/50 dark:hover:bg-gray-800/50 group",icon:{wrapper:"inline-flex items-center rounded-full p-1.5 bg-gray-100 dark:bg-gray-800 group-hover:bg-primary/10 ring-1 ring-gray-300 dark:ring-gray-700 mb-4 group-hover:ring-primary/50",base:"w-5 h-5 text-gray-900 dark:text-white group-hover:text-primary"},title:"font-medium text-gray-900 dark:text-white text-[15px] mb-1",description:"text-sm font-normal text-gray-500 dark:text-gray-400 line-clamp-2"},l=t,{ui:s,attrs:a}=A("content.surround.link",b(l,"ui"),r,b(l,"class"),!0);return(o,n)=>{const g=z,m=ce;return i(),h(m,_({to:t.link._path,class:e(s).wrapper},e(a)),{default:O(()=>[t.icon||t.link.icon?(i(),u("div",{key:0,class:c(e(s).icon.wrapper)},[C(g,{name:t.icon||t.link.icon,class:c(e(s).icon.base)},null,8,["name","class"])],2)):f("",!0),y("p",{class:c(e(s).title)},$(t.link.title),3),y("p",{class:c(e(s).description)},$(t.link.description),3)]),_:1},16,["to","class"])}}}),Ie={key:1,class:"hidden sm:block"},Be=S({inheritAttrs:!1,__name:"ContentSurround",props:{surround:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(t){const r={wrapper:"grid gap-8 sm:grid-cols-2",icon:{prev:"i-heroicons-arrow-left-20-solid",next:"i-heroicons-arrow-right-20-solid"},link:{}},l=t,{ui:s,attrs:a}=A("content.surround",b(l,"ui"),r,b(l,"class"),!0),[o,n]=l.surround||[];return(g,m)=>{const p=je;return i(),u("div",_({class:e(s).wrapper},e(a)),[e(o)?(i(),h(p,{key:0,link:e(o),ui:e(s).link,icon:e(s).icon.prev},null,8,["link","ui","icon"])):(i(),u("span",Ie," ")),e(n)?(i(),h(p,{key:2,link:e(n),ui:e(s).link,icon:e(s).icon.next,class:"text-right"},null,8,["link","ui","icon"])):f("",!0)],16)}}}),Le=S({inheritAttrs:!1,__name:"PageBody",props:{prose:{type:Boolean,default:!1},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(t){const r={wrapper:"mt-8 pb-24",prose:"prose prose-primary dark:prose-invert max-w-none"},l=t,{ui:s,attrs:a}=A("page.body",b(l,"ui"),r,b(l,"class"),!0);return(o,n)=>(i(),u("div",_({class:[e(s).wrapper,t.prose&&e(s).prose]},e(a)),[x(o.$slots,"default")],16))}}),B=ue(ee.ui.strategy,ee.ui.divider,Ae),Pe=S({components:{UIcon:z,UAvatar:R},inheritAttrs:!1,props:{label:{type:String,default:null},icon:{type:String,default:null},avatar:{type:Object,default:null},size:{type:String,default:()=>B.default.size,validator(t){return Object.keys(B.border.size.horizontal).includes(t)||Object.keys(B.border.size.vertical).includes(t)}},orientation:{type:String,default:"horizontal",validator:t=>["horizontal","vertical"].includes(t)},type:{type:String,default:()=>B.default.type,validator:t=>["solid","dotted","dashed"].includes(t)},class:{type:[String,Object,Array],default:()=>""},ui:{type:Object,default:()=>({})}},setup(t){const{ui:r,attrs:l}=A("divider",b(t,"ui"),B),s=U(()=>E(q(r.value.wrapper.base,r.value.wrapper[t.orientation]),t.class)),a=U(()=>q(r.value.container.base,r.value.container[t.orientation])),o=U(()=>q(r.value.border.base,r.value.border[t.orientation],r.value.border.size[t.orientation][t.size],r.value.border.type[t.type]));return{ui:r,attrs:l,wrapperClass:s,containerClass:a,borderClass:o}}});function Te(t,r,l,s,a,o){const n=z,g=R;return i(),u("div",_({class:t.wrapperClass},t.attrs),[y("div",{class:c(t.borderClass)},null,2),t.label||t.icon||t.avatar||t.$slots.default?(i(),u(H,{key:0},[y("div",{class:c(t.containerClass)},[x(t.$slots,"default",{},()=>[t.label?(i(),u("span",{key:0,class:c(t.ui.label)},$(t.label),3)):t.icon?(i(),h(n,{key:1,name:t.icon,class:c(t.ui.icon.base)},null,8,["name","class"])):t.avatar?(i(),h(g,_({key:2},{size:t.ui.avatar.size,...t.avatar},{class:t.ui.avatar.base}),null,16,["class"])):f("",!0)])],2),y("div",{class:c(t.borderClass)},null,2)],64)):f("",!0)],16)}const He=de(Pe,[["render",Te]]),Ne=S({inheritAttrs:!1,__name:"PageLinks",props:{title:{type:String,default:void 0},links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(t){const r=V(),l=U(()=>({wrapper:"space-y-3",title:"text-sm/6 font-semibold flex items-center gap-1.5",container:"space-y-3 lg:space-y-1.5",base:"flex items-center gap-1.5",active:"text-primary",inactive:"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200",icon:{base:"w-5 h-5 flex-shrink-0"},avatar:{base:"self-center",size:"2xs"},externalIcon:{name:r.ui.icons.external,base:"w-3 h-3 absolute top-0.5 -right-3.5 text-gray-400 dark:text-gray-500"},label:"text-sm/6 font-medium relative"})),s=t,{ui:a,attrs:o}=A("page.links",b(s,"ui"),l,b(s,"class"),!0);return(n,g)=>{const m=z,p=R,v=ge;return i(),u("div",_({class:e(a).wrapper},e(o)),[t.title||n.$slots.title?(i(),u("p",{key:0,class:c(e(a).title)},[x(n.$slots,"title",{},()=>[L($(t.title),1)])],2)):f("",!0),y("div",{class:c(e(a).container)},[x(n.$slots,"default",{},()=>[(i(!0),u(H,null,M(t.links,(d,k)=>(i(),h(v,_({key:k,ref_for:!0},e(pe)(d),{class:e(a).base,"active-class":e(a).active,"inactive-class":e(a).inactive,onClick:d.click}),{default:O(()=>[d.icon?(i(),h(m,{key:0,name:d.icon,class:c(e(E)(e(a).icon.base,d.iconClass))},null,8,["name","class"])):f("",!0),d.avatar?(i(),h(p,_({key:1,ref_for:!0},{size:e(a).avatar.size,...d.avatar},{class:e(E)(e(a).avatar.base,d.avatarClass)}),null,16,["class"])):f("",!0),y("span",{class:c(e(a).label)},[L($(d.label)+" ",1),d.target==="_blank"?(i(),h(m,{key:0,name:e(a).externalIcon.name,class:c(e(a).externalIcon.base)},null,8,["name","class"])):f("",!0)],2)]),_:2},1040,["class","active-class","inactive-class","onClick"]))),128))])],2)],16)}}}),qe=()=>{const t=T(),r=T([]),l=T([]),s=o=>{o.forEach(n=>{const g=n.target.id;n.isIntersecting?r.value=[...r.value,g]:r.value=r.value.filter(m=>m!==g)})},a=o=>{o.forEach(n=>{t.value&&t.value.observe(n)})};return fe(r,(o,n)=>{o.length===0?l.value=n:l.value=o}),me(()=>t.value=new IntersectionObserver(s)),ye(()=>{var o;return(o=t.value)==null?void 0:o.disconnect()}),{visibleHeadings:r,activeHeadings:l,updateHeadings:a}},Ee=["href","onClick"],re=S({inheritAttrs:!1,__name:"ContentTocLinks",props:{links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},emits:["move"],setup(t,{emit:r}){const l={wrapper:"space-y-1",base:"block text-sm/6 truncate",active:"text-primary",inactive:"text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200",depth:"ml-3"},s=t,a=r,o=be(),n=ve(),{activeHeadings:g,updateHeadings:m}=qe(),{ui:p,attrs:v}=A("content.toc.links",b(s,"ui"),l,b(s,"class"),!0);n.hooks.hookOnce("page:finish",()=>{m([...document.querySelectorAll("h2"),...document.querySelectorAll("h3")])});const d=k=>{const j=encodeURIComponent(k);o.push(`#${j}`),a("move",k)};return(k,j)=>{var P;const N=re;return(P=t.links)!=null&&P.length?(i(),u("ul",_({key:0,class:e(p).wrapper},e(v)),[(i(!0),u(H,null,M(t.links,w=>(i(),u("li",{key:w.text,class:c([e(p).wrapper,w.depth===3&&e(p).depth])},[y("a",{href:`#${w.id}`,class:c([e(p).base,e(g).includes(w.id)?e(p).active:e(p).inactive]),onClick:he(D=>d(w.id),["prevent"])},$(w.text),11,Ee),w.children?(i(),h(N,{key:0,links:w.children,ui:e(p)},null,8,["links","ui"])):f("",!0)],2))),128))],16)):f("",!0)}}}),Me=S({inheritAttrs:!1,__name:"ContentToc",props:{title:{type:String,default:"Table of Contents"},links:{type:Array,default:()=>[]},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(t){const r=V(),l=U(()=>({wrapper:"sticky top-[--header-height] bg-background/75 backdrop-blur -mx-4 sm:-mx-6 px-4 sm:px-6 lg:px-4 lg:-mx-4 overflow-y-auto max-h-[calc(100vh-var(--header-height))]",container:{base:"py-3 lg:py-8 border-b border-dashed border-gray-200 dark:border-gray-800 lg:border-0 space-y-3",empty:"lg:py-8 space-y-3"},button:{base:"flex items-center gap-1.5 lg:cursor-text lg:select-text w-full group",label:"font-semibold text-sm/6 truncate",trailingIcon:{name:r.ui.icons.chevron,base:"w-5 h-5 ms-auto transform transition-transform duration-200 flex-shrink-0 mr-1.5",active:"text-gray-700 dark:text-gray-200",inactive:"text-gray-500 dark:text-gray-400 group-hover:text-gray-700 dark:group-hover:text-gray-200 -rotate-90"}},links:{}})),s=t,{ui:a,attrs:o}=A("content.toc",b(s,"ui"),l,b(s,"class"),!0),n=T(!1);return(g,m)=>{var d,k;const p=z,v=re;return i(),u("nav",_({class:e(a).wrapper},e(o)),[y("div",{class:c([(d=t.links)!=null&&d.length?e(a).container.base:e(a).container.empty])},[x(g.$slots,"top"),(k=t.links)!=null&&k.length?(i(),u("button",{key:0,class:c(e(a).button.base),tabindex:"-1",onClick:m[0]||(m[0]=j=>n.value=!e(n))},[y("span",{class:c(e(a).button.label)},$(t.title),3),C(p,{name:e(a).button.trailingIcon.name,class:c(["lg:!hidden",[e(a).button.trailingIcon.base,e(n)?e(a).button.trailingIcon.active:e(a).button.trailingIcon.inactive]])},null,8,["name","class"])],2)):f("",!0),C(v,{links:t.links,ui:e(a).links,class:c([e(n)?"lg:block":"hidden lg:block"])},null,8,["links","ui","class"]),x(g.$slots,"bottom")],2)],16)}}}),Re={key:1},Qe=S({__name:"[...slug]",async setup(t){let r,l;const s=ke(),{toc:a,seo:o}=V(),{data:n}=([r,l]=te(()=>ne(s.path,()=>se(s.path).findOne(),"$vHqkxevve1")),r=await r,l(),r);if(!n.value)throw xe({statusCode:404,statusMessage:"Page not found",fatal:!0});const{data:g}=([r,l]=te(()=>ne(`${s.path}-surround`,()=>se().where({_extension:"md",navigation:{$ne:!1}}).only(["title","description","_path"]).findSurround(Ce(s.path)))),r=await r,l(),r);_e({title:n.value.title,ogTitle:`${n.value.title} - ${o==null?void 0:o.siteName}`,description:n.value.description,ogDescription:n.value.description});const m=U(()=>we(n.value)),p=U(()=>{var v,d,k;return[((v=a==null?void 0:a.bottom)==null?void 0:v.edit)&&{icon:"i-heroicons-pencil-square",label:"Edit this page",to:`${a.bottom.edit}/${(d=n==null?void 0:n.value)==null?void 0:d._file}`,target:"_blank"},...((k=a==null?void 0:a.bottom)==null?void 0:k.links)||[]].filter(Boolean)});return(v,d)=>{const k=ze,j=Se,N=Be,P=Le,w=He,D=Ne,oe=Me,ie=$e;return i(),h(ie,null,ae({default:O(()=>[C(k,{title:e(n).title,description:e(n).description,links:e(n).links,headline:e(m)},null,8,["title","description","links","headline"]),C(P,{prose:""},{default:O(()=>{var I;return[e(n).body?(i(),h(j,{key:0,value:e(n)},null,8,["value"])):f("",!0),(I=e(g))!=null&&I.length?(i(),u("hr",Re)):f("",!0),C(N,{surround:e(g)},null,8,["surround"])]}),_:1})]),_:2},[e(n).toc!==!1?{name:"right",fn:O(()=>{var I,F,J,K;return[C(oe,{title:(I=e(a))==null?void 0:I.title,links:(J=(F=e(n).body)==null?void 0:F.toc)==null?void 0:J.links},ae({_:2},[(K=e(a))!=null&&K.bottom?{name:"bottom",fn:O(()=>{var Q,W,G,X,Y,Z;return[y("div",{class:c(["hidden lg:block space-y-6",{"!mt-6":(G=(W=(Q=e(n).body)==null?void 0:Q.toc)==null?void 0:W.links)==null?void 0:G.length}])},[(Z=(Y=(X=e(n).body)==null?void 0:X.toc)==null?void 0:Y.links)!=null&&Z.length?(i(),h(w,{key:0,type:"dashed"})):f("",!0),C(D,{title:e(a).bottom.title,links:e(p)},null,8,["title","links"])],2)]}),key:"0"}:void 0]),1032,["title","links"])]}),key:"0"}:void 0]),1024)}}});export{Qe as default}; diff --git a/_nuxt/index.GovekSNP.css b/_nuxt/index.GovekSNP.css new file mode 100644 index 0000000..59cad3a --- /dev/null +++ b/_nuxt/index.GovekSNP.css @@ -0,0 +1 @@ +.background-gradient[data-v-98bf3305]:before{background:radial-gradient(250px circle at var(--x) var(--y),var(--279a9e71) 0,transparent 100%);will-change:background}.to[data-v-98bf3305]:hover{--tw-ring-color:var(--279a9e71)}.dark .background-gradient[data-v-98bf3305]:before{background:radial-gradient(250px circle at var(--x) var(--y),var(--11c76ebb) 0,transparent 100%)}.dark .to[data-v-98bf3305]:hover{--tw-ring-color:var(--11c76ebb)} diff --git a/_nuxt/jVz3gLGx.js b/_nuxt/jVz3gLGx.js new file mode 100644 index 0000000..5cc4804 --- /dev/null +++ b/_nuxt/jVz3gLGx.js @@ -0,0 +1 @@ +import{C as d,E as b,s as y,a5 as w,bf as D,p as g,d as H,b6 as S,bg as _,S as s}from"./WKNqgS7_.js";import q from"./D-llQu22.js";import x from"./Df0uYweg.js";import"./g2z_gaTr.js";import"./CtS59gnC.js";import"./BneCoJRQ.js";const a=(u,p=y())=>{const e=d(u),f=g();b(()=>d(u),(n=e)=>{if(!p.path||!n)return;const t=Object.assign({},(n==null?void 0:n.head)||{});t.meta=[...t.meta||[]],t.link=[...t.link||[]];const r=t.title||(n==null?void 0:n.title);r&&(t.title=r),f.public.content.host;const c=(t==null?void 0:t.description)||(n==null?void 0:n.description);c&&t.meta.filter(l=>l.name==="description").length===0&&t.meta.push({name:"description",content:c}),t!=null&&t.image||(n==null||n.image),w(()=>D(t))},{immediate:!0})},$=H({name:"ContentDoc",props:{tag:{type:String,required:!1,default:"div"},excerpt:{type:Boolean,default:!1},path:{type:String,required:!1,default:void 0},query:{type:Object,required:!1,default:void 0},head:{type:Boolean,required:!1,default:void 0}},render(u){const{contentHead:p}=g().public.content,e=S(),{tag:f,excerpt:m,path:n,query:t,head:r}=u,c=r===void 0?p:r,l={...t||{},path:n||(t==null?void 0:t.path)||_(y().path),find:"one"},C=(o,i)=>s("pre",null,JSON.stringify({message:"You should use slots with <ContentDoc>",slot:o,data:i},null,2));return s(x,l,{default:e!=null&&e.default?({data:o,refresh:i,isPartial:v})=>{var h;return c&&a(o),(h=e.default)==null?void 0:h.call(e,{doc:o,refresh:i,isPartial:v,excerpt:m,...this.$attrs})}:({data:o})=>(c&&a(o),s(q,{value:o,excerpt:m,tag:f,...this.$attrs},{empty:i=>e!=null&&e.empty?e.empty(i):C("default",o)})),empty:o=>{var i;return((i=e==null?void 0:e.empty)==null?void 0:i.call(e,o))||s("p",null,"Document is empty, overwrite this content with #empty slot in <ContentDoc>.")},"not-found":o=>{var i;return((i=e==null?void 0:e["not-found"])==null?void 0:i.call(e,o))||s("p",null,"Document not found, overwrite this content with #not-found slot in <ContentDoc>.")}})}}),T=$;export{T as default}; diff --git a/_nuxt/keK8bHwS.js b/_nuxt/keK8bHwS.js new file mode 100644 index 0000000..c91b4aa --- /dev/null +++ b/_nuxt/keK8bHwS.js @@ -0,0 +1 @@ +const e=Object.freeze(JSON.parse(`{"displayName":"TSX","name":"tsx","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.tsx"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[:=(,\\\\[?+!>]|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^yield|[^\\\\._$0-9A-Za-z]yield|^throw|[^\\\\._$0-9A-Za-z]throw|^in|[^\\\\._$0-9A-Za-z]in|^of|[^\\\\._$0-9A-Za-z]of|^typeof|[^\\\\._$0-9A-Za-z]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"meta.objectliteral.tsx","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.tsx"}},"name":"meta.array.literal.tsx","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"variable.parameter.tsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync)\\\\s+)?([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?==>)","name":"meta.arrow.tsx"},{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync))?((?<![})!\\\\]])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.tsx","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.tsx"}},"end":"((?<=\\\\}|\\\\S)(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.tsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.tsx","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.tsx"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.tsx"}]},"brackets":{"patterns":[{"begin":"{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"\\\\]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"include":"#jsx"}]},"class-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.type.class.tsx"}},"end":"(?<=\\\\})","name":"meta.class.tsx","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.tsx"}},"match":"[_$A-Za-z][_$0-9A-Za-z]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|\\\\/[\\\\/*])","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"storage.type.class.tsx"}},"end":"(?<=\\\\})","name":"meta.class.tsx","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=\\\\s|[;),}\\\\]:\\\\-+]|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(extends|implements)\\\\b)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.tsx"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.tsx"},"2":{"name":"punctuation.accessor.tsx"},"3":{"name":"punctuation.accessor.optional.tsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))(?=\\\\s*[_$A-Za-z][_$0-9A-Za-z]*(\\\\s*\\\\??\\\\.\\\\s*[_$A-Za-z][_$0-9A-Za-z]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.tsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.tsx"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.tsx"}},"name":"comment.block.documentation.tsx","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.tsx"},"2":{"name":"storage.type.internaldeclaration.tsx"},"3":{"name":"punctuation.decorator.internaldeclaration.tsx"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.tsx"}},"name":"comment.block.tsx"},{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.tsx"},"2":{"name":"comment.line.double-slash.tsx"},"3":{"name":"punctuation.definition.comment.tsx"},"4":{"name":"storage.type.internaldeclaration.tsx"},"5":{"name":"punctuation.decorator.internaldeclaration.tsx"}},"contentName":"comment.line.double-slash.tsx","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.tsx"},{"captures":{"1":{"name":"keyword.control.loop.tsx"},"2":{"name":"entity.name.label.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.tsx"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.tsx"}},"end":"(?=[;}]|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.tsx"},{"include":"#if-statement"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.tsx"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"meta.block.tsx","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.tsx"}]},"decorator":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\@","beginCaptures":{"0":{"name":"punctuation.decorator.tsx"}},"end":"(?=\\\\s)","name":"meta.decorator.tsx","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.tsx","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.tsx","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"name":"meta.parameter.object-binding-pattern.tsx","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"name":"meta.paramter.array-binding-pattern.tsx","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"variable.parameter.tsx"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.tsx","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$0-9A-Za-z]of|^in|[^\\\\._$0-9A-Za-z]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.tsx","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"meta.definition.variable.tsx variable.other.readwrite.tsx"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"meta.definition.variable.tsx variable.other.constant.tsx"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.tsx"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.tsx","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.tsx"},"2":{"name":"entity.name.tag.directive.tsx"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.tsx"}},"name":"meta.tag.tsx","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.tsx"},{"match":"=","name":"keyword.operator.assignment.tsx"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.tsx"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.tsx"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!'))|[^*\\\\\\\\])*?'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([''\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.type.enum.tsx"},"5":{"name":"entity.name.type.enum.tsx"}},"end":"(?<=\\\\})","name":"meta.enum.declaration.tsx","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"patterns":[{"include":"#comment"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)","beginCaptures":{"0":{"name":"variable.other.enummember.tsx"}},"end":"(?=,|\\\\}|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\])))","end":"(?=,|\\\\}|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"keyword.control.as.tsx"},"3":{"name":"storage.type.namespace.tsx"},"4":{"name":"entity.name.type.module.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:(?:\\\\s*(=))|(?:\\\\s+(default)(?=\\\\s+)))","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"keyword.control.type.tsx"},"3":{"name":"keyword.operator.assignment.tsx"},"4":{"name":"keyword.control.default.tsx"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.export.default.tsx","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[{*])|((?=\\\\s*[_$A-Za-z][_$0-9A-Za-z]*(\\\\s|,))(?!\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"keyword.control.type.tsx"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.export.tsx","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"entity.name.function.tsx variable.language.this.tsx"},"4":{"name":"entity.name.function.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"variable.parameter.tsx variable.language.this.tsx"},"4":{"name":"variable.parameter.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[:,]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.tsx"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.tsx"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.tsx"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.tsx"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.tsx"},"2":{"name":"keyword.generator.asterisk.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.tsx"},{"include":"#typeof-operator"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.tsx"},{"captures":{"1":{"name":"keyword.control.as.tsx"},"2":{"name":"storage.modifier.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[;,:})\\\\]]))"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.tsx"},"2":{"name":"keyword.control.satisfies.tsx"}},"end":"(?=^|[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.tsx"},{"match":"\\\\*=|(?<!\\\\()/=|%=|\\\\+=|-=","name":"keyword.operator.assignment.compound.tsx"},{"match":"\\\\&=|\\\\^=|<<=|>>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.tsx"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.tsx"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.tsx"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.tsx"},{"captures":{"1":{"name":"keyword.operator.logical.tsx"},"2":{"name":"keyword.operator.assignment.compound.tsx"},"3":{"name":"keyword.operator.arithmetic.tsx"}},"match":"(?<=[_$0-9A-Za-z])(!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.tsx"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.tsx"},{"match":"=","name":"keyword.operator.assignment.tsx"},{"match":"--","name":"keyword.operator.decrement.tsx"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.tsx"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.tsx"},{"begin":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.tsx"},"2":{"name":"keyword.operator.arithmetic.tsx"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.tsx"},"2":{"name":"keyword.operator.arithmetic.tsx"}},"match":"(?<=[_$0-9A-Za-z)\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#jsx"},{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?(=|:|;|,|\\\\}|$))","beginCaptures":{"1":{"name":"storage.modifier.tsx"}},"end":"(?=\\\\}|;|,|$|(^(?!\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?(=|:|;|,|$))))|(?<=\\\\})","name":"meta.field.declaration.tsx","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.tsx entity.name.function.tsx"},"2":{"name":"keyword.operator.optional.tsx"},"3":{"name":"keyword.operator.definiteassignment.tsx"}},"match":"(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)(?:(\\\\?)|(!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.property.tsx variable.object.property.tsx"},{"match":"\\\\?","name":"keyword.operator.optional.tsx"},{"match":"!","name":"keyword.operator.definiteassignment.tsx"}]},"for-loop":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*))await)?\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.tsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.tsx"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.tsx"}]},"function-call":{"patterns":[{"begin":"(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.tsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","end":"(?<=>)(?!(((([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))|(?<=[)]))(<\\\\s*[{\\\\[(]\\\\s*$))","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*[{\\\\[(]\\\\s*$))","name":"meta.function-call.tsx","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.tsx punctuation.accessor.optional.tsx"},{"match":"!","name":"meta.function-call.tsx keyword.operator.definiteassignment.tsx"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.tsx"}]},"function-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$A-Za-z][_$0-9A-Za-z]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.async.tsx"},"4":{"name":"storage.type.function.tsx"},"5":{"name":"keyword.generator.asterisk.tsx"},"6":{"name":"meta.definition.function.tsx entity.name.function.tsx"}},"end":"(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|(?<=\\\\})","name":"meta.function.tsx","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$A-Za-z][_$0-9A-Za-z]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"storage.type.function.tsx"},"3":{"name":"keyword.generator.asterisk.tsx"},"4":{"name":"meta.definition.function.tsx entity.name.function.tsx"}},"end":"(?=;)|(?<=\\\\})","name":"meta.function.expression.tsx","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.function.tsx entity.name.function.tsx"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.tsx"}},"name":"meta.parameters.tsx","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.tsx"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"},"3":{"name":"entity.name.function.tsx"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*)?([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"},"3":{"name":"variable.other.constant.property.tsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])"},{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"},"3":{"name":"variable.other.property.tsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"},{"match":"([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])","name":"variable.other.constant.tsx"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"variable.other.readwrite.tsx"}]},"if-statement":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|\\\\})","patterns":[{"include":"#comment"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.tsx"},"2":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tsx"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.tsx"},"2":{"name":"keyword.other.tsx"}},"name":"string.regexp.tsx","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[:(])(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"keyword.control.import.tsx"},"4":{"name":"keyword.control.type.tsx"}},"end":"(?<!^import|[^\\\\._$0-9A-Za-z]import)(?=;|$|^)","name":"meta.import.tsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=^import|[^\\\\._$0-9A-Za-z]import)(?!\\\\s*[\\"'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.tsx"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"keyword.control.import.tsx"},"4":{"name":"keyword.control.type.tsx"},"5":{"name":"variable.other.readwrite.alias.tsx"},"6":{"name":"keyword.operator.assignment.tsx"},"7":{"name":"keyword.control.require.tsx"},"8":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"name":"meta.import-equals.external.tsx","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"keyword.control.import.tsx"},"4":{"name":"keyword.control.type.tsx"},"5":{"name":"variable.other.readwrite.alias.tsx"},"6":{"name":"keyword.operator.assignment.tsx"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.tsx","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.tsx"},"2":{"name":"punctuation.accessor.tsx"},"3":{"name":"punctuation.accessor.optional.tsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"variable.other.readwrite.tsx"}]}]},"import-export-assert-clause":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.tsx"},"2":{"name":"keyword.control.assert.tsx"},"3":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"(?:[_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object-literal.key.tsx"},{"match":":","name":"punctuation.separator.key-value.tsx"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"meta.block.tsx","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.tsx"},"2":{"name":"keyword.control.default.tsx"},"3":{"name":"constant.language.import-export-all.tsx"},"4":{"name":"variable.other.readwrite.tsx"},"5":{"name":"keyword.control.as.tsx"},"6":{"name":"keyword.control.default.tsx"},"7":{"name":"variable.other.readwrite.alias.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(?:(\\\\btype)\\\\s+)?(?:(\\\\bdefault)|(\\\\*)|(\\\\b[_$A-Za-z][_$0-9A-Za-z]*)))\\\\s+(as)\\\\s+(?:(default(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([_$A-Za-z][_$0-9A-Za-z]*))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.tsx"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.tsx"},{"captures":{"1":{"name":"keyword.control.type.tsx"},"2":{"name":"variable.other.readwrite.alias.tsx"}},"match":"(?:(\\\\btype)\\\\s+)?([_$A-Za-z][_$0-9A-Za-z]*)"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.tsx"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"meta.brace.square.tsx"},"3":{"name":"variable.parameter.tsx"}},"end":"(\\\\])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.tsx"},"2":{"name":"keyword.operator.optional.tsx"}},"name":"meta.indexer.declaration.tsx","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([+-])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$A-Za-z][_$0-9A-Za-z]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"meta.brace.square.tsx"},"4":{"name":"entity.name.type.tsx"},"5":{"name":"keyword.operator.expression.in.tsx"}},"end":"(\\\\])([+-])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.tsx"},"2":{"name":"keyword.operator.type.modifier.tsx"},"3":{"name":"keyword.operator.optional.tsx"}},"name":"meta.indexer.mappedtype.declaration.tsx","patterns":[{"captures":{"1":{"name":"keyword.control.as.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^\\\\]]+(\\\\])(?={@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"({)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^|}\\\\s*]|\\\\*[/])+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^{}@\\\\s|*]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.tsx"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s+instanceof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\s*[(]))))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.type.interface.tsx"}},"end":"(?<=\\\\})","name":"meta.interface.tsx","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.tsx"}},"match":"[_$A-Za-z][_$0-9A-Za-z]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G({)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"jsx":{"patterns":[{"include":"#jsx-tag-without-attributes-in-expression"},{"include":"#jsx-tag-in-expression"}]},"jsx-children":{"patterns":[{"include":"#jsx-tag-without-attributes"},{"include":"#jsx-tag"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-entities"}]},"jsx-entities":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.entity.tsx"},"3":{"name":"punctuation.definition.entity.tsx"}},"match":"(&)([a-zA-Z0-9]+|#\\\\d+|#x[0-9a-fA-F]+)(;)","name":"constant.character.entity.tsx"}]},"jsx-evaluated-code":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.tsx"}},"contentName":"meta.embedded.expression.tsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.section.embedded.end.tsx"}},"patterns":[{"include":"#expression"}]},"jsx-string-double-quoted":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tsx"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.tsx"}},"name":"string.quoted.double.tsx","patterns":[{"include":"#jsx-entities"}]},"jsx-string-single-quoted":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tsx"}},"end":"'","endCaptures":{"0":{"name":"punctuation.definition.string.end.tsx"}},"name":"string.quoted.single.tsx","patterns":[{"include":"#jsx-entities"}]},"jsx-tag":{"begin":"(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>))","end":"(/>)|(?:(</)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>))","endCaptures":{"1":{"name":"punctuation.definition.tag.end.tsx"},"2":{"name":"punctuation.definition.tag.begin.tsx"},"3":{"name":"entity.name.tag.namespace.tsx"},"4":{"name":"punctuation.separator.namespace.tsx"},"5":{"name":"entity.name.tag.tsx"},"6":{"name":"support.class.component.tsx"},"7":{"name":"punctuation.definition.tag.end.tsx"}},"name":"meta.tag.tsx","patterns":[{"begin":"(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.tsx"},"2":{"name":"entity.name.tag.namespace.tsx"},"3":{"name":"punctuation.separator.namespace.tsx"},"4":{"name":"entity.name.tag.tsx"},"5":{"name":"support.class.component.tsx"}},"end":"(?=[/]?>)","patterns":[{"include":"#comment"},{"include":"#type-arguments"},{"include":"#jsx-tag-attributes"}]},{"begin":"(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.end.tsx"}},"contentName":"meta.jsx.children.tsx","end":"(?=</)","patterns":[{"include":"#jsx-children"}]}]},"jsx-tag-attribute-assignment":{"match":"=(?=\\\\s*(?:'|\\"|{|/\\\\*|//|\\\\n))","name":"keyword.operator.assignment.tsx"},"jsx-tag-attribute-name":{"captures":{"1":{"name":"entity.other.attribute-name.namespace.tsx"},"2":{"name":"punctuation.separator.namespace.tsx"},"3":{"name":"entity.other.attribute-name.tsx"}},"match":"\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(:))?([_$A-Za-z][-_$0-9A-Za-z]*)(?=\\\\s|=|/?>|/\\\\*|//)"},"jsx-tag-attributes":{"begin":"\\\\s+","end":"(?=[/]?>)","name":"meta.tag.attributes.tsx","patterns":[{"include":"#comment"},{"include":"#jsx-tag-attribute-name"},{"include":"#jsx-tag-attribute-assignment"},{"include":"#jsx-string-double-quoted"},{"include":"#jsx-string-single-quoted"},{"include":"#jsx-evaluated-code"},{"include":"#jsx-tag-attributes-illegal"}]},"jsx-tag-attributes-illegal":{"match":"\\\\S+","name":"invalid.illegal.attribute.tsx"},"jsx-tag-in-expression":{"begin":"(?<!\\\\+\\\\+|--)(?<=[({\\\\[,?=>:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^default|[^\\\\._$0-9A-Za-z]default|^yield|[^\\\\._$0-9A-Za-z]yield|^)\\\\s*(?!<\\\\s*[_$A-Za-z][_$0-9A-Za-z]*((\\\\s+extends\\\\s+[^=>])|,))(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>))","end":"(?!(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))(?=((<\\\\s*)|(\\\\s+))(?!\\\\?)|\\\\/?>))","patterns":[{"include":"#jsx-tag"}]},"jsx-tag-without-attributes":{"begin":"(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>)","beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.tsx"},"2":{"name":"entity.name.tag.namespace.tsx"},"3":{"name":"punctuation.separator.namespace.tsx"},"4":{"name":"entity.name.tag.tsx"},"5":{"name":"support.class.component.tsx"},"6":{"name":"punctuation.definition.tag.end.tsx"}},"contentName":"meta.jsx.children.tsx","end":"(</)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>)","endCaptures":{"1":{"name":"punctuation.definition.tag.begin.tsx"},"2":{"name":"entity.name.tag.namespace.tsx"},"3":{"name":"punctuation.separator.namespace.tsx"},"4":{"name":"entity.name.tag.tsx"},"5":{"name":"support.class.component.tsx"},"6":{"name":"punctuation.definition.tag.end.tsx"}},"name":"meta.tag.without-attributes.tsx","patterns":[{"include":"#jsx-children"}]},"jsx-tag-without-attributes-in-expression":{"begin":"(?<!\\\\+\\\\+|--)(?<=[({\\\\[,?=>:*]|&&|\\\\|\\\\||\\\\?|\\\\*\\\\/|^await|[^\\\\._$0-9A-Za-z]await|^return|[^\\\\._$0-9A-Za-z]return|^default|[^\\\\._$0-9A-Za-z]default|^yield|[^\\\\._$0-9A-Za-z]yield|^)\\\\s*(?=(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>))","end":"(?!(<)\\\\s*(?:([_$A-Za-z][-_$0-9A-Za-z.]*)(?<!\\\\.|-)(:))?((?:[a-z][a-z0-9]*|([_$A-Za-z][-_$0-9A-Za-z.]*))(?<!\\\\.|-))?\\\\s*(>))","patterns":[{"include":"#jsx-tag-without-attributes"}]},"label":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.tsx"},"2":{"name":"punctuation.separator.label.tsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.tsx"},"2":{"name":"punctuation.separator.label.tsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.modifier.async.tsx"},"5":{"name":"storage.type.tsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.modifier.async.tsx"},"5":{"name":"keyword.operator.new.tsx"},"6":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.modifier.tsx"},"4":{"name":"storage.modifier.async.tsx"},"5":{"name":"storage.type.property.tsx"},"6":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??)\\\\s*[(<])","end":"(?=\\\\(|<)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"meta.definition.method.tsx entity.name.function.tsx"},{"match":"\\\\?","name":"keyword.operator.optional.tsx"}]},"namespace-declaration":{"begin":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[_$A-Za-z\\"'\`]))","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.type.namespace.tsx"}},"end":"(?<=\\\\})|(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.namespace.declaration.tsx","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.type.module.tsx"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.tsx"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$A-Za-z][_$0-9A-Za-z]*)|(\\\\s*[(]))))","name":"new.expr.tsx","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.tsx"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.tsx"}},"match":"\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.tsx"},{"captures":{"1":{"name":"storage.type.numeric.bigint.tsx"}},"match":"\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.tsx"},{"captures":{"1":{"name":"storage.type.numeric.bigint.tsx"}},"match":"\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.tsx"},{"captures":{"0":{"name":"constant.numeric.decimal.tsx"},"1":{"name":"meta.delimiter.decimal.period.tsx"},"2":{"name":"storage.type.numeric.bigint.tsx"},"3":{"name":"meta.delimiter.decimal.period.tsx"},"4":{"name":"storage.type.numeric.bigint.tsx"},"5":{"name":"meta.delimiter.decimal.period.tsx"},"6":{"name":"storage.type.numeric.bigint.tsx"},"7":{"name":"storage.type.numeric.bigint.tsx"},"8":{"name":"meta.delimiter.decimal.period.tsx"},"9":{"name":"storage.type.numeric.bigint.tsx"},"10":{"name":"meta.delimiter.decimal.period.tsx"},"11":{"name":"storage.type.numeric.bigint.tsx"},"12":{"name":"meta.delimiter.decimal.period.tsx"},"13":{"name":"storage.type.numeric.bigint.tsx"},"14":{"name":"storage.type.numeric.bigint.tsx"}},"match":"(?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.tsx"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.tsx"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"variable.object.property.tsx"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.tsx"},{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"},"3":{"name":"variable.other.constant.object.property.tsx"},"4":{"name":"variable.other.object.property.tsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(?:(\\\\#?[A-Z][_$\\\\dA-Z]*)|(\\\\#?[_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"},{"captures":{"1":{"name":"variable.other.constant.object.tsx"},"2":{"name":"variable.other.object.tsx"}},"match":"(?:([A-Z][_$\\\\dA-Z]*)|([_$A-Za-z][_$0-9A-Za-z]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$A-Za-z][_$0-9A-Za-z]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"meta.objectliteral.tsx","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"storage.type.property.tsx"},"3":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?[(])","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"storage.type.property.tsx"},"3":{"name":"keyword.generator.asterisk.tsx"}},"end":"(?=\\\\(|<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[(<]))","name":"meta.object.member.tsx meta.object-literal.key.tsx","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\'\\\\\\"\\\\\`])","end":"(?=:)|((?<=[\\\\'\\\\\\"\\\\\`])(?=((\\\\s*[(<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.tsx meta.object-literal.key.tsx","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([(<,}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.tsx meta.object-literal.key.tsx","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[\\\\]\\\\'\\\\\\"\\\\\`])(?=\\\\s*[(<])","end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.tsx","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.tsx"},"1":{"name":"constant.numeric.decimal.tsx"}},"match":"(?![_$A-Za-z])([\\\\d]+)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.tsx"},{"captures":{"0":{"name":"meta.object-literal.key.tsx"},"1":{"name":"entity.name.function.tsx"}},"match":"(?:([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.tsx"},{"captures":{"0":{"name":"meta.object-literal.key.tsx"}},"match":"(?:[_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.tsx"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.tsx"}},"end":"(?=,|\\\\})","name":"meta.object.member.tsx","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.tsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.tsx"},{"captures":{"1":{"name":"keyword.control.as.tsx"},"2":{"name":"storage.modifier.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.tsx"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.tsx"},"2":{"name":"keyword.control.satisfies.tsx"}},"end":"(?=[;),}\\\\]:?\\\\-+>]|\\\\|\\\\||\\\\&\\\\&|!==|$|^|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.tsx","patterns":[{"include":"#type"}]},{"begin":"(?=[_$A-Za-z][_$0-9A-Za-z]*\\\\s*=)","end":"(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.tsx","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.tsx punctuation.separator.key-value.tsx"}},"end":"(?=,|\\\\})","name":"meta.object.member.tsx","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"},"2":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.tsx"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"entity.name.function.tsx variable.language.this.tsx"},"4":{"name":"entity.name.function.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"variable.parameter.tsx variable.language.this.tsx"},"4":{"name":"variable.parameter.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*[eE][+-]?\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)\\\\d[0-9_]*(n)?\\\\b)|(?:\\\\b\\\\d[0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$A-Za-z][_$0-9A-Za-z]*)|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.tsx"},"2":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.tsx"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?=[,)])|(?==[^>])","name":"meta.type.annotation.tsx","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$0-9A-Za-z]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.tsx"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.tsx meta.return.type.arrow.tsx keyword.operator.type.annotation.tsx"}},"contentName":"meta.arrow.tsx meta.return.type.arrow.tsx","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.tsx"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.tsx"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.tsx"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tsx"}},"end":"(\\")|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.tsx"},"2":{"name":"invalid.illegal.newline.tsx"}},"name":"string.quoted.double.tsx","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tsx"}},"end":"(\\\\')|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.tsx"},"2":{"name":"invalid.illegal.newline.tsx"}},"name":"string.quoted.single.tsx","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[=(:,\\\\[?+!]|^return|[^\\\\._$0-9A-Za-z]return|^case|[^\\\\._$0-9A-Za-z]case|=>|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.tsx"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.tsx"},"2":{"name":"keyword.other.tsx"}},"name":"string.regexp.tsx","patterns":[{"include":"#regexp"}]},{"begin":"((?<![_$0-9A-Za-z)\\\\]]|\\\\+\\\\+|--|}|\\\\*\\\\/)|((?<=^return|[^\\\\._$0-9A-Za-z]return|^case|[^\\\\._$0-9A-Za-z]case))\\\\s*)\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tsx"}},"end":"(/)([dgimsuy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.tsx"},"2":{"name":"keyword.other.tsx"}},"name":"string.regexp.tsx","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdDtrnvf]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[bB]|\\\\^|\\\\$","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\[1-9]\\\\d*|\\\\\\\\k<([a-zA-Z_$][\\\\w$]*)>"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|(?:\\\\?<([a-zA-Z_$][\\\\w$]*)>))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?<![:|&])(?=$|^|[{};,]|//)","name":"meta.return.type.tsx","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?<![:|&])((?=[{};,]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.tsx","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[:|&])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.tsx"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.tsx"},"single-line-comment-consuming-line-ending":{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.tsx"},"2":{"name":"comment.line.double-slash.tsx"},"3":{"name":"punctuation.definition.comment.tsx"},"4":{"name":"storage.type.internaldeclaration.tsx"},"5":{"name":"punctuation.decorator.internaldeclaration.tsx"}},"contentName":"comment.line.double-slash.tsx","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\{[0-9A-Fa-f]+\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.tsx"},"super-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.tsx"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*[(]\\\\s*[\\\\\\"\\\\'\\\\\`]))","name":"keyword.operator.expression.import.tsx"}]},"support-objects":{"patterns":[{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.tsx"},{"captures":{"1":{"name":"keyword.control.import.tsx"},"2":{"name":"punctuation.accessor.tsx"},"3":{"name":"punctuation.accessor.optional.tsx"},"4":{"name":"support.variable.property.importmeta.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.tsx"},"2":{"name":"punctuation.accessor.tsx"},"3":{"name":"punctuation.accessor.optional.tsx"},"4":{"name":"support.variable.property.target.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.tsx"},"2":{"name":"punctuation.accessor.optional.tsx"},"3":{"name":"support.variable.property.tsx"},"4":{"name":"support.constant.tsx"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.tsx"},"2":{"name":"support.type.object.module.tsx"},"3":{"name":"punctuation.accessor.tsx"},"4":{"name":"punctuation.accessor.optional.tsx"},"5":{"name":"support.type.object.module.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"switch-statement.expr.tsx","patterns":[{"include":"#comment"},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.tsx"},"2":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"name":"switch-expression.expr.tsx","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"(?=\\\\})","name":"switch-block.expr.tsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.tsx"}},"end":"(?=:)","name":"case-clause.expr.tsx","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.tsx punctuation.definition.section.case-statement.tsx"},"2":{"name":"meta.block.tsx punctuation.definition.block.tsx"}},"contentName":"meta.block.tsx","end":"\\\\}","endCaptures":{"0":{"name":"meta.block.tsx punctuation.definition.block.tsx"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.tsx punctuation.definition.section.case-statement.tsx"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.tsx"},"2":{"name":"string.template.tsx punctuation.definition.string.template.begin.tsx"}},"contentName":"string.template.tsx","end":"\`","endCaptures":{"0":{"name":"string.template.tsx punctuation.definition.string.template.end.tsx"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\`)","end":"(?=\`)","patterns":[{"begin":"(?=(([_$A-Za-z][_$0-9A-Za-z]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$A-Za-z][_$0-9A-Za-z]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$A-Za-z][_$0-9A-Za-z]*)","name":"entity.name.function.tagged-template.tsx"}]},{"include":"#type-arguments"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$A-Za-z][_$0-9A-Za-z]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))(?=\\\\s*([<>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>(]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.tsx"}},"end":"(?=\`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.tsx"}},"contentName":"meta.embedded.line.tsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.tsx"}},"name":"meta.template.expression.tsx","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)?(\`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.tsx"},"2":{"name":"string.template.tsx punctuation.definition.string.template.begin.tsx"}},"contentName":"string.template.tsx","end":"\`","endCaptures":{"0":{"name":"string.template.tsx punctuation.definition.string.template.end.tsx"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.tsx"}},"contentName":"meta.embedded.line.tsx","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.tsx"}},"name":"meta.template.expression.tsx","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^\\\\d])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.tsx"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.tsx"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.tsx"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.type.type.tsx"},"4":{"name":"entity.name.type.alias.tsx"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","name":"meta.type.declaration.tsx","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.tsx"},"2":{"name":"keyword.control.intrinsic.tsx"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.tsx"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?<![:|&])(?!\\\\s*[|&]\\\\s+)((?=^|[,);}\\\\]]|//)|(?==[^>])|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.tsx","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.tsx"}},"end":"(?<![:|&])((?=[,);}\\\\]]|\\\\/\\\\/)|(?==[^>])|(?=^\\\\s*$)|((?<=[}>\\\\])]|[_$A-Za-z])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.tsx","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.tsx"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.tsx"}},"name":"meta.type.parameters.tsx","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.tsx"},"type-conditional":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.tsx"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.tsx"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.tsx"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*<)","beginCaptures":{"1":{"name":"meta.type.constructor.tsx storage.modifier.tsx"},"2":{"name":"meta.type.constructor.tsx keyword.control.new.tsx"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.control.new.tsx"}},"end":"(?<=\\\\))","name":"meta.type.constructor.tsx","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=[(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.tsx","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.tsx"}},"end":"(?<!=>)(?<![|&])(?=[,\\\\]){}=;>:?]|//|$)","name":"meta.type.function.return.tsx","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.tsx"}},"end":"(?<!=>)(?<![|&])((?=[,\\\\]){}=;:?>]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.tsx","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.tsx"},"2":{"name":"entity.name.type.tsx"},"3":{"name":"keyword.operator.expression.extends.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([_$A-Za-z][_$0-9A-Za-z]*)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.tsx"}]},"type-name":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.tsx"},"2":{"name":"punctuation.accessor.tsx"},"3":{"name":"punctuation.accessor.optional.tsx"},"4":{"name":"meta.type.parameters.tsx punctuation.definition.typeparameters.begin.tsx"}},"contentName":"meta.type.parameters.tsx","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.tsx punctuation.definition.typeparameters.end.tsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.tsx"},"2":{"name":"meta.type.parameters.tsx punctuation.definition.typeparameters.begin.tsx"}},"contentName":"meta.type.parameters.tsx","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.tsx punctuation.definition.typeparameters.end.tsx"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.tsx"},"2":{"name":"punctuation.accessor.tsx"},"3":{"name":"punctuation.accessor.optional.tsx"}},"match":"([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[\\\\d])))"},{"match":"[_$A-Za-z][_$0-9A-Za-z]*","name":"entity.name.type.tsx"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.tsx"}},"name":"meta.object.type.tsx","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.tsx"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.tsx"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.tsx"}},"end":"(?=\\\\S)"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.tsx"},{"match":"(\\\\?|:)","name":"keyword.operator.ternary.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.tsx"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.tsx"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.tsx"}},"name":"meta.type.parameters.tsx","patterns":[{"include":"#comment"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.tsx"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.tsx"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.tsx"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.tsx"}},"name":"meta.type.paren.cover.tsx","patterns":[{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"entity.name.function.tsx variable.language.this.tsx"},"4":{"name":"entity.name.function.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.tsx"},"2":{"name":"keyword.operator.rest.tsx"},"3":{"name":"variable.parameter.tsx variable.language.this.tsx"},"4":{"name":"variable.parameter.tsx"},"5":{"name":"keyword.operator.optional.tsx"}},"match":"(?:(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.tsx"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.tsx"},"2":{"name":"variable.parameter.tsx variable.language.this.tsx"},"3":{"name":"variable.parameter.tsx"},"4":{"name":"keyword.operator.expression.is.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))\\\\s(is)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.tsx"},"2":{"name":"variable.parameter.tsx variable.language.this.tsx"},"3":{"name":"variable.parameter.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([_$A-Za-z][_$0-9A-Za-z]*))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.tsx"},{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.tsx"}]},"type-primitive":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.tsx"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.tsx"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.tsx"}},"name":"meta.type.tuple.tsx","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.tsx"},{"captures":{"1":{"name":"entity.name.label.tsx"},"2":{"name":"keyword.operator.optional.tsx"},"3":{"name":"punctuation.separator.label.tsx"}},"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([_$A-Za-z][_$0-9A-Za-z]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.tsx"}},"end":"(?=[,);}\\\\]=>:&|{?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.tsx"},"var-expr":{"patterns":[{"begin":"(?=(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|((?<!^let|[^\\\\._$0-9A-Za-z]let|^var|[^\\\\._$0-9A-Za-z]var)(?=\\\\s*$)))","name":"meta.var.expr.tsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.type.tsx"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.tsx"}},"end":"(?<!,)(((?==|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.type.tsx"}},"end":"(?!(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|((?<!^const|[^\\\\._$0-9A-Za-z]const)(?=\\\\s*$)))","name":"meta.var.expr.tsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.type.tsx"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.tsx"}},"end":"(?<!,)(((?==|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.type.tsx"}},"end":"(?!(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b))|((?<!^using|[^\\\\._$0-9A-Za-z]using|^await\\\\s+using|[^\\\\._$0-9A-Za-z]await\\\\s+using)(?=\\\\s*$)))","name":"meta.var.expr.tsx","patterns":[{"begin":"(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b))(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.tsx"},"2":{"name":"storage.modifier.tsx"},"3":{"name":"storage.type.tsx"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=\\\\/\\\\/))","beginCaptures":{"1":{"name":"punctuation.separator.comma.tsx"}},"end":"(?<!,)(((?==|;|}|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.tsx variable.other.constant.tsx entity.name.function.tsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.tsx","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)","beginCaptures":{"1":{"name":"meta.definition.variable.tsx variable.other.constant.tsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.tsx","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)(!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$0-9A-Za-z]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$0-9A-Za-z])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$A-Za-z][_$0-9A-Za-z]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|([(]\\\\s*((([{\\\\[]\\\\s*)?$)|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$A-Za-z][_$0-9A-Za-z]*\\\\s*:)))|([<]\\\\s*[_$A-Za-z][_$0-9A-Za-z]*\\\\s+extends\\\\s*[^=>])|((<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|<\\\\s*(((const\\\\s+)?[_$A-Za-z])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$A-Za-z]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$A-Za-z]))([^()\\\\'\\\\\\"\\\\\`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\'([^\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\\`([^\\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>(){}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.tsx entity.name.function.tsx"},"2":{"name":"keyword.operator.definiteassignment.tsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.tsx","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([A-Z][_$\\\\dA-Z]*)(?![_$0-9A-Za-z])(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.tsx variable.other.constant.tsx"},"2":{"name":"keyword.operator.definiteassignment.tsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.tsx","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$A-Za-z][_$0-9A-Za-z]*)(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.tsx variable.other.readwrite.tsx"},"2":{"name":"keyword.operator.definiteassignment.tsx"}},"end":"(?=$|^|[;,=}]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$A-Za-z])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.tsx","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<!=|!)(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.tsx"}},"end":"(?=$|^|[,);}\\\\]]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<!=|!)(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.tsx"}},"end":"(?=[,);}\\\\]]|((?<![_$0-9A-Za-z])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![\\\\|\\\\&+\\\\-\\\\*\\\\/])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.tsx"}`)),t=[e];export{t as default}; diff --git a/_nuxt/pvolzCCv.js b/_nuxt/pvolzCCv.js new file mode 100644 index 0000000..f0af1e9 --- /dev/null +++ b/_nuxt/pvolzCCv.js @@ -0,0 +1 @@ +import{d as v,x as w,B as n,an as C,ao as p,b5 as l,c as s,e as S,ag as c,w as _,f as A,C as t,h as i,n as m,ai as B,aJ as I,a9 as L}from"./WKNqgS7_.js";import{r as U}from"./Cv00pZP1.js";import"./BneCoJRQ.js";const $=v({inheritAttrs:!1,__name:"Callout",props:{icon:{type:String,default:void 0},color:{type:String,default:"primary"},to:{type:String,default:void 0},target:{type:String,default:void 0},class:{type:[String,Object,Array],default:void 0},ui:{type:Object,default:()=>({})}},setup(o){const y=w(),b=n(()=>({wrapper:"block pl-4 pr-6 py-3 rounded-md border border-gray-200 dark:border-gray-700 bg-gray-50 dark:bg-gray-800 text-gray-700 dark:text-gray-300 text-sm/6 my-5 last:mb-0 font-normal group relative prose-code:bg-white dark:prose-code:bg-gray-900",to:"hover:border-[--color-light] dark:hover:border-[--color-dark] hover:text-[--color-light] dark:hover:text-[--color-dark] border-dashed hover:border-solid hover:text-gray-800 dark:hover:text-gray-200",icon:{base:"w-4 h-4 mr-2 inline-flex items-center align-sub text-[--color-light] dark:text-[--color-dark]"},externalIcon:{name:y.ui.icons.external,base:"w-4 h-4 absolute right-2 top-2 text-gray-400 dark:text-gray-500 group-hover:text-[--color-light] dark:group-hover:text-[--color-dark]"}})),r=o,{ui:a,attrs:f}=C("content.callout",p(r,"ui"),b,p(r,"class"),!0),k=n(()=>{var e;return r.color==="primary"?"rgb(var(--color-primary-DEFAULT))":((e=l[r.color])==null?void 0:e["500"])||l[r.color]||r.color}),h=n(()=>{var e;return r.color==="primary"?"rgb(var(--color-primary-DEFAULT))":((e=l[r.color])==null?void 0:e["400"])||l[r.color]||r.color}),d=n(()=>r.target||(r.to&&r.to.startsWith("http")?"_blank":void 0));return(e,u)=>{const x=I,g=L;return s(),S("div",B({class:[t(a).wrapper,o.to&&t(a).to]},t(f),{style:{"--color-light":t(k),"--color-dark":t(h)}}),[o.to?(s(),c(x,{key:0,to:o.to,target:t(d),class:"focus:outline-none",tabindex:"-1"},{default:_(()=>u[0]||(u[0]=[A("span",{class:"absolute inset-0","aria-hidden":"true"},null,-1)])),_:1},8,["to","target"])):i("",!0),o.icon?(s(),c(g,{key:1,name:o.icon,class:m(t(a).icon.base)},null,8,["name","class"])):i("",!0),o.to&&t(d)==="_blank"?(s(),c(g,{key:2,name:t(a).externalIcon.name,class:m(t(a).externalIcon.base)},null,8,["name","class"])):i("",!0),U(e.$slots,"default",{unwrap:"p"})],16)}}});export{$ as default}; diff --git a/_nuxt/rNYH57DI.js b/_nuxt/rNYH57DI.js new file mode 100644 index 0000000..3d7f8e6 --- /dev/null +++ b/_nuxt/rNYH57DI.js @@ -0,0 +1,5 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./xwxXOL3V.js","./DY7OrFLh.js","./WKNqgS7_.js","./CtS59gnC.js","./BneCoJRQ.js","./Cpj98o6Y.js","./COj52qHV.js","./index.GovekSNP.css","./bNaE6FFb.js","./Bm8GSR-O.js","./D0ybgVpa.js","./Begb3drz.js","./g_GSZ1hr.js","./BeSffZBD.js","./DWmkr0yC.js","./Dt1gzhwr.js","./CMTZCMka.js","./CNXuF1yM.js","./CIiI48o2.js"])))=>i.map(i=>d[i]); +var K=Object.defineProperty;var Q=(i,t,r)=>t in i?K(i,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):i[t]=r;var p=(i,t,r)=>Q(i,typeof t!="symbol"?t+"":t,r);import{_ as u}from"./WKNqgS7_.js";import{getMdcConfigs as X}from"./bNaE6FFb.js";class j extends Error{constructor(t){super(t),this.name="ShikiError"}}function Y(){return 2147483648}function Z(){return typeof performance<"u"?performance.now():Date.now()}const q=(i,t)=>i+(t-i%t)%t;async function tt(i){let t,r;const e={};function m(o){r=o,e.HEAPU8=new Uint8Array(o),e.HEAPU32=new Uint32Array(o)}function _(o,s,L){e.HEAPU8.copyWithin(o,s,s+L)}function c(o){try{return t.grow(o-r.byteLength+65535>>>16),m(t.buffer),1}catch{}}function a(o){const s=e.HEAPU8.length;o=o>>>0;const L=Y();if(o>L)return!1;for(let w=1;w<=4;w*=2){let g=s*(1+.2/w);g=Math.min(g,o+100663296);const A=Math.min(L,q(Math.max(o,g),65536));if(c(A))return!0}return!1}const n=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0;function l(o,s,L=1024){const w=s+L;let g=s;for(;o[g]&&!(g>=w);)++g;if(g-s>16&&o.buffer&&n)return n.decode(o.subarray(s,g));let A="";for(;s<g;){let E=o[s++];if(!(E&128)){A+=String.fromCharCode(E);continue}const U=o[s++]&63;if((E&224)===192){A+=String.fromCharCode((E&31)<<6|U);continue}const D=o[s++]&63;if((E&240)===224?E=(E&15)<<12|U<<6|D:E=(E&7)<<18|U<<12|D<<6|o[s++]&63,E<65536)A+=String.fromCharCode(E);else{const P=E-65536;A+=String.fromCharCode(55296|P>>10,56320|P&1023)}}return A}function v(o,s){return o?l(e.HEAPU8,o,s):""}const h={emscripten_get_now:Z,emscripten_memcpy_big:_,emscripten_resize_heap:a,fd_write:()=>0};async function b(){const s=await i({env:h,wasi_snapshot_preview1:h});t=s.memory,m(t.buffer),Object.assign(e,s),e.UTF8ToString=v}return await b(),e}let y=null;function et(i){throw new j(i.UTF8ToString(i.getLastOnigError()))}class B{constructor(t){p(this,"utf16Length");p(this,"utf8Length");p(this,"utf16Value");p(this,"utf8Value");p(this,"utf16OffsetToUtf8");p(this,"utf8OffsetToUtf16");const r=t.length,e=B._utf8ByteLength(t),m=e!==r,_=m?new Uint32Array(r+1):null;m&&(_[r]=e);const c=m?new Uint32Array(e+1):null;m&&(c[e]=r);const a=new Uint8Array(e);let n=0;for(let l=0;l<r;l++){const v=t.charCodeAt(l);let h=v,b=!1;if(v>=55296&&v<=56319&&l+1<r){const o=t.charCodeAt(l+1);o>=56320&&o<=57343&&(h=(v-55296<<10)+65536|o-56320,b=!0)}m&&(_[l]=n,b&&(_[l+1]=n),h<=127?c[n+0]=l:h<=2047?(c[n+0]=l,c[n+1]=l):h<=65535?(c[n+0]=l,c[n+1]=l,c[n+2]=l):(c[n+0]=l,c[n+1]=l,c[n+2]=l,c[n+3]=l)),h<=127?a[n++]=h:h<=2047?(a[n++]=192|(h&1984)>>>6,a[n++]=128|(h&63)>>>0):h<=65535?(a[n++]=224|(h&61440)>>>12,a[n++]=128|(h&4032)>>>6,a[n++]=128|(h&63)>>>0):(a[n++]=240|(h&1835008)>>>18,a[n++]=128|(h&258048)>>>12,a[n++]=128|(h&4032)>>>6,a[n++]=128|(h&63)>>>0),b&&l++}this.utf16Length=r,this.utf8Length=e,this.utf16Value=t,this.utf8Value=a,this.utf16OffsetToUtf8=_,this.utf8OffsetToUtf16=c}static _utf8ByteLength(t){let r=0;for(let e=0,m=t.length;e<m;e++){const _=t.charCodeAt(e);let c=_,a=!1;if(_>=55296&&_<=56319&&e+1<m){const n=t.charCodeAt(e+1);n>=56320&&n<=57343&&(c=(_-55296<<10)+65536|n-56320,a=!0)}c<=127?r+=1:c<=2047?r+=2:c<=65535?r+=3:r+=4,a&&e++}return r}createString(t){const r=t.omalloc(this.utf8Length);return t.HEAPU8.set(this.utf8Value,r),r}}const T=class T{constructor(t){p(this,"id",++T.LAST_ID);p(this,"_onigBinding");p(this,"content");p(this,"utf16Length");p(this,"utf8Length");p(this,"utf16OffsetToUtf8");p(this,"utf8OffsetToUtf16");p(this,"ptr");if(!y)throw new j("Must invoke loadWasm first.");this._onigBinding=y,this.content=t;const r=new B(t);this.utf16Length=r.utf16Length,this.utf8Length=r.utf8Length,this.utf16OffsetToUtf8=r.utf16OffsetToUtf8,this.utf8OffsetToUtf16=r.utf8OffsetToUtf16,this.utf8Length<1e4&&!T._sharedPtrInUse?(T._sharedPtr||(T._sharedPtr=y.omalloc(1e4)),T._sharedPtrInUse=!0,y.HEAPU8.set(r.utf8Value,T._sharedPtr),this.ptr=T._sharedPtr):this.ptr=r.createString(y)}convertUtf8OffsetToUtf16(t){return this.utf8OffsetToUtf16?t<0?0:t>this.utf8Length?this.utf16Length:this.utf8OffsetToUtf16[t]:t}convertUtf16OffsetToUtf8(t){return this.utf16OffsetToUtf8?t<0?0:t>this.utf16Length?this.utf8Length:this.utf16OffsetToUtf8[t]:t}dispose(){this.ptr===T._sharedPtr?T._sharedPtrInUse=!1:this._onigBinding.ofree(this.ptr)}};p(T,"LAST_ID",0),p(T,"_sharedPtr",0),p(T,"_sharedPtrInUse",!1);let H=T;class rt{constructor(t){p(this,"_onigBinding");p(this,"_ptr");if(!y)throw new j("Must invoke loadWasm first.");const r=[],e=[];for(let a=0,n=t.length;a<n;a++){const l=new B(t[a]);r[a]=l.createString(y),e[a]=l.utf8Length}const m=y.omalloc(4*t.length);y.HEAPU32.set(r,m/4);const _=y.omalloc(4*t.length);y.HEAPU32.set(e,_/4);const c=y.createOnigScanner(m,_,t.length);for(let a=0,n=t.length;a<n;a++)y.ofree(r[a]);y.ofree(_),y.ofree(m),c===0&&et(y),this._onigBinding=y,this._ptr=c}dispose(){this._onigBinding.freeOnigScanner(this._ptr)}findNextMatchSync(t,r,e){let m=0;if(typeof e=="number"&&(m=e),typeof t=="string"){t=new H(t);const _=this._findNextMatchSync(t,r,!1,m);return t.dispose(),_}return this._findNextMatchSync(t,r,!1,m)}_findNextMatchSync(t,r,e,m){const _=this._onigBinding,c=_.findNextOnigScannerMatch(this._ptr,t.id,t.ptr,t.utf8Length,t.convertUtf16OffsetToUtf8(r),m);if(c===0)return null;const a=_.HEAPU32;let n=c/4;const l=a[n++],v=a[n++],h=[];for(let b=0;b<v;b++){const o=t.convertUtf8OffsetToUtf16(a[n++]),s=t.convertUtf8OffsetToUtf16(a[n++]);h[b]={start:o,end:s,length:s-o}}return{index:l,captureIndices:h}}}function it(i){return typeof i.instantiator=="function"}function nt(i){return typeof i.default=="function"}function ot(i){return typeof i.data<"u"}function st(i){return typeof Response<"u"&&i instanceof Response}function at(i){var t;return typeof ArrayBuffer<"u"&&(i instanceof ArrayBuffer||ArrayBuffer.isView(i))||typeof Buffer<"u"&&((t=Buffer.isBuffer)==null?void 0:t.call(Buffer,i))||typeof SharedArrayBuffer<"u"&&i instanceof SharedArrayBuffer||typeof Uint32Array<"u"&&i instanceof Uint32Array}let C;function ft(i){if(C)return C;async function t(){y=await tt(async r=>{let e=i;return e=await e,typeof e=="function"&&(e=await e(r)),typeof e=="function"&&(e=await e(r)),it(e)?e=await e.instantiator(r):nt(e)?e=await e.default(r):(ot(e)&&(e=e.data),st(e)?typeof WebAssembly.instantiateStreaming=="function"?e=await ut(e)(r):e=await ct(e)(r):at(e)?e=await M(e)(r):e instanceof WebAssembly.Module?e=await M(e)(r):"default"in e&&e.default instanceof WebAssembly.Module&&(e=await M(e.default)(r))),"instance"in e&&(e=e.instance),"exports"in e&&(e=e.exports),e})}return C=t(),C}function M(i){return t=>WebAssembly.instantiate(i,t)}function ut(i){return t=>WebAssembly.instantiateStreaming(i,t)}function ct(i){return async t=>{const r=await i.arrayBuffer();return WebAssembly.instantiate(r,t)}}let lt;function wt(){return lt}async function ht(i){return i&&await ft(i),{createScanner(t){return new rt(t)},createString(t){return new H(t)}}}async function mt(i){return ht(i)}function G({langs:i=[],themes:t=[],bundledLangs:r={},bundledThemes:e={},getMdcConfigs:m,options:_,engine:c}={}){let a,n;async function l(){var P,O;const{createHighlighterCore:o,addClassToHast:s,isSpecialLang:L,isSpecialTheme:w}=await u(async()=>{const{createHighlighterCore:S,addClassToHast:V,isSpecialLang:F,isSpecialTheme:R}=await import("./xwxXOL3V.js");return{createHighlighterCore:S,addClassToHast:V,isSpecialLang:F,isSpecialTheme:R}},__vite__mapDeps([0,1,2,3,4,5,6,7,8]),import.meta.url),{transformerNotationDiff:g,transformerNotationErrorLevel:A,transformerNotationFocus:E,transformerNotationHighlight:U}=await u(async()=>{const{transformerNotationDiff:S,transformerNotationErrorLevel:V,transformerNotationFocus:F,transformerNotationHighlight:R}=await import("./DyXibH8M.js");return{transformerNotationDiff:S,transformerNotationErrorLevel:V,transformerNotationFocus:F,transformerNotationHighlight:R}},[],import.meta.url),D=await o({langs:i,themes:t,engine:c});for await(const S of await h())await((O=(P=S.shiki)==null?void 0:P.setup)==null?void 0:O.call(P,D));return{shiki:D,addClassToHast:s,isSpecialLang:L,isSpecialTheme:w,transformers:[g(),A(),E(),U()]}}async function v(){return a||(a=l()),a}async function h(){return n||(n=Promise.resolve((m==null?void 0:m())||[])),n}return async(o,s,L,w={})=>{var W,$,z;const{shiki:g,addClassToHast:A,isSpecialLang:E,isSpecialTheme:U,transformers:D}=await v(),P={defaultColor:!1,meta:{__raw:w.meta}};s==="ts-type"||s==="typescript-type"?(s="typescript",P.grammarContextCode="let a:"):(s==="vue-html"||s==="vue-template")&&(s="vue",P.grammarContextCode="<template>");const O={...typeof L=="string"?{default:L}:L||{}},S=g.getLoadedThemes(),V=g.getLoadedLanguages();typeof s=="string"&&!V.includes(s)&&!E(s)&&(r[s]?await g.loadLanguage(r[s]):s="text");for(const[f,d]of Object.entries(O))typeof d=="string"&&!S.includes(d)&&!U(d)&&(e[d]?await g.loadTheme(e[d]):O[f]="none");const F=[...D];for(const f of await h()){const d=typeof((W=f.shiki)==null?void 0:W.transformers)=="function"?await(($=f.shiki)==null?void 0:$.transformers(o,s,L,w)):((z=f.shiki)==null?void 0:z.transformers)||[];F.push(...d)}const x=g.codeToHast(o.trimEnd(),{lang:s,...P,themes:O,transformers:[...F,{name:"mdc:highlight",line(f,d){var I;(I=w.highlights)!=null&&I.includes(d)&&A(f,"highlight"),f.properties.line=d}},{name:"mdc:newline",line(f){if(o!=null&&o.includes(` +`)){if(f.children.length===0||f.children.length===1&&f.children[0].type==="element"&&f.children[0].children.length===1&&f.children[0].children[0].type==="text"&&f.children[0].children[0].value===""){f.children=[{type:"element",tagName:"span",properties:{emptyLinePlaceholder:!0},children:[{type:"text",value:` +`}]}];return}const d=f.children.at(-1);if((d==null?void 0:d.type)==="element"&&d.tagName==="span"){const I=d.children.at(-1);(I==null?void 0:I.type)==="text"&&(I.value+=` +`)}}}}]}).children[0],J=x.children[0],k=_==null?void 0:_.wrapperStyle;x.properties.style=k?typeof k=="string"?k:x.properties.style:"";const N=[];return Object.keys(O).forEach(f=>{const d=f!=="default"?`.${f}`:"";N.push(k?`${d} .shiki,`:"",`html .${f} .shiki span {`,`color: var(--shiki-${f});`,`background: var(--shiki-${f}-bg);`,`font-style: var(--shiki-${f}-font-style);`,`font-weight: var(--shiki-${f}-font-weight);`,`text-decoration: var(--shiki-${f}-text-decoration);`,"}"),N.push(`html${d} .shiki span {`,`color: var(--shiki-${f});`,`background: var(--shiki-${f}-bg);`,`font-style: var(--shiki-${f}-font-style);`,`font-weight: var(--shiki-${f}-font-weight);`,`text-decoration: var(--shiki-${f}-text-decoration);`,"}")}),{tree:J.children,className:Array.isArray(x.properties.class)?x.properties.class.join(" "):x.properties.class,inlineStyle:x.properties.style,style:N.join("")}}}const _t={javascript:()=>u(()=>import("./Begb3drz.js"),[],import.meta.url),js:()=>u(()=>import("./Begb3drz.js"),[],import.meta.url),jsx:()=>u(()=>import("./NfFGm2lL.js"),[],import.meta.url),json:()=>u(()=>import("./DWmkr0yC.js"),[],import.meta.url),typescript:()=>u(()=>import("./BeSffZBD.js"),[],import.meta.url),ts:()=>u(()=>import("./BeSffZBD.js"),[],import.meta.url),tsx:()=>u(()=>import("./keK8bHwS.js"),[],import.meta.url),vue:()=>u(()=>import("./Bm8GSR-O.js"),__vite__mapDeps([9,10,11,12,13,14,15]),import.meta.url),css:()=>u(()=>import("./g_GSZ1hr.js"),[],import.meta.url),html:()=>u(()=>import("./D0ybgVpa.js"),__vite__mapDeps([10,11,12]),import.meta.url),shellscript:()=>u(()=>import("./HNM5thJl.js"),[],import.meta.url),bash:()=>u(()=>import("./HNM5thJl.js"),[],import.meta.url),sh:()=>u(()=>import("./HNM5thJl.js"),[],import.meta.url),shell:()=>u(()=>import("./HNM5thJl.js"),[],import.meta.url),zsh:()=>u(()=>import("./HNM5thJl.js"),[],import.meta.url),markdown:()=>u(()=>import("./CNXuF1yM.js"),[],import.meta.url),md:()=>u(()=>import("./CNXuF1yM.js"),[],import.meta.url),mdc:()=>u(()=>import("./CMTZCMka.js"),__vite__mapDeps([16,17,18,15,10,11,12]),import.meta.url),yaml:()=>u(()=>import("./CIiI48o2.js"),[],import.meta.url),yml:()=>u(()=>import("./CIiI48o2.js"),[],import.meta.url),diff:()=>u(()=>import("./Dnfm4U7b.js"),[],import.meta.url),ini:()=>u(()=>import("./BjABl1g7.js"),[],import.meta.url),properties:()=>u(()=>import("./BjABl1g7.js"),[],import.meta.url)},pt={"material-theme-lighter":()=>u(()=>import("./B0m2ddpp.js"),[],import.meta.url).then(i=>i.default),"material-theme":()=>u(()=>import("./D5KoaKCx.js"),[],import.meta.url).then(i=>i.default),"material-theme-palenight":()=>u(()=>import("./Csfq5Kiy.js"),[],import.meta.url).then(i=>i.default)},dt={theme:{light:"material-theme-lighter",default:"material-theme",dark:"material-theme-palenight"}},gt=mt(()=>u(()=>import("./CG6Dc4jp.js"),[],import.meta.url)),yt=G({bundledLangs:_t,bundledThemes:pt,options:dt,getMdcConfigs:X,engine:gt}),At=Object.freeze(Object.defineProperty({__proto__:null,createShikiHighlighter:G,default:yt},Symbol.toStringTag,{value:"Module"}));export{ht as c,wt as g,At as m}; diff --git a/_nuxt/rV6PYh0J.js b/_nuxt/rV6PYh0J.js new file mode 100644 index 0000000..1e889e9 --- /dev/null +++ b/_nuxt/rV6PYh0J.js @@ -0,0 +1 @@ +import m from"./Df0uYweg.js";import{d as c,b6 as l,S as r}from"./WKNqgS7_.js";const f=(u,t)=>r("pre",null,JSON.stringify({message:"You should use slots with <ContentList>",slot:u,data:t},null,2)),h=c({name:"ContentList",props:{path:{type:String,required:!1,default:void 0},query:{type:Object,required:!1,default:void 0}},render(u){const t=l(),{path:p,query:a}=u,d={...a||{},path:p||(a==null?void 0:a.path)||"/"};return r(m,d,{default:t!=null&&t.default?({data:e,refresh:o,isPartial:n})=>t.default({list:e,refresh:o,isPartial:n,...this.$attrs}):e=>f("default",e.data),empty:e=>t!=null&&t.empty?t.empty(e):f("default",e==null?void 0:e.data),"not-found":e=>{var o;return t!=null&&t["not-found"]?(o=t==null?void 0:t["not-found"])==null?void 0:o.call(t,e):f("not-found",e==null?void 0:e.data)}})}}),S=h;export{S as default}; diff --git a/_nuxt/useStudio.CMm9bqh_.css b/_nuxt/useStudio.CMm9bqh_.css new file mode 100644 index 0000000..6b83710 --- /dev/null +++ b/_nuxt/useStudio.CMm9bqh_.css @@ -0,0 +1 @@ +body.__preview_enabled{padding-bottom:50px}#__nuxt_preview[data-v-53594541]{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff4d;border-top:1px solid #eee;bottom:-60px;color:#000;display:flex;font-family:Helvetica,sans-serif;font-size:16px;font-weight:500;gap:10px;height:50px;justify-content:center;left:0;position:fixed;right:0;transition:bottom .3s ease-in-out;z-index:10000}#__nuxt_preview.__preview_ready[data-v-53594541]{bottom:0}#__preview_background[data-v-53594541]{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff4d;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:9000}#__preview_loader[data-v-53594541]{align-items:center;color:#000;display:flex;flex-direction:column;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-size:1.4rem;gap:8px;left:50%;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:9500}#__preview_loader p[data-v-53594541]{margin:10px 0}.dark #__preview_background[data-v-53594541],.dark-mode #__preview_background[data-v-53594541]{background:#0000004d}.dark #__preview_loader[data-v-53594541],.dark-mode #__preview_loader[data-v-53594541]{color:#fff}.preview-loading-enter-active[data-v-53594541],.preview-loading-leave-active[data-v-53594541]{transition:opacity .4s}.preview-loading-enter[data-v-53594541],.preview-loading-leave-to[data-v-53594541]{opacity:0}#__preview_loading_icon[data-v-53594541]{animation:spin-53594541 1s linear infinite}.dark #__nuxt_preview[data-v-53594541],.dark-mode #__nuxt_preview[data-v-53594541]{background:#0000004d;border-top:1px solid #111;color:#fff}#__nuxt_preview svg[data-v-53594541]{color:#000;display:inline-block;height:30px;width:30px}.dark #__nuxt_preview svg[data-v-53594541],.dark-mode #__nuxt_preview svg[data-v-53594541]{color:#fff}button[data-v-53594541]{background:transparent;border:1px solid rgba(0,0,0,.2);border-radius:3px;box-shadow:none;color:#000c;cursor:pointer;display:inline-block;font-size:14px;font-weight:400;line-height:1rem;margin:0;padding:4px 10px;text-align:center;transition:none;width:auto}button[data-v-53594541]:hover{border-color:#0006;color:#000000e6}.dark button[data-v-53594541],.dark-mode button[data-v-53594541]{border-color:#fff3;color:#d3d3d3}.dark button[data-v-53594541]:hover,.dark-mode button[data-v-53594541]:hover{border-color:#fff6;color:#fff}#__nuxt_preview button[data-v-53594541]:focus,#__nuxt_preview button[data-v-53594541]:hover{background:#0000001a}#__nuxt_preview button[data-v-53594541]:active{background:#0003}.dark #__nuxt_preview button[data-v-53594541],.dark-mode #__nuxt_preview button[data-v-53594541]{border:1px solid hsla(0,0%,100%,.2);color:#fffc}.dark #__nuxt_preview button[data-v-53594541]:hover,.dark-mode #__nuxt_preview button[data-v-53594541]:focus{background:#ffffff1a}.dark #__nuxt_preview button[data-v-53594541]:active,.dark-mode #__nuxt_preview button[data-v-53594541]:active{background:#fff3}a[data-v-53594541]{font-weight:600}#__nuxt_preview.__preview_refreshing button[data-v-53594541],#__nuxt_preview.__preview_refreshing span[data-v-53594541],#__nuxt_preview.__preview_refreshing svg[data-v-53594541]{animation:nuxt_pulsate-53594541 1s ease-out;animation-iteration-count:infinite;opacity:.5}@keyframes nuxt_pulsate-53594541{0%{opacity:1}50%{opacity:.5}to{opacity:1}}@keyframes spin-53594541{0%{transform:rotate(1turn)}to{transform:rotate(0)}} diff --git a/_nuxt/xwxXOL3V.js b/_nuxt/xwxXOL3V.js new file mode 100644 index 0000000..5f1e70b --- /dev/null +++ b/_nuxt/xwxXOL3V.js @@ -0,0 +1,12 @@ +import{c as xt,g as Lt}from"./rNYH57DI.js";import{s as B,a as Gt,b as $t,c as je,z as Ot,h as Mt}from"./DY7OrFLh.js";import{s as rt,f as Bt,h as jt}from"./CtS59gnC.js";import"./WKNqgS7_.js";import"./bNaE6FFb.js";import"./BneCoJRQ.js";import"./Cpj98o6Y.js";import"./COj52qHV.js";let $=class extends Error{constructor(e){super(e),this.name="ShikiError"}};function Wt(n){return Te(n)}function Te(n){return Array.isArray(n)?Dt(n):typeof n=="object"?Ft(n):n}function Dt(n){let e=[];for(let t=0,s=n.length;t<s;t++)e[t]=Te(n[t]);return e}function Ft(n){let e={};for(let t in n)e[t]=Te(n[t]);return e}function it(n,...e){return e.forEach(t=>{for(let s in t)n[s]=t[s]}),n}function ot(n){const e=~n.lastIndexOf("/")||~n.lastIndexOf("\\");return e===0?n:~e===n.length-1?ot(n.substring(0,n.length-1)):n.substr(~e+1)}var ge=/\$(\d+)|\${(\d+):\/(downcase|upcase)}/g,Y=class{static hasCaptures(n){return n===null?!1:(ge.lastIndex=0,ge.test(n))}static replaceCaptures(n,e,t){return n.replace(ge,(s,r,i,o)=>{let c=t[parseInt(r||i,10)];if(c){let a=e.substring(c.start,c.end);for(;a[0]===".";)a=a.substring(1);switch(o){case"downcase":return a.toLowerCase();case"upcase":return a.toUpperCase();default:return a}}else return s})}};function at(n,e){return n<e?-1:n>e?1:0}function ct(n,e){if(n===null&&e===null)return 0;if(!n)return-1;if(!e)return 1;let t=n.length,s=e.length;if(t===s){for(let r=0;r<t;r++){let i=at(n[r],e[r]);if(i!==0)return i}return 0}return t-s}function We(n){return!!(/^#[0-9a-f]{6}$/i.test(n)||/^#[0-9a-f]{8}$/i.test(n)||/^#[0-9a-f]{3}$/i.test(n)||/^#[0-9a-f]{4}$/i.test(n))}function lt(n){return n.replace(/[\-\\\{\}\*\+\?\|\^\$\.\,\[\]\(\)\#\s]/g,"\\$&")}var ht=class{constructor(n){this.fn=n,this.cache=new Map}get(n){if(this.cache.has(n))return this.cache.get(n);const e=this.fn(n);return this.cache.set(n,e),e}},ne=class{constructor(n,e,t){this._colorMap=n,this._defaults=e,this._root=t,this._cachedMatchRoot=new ht(s=>this._root.match(s))}static createFromRawTheme(n,e){return this.createFromParsedTheme(Ht(n),e)}static createFromParsedTheme(n,e){return Kt(n,e)}getColorMap(){return this._colorMap.getColorMap()}getDefaults(){return this._defaults}match(n){if(n===null)return this._defaults;const e=n.scopeName,s=this._cachedMatchRoot.get(e).find(r=>zt(n.parent,r.parentScopes));return s?new ut(s.fontStyle,s.foreground,s.background):null}},_e=class ee{constructor(e,t){this.parent=e,this.scopeName=t}static push(e,t){for(const s of t)e=new ee(e,s);return e}static from(...e){let t=null;for(let s=0;s<e.length;s++)t=new ee(t,e[s]);return t}push(e){return new ee(this,e)}getSegments(){let e=this;const t=[];for(;e;)t.push(e.scopeName),e=e.parent;return t.reverse(),t}toString(){return this.getSegments().join(" ")}extends(e){return this===e?!0:this.parent===null?!1:this.parent.extends(e)}getExtensionIfDefined(e){const t=[];let s=this;for(;s&&s!==e;)t.push(s.scopeName),s=s.parent;return s===e?t.reverse():void 0}};function zt(n,e){if(e.length===0)return!0;for(let t=0;t<e.length;t++){let s=e[t],r=!1;if(s===">"){if(t===e.length-1)return!1;s=e[++t],r=!0}for(;n&&!qt(n.scopeName,s);){if(r)return!1;n=n.parent}if(!n)return!1;n=n.parent}return!0}function qt(n,e){return e===n||n.startsWith(e)&&n[e.length]==="."}var ut=class{constructor(n,e,t){this.fontStyle=n,this.foregroundId=e,this.backgroundId=t}};function Ht(n){if(!n)return[];if(!n.settings||!Array.isArray(n.settings))return[];let e=n.settings,t=[],s=0;for(let r=0,i=e.length;r<i;r++){let o=e[r];if(!o.settings)continue;let c;if(typeof o.scope=="string"){let u=o.scope;u=u.replace(/^[,]+/,""),u=u.replace(/[,]+$/,""),c=u.split(",")}else Array.isArray(o.scope)?c=o.scope:c=[""];let a=-1;if(typeof o.settings.fontStyle=="string"){a=0;let u=o.settings.fontStyle.split(" ");for(let f=0,d=u.length;f<d;f++)switch(u[f]){case"italic":a=a|1;break;case"bold":a=a|2;break;case"underline":a=a|4;break;case"strikethrough":a=a|8;break}}let l=null;typeof o.settings.foreground=="string"&&We(o.settings.foreground)&&(l=o.settings.foreground);let h=null;typeof o.settings.background=="string"&&We(o.settings.background)&&(h=o.settings.background);for(let u=0,f=c.length;u<f;u++){let p=c[u].trim().split(" "),y=p[p.length-1],m=null;p.length>1&&(m=p.slice(0,p.length-1),m.reverse()),t[s++]=new Ut(y,m,r,a,l,h)}}return t}var Ut=class{constructor(n,e,t,s,r,i){this.scope=n,this.parentScopes=e,this.index=t,this.fontStyle=s,this.foreground=r,this.background=i}},P=(n=>(n[n.NotSet=-1]="NotSet",n[n.None=0]="None",n[n.Italic=1]="Italic",n[n.Bold=2]="Bold",n[n.Underline=4]="Underline",n[n.Strikethrough=8]="Strikethrough",n))(P||{});function Kt(n,e){n.sort((a,l)=>{let h=at(a.scope,l.scope);return h!==0||(h=ct(a.parentScopes,l.parentScopes),h!==0)?h:a.index-l.index});let t=0,s="#000000",r="#ffffff";for(;n.length>=1&&n[0].scope==="";){let a=n.shift();a.fontStyle!==-1&&(t=a.fontStyle),a.foreground!==null&&(s=a.foreground),a.background!==null&&(r=a.background)}let i=new Jt(e),o=new ut(t,i.getId(s),i.getId(r)),c=new Qt(new Se(0,null,-1,0,0),[]);for(let a=0,l=n.length;a<l;a++){let h=n[a];c.insert(0,h.scope,h.parentScopes,h.fontStyle,i.getId(h.foreground),i.getId(h.background))}return new ne(i,o,c)}var Jt=class{constructor(n){if(this._lastColorId=0,this._id2color=[],this._color2id=Object.create(null),Array.isArray(n)){this._isFrozen=!0;for(let e=0,t=n.length;e<t;e++)this._color2id[n[e]]=e,this._id2color[e]=n[e]}else this._isFrozen=!1}getId(n){if(n===null)return 0;n=n.toUpperCase();let e=this._color2id[n];if(e)return e;if(this._isFrozen)throw new Error(`Missing color in color map - ${n}`);return e=++this._lastColorId,this._color2id[n]=e,this._id2color[e]=n,e}getColorMap(){return this._id2color.slice(0)}},Vt=Object.freeze([]),Se=class ft{constructor(e,t,s,r,i){this.scopeDepth=e,this.parentScopes=t||Vt,this.fontStyle=s,this.foreground=r,this.background=i}clone(){return new ft(this.scopeDepth,this.parentScopes,this.fontStyle,this.foreground,this.background)}static cloneArr(e){let t=[];for(let s=0,r=e.length;s<r;s++)t[s]=e[s].clone();return t}acceptOverwrite(e,t,s,r){this.scopeDepth>e?console.log("how did this happen?"):this.scopeDepth=e,t!==-1&&(this.fontStyle=t),s!==0&&(this.foreground=s),r!==0&&(this.background=r)}},Qt=class Ce{constructor(e,t=[],s={}){this._mainRule=e,this._children=s,this._rulesWithParentScopes=t}static _cmpBySpecificity(e,t){if(e.scopeDepth!==t.scopeDepth)return t.scopeDepth-e.scopeDepth;let s=0,r=0;for(;e.parentScopes[s]===">"&&s++,t.parentScopes[r]===">"&&r++,!(s>=e.parentScopes.length||r>=t.parentScopes.length);){const i=t.parentScopes[r].length-e.parentScopes[s].length;if(i!==0)return i;s++,r++}return t.parentScopes.length-e.parentScopes.length}match(e){if(e!==""){let s=e.indexOf("."),r,i;if(s===-1?(r=e,i=""):(r=e.substring(0,s),i=e.substring(s+1)),this._children.hasOwnProperty(r))return this._children[r].match(i)}const t=this._rulesWithParentScopes.concat(this._mainRule);return t.sort(Ce._cmpBySpecificity),t}insert(e,t,s,r,i,o){if(t===""){this._doInsertHere(e,s,r,i,o);return}let c=t.indexOf("."),a,l;c===-1?(a=t,l=""):(a=t.substring(0,c),l=t.substring(c+1));let h;this._children.hasOwnProperty(a)?h=this._children[a]:(h=new Ce(this._mainRule.clone(),Se.cloneArr(this._rulesWithParentScopes)),this._children[a]=h),h.insert(e+1,l,s,r,i,o)}_doInsertHere(e,t,s,r,i){if(t===null){this._mainRule.acceptOverwrite(e,s,r,i);return}for(let o=0,c=this._rulesWithParentScopes.length;o<c;o++){let a=this._rulesWithParentScopes[o];if(ct(a.parentScopes,t)===0){a.acceptOverwrite(e,s,r,i);return}}s===-1&&(s=this._mainRule.fontStyle),r===0&&(r=this._mainRule.foreground),i===0&&(i=this._mainRule.background),this._rulesWithParentScopes.push(new Se(e,t,s,r,i))}},j=class k{static toBinaryStr(e){return e.toString(2).padStart(32,"0")}static print(e){const t=k.getLanguageId(e),s=k.getTokenType(e),r=k.getFontStyle(e),i=k.getForeground(e),o=k.getBackground(e);console.log({languageId:t,tokenType:s,fontStyle:r,foreground:i,background:o})}static getLanguageId(e){return(e&255)>>>0}static getTokenType(e){return(e&768)>>>8}static containsBalancedBrackets(e){return(e&1024)!==0}static getFontStyle(e){return(e&30720)>>>11}static getForeground(e){return(e&16744448)>>>15}static getBackground(e){return(e&4278190080)>>>24}static set(e,t,s,r,i,o,c){let a=k.getLanguageId(e),l=k.getTokenType(e),h=k.containsBalancedBrackets(e)?1:0,u=k.getFontStyle(e),f=k.getForeground(e),d=k.getBackground(e);return t!==0&&(a=t),s!==8&&(l=s),r!==null&&(h=r?1:0),i!==-1&&(u=i),o!==0&&(f=o),c!==0&&(d=c),(a<<0|l<<8|h<<10|u<<11|f<<15|d<<24)>>>0}};function se(n,e){const t=[],s=Yt(n);let r=s.next();for(;r!==null;){let a=0;if(r.length===2&&r.charAt(1)===":"){switch(r.charAt(0)){case"R":a=1;break;case"L":a=-1;break;default:console.log(`Unknown priority ${r} in scope selector`)}r=s.next()}let l=o();if(t.push({matcher:l,priority:a}),r!==",")break;r=s.next()}return t;function i(){if(r==="-"){r=s.next();const a=i();return l=>!!a&&!a(l)}if(r==="("){r=s.next();const a=c();return r===")"&&(r=s.next()),a}if(De(r)){const a=[];do a.push(r),r=s.next();while(De(r));return l=>e(a,l)}return null}function o(){const a=[];let l=i();for(;l;)a.push(l),l=i();return h=>a.every(u=>u(h))}function c(){const a=[];let l=o();for(;l&&(a.push(l),r==="|"||r===",");){do r=s.next();while(r==="|"||r===",");l=o()}return h=>a.some(u=>u(h))}}function De(n){return!!n&&!!n.match(/[\w\.:]+/)}function Yt(n){let e=/([LR]:|[\w\.:][\w\.:\-]*|[\,\|\-\(\)])/g,t=e.exec(n);return{next:()=>{if(!t)return null;const s=t[0];return t=e.exec(n),s}}}function dt(n){typeof n.dispose=="function"&&n.dispose()}var H=class{constructor(n){this.scopeName=n}toKey(){return this.scopeName}},Xt=class{constructor(n,e){this.scopeName=n,this.ruleName=e}toKey(){return`${this.scopeName}#${this.ruleName}`}},Zt=class{constructor(){this._references=[],this._seenReferenceKeys=new Set,this.visitedRule=new Set}get references(){return this._references}add(n){const e=n.toKey();this._seenReferenceKeys.has(e)||(this._seenReferenceKeys.add(e),this._references.push(n))}},en=class{constructor(n,e){this.repo=n,this.initialScopeName=e,this.seenFullScopeRequests=new Set,this.seenPartialScopeRequests=new Set,this.seenFullScopeRequests.add(this.initialScopeName),this.Q=[new H(this.initialScopeName)]}processQueue(){const n=this.Q;this.Q=[];const e=new Zt;for(const t of n)tn(t,this.initialScopeName,this.repo,e);for(const t of e.references)if(t instanceof H){if(this.seenFullScopeRequests.has(t.scopeName))continue;this.seenFullScopeRequests.add(t.scopeName),this.Q.push(t)}else{if(this.seenFullScopeRequests.has(t.scopeName)||this.seenPartialScopeRequests.has(t.toKey()))continue;this.seenPartialScopeRequests.add(t.toKey()),this.Q.push(t)}}};function tn(n,e,t,s){const r=t.lookup(n.scopeName);if(!r){if(n.scopeName===e)throw new Error(`No grammar provided for <${e}>`);return}const i=t.lookup(e);n instanceof H?te({baseGrammar:i,selfGrammar:r},s):we(n.ruleName,{baseGrammar:i,selfGrammar:r,repository:r.repository},s);const o=t.injections(n.scopeName);if(o)for(const c of o)s.add(new H(c))}function we(n,e,t){if(e.repository&&e.repository[n]){const s=e.repository[n];re([s],e,t)}}function te(n,e){n.selfGrammar.patterns&&Array.isArray(n.selfGrammar.patterns)&&re(n.selfGrammar.patterns,{...n,repository:n.selfGrammar.repository},e),n.selfGrammar.injections&&re(Object.values(n.selfGrammar.injections),{...n,repository:n.selfGrammar.repository},e)}function re(n,e,t){for(const s of n){if(t.visitedRule.has(s))continue;t.visitedRule.add(s);const r=s.repository?it({},e.repository,s.repository):e.repository;Array.isArray(s.patterns)&&re(s.patterns,{...e,repository:r},t);const i=s.include;if(!i)continue;const o=pt(i);switch(o.kind){case 0:te({...e,selfGrammar:e.baseGrammar},t);break;case 1:te(e,t);break;case 2:we(o.ruleName,{...e,repository:r},t);break;case 3:case 4:const c=o.scopeName===e.selfGrammar.scopeName?e.selfGrammar:o.scopeName===e.baseGrammar.scopeName?e.baseGrammar:void 0;if(c){const a={baseGrammar:e.baseGrammar,selfGrammar:c,repository:r};o.kind===4?we(o.ruleName,a,t):te(a,t)}else o.kind===4?t.add(new Xt(o.scopeName,o.ruleName)):t.add(new H(o.scopeName));break}}}var nn=class{constructor(){this.kind=0}},sn=class{constructor(){this.kind=1}},rn=class{constructor(n){this.ruleName=n,this.kind=2}},on=class{constructor(n){this.scopeName=n,this.kind=3}},an=class{constructor(n,e){this.scopeName=n,this.ruleName=e,this.kind=4}};function pt(n){if(n==="$base")return new nn;if(n==="$self")return new sn;const e=n.indexOf("#");if(e===-1)return new on(n);if(e===0)return new rn(n.substring(1));{const t=n.substring(0,e),s=n.substring(e+1);return new an(t,s)}}var cn=/\\(\d+)/,Fe=/\\(\d+)/g,ln=-1,mt=-2;var V=class{constructor(n,e,t,s){this.$location=n,this.id=e,this._name=t||null,this._nameIsCapturing=Y.hasCaptures(this._name),this._contentName=s||null,this._contentNameIsCapturing=Y.hasCaptures(this._contentName)}get debugName(){const n=this.$location?`${ot(this.$location.filename)}:${this.$location.line}`:"unknown";return`${this.constructor.name}#${this.id} @ ${n}`}getName(n,e){return!this._nameIsCapturing||this._name===null||n===null||e===null?this._name:Y.replaceCaptures(this._name,n,e)}getContentName(n,e){return!this._contentNameIsCapturing||this._contentName===null?this._contentName:Y.replaceCaptures(this._contentName,n,e)}},hn=class extends V{constructor(n,e,t,s,r){super(n,e,t,s),this.retokenizeCapturedWithRuleId=r}dispose(){}collectPatterns(n,e){throw new Error("Not supported!")}compile(n,e){throw new Error("Not supported!")}compileAG(n,e,t,s){throw new Error("Not supported!")}},un=class extends V{constructor(n,e,t,s,r){super(n,e,t,null),this._match=new U(s,this.id),this.captures=r,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugMatchRegExp(){return`${this._match.source}`}collectPatterns(n,e){e.push(this._match)}compile(n,e){return this._getCachedCompiledPatterns(n).compile(n)}compileAG(n,e,t,s){return this._getCachedCompiledPatterns(n).compileAG(n,t,s)}_getCachedCompiledPatterns(n){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new K,this.collectPatterns(n,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},ze=class extends V{constructor(n,e,t,s,r){super(n,e,t,s),this.patterns=r.patterns,this.hasMissingPatterns=r.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}collectPatterns(n,e){for(const t of this.patterns)n.getRule(t).collectPatterns(n,e)}compile(n,e){return this._getCachedCompiledPatterns(n).compile(n)}compileAG(n,e,t,s){return this._getCachedCompiledPatterns(n).compileAG(n,t,s)}_getCachedCompiledPatterns(n){return this._cachedCompiledPatterns||(this._cachedCompiledPatterns=new K,this.collectPatterns(n,this._cachedCompiledPatterns)),this._cachedCompiledPatterns}},Re=class extends V{constructor(n,e,t,s,r,i,o,c,a,l){super(n,e,t,s),this._begin=new U(r,this.id),this.beginCaptures=i,this._end=new U(o||"￿",-1),this.endHasBackReferences=this._end.hasBackReferences,this.endCaptures=c,this.applyEndPatternLast=a||!1,this.patterns=l.patterns,this.hasMissingPatterns=l.hasMissingPatterns,this._cachedCompiledPatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugEndRegExp(){return`${this._end.source}`}getEndWithResolvedBackReferences(n,e){return this._end.resolveBackReferences(n,e)}collectPatterns(n,e){e.push(this._begin)}compile(n,e){return this._getCachedCompiledPatterns(n,e).compile(n)}compileAG(n,e,t,s){return this._getCachedCompiledPatterns(n,e).compileAG(n,t,s)}_getCachedCompiledPatterns(n,e){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new K;for(const t of this.patterns)n.getRule(t).collectPatterns(n,this._cachedCompiledPatterns);this.applyEndPatternLast?this._cachedCompiledPatterns.push(this._end.hasBackReferences?this._end.clone():this._end):this._cachedCompiledPatterns.unshift(this._end.hasBackReferences?this._end.clone():this._end)}return this._end.hasBackReferences&&(this.applyEndPatternLast?this._cachedCompiledPatterns.setSource(this._cachedCompiledPatterns.length()-1,e):this._cachedCompiledPatterns.setSource(0,e)),this._cachedCompiledPatterns}},ie=class extends V{constructor(n,e,t,s,r,i,o,c,a){super(n,e,t,s),this._begin=new U(r,this.id),this.beginCaptures=i,this.whileCaptures=c,this._while=new U(o,mt),this.whileHasBackReferences=this._while.hasBackReferences,this.patterns=a.patterns,this.hasMissingPatterns=a.hasMissingPatterns,this._cachedCompiledPatterns=null,this._cachedCompiledWhilePatterns=null}dispose(){this._cachedCompiledPatterns&&(this._cachedCompiledPatterns.dispose(),this._cachedCompiledPatterns=null),this._cachedCompiledWhilePatterns&&(this._cachedCompiledWhilePatterns.dispose(),this._cachedCompiledWhilePatterns=null)}get debugBeginRegExp(){return`${this._begin.source}`}get debugWhileRegExp(){return`${this._while.source}`}getWhileWithResolvedBackReferences(n,e){return this._while.resolveBackReferences(n,e)}collectPatterns(n,e){e.push(this._begin)}compile(n,e){return this._getCachedCompiledPatterns(n).compile(n)}compileAG(n,e,t,s){return this._getCachedCompiledPatterns(n).compileAG(n,t,s)}_getCachedCompiledPatterns(n){if(!this._cachedCompiledPatterns){this._cachedCompiledPatterns=new K;for(const e of this.patterns)n.getRule(e).collectPatterns(n,this._cachedCompiledPatterns)}return this._cachedCompiledPatterns}compileWhile(n,e){return this._getCachedCompiledWhilePatterns(n,e).compile(n)}compileWhileAG(n,e,t,s){return this._getCachedCompiledWhilePatterns(n,e).compileAG(n,t,s)}_getCachedCompiledWhilePatterns(n,e){return this._cachedCompiledWhilePatterns||(this._cachedCompiledWhilePatterns=new K,this._cachedCompiledWhilePatterns.push(this._while.hasBackReferences?this._while.clone():this._while)),this._while.hasBackReferences&&this._cachedCompiledWhilePatterns.setSource(0,e||"￿"),this._cachedCompiledWhilePatterns}},gt=class N{static createCaptureRule(e,t,s,r,i){return e.registerRule(o=>new hn(t,o,s,r,i))}static getCompiledRuleId(e,t,s){return e.id||t.registerRule(r=>{if(e.id=r,e.match)return new un(e.$vscodeTextmateLocation,e.id,e.name,e.match,N._compileCaptures(e.captures,t,s));if(typeof e.begin>"u"){e.repository&&(s=it({},s,e.repository));let i=e.patterns;return typeof i>"u"&&e.include&&(i=[{include:e.include}]),new ze(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,N._compilePatterns(i,t,s))}return e.while?new ie(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,N._compileCaptures(e.beginCaptures||e.captures,t,s),e.while,N._compileCaptures(e.whileCaptures||e.captures,t,s),N._compilePatterns(e.patterns,t,s)):new Re(e.$vscodeTextmateLocation,e.id,e.name,e.contentName,e.begin,N._compileCaptures(e.beginCaptures||e.captures,t,s),e.end,N._compileCaptures(e.endCaptures||e.captures,t,s),e.applyEndPatternLast,N._compilePatterns(e.patterns,t,s))}),e.id}static _compileCaptures(e,t,s){let r=[];if(e){let i=0;for(const o in e){if(o==="$vscodeTextmateLocation")continue;const c=parseInt(o,10);c>i&&(i=c)}for(let o=0;o<=i;o++)r[o]=null;for(const o in e){if(o==="$vscodeTextmateLocation")continue;const c=parseInt(o,10);let a=0;e[o].patterns&&(a=N.getCompiledRuleId(e[o],t,s)),r[c]=N.createCaptureRule(t,e[o].$vscodeTextmateLocation,e[o].name,e[o].contentName,a)}}return r}static _compilePatterns(e,t,s){let r=[];if(e)for(let i=0,o=e.length;i<o;i++){const c=e[i];let a=-1;if(c.include){const l=pt(c.include);switch(l.kind){case 0:case 1:a=N.getCompiledRuleId(s[c.include],t,s);break;case 2:let h=s[l.ruleName];h&&(a=N.getCompiledRuleId(h,t,s));break;case 3:case 4:const u=l.scopeName,f=l.kind===4?l.ruleName:null,d=t.getExternalGrammar(u,s);if(d)if(f){let p=d.repository[f];p&&(a=N.getCompiledRuleId(p,t,d.repository))}else a=N.getCompiledRuleId(d.repository.$self,t,d.repository);break}}else a=N.getCompiledRuleId(c,t,s);if(a!==-1){const l=t.getRule(a);let h=!1;if((l instanceof ze||l instanceof Re||l instanceof ie)&&l.hasMissingPatterns&&l.patterns.length===0&&(h=!0),h)continue;r.push(a)}}return{patterns:r,hasMissingPatterns:(e?e.length:0)!==r.length}}},U=class _t{constructor(e,t){if(e){const s=e.length;let r=0,i=[],o=!1;for(let c=0;c<s;c++)if(e.charAt(c)==="\\"&&c+1<s){const l=e.charAt(c+1);l==="z"?(i.push(e.substring(r,c)),i.push("$(?!\\n)(?<!\\n)"),r=c+2):(l==="A"||l==="G")&&(o=!0),c++}this.hasAnchor=o,r===0?this.source=e:(i.push(e.substring(r,s)),this.source=i.join(""))}else this.hasAnchor=!1,this.source=e;this.hasAnchor?this._anchorCache=this._buildAnchorCache():this._anchorCache=null,this.ruleId=t,this.hasBackReferences=cn.test(this.source)}clone(){return new _t(this.source,this.ruleId)}setSource(e){this.source!==e&&(this.source=e,this.hasAnchor&&(this._anchorCache=this._buildAnchorCache()))}resolveBackReferences(e,t){let s=t.map(r=>e.substring(r.start,r.end));return Fe.lastIndex=0,this.source.replace(Fe,(r,i)=>lt(s[parseInt(i,10)]||""))}_buildAnchorCache(){let e=[],t=[],s=[],r=[],i,o,c,a;for(i=0,o=this.source.length;i<o;i++)c=this.source.charAt(i),e[i]=c,t[i]=c,s[i]=c,r[i]=c,c==="\\"&&i+1<o&&(a=this.source.charAt(i+1),a==="A"?(e[i+1]="￿",t[i+1]="￿",s[i+1]="A",r[i+1]="A"):a==="G"?(e[i+1]="￿",t[i+1]="G",s[i+1]="￿",r[i+1]="G"):(e[i+1]=a,t[i+1]=a,s[i+1]=a,r[i+1]=a),i++);return{A0_G0:e.join(""),A0_G1:t.join(""),A1_G0:s.join(""),A1_G1:r.join("")}}resolveAnchors(e,t){return!this.hasAnchor||!this._anchorCache?this.source:e?t?this._anchorCache.A1_G1:this._anchorCache.A1_G0:t?this._anchorCache.A0_G1:this._anchorCache.A0_G0}},K=class{constructor(){this._items=[],this._hasAnchors=!1,this._cached=null,this._anchorCache={A0_G0:null,A0_G1:null,A1_G0:null,A1_G1:null}}dispose(){this._disposeCaches()}_disposeCaches(){this._cached&&(this._cached.dispose(),this._cached=null),this._anchorCache.A0_G0&&(this._anchorCache.A0_G0.dispose(),this._anchorCache.A0_G0=null),this._anchorCache.A0_G1&&(this._anchorCache.A0_G1.dispose(),this._anchorCache.A0_G1=null),this._anchorCache.A1_G0&&(this._anchorCache.A1_G0.dispose(),this._anchorCache.A1_G0=null),this._anchorCache.A1_G1&&(this._anchorCache.A1_G1.dispose(),this._anchorCache.A1_G1=null)}push(n){this._items.push(n),this._hasAnchors=this._hasAnchors||n.hasAnchor}unshift(n){this._items.unshift(n),this._hasAnchors=this._hasAnchors||n.hasAnchor}length(){return this._items.length}setSource(n,e){this._items[n].source!==e&&(this._disposeCaches(),this._items[n].setSource(e))}compile(n){if(!this._cached){let e=this._items.map(t=>t.source);this._cached=new qe(n,e,this._items.map(t=>t.ruleId))}return this._cached}compileAG(n,e,t){return this._hasAnchors?e?t?(this._anchorCache.A1_G1||(this._anchorCache.A1_G1=this._resolveAnchors(n,e,t)),this._anchorCache.A1_G1):(this._anchorCache.A1_G0||(this._anchorCache.A1_G0=this._resolveAnchors(n,e,t)),this._anchorCache.A1_G0):t?(this._anchorCache.A0_G1||(this._anchorCache.A0_G1=this._resolveAnchors(n,e,t)),this._anchorCache.A0_G1):(this._anchorCache.A0_G0||(this._anchorCache.A0_G0=this._resolveAnchors(n,e,t)),this._anchorCache.A0_G0):this.compile(n)}_resolveAnchors(n,e,t){let s=this._items.map(r=>r.resolveAnchors(e,t));return new qe(n,s,this._items.map(r=>r.ruleId))}},qe=class{constructor(n,e,t){this.regExps=e,this.rules=t,this.scanner=n.createOnigScanner(e)}dispose(){typeof this.scanner.dispose=="function"&&this.scanner.dispose()}toString(){const n=[];for(let e=0,t=this.rules.length;e<t;e++)n.push(" - "+this.rules[e]+": "+this.regExps[e]);return n.join(` +`)}findNextMatchSync(n,e,t){const s=this.scanner.findNextMatchSync(n,e,t);return s?{ruleId:this.rules[s.index],captureIndices:s.captureIndices}:null}},Ne=class{constructor(n,e){this.languageId=n,this.tokenType=e}},Ee=class ve{constructor(e,t){this._getBasicScopeAttributes=new ht(s=>{const r=this._scopeToLanguage(s),i=this._toStandardTokenType(s);return new Ne(r,i)}),this._defaultAttributes=new Ne(e,8),this._embeddedLanguagesMatcher=new dn(Object.entries(t||{}))}getDefaultAttributes(){return this._defaultAttributes}getBasicScopeAttributes(e){return e===null?ve._NULL_SCOPE_METADATA:this._getBasicScopeAttributes.get(e)}_scopeToLanguage(e){return this._embeddedLanguagesMatcher.match(e)||0}_toStandardTokenType(e){const t=e.match(ve.STANDARD_TOKEN_TYPE_REGEXP);if(!t)return 8;switch(t[1]){case"comment":return 1;case"string":return 2;case"regex":return 3;case"meta.embedded":return 0}throw new Error("Unexpected match for standard token type!")}};Ee._NULL_SCOPE_METADATA=new Ne(0,0);Ee.STANDARD_TOKEN_TYPE_REGEXP=/\b(comment|string|regex|meta\.embedded)\b/;var fn=Ee,dn=class{constructor(n){if(n.length===0)this.values=null,this.scopesRegExp=null;else{this.values=new Map(n);const e=n.map(([t,s])=>lt(t));e.sort(),e.reverse(),this.scopesRegExp=new RegExp(`^((${e.join(")|(")}))($|\\.)`,"")}}match(n){if(!this.scopesRegExp)return;const e=n.match(this.scopesRegExp);if(e)return this.values.get(e[1])}},He=class{constructor(n,e){this.stack=n,this.stoppedEarly=e}};function yt(n,e,t,s,r,i,o,c){const a=e.content.length;let l=!1,h=-1;if(o){const d=pn(n,e,t,s,r,i);r=d.stack,s=d.linePos,t=d.isFirstLine,h=d.anchorPosition}const u=Date.now();for(;!l;){if(c!==0&&Date.now()-u>c)return new He(r,!0);f()}return new He(r,!1);function f(){const d=mn(n,e,t,s,r,h);if(!d){i.produce(r,a),l=!0;return}const p=d.captureIndices,y=d.matchedRuleId,m=p&&p.length>0?p[0].end>s:!1;if(y===ln){const g=r.getRule(n);i.produce(r,p[0].start),r=r.withContentNameScopesList(r.nameScopesList),z(n,e,t,r,i,g.endCaptures,p),i.produce(r,p[0].end);const _=r;if(r=r.parent,h=_.getAnchorPos(),!m&&_.getEnterPos()===s){r=_,i.produce(r,a),l=!0;return}}else{const g=n.getRule(y);i.produce(r,p[0].start);const _=r,b=g.getName(e.content,p),S=r.contentNameScopesList.pushAttributed(b,n);if(r=r.push(y,s,h,p[0].end===a,null,S,S),g instanceof Re){const C=g;z(n,e,t,r,i,C.beginCaptures,p),i.produce(r,p[0].end),h=p[0].end;const I=C.getContentName(e.content,p),w=S.pushAttributed(I,n);if(r=r.withContentNameScopesList(w),C.endHasBackReferences&&(r=r.withEndRule(C.getEndWithResolvedBackReferences(e.content,p))),!m&&_.hasSameRuleAs(r)){r=r.pop(),i.produce(r,a),l=!0;return}}else if(g instanceof ie){const C=g;z(n,e,t,r,i,C.beginCaptures,p),i.produce(r,p[0].end),h=p[0].end;const I=C.getContentName(e.content,p),w=S.pushAttributed(I,n);if(r=r.withContentNameScopesList(w),C.whileHasBackReferences&&(r=r.withEndRule(C.getWhileWithResolvedBackReferences(e.content,p))),!m&&_.hasSameRuleAs(r)){r=r.pop(),i.produce(r,a),l=!0;return}}else if(z(n,e,t,r,i,g.captures,p),i.produce(r,p[0].end),r=r.pop(),!m){r=r.safePop(),i.produce(r,a),l=!0;return}}p[0].end>s&&(s=p[0].end,t=!1)}}function pn(n,e,t,s,r,i){let o=r.beginRuleCapturedEOL?0:-1;const c=[];for(let a=r;a;a=a.pop()){const l=a.getRule(n);l instanceof ie&&c.push({rule:l,stack:a})}for(let a=c.pop();a;a=c.pop()){const{ruleScanner:l,findOptions:h}=yn(a.rule,n,a.stack.endRule,t,s===o),u=l.findNextMatchSync(e,s,h);if(u){if(u.ruleId!==mt){r=a.stack.pop();break}u.captureIndices&&u.captureIndices.length&&(i.produce(a.stack,u.captureIndices[0].start),z(n,e,t,a.stack,i,a.rule.whileCaptures,u.captureIndices),i.produce(a.stack,u.captureIndices[0].end),o=u.captureIndices[0].end,u.captureIndices[0].end>s&&(s=u.captureIndices[0].end,t=!1))}else{r=a.stack.pop();break}}return{stack:r,linePos:s,anchorPosition:o,isFirstLine:t}}function mn(n,e,t,s,r,i){const o=gn(n,e,t,s,r,i),c=n.getInjections();if(c.length===0)return o;const a=_n(c,n,e,t,s,r,i);if(!a)return o;if(!o)return a;const l=o.captureIndices[0].start,h=a.captureIndices[0].start;return h<l||a.priorityMatch&&h===l?a:o}function gn(n,e,t,s,r,i){const o=r.getRule(n),{ruleScanner:c,findOptions:a}=bt(o,n,r.endRule,t,s===i),l=c.findNextMatchSync(e,s,a);return l?{captureIndices:l.captureIndices,matchedRuleId:l.ruleId}:null}function _n(n,e,t,s,r,i,o){let c=Number.MAX_VALUE,a=null,l,h=0;const u=i.contentNameScopesList.getScopeNames();for(let f=0,d=n.length;f<d;f++){const p=n[f];if(!p.matcher(u))continue;const y=e.getRule(p.ruleId),{ruleScanner:m,findOptions:g}=bt(y,e,null,s,r===o),_=m.findNextMatchSync(t,r,g);if(!_)continue;const b=_.captureIndices[0].start;if(!(b>=c)&&(c=b,a=_.captureIndices,l=_.ruleId,h=p.priority,c===r))break}return a?{priorityMatch:h===-1,captureIndices:a,matchedRuleId:l}:null}function bt(n,e,t,s,r){return{ruleScanner:n.compileAG(e,t,s,r),findOptions:0}}function yn(n,e,t,s,r){return{ruleScanner:n.compileWhileAG(e,t,s,r),findOptions:0}}function z(n,e,t,s,r,i,o){if(i.length===0)return;const c=e.content,a=Math.min(i.length,o.length),l=[],h=o[0].end;for(let u=0;u<a;u++){const f=i[u];if(f===null)continue;const d=o[u];if(d.length===0)continue;if(d.start>h)break;for(;l.length>0&&l[l.length-1].endPos<=d.start;)r.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop();if(l.length>0?r.produceFromScopes(l[l.length-1].scopes,d.start):r.produce(s,d.start),f.retokenizeCapturedWithRuleId){const y=f.getName(c,o),m=s.contentNameScopesList.pushAttributed(y,n),g=f.getContentName(c,o),_=m.pushAttributed(g,n),b=s.push(f.retokenizeCapturedWithRuleId,d.start,-1,!1,null,m,_),S=n.createOnigString(c.substring(0,d.end));yt(n,S,t&&d.start===0,d.start,b,r,!1,0),dt(S);continue}const p=f.getName(c,o);if(p!==null){const m=(l.length>0?l[l.length-1].scopes:s.contentNameScopesList).pushAttributed(p,n);l.push(new bn(m,d.end))}}for(;l.length>0;)r.produceFromScopes(l[l.length-1].scopes,l[l.length-1].endPos),l.pop()}var bn=class{constructor(n,e){this.scopes=n,this.endPos=e}};function Sn(n,e,t,s,r,i,o,c){return new wn(n,e,t,s,r,i,o,c)}function Ue(n,e,t,s,r){const i=se(e,oe),o=gt.getCompiledRuleId(t,s,r.repository);for(const c of i)n.push({debugSelector:e,matcher:c.matcher,ruleId:o,grammar:r,priority:c.priority})}function oe(n,e){if(e.length<n.length)return!1;let t=0;return n.every(s=>{for(let r=t;r<e.length;r++)if(Cn(e[r],s))return t=r+1,!0;return!1})}function Cn(n,e){if(!n)return!1;if(n===e)return!0;const t=e.length;return n.length>t&&n.substr(0,t)===e&&n[t]==="."}var wn=class{constructor(n,e,t,s,r,i,o,c){if(this._rootScopeName=n,this.balancedBracketSelectors=i,this._onigLib=c,this._basicScopeAttributesProvider=new fn(t,s),this._rootId=-1,this._lastRuleId=0,this._ruleId2desc=[null],this._includedGrammars={},this._grammarRepository=o,this._grammar=Ke(e,null),this._injections=null,this._tokenTypeMatchers=[],r)for(const a of Object.keys(r)){const l=se(a,oe);for(const h of l)this._tokenTypeMatchers.push({matcher:h.matcher,type:r[a]})}}get themeProvider(){return this._grammarRepository}dispose(){for(const n of this._ruleId2desc)n&&n.dispose()}createOnigScanner(n){return this._onigLib.createOnigScanner(n)}createOnigString(n){return this._onigLib.createOnigString(n)}getMetadataForScope(n){return this._basicScopeAttributesProvider.getBasicScopeAttributes(n)}_collectInjections(){const n={lookup:r=>r===this._rootScopeName?this._grammar:this.getExternalGrammar(r),injections:r=>this._grammarRepository.injections(r)},e=[],t=this._rootScopeName,s=n.lookup(t);if(s){const r=s.injections;if(r)for(let o in r)Ue(e,o,r[o],this,s);const i=this._grammarRepository.injections(t);i&&i.forEach(o=>{const c=this.getExternalGrammar(o);if(c){const a=c.injectionSelector;a&&Ue(e,a,c,this,c)}})}return e.sort((r,i)=>r.priority-i.priority),e}getInjections(){return this._injections===null&&(this._injections=this._collectInjections()),this._injections}registerRule(n){const e=++this._lastRuleId,t=n(e);return this._ruleId2desc[e]=t,t}getRule(n){return this._ruleId2desc[n]}getExternalGrammar(n,e){if(this._includedGrammars[n])return this._includedGrammars[n];if(this._grammarRepository){const t=this._grammarRepository.lookup(n);if(t)return this._includedGrammars[n]=Ke(t,e&&e.$base),this._includedGrammars[n]}}tokenizeLine(n,e,t=0){const s=this._tokenize(n,e,!1,t);return{tokens:s.lineTokens.getResult(s.ruleStack,s.lineLength),ruleStack:s.ruleStack,stoppedEarly:s.stoppedEarly}}tokenizeLine2(n,e,t=0){const s=this._tokenize(n,e,!0,t);return{tokens:s.lineTokens.getBinaryResult(s.ruleStack,s.lineLength),ruleStack:s.ruleStack,stoppedEarly:s.stoppedEarly}}_tokenize(n,e,t,s){this._rootId===-1&&(this._rootId=gt.getCompiledRuleId(this._grammar.repository.$self,this,this._grammar.repository),this.getInjections());let r;if(!e||e===Ie.NULL){r=!0;const l=this._basicScopeAttributesProvider.getDefaultAttributes(),h=this.themeProvider.getDefaults(),u=j.set(0,l.languageId,l.tokenType,null,h.fontStyle,h.foregroundId,h.backgroundId),f=this.getRule(this._rootId).getName(null,null);let d;f?d=q.createRootAndLookUpScopeName(f,u,this):d=q.createRoot("unknown",u),e=new Ie(null,this._rootId,-1,-1,!1,null,d,d)}else r=!1,e.reset();n=n+` +`;const i=this.createOnigString(n),o=i.content.length,c=new Nn(t,n,this._tokenTypeMatchers,this.balancedBracketSelectors),a=yt(this,i,r,0,e,c,!0,s);return dt(i),{lineLength:o,lineTokens:c,ruleStack:a.stack,stoppedEarly:a.stoppedEarly}}};function Ke(n,e){return n=Wt(n),n.repository=n.repository||{},n.repository.$self={$vscodeTextmateLocation:n.$vscodeTextmateLocation,patterns:n.patterns,name:n.scopeName},n.repository.$base=e||n.repository.$self,n}var q=class A{constructor(e,t,s){this.parent=e,this.scopePath=t,this.tokenAttributes=s}static fromExtension(e,t){let s=e,r=(e==null?void 0:e.scopePath)??null;for(const i of t)r=_e.push(r,i.scopeNames),s=new A(s,r,i.encodedTokenAttributes);return s}static createRoot(e,t){return new A(null,new _e(null,e),t)}static createRootAndLookUpScopeName(e,t,s){const r=s.getMetadataForScope(e),i=new _e(null,e),o=s.themeProvider.themeMatch(i),c=A.mergeAttributes(t,r,o);return new A(null,i,c)}get scopeName(){return this.scopePath.scopeName}toString(){return this.getScopeNames().join(" ")}equals(e){return A.equals(this,e)}static equals(e,t){do{if(e===t||!e&&!t)return!0;if(!e||!t||e.scopeName!==t.scopeName||e.tokenAttributes!==t.tokenAttributes)return!1;e=e.parent,t=t.parent}while(!0)}static mergeAttributes(e,t,s){let r=-1,i=0,o=0;return s!==null&&(r=s.fontStyle,i=s.foregroundId,o=s.backgroundId),j.set(e,t.languageId,t.tokenType,null,r,i,o)}pushAttributed(e,t){if(e===null)return this;if(e.indexOf(" ")===-1)return A._pushAttributed(this,e,t);const s=e.split(/ /g);let r=this;for(const i of s)r=A._pushAttributed(r,i,t);return r}static _pushAttributed(e,t,s){const r=s.getMetadataForScope(t),i=e.scopePath.push(t),o=s.themeProvider.themeMatch(i),c=A.mergeAttributes(e.tokenAttributes,r,o);return new A(e,i,c)}getScopeNames(){return this.scopePath.getSegments()}getExtensionIfDefined(e){var r;const t=[];let s=this;for(;s&&s!==e;)t.push({encodedTokenAttributes:s.tokenAttributes,scopeNames:s.scopePath.getExtensionIfDefined(((r=s.parent)==null?void 0:r.scopePath)??null)}),s=s.parent;return s===e?t.reverse():void 0}},ke=class M{constructor(e,t,s,r,i,o,c,a){this.parent=e,this.ruleId=t,this.beginRuleCapturedEOL=i,this.endRule=o,this.nameScopesList=c,this.contentNameScopesList=a,this._stackElementBrand=void 0,this.depth=this.parent?this.parent.depth+1:1,this._enterPos=s,this._anchorPos=r}equals(e){return e===null?!1:M._equals(this,e)}static _equals(e,t){return e===t?!0:this._structuralEquals(e,t)?q.equals(e.contentNameScopesList,t.contentNameScopesList):!1}static _structuralEquals(e,t){do{if(e===t||!e&&!t)return!0;if(!e||!t||e.depth!==t.depth||e.ruleId!==t.ruleId||e.endRule!==t.endRule)return!1;e=e.parent,t=t.parent}while(!0)}clone(){return this}static _reset(e){for(;e;)e._enterPos=-1,e._anchorPos=-1,e=e.parent}reset(){M._reset(this)}pop(){return this.parent}safePop(){return this.parent?this.parent:this}push(e,t,s,r,i,o,c){return new M(this,e,t,s,r,i,o,c)}getEnterPos(){return this._enterPos}getAnchorPos(){return this._anchorPos}getRule(e){return e.getRule(this.ruleId)}toString(){const e=[];return this._writeString(e,0),"["+e.join(",")+"]"}_writeString(e,t){var s,r;return this.parent&&(t=this.parent._writeString(e,t)),e[t++]=`(${this.ruleId}, ${(s=this.nameScopesList)==null?void 0:s.toString()}, ${(r=this.contentNameScopesList)==null?void 0:r.toString()})`,t}withContentNameScopesList(e){return this.contentNameScopesList===e?this:this.parent.push(this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,this.endRule,this.nameScopesList,e)}withEndRule(e){return this.endRule===e?this:new M(this.parent,this.ruleId,this._enterPos,this._anchorPos,this.beginRuleCapturedEOL,e,this.nameScopesList,this.contentNameScopesList)}hasSameRuleAs(e){let t=this;for(;t&&t._enterPos===e._enterPos;){if(t.ruleId===e.ruleId)return!0;t=t.parent}return!1}toStateStackFrame(){var e,t,s;return{ruleId:this.ruleId,beginRuleCapturedEOL:this.beginRuleCapturedEOL,endRule:this.endRule,nameScopesList:((t=this.nameScopesList)==null?void 0:t.getExtensionIfDefined(((e=this.parent)==null?void 0:e.nameScopesList)??null))??[],contentNameScopesList:((s=this.contentNameScopesList)==null?void 0:s.getExtensionIfDefined(this.nameScopesList))??[]}}static pushFrame(e,t){const s=q.fromExtension((e==null?void 0:e.nameScopesList)??null,t.nameScopesList);return new M(e,t.ruleId,t.enterPos??-1,t.anchorPos??-1,t.beginRuleCapturedEOL,t.endRule,s,q.fromExtension(s,t.contentNameScopesList))}};ke.NULL=new ke(null,0,0,0,!1,null,null,null);var Ie=ke,Rn=class{constructor(n,e){this.allowAny=!1,this.balancedBracketScopes=n.flatMap(t=>t==="*"?(this.allowAny=!0,[]):se(t,oe).map(s=>s.matcher)),this.unbalancedBracketScopes=e.flatMap(t=>se(t,oe).map(s=>s.matcher))}get matchesAlways(){return this.allowAny&&this.unbalancedBracketScopes.length===0}get matchesNever(){return this.balancedBracketScopes.length===0&&!this.allowAny}match(n){for(const e of this.unbalancedBracketScopes)if(e(n))return!1;for(const e of this.balancedBracketScopes)if(e(n))return!0;return this.allowAny}},Nn=class{constructor(n,e,t,s){this.balancedBracketSelectors=s,this._emitBinaryTokens=n,this._tokenTypeOverrides=t,this._lineText=null,this._tokens=[],this._binaryTokens=[],this._lastTokenEndIndex=0}produce(n,e){this.produceFromScopes(n.contentNameScopesList,e)}produceFromScopes(n,e){var s;if(this._lastTokenEndIndex>=e)return;if(this._emitBinaryTokens){let r=(n==null?void 0:n.tokenAttributes)??0,i=!1;if((s=this.balancedBracketSelectors)!=null&&s.matchesAlways&&(i=!0),this._tokenTypeOverrides.length>0||this.balancedBracketSelectors&&!this.balancedBracketSelectors.matchesAlways&&!this.balancedBracketSelectors.matchesNever){const o=(n==null?void 0:n.getScopeNames())??[];for(const c of this._tokenTypeOverrides)c.matcher(o)&&(r=j.set(r,0,c.type,null,-1,0,0));this.balancedBracketSelectors&&(i=this.balancedBracketSelectors.match(o))}if(i&&(r=j.set(r,0,8,i,-1,0,0)),this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-1]===r){this._lastTokenEndIndex=e;return}this._binaryTokens.push(this._lastTokenEndIndex),this._binaryTokens.push(r),this._lastTokenEndIndex=e;return}const t=(n==null?void 0:n.getScopeNames())??[];this._tokens.push({startIndex:this._lastTokenEndIndex,endIndex:e,scopes:t}),this._lastTokenEndIndex=e}getResult(n,e){return this._tokens.length>0&&this._tokens[this._tokens.length-1].startIndex===e-1&&this._tokens.pop(),this._tokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(n,e),this._tokens[this._tokens.length-1].startIndex=0),this._tokens}getBinaryResult(n,e){this._binaryTokens.length>0&&this._binaryTokens[this._binaryTokens.length-2]===e-1&&(this._binaryTokens.pop(),this._binaryTokens.pop()),this._binaryTokens.length===0&&(this._lastTokenEndIndex=-1,this.produce(n,e),this._binaryTokens[this._binaryTokens.length-2]=0);const t=new Uint32Array(this._binaryTokens.length);for(let s=0,r=this._binaryTokens.length;s<r;s++)t[s]=this._binaryTokens[s];return t}},vn=class{constructor(n,e){this._onigLib=e,this._grammars=new Map,this._rawGrammars=new Map,this._injectionGrammars=new Map,this._theme=n}dispose(){for(const n of this._grammars.values())n.dispose()}setTheme(n){this._theme=n}getColorMap(){return this._theme.getColorMap()}addGrammar(n,e){this._rawGrammars.set(n.scopeName,n),e&&this._injectionGrammars.set(n.scopeName,e)}lookup(n){return this._rawGrammars.get(n)}injections(n){return this._injectionGrammars.get(n)}getDefaults(){return this._theme.getDefaults()}themeMatch(n){return this._theme.match(n)}grammarForScopeName(n,e,t,s,r){if(!this._grammars.has(n)){let i=this._rawGrammars.get(n);if(!i)return null;this._grammars.set(n,Sn(n,i,e,t,s,r,this,this._onigLib))}return this._grammars.get(n)}},kn=class{constructor(e){this._options=e,this._syncRegistry=new vn(ne.createFromRawTheme(e.theme,e.colorMap),e.onigLib),this._ensureGrammarCache=new Map}dispose(){this._syncRegistry.dispose()}setTheme(e,t){this._syncRegistry.setTheme(ne.createFromRawTheme(e,t))}getColorMap(){return this._syncRegistry.getColorMap()}loadGrammarWithEmbeddedLanguages(e,t,s){return this.loadGrammarWithConfiguration(e,t,{embeddedLanguages:s})}loadGrammarWithConfiguration(e,t,s){return this._loadGrammar(e,t,s.embeddedLanguages,s.tokenTypes,new Rn(s.balancedBracketSelectors||[],s.unbalancedBracketSelectors||[]))}loadGrammar(e){return this._loadGrammar(e,0,null,null,null)}_loadGrammar(e,t,s,r,i){const o=new en(this._syncRegistry,e);for(;o.Q.length>0;)o.Q.map(c=>this._loadSingleGrammar(c.scopeName)),o.processQueue();return this._grammarForScopeName(e,t,s,r,i)}_loadSingleGrammar(e){this._ensureGrammarCache.has(e)||(this._doLoadSingleGrammar(e),this._ensureGrammarCache.set(e,!0))}_doLoadSingleGrammar(e){const t=this._options.loadGrammar(e);if(t){const s=typeof this._options.getInjections=="function"?this._options.getInjections(e):void 0;this._syncRegistry.addGrammar(t,s)}}addGrammar(e,t=[],s=0,r=null){return this._syncRegistry.addGrammar(e,t),this._grammarForScopeName(e.scopeName,s,r)}_grammarForScopeName(e,t=0,s=null,r=null,i=null){return this._syncRegistry.grammarForScopeName(e,t,s,r,i)}},Ae=Ie.NULL;const In=/^>|^->|<!--|-->|--!>|<!-$/g,An=[">"],Tn=["<",">"];function En(n,e,t,s){return s.settings.bogusComments?"<?"+B(n.value,Object.assign({},s.settings.characterReferences,{subset:An}))+">":"<!--"+n.value.replace(In,r)+"-->";function r(i){return B(i,Object.assign({},s.settings.characterReferences,{subset:Tn}))}}function Pn(n,e,t,s){return"<!"+(s.settings.upperDoctype?"DOCTYPE":"doctype")+(s.settings.tightDoctype?"":" ")+"html>"}const xn=/[ \t\n\f\r]/g;function Pe(n){return typeof n=="object"?n.type==="text"?Je(n.value):!1:Je(n)}function Je(n){return n.replace(xn,"")===""}const R=Ct(1),St=Ct(-1),Ln=[];function Ct(n){return e;function e(t,s,r){const i=t?t.children:Ln;let o=(s||0)+n,c=i[o];if(!r)for(;c&&Pe(c);)o+=n,c=i[o];return c}}const Gn={}.hasOwnProperty;function wt(n){return e;function e(t,s,r){return Gn.call(n,t.tagName)&&n[t.tagName](t,s,r)}}const xe=wt({body:On,caption:ye,colgroup:ye,dd:Wn,dt:jn,head:ye,html:$n,li:Bn,optgroup:Dn,option:Fn,p:Mn,rp:Ve,rt:Ve,tbody:qn,td:Qe,tfoot:Hn,th:Qe,thead:zn,tr:Un});function ye(n,e,t){const s=R(t,e,!0);return!s||s.type!=="comment"&&!(s.type==="text"&&Pe(s.value.charAt(0)))}function $n(n,e,t){const s=R(t,e);return!s||s.type!=="comment"}function On(n,e,t){const s=R(t,e);return!s||s.type!=="comment"}function Mn(n,e,t){const s=R(t,e);return s?s.type==="element"&&(s.tagName==="address"||s.tagName==="article"||s.tagName==="aside"||s.tagName==="blockquote"||s.tagName==="details"||s.tagName==="div"||s.tagName==="dl"||s.tagName==="fieldset"||s.tagName==="figcaption"||s.tagName==="figure"||s.tagName==="footer"||s.tagName==="form"||s.tagName==="h1"||s.tagName==="h2"||s.tagName==="h3"||s.tagName==="h4"||s.tagName==="h5"||s.tagName==="h6"||s.tagName==="header"||s.tagName==="hgroup"||s.tagName==="hr"||s.tagName==="main"||s.tagName==="menu"||s.tagName==="nav"||s.tagName==="ol"||s.tagName==="p"||s.tagName==="pre"||s.tagName==="section"||s.tagName==="table"||s.tagName==="ul"):!t||!(t.type==="element"&&(t.tagName==="a"||t.tagName==="audio"||t.tagName==="del"||t.tagName==="ins"||t.tagName==="map"||t.tagName==="noscript"||t.tagName==="video"))}function Bn(n,e,t){const s=R(t,e);return!s||s.type==="element"&&s.tagName==="li"}function jn(n,e,t){const s=R(t,e);return!!(s&&s.type==="element"&&(s.tagName==="dt"||s.tagName==="dd"))}function Wn(n,e,t){const s=R(t,e);return!s||s.type==="element"&&(s.tagName==="dt"||s.tagName==="dd")}function Ve(n,e,t){const s=R(t,e);return!s||s.type==="element"&&(s.tagName==="rp"||s.tagName==="rt")}function Dn(n,e,t){const s=R(t,e);return!s||s.type==="element"&&s.tagName==="optgroup"}function Fn(n,e,t){const s=R(t,e);return!s||s.type==="element"&&(s.tagName==="option"||s.tagName==="optgroup")}function zn(n,e,t){const s=R(t,e);return!!(s&&s.type==="element"&&(s.tagName==="tbody"||s.tagName==="tfoot"))}function qn(n,e,t){const s=R(t,e);return!s||s.type==="element"&&(s.tagName==="tbody"||s.tagName==="tfoot")}function Hn(n,e,t){return!R(t,e)}function Un(n,e,t){const s=R(t,e);return!s||s.type==="element"&&s.tagName==="tr"}function Qe(n,e,t){const s=R(t,e);return!s||s.type==="element"&&(s.tagName==="td"||s.tagName==="th")}const Kn=wt({body:Qn,colgroup:Yn,head:Vn,html:Jn,tbody:Xn});function Jn(n){const e=R(n,-1);return!e||e.type!=="comment"}function Vn(n){const e=new Set;for(const s of n.children)if(s.type==="element"&&(s.tagName==="base"||s.tagName==="title")){if(e.has(s.tagName))return!1;e.add(s.tagName)}const t=n.children[0];return!t||t.type==="element"}function Qn(n){const e=R(n,-1,!0);return!e||e.type!=="comment"&&!(e.type==="text"&&Pe(e.value.charAt(0)))&&!(e.type==="element"&&(e.tagName==="meta"||e.tagName==="link"||e.tagName==="script"||e.tagName==="style"||e.tagName==="template"))}function Yn(n,e,t){const s=St(t,e),r=R(n,-1,!0);return t&&s&&s.type==="element"&&s.tagName==="colgroup"&&xe(s,t.children.indexOf(s),t)?!1:!!(r&&r.type==="element"&&r.tagName==="col")}function Xn(n,e,t){const s=St(t,e),r=R(n,-1);return t&&s&&s.type==="element"&&(s.tagName==="thead"||s.tagName==="tbody")&&xe(s,t.children.indexOf(s),t)?!1:!!(r&&r.type==="element"&&r.tagName==="tr")}const X={name:[[` +\f\r &/=>`.split(""),` +\f\r "&'/=>\``.split("")],[`\0 +\f\r "&'/<=>`.split(""),`\0 +\f\r "&'/<=>\``.split("")]],unquoted:[[` +\f\r &>`.split(""),`\0 +\f\r "&'<=>\``.split("")],[`\0 +\f\r "&'<=>\``.split(""),`\0 +\f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function Zn(n,e,t,s){const r=s.schema,i=r.space==="svg"?!1:s.settings.omitOptionalTags;let o=r.space==="svg"?s.settings.closeEmptyElements:s.settings.voids.includes(n.tagName.toLowerCase());const c=[];let a;r.space==="html"&&n.tagName==="svg"&&(s.schema=rt);const l=es(s,n.properties),h=s.all(r.space==="html"&&n.tagName==="template"?n.content:n);return s.schema=r,h&&(o=!1),(l||!i||!Kn(n,e,t))&&(c.push("<",n.tagName,l?" "+l:""),o&&(r.space==="svg"||s.settings.closeSelfClosing)&&(a=l.charAt(l.length-1),(!s.settings.tightSelfClosing||a==="/"||a&&a!=='"'&&a!=="'")&&c.push(" "),c.push("/")),c.push(">")),c.push(h),!o&&(!i||!xe(n,e,t))&&c.push("</"+n.tagName+">"),c.join("")}function es(n,e){const t=[];let s=-1,r;if(e){for(r in e)if(e[r]!==null&&e[r]!==void 0){const i=ts(n,r,e[r]);i&&t.push(i)}}for(;++s<t.length;){const i=n.settings.tightAttributes?t[s].charAt(t[s].length-1):void 0;s!==t.length-1&&i!=='"'&&i!=="'"&&(t[s]+=" ")}return t.join("")}function ts(n,e,t){const s=Bt(n.schema,e),r=n.settings.allowParseErrors&&n.schema.space==="html"?0:1,i=n.settings.allowDangerousCharacters?0:1;let o=n.quote,c;if(s.overloadedBoolean&&(t===s.attribute||t==="")?t=!0:(s.boolean||s.overloadedBoolean&&typeof t!="string")&&(t=!!t),t==null||t===!1||typeof t=="number"&&Number.isNaN(t))return"";const a=B(s.attribute,Object.assign({},n.settings.characterReferences,{subset:X.name[r][i]}));return t===!0||(t=Array.isArray(t)?(s.commaSeparated?Gt:$t)(t,{padLeft:!n.settings.tightCommaSeparatedLists}):String(t),n.settings.collapseEmptyAttributes&&!t)?a:(n.settings.preferUnquoted&&(c=B(t,Object.assign({},n.settings.characterReferences,{attribute:!0,subset:X.unquoted[r][i]}))),c!==t&&(n.settings.quoteSmart&&je(t,o)>je(t,n.alternative)&&(o=n.alternative),c=o+B(t,Object.assign({},n.settings.characterReferences,{subset:(o==="'"?X.single:X.double)[r][i],attribute:!0}))+o),a+(c&&"="+c))}const ns=["<","&"];function Rt(n,e,t,s){return t&&t.type==="element"&&(t.tagName==="script"||t.tagName==="style")?n.value:B(n.value,Object.assign({},s.settings.characterReferences,{subset:ns}))}function ss(n,e,t,s){return s.settings.allowDangerousHtml?n.value:Rt(n,e,t,s)}function rs(n,e,t,s){return s.all(n)}const is=Ot("type",{invalid:os,unknown:as,handlers:{comment:En,doctype:Pn,element:Zn,raw:ss,root:rs,text:Rt}});function os(n){throw new Error("Expected node, not `"+n+"`")}function as(n){const e=n;throw new Error("Cannot compile unknown node `"+e.type+"`")}const cs={},ls={},hs=[];function us(n,e){const t=cs,s=t.quote||'"',r=s==='"'?"'":'"';if(s!=='"'&&s!=="'")throw new Error("Invalid quote `"+s+"`, expected `'` or `\"`");return{one:fs,all:ds,settings:{omitOptionalTags:t.omitOptionalTags||!1,allowParseErrors:t.allowParseErrors||!1,allowDangerousCharacters:t.allowDangerousCharacters||!1,quoteSmart:t.quoteSmart||!1,preferUnquoted:t.preferUnquoted||!1,tightAttributes:t.tightAttributes||!1,upperDoctype:t.upperDoctype||!1,tightDoctype:t.tightDoctype||!1,bogusComments:t.bogusComments||!1,tightCommaSeparatedLists:t.tightCommaSeparatedLists||!1,tightSelfClosing:t.tightSelfClosing||!1,collapseEmptyAttributes:t.collapseEmptyAttributes||!1,allowDangerousHtml:t.allowDangerousHtml||!1,voids:t.voids||Mt,characterReferences:t.characterReferences||ls,closeSelfClosing:t.closeSelfClosing||!1,closeEmptyElements:t.closeEmptyElements||!1},schema:t.space==="svg"?rt:jt,quote:s,alternative:r}.one(Array.isArray(n)?{type:"root",children:n}:n,void 0,void 0)}function fs(n,e,t){return is(n,e,t,this)}function ds(n){const e=[],t=n&&n.children||hs;let s=-1;for(;++s<t.length;)e[s]=this.one(t[s],s,n);return e.join("")}function ps(n){return Array.isArray(n)?n:[n]}function fe(n,e=!1){var i;const t=n.split(/(\r?\n)/g);let s=0;const r=[];for(let o=0;o<t.length;o+=2){const c=e?t[o]+(t[o+1]||""):t[o];r.push([c,s]),s+=t[o].length,s+=((i=t[o+1])==null?void 0:i.length)||0}return r}function Le(n){return!n||["plaintext","txt","text","plain"].includes(n)}function ms(n){return n==="ansi"||Le(n)}function Ge(n){return n==="none"}function gs(n){return Ge(n)}function Nt(n,e){var t;if(!e)return n;n.properties||(n.properties={}),(t=n.properties).class||(t.class=[]),typeof n.properties.class=="string"&&(n.properties.class=n.properties.class.split(/\s+/g)),Array.isArray(n.properties.class)||(n.properties.class=[]);const s=Array.isArray(e)?e:e.split(/\s+/g);for(const r of s)r&&!n.properties.class.includes(r)&&n.properties.class.push(r);return n}function _s(n,e){let t=0;const s=[];for(const r of e)r>t&&s.push({...n,content:n.content.slice(t,r),offset:n.offset+t}),t=r;return t<n.content.length&&s.push({...n,content:n.content.slice(t),offset:n.offset+t}),s}function ys(n,e){const t=Array.from(e instanceof Set?e:new Set(e)).sort((s,r)=>s-r);return t.length?n.map(s=>s.flatMap(r=>{const i=t.filter(o=>r.offset<o&&o<r.offset+r.content.length).map(o=>o-r.offset).sort((o,c)=>o-c);return i.length?_s(r,i):r})):n}async function vt(n){return Promise.resolve(typeof n=="function"?n():n).then(e=>e.default||e)}function ae(n,e){const t=typeof n=="string"?{}:{...n.colorReplacements},s=typeof n=="string"?n:n.name;for(const[r,i]of Object.entries((e==null?void 0:e.colorReplacements)||{}))typeof i=="string"?t[r]=i:r===s&&Object.assign(t,i);return t}function L(n,e){return n&&((e==null?void 0:e[n==null?void 0:n.toLowerCase()])||n)}function kt(n){const e={};return n.color&&(e.color=n.color),n.bgColor&&(e["background-color"]=n.bgColor),n.fontStyle&&(n.fontStyle&P.Italic&&(e["font-style"]="italic"),n.fontStyle&P.Bold&&(e["font-weight"]="bold"),n.fontStyle&P.Underline&&(e["text-decoration"]="underline")),e}function bs(n){return typeof n=="string"?n:Object.entries(n).map(([e,t])=>`${e}:${t}`).join(";")}function Ss(n){const e=fe(n,!0).map(([r])=>r);function t(r){if(r===n.length)return{line:e.length-1,character:e[e.length-1].length};let i=r,o=0;for(const c of e){if(i<c.length)break;i-=c.length,o++}return{line:o,character:i}}function s(r,i){let o=0;for(let c=0;c<r;c++)o+=e[c].length;return o+=i,o}return{lines:e,indexToPos:t,posToIndex:s}}class v extends Error{constructor(e){super(e),this.name="ShikiError"}}var Cs=Object.defineProperty,ws=(n,e,t)=>e in n?Cs(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,Ye=(n,e,t)=>(ws(n,typeof e!="symbol"?e+"":e,t),t);const It=new WeakMap;function de(n,e){It.set(n,e)}function J(n){return It.get(n)}class W{constructor(...e){if(Ye(this,"_stacks",{}),Ye(this,"lang"),e.length===2){const[t,s]=e;this.lang=s,this._stacks=t}else{const[t,s,r]=e;this.lang=s,this._stacks={[r]:t}}}get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(e,t){return new W(Object.fromEntries(ps(t).map(s=>[s,Ae])),e)}getInternalStack(e=this.theme){return this._stacks[e]}get scopes(){return Xe(this._stacks[this.theme])}getScopes(e=this.theme){return Xe(this._stacks[e])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.scopes}}}function Xe(n){const e=[],t=new Set;function s(r){var o;if(t.has(r))return;t.add(r);const i=(o=r==null?void 0:r.nameScopesList)==null?void 0:o.scopeName;i&&e.push(i),r.parent&&s(r.parent)}return s(n),e}function Rs(n,e){if(!(n instanceof W))throw new v("Invalid grammar state");return n.getInternalStack(e)}function Ns(){const n=new WeakMap;function e(t){if(!n.has(t.meta)){let s=function(o){if(typeof o=="number"){if(o<0||o>t.source.length)throw new v(`Invalid decoration offset: ${o}. Code length: ${t.source.length}`);return{...r.indexToPos(o),offset:o}}else{const c=r.lines[o.line];if(c===void 0)throw new v(`Invalid decoration position ${JSON.stringify(o)}. Lines length: ${r.lines.length}`);if(o.character<0||o.character>c.length)throw new v(`Invalid decoration position ${JSON.stringify(o)}. Line ${o.line} length: ${c.length}`);return{...o,offset:r.posToIndex(o.line,o.character)}}};const r=Ss(t.source),i=(t.options.decorations||[]).map(o=>({...o,start:s(o.start),end:s(o.end)}));vs(i),n.set(t.meta,{decorations:i,converter:r,source:t.source})}return n.get(t.meta)}return{name:"shiki:decorations",tokens(t){var o;if(!((o=this.options.decorations)!=null&&o.length))return;const r=e(this).decorations.flatMap(c=>[c.start.offset,c.end.offset]);return ys(t,r)},code(t){var h;if(!((h=this.options.decorations)!=null&&h.length))return;const s=e(this),r=Array.from(t.children).filter(u=>u.type==="element"&&u.tagName==="span");if(r.length!==s.converter.lines.length)throw new v(`Number of lines in code element (${r.length}) does not match the number of lines in the source (${s.converter.lines.length}). Failed to apply decorations.`);function i(u,f,d,p){const y=r[u];let m="",g=-1,_=-1;if(f===0&&(g=0),d===0&&(_=0),d===Number.POSITIVE_INFINITY&&(_=y.children.length),g===-1||_===-1)for(let S=0;S<y.children.length;S++)m+=At(y.children[S]),g===-1&&m.length===f&&(g=S+1),_===-1&&m.length===d&&(_=S+1);if(g===-1)throw new v(`Failed to find start index for decoration ${JSON.stringify(p.start)}`);if(_===-1)throw new v(`Failed to find end index for decoration ${JSON.stringify(p.end)}`);const b=y.children.slice(g,_);if(!p.alwaysWrap&&b.length===y.children.length)c(y,p,"line");else if(!p.alwaysWrap&&b.length===1&&b[0].type==="element")c(b[0],p,"token");else{const S={type:"element",tagName:"span",properties:{},children:b};c(S,p,"wrapper"),y.children.splice(g,b.length,S)}}function o(u,f){r[u]=c(r[u],f,"line")}function c(u,f,d){var m;const p=f.properties||{},y=f.transform||(g=>g);return u.tagName=f.tagName||"span",u.properties={...u.properties,...p,class:u.properties.class},(m=f.properties)!=null&&m.class&&Nt(u,f.properties.class),u=y(u,d)||u,u}const a=[],l=s.decorations.sort((u,f)=>f.start.offset-u.start.offset);for(const u of l){const{start:f,end:d}=u;if(f.line===d.line)i(f.line,f.character,d.character,u);else if(f.line<d.line){i(f.line,f.character,Number.POSITIVE_INFINITY,u);for(let p=f.line+1;p<d.line;p++)a.unshift(()=>o(p,u));i(d.line,0,d.character,u)}}a.forEach(u=>u())}}}function vs(n){for(let e=0;e<n.length;e++){const t=n[e];if(t.start.offset>t.end.offset)throw new v(`Invalid decoration range: ${JSON.stringify(t.start)} - ${JSON.stringify(t.end)}`);for(let s=e+1;s<n.length;s++){const r=n[s],i=t.start.offset<r.start.offset&&r.start.offset<t.end.offset,o=t.start.offset<r.end.offset&&r.end.offset<t.end.offset,c=r.start.offset<t.start.offset&&t.start.offset<r.end.offset,a=r.start.offset<t.end.offset&&t.end.offset<r.end.offset;if(i||o||c||a){if(o&&o||c&&a)continue;throw new v(`Decorations ${JSON.stringify(t.start)} and ${JSON.stringify(r.start)} intersect.`)}}}}function At(n){return n.type==="text"?n.value:n.type==="element"?n.children.map(At).join(""):""}const ks=[Ns()];function ce(n){return[...n.transformers||[],...ks]}var G=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],be={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",9:"strikethrough"};function Is(n,e){const t=n.indexOf("\x1B[",e);if(t!==-1){const s=n.indexOf("m",t);return{sequence:n.substring(t+2,s).split(";"),startPosition:t,position:s+1}}return{position:n.length}}function Ze(n,e){let t=1;const s=n[e+t++];let r;if(s==="2"){const i=[n[e+t++],n[e+t++],n[e+t]].map(o=>Number.parseInt(o));i.length===3&&!i.some(o=>Number.isNaN(o))&&(r={type:"rgb",rgb:i})}else if(s==="5"){const i=Number.parseInt(n[e+t]);Number.isNaN(i)||(r={type:"table",index:Number(i)})}return[t,r]}function As(n){const e=[];for(let t=0;t<n.length;t++){const s=n[t],r=Number.parseInt(s);if(!Number.isNaN(r))if(r===0)e.push({type:"resetAll"});else if(r<=9)be[r]&&e.push({type:"setDecoration",value:be[r]});else if(r<=29){const i=be[r-20];i&&e.push({type:"resetDecoration",value:i})}else if(r<=37)e.push({type:"setForegroundColor",value:{type:"named",name:G[r-30]}});else if(r===38){const[i,o]=Ze(n,t);o&&e.push({type:"setForegroundColor",value:o}),t+=i}else if(r===39)e.push({type:"resetForegroundColor"});else if(r<=47)e.push({type:"setBackgroundColor",value:{type:"named",name:G[r-40]}});else if(r===48){const[i,o]=Ze(n,t);o&&e.push({type:"setBackgroundColor",value:o}),t+=i}else r===49?e.push({type:"resetBackgroundColor"}):r>=90&&r<=97?e.push({type:"setForegroundColor",value:{type:"named",name:G[r-90+8]}}):r>=100&&r<=107&&e.push({type:"setBackgroundColor",value:{type:"named",name:G[r-100+8]}})}return e}function Ts(){let n=null,e=null,t=new Set;return{parse(s){const r=[];let i=0;do{const o=Is(s,i),c=o.sequence?s.substring(i,o.startPosition):s.substring(i);if(c.length>0&&r.push({value:c,foreground:n,background:e,decorations:new Set(t)}),o.sequence){const a=As(o.sequence);for(const l of a)l.type==="resetAll"?(n=null,e=null,t.clear()):l.type==="resetForegroundColor"?n=null:l.type==="resetBackgroundColor"?e=null:l.type==="resetDecoration"&&t.delete(l.value);for(const l of a)l.type==="setForegroundColor"?n=l.value:l.type==="setBackgroundColor"?e=l.value:l.type==="setDecoration"&&t.add(l.value)}i=o.position}while(i<s.length);return r}}}var Es={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function Ps(n=Es){function e(c){return n[c]}function t(c){return`#${c.map(a=>Math.max(0,Math.min(a,255)).toString(16).padStart(2,"0")).join("")}`}let s;function r(){if(s)return s;s=[];for(let l=0;l<G.length;l++)s.push(e(G[l]));let c=[0,95,135,175,215,255];for(let l=0;l<6;l++)for(let h=0;h<6;h++)for(let u=0;u<6;u++)s.push(t([c[l],c[h],c[u]]));let a=8;for(let l=0;l<24;l++,a+=10)s.push(t([a,a,a]));return s}function i(c){return r()[c]}function o(c){switch(c.type){case"named":return e(c.name);case"rgb":return t(c.rgb);case"table":return i(c.index)}}return{value:o}}function xs(n,e,t){const s=ae(n,t),r=fe(e),i=Ps(Object.fromEntries(G.map(c=>{var a;return[c,(a=n.colors)==null?void 0:a[`terminal.ansi${c[0].toUpperCase()}${c.substring(1)}`]]}))),o=Ts();return r.map(c=>o.parse(c[0]).map(a=>{let l,h;a.decorations.has("reverse")?(l=a.background?i.value(a.background):n.bg,h=a.foreground?i.value(a.foreground):n.fg):(l=a.foreground?i.value(a.foreground):n.fg,h=a.background?i.value(a.background):void 0),l=L(l,s),h=L(h,s),a.decorations.has("dim")&&(l=Ls(l));let u=P.None;return a.decorations.has("bold")&&(u|=P.Bold),a.decorations.has("italic")&&(u|=P.Italic),a.decorations.has("underline")&&(u|=P.Underline),{content:a.value,offset:c[1],color:l,bgColor:h,fontStyle:u}}))}function Ls(n){const e=n.match(/#([0-9a-f]{3})([0-9a-f]{3})?([0-9a-f]{2})?/);if(e)if(e[3]){const s=Math.round(Number.parseInt(e[3],16)/2).toString(16).padStart(2,"0");return`#${e[1]}${e[2]}${s}`}else return e[2]?`#${e[1]}${e[2]}80`:`#${Array.from(e[1]).map(s=>`${s}${s}`).join("")}80`;const t=n.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return t?`var(${t[1]}-dim)`:n}function $e(n,e,t={}){const{lang:s="text",theme:r=n.getLoadedThemes()[0]}=t;if(Le(s)||Ge(r))return fe(e).map(a=>[{content:a[0],offset:a[1]}]);const{theme:i,colorMap:o}=n.setTheme(r);if(s==="ansi")return xs(i,e,t);const c=n.getLanguage(s);if(t.grammarState){if(t.grammarState.lang!==c.name)throw new $(`Grammar state language "${t.grammarState.lang}" does not match highlight language "${c.name}"`);if(!t.grammarState.themes.includes(i.name))throw new $(`Grammar state themes "${t.grammarState.themes}" do not contain highlight theme "${i.name}"`)}return $s(e,c,i,o,t)}function Gs(...n){if(n.length===2)return J(n[1]);const[e,t,s={}]=n,{lang:r="text",theme:i=e.getLoadedThemes()[0]}=s;if(Le(r)||Ge(i))throw new $("Plain language does not have grammar state");if(r==="ansi")throw new $("ANSI language does not have grammar state");const{theme:o,colorMap:c}=e.setTheme(i),a=e.getLanguage(r);return new W(le(t,a,o,c,s).stateStack,a.name,o.name)}function $s(n,e,t,s,r){const i=le(n,e,t,s,r),o=new W(le(n,e,t,s,r).stateStack,e.name,t.name);return de(i.tokens,o),i.tokens}function le(n,e,t,s,r){const i=ae(t,r),{tokenizeMaxLineLength:o=0,tokenizeTimeLimit:c=500}=r,a=fe(n);let l=r.grammarState?Rs(r.grammarState,t.name)??Ae:r.grammarContextCode!=null?le(r.grammarContextCode,e,t,s,{...r,grammarState:void 0,grammarContextCode:void 0}).stateStack:Ae,h=[];const u=[];for(let f=0,d=a.length;f<d;f++){const[p,y]=a[f];if(p===""){h=[],u.push([]);continue}if(o>0&&p.length>=o){h=[],u.push([{content:p,offset:y,color:"",fontStyle:0}]);continue}let m,g,_;r.includeExplanation&&(m=e.tokenizeLine(p,l),g=m.tokens,_=0);const b=e.tokenizeLine2(p,l,c),S=b.tokens.length/2;for(let C=0;C<S;C++){const I=b.tokens[2*C],w=C+1<S?b.tokens[2*C+2]:p.length;if(I===w)continue;const T=b.tokens[2*C+1],Q=L(s[j.getForeground(T)],i),D=j.getFontStyle(T),pe={content:p.substring(I,w),offset:y+I,color:Q,fontStyle:D};if(r.includeExplanation){const Me=[];if(r.includeExplanation!=="scopeName")for(const E of t.settings){let O;switch(typeof E.scope){case"string":O=E.scope.split(/,/).map(me=>me.trim());break;case"object":O=E.scope;break;default:continue}Me.push({settings:E,selectors:O.map(me=>me.split(/ /))})}pe.explanation=[];let Be=0;for(;I+Be<w;){const E=g[_],O=p.substring(E.startIndex,E.endIndex);Be+=O.length,pe.explanation.push({content:O,scopes:r.includeExplanation==="scopeName"?Os(E.scopes):Ms(Me,E.scopes)}),_+=1}}h.push(pe)}u.push(h),h=[],l=b.ruleStack}return{tokens:u,stateStack:l}}function Os(n){return n.map(e=>({scopeName:e}))}function Ms(n,e){const t=[];for(let s=0,r=e.length;s<r;s++){const i=e[s];t[s]={scopeName:i,themeMatches:js(n,i,e.slice(0,s))}}return t}function et(n,e){return n===e||e.substring(0,n.length)===n&&e[n.length]==="."}function Bs(n,e,t){if(!et(n[n.length-1],e))return!1;let s=n.length-2,r=t.length-1;for(;s>=0&&r>=0;)et(n[s],t[r])&&(s-=1),r-=1;return s===-1}function js(n,e,t){const s=[];for(const{selectors:r,settings:i}of n)for(const o of r)if(Bs(o,e,t)){s.push(i);break}return s}function Tt(n,e,t){const s=Object.entries(t.themes).filter(a=>a[1]).map(a=>({color:a[0],theme:a[1]})),r=s.map(a=>{const l=$e(n,e,{...t,theme:a.theme}),h=J(l),u=typeof a.theme=="string"?a.theme:a.theme.name;return{tokens:l,state:h,theme:u}}),i=Ws(...r.map(a=>a.tokens)),o=i[0].map((a,l)=>a.map((h,u)=>{const f={content:h.content,variants:{},offset:h.offset};return"includeExplanation"in t&&t.includeExplanation&&(f.explanation=h.explanation),i.forEach((d,p)=>{const{content:y,explanation:m,offset:g,..._}=d[l][u];f.variants[s[p].color]=_}),f})),c=r[0].state?new W(Object.fromEntries(r.map(a=>{var l;return[a.theme,(l=a.state)==null?void 0:l.getInternalStack(a.theme)]})),r[0].state.lang):void 0;return c&&de(o,c),o}function Ws(...n){const e=n.map(()=>[]),t=n.length;for(let s=0;s<n[0].length;s++){const r=n.map(a=>a[s]),i=e.map(()=>[]);e.forEach((a,l)=>a.push(i[l]));const o=r.map(()=>0),c=r.map(a=>a[0]);for(;c.every(a=>a);){const a=Math.min(...c.map(l=>l.content.length));for(let l=0;l<t;l++){const h=c[l];h.content.length===a?(i[l].push(h),o[l]+=1,c[l]=r[l][o[l]]):(i[l].push({...h,content:h.content.slice(0,a)}),c[l]={...h,content:h.content.slice(a),offset:h.offset+a})}}}return e}function he(n,e,t){let s,r,i,o,c,a;if("themes"in t){const{defaultColor:l="light",cssVariablePrefix:h="--shiki-"}=t,u=Object.entries(t.themes).filter(m=>m[1]).map(m=>({color:m[0],theme:m[1]})).sort((m,g)=>m.color===l?-1:g.color===l?1:0);if(u.length===0)throw new $("`themes` option must not be empty");const f=Tt(n,e,t);if(a=J(f),l&&!u.find(m=>m.color===l))throw new $(`\`themes\` option must contain the defaultColor key \`${l}\``);const d=u.map(m=>n.getTheme(m.theme)),p=u.map(m=>m.color);i=f.map(m=>m.map(g=>Ds(g,p,h,l))),a&&de(i,a);const y=u.map(m=>ae(m.theme,t));r=u.map((m,g)=>(g===0&&l?"":`${h+m.color}:`)+(L(d[g].fg,y[g])||"inherit")).join(";"),s=u.map((m,g)=>(g===0&&l?"":`${h+m.color}-bg:`)+(L(d[g].bg,y[g])||"inherit")).join(";"),o=`shiki-themes ${d.map(m=>m.name).join(" ")}`,c=l?void 0:[r,s].join(";")}else if("theme"in t){const l=ae(t.theme,t);i=$e(n,e,t);const h=n.getTheme(t.theme);s=L(h.bg,l),r=L(h.fg,l),o=h.name,a=J(i)}else throw new $("Invalid options, either `theme` or `themes` must be provided");return{tokens:i,fg:r,bg:s,themeName:o,rootStyle:c,grammarState:a}}function Ds(n,e,t,s){const r={content:n.content,explanation:n.explanation,offset:n.offset},i=e.map(a=>kt(n.variants[a])),o=new Set(i.flatMap(a=>Object.keys(a))),c={};return i.forEach((a,l)=>{for(const h of o){const u=a[h]||"inherit";if(l===0&&s)c[h]=u;else{const f=h==="color"?"":h==="background-color"?"-bg":`-${h}`,d=t+e[l]+(h==="color"?"":f);c[d]=u}}}),r.htmlStyle=c,r}function ue(n,e,t,s={meta:{},options:t,codeToHast:(r,i)=>ue(n,r,i),codeToTokens:(r,i)=>he(n,r,i)}){var d,p;let r=e;for(const y of ce(t))r=((d=y.preprocess)==null?void 0:d.call(s,r,t))||r;let{tokens:i,fg:o,bg:c,themeName:a,rootStyle:l,grammarState:h}=he(n,r,t);const{mergeWhitespaces:u=!0}=t;u===!0?i=zs(i):u==="never"&&(i=qs(i));const f={...s,get source(){return r}};for(const y of ce(t))i=((p=y.tokens)==null?void 0:p.call(f,i))||i;return Fs(i,{...t,fg:o,bg:c,themeName:a,rootStyle:l},f,h)}function Fs(n,e,t,s=J(n)){var p,y,m;const r=ce(e),i=[],o={type:"root",children:[]},{structure:c="classic",tabindex:a="0"}=e;let l={type:"element",tagName:"pre",properties:{class:`shiki ${e.themeName||""}`,style:e.rootStyle||`background-color:${e.bg};color:${e.fg}`,...a!==!1&&a!=null?{tabindex:a.toString()}:{},...Object.fromEntries(Array.from(Object.entries(e.meta||{})).filter(([g])=>!g.startsWith("_")))},children:[]},h={type:"element",tagName:"code",properties:{},children:i};const u=[],f={...t,structure:c,addClassToHast:Nt,get source(){return t.source},get tokens(){return n},get options(){return e},get root(){return o},get pre(){return l},get code(){return h},get lines(){return u}};if(n.forEach((g,_)=>{var C,I;_&&(c==="inline"?o.children.push({type:"element",tagName:"br",properties:{},children:[]}):c==="classic"&&i.push({type:"text",value:` +`}));let b={type:"element",tagName:"span",properties:{class:"line"},children:[]},S=0;for(const w of g){let T={type:"element",tagName:"span",properties:{...w.htmlAttrs},children:[{type:"text",value:w.content}]};w.htmlStyle;const Q=bs(w.htmlStyle||kt(w));Q&&(T.properties.style=Q);for(const D of r)T=((C=D==null?void 0:D.span)==null?void 0:C.call(f,T,_+1,S,b,w))||T;c==="inline"?o.children.push(T):c==="classic"&&b.children.push(T),S+=w.content.length}if(c==="classic"){for(const w of r)b=((I=w==null?void 0:w.line)==null?void 0:I.call(f,b,_+1))||b;u.push(b),i.push(b)}}),c==="classic"){for(const g of r)h=((p=g==null?void 0:g.code)==null?void 0:p.call(f,h))||h;l.children.push(h);for(const g of r)l=((y=g==null?void 0:g.pre)==null?void 0:y.call(f,l))||l;o.children.push(l)}let d=o;for(const g of r)d=((m=g==null?void 0:g.root)==null?void 0:m.call(f,d))||d;return s&&de(d,s),d}function zs(n){return n.map(e=>{const t=[];let s="",r=0;return e.forEach((i,o)=>{const a=!(i.fontStyle&&i.fontStyle&P.Underline);a&&i.content.match(/^\s+$/)&&e[o+1]?(r||(r=i.offset),s+=i.content):s?(a?t.push({...i,offset:r,content:s+i.content}):t.push({content:s,offset:r},i),r=0,s=""):t.push(i)}),t})}function qs(n){return n.map(e=>e.flatMap(t=>{if(t.content.match(/^\s+$/))return t;const s=t.content.match(/^(\s*)(.*?)(\s*)$/);if(!s)return t;const[,r,i,o]=s;if(!r&&!o)return t;const c=[{...t,offset:t.offset+r.length,content:i}];return r&&c.unshift({content:r,offset:t.offset}),o&&c.push({content:o,offset:t.offset+r.length+i.length}),c}))}function Hs(n,e,t){var i;const s={meta:{},options:t,codeToHast:(o,c)=>ue(n,o,c),codeToTokens:(o,c)=>he(n,o,c)};let r=us(ue(n,e,t,s));for(const o of ce(t))r=((i=o.postprocess)==null?void 0:i.call(s,r,t))||r;return r}const tt={light:"#333333",dark:"#bbbbbb"},nt={light:"#fffffe",dark:"#1e1e1e"},st="__shiki_resolved";function Oe(n){var c,a,l,h,u;if(n!=null&&n[st])return n;const e={...n};e.tokenColors&&!e.settings&&(e.settings=e.tokenColors,delete e.tokenColors),e.type||(e.type="dark"),e.colorReplacements={...e.colorReplacements},e.settings||(e.settings=[]);let{bg:t,fg:s}=e;if(!t||!s){const f=e.settings?e.settings.find(d=>!d.name&&!d.scope):void 0;(c=f==null?void 0:f.settings)!=null&&c.foreground&&(s=f.settings.foreground),(a=f==null?void 0:f.settings)!=null&&a.background&&(t=f.settings.background),!s&&((l=e==null?void 0:e.colors)!=null&&l["editor.foreground"])&&(s=e.colors["editor.foreground"]),!t&&((h=e==null?void 0:e.colors)!=null&&h["editor.background"])&&(t=e.colors["editor.background"]),s||(s=e.type==="light"?tt.light:tt.dark),t||(t=e.type==="light"?nt.light:nt.dark),e.fg=s,e.bg=t}e.settings[0]&&e.settings[0].settings&&!e.settings[0].scope||e.settings.unshift({settings:{foreground:e.fg,background:e.bg}});let r=0;const i=new Map;function o(f){var p;if(i.has(f))return i.get(f);r+=1;const d=`#${r.toString(16).padStart(8,"0").toLowerCase()}`;return(p=e.colorReplacements)!=null&&p[`#${d}`]?o(f):(i.set(f,d),d)}e.settings=e.settings.map(f=>{var m,g;const d=((m=f.settings)==null?void 0:m.foreground)&&!f.settings.foreground.startsWith("#"),p=((g=f.settings)==null?void 0:g.background)&&!f.settings.background.startsWith("#");if(!d&&!p)return f;const y={...f,settings:{...f.settings}};if(d){const _=o(f.settings.foreground);e.colorReplacements[_]=f.settings.foreground,y.settings.foreground=_}if(p){const _=o(f.settings.background);e.colorReplacements[_]=f.settings.background,y.settings.background=_}return y});for(const f of Object.keys(e.colors||{}))if((f==="editor.foreground"||f==="editor.background"||f.startsWith("terminal.ansi"))&&!((u=e.colors[f])!=null&&u.startsWith("#"))){const d=o(e.colors[f]);e.colorReplacements[d]=e.colors[f],e.colors[f]=d}return Object.defineProperty(e,st,{enumerable:!1,writable:!1,value:!0}),e}async function Et(n){return Array.from(new Set((await Promise.all(n.filter(e=>!ms(e)).map(async e=>await vt(e).then(t=>Array.isArray(t)?t:[t])))).flat()))}async function Pt(n){return(await Promise.all(n.map(async t=>gs(t)?null:Oe(await vt(t))))).filter(t=>!!t)}var Us=Object.defineProperty,Ks=(n,e,t)=>e in n?Us(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,x=(n,e,t)=>(Ks(n,typeof e!="symbol"?e+"":e,t),t);class Js extends kn{constructor(e,t,s,r={}){super(e),this._resolver=e,this._themes=t,this._langs=s,this._alias=r,x(this,"_resolvedThemes",new Map),x(this,"_resolvedGrammars",new Map),x(this,"_langMap",new Map),x(this,"_langGraph",new Map),x(this,"_textmateThemeCache",new WeakMap),x(this,"_loadedThemesCache",null),x(this,"_loadedLanguagesCache",null),this._themes.map(i=>this.loadTheme(i)),this.loadLanguages(this._langs)}getTheme(e){return typeof e=="string"?this._resolvedThemes.get(e):this.loadTheme(e)}loadTheme(e){const t=Oe(e);return t.name&&(this._resolvedThemes.set(t.name,t),this._loadedThemesCache=null),t}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(e){let t=this._textmateThemeCache.get(e);t||(t=ne.createFromRawTheme(e),this._textmateThemeCache.set(e,t)),this._syncRegistry.setTheme(t)}getGrammar(e){if(this._alias[e]){const t=new Set([e]);for(;this._alias[e];){if(e=this._alias[e],t.has(e))throw new v(`Circular alias \`${Array.from(t).join(" -> ")} -> ${e}\``);t.add(e)}}return this._resolvedGrammars.get(e)}loadLanguage(e){var i,o,c,a;if(this.getGrammar(e.name))return;const t=new Set([...this._langMap.values()].filter(l=>{var h;return(h=l.embeddedLangsLazy)==null?void 0:h.includes(e.name)}));this._resolver.addLanguage(e);const s={balancedBracketSelectors:e.balancedBracketSelectors||["*"],unbalancedBracketSelectors:e.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(e.scopeName,e);const r=this.loadGrammarWithConfiguration(e.scopeName,1,s);if(r.name=e.name,this._resolvedGrammars.set(e.name,r),e.aliases&&e.aliases.forEach(l=>{this._alias[l]=e.name}),this._loadedLanguagesCache=null,t.size)for(const l of t)this._resolvedGrammars.delete(l.name),this._loadedLanguagesCache=null,(o=(i=this._syncRegistry)==null?void 0:i._injectionGrammars)==null||o.delete(l.scopeName),(a=(c=this._syncRegistry)==null?void 0:c._grammars)==null||a.delete(l.scopeName),this.loadLanguage(this._langMap.get(l.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(e){for(const r of e)this.resolveEmbeddedLanguages(r);const t=Array.from(this._langGraph.entries()),s=t.filter(([r,i])=>!i);if(s.length){const r=t.filter(([i,o])=>{var c;return o&&((c=o.embeddedLangs)==null?void 0:c.some(a=>s.map(([l])=>l).includes(a)))}).filter(i=>!s.includes(i));throw new v(`Missing languages ${s.map(([i])=>`\`${i}\``).join(", ")}, required by ${r.map(([i])=>`\`${i}\``).join(", ")}`)}for(const[r,i]of t)this._resolver.addLanguage(i);for(const[r,i]of t)this.loadLanguage(i)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(e){if(this._langMap.set(e.name,e),this._langGraph.set(e.name,e),e.embeddedLangs)for(const t of e.embeddedLangs)this._langGraph.set(t,this._langMap.get(t))}}var Vs=Object.defineProperty,Qs=(n,e,t)=>e in n?Vs(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,Z=(n,e,t)=>(Qs(n,typeof e!="symbol"?e+"":e,t),t);class Ys{constructor(e,t){Z(this,"_langs",new Map),Z(this,"_scopeToLang",new Map),Z(this,"_injections",new Map),Z(this,"_onigLib"),this._onigLib={createOnigScanner:s=>e.createScanner(s),createOnigString:s=>e.createString(s)},t.forEach(s=>this.addLanguage(s))}get onigLib(){return this._onigLib}getLangRegistration(e){return this._langs.get(e)}loadGrammar(e){return this._scopeToLang.get(e)}addLanguage(e){this._langs.set(e.name,e),e.aliases&&e.aliases.forEach(t=>{this._langs.set(t,e)}),this._scopeToLang.set(e.scopeName,e),e.injectTo&&e.injectTo.forEach(t=>{this._injections.get(t)||this._injections.set(t,[]),this._injections.get(t).push(e.scopeName)})}getInjections(e){const t=e.split(".");let s=[];for(let r=1;r<=t.length;r++){const i=t.slice(0,r).join(".");s=[...s,...this._injections.get(i)||[]]}return s}}let F=0;function Xs(n){F+=1,n.warnings!==!1&&F>=10&&F%10===0&&console.warn(`[Shiki] ${F} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let e=!1;if(!n.engine)throw new v("`engine` option is required for synchronous mode");const t=(n.langs||[]).flat(1),s=(n.themes||[]).flat(1).map(Oe),r=new Ys(n.engine,t),i=new Js(r,s,t,n.langAlias);let o;function c(_){m();const b=i.getGrammar(typeof _=="string"?_:_.name);if(!b)throw new v(`Language \`${_}\` not found, you may need to load it first`);return b}function a(_){if(_==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};m();const b=i.getTheme(_);if(!b)throw new v(`Theme \`${_}\` not found, you may need to load it first`);return b}function l(_){m();const b=a(_);o!==_&&(i.setTheme(b),o=_);const S=i.getColorMap();return{theme:b,colorMap:S}}function h(){return m(),i.getLoadedThemes()}function u(){return m(),i.getLoadedLanguages()}function f(..._){m(),i.loadLanguages(_.flat(1))}async function d(..._){return f(await Et(_))}function p(..._){m();for(const b of _.flat(1))i.loadTheme(b)}async function y(..._){return m(),p(await Pt(_))}function m(){if(e)throw new v("Shiki instance has been disposed")}function g(){e||(e=!0,i.dispose(),F-=1)}return{setTheme:l,getTheme:a,getLanguage:c,getLoadedThemes:h,getLoadedLanguages:u,loadLanguage:d,loadLanguageSync:f,loadTheme:y,loadThemeSync:p,dispose:g,[Symbol.dispose]:g}}async function Zs(n={}){n.loadWasm;const[e,t,s]=await Promise.all([Pt(n.themes||[]),Et(n.langs||[]),n.engine||xt(n.loadWasm||Lt())]);return Xs({...n,loadWasm:void 0,themes:e,langs:t,engine:s})}async function hr(n={}){const e=await Zs(n);return{getLastGrammarState:(...t)=>Gs(e,...t),codeToTokensBase:(t,s)=>$e(e,t,s),codeToTokensWithThemes:(t,s)=>Tt(e,t,s),codeToTokens:(t,s)=>he(e,t,s),codeToHast:(t,s)=>ue(e,t,s),codeToHtml:(t,s)=>Hs(e,t,s),...e,getInternalContext:()=>e}}export{P as FontStyle,$ as ShikiError,j as StackElementMetadata,Nt as addClassToHast,L as applyColorReplacements,ue as codeToHast,Hs as codeToHtml,he as codeToTokens,$e as codeToTokensBase,Tt as codeToTokensWithThemes,hr as createHighlighterCore,Ss as createPositionConverter,Zs as createShikiInternal,Xs as createShikiInternalSync,kt as getTokenStyleObject,us as hastToHtml,Ge as isNoneTheme,Le as isPlainLang,ms as isSpecialLang,gs as isSpecialTheme,vt as normalizeGetter,Oe as normalizeTheme,ae as resolveColorReplacements,fe as splitLines,_s as splitToken,ys as splitTokens,bs as stringifyTokenStyle,ps as toArray,xs as tokenizeAnsiWithTheme,$s as tokenizeWithTheme,Fs as tokensToHast,Ns as transformerDecorations}; diff --git a/_payload.json b/_payload.json new file mode 100644 index 0000000..33aef43 --- /dev/null +++ b/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":197},["ShallowReactive",2],{"navigation":3,"index":57,"2ADkCaB2kL":125,"WKM1ieRjSC":140},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":58,"_dir":59,"_draft":60,"_partial":60,"_locale":59,"title":61,"description":62,"navigation":60,"hero":63,"features":84,"_id":119,"_type":120,"_source":121,"_file":122,"_stem":123,"_extension":124},"/","",false,"Nuxt UI Pro - Docs template","Nuxt UI Pro is a collection of premium Vue components built on top of Nuxt UI to create beautiful & responsive Nuxt applications in minutes.",{"title":64,"description":65,"orientation":66,"headline":67,"links":71,"code":83},"Build your docs in seconds","Create your documentation in seconds with this template!","horizontal",{"label":68,"to":69,"icon":70},"Made with Nuxt UI Pro","https://ui.nuxt.com/pro","i-heroicons-arrow-top-right-on-square-20-solid",[72,77],{"label":73,"icon":74,"trailing":75,"to":6,"size":76},"Get started","i-heroicons-arrow-right-20-solid",true,"lg",{"label":78,"icon":79,"size":76,"color":80,"to":81,"target":82},"Use this template","i-simple-icons-github","gray","https://github.com/nuxt-ui-pro/docs","_blank","```bash [Terminal]\nnpx nuxi init -t github:nuxt-ui-pro/docs\n```\n",{"title":85,"links":86,"items":90},"All-in-one docs template",[87],{"label":88,"icon":89,"trailingIcon":74,"color":80,"to":69,"target":82,"size":76},"Explore Nuxt UI Pro","i-simple-icons-nuxtdotjs",[91,95,100,105,110,114],{"title":92,"description":93,"icon":89,"to":94,"target":82},"Nuxt 3","Powered by Nuxt 3 for optimal performances and SEO.","https://nuxt.com",{"title":96,"description":97,"icon":98,"to":99,"target":82},"Markdown","Write your pages with MDC thanks to Nuxt Content.","i-simple-icons-markdown","https://content.nuxt.com",{"title":101,"description":102,"icon":103,"to":104,"target":82},"Nuxt UI","Offers a very large set of full customizable components.","i-heroicons-sparkles-20-solid","https://ui.nuxt.com",{"title":106,"description":107,"icon":108,"to":109,"target":82},"TypeScript","A fully typed development experience.","i-simple-icons-typescript","https://www.typescriptlang.org",{"title":111,"description":112,"icon":89,"to":113,"target":82},"Nuxt Studio","Supported by Nuxt Studio for fast updates and previews.","https://nuxt.studio",{"title":115,"description":116,"icon":117,"to":118,"target":82},"Search","A full-text search modal empowered by Fuse.js.","i-heroicons-magnifying-glass-20-solid","https://ui.nuxt.com/pro/components/docs/docs-search","content:index.yml","yaml","content","index.yml","index","yml",{"data":126,"body":127,"excerpt":-1,"toc":137},{"title":59,"description":64},{"type":128,"children":129},"root",[130],{"type":131,"tag":132,"props":133,"children":134},"element","p",{},[135],{"type":136,"value":64},"text",{"title":59,"searchDepth":138,"depth":138,"links":139},2,[],{"data":141,"body":142,"excerpt":-1,"toc":195},{"title":59,"description":59},{"type":128,"children":143},[144,189],{"type":131,"tag":145,"props":146,"children":151},"pre",{"className":147,"code":148,"filename":149,"language":150,"meta":59,"style":59},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx nuxi init -t github:nuxt-ui-pro/docs\n","Terminal","bash",[152],{"type":131,"tag":153,"props":154,"children":155},"code",{"__ignoreMap":59},[156],{"type":131,"tag":157,"props":158,"children":161},"span",{"class":159,"line":160},"line",1,[162,168,174,179,184],{"type":131,"tag":157,"props":163,"children":165},{"style":164},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[166],{"type":136,"value":167},"npx",{"type":131,"tag":157,"props":169,"children":171},{"style":170},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[172],{"type":136,"value":173}," nuxi",{"type":131,"tag":157,"props":175,"children":176},{"style":170},[177],{"type":136,"value":178}," init",{"type":131,"tag":157,"props":180,"children":181},{"style":170},[182],{"type":136,"value":183}," -t",{"type":131,"tag":157,"props":185,"children":186},{"style":170},[187],{"type":136,"value":188}," github:nuxt-ui-pro/docs\n",{"type":131,"tag":190,"props":191,"children":192},"style",{},[193],{"type":136,"value":194},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":59,"searchDepth":138,"depth":138,"links":196},[],1741786569743] \ No newline at end of file diff --git a/api/_content/cache.1741786524678.json b/api/_content/cache.1741786524678.json new file mode 100644 index 0000000..e3a98b7 --- /dev/null +++ b/api/_content/cache.1741786524678.json @@ -0,0 +1 @@ +{"generatedAt":1741786569729,"generateTime":844,"contents":[{"_path":"/getting-started/_dir","_dir":"getting-started","_draft":false,"_partial":true,"_locale":"","title":"Getting Started","_id":"content:1.getting-started:_dir.yml","_type":"yaml","_source":"content","_file":"1.getting-started/_dir.yml","_stem":"1.getting-started/_dir","_extension":"yml"},{"_path":"/getting-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Welcome to the VaahStore documentation","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"VaahStore is a cutting-edge, open-source headless e-commerce platform designed to revolutionize the online shopping experience. VaahStore offers a fast, efficient, and feature-rich solution for businesses of all sizes."}]},{"type":"element","tag":"h2","props":{"id":"key-features"},"children":[{"type":"text","value":"Key Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Headless Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Unrestricted flexibility to build custom storefronts and integrate with any device or platform."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Open-Source\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Empowering developers to customize and extend the platform to meet specific needs."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Fast and Efficient\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Optimized performance for seamless user experiences."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Easy to Use\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Intuitive interface and developer-friendly tools for rapid development."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Comprehensive Features\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built-in functionalities like product catalogs, shopping carts, checkout processes, and more."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"why-choose-vaahstore"},"children":[{"type":"text","value":"Why Choose VaahStore?"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Unleash Your Creativity\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"stunning, personalized storefronts without compromise"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Skyrocket Your Sales\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Deliver "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"blazing-fast"}]},{"type":"text","value":" performance and seamless user experiences."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Future-Proof Your Business\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built on the latest technologies, VaahStore ensures you "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"stay ahead of the curve"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Take Control of Your E-commerce Destiny\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"With complete "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"customization"}]},{"type":"text","value":" and "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"extensibility"}]},{"type":"text","value":", you're in the driver's seat."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Join a Thriving Community\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Benefit from a global community of developers, "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"sharing knowledge and innovation"}]},{"type":"text","value":"."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"getting-started"},"children":[{"type":"text","value":"Getting Started"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To begin your journey with VaahStore, refer to our comprehensive documentation and community resources. Our dedicated team is committed to providing support and guidance throughout the development process."}]},{"type":"element","tag":"h2","props":{"id":"join-the-vaahstore-community"},"children":[{"type":"text","value":"Join the VaahStore Community"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Connect with fellow developers, share knowledge, and contribute to the future of e-commerce. Join our GitHub community to stay updated on the latest developments and best practices."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"key-features","depth":2,"text":"Key Features"},{"id":"why-choose-vaahstore","depth":2,"text":"Why Choose VaahStore?"},{"id":"getting-started","depth":2,"text":"Getting Started"},{"id":"join-the-vaahstore-community","depth":2,"text":"Join the VaahStore Community"}]}},"_type":"markdown","_id":"content:1.getting-started:1.index.md","_source":"content","_file":"1.getting-started/1.index.md","_stem":"1.getting-started/1.index","_extension":"md"},{"_path":"/getting-started/code-of-conduct","_dir":"getting-started","_draft":false,"_partial":false,"_locale":"","title":"Code of Conduct","description":"Let's keep it light and friendly, but serious about respect!","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We want our community to be a fun and welcoming place for everyone. Here are a few guidelines to help us maintain that:"}]},{"type":"element","tag":"h2","props":{"id":"play-nice"},"children":[{"type":"text","value":"Play Nice"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"No cyberbullying or trolling."}]},{"type":"text","value":" (We're all friends here, even if we disagree.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Keep it clean."}]},{"type":"text","value":" (No offensive language or inappropriate content, please.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Respect everyone's opinions."}]},{"type":"text","value":" (Even if they're really wrong.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Be patient and understanding."}]},{"type":"text","value":" (We're all human, and sometimes we make mistakes.)"}]}]},{"type":"element","tag":"h2","props":{"id":"unacceptable-behavior"},"children":[{"type":"text","value":"Unacceptable Behavior"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"No bullying or hate speech."}]},{"type":"text","value":" (Seriously, it's not cool.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Don't spam or troll."}]},{"type":"text","value":" (It's annoying, and nobody likes an annoying bot.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Respect people's privacy."}]},{"type":"text","value":" (Keep your snooping to a minimum.)"}]}]},{"type":"element","tag":"h2","props":{"id":"if-somethings-off"},"children":[{"type":"text","value":"If Something's Off"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you see something that doesn't feel right, please let us know. We'll investigate and fix or take appropriate action."}]},{"type":"element","tag":"h2","props":{"id":"enforcement"},"children":[{"type":"text","value":"Enforcement"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We reserve the right to take action against individuals who violate this code of conduct, including warnings, temporary bans, or permanent bans."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By participating in our community, you agree to abide by this code of conduct."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"play-nice","depth":2,"text":"Play Nice"},{"id":"unacceptable-behavior","depth":2,"text":"Unacceptable Behavior"},{"id":"if-somethings-off","depth":2,"text":"If Something's Off"},{"id":"enforcement","depth":2,"text":"Enforcement"}]}},"_type":"markdown","_id":"content:1.getting-started:2.code-of-conduct.md","_source":"content","_file":"1.getting-started/2.code-of-conduct.md","_stem":"1.getting-started/2.code-of-conduct","_extension":"md"},{"_path":"/mobile-app/_dir","_dir":"mobile-app","_draft":false,"_partial":true,"_locale":"","title":"Mobile App","_id":"content:2.mobile-app:_dir.yml","_type":"yaml","_source":"content","_file":"2.mobile-app/_dir.yml","_stem":"2.mobile-app/_dir","_extension":"yml"},{"_path":"/mobile-app/onboarding/_dir","_dir":"onboarding","_draft":false,"_partial":true,"_locale":"","title":"Onboarding","_id":"content:2.mobile-app:1.onboarding:_dir.yml","_type":"yaml","_source":"content","_file":"2.mobile-app/1.onboarding/_dir.yml","_stem":"2.mobile-app/1.onboarding/_dir","_extension":"yml"},{"_path":"/mobile-app/onboarding","_dir":"mobile-app","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Starting with Mobile App Onboarding","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"VaahStore Mobile App is a feature-rich mobile application, designed to provide a seamless shopping experience on smartphones and tablets. It leverages the power of the VaahStore backend API to offer a wide range of features."}]},{"type":"element","tag":"h2","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Product Browsing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Explore a vast catalog of products, categorized and filtered for easy navigation."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Product Details\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"View detailed product information, including high-quality images, descriptions, and customer reviews."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Shopping Cart\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Add products to the cart, modify quantities, and apply discounts."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Secure Checkout\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Process payments securely using various payment methods."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Order Tracking\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Track the status of orders, from placement to delivery."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"User Accounts\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create and manage user accounts, including address book, order history, and wishlists."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Push Notifications\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Receive personalized notifications for order updates, promotions, and new arrivals."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Recommendations\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Personalized Recommendations to cater each individual"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Robust Logging and Analytics\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Monitor app performance & issues. Also collect insights about what users prefer."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"And Much More\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"All the things you think should be there, If not let us know and we will try to fit them in our roadmap."}]}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"features","depth":2,"text":"Features"}]}},"_type":"markdown","_id":"content:2.mobile-app:1.onboarding:1.index.md","_source":"content","_file":"2.mobile-app/1.onboarding/1.index.md","_stem":"2.mobile-app/1.onboarding/1.index","_extension":"md"},{"_path":"/mobile-app/onboarding/tech-stack","_dir":"onboarding","_draft":false,"_partial":false,"_locale":"","title":"Tech Stack","description":"Technologies powering our platform.","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"todo"},"children":[{"type":"text","value":"TODO:"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"todo","depth":2,"text":"TODO:"}]}},"_type":"markdown","_id":"content:2.mobile-app:1.onboarding:2.tech-stack.md","_source":"content","_file":"2.mobile-app/1.onboarding/2.tech-stack.md","_stem":"2.mobile-app/1.onboarding/2.tech-stack","_extension":"md"},{"_path":"/mobile-app/thought-processses/_dir","_dir":"thought-processses","_draft":false,"_partial":true,"_locale":"","title":"Thought Processes","_id":"content:2.mobile-app:2.thought-processses:_dir.yml","_type":"yaml","_source":"content","_file":"2.mobile-app/2.thought-processses/_dir.yml","_stem":"2.mobile-app/2.thought-processses/_dir","_extension":"yml"},{"_path":"/mobile-app/thought-processses","_dir":"mobile-app","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Thought process behind reaching to the decisions","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"topics-this-section-will-cover"},"children":[{"type":"text","value":"Topics this section will cover"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Project Architecture"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Decoupling Dependencies"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"State Management Patterns"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design Patterns"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Performance Optimization"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Security Considerations"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Code Quality and Maintainability"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Testing Strategies"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"topics-this-section-will-cover","depth":2,"text":"Topics this section will cover"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:1.index.md","_source":"content","_file":"2.mobile-app/2.thought-processses/1.index.md","_stem":"2.mobile-app/2.thought-processses/1.index","_extension":"md"},{"_path":"/mobile-app/thought-processses/architecture","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"Architecture","description":"All about project architecture","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"what-will-we-discuss-about"},"children":[{"type":"text","value":"What will we discuss about?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"There are so many architectures but two of them needs some discussion here."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Model-View-Controller"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Clean Architecture"}]}]},{"type":"element","tag":"h2","props":{"id":"what-we-want-to-avoid-intentionally-for-now"},"children":[{"type":"text","value":"What we want to avoid intentionally for now?"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"MVVM\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"MVVM implies databindings between the view and the viewmodel, which means, in practice, the view objects mostly are the ones commanding the viewmodel. MVVM seems to me a simplification of MVC, to show the model \"as is\" behind the scenes. And because we are already talking about MVC, talking MVVM doesn't makes sense."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Also I think, overuse of data binding can lead to tight coupling between the View and ViewModel, making the code less modular and harder to test."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Layered Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Layered Architecture has unidirectional dependencies, with lower layers depending on higher ones. While Clean Architecture Dependencies point inwards towards the core, making the core independent of external factors. So I am gonna exclude Layered Architecture & will focus on Clean Architecture. Also Clean Architecture offers high degree of flexibility, testability, and maintainability on top of what Layered Architecture does."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Hexagonal Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"If one use-case (application-service) is dependent on another, and so on, resulting in a tangled chain of calls where people usually get lost. Usually, this web of dependencies is an anti-pattern that hinders the clarity and simplicity that Hexagonal Architecture aims to provide."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"model-view-controller"},"children":[{"type":"text","value":"Model-View-Controller"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"MVC separates an application into three interconnected parts:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Model\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Represents the data of the application."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"View\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Responsible for the user interface"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Controller\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Handles the logic between the Model and the View."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"./lib\n├── models\n│ ├── data\n│ └── ...\n├── Views\n│ └── ...\n├── Controllers\n│ └── ...\n├── Services\n│ └── ...\n├── Repositories\n│ └── ...\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── models\n│ ├── data\n│ └── ...\n├── Views\n│ └── ...\n├── Controllers\n│ └── ...\n├── Services\n│ └── ...\n├── Repositories\n│ └── ...\n└── routes\n"}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Simplicity"}]},{"type":"text","value":": Easier to implement for small applications."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Quick to start"}]},{"type":"text","value":": Suitable for smaller projects or MVP applications."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Familiarity"}]},{"type":"text","value":": A widely recognized pattern, making it easier to onboard new developers."}]}]},{"type":"element","tag":"h3","props":{"id":"cons"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Tight Coupling"}]},{"type":"text","value":": The controller is responsible for both business logic and UI updates, leading to a tight coupling between the components."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Scalability Issues"}]},{"type":"text","value":": As the application grows, managing complexity can become difficult because the logic might get mixed in the controller."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Limited Separation of Concerns"}]},{"type":"text","value":": This pattern often doesn't separate responsibilities as clearly, leading to potential maintenance challenges in large apps."}]}]},{"type":"element","tag":"h2","props":{"id":"clean-architecture"},"children":[{"type":"text","value":"Clean Architecture"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Data Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Models"}]},{"type":"text","value":": Define the data structures for your application, keeping them simple and focused on the data they represent."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Services"}]},{"type":"text","value":": Implement services for network requests, local storage, and other data operations. Use appropriate libraries to handle these tasks."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Domain Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Interfaces"}]},{"type":"text","value":": Define clear interfaces for repositories, specifying the methods to interact with data."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Repositories"}]},{"type":"text","value":": Implement these interfaces, using the data layer to fetch and store data. Keep the repository logic independent of the data source (e.g., network, database)."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Presentation Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Pages"}]},{"type":"text","value":": Build the UI screens, using widgets to compose the layout and handle user interactions."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Widgets"}]},{"type":"text","value":": Create reusable UI components to improve code organization and maintainability."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"}]}]},{"type":"element","tag":"h3","props":{"id":"pros-1"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Separation of Concerns"}]},{"type":"text","value":": Clean Architecture separates concerns into distinct layers, making it easier to maintain and scale as the app grows."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Flexibility"}]},{"type":"text","value":": The architecture can easily accommodate changes in UI frameworks, data sources, or external dependencies without affecting the core business logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Scalability"}]},{"type":"text","value":": Clean Architecture is designed to handle complexity and larger applications efficiently."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Testability"}]},{"type":"text","value":": Since the business logic and UI are decoupled, it’s easier to test different parts of the app independently."}]}]},{"type":"element","tag":"h3","props":{"id":"cons-1"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Complexity"}]},{"type":"text","value":": The setup is more complex compared to MVC, and might be overkill for simple apps."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Learning Curve"}]},{"type":"text","value":": For beginners or developers new to the architecture, there might be an initial learning curve to understand the separation of layers and their interactions."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Verbose Code"}]},{"type":"text","value":": Because of the multiple layers and classes involved, it can lead to more boilerplate code."}]}]},{"type":"element","tag":"h2","props":{"id":"decision-making"},"children":[{"type":"text","value":"Decision Making"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For production-grade apps, Clean Architecture is often preferred. Where rapid development is key, and you can afford some level of coupling between logic and UI - you should use MVC. Clean Architecture is better suited for larger, more complex apps that need to scale, be maintainable over time, and where testability and decoupling of concerns are priorities."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We have decided to go ahead with Clean Architecture."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"what-will-we-discuss-about","depth":2,"text":"What will we discuss about?"},{"id":"what-we-want-to-avoid-intentionally-for-now","depth":2,"text":"What we want to avoid intentionally for now?"},{"id":"model-view-controller","depth":2,"text":"Model-View-Controller","children":[{"id":"pros","depth":3,"text":"Pros"},{"id":"cons","depth":3,"text":"Cons"}]},{"id":"clean-architecture","depth":2,"text":"Clean Architecture","children":[{"id":"pros-1","depth":3,"text":"Pros"},{"id":"cons-1","depth":3,"text":"Cons"}]},{"id":"decision-making","depth":2,"text":"Decision Making"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:2.architecture.md","_source":"content","_file":"2.mobile-app/2.thought-processses/2.architecture.md","_stem":"2.mobile-app/2.thought-processses/2.architecture","_extension":"md"},{"_path":"/mobile-app/thought-processses/decoupling","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"Decoupling Dependencies","description":null,"body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Tightly coupled dependencies between components can lead to several issues like Increased complexity, Reduced testability, Reduced maintainability, etc."}]},{"type":"element","tag":"h2","props":{"id":"proposed-solutions"},"children":[{"type":"text","value":"Proposed Solutions"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To address these challenges, we propose two effective strategies: Singleton And Context-Aware Dependency Retrieval"}]},{"type":"element","tag":"h2","props":{"id":"singleton"},"children":[{"type":"text","value":"Singleton"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"In this approach, a singleton acts as a centralized container for all repository and service instances."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create a Singleton\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design a singleton class to hold all repository and service instances."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Initialize the singleton asynchronously during the app's startup phase, typically during the splash screen."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Access the Singleton\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Once the singleton is initialized, it can be accessed from anywhere in the app."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"However, "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"limit its usage"}]},{"type":"text","value":" to passing necessary instances to Blocs, Controllers, or Providers during their injection."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Avoid excessive use"}]},{"type":"text","value":" of the singleton to prevent tight coupling and global state management."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Selective Instance Passing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"When injecting dependencies into a Bloc, Controller, or Provider, pass only the "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"specific instances"}]},{"type":"text","value":" required for its functionality. This approach promotes a more granular and focused dependency injection process."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Centralized initialization of dependencies."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Clear separation of the initialization phase and dependency usage phase."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Ensures that dependencies are only instantiated once, avoiding redundant resource usage."}]}]},{"type":"element","tag":"h3","props":{"id":"cons"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The app relies on all dependencies being initialized upfront, which may increase the splash screen loading time."}]}]},{"type":"element","tag":"h2","props":{"id":"context-aware-dependency-retrieval"},"children":[{"type":"text","value":"Context-Aware Dependency Retrieval"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This approach introduces a core Bloc, Controller, or Provider, referred to as the \"core instance,\" to store all repository and service instances. Dependencies are accessed dynamically using the BuildContext to locate the core instance. This approach emphasizes context-aware dependency resolution and reduces the reliance on global access patterns."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create a Core Instance\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Define a Bloc, Controller, or Provider to act as the central storage for dependencies."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Inject Dependencies\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Initialize all required repository and service instances within the core instance."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provide the core instance to the widget tree using a dependency injection mechanism."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Dynamic Retrieval\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use the BuildContext to locate the core instance dynamically whenever dependencies are needed."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Extract only the specific instances required for a given Bloc, Controller, or Provider."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros-1"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Context-aware dependency resolution promotes structured and localized access patterns."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Simplifies testing by mocking the core instance for specific widget trees."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Reduces global state access, aligning with best practices in state management."}]}]},{"type":"element","tag":"h3","props":{"id":"cons-1"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Requires proper handling of BuildContext to avoid accessing dependencies outside of the widget tree."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Dependency retrieval via BuildContext can become verbose if not managed properly."}]}]},{"type":"element","tag":"h2","props":{"id":"decision-making"},"children":[{"type":"text","value":"Decision Making"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Going ahead with Singleton makes sense for the project we have"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"proposed-solutions","depth":2,"text":"Proposed Solutions"},{"id":"singleton","depth":2,"text":"Singleton","children":[{"id":"pros","depth":3,"text":"Pros"},{"id":"cons","depth":3,"text":"Cons"}]},{"id":"context-aware-dependency-retrieval","depth":2,"text":"Context-Aware Dependency Retrieval","children":[{"id":"pros-1","depth":3,"text":"Pros"},{"id":"cons-1","depth":3,"text":"Cons"}]},{"id":"decision-making","depth":2,"text":"Decision Making"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:3.decoupling.md","_source":"content","_file":"2.mobile-app/2.thought-processses/3.decoupling.md","_stem":"2.mobile-app/2.thought-processses/3.decoupling","_extension":"md"},{"_path":"/mobile-app/thought-processses/state-management","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"State Management","description":"Managing State in the Project","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"bloc"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"BLoC, short for Business Logic Component, enforces a unidirectional data flow, ensuring a clear separation of concerns and promoting testability."}]}]},{"type":"element","tag":"h3","props":{"id":"principles"},"children":[{"type":"text","value":"Principles"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Events Drive State Changes\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC receives events triggered by user interactions or other parts of the application. These events signal a potential change in the state."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"State Updates via Emitting New States\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Based on the received event, the BLoC processes it and emits a new state that reflects the updated application state."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"UI Reacts to State Changes\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The UI observes the state emitted by the BLoC and rebuilds itself accordingly, ensuring the UI always reflects the current state."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Predictable State Flow\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC enforces a unidirectional data flow, making it easier to reason about how state changes occur within your application."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC separates the UI from the business logic, leading to cleaner and more maintainable code."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Scalability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The BLoC pattern scales well for complex applications with intricate state management requirements."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By isolating state logic within the BLoC, you can write unit tests to ensure the BLoC reacts correctly to different events."}]}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"bloc","depth":2,"text":"BLoC","children":[{"id":"principles","depth":3,"text":"Principles"},{"id":"pros","depth":3,"text":"Pros"}]}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:4.state-management.md","_source":"content","_file":"2.mobile-app/2.thought-processses/4.state-management.md","_stem":"2.mobile-app/2.thought-processses/4.state-management","_extension":"md"},{"_path":"/mobile-app/poc/_dir","_dir":"poc","_draft":false,"_partial":true,"_locale":"","title":"Proof of Concepts","_id":"content:2.mobile-app:3.poc:_dir.yml","_type":"yaml","_source":"content","_file":"2.mobile-app/3.poc/_dir.yml","_stem":"2.mobile-app/3.poc/_dir","_extension":"yml"},{"_path":"/mobile-app/poc","_dir":"mobile-app","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Proof of Concepts","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"topics-this-section-will-cover"},"children":[{"type":"text","value":"Topics this section will cover"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Architecture PoC"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"topics-this-section-will-cover","depth":2,"text":"Topics this section will cover"}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:1.index.md","_source":"content","_file":"2.mobile-app/3.poc/1.index.md","_stem":"2.mobile-app/3.poc/1.index","_extension":"md"},{"_path":"/mobile-app/poc/architecture","_dir":"poc","_draft":false,"_partial":false,"_locale":"","title":"Architecture PoC","description":null,"body":{"type":"root","children":[{"type":"element","tag":"pre","props":{"code":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"}]}]},{"type":"element","tag":"h2","props":{"id":"main-entry-point"},"children":[{"type":"text","value":"Main entry point"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"app_config.dart"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This file is the main entry point of the application. It initializes the DependencyManager and sets up the application's initial configuration, including system UI styles. It then renders a FutureBuilder to handle the asynchronous initialization process of the DependencyManager. Based on the initialization result, it displays a loading screen, an error screen, or the main application."}]},{"type":"element","tag":"pre","props":{"code":" return FutureBuilder<bool>(\n future: DependencyManager.init(),\n builder: (context, snapshot) {\n if (snapshot.connectionState == ConnectionState.waiting) {\n return const _DefaultAppConfig(\n child: _SplashScreen(),\n );\n } else if (snapshot.hasError) {\n return const _DefaultAppConfig(\n child: _HardRestartScreen(),\n );\n } else if (snapshot.hasData) {\n return _AppConfigImpl(\n env: env,\n );\n } else {\n return const _DefaultAppConfig(\n child: _SomethingWentWrongScreen(),\n );\n }\n },\n );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return FutureBuilder<bool>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" future: DependencyManager.init(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, snapshot) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (snapshot.connectionState == ConnectionState.waiting) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _SplashScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (snapshot.hasError) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _HardRestartScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (snapshot.hasData) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _AppConfigImpl(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" env: env,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _SomethingWentWrongScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"dependency-manager"},"children":[{"type":"text","value":"Dependency Manager"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"the DependencyManager acts as a central hub for managing application-wide dependencies."}]},{"type":"element","tag":"h3","props":{"id":"key-points"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Focus on Repositories\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The DependencyManager primarily initializes and exposes repositories. Repositories encapsulate data access logic, often combining data from multiple services."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" combines data from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageService"}]},{"type":"text","value":". This separation of concerns promotes cleaner code and easier testing."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoCs and Repositories\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoCs, which manage application state and logic, can leverage the DependencyManager to access the required repositories."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, an "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationBloc"}]},{"type":"text","value":" might depend on the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Modular Design\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This approach promotes modularity by isolating dependency creation logic within the DependencyManager. BLoCs and other components don't need to be aware of how their dependencies are created, making the code more maintainable and testable."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Singleton Pattern\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The DependencyManager utilizes the Singleton pattern to ensure only one instance exists throughout the application's lifetime. This guarantees consistent access to the initialized dependencies."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"issues-with-this-approach"},"children":[{"type":"text","value":"Issues with this Approach"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Circular Dependency Issue\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"It's something when first thing depends on second and second depends on first, creating a deadlock."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Solution to this I explain later "},{"type":"element","tag":"a","props":{"href":"#circular-dependency"},"children":[{"type":"text","value":"here"}]},{"type":"text","value":"."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"    final vaahApiService = ApiService(\n      interceptors: [\n        ApiTokenInterceptor(() => authenticationRepository),\n      ],\n    );\n\n    final authenticationService = AuthenticationService.vaah(\n      apiService: vaahApiService,\n    );\n\n    authenticationRepository = AuthenticationRepository(\n      authenticationService: authenticationService,\n    );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"        ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"init"}]},{"type":"text","value":" Method\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This asynchronous method initializes the essential services & repositories"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationRepository"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"DependencyManager Creates the core "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"instance"}]},{"type":"text","value":", injecting both "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"secureStorageService"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationService"}]},{"type":"text","value":". And Let's say some other repository depends on secureStorageService we do not need to create a new one, we can utilize existing one."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Exposing variables\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"To expose you need to create direct variable in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"DependencyManager"}]},{"type":"text","value":" with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"static late final"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"static late final AuthenticationRepository authenticationRepository;"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"dependency_manager.dart"}]}]},{"type":"element","tag":"pre","props":{"code":"/// DependencyManager: Singleton Class\nabstract class DependencyManager {\n static bool _isInitialized = false;\n\n static late final AuthenticationRepository authenticationRepository;\n\n static Future<bool> init() async {\n if (_isInitialized) {\n return true;\n }\n\n final secureStorageService = StorageService.secure();\n\n final vaahApiService = ApiService(\n interceptors: [\n ApiTokenInterceptor(() => authenticationRepository),\n ],\n )..addSerializerFunctions(VaahResponseSerializers.defaults());\n\n final authenticationService = AuthenticationService.vaah(\n apiService: vaahApiService,\n );\n\n authenticationRepository = AuthenticationRepository(\n storageService: secureStorageService,\n authenticationService: authenticationService,\n );\n await authenticationRepository.init();\n\n _isInitialized = true;\n return _isInitialized;\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"/// DependencyManager: Singleton Class\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"abstract class DependencyManager {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static bool _isInitialized = false;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static late final AuthenticationRepository authenticationRepository;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static Future<bool> init() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (_isInitialized) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return true;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final secureStorageService = StorageService.secure();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..addSerializerFunctions(VaahResponseSerializers.defaults());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" storageService: secureStorageService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationRepository.init();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _isInitialized = true;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _isInitialized;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"code":" return MultiBlocProvider(\n providers: [\n BlocProvider<AuthenticationBloc>(\n create: (context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ...\n ],\n child: child,\n );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return MultiBlocProvider(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" providers: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BlocProvider<AuthenticationBloc>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" create: (context) => AuthenticationBloc(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository: DependencyManager.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..add(const InitializationRequested()),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: child,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"services"},"children":[{"type":"text","value":"Services"}]},{"type":"element","tag":"h3","props":{"id":"key-points-1"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Benefits of Layered Architecture for Services"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Abstract Interfaces\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By defining abstract interfaces for your services, you create a clear contract that all concrete implementations must adhere to. This promotes flexibility as you can easily swap out different implementations without affecting the rest of your application. For example this is so useful when you need to feature flag some features."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Abstract interfaces enable you to easily mock or stub service implementations during unit tests. This allows you to isolate the logic of your application components from the specific behavior of external services, making your tests more robust and easier to maintain"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"this architecture promotes a clean separation of concerns. Services are responsible for specific functionalities, while other components interact with them through well-defined interfaces. This reduces coupling and improves code maintainability."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced Maintainability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By clearly defining service interfaces and their responsibilities, you make it easier to understand and maintain your application's architecture. Changes to service implementations can be made with minimal impact on other parts of the application as long as the interface remains unchanged."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Future-Proofing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The layered architecture provides a solid foundation for future enhancements. You can easily add new service implementations or modify existing ones without significantly impacting the rest of your application."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-1"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This code defines a layered approach for local storage in a Flutter application\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageService"}]},{"type":"text","value":" is an abstract interface defining methods for get, set, and remove data."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageServiceNoOp"}]},{"type":"text","value":" is a no-op implementation for testing purposes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SecureStorageService"}]},{"type":"text","value":" in an implementation using flutter_secure_storage for secure data storage."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"// lib/data/services/local_storage/storage_service.dart\nabstract class StorageService {\n const StorageService();\n\n factory StorageService.noOp() => const StorageServiceNoOp();\n\n factory StorageService.secure() => const SecureStorageService();\n\n Future<T?> get<T>({required String key});\n\n Future<void> set({required String key, required Object value});\n\n Future<void> remove({required String key});\n}\n\n\n// lib/data/services/local_storage/no_op_service.dart\nclass StorageServiceNoOp implements StorageService {\n const StorageServiceNoOp();\n\n @override\n Future<T?> get<T>({required String key}) async => null;\n\n @override\n Future<void> set({required String key, required Object value}) async => null;\n\n @override\n Future<void> remove({required String key}) async => null;\n}\n\n\n// lib/data/services/local_storage/secure_storage_service.dart\nclass SecureStorageService implements StorageService {\n const SecureStorageService({this.storage = const FlutterSecureStorage()});\n\n final FlutterSecureStorage storage;\n\n @override\n Future<T?> get<T>({required String key}) async {\n final match = await storage.read(key: key);\n if (match == null) return null;\n return jsonDecode(match) as T;\n }\n\n @override\n Future<void> set({required String key, required Object value}) async {\n await storage.write(key: key, value: jsonEncode(value));\n }\n\n @override\n Future<void> remove({required String key}) async {\n await storage.delete(key: key);\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/storage_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"abstract class StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const StorageService();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" factory StorageService.noOp() => const StorageServiceNoOp();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" factory StorageService.secure() => const SecureStorageService();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/no_op_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class StorageServiceNoOp implements StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const StorageServiceNoOp();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/secure_storage_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class SecureStorageService implements StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SecureStorageService({this.storage = const FlutterSecureStorage()});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final FlutterSecureStorage storage;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final match = await storage.read(key: key);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (match == null) return null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return jsonDecode(match) as T;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storage.write(key: key, value: jsonEncode(value));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storage.delete(key: key);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage-1"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"code":"final secureStorageService = StorageService.secure();\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final secureStorageService = StorageService.secure();\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"repositories"},"children":[{"type":"text","value":"Repositories"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Centralizing Data Access Logic"}]},{"type":"element","tag":"h3","props":{"id":"key-points-2"},"children":[{"type":"text","value":"Key points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Source of Truth\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories act as a single source of truth for accessing and managing data within your application's domain layer."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"They encapsulate the logic for fetching, storing, and manipulating data, often combining data from multiple services."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories shield the rest of your application (BLoCs, UI components) from the complexities of dealing with different data sources and services directly"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories promote a clean separation of concerns by isolating data access logic from the presentation layer (Blocs, UI). This improves code maintainability and testability."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Data Transformation and Validation\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories can handle data transformation and validation before exposing it to other layers."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-2"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Authentication States\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Defines three states: unknown (initial), authenticated (user logged in), and unauthenticated (user logged out)."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationRepository\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Handles user authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Stores the currently logged-in user."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provides a stream ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"statusStream"}]},{"type":"text","value":") to notify about authentication state changes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Uses "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"storageService"}]},{"type":"text","value":" to store/retrieve user data securely."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Uses "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationService"}]},{"type":"text","value":" to perform signup, signin, and signout operations."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"enum AuthenticationStatus {\n unknown,\n authenticated,\n unauthenticated,\n}\n\nextension AuthenticationStatusExtensions on AuthenticationStatus {\n bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n}\n\nconst String _userKey = 'secure_user';\n\nclass AuthenticationRepository implements DisposableRepository {\n AuthenticationRepository({\n required this.storageService,\n required this.authenticationService,\n });\n\n final StorageService storageService;\n final AuthenticationService authenticationService;\n\n @override\n Future<void> init() async {\n try {\n final decodedUser = await storageService.get<Map<String, dynamic>>(\n key: _userKey,\n );\n if (decodedUser == null) {\n _unsetUser();\n } else {\n final user = User.fromJson(decodedUser);\n _setUser(user);\n }\n } catch (e) {\n _unsetUser();\n }\n }\n\n @override\n Future<void> dispose() async {\n _statusController.close();\n }\n\n final BehaviorSubject<AuthenticationStatus> _statusController =\n BehaviorSubject<AuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n\n Stream<AuthenticationStatus> get statusStream {\n return _statusController.stream;\n }\n\n AuthenticationStatus get statusCurrent {\n return _statusController.value;\n }\n\n User? _user;\n\n User? get user => _user;\n\n void _unsetUser() {\n _user = null;\n _statusController.add(AuthenticationStatus.unauthenticated);\n }\n\n void _setUser(User user) {\n _user = user;\n _statusController.add(AuthenticationStatus.authenticated);\n }\n\n Future<User> signUp({\n required String email,\n required String name,\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signUp(\n email: email,\n name: name,\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future<User> signIn({\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signIn(\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future<void> signOut() async {\n await authenticationService.signOut();\n await storageService.remove(\n key: _userKey,\n );\n\n _unsetUser();\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"enum AuthenticationStatus {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" unknown,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticated,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" unauthenticated,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"extension AuthenticationStatusExtensions on AuthenticationStatus {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"const String _userKey = 'secure_user';\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class AuthenticationRepository implements DisposableRepository {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationRepository({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.storageService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final StorageService storageService;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final AuthenticationService authenticationService;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> init() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final decodedUser = await storageService.get<Map<String, dynamic>>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (decodedUser == null) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = User.fromJson(decodedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(user);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> dispose() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.close();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final BehaviorSubject<AuthenticationStatus> _statusController =\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BehaviorSubject<AuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Stream<AuthenticationStatus> get statusStream {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _statusController.stream;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationStatus get statusCurrent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _statusController.value;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":55},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" User? _user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":56},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":57},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" User? get user => _user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":58},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":59},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _unsetUser() {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":60},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _user = null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":61},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.add(AuthenticationStatus.unauthenticated);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":62},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":63},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":64},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _setUser(User user) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":65},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _user = user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":66},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.add(AuthenticationStatus.authenticated);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":67},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":68},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":69},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<User> signUp({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":70},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":71},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":72},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":73},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":74},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":75},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticatedUser = await authenticationService.signUp(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":76},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" email: email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":77},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" name: name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":78},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":79},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":80},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":81},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.set(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":82},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":83},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" value: authenticatedUser.toJson(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":84},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":85},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":86},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(authenticatedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":87},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return authenticatedUser;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":88},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":89},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":90},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<User> signIn({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":91},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":92},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":93},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":94},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticatedUser = await authenticationService.signIn(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":95},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":96},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":97},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":98},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.set(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":99},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":100},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" value: authenticatedUser.toJson(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":101},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":102},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":103},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(authenticatedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":104},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return authenticatedUser;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":105},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":106},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":107},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> signOut() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":108},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationService.signOut();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":109},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.remove(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":110},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":111},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":112},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":113},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":114},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":115},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"bloc"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"As discussed, only repositories are accessible from dependency manager, no services are exposed, BLoC can depend multiple repositories in order to operate."}]},{"type":"element","tag":"h3","props":{"id":"key-points-3"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"What does it do?\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Manages the state of the application. Handles events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Interacts with Repository(s) to perform operations."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Emits a stream of State objects to notify the UI about changes."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Code Organization\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separates business logic from the UI, making the code more modular and easier to understand."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Allows you to easily test the BLoC's behavior in isolation."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Maintainability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Makes it easier to modify and extend the application's logic without affecting other parts of the codebase."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced User Experience\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provides a more predictable and responsive user interface by managing state changes effectively."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"best-practices"},"children":[{"type":"text","value":"Best Practices"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use descriptive and meaningful names for classes, events, states, and methods."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow consistent naming conventions throughout your project for better readability and maintainability."}]}]},{"type":"element","tag":"h4","props":{"id":"events"},"children":[{"type":"text","value":"Events"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Descriptive action verbs"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use action verbs that clearly describe the intent of the event"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Avoid generic names like "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ButtonClicked"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"DataUpdated"}]}]}]},{"type":"element","tag":"h4","props":{"id":"states"},"children":[{"type":"text","value":"States"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Descriptive adjectives"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use adjectives to describe the current state of the system."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Avoid vague names like StateA, StateB."}]}]},{"type":"element","tag":"h4","props":{"id":"bloc-1"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Class Name\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow the convention of using \"Bloc\" as a suffix for Bloc classes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"name should clearly indicate what the Bloc is responsible for."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Event Handler Method Names\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use the prefix "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_on"}]},{"type":"text","value":" followed by the corresponding event name."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This convention is commonly used in Bloc implementations to clearly identify event handlers."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"on<InitializationRequested>(_onInitializationRequested);"}]}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-3"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_bloc.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Extends Bloc and manages authentication state based on events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The AuthenticationBloc constructor injects an AuthenticationRepository for interacting with authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Event handlers ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_on*Requested"}]},{"type":"text","value":") handle specific events\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onInitializationRequested"}]},{"type":"text","value":": Checks the initial authentication state and emits AuthenticationSuccessful if a user is logged in, otherwise stays in the initial state."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignUpRequested"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignInRequested"}]},{"type":"text","value":": Handle signup and signin requests respectively, interacting with the repository and emitting loading/success/failure states."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignOutRequested"}]},{"type":"text","value":": Handles user signout, interacting with the repository and emitting loading/success/failure states."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"class AuthenticationBloc extends Bloc<AuthenticationEvent, AuthenticationState> {\n AuthenticationBloc({\n required this.authenticationRepository,\n }) : super(const AuthenticationInitial()) {\n on<InitializationRequested>(_onInitializationRequested);\n on<SignUpRequested>(_onSignUpRequested);\n on<SignInRequested>(_onSignInRequested);\n on<SignOutRequested>(_onSignOutRequested);\n }\n\n final AuthenticationRepository authenticationRepository;\n\n void _onInitializationRequested(\n InitializationRequested event,\n Emitter<AuthenticationState> emit,\n ) {\n if (authenticationRepository.statusCurrent.isAuthenticated &&\n authenticationRepository.user != null) {\n emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n }\n }\n\n Future<void> _onSignUpRequested(\n SignUpRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signUp(\n email: event.email,\n name: event.name,\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future<void> _onSignInRequested(\n SignInRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signIn(\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future<void> _onSignOutRequested(\n SignOutRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n await authenticationRepository.signOut();\n emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class AuthenticationBloc extends Bloc<AuthenticationEvent, AuthenticationState> {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationBloc({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) : super(const AuthenticationInitial()) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<InitializationRequested>(_onInitializationRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignUpRequested>(_onSignUpRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignInRequested>(_onSignInRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignOutRequested>(_onSignOutRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final AuthenticationRepository authenticationRepository;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _onInitializationRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" InitializationRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (authenticationRepository.statusCurrent.isAuthenticated &&\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository.user != null) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignUpRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignUpRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = await authenticationRepository.signUp(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" email: event.email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" name: event.name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: event.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: event.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: user));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignInRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignInRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = await authenticationRepository.signIn(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: event.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: event.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: user));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":55},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":56},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":57},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":58},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":59},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":60},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":61},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":62},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":63},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignOutRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":64},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignOutRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":65},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":66},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":67},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":68},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":69},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationRepository.signOut();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":70},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":71},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":72},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":73},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":74},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":75},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":76},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":77},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":78},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_event.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationEvent: Sealed class representing events that trigger state changes"}]}]},{"type":"element","tag":"pre","props":{"code":"@immutable\nsealed class AuthenticationEvent {\n const AuthenticationEvent();\n}\n\nfinal class InitializationRequested extends AuthenticationEvent {\n const InitializationRequested();\n}\n\nfinal class SignUpRequested extends AuthenticationEvent {\n const SignUpRequested({\n required this.email,\n required this.name,\n required this.username,\n required this.password,\n });\n\n final String email;\n final String name;\n final String username;\n final String password;\n}\n\nfinal class SignInRequested extends AuthenticationEvent {\n const SignInRequested({\n required this.username,\n required this.password,\n });\n\n final String username;\n final String password;\n}\n\nfinal class SignOutRequested extends AuthenticationEvent {\n const SignOutRequested();\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"@immutable\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"sealed class AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationEvent();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class InitializationRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const InitializationRequested();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignUpRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignUpRequested({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String email;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String name;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String username;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String password;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignInRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignInRequested({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String username;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String password;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignOutRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignOutRequested();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_state.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationState: Sealed class representing different states of authentication."}]}]},{"type":"element","tag":"pre","props":{"code":"@immutable\nsealed class AuthenticationState {\n const AuthenticationState();\n}\n\nfinal class AuthenticationInitial extends AuthenticationState {\n const AuthenticationInitial();\n}\n\nfinal class AuthenticationLoading extends AuthenticationState {\n const AuthenticationLoading();\n}\n\nfinal class AuthenticationSuccessful extends AuthenticationState {\n const AuthenticationSuccessful({\n required this.user,\n });\n\n final User user;\n}\n\nfinal class AuthenticationChanged extends AuthenticationState {\n const AuthenticationChanged({\n required this.message,\n });\n\n final String message;\n}\n\nfinal class AuthenticationFailed extends AuthenticationState {\n const AuthenticationFailed({\n required this.message,\n });\n\n final String message;\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"@immutable\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"sealed class AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationState();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationInitial extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationInitial();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationLoading extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationLoading();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationSuccessful extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationSuccessful({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.user,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final User user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationChanged extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationChanged({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.message,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String message;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationFailed extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationFailed({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.message,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String message;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage-2"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"On somewhere core level we initialize this bloc because it is used application wide, otherwise for other blocs for one screen only we can initialize for that screen only"}]},{"type":"element","tag":"pre","props":{"code":" MultiBlocProvider(\n providers: [\n BlocProvider<AuthenticationBloc>(\n create: (BuildContext context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ],\n child: ... ,\n )\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" MultiBlocProvider(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" providers: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BlocProvider<AuthenticationBloc>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" create: (BuildContext context) => AuthenticationBloc(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository: DependencyManager.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..add(const InitializationRequested()),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: ... ,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocBuilder\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Primarily used to build UI based on the current state of a Bloc."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocBuilder<AuthenticationBloc, AuthenticationState>(\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocBuilder<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationLoading) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const CircularProgressIndicator();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationSuccessful) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Successful');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Not authenticated');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocListener\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Primarily used to perform side effects in response to state changes within a Bloc."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocListener<AuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n child: // Your UI here,\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocListener<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" listener: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ScaffoldMessenger.of(context).showSnackBar(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SnackBar(content: Text(state.message)),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: // Your UI here,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocConsumer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Combines the functionality of both BlocListener and BlocBuilder."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocConsumer<AuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocConsumer<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" listener: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ScaffoldMessenger.of(context).showSnackBar(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SnackBar(content: Text(state.message)),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationLoading) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const CircularProgressIndicator();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationSuccessful) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Successful');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Not authenticated');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"circular-dependency"},"children":[{"type":"text","value":"Circular Dependency"}]},{"type":"element","tag":"h3","props":{"id":"the-problem"},"children":[{"type":"text","value":"The problem"}]},{"type":"element","tag":"pre","props":{"code":"    final vaahApiService = ApiService(\n      interceptors: [\n        ApiTokenInterceptor(() => authenticationRepository),\n      ],\n    );\n\n    final authenticationService = AuthenticationService.vaah(\n      apiService: vaahApiService,\n    );\n\n    authenticationRepository = AuthenticationRepository(\n      authenticationService: authenticationService,\n    );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"        ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]}]}]},{"type":"element","tag":"ol","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":" needs "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" to retrieve the user's securely locally stored API token."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" depends on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" for authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" relies on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" to make API calls."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" needs "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h3","props":{"id":"the-solution"},"children":[{"type":"text","value":"The solution"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" is created with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":". However, the interceptor uses a lambda function ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"() => authenticationRepository"}]},{"type":"text","value":") to delay retrieving the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" instance."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" is created immediately after "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" using the already created "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Finally, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" is created immediately after "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"One more thing to note here: We need to initialize services and repo in this perticular order (We can not initialize anything between given initializations). We always first initialize "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":", then "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":", and then "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" -- "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Immediately"}]},{"type":"text","value":" one after another just to ensure that no other service that depends on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" makes any request inbetween."}]}]},{"type":"element","tag":"h3","props":{"id":"the-lambda-function"},"children":[{"type":"text","value":"The lambda function"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The lambda function "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"() => authenticationRepository"}]},{"type":"text","value":" is used within the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This function delays the retrieval of the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationRepository"}]},{"type":"text","value":" until it's actually needed."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By the time the interceptor needs the repository during an API call, init would have already completed creating all the services and the repositories. And thus needed repository instance would be available by that time."}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"main-entry-point","depth":2,"text":"Main entry point"},{"id":"dependency-manager","depth":2,"text":"Dependency Manager","children":[{"id":"key-points","depth":3,"text":"Key Points"},{"id":"issues-with-this-approach","depth":3,"text":"Issues with this Approach"},{"id":"example","depth":3,"text":"Example"},{"id":"usage","depth":3,"text":"Usage"}]},{"id":"services","depth":2,"text":"Services","children":[{"id":"key-points-1","depth":3,"text":"Key Points"},{"id":"example-1","depth":3,"text":"Example"},{"id":"usage-1","depth":3,"text":"Usage"}]},{"id":"repositories","depth":2,"text":"Repositories","children":[{"id":"key-points-2","depth":3,"text":"Key points"},{"id":"example-2","depth":3,"text":"Example"}]},{"id":"bloc","depth":2,"text":"BLoC","children":[{"id":"key-points-3","depth":3,"text":"Key Points"},{"id":"best-practices","depth":3,"text":"Best Practices"},{"id":"example-3","depth":3,"text":"Example"},{"id":"usage-2","depth":3,"text":"Usage"}]},{"id":"circular-dependency","depth":2,"text":"Circular Dependency","children":[{"id":"the-problem","depth":3,"text":"The problem"},{"id":"the-solution","depth":3,"text":"The solution"},{"id":"the-lambda-function","depth":3,"text":"The lambda function"}]}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:2.architecture.md","_source":"content","_file":"2.mobile-app/3.poc/2.architecture.md","_stem":"2.mobile-app/3.poc/2.architecture","_extension":"md"},{"_path":"/mobile-app/poc/code-generation","_dir":"poc","_draft":false,"_partial":false,"_locale":"","title":"Automatic code generation","description":null,"body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"todo"},"children":[{"type":"text","value":"TODO:"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"todo","depth":2,"text":"TODO:"}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:3.code-generation.md","_source":"content","_file":"2.mobile-app/3.poc/3.code-generation.md","_stem":"2.mobile-app/3.poc/3.code-generation","_extension":"md"},{"_path":"/web/guide","_dir":"web","_draft":false,"_partial":false,"_locale":"","title":"Guide","description":"","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"brief-overview-development-guide"},"children":[{"type":"text","value":"Brief overview & Development guide"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore is a platform-agnostic ecommerce frontend solution that allows seamless integration with various ecommerce backends! It provides tools for building customizable, high-performance online storefronts."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This guide will provide you with an overview of the project structure, tools and best practices to help you get started quickly."}]},{"type":"element","tag":"h2","props":{"id":"project-structure"},"children":[{"type":"text","value":"Project Structure"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This project follows a modular and scalable architecture, by decoupling the composable frontend from the server middleware allowing for easy collaboration among multiple teams and ensuring consistent development practices across the codebase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The architecture includes the following apps:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"server"}]},{"type":"text","value":" - NuxtStore server middleware powered by "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://fastify.dev/","rel":["nofollow"]},"children":[{"type":"text","value":"Fastify"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"web"}]},{"type":"text","value":" - A typescript based web application powered by "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vuejs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Vue"}]}]}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note"}]},{"type":"text","value":": These two standalone modules are capable of being integrated with any backend service with consistent APIs without extra configuration to setup."}]}]},{"type":"element","tag":"h4","props":{"id":"web-application"},"children":[{"type":"text","value":"Web application"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Web app follows a typical Nuxt.js directory "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/nuxt","rel":["nofollow"]},"children":[{"type":"text","value":"structure"}]},{"type":"text","value":" with a few tweaks:"}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\napps/\n └── root/\n ├── ...\n ├── assets/ # Static assets\n ├── components/ \n │ ├── atoms/ # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n │ ├── molecules/ # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n │ └── organisms/ # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n ├── composables/ # Custom hooks composing reactive logic\n ├── constants/ \n │ ├── api.ts # API-related constants (HTTP methods)\n │ └── ui.ts # UI-related constants (colors, breakpoints)\n ├── data/ # Static data or JSON files\n ├── layouts/ # Nuxt Layouts\n ├── middleware/ # Client side route middlewares \n │ ├── auth.ts \n │ └── ...\n ├── pages/ # Pages\n │ ├── index.vue # App home page component\n │ └── ...\n ├── plugins/ # App plugins run on both client and server\n ├── public/ # Public assets\n ├── server/ # In-app backend server\n ├── shared/\n │ ├── types/ # Type definitions\n │ └── utils/ # Non-reactive helper functions\n ├── stores/ # Pinia stores for state management\n │ ├── auth.store.ts \n │ └── cart.store.ts \n ├── tests/ # Component and feature unit tests\n ├── eslint.config.mjs # Linter rules\n ├── features.json # Feature flags\n ├── app.vue # Application entry point\n ├── nuxt.config.ts # Nuxt.js configuration\n ├── package.json # Package entry point\n ├── tailwind.config.ts # TailwindCSS configuration\n ├── tsconfig.json # TypeScript configuration\n ├── vitest.config.ts # Vitest configuration\n └── ...\n\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"apps/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" root/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" assets/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Static assets\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" components/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" atoms/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" molecules/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" organisms/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" composables/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Custom hooks composing reactive logic\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" constants/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" api.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # API-related constants (HTTP methods)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ui.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # UI-related constants (colors, breakpoints)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" data/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Static data or JSON files\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" layouts/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Nuxt Layouts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" middleware/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Client side route middlewares \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" auth.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" pages/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Pages\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" index.vue"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # App home page component\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" plugins/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # App plugins run on both client and server\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" public/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Public assets\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" server/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # In-app backend server\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" shared/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Type definitions\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" utils/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Non-reactive helper functions\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" stores/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Pinia stores for state management\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" auth.store.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart.store.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tests/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Component and feature unit tests\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" eslint.config.mjs"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Linter rules\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" features.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Feature flags\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" app.vue"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Application entry point\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxt.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Nuxt.js configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" package.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Package entry point\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tailwind.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # TailwindCSS configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tsconfig.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # TypeScript configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" vitest.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Vitest configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"List of essential directories:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" NuxtStore UI components, like "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ProductCard"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Review"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"stores"}]},{"type":"text","value":" Pinia store containing global state, getters and mutators"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"composables"}]},{"type":"text","value":" Contains reusable composition functions, e.g. data fetchers and stateful helpers"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"shared"}]},{"type":"text","value":" Contains types and utilities "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/nuxt/releases/tag/v3.14.0","rel":["nofollow"]},"children":[{"type":"text","value":"shared"}]},{"type":"text","value":" across client and server e.g "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"product.type.ts"}]},{"type":"text","value":". Auto-import support will follow in next major release."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"tests"}]},{"type":"text","value":" Contains mocks for components, composables and store actions"}]}]},{"type":"element","tag":"h2","props":{"id":"project-guide"},"children":[{"type":"text","value":"Project Guide"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This project follows a few conventions to help with organizing your code:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each function is located in a dedicated module and exported from the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"index.ts"}]},{"type":"text","value":" file."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"In this nuxt application, avoid importing auto-imported APIs (ref, onMounted etc.) or compiler macros (defineProps, defineEmits etc.) and PrimeVue components (Button, InputText, Dialog, Carousel etc.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Names are short, descriptive and must follow our consistent naming convention ("},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/code","rel":["nofollow"]},"children":[{"type":"text","value":"guide"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow this "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/nuxt","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt guide"}]},{"type":"text","value":" to avoid common mistakes and comply with industry standard practices"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Functions (including composables and utils) are exported using explicit named exports instead of anonymous exports"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Actions or functions are defined following the trivial function definitions ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"func() { }"}]},{"type":"text","value":") "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"instead of arrow functions"}]},{"type":"text","value":" ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"const func = () => { }"}]},{"type":"text","value":") to create visible distinction between constants and methods"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This project follows "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/git","rel":["nofollow"]},"children":[{"type":"text","value":"gitflow"}]},{"type":"text","value":" as the branching strategy"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Feature branch name must follow a simple convention such as\n"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"feature/<purpose>-<page_name>-<subject>"}]},{"type":"text","value":". Subject can be component or specific feature\n(e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ui-cart-summary"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ui-layout-footer"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"flow-checkout-payment"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"action-cart-quantity"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html","rel":["nofollow"]},"children":[{"type":"text","value":"JS doc comments"}]},{"type":"text","value":" are added at necessary places to define the structure of a complex entity or explain the construct of a method"}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" In order to add code comments, we prefix the action with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@"}]},{"type":"text","value":" for contributors reference such as "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@todo:"}]},{"type":"text","value":" or "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@debug:"}]}]}]},{"type":"element","tag":"h3","props":{"id":"components"},"children":[{"type":"text","value":"Components"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore UI follows "},{"type":"element","tag":"a","props":{"href":"https://atomicdesign.bradfrost.com/chapter-2/","rel":["nofollow"]},"children":[{"type":"text","value":"atomic design principle"}]},{"type":"text","value":" to develop components and it leverages "},{"type":"element","tag":"a","props":{"href":"https://primevue.org/","rel":["nofollow"]},"children":[{"type":"text","value":"PrimeVue"}]},{"type":"text","value":" as the building blocks of storefront components. All components are auto-imported by their name (no path-prefix) and are located inside subfolders in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Introduction to project components:"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Consists of representational components that are designed to fulfill project requirements"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Components should be placed in dedicated folders inside components directory"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Root of the component folder has "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"atoms"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"molecules"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"organisms"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each component name must be prefixed with "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"\"Ns\""}]},{"type":"text","value":" (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"NsProductCard"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"TypeScript types are located inside the SFC for ease of access and coupling"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Tests for components are located in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/tests/components"}]},{"type":"text","value":" folder (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"NsUserAddress.spec.ts"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Folders inside /atoms, /molecules and /organisms must follow their purpose"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Expected directory structure:"}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"components/\n └── atoms/\n └── cart/\n └── NsAddToCartButton.vue\n └── NsCartIcon.vue\n └── ui/\n └── NsHeader.vue\n └── NsFooter.vue\n └── ...\n └── molecules/\n └── form/\n └── NsEmailInput.vue\n └── NsPasswordInput.vue\n └── ...\n └── organisms/\n └── address/\n └── NsAddressCard.vue\n └── cart/\n └── NsCartOverview.vue\n └── forms/\n └── NsSignUpForm.vue\n └── NsAddressForm.vue\n └── ...\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"components/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" atoms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddToCartButton.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsCartIcon.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ui/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsHeader.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsFooter.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" molecules/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" form/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsEmailInput.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsPasswordInput.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" organisms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" address/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddressCard.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsCartOverview.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" forms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsSignUpForm.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddressForm.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For more information about available NuxtStore components for Vue (Nuxt), check out "},{"type":"element","tag":"a","props":{"href":""},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":"."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Convention:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Vue (Nuxt) components should follow "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"PascalCase"}]},{"type":"text","value":" pattern ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"CategoryFilters"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Heading"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The types for component's props should be named "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"{Component}Props"}]},{"type":"text","value":" and exist in the same SFC as the component. For example, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"GalleryProps"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"HeadingProps"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Line of code in a single file component must not exceed 200 (formatted)"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Prop Declaration:"}]},{"type":"text","value":" In vue, there are multiple ways to define component props especially with typescript. ["},{"type":"element","tag":"a","props":{"href":"https://vuejs.org/guide/typescript/composition-api.html#typing-component-props","rel":["nofollow"]},"children":[{"type":"text","value":"checkout official docs"}]},{"type":"text","value":"] To ensure consistency and still allow customisability, we have adopted the following pattern."},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Multiword props are defined in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"camelCase"}]},{"type":"text","value":" and passed in template as "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"kebab-case"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export type CartActionProps = {\n icon?: string,\n label?: string,\n ...\n};\n\nconst props = withDefaults(defineProps<CartActionProps>(), {\n icon: \"pi pi-cart\",\n label: \"Add to cart\"\n});\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" CartActionProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" icon"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" label"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"};\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" props "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" withDefaults"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"defineProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"CartActionProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" icon"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pi pi-cart"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" label"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"Add to cart"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":";\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"state-management"},"children":[{"type":"text","value":"State Management"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We are using "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/ssr/nuxt.html","rel":["nofollow"]},"children":[{"type":"text","value":"Pinia state management"}]},{"type":"text","value":" to lock the data responsibility along with the composition functions (composables)."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Pinia stores are defined in the style of "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/core-concepts/#Setup-Stores","rel":["nofollow"]},"children":[{"type":"text","value":"Setup stores"}]},{"type":"text","value":", keeping performance and modern standards in view"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each store file must end with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".store.ts"}]},{"type":"text","value":" extension"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Store methods are as modular and reusable as possible and do not perform side effects. If required, new action is created in order to handle "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"post{Action}"}]},{"type":"text","value":" (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"addToCart"}]},{"type":"text","value":" , "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"postAddToCart"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/state-management","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useState"}]}]},{"type":"text","value":" is used in very narrow context where creating global store for shared state doesn't make sense"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Sequentially a store structure should have state >> getters >> actions for readability"}]}]},{"type":"element","tag":"h3","props":{"id":"composables"},"children":[{"type":"text","value":"Composables"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Composables are useful when stateful logic has to be reused across components - e.g. controlling component state or leverage lifecycle hooks or accessing DOM api.\nProject composables are located on top level inside the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"composables/"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Convention:"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each composable should be prefixed with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"use"}]},{"type":"text","value":" keyword ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useCartStatus"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Composables should follow "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"camelCase"}]},{"type":"text","value":" pattern ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useProductReviews"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Composables follow single responsibility principle. Avoid calling side effects inside composables"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This project inherits most of the composables from "},{"type":"element","tag":"a","props":{"href":"https://vueuse.org/guide/best-practice.html","rel":["nofollow"]},"children":[{"type":"text","value":"vueuse"}]},{"type":"text","value":" library. Always search for an already available "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"vueuse"}]},{"type":"text","value":" composable before writing on own for common tasks or DOM manipulation."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vuejs.org/guide/reusability/composables.html#conventions-and-best-practices","rel":["nofollow"]},"children":[{"type":"text","value":"Composables"}]},{"type":"text","value":" should only be called in synchronous environment and on top level. Remember to clean attached event handlers or timeouts if defined inside a composable using vue's unmount hooks"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built-in Nuxt composables must be called in the right context to avoid critical errors such as "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/concepts/auto-imports#vue-and-nuxt-composables","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt instance unavailable"}]}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" State connected to the certain composable is read-only and reactive. They are modified by the internal modifiers (setters)"}]}]},{"type":"element","tag":"h3","props":{"id":"utils"},"children":[{"type":"text","value":"Utils"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Main purpose of utils is to encapsulate non-reactive helper method logic and draw a semantic boundary between reactive composables and other auto-imported utility functions. Utils are contained inside the Shared/ folder. This project follows some simple conventions for utils:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Project utils end with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".utils.ts"}]},{"type":"text","value":" extension (e.g format.utils.ts, wishlist.utils.ts)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"utils/index.utils.ts"}]},{"type":"text","value":" contains all the shared functions across all contexts/features (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"isEqual<T>(a,b)"}]},{"type":"text","value":" compares two entities for equality)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Named exports are preferred over default export (e.g export function cleanUserInput(){ })"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"One utility method can have multiple exports, allowing relevant functions to be grouped together"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Utility functions are synchronous and do not communicate with any reactive source (store/composables)"}]}]},{"type":"element","tag":"h3","props":{"id":"localization"},"children":[{"type":"text","value":"Localization"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore ships with a basic setup for i18n localization powered by the "},{"type":"element","tag":"a","props":{"href":"https://i18n.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt-i18n"}]},{"type":"text","value":" library. Project locale translations are stored in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"locale/[namespace].json"}]},{"type":"text","value":" files. Translations are grouped by "},{"type":"element","tag":"em","props":{},"children":[{"type":"text","value":"features"}]},{"type":"text","value":", and imported only where required to minimize bundle size.\nRefer to the "},{"type":"element","tag":"a","props":{"href":"https://i18n.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt-i18n"}]},{"type":"text","value":" documentation for translating content with SSR support."}]},{"type":"element","tag":"h3","props":{"id":"testing"},"children":[{"type":"text","value":"Testing"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The project provides a basic setup for testing TypeScript code with "},{"type":"element","tag":"a","props":{"href":"https://vitest.dev/","rel":["nofollow"]},"children":[{"type":"text","value":"Vitest"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://test-utils.vuejs.org/guide/","rel":["nofollow"]},"children":[{"type":"text","value":"Vue Test Utils"}]},{"type":"text","value":" for testing Vue (Nuxt) components and "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/cookbook/testing.html#Mocking-the-returned-value-of-an-action","rel":["nofollow"]},"children":[{"type":"text","value":"pinia stores"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Testing configuration files: (runs on nuxt environment and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"happy-dom"}]},{"type":"text","value":")"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"vitest.config.ts"}]},{"type":"text","value":" - Test runner config file"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Testing commands:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"npm run unittest"}]},{"type":"text","value":" - Run all the test scripts in the project (in watch mode by default)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"npm run unittest <Component>"}]},{"type":"text","value":" - Run specific component/feature mocks"}]}]},{"type":"element","tag":"h3","props":{"id":"conventions-enforced-by-automated-tooling"},"children":[{"type":"text","value":"Conventions enforced by automated tooling"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To help you code with best practices in mind, this boilerplate comes with some automated tooling."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"All test descriptions follow naming convention "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"test('should <component>... ')"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Automatic code linting is managed by "},{"type":"element","tag":"a","props":{"href":"https://eslint.nuxt.com/packages/config","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-eslint-module"}]}]}]},{"type":"element","tag":"h3","props":{"id":"cache-control"},"children":[{"type":"text","value":"Cache control"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"As the initial Nuxt setup is not caching images generated by "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NuxtImg"}]},{"type":"text","value":", the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":" in this repository has been extended to cache those images as well (by setting proper headers):"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"routeRules: {\n '/_ipx/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/icons/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/favicon.ico': { headers: { 'cache-control': `putypescriptblic, max-age=31536000, immutable` } },\n},\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"routeRules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/_ipx/**"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/icons/**"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/favicon.ico"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"putypescriptblic, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can read about more possible rules in the "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/concepts/rendering#hybrid-rendering","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt documentation"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h4","props":{"id":"more-about-performance"},"children":[{"type":"text","value":"More about performance"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Additional performance good practices and vue project guide can be found "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/vue-and-nuxt-performance-improvement","rel":["nofollow"]},"children":[{"type":"text","value":"HERE"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h3","props":{"id":"recommended-ide-setup"},"children":[{"type":"text","value":"Recommended IDE setup"}]},{"type":"element","tag":"ol","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Visual Studio Code (with prettier_extension @"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"v9.14.0"}]},{"type":"text","value":" exact and the latest version of microsoft eslint_extension)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"webstorm (for developers comfortable in jetbrains IDE like phpstorm with no extra configuration -\n"},{"type":"element","tag":"a","props":{"href":"https://www.jetbrains.com/help/webstorm/eslint.html#ws_js_eslint_activate","rel":["nofollow"]},"children":[{"type":"text","value":"ws_eslint_customisation_guide"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"brief-overview-development-guide","depth":2,"text":"Brief overview & Development guide"},{"id":"project-structure","depth":2,"text":"Project Structure"},{"id":"project-guide","depth":2,"text":"Project Guide","children":[{"id":"components","depth":3,"text":"Components"},{"id":"state-management","depth":3,"text":"State Management"},{"id":"composables","depth":3,"text":"Composables"},{"id":"utils","depth":3,"text":"Utils"},{"id":"localization","depth":3,"text":"Localization"},{"id":"testing","depth":3,"text":"Testing"},{"id":"conventions-enforced-by-automated-tooling","depth":3,"text":"Conventions enforced by automated tooling"},{"id":"cache-control","depth":3,"text":"Cache control"},{"id":"recommended-ide-setup","depth":3,"text":"Recommended IDE setup"}]}]}},"_type":"markdown","_id":"content:3.web:guide.md","_source":"content","_file":"3.web/guide.md","_stem":"3.web/guide","_extension":"md"},{"_path":"/","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Nuxt UI Pro - Docs template","description":"Nuxt UI Pro is a collection of premium Vue components built on top of Nuxt UI to create beautiful & responsive Nuxt applications in minutes.","navigation":false,"hero":{"title":"Build your docs in seconds","description":"Create your documentation in seconds with this template!","orientation":"horizontal","headline":{"label":"Made with Nuxt UI Pro","to":"https://ui.nuxt.com/pro","icon":"i-heroicons-arrow-top-right-on-square-20-solid"},"links":[{"label":"Get started","icon":"i-heroicons-arrow-right-20-solid","trailing":true,"to":"/getting-started","size":"lg"},{"label":"Use this template","icon":"i-simple-icons-github","size":"lg","color":"gray","to":"https://github.com/nuxt-ui-pro/docs","target":"_blank"}],"code":"```bash [Terminal]\nnpx nuxi init -t github:nuxt-ui-pro/docs\n```\n"},"features":{"title":"All-in-one docs template","links":[{"label":"Explore Nuxt UI Pro","icon":"i-simple-icons-nuxtdotjs","trailingIcon":"i-heroicons-arrow-right-20-solid","color":"gray","to":"https://ui.nuxt.com/pro","target":"_blank","size":"lg"}],"items":[{"title":"Nuxt 3","description":"Powered by Nuxt 3 for optimal performances and SEO.","icon":"i-simple-icons-nuxtdotjs","to":"https://nuxt.com","target":"_blank"},{"title":"Markdown","description":"Write your pages with MDC thanks to Nuxt Content.","icon":"i-simple-icons-markdown","to":"https://content.nuxt.com","target":"_blank"},{"title":"Nuxt UI","description":"Offers a very large set of full customizable components.","icon":"i-heroicons-sparkles-20-solid","to":"https://ui.nuxt.com","target":"_blank"},{"title":"TypeScript","description":"A fully typed development experience.","icon":"i-simple-icons-typescript","to":"https://www.typescriptlang.org","target":"_blank"},{"title":"Nuxt Studio","description":"Supported by Nuxt Studio for fast updates and previews.","icon":"i-simple-icons-nuxtdotjs","to":"https://nuxt.studio","target":"_blank"},{"title":"Search","description":"A full-text search modal empowered by Fuse.js.","icon":"i-heroicons-magnifying-glass-20-solid","to":"https://ui.nuxt.com/pro/components/docs/docs-search","target":"_blank"}]},"_id":"content:index.yml","_type":"yaml","_source":"content","_file":"index.yml","_stem":"index","_extension":"yml"}],"navigation":[{"title":"Getting Started","_path":"/getting-started","children":[{"title":"Introduction","_path":"/getting-started"},{"title":"Code of Conduct","_path":"/getting-started/code-of-conduct"}]},{"title":"Mobile App","_path":"/mobile-app","children":[{"title":"Onboarding","_path":"/mobile-app/onboarding","children":[{"title":"Introduction","_path":"/mobile-app/onboarding"},{"title":"Tech Stack","_path":"/mobile-app/onboarding/tech-stack"}]},{"title":"Thought Processes","_path":"/mobile-app/thought-processses","children":[{"title":"Introduction","_path":"/mobile-app/thought-processses"},{"title":"Architecture","_path":"/mobile-app/thought-processses/architecture"},{"title":"Decoupling Dependencies","_path":"/mobile-app/thought-processses/decoupling"},{"title":"State Management","_path":"/mobile-app/thought-processses/state-management"}]},{"title":"Proof of Concepts","_path":"/mobile-app/poc","children":[{"title":"Introduction","_path":"/mobile-app/poc"},{"title":"Architecture PoC","_path":"/mobile-app/poc/architecture"},{"title":"Automatic code generation","_path":"/mobile-app/poc/code-generation"}]}]},{"title":"Web","_path":"/web","children":[{"title":"Guide","_path":"/web/guide"}]}]} \ No newline at end of file diff --git a/api/_content/navigation/i5pZc4XEtQ.1741786524678.json b/api/_content/navigation/i5pZc4XEtQ.1741786524678.json new file mode 100644 index 0000000..852f46c --- /dev/null +++ b/api/_content/navigation/i5pZc4XEtQ.1741786524678.json @@ -0,0 +1 @@ +[{"title":"Getting Started","_path":"/getting-started","children":[{"title":"Introduction","_path":"/getting-started"},{"title":"Code of Conduct","_path":"/getting-started/code-of-conduct"}]},{"title":"Mobile App","_path":"/mobile-app","children":[{"title":"Onboarding","_path":"/mobile-app/onboarding","children":[{"title":"Introduction","_path":"/mobile-app/onboarding"},{"title":"Tech Stack","_path":"/mobile-app/onboarding/tech-stack"}]},{"title":"Thought Processes","_path":"/mobile-app/thought-processses","children":[{"title":"Introduction","_path":"/mobile-app/thought-processses"},{"title":"Architecture","_path":"/mobile-app/thought-processses/architecture"},{"title":"Decoupling Dependencies","_path":"/mobile-app/thought-processses/decoupling"},{"title":"State Management","_path":"/mobile-app/thought-processses/state-management"}]},{"title":"Proof of Concepts","_path":"/mobile-app/poc","children":[{"title":"Introduction","_path":"/mobile-app/poc"},{"title":"Architecture PoC","_path":"/mobile-app/poc/architecture"},{"title":"Automatic code generation","_path":"/mobile-app/poc/code-generation"}]}]},{"title":"Web","_path":"/web","children":[{"title":"Guide","_path":"/web/guide"}]}] \ No newline at end of file diff --git a/api/_content/query/0CgxMh2nDn.1741786524678.json b/api/_content/query/0CgxMh2nDn.1741786524678.json new file mode 100644 index 0000000..c40176e --- /dev/null +++ b/api/_content/query/0CgxMh2nDn.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Nuxt UI Pro - Docs template","description":"Nuxt UI Pro is a collection of premium Vue components built on top of Nuxt UI to create beautiful & responsive Nuxt applications in minutes.","navigation":false,"hero":{"title":"Build your docs in seconds","description":"Create your documentation in seconds with this template!","orientation":"horizontal","headline":{"label":"Made with Nuxt UI Pro","to":"https://ui.nuxt.com/pro","icon":"i-heroicons-arrow-top-right-on-square-20-solid"},"links":[{"label":"Get started","icon":"i-heroicons-arrow-right-20-solid","trailing":true,"to":"/getting-started","size":"lg"},{"label":"Use this template","icon":"i-simple-icons-github","size":"lg","color":"gray","to":"https://github.com/nuxt-ui-pro/docs","target":"_blank"}],"code":"```bash [Terminal]\nnpx nuxi init -t github:nuxt-ui-pro/docs\n```\n"},"features":{"title":"All-in-one docs template","links":[{"label":"Explore Nuxt UI Pro","icon":"i-simple-icons-nuxtdotjs","trailingIcon":"i-heroicons-arrow-right-20-solid","color":"gray","to":"https://ui.nuxt.com/pro","target":"_blank","size":"lg"}],"items":[{"title":"Nuxt 3","description":"Powered by Nuxt 3 for optimal performances and SEO.","icon":"i-simple-icons-nuxtdotjs","to":"https://nuxt.com","target":"_blank"},{"title":"Markdown","description":"Write your pages with MDC thanks to Nuxt Content.","icon":"i-simple-icons-markdown","to":"https://content.nuxt.com","target":"_blank"},{"title":"Nuxt UI","description":"Offers a very large set of full customizable components.","icon":"i-heroicons-sparkles-20-solid","to":"https://ui.nuxt.com","target":"_blank"},{"title":"TypeScript","description":"A fully typed development experience.","icon":"i-simple-icons-typescript","to":"https://www.typescriptlang.org","target":"_blank"},{"title":"Nuxt Studio","description":"Supported by Nuxt Studio for fast updates and previews.","icon":"i-simple-icons-nuxtdotjs","to":"https://nuxt.studio","target":"_blank"},{"title":"Search","description":"A full-text search modal empowered by Fuse.js.","icon":"i-heroicons-magnifying-glass-20-solid","to":"https://ui.nuxt.com/pro/components/docs/docs-search","target":"_blank"}]},"_id":"content:index.yml","_type":"yaml","_source":"content","_file":"index.yml","_stem":"index","_extension":"yml"} \ No newline at end of file diff --git a/api/_content/query/2DYjckByST.1741786524678.json b/api/_content/query/2DYjckByST.1741786524678.json new file mode 100644 index 0000000..9d495cf --- /dev/null +++ b/api/_content/query/2DYjckByST.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/onboarding","_dir":{"_path":"/mobile-app/onboarding/_dir","title":"Onboarding"},"_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Starting with Mobile App Onboarding","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"VaahStore Mobile App is a feature-rich mobile application, designed to provide a seamless shopping experience on smartphones and tablets. It leverages the power of the VaahStore backend API to offer a wide range of features."}]},{"type":"element","tag":"h2","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Product Browsing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Explore a vast catalog of products, categorized and filtered for easy navigation."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Product Details\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"View detailed product information, including high-quality images, descriptions, and customer reviews."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Shopping Cart\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Add products to the cart, modify quantities, and apply discounts."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Secure Checkout\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Process payments securely using various payment methods."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Order Tracking\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Track the status of orders, from placement to delivery."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"User Accounts\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create and manage user accounts, including address book, order history, and wishlists."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Push Notifications\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Receive personalized notifications for order updates, promotions, and new arrivals."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Recommendations\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Personalized Recommendations to cater each individual"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Robust Logging and Analytics\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Monitor app performance & issues. Also collect insights about what users prefer."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"And Much More\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"All the things you think should be there, If not let us know and we will try to fit them in our roadmap."}]}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"features","depth":2,"text":"Features"}]}},"_type":"markdown","_id":"content:2.mobile-app:1.onboarding:1.index.md","_source":"content","_file":"2.mobile-app/1.onboarding/1.index.md","_stem":"2.mobile-app/1.onboarding/1.index","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/3ZeGkkCrqw.1741786524678.json b/api/_content/query/3ZeGkkCrqw.1741786524678.json new file mode 100644 index 0000000..febda05 --- /dev/null +++ b/api/_content/query/3ZeGkkCrqw.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/onboarding/tech-stack","_dir":"onboarding","_draft":false,"_partial":false,"_locale":"","title":"Tech Stack","description":"Technologies powering our platform.","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"todo"},"children":[{"type":"text","value":"TODO:"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"todo","depth":2,"text":"TODO:"}]}},"_type":"markdown","_id":"content:2.mobile-app:1.onboarding:2.tech-stack.md","_source":"content","_file":"2.mobile-app/1.onboarding/2.tech-stack.md","_stem":"2.mobile-app/1.onboarding/2.tech-stack","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/492agH5K4b.1741786524678.json b/api/_content/query/492agH5K4b.1741786524678.json new file mode 100644 index 0000000..00f940e --- /dev/null +++ b/api/_content/query/492agH5K4b.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/poc/architecture","_dir":"poc","_draft":false,"_partial":false,"_locale":"","title":"Architecture PoC","description":null,"body":{"type":"root","children":[{"type":"element","tag":"pre","props":{"code":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"}]}]},{"type":"element","tag":"h2","props":{"id":"main-entry-point"},"children":[{"type":"text","value":"Main entry point"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"app_config.dart"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This file is the main entry point of the application. It initializes the DependencyManager and sets up the application's initial configuration, including system UI styles. It then renders a FutureBuilder to handle the asynchronous initialization process of the DependencyManager. Based on the initialization result, it displays a loading screen, an error screen, or the main application."}]},{"type":"element","tag":"pre","props":{"code":" return FutureBuilder<bool>(\n future: DependencyManager.init(),\n builder: (context, snapshot) {\n if (snapshot.connectionState == ConnectionState.waiting) {\n return const _DefaultAppConfig(\n child: _SplashScreen(),\n );\n } else if (snapshot.hasError) {\n return const _DefaultAppConfig(\n child: _HardRestartScreen(),\n );\n } else if (snapshot.hasData) {\n return _AppConfigImpl(\n env: env,\n );\n } else {\n return const _DefaultAppConfig(\n child: _SomethingWentWrongScreen(),\n );\n }\n },\n );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return FutureBuilder<bool>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" future: DependencyManager.init(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, snapshot) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (snapshot.connectionState == ConnectionState.waiting) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _SplashScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (snapshot.hasError) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _HardRestartScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (snapshot.hasData) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _AppConfigImpl(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" env: env,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _SomethingWentWrongScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"dependency-manager"},"children":[{"type":"text","value":"Dependency Manager"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"the DependencyManager acts as a central hub for managing application-wide dependencies."}]},{"type":"element","tag":"h3","props":{"id":"key-points"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Focus on Repositories\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The DependencyManager primarily initializes and exposes repositories. Repositories encapsulate data access logic, often combining data from multiple services."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" combines data from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageService"}]},{"type":"text","value":". This separation of concerns promotes cleaner code and easier testing."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoCs and Repositories\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoCs, which manage application state and logic, can leverage the DependencyManager to access the required repositories."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, an "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationBloc"}]},{"type":"text","value":" might depend on the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Modular Design\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This approach promotes modularity by isolating dependency creation logic within the DependencyManager. BLoCs and other components don't need to be aware of how their dependencies are created, making the code more maintainable and testable."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Singleton Pattern\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The DependencyManager utilizes the Singleton pattern to ensure only one instance exists throughout the application's lifetime. This guarantees consistent access to the initialized dependencies."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"issues-with-this-approach"},"children":[{"type":"text","value":"Issues with this Approach"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Circular Dependency Issue\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"It's something when first thing depends on second and second depends on first, creating a deadlock."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Solution to this I explain later "},{"type":"element","tag":"a","props":{"href":"#circular-dependency"},"children":[{"type":"text","value":"here"}]},{"type":"text","value":"."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"    final vaahApiService = ApiService(\n      interceptors: [\n        ApiTokenInterceptor(() => authenticationRepository),\n      ],\n    );\n\n    final authenticationService = AuthenticationService.vaah(\n      apiService: vaahApiService,\n    );\n\n    authenticationRepository = AuthenticationRepository(\n      authenticationService: authenticationService,\n    );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"        ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"init"}]},{"type":"text","value":" Method\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This asynchronous method initializes the essential services & repositories"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationRepository"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"DependencyManager Creates the core "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"instance"}]},{"type":"text","value":", injecting both "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"secureStorageService"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationService"}]},{"type":"text","value":". And Let's say some other repository depends on secureStorageService we do not need to create a new one, we can utilize existing one."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Exposing variables\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"To expose you need to create direct variable in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"DependencyManager"}]},{"type":"text","value":" with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"static late final"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"static late final AuthenticationRepository authenticationRepository;"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"dependency_manager.dart"}]}]},{"type":"element","tag":"pre","props":{"code":"/// DependencyManager: Singleton Class\nabstract class DependencyManager {\n static bool _isInitialized = false;\n\n static late final AuthenticationRepository authenticationRepository;\n\n static Future<bool> init() async {\n if (_isInitialized) {\n return true;\n }\n\n final secureStorageService = StorageService.secure();\n\n final vaahApiService = ApiService(\n interceptors: [\n ApiTokenInterceptor(() => authenticationRepository),\n ],\n )..addSerializerFunctions(VaahResponseSerializers.defaults());\n\n final authenticationService = AuthenticationService.vaah(\n apiService: vaahApiService,\n );\n\n authenticationRepository = AuthenticationRepository(\n storageService: secureStorageService,\n authenticationService: authenticationService,\n );\n await authenticationRepository.init();\n\n _isInitialized = true;\n return _isInitialized;\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"/// DependencyManager: Singleton Class\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"abstract class DependencyManager {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static bool _isInitialized = false;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static late final AuthenticationRepository authenticationRepository;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static Future<bool> init() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (_isInitialized) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return true;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final secureStorageService = StorageService.secure();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..addSerializerFunctions(VaahResponseSerializers.defaults());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" storageService: secureStorageService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationRepository.init();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _isInitialized = true;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _isInitialized;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"code":" return MultiBlocProvider(\n providers: [\n BlocProvider<AuthenticationBloc>(\n create: (context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ...\n ],\n child: child,\n );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return MultiBlocProvider(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" providers: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BlocProvider<AuthenticationBloc>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" create: (context) => AuthenticationBloc(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository: DependencyManager.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..add(const InitializationRequested()),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: child,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"services"},"children":[{"type":"text","value":"Services"}]},{"type":"element","tag":"h3","props":{"id":"key-points-1"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Benefits of Layered Architecture for Services"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Abstract Interfaces\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By defining abstract interfaces for your services, you create a clear contract that all concrete implementations must adhere to. This promotes flexibility as you can easily swap out different implementations without affecting the rest of your application. For example this is so useful when you need to feature flag some features."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Abstract interfaces enable you to easily mock or stub service implementations during unit tests. This allows you to isolate the logic of your application components from the specific behavior of external services, making your tests more robust and easier to maintain"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"this architecture promotes a clean separation of concerns. Services are responsible for specific functionalities, while other components interact with them through well-defined interfaces. This reduces coupling and improves code maintainability."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced Maintainability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By clearly defining service interfaces and their responsibilities, you make it easier to understand and maintain your application's architecture. Changes to service implementations can be made with minimal impact on other parts of the application as long as the interface remains unchanged."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Future-Proofing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The layered architecture provides a solid foundation for future enhancements. You can easily add new service implementations or modify existing ones without significantly impacting the rest of your application."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-1"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This code defines a layered approach for local storage in a Flutter application\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageService"}]},{"type":"text","value":" is an abstract interface defining methods for get, set, and remove data."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageServiceNoOp"}]},{"type":"text","value":" is a no-op implementation for testing purposes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SecureStorageService"}]},{"type":"text","value":" in an implementation using flutter_secure_storage for secure data storage."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"// lib/data/services/local_storage/storage_service.dart\nabstract class StorageService {\n const StorageService();\n\n factory StorageService.noOp() => const StorageServiceNoOp();\n\n factory StorageService.secure() => const SecureStorageService();\n\n Future<T?> get<T>({required String key});\n\n Future<void> set({required String key, required Object value});\n\n Future<void> remove({required String key});\n}\n\n\n// lib/data/services/local_storage/no_op_service.dart\nclass StorageServiceNoOp implements StorageService {\n const StorageServiceNoOp();\n\n @override\n Future<T?> get<T>({required String key}) async => null;\n\n @override\n Future<void> set({required String key, required Object value}) async => null;\n\n @override\n Future<void> remove({required String key}) async => null;\n}\n\n\n// lib/data/services/local_storage/secure_storage_service.dart\nclass SecureStorageService implements StorageService {\n const SecureStorageService({this.storage = const FlutterSecureStorage()});\n\n final FlutterSecureStorage storage;\n\n @override\n Future<T?> get<T>({required String key}) async {\n final match = await storage.read(key: key);\n if (match == null) return null;\n return jsonDecode(match) as T;\n }\n\n @override\n Future<void> set({required String key, required Object value}) async {\n await storage.write(key: key, value: jsonEncode(value));\n }\n\n @override\n Future<void> remove({required String key}) async {\n await storage.delete(key: key);\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/storage_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"abstract class StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const StorageService();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" factory StorageService.noOp() => const StorageServiceNoOp();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" factory StorageService.secure() => const SecureStorageService();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/no_op_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class StorageServiceNoOp implements StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const StorageServiceNoOp();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/secure_storage_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class SecureStorageService implements StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SecureStorageService({this.storage = const FlutterSecureStorage()});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final FlutterSecureStorage storage;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final match = await storage.read(key: key);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (match == null) return null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return jsonDecode(match) as T;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storage.write(key: key, value: jsonEncode(value));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storage.delete(key: key);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage-1"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"code":"final secureStorageService = StorageService.secure();\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final secureStorageService = StorageService.secure();\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"repositories"},"children":[{"type":"text","value":"Repositories"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Centralizing Data Access Logic"}]},{"type":"element","tag":"h3","props":{"id":"key-points-2"},"children":[{"type":"text","value":"Key points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Source of Truth\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories act as a single source of truth for accessing and managing data within your application's domain layer."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"They encapsulate the logic for fetching, storing, and manipulating data, often combining data from multiple services."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories shield the rest of your application (BLoCs, UI components) from the complexities of dealing with different data sources and services directly"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories promote a clean separation of concerns by isolating data access logic from the presentation layer (Blocs, UI). This improves code maintainability and testability."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Data Transformation and Validation\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories can handle data transformation and validation before exposing it to other layers."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-2"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Authentication States\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Defines three states: unknown (initial), authenticated (user logged in), and unauthenticated (user logged out)."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationRepository\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Handles user authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Stores the currently logged-in user."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provides a stream ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"statusStream"}]},{"type":"text","value":") to notify about authentication state changes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Uses "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"storageService"}]},{"type":"text","value":" to store/retrieve user data securely."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Uses "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationService"}]},{"type":"text","value":" to perform signup, signin, and signout operations."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"enum AuthenticationStatus {\n unknown,\n authenticated,\n unauthenticated,\n}\n\nextension AuthenticationStatusExtensions on AuthenticationStatus {\n bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n}\n\nconst String _userKey = 'secure_user';\n\nclass AuthenticationRepository implements DisposableRepository {\n AuthenticationRepository({\n required this.storageService,\n required this.authenticationService,\n });\n\n final StorageService storageService;\n final AuthenticationService authenticationService;\n\n @override\n Future<void> init() async {\n try {\n final decodedUser = await storageService.get<Map<String, dynamic>>(\n key: _userKey,\n );\n if (decodedUser == null) {\n _unsetUser();\n } else {\n final user = User.fromJson(decodedUser);\n _setUser(user);\n }\n } catch (e) {\n _unsetUser();\n }\n }\n\n @override\n Future<void> dispose() async {\n _statusController.close();\n }\n\n final BehaviorSubject<AuthenticationStatus> _statusController =\n BehaviorSubject<AuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n\n Stream<AuthenticationStatus> get statusStream {\n return _statusController.stream;\n }\n\n AuthenticationStatus get statusCurrent {\n return _statusController.value;\n }\n\n User? _user;\n\n User? get user => _user;\n\n void _unsetUser() {\n _user = null;\n _statusController.add(AuthenticationStatus.unauthenticated);\n }\n\n void _setUser(User user) {\n _user = user;\n _statusController.add(AuthenticationStatus.authenticated);\n }\n\n Future<User> signUp({\n required String email,\n required String name,\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signUp(\n email: email,\n name: name,\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future<User> signIn({\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signIn(\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future<void> signOut() async {\n await authenticationService.signOut();\n await storageService.remove(\n key: _userKey,\n );\n\n _unsetUser();\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"enum AuthenticationStatus {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" unknown,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticated,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" unauthenticated,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"extension AuthenticationStatusExtensions on AuthenticationStatus {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"const String _userKey = 'secure_user';\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class AuthenticationRepository implements DisposableRepository {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationRepository({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.storageService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final StorageService storageService;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final AuthenticationService authenticationService;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> init() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final decodedUser = await storageService.get<Map<String, dynamic>>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (decodedUser == null) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = User.fromJson(decodedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(user);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> dispose() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.close();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final BehaviorSubject<AuthenticationStatus> _statusController =\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BehaviorSubject<AuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Stream<AuthenticationStatus> get statusStream {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _statusController.stream;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationStatus get statusCurrent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _statusController.value;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":55},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" User? _user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":56},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":57},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" User? get user => _user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":58},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":59},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _unsetUser() {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":60},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _user = null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":61},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.add(AuthenticationStatus.unauthenticated);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":62},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":63},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":64},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _setUser(User user) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":65},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _user = user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":66},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.add(AuthenticationStatus.authenticated);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":67},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":68},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":69},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<User> signUp({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":70},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":71},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":72},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":73},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":74},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":75},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticatedUser = await authenticationService.signUp(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":76},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" email: email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":77},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" name: name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":78},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":79},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":80},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":81},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.set(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":82},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":83},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" value: authenticatedUser.toJson(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":84},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":85},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":86},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(authenticatedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":87},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return authenticatedUser;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":88},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":89},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":90},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<User> signIn({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":91},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":92},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":93},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":94},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticatedUser = await authenticationService.signIn(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":95},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":96},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":97},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":98},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.set(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":99},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":100},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" value: authenticatedUser.toJson(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":101},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":102},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":103},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(authenticatedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":104},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return authenticatedUser;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":105},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":106},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":107},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> signOut() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":108},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationService.signOut();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":109},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.remove(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":110},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":111},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":112},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":113},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":114},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":115},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"bloc"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"As discussed, only repositories are accessible from dependency manager, no services are exposed, BLoC can depend multiple repositories in order to operate."}]},{"type":"element","tag":"h3","props":{"id":"key-points-3"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"What does it do?\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Manages the state of the application. Handles events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Interacts with Repository(s) to perform operations."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Emits a stream of State objects to notify the UI about changes."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Code Organization\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separates business logic from the UI, making the code more modular and easier to understand."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Allows you to easily test the BLoC's behavior in isolation."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Maintainability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Makes it easier to modify and extend the application's logic without affecting other parts of the codebase."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced User Experience\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provides a more predictable and responsive user interface by managing state changes effectively."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"best-practices"},"children":[{"type":"text","value":"Best Practices"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use descriptive and meaningful names for classes, events, states, and methods."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow consistent naming conventions throughout your project for better readability and maintainability."}]}]},{"type":"element","tag":"h4","props":{"id":"events"},"children":[{"type":"text","value":"Events"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Descriptive action verbs"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use action verbs that clearly describe the intent of the event"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Avoid generic names like "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ButtonClicked"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"DataUpdated"}]}]}]},{"type":"element","tag":"h4","props":{"id":"states"},"children":[{"type":"text","value":"States"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Descriptive adjectives"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use adjectives to describe the current state of the system."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Avoid vague names like StateA, StateB."}]}]},{"type":"element","tag":"h4","props":{"id":"bloc-1"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Class Name\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow the convention of using \"Bloc\" as a suffix for Bloc classes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"name should clearly indicate what the Bloc is responsible for."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Event Handler Method Names\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use the prefix "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_on"}]},{"type":"text","value":" followed by the corresponding event name."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This convention is commonly used in Bloc implementations to clearly identify event handlers."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"on<InitializationRequested>(_onInitializationRequested);"}]}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-3"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_bloc.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Extends Bloc and manages authentication state based on events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The AuthenticationBloc constructor injects an AuthenticationRepository for interacting with authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Event handlers ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_on*Requested"}]},{"type":"text","value":") handle specific events\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onInitializationRequested"}]},{"type":"text","value":": Checks the initial authentication state and emits AuthenticationSuccessful if a user is logged in, otherwise stays in the initial state."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignUpRequested"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignInRequested"}]},{"type":"text","value":": Handle signup and signin requests respectively, interacting with the repository and emitting loading/success/failure states."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignOutRequested"}]},{"type":"text","value":": Handles user signout, interacting with the repository and emitting loading/success/failure states."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"class AuthenticationBloc extends Bloc<AuthenticationEvent, AuthenticationState> {\n AuthenticationBloc({\n required this.authenticationRepository,\n }) : super(const AuthenticationInitial()) {\n on<InitializationRequested>(_onInitializationRequested);\n on<SignUpRequested>(_onSignUpRequested);\n on<SignInRequested>(_onSignInRequested);\n on<SignOutRequested>(_onSignOutRequested);\n }\n\n final AuthenticationRepository authenticationRepository;\n\n void _onInitializationRequested(\n InitializationRequested event,\n Emitter<AuthenticationState> emit,\n ) {\n if (authenticationRepository.statusCurrent.isAuthenticated &&\n authenticationRepository.user != null) {\n emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n }\n }\n\n Future<void> _onSignUpRequested(\n SignUpRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signUp(\n email: event.email,\n name: event.name,\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future<void> _onSignInRequested(\n SignInRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signIn(\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future<void> _onSignOutRequested(\n SignOutRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n await authenticationRepository.signOut();\n emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class AuthenticationBloc extends Bloc<AuthenticationEvent, AuthenticationState> {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationBloc({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) : super(const AuthenticationInitial()) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<InitializationRequested>(_onInitializationRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignUpRequested>(_onSignUpRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignInRequested>(_onSignInRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignOutRequested>(_onSignOutRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final AuthenticationRepository authenticationRepository;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _onInitializationRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" InitializationRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (authenticationRepository.statusCurrent.isAuthenticated &&\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository.user != null) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignUpRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignUpRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = await authenticationRepository.signUp(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" email: event.email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" name: event.name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: event.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: event.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: user));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignInRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignInRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = await authenticationRepository.signIn(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: event.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: event.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: user));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":55},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":56},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":57},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":58},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":59},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":60},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":61},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":62},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":63},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignOutRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":64},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignOutRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":65},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":66},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":67},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":68},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":69},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationRepository.signOut();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":70},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":71},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":72},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":73},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":74},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":75},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":76},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":77},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":78},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_event.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationEvent: Sealed class representing events that trigger state changes"}]}]},{"type":"element","tag":"pre","props":{"code":"@immutable\nsealed class AuthenticationEvent {\n const AuthenticationEvent();\n}\n\nfinal class InitializationRequested extends AuthenticationEvent {\n const InitializationRequested();\n}\n\nfinal class SignUpRequested extends AuthenticationEvent {\n const SignUpRequested({\n required this.email,\n required this.name,\n required this.username,\n required this.password,\n });\n\n final String email;\n final String name;\n final String username;\n final String password;\n}\n\nfinal class SignInRequested extends AuthenticationEvent {\n const SignInRequested({\n required this.username,\n required this.password,\n });\n\n final String username;\n final String password;\n}\n\nfinal class SignOutRequested extends AuthenticationEvent {\n const SignOutRequested();\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"@immutable\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"sealed class AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationEvent();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class InitializationRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const InitializationRequested();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignUpRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignUpRequested({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String email;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String name;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String username;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String password;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignInRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignInRequested({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String username;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String password;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignOutRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignOutRequested();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_state.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationState: Sealed class representing different states of authentication."}]}]},{"type":"element","tag":"pre","props":{"code":"@immutable\nsealed class AuthenticationState {\n const AuthenticationState();\n}\n\nfinal class AuthenticationInitial extends AuthenticationState {\n const AuthenticationInitial();\n}\n\nfinal class AuthenticationLoading extends AuthenticationState {\n const AuthenticationLoading();\n}\n\nfinal class AuthenticationSuccessful extends AuthenticationState {\n const AuthenticationSuccessful({\n required this.user,\n });\n\n final User user;\n}\n\nfinal class AuthenticationChanged extends AuthenticationState {\n const AuthenticationChanged({\n required this.message,\n });\n\n final String message;\n}\n\nfinal class AuthenticationFailed extends AuthenticationState {\n const AuthenticationFailed({\n required this.message,\n });\n\n final String message;\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"@immutable\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"sealed class AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationState();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationInitial extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationInitial();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationLoading extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationLoading();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationSuccessful extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationSuccessful({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.user,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final User user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationChanged extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationChanged({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.message,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String message;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationFailed extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationFailed({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.message,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String message;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage-2"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"On somewhere core level we initialize this bloc because it is used application wide, otherwise for other blocs for one screen only we can initialize for that screen only"}]},{"type":"element","tag":"pre","props":{"code":" MultiBlocProvider(\n providers: [\n BlocProvider<AuthenticationBloc>(\n create: (BuildContext context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ],\n child: ... ,\n )\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" MultiBlocProvider(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" providers: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BlocProvider<AuthenticationBloc>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" create: (BuildContext context) => AuthenticationBloc(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository: DependencyManager.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..add(const InitializationRequested()),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: ... ,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocBuilder\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Primarily used to build UI based on the current state of a Bloc."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocBuilder<AuthenticationBloc, AuthenticationState>(\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocBuilder<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationLoading) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const CircularProgressIndicator();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationSuccessful) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Successful');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Not authenticated');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocListener\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Primarily used to perform side effects in response to state changes within a Bloc."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocListener<AuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n child: // Your UI here,\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocListener<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" listener: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ScaffoldMessenger.of(context).showSnackBar(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SnackBar(content: Text(state.message)),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: // Your UI here,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocConsumer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Combines the functionality of both BlocListener and BlocBuilder."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocConsumer<AuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocConsumer<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" listener: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ScaffoldMessenger.of(context).showSnackBar(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SnackBar(content: Text(state.message)),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationLoading) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const CircularProgressIndicator();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationSuccessful) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Successful');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Not authenticated');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"circular-dependency"},"children":[{"type":"text","value":"Circular Dependency"}]},{"type":"element","tag":"h3","props":{"id":"the-problem"},"children":[{"type":"text","value":"The problem"}]},{"type":"element","tag":"pre","props":{"code":"    final vaahApiService = ApiService(\n      interceptors: [\n        ApiTokenInterceptor(() => authenticationRepository),\n      ],\n    );\n\n    final authenticationService = AuthenticationService.vaah(\n      apiService: vaahApiService,\n    );\n\n    authenticationRepository = AuthenticationRepository(\n      authenticationService: authenticationService,\n    );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"        ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]}]}]},{"type":"element","tag":"ol","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":" needs "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" to retrieve the user's securely locally stored API token."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" depends on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" for authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" relies on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" to make API calls."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" needs "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h3","props":{"id":"the-solution"},"children":[{"type":"text","value":"The solution"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" is created with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":". However, the interceptor uses a lambda function ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"() => authenticationRepository"}]},{"type":"text","value":") to delay retrieving the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" instance."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" is created immediately after "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" using the already created "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Finally, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" is created immediately after "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"One more thing to note here: We need to initialize services and repo in this perticular order (We can not initialize anything between given initializations). We always first initialize "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":", then "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":", and then "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" -- "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Immediately"}]},{"type":"text","value":" one after another just to ensure that no other service that depends on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" makes any request inbetween."}]}]},{"type":"element","tag":"h3","props":{"id":"the-lambda-function"},"children":[{"type":"text","value":"The lambda function"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The lambda function "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"() => authenticationRepository"}]},{"type":"text","value":" is used within the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This function delays the retrieval of the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationRepository"}]},{"type":"text","value":" until it's actually needed."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By the time the interceptor needs the repository during an API call, init would have already completed creating all the services and the repositories. And thus needed repository instance would be available by that time."}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"main-entry-point","depth":2,"text":"Main entry point"},{"id":"dependency-manager","depth":2,"text":"Dependency Manager","children":[{"id":"key-points","depth":3,"text":"Key Points"},{"id":"issues-with-this-approach","depth":3,"text":"Issues with this Approach"},{"id":"example","depth":3,"text":"Example"},{"id":"usage","depth":3,"text":"Usage"}]},{"id":"services","depth":2,"text":"Services","children":[{"id":"key-points-1","depth":3,"text":"Key Points"},{"id":"example-1","depth":3,"text":"Example"},{"id":"usage-1","depth":3,"text":"Usage"}]},{"id":"repositories","depth":2,"text":"Repositories","children":[{"id":"key-points-2","depth":3,"text":"Key points"},{"id":"example-2","depth":3,"text":"Example"}]},{"id":"bloc","depth":2,"text":"BLoC","children":[{"id":"key-points-3","depth":3,"text":"Key Points"},{"id":"best-practices","depth":3,"text":"Best Practices"},{"id":"example-3","depth":3,"text":"Example"},{"id":"usage-2","depth":3,"text":"Usage"}]},{"id":"circular-dependency","depth":2,"text":"Circular Dependency","children":[{"id":"the-problem","depth":3,"text":"The problem"},{"id":"the-solution","depth":3,"text":"The solution"},{"id":"the-lambda-function","depth":3,"text":"The lambda function"}]}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:2.architecture.md","_source":"content","_file":"2.mobile-app/3.poc/2.architecture.md","_stem":"2.mobile-app/3.poc/2.architecture","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/6mHTmHdhxn.1741786524678.json b/api/_content/query/6mHTmHdhxn.1741786524678.json new file mode 100644 index 0000000..a44fd1b --- /dev/null +++ b/api/_content/query/6mHTmHdhxn.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/thought-processses/architecture","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"Architecture","description":"All about project architecture","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"what-will-we-discuss-about"},"children":[{"type":"text","value":"What will we discuss about?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"There are so many architectures but two of them needs some discussion here."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Model-View-Controller"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Clean Architecture"}]}]},{"type":"element","tag":"h2","props":{"id":"what-we-want-to-avoid-intentionally-for-now"},"children":[{"type":"text","value":"What we want to avoid intentionally for now?"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"MVVM\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"MVVM implies databindings between the view and the viewmodel, which means, in practice, the view objects mostly are the ones commanding the viewmodel. MVVM seems to me a simplification of MVC, to show the model \"as is\" behind the scenes. And because we are already talking about MVC, talking MVVM doesn't makes sense."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Also I think, overuse of data binding can lead to tight coupling between the View and ViewModel, making the code less modular and harder to test."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Layered Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Layered Architecture has unidirectional dependencies, with lower layers depending on higher ones. While Clean Architecture Dependencies point inwards towards the core, making the core independent of external factors. So I am gonna exclude Layered Architecture & will focus on Clean Architecture. Also Clean Architecture offers high degree of flexibility, testability, and maintainability on top of what Layered Architecture does."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Hexagonal Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"If one use-case (application-service) is dependent on another, and so on, resulting in a tangled chain of calls where people usually get lost. Usually, this web of dependencies is an anti-pattern that hinders the clarity and simplicity that Hexagonal Architecture aims to provide."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"model-view-controller"},"children":[{"type":"text","value":"Model-View-Controller"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"MVC separates an application into three interconnected parts:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Model\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Represents the data of the application."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"View\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Responsible for the user interface"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Controller\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Handles the logic between the Model and the View."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"./lib\n├── models\n│ ├── data\n│ └── ...\n├── Views\n│ └── ...\n├── Controllers\n│ └── ...\n├── Services\n│ └── ...\n├── Repositories\n│ └── ...\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── models\n│ ├── data\n│ └── ...\n├── Views\n│ └── ...\n├── Controllers\n│ └── ...\n├── Services\n│ └── ...\n├── Repositories\n│ └── ...\n└── routes\n"}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Simplicity"}]},{"type":"text","value":": Easier to implement for small applications."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Quick to start"}]},{"type":"text","value":": Suitable for smaller projects or MVP applications."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Familiarity"}]},{"type":"text","value":": A widely recognized pattern, making it easier to onboard new developers."}]}]},{"type":"element","tag":"h3","props":{"id":"cons"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Tight Coupling"}]},{"type":"text","value":": The controller is responsible for both business logic and UI updates, leading to a tight coupling between the components."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Scalability Issues"}]},{"type":"text","value":": As the application grows, managing complexity can become difficult because the logic might get mixed in the controller."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Limited Separation of Concerns"}]},{"type":"text","value":": This pattern often doesn't separate responsibilities as clearly, leading to potential maintenance challenges in large apps."}]}]},{"type":"element","tag":"h2","props":{"id":"clean-architecture"},"children":[{"type":"text","value":"Clean Architecture"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Data Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Models"}]},{"type":"text","value":": Define the data structures for your application, keeping them simple and focused on the data they represent."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Services"}]},{"type":"text","value":": Implement services for network requests, local storage, and other data operations. Use appropriate libraries to handle these tasks."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Domain Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Interfaces"}]},{"type":"text","value":": Define clear interfaces for repositories, specifying the methods to interact with data."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Repositories"}]},{"type":"text","value":": Implement these interfaces, using the data layer to fetch and store data. Keep the repository logic independent of the data source (e.g., network, database)."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Presentation Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Pages"}]},{"type":"text","value":": Build the UI screens, using widgets to compose the layout and handle user interactions."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Widgets"}]},{"type":"text","value":": Create reusable UI components to improve code organization and maintainability."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"}]}]},{"type":"element","tag":"h3","props":{"id":"pros-1"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Separation of Concerns"}]},{"type":"text","value":": Clean Architecture separates concerns into distinct layers, making it easier to maintain and scale as the app grows."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Flexibility"}]},{"type":"text","value":": The architecture can easily accommodate changes in UI frameworks, data sources, or external dependencies without affecting the core business logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Scalability"}]},{"type":"text","value":": Clean Architecture is designed to handle complexity and larger applications efficiently."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Testability"}]},{"type":"text","value":": Since the business logic and UI are decoupled, it’s easier to test different parts of the app independently."}]}]},{"type":"element","tag":"h3","props":{"id":"cons-1"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Complexity"}]},{"type":"text","value":": The setup is more complex compared to MVC, and might be overkill for simple apps."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Learning Curve"}]},{"type":"text","value":": For beginners or developers new to the architecture, there might be an initial learning curve to understand the separation of layers and their interactions."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Verbose Code"}]},{"type":"text","value":": Because of the multiple layers and classes involved, it can lead to more boilerplate code."}]}]},{"type":"element","tag":"h2","props":{"id":"decision-making"},"children":[{"type":"text","value":"Decision Making"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For production-grade apps, Clean Architecture is often preferred. Where rapid development is key, and you can afford some level of coupling between logic and UI - you should use MVC. Clean Architecture is better suited for larger, more complex apps that need to scale, be maintainable over time, and where testability and decoupling of concerns are priorities."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We have decided to go ahead with Clean Architecture."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"what-will-we-discuss-about","depth":2,"text":"What will we discuss about?"},{"id":"what-we-want-to-avoid-intentionally-for-now","depth":2,"text":"What we want to avoid intentionally for now?"},{"id":"model-view-controller","depth":2,"text":"Model-View-Controller","children":[{"id":"pros","depth":3,"text":"Pros"},{"id":"cons","depth":3,"text":"Cons"}]},{"id":"clean-architecture","depth":2,"text":"Clean Architecture","children":[{"id":"pros-1","depth":3,"text":"Pros"},{"id":"cons-1","depth":3,"text":"Cons"}]},{"id":"decision-making","depth":2,"text":"Decision Making"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:2.architecture.md","_source":"content","_file":"2.mobile-app/2.thought-processses/2.architecture.md","_stem":"2.mobile-app/2.thought-processses/2.architecture","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/7kR4h780ud.1741786524678.json b/api/_content/query/7kR4h780ud.1741786524678.json new file mode 100644 index 0000000..2c6ca62 --- /dev/null +++ b/api/_content/query/7kR4h780ud.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/getting-started","_dir":{"_path":"/getting-started/_dir","title":"Getting Started"},"_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Welcome to the VaahStore documentation","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"VaahStore is a cutting-edge, open-source headless e-commerce platform designed to revolutionize the online shopping experience. VaahStore offers a fast, efficient, and feature-rich solution for businesses of all sizes."}]},{"type":"element","tag":"h2","props":{"id":"key-features"},"children":[{"type":"text","value":"Key Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Headless Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Unrestricted flexibility to build custom storefronts and integrate with any device or platform."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Open-Source\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Empowering developers to customize and extend the platform to meet specific needs."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Fast and Efficient\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Optimized performance for seamless user experiences."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Easy to Use\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Intuitive interface and developer-friendly tools for rapid development."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Comprehensive Features\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built-in functionalities like product catalogs, shopping carts, checkout processes, and more."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"why-choose-vaahstore"},"children":[{"type":"text","value":"Why Choose VaahStore?"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Unleash Your Creativity\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"stunning, personalized storefronts without compromise"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Skyrocket Your Sales\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Deliver "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"blazing-fast"}]},{"type":"text","value":" performance and seamless user experiences."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Future-Proof Your Business\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built on the latest technologies, VaahStore ensures you "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"stay ahead of the curve"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Take Control of Your E-commerce Destiny\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"With complete "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"customization"}]},{"type":"text","value":" and "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"extensibility"}]},{"type":"text","value":", you're in the driver's seat."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Join a Thriving Community\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Benefit from a global community of developers, "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"sharing knowledge and innovation"}]},{"type":"text","value":"."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"getting-started"},"children":[{"type":"text","value":"Getting Started"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To begin your journey with VaahStore, refer to our comprehensive documentation and community resources. Our dedicated team is committed to providing support and guidance throughout the development process."}]},{"type":"element","tag":"h2","props":{"id":"join-the-vaahstore-community"},"children":[{"type":"text","value":"Join the VaahStore Community"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Connect with fellow developers, share knowledge, and contribute to the future of e-commerce. Join our GitHub community to stay updated on the latest developments and best practices."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"key-features","depth":2,"text":"Key Features"},{"id":"why-choose-vaahstore","depth":2,"text":"Why Choose VaahStore?"},{"id":"getting-started","depth":2,"text":"Getting Started"},{"id":"join-the-vaahstore-community","depth":2,"text":"Join the VaahStore Community"}]}},"_type":"markdown","_id":"content:1.getting-started:1.index.md","_source":"content","_file":"1.getting-started/1.index.md","_stem":"1.getting-started/1.index","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/9pQ31EmuOl.1741786524678.json b/api/_content/query/9pQ31EmuOl.1741786524678.json new file mode 100644 index 0000000..522d0be --- /dev/null +++ b/api/_content/query/9pQ31EmuOl.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/thought-processses","_dir":{"_path":"/mobile-app/thought-processses/_dir","title":"Thought Processes"},"_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Thought process behind reaching to the decisions","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"topics-this-section-will-cover"},"children":[{"type":"text","value":"Topics this section will cover"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Project Architecture"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Decoupling Dependencies"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"State Management Patterns"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design Patterns"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Performance Optimization"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Security Considerations"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Code Quality and Maintainability"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Testing Strategies"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"topics-this-section-will-cover","depth":2,"text":"Topics this section will cover"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:1.index.md","_source":"content","_file":"2.mobile-app/2.thought-processses/1.index.md","_stem":"2.mobile-app/2.thought-processses/1.index","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/CfH7YgS504.1741786524678.json b/api/_content/query/CfH7YgS504.1741786524678.json new file mode 100644 index 0000000..c96c852 --- /dev/null +++ b/api/_content/query/CfH7YgS504.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/onboarding","title":"Introduction","description":"Starting with Mobile App Onboarding"},{"_path":"/mobile-app/thought-processses","title":"Introduction","description":"Thought process behind reaching to the decisions"}] \ No newline at end of file diff --git a/api/_content/query/FmqgcTc2fa.1741786524678.json b/api/_content/query/FmqgcTc2fa.1741786524678.json new file mode 100644 index 0000000..63f59d2 --- /dev/null +++ b/api/_content/query/FmqgcTc2fa.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/getting-started/code-of-conduct","_dir":"getting-started","_draft":false,"_partial":false,"_locale":"","title":"Code of Conduct","description":"Let's keep it light and friendly, but serious about respect!","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We want our community to be a fun and welcoming place for everyone. Here are a few guidelines to help us maintain that:"}]},{"type":"element","tag":"h2","props":{"id":"play-nice"},"children":[{"type":"text","value":"Play Nice"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"No cyberbullying or trolling."}]},{"type":"text","value":" (We're all friends here, even if we disagree.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Keep it clean."}]},{"type":"text","value":" (No offensive language or inappropriate content, please.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Respect everyone's opinions."}]},{"type":"text","value":" (Even if they're really wrong.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Be patient and understanding."}]},{"type":"text","value":" (We're all human, and sometimes we make mistakes.)"}]}]},{"type":"element","tag":"h2","props":{"id":"unacceptable-behavior"},"children":[{"type":"text","value":"Unacceptable Behavior"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"No bullying or hate speech."}]},{"type":"text","value":" (Seriously, it's not cool.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Don't spam or troll."}]},{"type":"text","value":" (It's annoying, and nobody likes an annoying bot.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Respect people's privacy."}]},{"type":"text","value":" (Keep your snooping to a minimum.)"}]}]},{"type":"element","tag":"h2","props":{"id":"if-somethings-off"},"children":[{"type":"text","value":"If Something's Off"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you see something that doesn't feel right, please let us know. We'll investigate and fix or take appropriate action."}]},{"type":"element","tag":"h2","props":{"id":"enforcement"},"children":[{"type":"text","value":"Enforcement"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We reserve the right to take action against individuals who violate this code of conduct, including warnings, temporary bans, or permanent bans."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By participating in our community, you agree to abide by this code of conduct."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"play-nice","depth":2,"text":"Play Nice"},{"id":"unacceptable-behavior","depth":2,"text":"Unacceptable Behavior"},{"id":"if-somethings-off","depth":2,"text":"If Something's Off"},{"id":"enforcement","depth":2,"text":"Enforcement"}]}},"_type":"markdown","_id":"content:1.getting-started:2.code-of-conduct.md","_source":"content","_file":"1.getting-started/2.code-of-conduct.md","_stem":"1.getting-started/2.code-of-conduct","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/IWtoBXHc0x.1741786524678.json b/api/_content/query/IWtoBXHc0x.1741786524678.json new file mode 100644 index 0000000..4bf29e9 --- /dev/null +++ b/api/_content/query/IWtoBXHc0x.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/onboarding/tech-stack","title":"Tech Stack","description":"Technologies powering our platform."},{"_path":"/mobile-app/thought-processses/architecture","title":"Architecture","description":"All about project architecture"}] \ No newline at end of file diff --git a/api/_content/query/OQUs8DndZF.1741786524678.json b/api/_content/query/OQUs8DndZF.1741786524678.json new file mode 100644 index 0000000..e7c7ba1 --- /dev/null +++ b/api/_content/query/OQUs8DndZF.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/poc","_dir":{"_path":"/mobile-app/poc/_dir","title":"Proof of Concepts"},"_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Proof of Concepts","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"topics-this-section-will-cover"},"children":[{"type":"text","value":"Topics this section will cover"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Architecture PoC"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"topics-this-section-will-cover","depth":2,"text":"Topics this section will cover"}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:1.index.md","_source":"content","_file":"2.mobile-app/3.poc/1.index.md","_stem":"2.mobile-app/3.poc/1.index","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/TYaagpPuhP.1741786524678.json b/api/_content/query/TYaagpPuhP.1741786524678.json new file mode 100644 index 0000000..6ffb596 --- /dev/null +++ b/api/_content/query/TYaagpPuhP.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/thought-processses/decoupling","title":"Decoupling Dependencies","description":null},{"_path":"/mobile-app/poc","title":"Introduction","description":"Proof of Concepts"}] \ No newline at end of file diff --git a/api/_content/query/YHk2DdnREp.1741786524678.json b/api/_content/query/YHk2DdnREp.1741786524678.json new file mode 100644 index 0000000..bbcd4fd --- /dev/null +++ b/api/_content/query/YHk2DdnREp.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/thought-processses","title":"Introduction","description":"Thought process behind reaching to the decisions"},{"_path":"/mobile-app/thought-processses/decoupling","title":"Decoupling Dependencies","description":null}] \ No newline at end of file diff --git a/api/_content/query/Zu65BkhoPI.1741786524678.json b/api/_content/query/Zu65BkhoPI.1741786524678.json new file mode 100644 index 0000000..41bac64 --- /dev/null +++ b/api/_content/query/Zu65BkhoPI.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/poc/code-generation","title":"Automatic code generation","description":null},null] \ No newline at end of file diff --git a/api/_content/query/cZ64WFO0mI.1741786524678.json b/api/_content/query/cZ64WFO0mI.1741786524678.json new file mode 100644 index 0000000..1e992fc --- /dev/null +++ b/api/_content/query/cZ64WFO0mI.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/thought-processses/architecture","title":"Architecture","description":"All about project architecture"},{"_path":"/mobile-app/thought-processses/state-management","title":"State Management","description":"Managing State in the Project"}] \ No newline at end of file diff --git a/api/_content/query/dVZ5Xg0G6w.1741786524678.json b/api/_content/query/dVZ5Xg0G6w.1741786524678.json new file mode 100644 index 0000000..469cc35 --- /dev/null +++ b/api/_content/query/dVZ5Xg0G6w.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/web/guide","_dir":"web","_draft":false,"_partial":false,"_locale":"","title":"Guide","description":"","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"brief-overview-development-guide"},"children":[{"type":"text","value":"Brief overview & Development guide"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore is a platform-agnostic ecommerce frontend solution that allows seamless integration with various ecommerce backends! It provides tools for building customizable, high-performance online storefronts."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This guide will provide you with an overview of the project structure, tools and best practices to help you get started quickly."}]},{"type":"element","tag":"h2","props":{"id":"project-structure"},"children":[{"type":"text","value":"Project Structure"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This project follows a modular and scalable architecture, by decoupling the composable frontend from the server middleware allowing for easy collaboration among multiple teams and ensuring consistent development practices across the codebase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The architecture includes the following apps:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"server"}]},{"type":"text","value":" - NuxtStore server middleware powered by "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://fastify.dev/","rel":["nofollow"]},"children":[{"type":"text","value":"Fastify"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"web"}]},{"type":"text","value":" - A typescript based web application powered by "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vuejs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Vue"}]}]}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note"}]},{"type":"text","value":": These two standalone modules are capable of being integrated with any backend service with consistent APIs without extra configuration to setup."}]}]},{"type":"element","tag":"h4","props":{"id":"web-application"},"children":[{"type":"text","value":"Web application"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Web app follows a typical Nuxt.js directory "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/nuxt","rel":["nofollow"]},"children":[{"type":"text","value":"structure"}]},{"type":"text","value":" with a few tweaks:"}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\napps/\n └── root/\n ├── ...\n ├── assets/ # Static assets\n ├── components/ \n │ ├── atoms/ # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n │ ├── molecules/ # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n │ └── organisms/ # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n ├── composables/ # Custom hooks composing reactive logic\n ├── constants/ \n │ ├── api.ts # API-related constants (HTTP methods)\n │ └── ui.ts # UI-related constants (colors, breakpoints)\n ├── data/ # Static data or JSON files\n ├── layouts/ # Nuxt Layouts\n ├── middleware/ # Client side route middlewares \n │ ├── auth.ts \n │ └── ...\n ├── pages/ # Pages\n │ ├── index.vue # App home page component\n │ └── ...\n ├── plugins/ # App plugins run on both client and server\n ├── public/ # Public assets\n ├── server/ # In-app backend server\n ├── shared/\n │ ├── types/ # Type definitions\n │ └── utils/ # Non-reactive helper functions\n ├── stores/ # Pinia stores for state management\n │ ├── auth.store.ts \n │ └── cart.store.ts \n ├── tests/ # Component and feature unit tests\n ├── eslint.config.mjs # Linter rules\n ├── features.json # Feature flags\n ├── app.vue # Application entry point\n ├── nuxt.config.ts # Nuxt.js configuration\n ├── package.json # Package entry point\n ├── tailwind.config.ts # TailwindCSS configuration\n ├── tsconfig.json # TypeScript configuration\n ├── vitest.config.ts # Vitest configuration\n └── ...\n\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"apps/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" root/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" assets/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Static assets\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" components/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" atoms/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" molecules/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" organisms/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" composables/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Custom hooks composing reactive logic\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" constants/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" api.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # API-related constants (HTTP methods)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ui.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # UI-related constants (colors, breakpoints)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" data/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Static data or JSON files\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" layouts/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Nuxt Layouts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" middleware/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Client side route middlewares \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" auth.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" pages/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Pages\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" index.vue"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # App home page component\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" plugins/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # App plugins run on both client and server\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" public/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Public assets\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" server/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # In-app backend server\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" shared/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Type definitions\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" utils/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Non-reactive helper functions\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" stores/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Pinia stores for state management\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" auth.store.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart.store.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tests/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Component and feature unit tests\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" eslint.config.mjs"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Linter rules\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" features.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Feature flags\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" app.vue"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Application entry point\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxt.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Nuxt.js configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" package.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Package entry point\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tailwind.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # TailwindCSS configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tsconfig.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # TypeScript configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" vitest.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Vitest configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"List of essential directories:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" NuxtStore UI components, like "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ProductCard"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Review"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"stores"}]},{"type":"text","value":" Pinia store containing global state, getters and mutators"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"composables"}]},{"type":"text","value":" Contains reusable composition functions, e.g. data fetchers and stateful helpers"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"shared"}]},{"type":"text","value":" Contains types and utilities "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/nuxt/releases/tag/v3.14.0","rel":["nofollow"]},"children":[{"type":"text","value":"shared"}]},{"type":"text","value":" across client and server e.g "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"product.type.ts"}]},{"type":"text","value":". Auto-import support will follow in next major release."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"tests"}]},{"type":"text","value":" Contains mocks for components, composables and store actions"}]}]},{"type":"element","tag":"h2","props":{"id":"project-guide"},"children":[{"type":"text","value":"Project Guide"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This project follows a few conventions to help with organizing your code:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each function is located in a dedicated module and exported from the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"index.ts"}]},{"type":"text","value":" file."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"In this nuxt application, avoid importing auto-imported APIs (ref, onMounted etc.) or compiler macros (defineProps, defineEmits etc.) and PrimeVue components (Button, InputText, Dialog, Carousel etc.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Names are short, descriptive and must follow our consistent naming convention ("},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/code","rel":["nofollow"]},"children":[{"type":"text","value":"guide"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow this "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/nuxt","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt guide"}]},{"type":"text","value":" to avoid common mistakes and comply with industry standard practices"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Functions (including composables and utils) are exported using explicit named exports instead of anonymous exports"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Actions or functions are defined following the trivial function definitions ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"func() { }"}]},{"type":"text","value":") "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"instead of arrow functions"}]},{"type":"text","value":" ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"const func = () => { }"}]},{"type":"text","value":") to create visible distinction between constants and methods"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This project follows "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/git","rel":["nofollow"]},"children":[{"type":"text","value":"gitflow"}]},{"type":"text","value":" as the branching strategy"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Feature branch name must follow a simple convention such as\n"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"feature/<purpose>-<page_name>-<subject>"}]},{"type":"text","value":". Subject can be component or specific feature\n(e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ui-cart-summary"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ui-layout-footer"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"flow-checkout-payment"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"action-cart-quantity"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html","rel":["nofollow"]},"children":[{"type":"text","value":"JS doc comments"}]},{"type":"text","value":" are added at necessary places to define the structure of a complex entity or explain the construct of a method"}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" In order to add code comments, we prefix the action with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@"}]},{"type":"text","value":" for contributors reference such as "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@todo:"}]},{"type":"text","value":" or "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@debug:"}]}]}]},{"type":"element","tag":"h3","props":{"id":"components"},"children":[{"type":"text","value":"Components"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore UI follows "},{"type":"element","tag":"a","props":{"href":"https://atomicdesign.bradfrost.com/chapter-2/","rel":["nofollow"]},"children":[{"type":"text","value":"atomic design principle"}]},{"type":"text","value":" to develop components and it leverages "},{"type":"element","tag":"a","props":{"href":"https://primevue.org/","rel":["nofollow"]},"children":[{"type":"text","value":"PrimeVue"}]},{"type":"text","value":" as the building blocks of storefront components. All components are auto-imported by their name (no path-prefix) and are located inside subfolders in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Introduction to project components:"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Consists of representational components that are designed to fulfill project requirements"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Components should be placed in dedicated folders inside components directory"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Root of the component folder has "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"atoms"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"molecules"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"organisms"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each component name must be prefixed with "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"\"Ns\""}]},{"type":"text","value":" (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"NsProductCard"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"TypeScript types are located inside the SFC for ease of access and coupling"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Tests for components are located in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/tests/components"}]},{"type":"text","value":" folder (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"NsUserAddress.spec.ts"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Folders inside /atoms, /molecules and /organisms must follow their purpose"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Expected directory structure:"}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"components/\n └── atoms/\n └── cart/\n └── NsAddToCartButton.vue\n └── NsCartIcon.vue\n └── ui/\n └── NsHeader.vue\n └── NsFooter.vue\n └── ...\n └── molecules/\n └── form/\n └── NsEmailInput.vue\n └── NsPasswordInput.vue\n └── ...\n └── organisms/\n └── address/\n └── NsAddressCard.vue\n └── cart/\n └── NsCartOverview.vue\n └── forms/\n └── NsSignUpForm.vue\n └── NsAddressForm.vue\n └── ...\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"components/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" atoms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddToCartButton.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsCartIcon.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ui/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsHeader.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsFooter.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" molecules/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" form/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsEmailInput.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsPasswordInput.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" organisms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" address/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddressCard.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsCartOverview.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" forms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsSignUpForm.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddressForm.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For more information about available NuxtStore components for Vue (Nuxt), check out "},{"type":"element","tag":"a","props":{"href":""},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":"."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Convention:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Vue (Nuxt) components should follow "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"PascalCase"}]},{"type":"text","value":" pattern ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"CategoryFilters"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Heading"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The types for component's props should be named "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"{Component}Props"}]},{"type":"text","value":" and exist in the same SFC as the component. For example, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"GalleryProps"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"HeadingProps"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Line of code in a single file component must not exceed 200 (formatted)"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Prop Declaration:"}]},{"type":"text","value":" In vue, there are multiple ways to define component props especially with typescript. ["},{"type":"element","tag":"a","props":{"href":"https://vuejs.org/guide/typescript/composition-api.html#typing-component-props","rel":["nofollow"]},"children":[{"type":"text","value":"checkout official docs"}]},{"type":"text","value":"] To ensure consistency and still allow customisability, we have adopted the following pattern."},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Multiword props are defined in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"camelCase"}]},{"type":"text","value":" and passed in template as "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"kebab-case"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export type CartActionProps = {\n icon?: string,\n label?: string,\n ...\n};\n\nconst props = withDefaults(defineProps<CartActionProps>(), {\n icon: \"pi pi-cart\",\n label: \"Add to cart\"\n});\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" CartActionProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" icon"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" label"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"};\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" props "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" withDefaults"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"defineProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"CartActionProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" icon"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pi pi-cart"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" label"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"Add to cart"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":";\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"state-management"},"children":[{"type":"text","value":"State Management"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We are using "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/ssr/nuxt.html","rel":["nofollow"]},"children":[{"type":"text","value":"Pinia state management"}]},{"type":"text","value":" to lock the data responsibility along with the composition functions (composables)."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Pinia stores are defined in the style of "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/core-concepts/#Setup-Stores","rel":["nofollow"]},"children":[{"type":"text","value":"Setup stores"}]},{"type":"text","value":", keeping performance and modern standards in view"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each store file must end with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".store.ts"}]},{"type":"text","value":" extension"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Store methods are as modular and reusable as possible and do not perform side effects. If required, new action is created in order to handle "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"post{Action}"}]},{"type":"text","value":" (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"addToCart"}]},{"type":"text","value":" , "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"postAddToCart"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/state-management","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useState"}]}]},{"type":"text","value":" is used in very narrow context where creating global store for shared state doesn't make sense"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Sequentially a store structure should have state >> getters >> actions for readability"}]}]},{"type":"element","tag":"h3","props":{"id":"composables"},"children":[{"type":"text","value":"Composables"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Composables are useful when stateful logic has to be reused across components - e.g. controlling component state or leverage lifecycle hooks or accessing DOM api.\nProject composables are located on top level inside the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"composables/"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Convention:"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each composable should be prefixed with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"use"}]},{"type":"text","value":" keyword ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useCartStatus"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Composables should follow "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"camelCase"}]},{"type":"text","value":" pattern ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useProductReviews"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Composables follow single responsibility principle. Avoid calling side effects inside composables"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This project inherits most of the composables from "},{"type":"element","tag":"a","props":{"href":"https://vueuse.org/guide/best-practice.html","rel":["nofollow"]},"children":[{"type":"text","value":"vueuse"}]},{"type":"text","value":" library. Always search for an already available "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"vueuse"}]},{"type":"text","value":" composable before writing on own for common tasks or DOM manipulation."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vuejs.org/guide/reusability/composables.html#conventions-and-best-practices","rel":["nofollow"]},"children":[{"type":"text","value":"Composables"}]},{"type":"text","value":" should only be called in synchronous environment and on top level. Remember to clean attached event handlers or timeouts if defined inside a composable using vue's unmount hooks"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built-in Nuxt composables must be called in the right context to avoid critical errors such as "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/concepts/auto-imports#vue-and-nuxt-composables","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt instance unavailable"}]}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" State connected to the certain composable is read-only and reactive. They are modified by the internal modifiers (setters)"}]}]},{"type":"element","tag":"h3","props":{"id":"utils"},"children":[{"type":"text","value":"Utils"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Main purpose of utils is to encapsulate non-reactive helper method logic and draw a semantic boundary between reactive composables and other auto-imported utility functions. Utils are contained inside the Shared/ folder. This project follows some simple conventions for utils:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Project utils end with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".utils.ts"}]},{"type":"text","value":" extension (e.g format.utils.ts, wishlist.utils.ts)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"utils/index.utils.ts"}]},{"type":"text","value":" contains all the shared functions across all contexts/features (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"isEqual<T>(a,b)"}]},{"type":"text","value":" compares two entities for equality)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Named exports are preferred over default export (e.g export function cleanUserInput(){ })"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"One utility method can have multiple exports, allowing relevant functions to be grouped together"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Utility functions are synchronous and do not communicate with any reactive source (store/composables)"}]}]},{"type":"element","tag":"h3","props":{"id":"localization"},"children":[{"type":"text","value":"Localization"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore ships with a basic setup for i18n localization powered by the "},{"type":"element","tag":"a","props":{"href":"https://i18n.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt-i18n"}]},{"type":"text","value":" library. Project locale translations are stored in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"locale/[namespace].json"}]},{"type":"text","value":" files. Translations are grouped by "},{"type":"element","tag":"em","props":{},"children":[{"type":"text","value":"features"}]},{"type":"text","value":", and imported only where required to minimize bundle size.\nRefer to the "},{"type":"element","tag":"a","props":{"href":"https://i18n.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt-i18n"}]},{"type":"text","value":" documentation for translating content with SSR support."}]},{"type":"element","tag":"h3","props":{"id":"testing"},"children":[{"type":"text","value":"Testing"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The project provides a basic setup for testing TypeScript code with "},{"type":"element","tag":"a","props":{"href":"https://vitest.dev/","rel":["nofollow"]},"children":[{"type":"text","value":"Vitest"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://test-utils.vuejs.org/guide/","rel":["nofollow"]},"children":[{"type":"text","value":"Vue Test Utils"}]},{"type":"text","value":" for testing Vue (Nuxt) components and "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/cookbook/testing.html#Mocking-the-returned-value-of-an-action","rel":["nofollow"]},"children":[{"type":"text","value":"pinia stores"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Testing configuration files: (runs on nuxt environment and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"happy-dom"}]},{"type":"text","value":")"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"vitest.config.ts"}]},{"type":"text","value":" - Test runner config file"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Testing commands:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"npm run unittest"}]},{"type":"text","value":" - Run all the test scripts in the project (in watch mode by default)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"npm run unittest <Component>"}]},{"type":"text","value":" - Run specific component/feature mocks"}]}]},{"type":"element","tag":"h3","props":{"id":"conventions-enforced-by-automated-tooling"},"children":[{"type":"text","value":"Conventions enforced by automated tooling"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To help you code with best practices in mind, this boilerplate comes with some automated tooling."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"All test descriptions follow naming convention "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"test('should <component>... ')"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Automatic code linting is managed by "},{"type":"element","tag":"a","props":{"href":"https://eslint.nuxt.com/packages/config","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-eslint-module"}]}]}]},{"type":"element","tag":"h3","props":{"id":"cache-control"},"children":[{"type":"text","value":"Cache control"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"As the initial Nuxt setup is not caching images generated by "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NuxtImg"}]},{"type":"text","value":", the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":" in this repository has been extended to cache those images as well (by setting proper headers):"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"routeRules: {\n '/_ipx/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/icons/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/favicon.ico': { headers: { 'cache-control': `putypescriptblic, max-age=31536000, immutable` } },\n},\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"routeRules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/_ipx/**"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/icons/**"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/favicon.ico"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"putypescriptblic, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can read about more possible rules in the "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/concepts/rendering#hybrid-rendering","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt documentation"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h4","props":{"id":"more-about-performance"},"children":[{"type":"text","value":"More about performance"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Additional performance good practices and vue project guide can be found "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/vue-and-nuxt-performance-improvement","rel":["nofollow"]},"children":[{"type":"text","value":"HERE"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h3","props":{"id":"recommended-ide-setup"},"children":[{"type":"text","value":"Recommended IDE setup"}]},{"type":"element","tag":"ol","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Visual Studio Code (with prettier_extension @"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"v9.14.0"}]},{"type":"text","value":" exact and the latest version of microsoft eslint_extension)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"webstorm (for developers comfortable in jetbrains IDE like phpstorm with no extra configuration -\n"},{"type":"element","tag":"a","props":{"href":"https://www.jetbrains.com/help/webstorm/eslint.html#ws_js_eslint_activate","rel":["nofollow"]},"children":[{"type":"text","value":"ws_eslint_customisation_guide"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"brief-overview-development-guide","depth":2,"text":"Brief overview & Development guide"},{"id":"project-structure","depth":2,"text":"Project Structure"},{"id":"project-guide","depth":2,"text":"Project Guide","children":[{"id":"components","depth":3,"text":"Components"},{"id":"state-management","depth":3,"text":"State Management"},{"id":"composables","depth":3,"text":"Composables"},{"id":"utils","depth":3,"text":"Utils"},{"id":"localization","depth":3,"text":"Localization"},{"id":"testing","depth":3,"text":"Testing"},{"id":"conventions-enforced-by-automated-tooling","depth":3,"text":"Conventions enforced by automated tooling"},{"id":"cache-control","depth":3,"text":"Cache control"},{"id":"recommended-ide-setup","depth":3,"text":"Recommended IDE setup"}]}]}},"_type":"markdown","_id":"content:3.web:guide.md","_source":"content","_file":"3.web/guide.md","_stem":"3.web/guide","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/huMbQzqYzx.1741786524678.json b/api/_content/query/huMbQzqYzx.1741786524678.json new file mode 100644 index 0000000..d00ae7a --- /dev/null +++ b/api/_content/query/huMbQzqYzx.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/getting-started/code-of-conduct","title":"Code of Conduct","description":"Let's keep it light and friendly, but serious about respect!"},{"_path":"/mobile-app/onboarding/tech-stack","title":"Tech Stack","description":"Technologies powering our platform."}] \ No newline at end of file diff --git a/api/_content/query/itDiMBV3ua.1741786524678.json b/api/_content/query/itDiMBV3ua.1741786524678.json new file mode 100644 index 0000000..1fd966c --- /dev/null +++ b/api/_content/query/itDiMBV3ua.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/poc/code-generation","_dir":"poc","_draft":false,"_partial":false,"_locale":"","title":"Automatic code generation","description":null,"body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"todo"},"children":[{"type":"text","value":"TODO:"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"todo","depth":2,"text":"TODO:"}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:3.code-generation.md","_source":"content","_file":"2.mobile-app/3.poc/3.code-generation.md","_stem":"2.mobile-app/3.poc/3.code-generation","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/m6NO8NTjMM.1741786524678.json b/api/_content/query/m6NO8NTjMM.1741786524678.json new file mode 100644 index 0000000..35f054b --- /dev/null +++ b/api/_content/query/m6NO8NTjMM.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/thought-processses/state-management","title":"State Management","description":"Managing State in the Project"},{"_path":"/mobile-app/poc/architecture","title":"Architecture PoC","description":null}] \ No newline at end of file diff --git a/api/_content/query/rlHGlkm8F2.1741786524678.json b/api/_content/query/rlHGlkm8F2.1741786524678.json new file mode 100644 index 0000000..bac5eb4 --- /dev/null +++ b/api/_content/query/rlHGlkm8F2.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/poc/architecture","title":"Architecture PoC","description":null},{"_path":"/web/guide","title":"Guide","description":""}] \ No newline at end of file diff --git a/api/_content/query/s3NlzpcsBs.1741786524678.json b/api/_content/query/s3NlzpcsBs.1741786524678.json new file mode 100644 index 0000000..f654ff8 --- /dev/null +++ b/api/_content/query/s3NlzpcsBs.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/mobile-app/poc","title":"Introduction","description":"Proof of Concepts"},{"_path":"/mobile-app/poc/code-generation","title":"Automatic code generation","description":null}] \ No newline at end of file diff --git a/api/_content/query/sUO7e0lGz4.1741786524678.json b/api/_content/query/sUO7e0lGz4.1741786524678.json new file mode 100644 index 0000000..099c25e --- /dev/null +++ b/api/_content/query/sUO7e0lGz4.1741786524678.json @@ -0,0 +1 @@ +[{"_path":"/getting-started","title":"Introduction","description":"Welcome to the VaahStore documentation"},{"_path":"/mobile-app/onboarding","title":"Introduction","description":"Starting with Mobile App Onboarding"}] \ No newline at end of file diff --git a/api/_content/query/tK8pgo6jGW.1741786524678.json b/api/_content/query/tK8pgo6jGW.1741786524678.json new file mode 100644 index 0000000..787edb7 --- /dev/null +++ b/api/_content/query/tK8pgo6jGW.1741786524678.json @@ -0,0 +1 @@ +[null,{"_path":"/getting-started/code-of-conduct","title":"Code of Conduct","description":"Let's keep it light and friendly, but serious about respect!"}] \ No newline at end of file diff --git a/api/_content/query/vOazhcThpv.1741786524678.json b/api/_content/query/vOazhcThpv.1741786524678.json new file mode 100644 index 0000000..f2ce434 --- /dev/null +++ b/api/_content/query/vOazhcThpv.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/thought-processses/decoupling","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"Decoupling Dependencies","description":null,"body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Tightly coupled dependencies between components can lead to several issues like Increased complexity, Reduced testability, Reduced maintainability, etc."}]},{"type":"element","tag":"h2","props":{"id":"proposed-solutions"},"children":[{"type":"text","value":"Proposed Solutions"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To address these challenges, we propose two effective strategies: Singleton And Context-Aware Dependency Retrieval"}]},{"type":"element","tag":"h2","props":{"id":"singleton"},"children":[{"type":"text","value":"Singleton"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"In this approach, a singleton acts as a centralized container for all repository and service instances."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create a Singleton\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design a singleton class to hold all repository and service instances."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Initialize the singleton asynchronously during the app's startup phase, typically during the splash screen."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Access the Singleton\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Once the singleton is initialized, it can be accessed from anywhere in the app."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"However, "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"limit its usage"}]},{"type":"text","value":" to passing necessary instances to Blocs, Controllers, or Providers during their injection."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Avoid excessive use"}]},{"type":"text","value":" of the singleton to prevent tight coupling and global state management."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Selective Instance Passing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"When injecting dependencies into a Bloc, Controller, or Provider, pass only the "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"specific instances"}]},{"type":"text","value":" required for its functionality. This approach promotes a more granular and focused dependency injection process."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Centralized initialization of dependencies."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Clear separation of the initialization phase and dependency usage phase."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Ensures that dependencies are only instantiated once, avoiding redundant resource usage."}]}]},{"type":"element","tag":"h3","props":{"id":"cons"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The app relies on all dependencies being initialized upfront, which may increase the splash screen loading time."}]}]},{"type":"element","tag":"h2","props":{"id":"context-aware-dependency-retrieval"},"children":[{"type":"text","value":"Context-Aware Dependency Retrieval"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This approach introduces a core Bloc, Controller, or Provider, referred to as the \"core instance,\" to store all repository and service instances. Dependencies are accessed dynamically using the BuildContext to locate the core instance. This approach emphasizes context-aware dependency resolution and reduces the reliance on global access patterns."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create a Core Instance\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Define a Bloc, Controller, or Provider to act as the central storage for dependencies."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Inject Dependencies\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Initialize all required repository and service instances within the core instance."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provide the core instance to the widget tree using a dependency injection mechanism."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Dynamic Retrieval\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use the BuildContext to locate the core instance dynamically whenever dependencies are needed."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Extract only the specific instances required for a given Bloc, Controller, or Provider."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros-1"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Context-aware dependency resolution promotes structured and localized access patterns."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Simplifies testing by mocking the core instance for specific widget trees."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Reduces global state access, aligning with best practices in state management."}]}]},{"type":"element","tag":"h3","props":{"id":"cons-1"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Requires proper handling of BuildContext to avoid accessing dependencies outside of the widget tree."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Dependency retrieval via BuildContext can become verbose if not managed properly."}]}]},{"type":"element","tag":"h2","props":{"id":"decision-making"},"children":[{"type":"text","value":"Decision Making"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Going ahead with Singleton makes sense for the project we have"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"proposed-solutions","depth":2,"text":"Proposed Solutions"},{"id":"singleton","depth":2,"text":"Singleton","children":[{"id":"pros","depth":3,"text":"Pros"},{"id":"cons","depth":3,"text":"Cons"}]},{"id":"context-aware-dependency-retrieval","depth":2,"text":"Context-Aware Dependency Retrieval","children":[{"id":"pros-1","depth":3,"text":"Pros"},{"id":"cons-1","depth":3,"text":"Cons"}]},{"id":"decision-making","depth":2,"text":"Decision Making"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:3.decoupling.md","_source":"content","_file":"2.mobile-app/2.thought-processses/3.decoupling.md","_stem":"2.mobile-app/2.thought-processses/3.decoupling","_extension":"md"} \ No newline at end of file diff --git a/api/_content/query/vTsSEwsLJZ.1741786524678.json b/api/_content/query/vTsSEwsLJZ.1741786524678.json new file mode 100644 index 0000000..19b6219 --- /dev/null +++ b/api/_content/query/vTsSEwsLJZ.1741786524678.json @@ -0,0 +1 @@ +{"_path":"/mobile-app/thought-processses/state-management","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"State Management","description":"Managing State in the Project","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"bloc"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"BLoC, short for Business Logic Component, enforces a unidirectional data flow, ensuring a clear separation of concerns and promoting testability."}]}]},{"type":"element","tag":"h3","props":{"id":"principles"},"children":[{"type":"text","value":"Principles"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Events Drive State Changes\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC receives events triggered by user interactions or other parts of the application. These events signal a potential change in the state."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"State Updates via Emitting New States\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Based on the received event, the BLoC processes it and emits a new state that reflects the updated application state."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"UI Reacts to State Changes\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The UI observes the state emitted by the BLoC and rebuilds itself accordingly, ensuring the UI always reflects the current state."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Predictable State Flow\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC enforces a unidirectional data flow, making it easier to reason about how state changes occur within your application."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC separates the UI from the business logic, leading to cleaner and more maintainable code."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Scalability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The BLoC pattern scales well for complex applications with intricate state management requirements."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By isolating state logic within the BLoC, you can write unit tests to ensure the BLoC reacts correctly to different events."}]}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"bloc","depth":2,"text":"BLoC","children":[{"id":"principles","depth":3,"text":"Principles"},{"id":"pros","depth":3,"text":"Pros"}]}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:4.state-management.md","_source":"content","_file":"2.mobile-app/2.thought-processses/4.state-management.md","_stem":"2.mobile-app/2.thought-processses/4.state-management","_extension":"md"} \ No newline at end of file diff --git a/api/search.json b/api/search.json new file mode 100644 index 0000000..2079418 --- /dev/null +++ b/api/search.json @@ -0,0 +1 @@ +[{"_path":"/getting-started","_dir":"","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Welcome to the VaahStore documentation","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"VaahStore is a cutting-edge, open-source headless e-commerce platform designed to revolutionize the online shopping experience. VaahStore offers a fast, efficient, and feature-rich solution for businesses of all sizes."}]},{"type":"element","tag":"h2","props":{"id":"key-features"},"children":[{"type":"text","value":"Key Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Headless Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Unrestricted flexibility to build custom storefronts and integrate with any device or platform."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Open-Source\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Empowering developers to customize and extend the platform to meet specific needs."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Fast and Efficient\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Optimized performance for seamless user experiences."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Easy to Use\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Intuitive interface and developer-friendly tools for rapid development."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Comprehensive Features\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built-in functionalities like product catalogs, shopping carts, checkout processes, and more."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"why-choose-vaahstore"},"children":[{"type":"text","value":"Why Choose VaahStore?"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Unleash Your Creativity\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"stunning, personalized storefronts without compromise"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Skyrocket Your Sales\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Deliver "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"blazing-fast"}]},{"type":"text","value":" performance and seamless user experiences."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Future-Proof Your Business\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built on the latest technologies, VaahStore ensures you "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"stay ahead of the curve"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Take Control of Your E-commerce Destiny\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"With complete "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"customization"}]},{"type":"text","value":" and "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"extensibility"}]},{"type":"text","value":", you're in the driver's seat."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Join a Thriving Community\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Benefit from a global community of developers, "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"sharing knowledge and innovation"}]},{"type":"text","value":"."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"getting-started"},"children":[{"type":"text","value":"Getting Started"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To begin your journey with VaahStore, refer to our comprehensive documentation and community resources. Our dedicated team is committed to providing support and guidance throughout the development process."}]},{"type":"element","tag":"h2","props":{"id":"join-the-vaahstore-community"},"children":[{"type":"text","value":"Join the VaahStore Community"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Connect with fellow developers, share knowledge, and contribute to the future of e-commerce. Join our GitHub community to stay updated on the latest developments and best practices."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"key-features","depth":2,"text":"Key Features"},{"id":"why-choose-vaahstore","depth":2,"text":"Why Choose VaahStore?"},{"id":"getting-started","depth":2,"text":"Getting Started"},{"id":"join-the-vaahstore-community","depth":2,"text":"Join the VaahStore Community"}]}},"_type":"markdown","_id":"content:1.getting-started:1.index.md","_source":"content","_file":"1.getting-started/1.index.md","_stem":"1.getting-started/1.index","_extension":"md"},{"_path":"/getting-started/code-of-conduct","_dir":"getting-started","_draft":false,"_partial":false,"_locale":"","title":"Code of Conduct","description":"Let's keep it light and friendly, but serious about respect!","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We want our community to be a fun and welcoming place for everyone. Here are a few guidelines to help us maintain that:"}]},{"type":"element","tag":"h2","props":{"id":"play-nice"},"children":[{"type":"text","value":"Play Nice"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"No cyberbullying or trolling."}]},{"type":"text","value":" (We're all friends here, even if we disagree.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Keep it clean."}]},{"type":"text","value":" (No offensive language or inappropriate content, please.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Respect everyone's opinions."}]},{"type":"text","value":" (Even if they're really wrong.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Be patient and understanding."}]},{"type":"text","value":" (We're all human, and sometimes we make mistakes.)"}]}]},{"type":"element","tag":"h2","props":{"id":"unacceptable-behavior"},"children":[{"type":"text","value":"Unacceptable Behavior"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"No bullying or hate speech."}]},{"type":"text","value":" (Seriously, it's not cool.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Don't spam or troll."}]},{"type":"text","value":" (It's annoying, and nobody likes an annoying bot.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Respect people's privacy."}]},{"type":"text","value":" (Keep your snooping to a minimum.)"}]}]},{"type":"element","tag":"h2","props":{"id":"if-somethings-off"},"children":[{"type":"text","value":"If Something's Off"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"If you see something that doesn't feel right, please let us know. We'll investigate and fix or take appropriate action."}]},{"type":"element","tag":"h2","props":{"id":"enforcement"},"children":[{"type":"text","value":"Enforcement"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We reserve the right to take action against individuals who violate this code of conduct, including warnings, temporary bans, or permanent bans."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By participating in our community, you agree to abide by this code of conduct."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"play-nice","depth":2,"text":"Play Nice"},{"id":"unacceptable-behavior","depth":2,"text":"Unacceptable Behavior"},{"id":"if-somethings-off","depth":2,"text":"If Something's Off"},{"id":"enforcement","depth":2,"text":"Enforcement"}]}},"_type":"markdown","_id":"content:1.getting-started:2.code-of-conduct.md","_source":"content","_file":"1.getting-started/2.code-of-conduct.md","_stem":"1.getting-started/2.code-of-conduct","_extension":"md"},{"_path":"/mobile-app/onboarding","_dir":"mobile-app","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Starting with Mobile App Onboarding","body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"VaahStore Mobile App is a feature-rich mobile application, designed to provide a seamless shopping experience on smartphones and tablets. It leverages the power of the VaahStore backend API to offer a wide range of features."}]},{"type":"element","tag":"h2","props":{"id":"features"},"children":[{"type":"text","value":"Features"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Product Browsing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Explore a vast catalog of products, categorized and filtered for easy navigation."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Product Details\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"View detailed product information, including high-quality images, descriptions, and customer reviews."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Shopping Cart\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Add products to the cart, modify quantities, and apply discounts."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Secure Checkout\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Process payments securely using various payment methods."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Order Tracking\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Track the status of orders, from placement to delivery."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"User Accounts\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create and manage user accounts, including address book, order history, and wishlists."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Push Notifications\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Receive personalized notifications for order updates, promotions, and new arrivals."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Recommendations\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Personalized Recommendations to cater each individual"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Robust Logging and Analytics\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Monitor app performance & issues. Also collect insights about what users prefer."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"And Much More\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"All the things you think should be there, If not let us know and we will try to fit them in our roadmap."}]}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"features","depth":2,"text":"Features"}]}},"_type":"markdown","_id":"content:2.mobile-app:1.onboarding:1.index.md","_source":"content","_file":"2.mobile-app/1.onboarding/1.index.md","_stem":"2.mobile-app/1.onboarding/1.index","_extension":"md"},{"_path":"/mobile-app/onboarding/tech-stack","_dir":"onboarding","_draft":false,"_partial":false,"_locale":"","title":"Tech Stack","description":"Technologies powering our platform.","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"todo"},"children":[{"type":"text","value":"TODO:"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"todo","depth":2,"text":"TODO:"}]}},"_type":"markdown","_id":"content:2.mobile-app:1.onboarding:2.tech-stack.md","_source":"content","_file":"2.mobile-app/1.onboarding/2.tech-stack.md","_stem":"2.mobile-app/1.onboarding/2.tech-stack","_extension":"md"},{"_path":"/mobile-app/thought-processses","_dir":"mobile-app","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Thought process behind reaching to the decisions","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"topics-this-section-will-cover"},"children":[{"type":"text","value":"Topics this section will cover"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Project Architecture"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Decoupling Dependencies"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"State Management Patterns"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design Patterns"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Performance Optimization"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Security Considerations"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Code Quality and Maintainability"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Testing Strategies"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"topics-this-section-will-cover","depth":2,"text":"Topics this section will cover"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:1.index.md","_source":"content","_file":"2.mobile-app/2.thought-processses/1.index.md","_stem":"2.mobile-app/2.thought-processses/1.index","_extension":"md"},{"_path":"/mobile-app/thought-processses/architecture","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"Architecture","description":"All about project architecture","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"what-will-we-discuss-about"},"children":[{"type":"text","value":"What will we discuss about?"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"There are so many architectures but two of them needs some discussion here."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Model-View-Controller"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Clean Architecture"}]}]},{"type":"element","tag":"h2","props":{"id":"what-we-want-to-avoid-intentionally-for-now"},"children":[{"type":"text","value":"What we want to avoid intentionally for now?"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"MVVM\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"MVVM implies databindings between the view and the viewmodel, which means, in practice, the view objects mostly are the ones commanding the viewmodel. MVVM seems to me a simplification of MVC, to show the model \"as is\" behind the scenes. And because we are already talking about MVC, talking MVVM doesn't makes sense."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Also I think, overuse of data binding can lead to tight coupling between the View and ViewModel, making the code less modular and harder to test."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Layered Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Layered Architecture has unidirectional dependencies, with lower layers depending on higher ones. While Clean Architecture Dependencies point inwards towards the core, making the core independent of external factors. So I am gonna exclude Layered Architecture & will focus on Clean Architecture. Also Clean Architecture offers high degree of flexibility, testability, and maintainability on top of what Layered Architecture does."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Hexagonal Architecture\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"If one use-case (application-service) is dependent on another, and so on, resulting in a tangled chain of calls where people usually get lost. Usually, this web of dependencies is an anti-pattern that hinders the clarity and simplicity that Hexagonal Architecture aims to provide."}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"model-view-controller"},"children":[{"type":"text","value":"Model-View-Controller"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"MVC separates an application into three interconnected parts:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Model\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Represents the data of the application."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"View\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Responsible for the user interface"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Controller\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Handles the logic between the Model and the View."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"./lib\n├── models\n│ ├── data\n│ └── ...\n├── Views\n│ └── ...\n├── Controllers\n│ └── ...\n├── Services\n│ └── ...\n├── Repositories\n│ └── ...\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── models\n│ ├── data\n│ └── ...\n├── Views\n│ └── ...\n├── Controllers\n│ └── ...\n├── Services\n│ └── ...\n├── Repositories\n│ └── ...\n└── routes\n"}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Simplicity"}]},{"type":"text","value":": Easier to implement for small applications."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Quick to start"}]},{"type":"text","value":": Suitable for smaller projects or MVP applications."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Familiarity"}]},{"type":"text","value":": A widely recognized pattern, making it easier to onboard new developers."}]}]},{"type":"element","tag":"h3","props":{"id":"cons"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Tight Coupling"}]},{"type":"text","value":": The controller is responsible for both business logic and UI updates, leading to a tight coupling between the components."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Scalability Issues"}]},{"type":"text","value":": As the application grows, managing complexity can become difficult because the logic might get mixed in the controller."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Limited Separation of Concerns"}]},{"type":"text","value":": This pattern often doesn't separate responsibilities as clearly, leading to potential maintenance challenges in large apps."}]}]},{"type":"element","tag":"h2","props":{"id":"clean-architecture"},"children":[{"type":"text","value":"Clean Architecture"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Data Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Models"}]},{"type":"text","value":": Define the data structures for your application, keeping them simple and focused on the data they represent."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Services"}]},{"type":"text","value":": Implement services for network requests, local storage, and other data operations. Use appropriate libraries to handle these tasks."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Domain Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Interfaces"}]},{"type":"text","value":": Define clear interfaces for repositories, specifying the methods to interact with data."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Repositories"}]},{"type":"text","value":": Implement these interfaces, using the data layer to fetch and store data. Keep the repository logic independent of the data source (e.g., network, database)."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Presentation Layer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Pages"}]},{"type":"text","value":": Build the UI screens, using widgets to compose the layout and handle user interactions."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Widgets"}]},{"type":"text","value":": Create reusable UI components to improve code organization and maintainability."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"}]}]},{"type":"element","tag":"h3","props":{"id":"pros-1"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Separation of Concerns"}]},{"type":"text","value":": Clean Architecture separates concerns into distinct layers, making it easier to maintain and scale as the app grows."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Flexibility"}]},{"type":"text","value":": The architecture can easily accommodate changes in UI frameworks, data sources, or external dependencies without affecting the core business logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Scalability"}]},{"type":"text","value":": Clean Architecture is designed to handle complexity and larger applications efficiently."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Testability"}]},{"type":"text","value":": Since the business logic and UI are decoupled, it’s easier to test different parts of the app independently."}]}]},{"type":"element","tag":"h3","props":{"id":"cons-1"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Complexity"}]},{"type":"text","value":": The setup is more complex compared to MVC, and might be overkill for simple apps."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Learning Curve"}]},{"type":"text","value":": For beginners or developers new to the architecture, there might be an initial learning curve to understand the separation of layers and their interactions."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Verbose Code"}]},{"type":"text","value":": Because of the multiple layers and classes involved, it can lead to more boilerplate code."}]}]},{"type":"element","tag":"h2","props":{"id":"decision-making"},"children":[{"type":"text","value":"Decision Making"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For production-grade apps, Clean Architecture is often preferred. Where rapid development is key, and you can afford some level of coupling between logic and UI - you should use MVC. Clean Architecture is better suited for larger, more complex apps that need to scale, be maintainable over time, and where testability and decoupling of concerns are priorities."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We have decided to go ahead with Clean Architecture."}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"what-will-we-discuss-about","depth":2,"text":"What will we discuss about?"},{"id":"what-we-want-to-avoid-intentionally-for-now","depth":2,"text":"What we want to avoid intentionally for now?"},{"id":"model-view-controller","depth":2,"text":"Model-View-Controller","children":[{"id":"pros","depth":3,"text":"Pros"},{"id":"cons","depth":3,"text":"Cons"}]},{"id":"clean-architecture","depth":2,"text":"Clean Architecture","children":[{"id":"pros-1","depth":3,"text":"Pros"},{"id":"cons-1","depth":3,"text":"Cons"}]},{"id":"decision-making","depth":2,"text":"Decision Making"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:2.architecture.md","_source":"content","_file":"2.mobile-app/2.thought-processses/2.architecture.md","_stem":"2.mobile-app/2.thought-processses/2.architecture","_extension":"md"},{"_path":"/mobile-app/thought-processses/decoupling","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"Decoupling Dependencies","description":null,"body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Tightly coupled dependencies between components can lead to several issues like Increased complexity, Reduced testability, Reduced maintainability, etc."}]},{"type":"element","tag":"h2","props":{"id":"proposed-solutions"},"children":[{"type":"text","value":"Proposed Solutions"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To address these challenges, we propose two effective strategies: Singleton And Context-Aware Dependency Retrieval"}]},{"type":"element","tag":"h2","props":{"id":"singleton"},"children":[{"type":"text","value":"Singleton"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"In this approach, a singleton acts as a centralized container for all repository and service instances."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create a Singleton\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Design a singleton class to hold all repository and service instances."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Initialize the singleton asynchronously during the app's startup phase, typically during the splash screen."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Access the Singleton\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Once the singleton is initialized, it can be accessed from anywhere in the app."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"However, "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"limit its usage"}]},{"type":"text","value":" to passing necessary instances to Blocs, Controllers, or Providers during their injection."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Avoid excessive use"}]},{"type":"text","value":" of the singleton to prevent tight coupling and global state management."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Selective Instance Passing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"When injecting dependencies into a Bloc, Controller, or Provider, pass only the "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"specific instances"}]},{"type":"text","value":" required for its functionality. This approach promotes a more granular and focused dependency injection process."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Centralized initialization of dependencies."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Clear separation of the initialization phase and dependency usage phase."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Ensures that dependencies are only instantiated once, avoiding redundant resource usage."}]}]},{"type":"element","tag":"h3","props":{"id":"cons"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The app relies on all dependencies being initialized upfront, which may increase the splash screen loading time."}]}]},{"type":"element","tag":"h2","props":{"id":"context-aware-dependency-retrieval"},"children":[{"type":"text","value":"Context-Aware Dependency Retrieval"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This approach introduces a core Bloc, Controller, or Provider, referred to as the \"core instance,\" to store all repository and service instances. Dependencies are accessed dynamically using the BuildContext to locate the core instance. This approach emphasizes context-aware dependency resolution and reduces the reliance on global access patterns."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Create a Core Instance\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Define a Bloc, Controller, or Provider to act as the central storage for dependencies."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Inject Dependencies\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Initialize all required repository and service instances within the core instance."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provide the core instance to the widget tree using a dependency injection mechanism."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Dynamic Retrieval\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use the BuildContext to locate the core instance dynamically whenever dependencies are needed."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Extract only the specific instances required for a given Bloc, Controller, or Provider."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros-1"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Context-aware dependency resolution promotes structured and localized access patterns."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Simplifies testing by mocking the core instance for specific widget trees."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Reduces global state access, aligning with best practices in state management."}]}]},{"type":"element","tag":"h3","props":{"id":"cons-1"},"children":[{"type":"text","value":"Cons"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Requires proper handling of BuildContext to avoid accessing dependencies outside of the widget tree."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Dependency retrieval via BuildContext can become verbose if not managed properly."}]}]},{"type":"element","tag":"h2","props":{"id":"decision-making"},"children":[{"type":"text","value":"Decision Making"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Going ahead with Singleton makes sense for the project we have"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"proposed-solutions","depth":2,"text":"Proposed Solutions"},{"id":"singleton","depth":2,"text":"Singleton","children":[{"id":"pros","depth":3,"text":"Pros"},{"id":"cons","depth":3,"text":"Cons"}]},{"id":"context-aware-dependency-retrieval","depth":2,"text":"Context-Aware Dependency Retrieval","children":[{"id":"pros-1","depth":3,"text":"Pros"},{"id":"cons-1","depth":3,"text":"Cons"}]},{"id":"decision-making","depth":2,"text":"Decision Making"}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:3.decoupling.md","_source":"content","_file":"2.mobile-app/2.thought-processses/3.decoupling.md","_stem":"2.mobile-app/2.thought-processses/3.decoupling","_extension":"md"},{"_path":"/mobile-app/thought-processses/state-management","_dir":"thought-processses","_draft":false,"_partial":false,"_locale":"","title":"State Management","description":"Managing State in the Project","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"bloc"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"BLoC, short for Business Logic Component, enforces a unidirectional data flow, ensuring a clear separation of concerns and promoting testability."}]}]},{"type":"element","tag":"h3","props":{"id":"principles"},"children":[{"type":"text","value":"Principles"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Events Drive State Changes\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC receives events triggered by user interactions or other parts of the application. These events signal a potential change in the state."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"State Updates via Emitting New States\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Based on the received event, the BLoC processes it and emits a new state that reflects the updated application state."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"UI Reacts to State Changes\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The UI observes the state emitted by the BLoC and rebuilds itself accordingly, ensuring the UI always reflects the current state."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"pros"},"children":[{"type":"text","value":"Pros"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Predictable State Flow\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC enforces a unidirectional data flow, making it easier to reason about how state changes occur within your application."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoC separates the UI from the business logic, leading to cleaner and more maintainable code."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Scalability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The BLoC pattern scales well for complex applications with intricate state management requirements."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By isolating state logic within the BLoC, you can write unit tests to ensure the BLoC reacts correctly to different events."}]}]}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"bloc","depth":2,"text":"BLoC","children":[{"id":"principles","depth":3,"text":"Principles"},{"id":"pros","depth":3,"text":"Pros"}]}]}},"_type":"markdown","_id":"content:2.mobile-app:2.thought-processses:4.state-management.md","_source":"content","_file":"2.mobile-app/2.thought-processses/4.state-management.md","_stem":"2.mobile-app/2.thought-processses/4.state-management","_extension":"md"},{"_path":"/mobile-app/poc","_dir":"mobile-app","_draft":false,"_partial":false,"_locale":"","title":"Introduction","description":"Proof of Concepts","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"topics-this-section-will-cover"},"children":[{"type":"text","value":"Topics this section will cover"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Architecture PoC"}]}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"topics-this-section-will-cover","depth":2,"text":"Topics this section will cover"}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:1.index.md","_source":"content","_file":"2.mobile-app/3.poc/1.index.md","_stem":"2.mobile-app/3.poc/1.index","_extension":"md"},{"_path":"/mobile-app/poc/architecture","_dir":"poc","_draft":false,"_partial":false,"_locale":"","title":"Architecture PoC","description":null,"body":{"type":"root","children":[{"type":"element","tag":"pre","props":{"code":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n"}]}]},{"type":"element","tag":"h2","props":{"id":"main-entry-point"},"children":[{"type":"text","value":"Main entry point"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"app_config.dart"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This file is the main entry point of the application. It initializes the DependencyManager and sets up the application's initial configuration, including system UI styles. It then renders a FutureBuilder to handle the asynchronous initialization process of the DependencyManager. Based on the initialization result, it displays a loading screen, an error screen, or the main application."}]},{"type":"element","tag":"pre","props":{"code":" return FutureBuilder<bool>(\n future: DependencyManager.init(),\n builder: (context, snapshot) {\n if (snapshot.connectionState == ConnectionState.waiting) {\n return const _DefaultAppConfig(\n child: _SplashScreen(),\n );\n } else if (snapshot.hasError) {\n return const _DefaultAppConfig(\n child: _HardRestartScreen(),\n );\n } else if (snapshot.hasData) {\n return _AppConfigImpl(\n env: env,\n );\n } else {\n return const _DefaultAppConfig(\n child: _SomethingWentWrongScreen(),\n );\n }\n },\n );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return FutureBuilder<bool>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" future: DependencyManager.init(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, snapshot) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (snapshot.connectionState == ConnectionState.waiting) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _SplashScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (snapshot.hasError) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _HardRestartScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (snapshot.hasData) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _AppConfigImpl(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" env: env,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const _DefaultAppConfig(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: _SomethingWentWrongScreen(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"dependency-manager"},"children":[{"type":"text","value":"Dependency Manager"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"the DependencyManager acts as a central hub for managing application-wide dependencies."}]},{"type":"element","tag":"h3","props":{"id":"key-points"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Focus on Repositories\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The DependencyManager primarily initializes and exposes repositories. Repositories encapsulate data access logic, often combining data from multiple services."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" combines data from "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageService"}]},{"type":"text","value":". This separation of concerns promotes cleaner code and easier testing."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoCs and Repositories\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BLoCs, which manage application state and logic, can leverage the DependencyManager to access the required repositories."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, an "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationBloc"}]},{"type":"text","value":" might depend on the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":"."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Modular Design\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This approach promotes modularity by isolating dependency creation logic within the DependencyManager. BLoCs and other components don't need to be aware of how their dependencies are created, making the code more maintainable and testable."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Singleton Pattern\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The DependencyManager utilizes the Singleton pattern to ensure only one instance exists throughout the application's lifetime. This guarantees consistent access to the initialized dependencies."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"issues-with-this-approach"},"children":[{"type":"text","value":"Issues with this Approach"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Circular Dependency Issue\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"It's something when first thing depends on second and second depends on first, creating a deadlock."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Solution to this I explain later "},{"type":"element","tag":"a","props":{"href":"#circular-dependency"},"children":[{"type":"text","value":"here"}]},{"type":"text","value":"."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"    final vaahApiService = ApiService(\n      interceptors: [\n        ApiTokenInterceptor(() => authenticationRepository),\n      ],\n    );\n\n    final authenticationService = AuthenticationService.vaah(\n      apiService: vaahApiService,\n    );\n\n    authenticationRepository = AuthenticationRepository(\n      authenticationService: authenticationService,\n    );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"        ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"init"}]},{"type":"text","value":" Method\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This asynchronous method initializes the essential services & repositories"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationRepository"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"DependencyManager Creates the core "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"instance"}]},{"type":"text","value":", injecting both "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"secureStorageService"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationService"}]},{"type":"text","value":". And Let's say some other repository depends on secureStorageService we do not need to create a new one, we can utilize existing one."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Exposing variables\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"To expose you need to create direct variable in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"DependencyManager"}]},{"type":"text","value":" with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"static late final"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"For instance, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"static late final AuthenticationRepository authenticationRepository;"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"dependency_manager.dart"}]}]},{"type":"element","tag":"pre","props":{"code":"/// DependencyManager: Singleton Class\nabstract class DependencyManager {\n static bool _isInitialized = false;\n\n static late final AuthenticationRepository authenticationRepository;\n\n static Future<bool> init() async {\n if (_isInitialized) {\n return true;\n }\n\n final secureStorageService = StorageService.secure();\n\n final vaahApiService = ApiService(\n interceptors: [\n ApiTokenInterceptor(() => authenticationRepository),\n ],\n )..addSerializerFunctions(VaahResponseSerializers.defaults());\n\n final authenticationService = AuthenticationService.vaah(\n apiService: vaahApiService,\n );\n\n authenticationRepository = AuthenticationRepository(\n storageService: secureStorageService,\n authenticationService: authenticationService,\n );\n await authenticationRepository.init();\n\n _isInitialized = true;\n return _isInitialized;\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"/// DependencyManager: Singleton Class\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"abstract class DependencyManager {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static bool _isInitialized = false;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static late final AuthenticationRepository authenticationRepository;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" static Future<bool> init() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (_isInitialized) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return true;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final secureStorageService = StorageService.secure();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..addSerializerFunctions(VaahResponseSerializers.defaults());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" storageService: secureStorageService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationRepository.init();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _isInitialized = true;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _isInitialized;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"code":" return MultiBlocProvider(\n providers: [\n BlocProvider<AuthenticationBloc>(\n create: (context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ...\n ],\n child: child,\n );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return MultiBlocProvider(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" providers: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BlocProvider<AuthenticationBloc>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" create: (context) => AuthenticationBloc(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository: DependencyManager.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..add(const InitializationRequested()),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: child,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"services"},"children":[{"type":"text","value":"Services"}]},{"type":"element","tag":"h3","props":{"id":"key-points-1"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Benefits of Layered Architecture for Services"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Abstract Interfaces\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By defining abstract interfaces for your services, you create a clear contract that all concrete implementations must adhere to. This promotes flexibility as you can easily swap out different implementations without affecting the rest of your application. For example this is so useful when you need to feature flag some features."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Abstract interfaces enable you to easily mock or stub service implementations during unit tests. This allows you to isolate the logic of your application components from the specific behavior of external services, making your tests more robust and easier to maintain"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"this architecture promotes a clean separation of concerns. Services are responsible for specific functionalities, while other components interact with them through well-defined interfaces. This reduces coupling and improves code maintainability."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced Maintainability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By clearly defining service interfaces and their responsibilities, you make it easier to understand and maintain your application's architecture. Changes to service implementations can be made with minimal impact on other parts of the application as long as the interface remains unchanged."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Future-Proofing\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The layered architecture provides a solid foundation for future enhancements. You can easily add new service implementations or modify existing ones without significantly impacting the rest of your application."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-1"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This code defines a layered approach for local storage in a Flutter application\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageService"}]},{"type":"text","value":" is an abstract interface defining methods for get, set, and remove data."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"StorageServiceNoOp"}]},{"type":"text","value":" is a no-op implementation for testing purposes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"SecureStorageService"}]},{"type":"text","value":" in an implementation using flutter_secure_storage for secure data storage."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"// lib/data/services/local_storage/storage_service.dart\nabstract class StorageService {\n const StorageService();\n\n factory StorageService.noOp() => const StorageServiceNoOp();\n\n factory StorageService.secure() => const SecureStorageService();\n\n Future<T?> get<T>({required String key});\n\n Future<void> set({required String key, required Object value});\n\n Future<void> remove({required String key});\n}\n\n\n// lib/data/services/local_storage/no_op_service.dart\nclass StorageServiceNoOp implements StorageService {\n const StorageServiceNoOp();\n\n @override\n Future<T?> get<T>({required String key}) async => null;\n\n @override\n Future<void> set({required String key, required Object value}) async => null;\n\n @override\n Future<void> remove({required String key}) async => null;\n}\n\n\n// lib/data/services/local_storage/secure_storage_service.dart\nclass SecureStorageService implements StorageService {\n const SecureStorageService({this.storage = const FlutterSecureStorage()});\n\n final FlutterSecureStorage storage;\n\n @override\n Future<T?> get<T>({required String key}) async {\n final match = await storage.read(key: key);\n if (match == null) return null;\n return jsonDecode(match) as T;\n }\n\n @override\n Future<void> set({required String key, required Object value}) async {\n await storage.write(key: key, value: jsonEncode(value));\n }\n\n @override\n Future<void> remove({required String key}) async {\n await storage.delete(key: key);\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/storage_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"abstract class StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const StorageService();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" factory StorageService.noOp() => const StorageServiceNoOp();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" factory StorageService.secure() => const SecureStorageService();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/no_op_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class StorageServiceNoOp implements StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const StorageServiceNoOp();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key}) async => null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"// lib/data/services/local_storage/secure_storage_service.dart\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class SecureStorageService implements StorageService {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SecureStorageService({this.storage = const FlutterSecureStorage()});\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final FlutterSecureStorage storage;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<T?> get<T>({required String key}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final match = await storage.read(key: key);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (match == null) return null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return jsonDecode(match) as T;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> set({required String key, required Object value}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storage.write(key: key, value: jsonEncode(value));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> remove({required String key}) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storage.delete(key: key);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage-1"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"pre","props":{"code":"final secureStorageService = StorageService.secure();\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final secureStorageService = StorageService.secure();\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"repositories"},"children":[{"type":"text","value":"Repositories"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Centralizing Data Access Logic"}]},{"type":"element","tag":"h3","props":{"id":"key-points-2"},"children":[{"type":"text","value":"Key points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Source of Truth\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories act as a single source of truth for accessing and managing data within your application's domain layer."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"They encapsulate the logic for fetching, storing, and manipulating data, often combining data from multiple services."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separation of Concerns\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories shield the rest of your application (BLoCs, UI components) from the complexities of dealing with different data sources and services directly"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories promote a clean separation of concerns by isolating data access logic from the presentation layer (Blocs, UI). This improves code maintainability and testability."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Data Transformation and Validation\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Repositories can handle data transformation and validation before exposing it to other layers."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-2"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Authentication States\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Defines three states: unknown (initial), authenticated (user logged in), and unauthenticated (user logged out)."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationRepository\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Handles user authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Stores the currently logged-in user."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provides a stream ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"statusStream"}]},{"type":"text","value":") to notify about authentication state changes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Uses "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"storageService"}]},{"type":"text","value":" to store/retrieve user data securely."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Uses "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationService"}]},{"type":"text","value":" to perform signup, signin, and signout operations."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"enum AuthenticationStatus {\n unknown,\n authenticated,\n unauthenticated,\n}\n\nextension AuthenticationStatusExtensions on AuthenticationStatus {\n bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n}\n\nconst String _userKey = 'secure_user';\n\nclass AuthenticationRepository implements DisposableRepository {\n AuthenticationRepository({\n required this.storageService,\n required this.authenticationService,\n });\n\n final StorageService storageService;\n final AuthenticationService authenticationService;\n\n @override\n Future<void> init() async {\n try {\n final decodedUser = await storageService.get<Map<String, dynamic>>(\n key: _userKey,\n );\n if (decodedUser == null) {\n _unsetUser();\n } else {\n final user = User.fromJson(decodedUser);\n _setUser(user);\n }\n } catch (e) {\n _unsetUser();\n }\n }\n\n @override\n Future<void> dispose() async {\n _statusController.close();\n }\n\n final BehaviorSubject<AuthenticationStatus> _statusController =\n BehaviorSubject<AuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n\n Stream<AuthenticationStatus> get statusStream {\n return _statusController.stream;\n }\n\n AuthenticationStatus get statusCurrent {\n return _statusController.value;\n }\n\n User? _user;\n\n User? get user => _user;\n\n void _unsetUser() {\n _user = null;\n _statusController.add(AuthenticationStatus.unauthenticated);\n }\n\n void _setUser(User user) {\n _user = user;\n _statusController.add(AuthenticationStatus.authenticated);\n }\n\n Future<User> signUp({\n required String email,\n required String name,\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signUp(\n email: email,\n name: name,\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future<User> signIn({\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signIn(\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future<void> signOut() async {\n await authenticationService.signOut();\n await storageService.remove(\n key: _userKey,\n );\n\n _unsetUser();\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"enum AuthenticationStatus {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" unknown,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticated,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" unauthenticated,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"extension AuthenticationStatusExtensions on AuthenticationStatus {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"const String _userKey = 'secure_user';\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class AuthenticationRepository implements DisposableRepository {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationRepository({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.storageService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final StorageService storageService;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final AuthenticationService authenticationService;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> init() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final decodedUser = await storageService.get<Map<String, dynamic>>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (decodedUser == null) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = User.fromJson(decodedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(user);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" @override\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> dispose() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.close();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final BehaviorSubject<AuthenticationStatus> _statusController =\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BehaviorSubject<AuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Stream<AuthenticationStatus> get statusStream {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _statusController.stream;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationStatus get statusCurrent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return _statusController.value;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":55},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" User? _user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":56},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":57},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" User? get user => _user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":58},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":59},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _unsetUser() {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":60},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _user = null;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":61},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.add(AuthenticationStatus.unauthenticated);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":62},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":63},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":64},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _setUser(User user) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":65},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _user = user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":66},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _statusController.add(AuthenticationStatus.authenticated);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":67},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":68},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":69},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<User> signUp({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":70},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":71},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":72},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":73},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":74},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":75},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticatedUser = await authenticationService.signUp(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":76},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" email: email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":77},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" name: name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":78},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":79},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":80},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":81},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.set(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":82},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":83},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" value: authenticatedUser.toJson(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":84},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":85},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":86},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(authenticatedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":87},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return authenticatedUser;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":88},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":89},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":90},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<User> signIn({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":91},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":92},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required String password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":93},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":94},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final authenticatedUser = await authenticationService.signIn(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":95},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":96},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":97},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":98},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.set(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":99},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":100},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" value: authenticatedUser.toJson(),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":101},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":102},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":103},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _setUser(authenticatedUser);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":104},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return authenticatedUser;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":105},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":106},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":107},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> signOut() async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":108},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationService.signOut();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":109},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await storageService.remove(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":110},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" key: _userKey,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":111},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":112},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":113},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" _unsetUser();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":114},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":115},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"bloc"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"As discussed, only repositories are accessible from dependency manager, no services are exposed, BLoC can depend multiple repositories in order to operate."}]},{"type":"element","tag":"h3","props":{"id":"key-points-3"},"children":[{"type":"text","value":"Key Points"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"What does it do?\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Manages the state of the application. Handles events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Interacts with Repository(s) to perform operations."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Emits a stream of State objects to notify the UI about changes."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Code Organization\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Separates business logic from the UI, making the code more modular and easier to understand."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced Testability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Allows you to easily test the BLoC's behavior in isolation."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Improved Maintainability\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Makes it easier to modify and extend the application's logic without affecting other parts of the codebase."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Enhanced User Experience\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Provides a more predictable and responsive user interface by managing state changes effectively."}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"best-practices"},"children":[{"type":"text","value":"Best Practices"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use descriptive and meaningful names for classes, events, states, and methods."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow consistent naming conventions throughout your project for better readability and maintainability."}]}]},{"type":"element","tag":"h4","props":{"id":"events"},"children":[{"type":"text","value":"Events"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Descriptive action verbs"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use action verbs that clearly describe the intent of the event"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Avoid generic names like "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ButtonClicked"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"DataUpdated"}]}]}]},{"type":"element","tag":"h4","props":{"id":"states"},"children":[{"type":"text","value":"States"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Descriptive adjectives"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use adjectives to describe the current state of the system."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Avoid vague names like StateA, StateB."}]}]},{"type":"element","tag":"h4","props":{"id":"bloc-1"},"children":[{"type":"text","value":"BLoC"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Class Name\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow the convention of using \"Bloc\" as a suffix for Bloc classes."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"name should clearly indicate what the Bloc is responsible for."}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Event Handler Method Names\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Use the prefix "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_on"}]},{"type":"text","value":" followed by the corresponding event name."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This convention is commonly used in Bloc implementations to clearly identify event handlers."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"e.g. "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"on<InitializationRequested>(_onInitializationRequested);"}]}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"example-3"},"children":[{"type":"text","value":"Example"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_bloc.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Extends Bloc and manages authentication state based on events."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The AuthenticationBloc constructor injects an AuthenticationRepository for interacting with authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Event handlers ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_on*Requested"}]},{"type":"text","value":") handle specific events\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onInitializationRequested"}]},{"type":"text","value":": Checks the initial authentication state and emits AuthenticationSuccessful if a user is logged in, otherwise stays in the initial state."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignUpRequested"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignInRequested"}]},{"type":"text","value":": Handle signup and signin requests respectively, interacting with the repository and emitting loading/success/failure states."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"_onSignOutRequested"}]},{"type":"text","value":": Handles user signout, interacting with the repository and emitting loading/success/failure states."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"class AuthenticationBloc extends Bloc<AuthenticationEvent, AuthenticationState> {\n AuthenticationBloc({\n required this.authenticationRepository,\n }) : super(const AuthenticationInitial()) {\n on<InitializationRequested>(_onInitializationRequested);\n on<SignUpRequested>(_onSignUpRequested);\n on<SignInRequested>(_onSignInRequested);\n on<SignOutRequested>(_onSignOutRequested);\n }\n\n final AuthenticationRepository authenticationRepository;\n\n void _onInitializationRequested(\n InitializationRequested event,\n Emitter<AuthenticationState> emit,\n ) {\n if (authenticationRepository.statusCurrent.isAuthenticated &&\n authenticationRepository.user != null) {\n emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n }\n }\n\n Future<void> _onSignUpRequested(\n SignUpRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signUp(\n email: event.email,\n name: event.name,\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future<void> _onSignInRequested(\n SignInRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signIn(\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future<void> _onSignOutRequested(\n SignOutRequested event,\n Emitter<AuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n await authenticationRepository.signOut();\n emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"class AuthenticationBloc extends Bloc<AuthenticationEvent, AuthenticationState> {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" AuthenticationBloc({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }) : super(const AuthenticationInitial()) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<InitializationRequested>(_onInitializationRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignUpRequested>(_onSignUpRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignInRequested>(_onSignInRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" on<SignOutRequested>(_onSignOutRequested);\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final AuthenticationRepository authenticationRepository;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" void _onInitializationRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" InitializationRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (authenticationRepository.statusCurrent.isAuthenticated &&\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository.user != null) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignUpRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignUpRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = await authenticationRepository.signUp(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" email: event.email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" name: event.name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: event.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: event.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: user));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":41},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":42},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":43},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":44},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignInRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":45},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignInRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":46},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":47},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":48},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":49},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":50},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final user = await authenticationRepository.signIn(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":51},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" username: event.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":52},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" password: event.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":53},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":54},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(AuthenticationSuccessful(user: user));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":55},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":56},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":57},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":58},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":59},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":60},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":61},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":62},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":63},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Future<void> _onSignOutRequested(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":64},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SignOutRequested event,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":65},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Emitter<AuthenticationState> emit,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":66},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ) async {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":67},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" try {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":68},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationLoading());\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":69},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" await authenticationRepository.signOut();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":70},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":71},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } catch (e, st) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":72},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":73},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" emit(const AuthenticationFailed(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":74},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" message: VaahStringConstants.somethingWentWrong,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":75},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ));\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":76},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":77},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":78},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_event.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationEvent: Sealed class representing events that trigger state changes"}]}]},{"type":"element","tag":"pre","props":{"code":"@immutable\nsealed class AuthenticationEvent {\n const AuthenticationEvent();\n}\n\nfinal class InitializationRequested extends AuthenticationEvent {\n const InitializationRequested();\n}\n\nfinal class SignUpRequested extends AuthenticationEvent {\n const SignUpRequested({\n required this.email,\n required this.name,\n required this.username,\n required this.password,\n });\n\n final String email;\n final String name;\n final String username;\n final String password;\n}\n\nfinal class SignInRequested extends AuthenticationEvent {\n const SignInRequested({\n required this.username,\n required this.password,\n });\n\n final String username;\n final String password;\n}\n\nfinal class SignOutRequested extends AuthenticationEvent {\n const SignOutRequested();\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"@immutable\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"sealed class AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationEvent();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class InitializationRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const InitializationRequested();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignUpRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignUpRequested({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.email,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.name,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String email;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String name;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String username;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String password;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignInRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignInRequested({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.username,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.password,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String username;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String password;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class SignOutRequested extends AuthenticationEvent {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const SignOutRequested();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"lib/features/authentication/bloc/authentication_state.dart"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"AuthenticationState: Sealed class representing different states of authentication."}]}]},{"type":"element","tag":"pre","props":{"code":"@immutable\nsealed class AuthenticationState {\n const AuthenticationState();\n}\n\nfinal class AuthenticationInitial extends AuthenticationState {\n const AuthenticationInitial();\n}\n\nfinal class AuthenticationLoading extends AuthenticationState {\n const AuthenticationLoading();\n}\n\nfinal class AuthenticationSuccessful extends AuthenticationState {\n const AuthenticationSuccessful({\n required this.user,\n });\n\n final User user;\n}\n\nfinal class AuthenticationChanged extends AuthenticationState {\n const AuthenticationChanged({\n required this.message,\n });\n\n final String message;\n}\n\nfinal class AuthenticationFailed extends AuthenticationState {\n const AuthenticationFailed({\n required this.message,\n });\n\n final String message;\n}\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"@immutable\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"sealed class AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationState();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationInitial extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationInitial();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationLoading extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationLoading();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationSuccessful extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationSuccessful({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.user,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final User user;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationChanged extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationChanged({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.message,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String message;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"final class AuthenticationFailed extends AuthenticationState {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" const AuthenticationFailed({\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" required this.message,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" });\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" final String message;\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"}\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"usage-2"},"children":[{"type":"text","value":"Usage"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"On somewhere core level we initialize this bloc because it is used application wide, otherwise for other blocs for one screen only we can initialize for that screen only"}]},{"type":"element","tag":"pre","props":{"code":" MultiBlocProvider(\n providers: [\n BlocProvider<AuthenticationBloc>(\n create: (BuildContext context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ],\n child: ... ,\n )\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" MultiBlocProvider(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" providers: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" BlocProvider<AuthenticationBloc>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" create: (BuildContext context) => AuthenticationBloc(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" authenticationRepository: DependencyManager.authenticationRepository,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )..add(const InitializationRequested()),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: ... ,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" )\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocBuilder\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Primarily used to build UI based on the current state of a Bloc."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocBuilder<AuthenticationBloc, AuthenticationState>(\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocBuilder<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationLoading) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const CircularProgressIndicator();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationSuccessful) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Successful');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Not authenticated');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocListener\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Primarily used to perform side effects in response to state changes within a Bloc."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocListener<AuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n child: // Your UI here,\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocListener<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" listener: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ScaffoldMessenger.of(context).showSnackBar(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SnackBar(content: Text(state.message)),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" child: // Your UI here,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"BlocConsumer\n"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Combines the functionality of both BlocListener and BlocBuilder."}]}]}]}]},{"type":"element","tag":"pre","props":{"code":"BlocConsumer<AuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"BlocConsumer<AuthenticationBloc, AuthenticationState>(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" listener: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" ScaffoldMessenger.of(context).showSnackBar(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" SnackBar(content: Text(state.message)),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" builder: (context, state) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" if (state is AuthenticationLoading) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return const CircularProgressIndicator();\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationSuccessful) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Successful');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else if (state is AuthenticationFailed) {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Authentication Failed');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" } else {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" return Text('Not authenticated');\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" }\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":")\n"}]}]}]}]},{"type":"element","tag":"h2","props":{"id":"circular-dependency"},"children":[{"type":"text","value":"Circular Dependency"}]},{"type":"element","tag":"h3","props":{"id":"the-problem"},"children":[{"type":"text","value":"The problem"}]},{"type":"element","tag":"pre","props":{"code":"    final vaahApiService = ApiService(\n      interceptors: [\n        ApiTokenInterceptor(() => authenticationRepository),\n      ],\n    );\n\n    final authenticationService = AuthenticationService.vaah(\n      apiService: vaahApiService,\n    );\n\n    authenticationRepository = AuthenticationRepository(\n      authenticationService: authenticationService,\n    );\n","language":"dart","meta":"","className":"language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final vaahApiService = ApiService(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      interceptors: [\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"        ApiTokenInterceptor(() => authenticationRepository),\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      ],\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    final authenticationService = AuthenticationService.vaah(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      apiService: vaahApiService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    authenticationRepository = AuthenticationRepository(\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"      authenticationService: authenticationService,\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{},"children":[{"type":"text","value":"    );\n"}]}]}]}]},{"type":"element","tag":"ol","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":" needs "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" to retrieve the user's securely locally stored API token."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" depends on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" for authentication logic."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" relies on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" to make API calls."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" needs "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":"."}]}]},{"type":"element","tag":"h3","props":{"id":"the-solution"},"children":[{"type":"text","value":"The solution"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" is created with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":". However, the interceptor uses a lambda function ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"() => authenticationRepository"}]},{"type":"text","value":") to delay retrieving the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" instance."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":" is created immediately after "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" using the already created "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Finally, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" is created immediately after "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"One more thing to note here: We need to initialize services and repo in this perticular order (We can not initialize anything between given initializations). We always first initialize "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":", then "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationService"}]},{"type":"text","value":", and then "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"AuthenticationRepository"}]},{"type":"text","value":" -- "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Immediately"}]},{"type":"text","value":" one after another just to ensure that no other service that depends on "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiService"}]},{"type":"text","value":" makes any request inbetween."}]}]},{"type":"element","tag":"h3","props":{"id":"the-lambda-function"},"children":[{"type":"text","value":"The lambda function"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The lambda function "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"() => authenticationRepository"}]},{"type":"text","value":" is used within the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ApiTokenInterceptor"}]},{"type":"text","value":"."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This function delays the retrieval of the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"authenticationRepository"}]},{"type":"text","value":" until it's actually needed."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"By the time the interceptor needs the repository during an API call, init would have already completed creating all the services and the repositories. And thus needed repository instance would be available by that time."}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"main-entry-point","depth":2,"text":"Main entry point"},{"id":"dependency-manager","depth":2,"text":"Dependency Manager","children":[{"id":"key-points","depth":3,"text":"Key Points"},{"id":"issues-with-this-approach","depth":3,"text":"Issues with this Approach"},{"id":"example","depth":3,"text":"Example"},{"id":"usage","depth":3,"text":"Usage"}]},{"id":"services","depth":2,"text":"Services","children":[{"id":"key-points-1","depth":3,"text":"Key Points"},{"id":"example-1","depth":3,"text":"Example"},{"id":"usage-1","depth":3,"text":"Usage"}]},{"id":"repositories","depth":2,"text":"Repositories","children":[{"id":"key-points-2","depth":3,"text":"Key points"},{"id":"example-2","depth":3,"text":"Example"}]},{"id":"bloc","depth":2,"text":"BLoC","children":[{"id":"key-points-3","depth":3,"text":"Key Points"},{"id":"best-practices","depth":3,"text":"Best Practices"},{"id":"example-3","depth":3,"text":"Example"},{"id":"usage-2","depth":3,"text":"Usage"}]},{"id":"circular-dependency","depth":2,"text":"Circular Dependency","children":[{"id":"the-problem","depth":3,"text":"The problem"},{"id":"the-solution","depth":3,"text":"The solution"},{"id":"the-lambda-function","depth":3,"text":"The lambda function"}]}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:2.architecture.md","_source":"content","_file":"2.mobile-app/3.poc/2.architecture.md","_stem":"2.mobile-app/3.poc/2.architecture","_extension":"md"},{"_path":"/mobile-app/poc/code-generation","_dir":"poc","_draft":false,"_partial":false,"_locale":"","title":"Automatic code generation","description":null,"body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"todo"},"children":[{"type":"text","value":"TODO:"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"todo","depth":2,"text":"TODO:"}]}},"_type":"markdown","_id":"content:2.mobile-app:3.poc:3.code-generation.md","_source":"content","_file":"2.mobile-app/3.poc/3.code-generation.md","_stem":"2.mobile-app/3.poc/3.code-generation","_extension":"md"},{"_path":"/web/guide","_dir":"web","_draft":false,"_partial":false,"_locale":"","title":"Guide","description":"","body":{"type":"root","children":[{"type":"element","tag":"h2","props":{"id":"brief-overview-development-guide"},"children":[{"type":"text","value":"Brief overview & Development guide"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore is a platform-agnostic ecommerce frontend solution that allows seamless integration with various ecommerce backends! It provides tools for building customizable, high-performance online storefronts."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This guide will provide you with an overview of the project structure, tools and best practices to help you get started quickly."}]},{"type":"element","tag":"h2","props":{"id":"project-structure"},"children":[{"type":"text","value":"Project Structure"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This project follows a modular and scalable architecture, by decoupling the composable frontend from the server middleware allowing for easy collaboration among multiple teams and ensuring consistent development practices across the codebase."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The architecture includes the following apps:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"server"}]},{"type":"text","value":" - NuxtStore server middleware powered by "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://fastify.dev/","rel":["nofollow"]},"children":[{"type":"text","value":"Fastify"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"web"}]},{"type":"text","value":" - A typescript based web application powered by "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt"}]}]},{"type":"text","value":" and "},{"type":"element","tag":"strong","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vuejs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Vue"}]}]}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note"}]},{"type":"text","value":": These two standalone modules are capable of being integrated with any backend service with consistent APIs without extra configuration to setup."}]}]},{"type":"element","tag":"h4","props":{"id":"web-application"},"children":[{"type":"text","value":"Web application"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Web app follows a typical Nuxt.js directory "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/directory-structure/nuxt","rel":["nofollow"]},"children":[{"type":"text","value":"structure"}]},{"type":"text","value":" with a few tweaks:"}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"\napps/\n └── root/\n ├── ...\n ├── assets/ # Static assets\n ├── components/ \n │ ├── atoms/ # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n │ ├── molecules/ # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n │ └── organisms/ # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n ├── composables/ # Custom hooks composing reactive logic\n ├── constants/ \n │ ├── api.ts # API-related constants (HTTP methods)\n │ └── ui.ts # UI-related constants (colors, breakpoints)\n ├── data/ # Static data or JSON files\n ├── layouts/ # Nuxt Layouts\n ├── middleware/ # Client side route middlewares \n │ ├── auth.ts \n │ └── ...\n ├── pages/ # Pages\n │ ├── index.vue # App home page component\n │ └── ...\n ├── plugins/ # App plugins run on both client and server\n ├── public/ # Public assets\n ├── server/ # In-app backend server\n ├── shared/\n │ ├── types/ # Type definitions\n │ └── utils/ # Non-reactive helper functions\n ├── stores/ # Pinia stores for state management\n │ ├── auth.store.ts \n │ └── cart.store.ts \n ├── tests/ # Component and feature unit tests\n ├── eslint.config.mjs # Linter rules\n ├── features.json # Feature flags\n ├── app.vue # Application entry point\n ├── nuxt.config.ts # Nuxt.js configuration\n ├── package.json # Package entry point\n ├── tailwind.config.ts # TailwindCSS configuration\n ├── tsconfig.json # TypeScript configuration\n ├── vitest.config.ts # Vitest configuration\n └── ...\n\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"apps/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" root/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" assets/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Static assets\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" components/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" atoms/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" molecules/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" organisms/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" composables/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Custom hooks composing reactive logic\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" constants/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" api.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # API-related constants (HTTP methods)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ui.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # UI-related constants (colors, breakpoints)\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" data/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Static data or JSON files\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" layouts/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Nuxt Layouts\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" middleware/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Client side route middlewares \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" auth.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" pages/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Pages\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" index.vue"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # App home page component\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" plugins/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # App plugins run on both client and server\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" public/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Public assets\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":24},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" server/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # In-app backend server\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":25},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" shared/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":26},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" types/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Type definitions\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":27},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" utils/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Non-reactive helper functions\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":28},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" stores/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Pinia stores for state management\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":29},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" auth.store.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":30},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" │"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart.store.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" \n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":31},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tests/"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Component and feature unit tests\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":32},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" eslint.config.mjs"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Linter rules\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":33},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" features.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Feature flags\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":34},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" app.vue"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Application entry point\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":35},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" nuxt.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Nuxt.js configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":36},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" package.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Package entry point\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":37},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tailwind.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # TailwindCSS configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":38},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" tsconfig.json"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # TypeScript configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":39},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" ├──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" vitest.config.ts"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":" # Vitest configuration\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":40},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"List of essential directories:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" NuxtStore UI components, like "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"ProductCard"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Review"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"stores"}]},{"type":"text","value":" Pinia store containing global state, getters and mutators"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"composables"}]},{"type":"text","value":" Contains reusable composition functions, e.g. data fetchers and stateful helpers"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"shared"}]},{"type":"text","value":" Contains types and utilities "},{"type":"element","tag":"a","props":{"href":"https://github.com/nuxt/nuxt/releases/tag/v3.14.0","rel":["nofollow"]},"children":[{"type":"text","value":"shared"}]},{"type":"text","value":" across client and server e.g "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"product.type.ts"}]},{"type":"text","value":". Auto-import support will follow in next major release."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"tests"}]},{"type":"text","value":" Contains mocks for components, composables and store actions"}]}]},{"type":"element","tag":"h2","props":{"id":"project-guide"},"children":[{"type":"text","value":"Project Guide"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"This project follows a few conventions to help with organizing your code:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each function is located in a dedicated module and exported from the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"index.ts"}]},{"type":"text","value":" file."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"In this nuxt application, avoid importing auto-imported APIs (ref, onMounted etc.) or compiler macros (defineProps, defineEmits etc.) and PrimeVue components (Button, InputText, Dialog, Carousel etc.)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Names are short, descriptive and must follow our consistent naming convention ("},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/code","rel":["nofollow"]},"children":[{"type":"text","value":"guide"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Follow this "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/nuxt","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt guide"}]},{"type":"text","value":" to avoid common mistakes and comply with industry standard practices"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Functions (including composables and utils) are exported using explicit named exports instead of anonymous exports"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Actions or functions are defined following the trivial function definitions ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"func() { }"}]},{"type":"text","value":") "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"instead of arrow functions"}]},{"type":"text","value":" ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"const func = () => { }"}]},{"type":"text","value":") to create visible distinction between constants and methods"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This project follows "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/git","rel":["nofollow"]},"children":[{"type":"text","value":"gitflow"}]},{"type":"text","value":" as the branching strategy"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Feature branch name must follow a simple convention such as\n"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"feature/<purpose>-<page_name>-<subject>"}]},{"type":"text","value":". Subject can be component or specific feature\n(e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ui-cart-summary"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"ui-layout-footer"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"flow-checkout-payment"}]},{"type":"text","value":", "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"action-cart-quantity"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html","rel":["nofollow"]},"children":[{"type":"text","value":"JS doc comments"}]},{"type":"text","value":" are added at necessary places to define the structure of a complex entity or explain the construct of a method"}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" In order to add code comments, we prefix the action with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"@"}]},{"type":"text","value":" for contributors reference such as "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@todo:"}]},{"type":"text","value":" or "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"@debug:"}]}]}]},{"type":"element","tag":"h3","props":{"id":"components"},"children":[{"type":"text","value":"Components"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore UI follows "},{"type":"element","tag":"a","props":{"href":"https://atomicdesign.bradfrost.com/chapter-2/","rel":["nofollow"]},"children":[{"type":"text","value":"atomic design principle"}]},{"type":"text","value":" to develop components and it leverages "},{"type":"element","tag":"a","props":{"href":"https://primevue.org/","rel":["nofollow"]},"children":[{"type":"text","value":"PrimeVue"}]},{"type":"text","value":" as the building blocks of storefront components. All components are auto-imported by their name (no path-prefix) and are located inside subfolders in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"components"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Introduction to project components:"},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Consists of representational components that are designed to fulfill project requirements"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Components should be placed in dedicated folders inside components directory"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Root of the component folder has "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"atoms"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"molecules"}]},{"type":"text","value":" and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"organisms"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each component name must be prefixed with "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"\"Ns\""}]},{"type":"text","value":" (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"NsProductCard"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"TypeScript types are located inside the SFC for ease of access and coupling"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Tests for components are located in the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"/tests/components"}]},{"type":"text","value":" folder (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"NsUserAddress.spec.ts"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Folders inside /atoms, /molecules and /organisms must follow their purpose"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Expected directory structure:"}]},{"type":"element","tag":"pre","props":{"className":"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"components/\n └── atoms/\n └── cart/\n └── NsAddToCartButton.vue\n └── NsCartIcon.vue\n └── ui/\n └── NsHeader.vue\n └── NsFooter.vue\n └── ...\n └── molecules/\n └── form/\n └── NsEmailInput.vue\n └── NsPasswordInput.vue\n └── ...\n └── organisms/\n └── address/\n └── NsAddressCard.vue\n └── cart/\n └── NsCartOverview.vue\n └── forms/\n └── NsSignUpForm.vue\n └── NsAddressForm.vue\n └── ...\n","language":"shell","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"components/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" atoms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddToCartButton.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsCartIcon.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ui/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsHeader.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsFooter.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" molecules/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":11},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" form/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":12},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsEmailInput.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":13},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsPasswordInput.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":14},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":15},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" organisms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":16},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" address/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":17},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddressCard.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":18},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" cart/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":19},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsCartOverview.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":20},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" forms/\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":21},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsSignUpForm.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":22},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" NsAddressForm.vue\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":23},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" └──"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":" ...\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"For more information about available NuxtStore components for Vue (Nuxt), check out "},{"type":"element","tag":"a","props":{"href":""},"children":[{"type":"text","value":"documentation"}]},{"type":"text","value":"."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Convention:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Vue (Nuxt) components should follow "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"PascalCase"}]},{"type":"text","value":" pattern ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"CategoryFilters"}]},{"type":"text","value":", "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"Heading"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"The types for component's props should be named "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"{Component}Props"}]},{"type":"text","value":" and exist in the same SFC as the component. For example, "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"GalleryProps"}]},{"type":"text","value":" or "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"HeadingProps"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Line of code in a single file component must not exceed 200 (formatted)"}]}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Prop Declaration:"}]},{"type":"text","value":" In vue, there are multiple ways to define component props especially with typescript. ["},{"type":"element","tag":"a","props":{"href":"https://vuejs.org/guide/typescript/composition-api.html#typing-component-props","rel":["nofollow"]},"children":[{"type":"text","value":"checkout official docs"}]},{"type":"text","value":"] To ensure consistency and still allow customisability, we have adopted the following pattern."},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Multiword props are defined in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"camelCase"}]},{"type":"text","value":" and passed in template as "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"kebab-case"}]}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Example:"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"export type CartActionProps = {\n icon?: string,\n label?: string,\n ...\n};\n\nconst props = withDefaults(defineProps<CartActionProps>(), {\n icon: \"pi pi-cart\",\n label: \"Add to cart\"\n});\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":" type"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" CartActionProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" icon"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" label"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"?:"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":" string"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" ...\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"};\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":6},"children":[{"type":"element","tag":"span","props":{"emptyLinePlaceholder":true},"children":[{"type":"text","value":"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":7},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA"},"children":[{"type":"text","value":"const"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":" props "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":" withDefaults"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF"},"children":[{"type":"text","value":"defineProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"<"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"CartActionProps"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":">"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":"()"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":","}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":8},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" icon"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"pi pi-cart"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":",\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":9},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" label"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" \""}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"Add to cart"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"\"\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":10},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":";\n"}]}]}]}]},{"type":"element","tag":"h3","props":{"id":"state-management"},"children":[{"type":"text","value":"State Management"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"We are using "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/ssr/nuxt.html","rel":["nofollow"]},"children":[{"type":"text","value":"Pinia state management"}]},{"type":"text","value":" to lock the data responsibility along with the composition functions (composables)."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Pinia stores are defined in the style of "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/core-concepts/#Setup-Stores","rel":["nofollow"]},"children":[{"type":"text","value":"Setup stores"}]},{"type":"text","value":", keeping performance and modern standards in view"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each store file must end with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".store.ts"}]},{"type":"text","value":" extension"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Store methods are as modular and reusable as possible and do not perform side effects. If required, new action is created in order to handle "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"post{Action}"}]},{"type":"text","value":" (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"addToCart"}]},{"type":"text","value":" , "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"postAddToCart"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/getting-started/state-management","rel":["nofollow"]},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useState"}]}]},{"type":"text","value":" is used in very narrow context where creating global store for shared state doesn't make sense"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Sequentially a store structure should have state >> getters >> actions for readability"}]}]},{"type":"element","tag":"h3","props":{"id":"composables"},"children":[{"type":"text","value":"Composables"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Composables are useful when stateful logic has to be reused across components - e.g. controlling component state or leverage lifecycle hooks or accessing DOM api.\nProject composables are located on top level inside the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"composables/"}]},{"type":"text","value":" directory."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Convention:"}]}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Each composable should be prefixed with "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"use"}]},{"type":"text","value":" keyword ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useCartStatus"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Composables should follow "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"camelCase"}]},{"type":"text","value":" pattern ("},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"useProductReviews"}]},{"type":"text","value":")"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Composables follow single responsibility principle. Avoid calling side effects inside composables"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"This project inherits most of the composables from "},{"type":"element","tag":"a","props":{"href":"https://vueuse.org/guide/best-practice.html","rel":["nofollow"]},"children":[{"type":"text","value":"vueuse"}]},{"type":"text","value":" library. Always search for an already available "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"vueuse"}]},{"type":"text","value":" composable before writing on own for common tasks or DOM manipulation."}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"a","props":{"href":"https://vuejs.org/guide/reusability/composables.html#conventions-and-best-practices","rel":["nofollow"]},"children":[{"type":"text","value":"Composables"}]},{"type":"text","value":" should only be called in synchronous environment and on top level. Remember to clean attached event handlers or timeouts if defined inside a composable using vue's unmount hooks"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Built-in Nuxt composables must be called in the right context to avoid critical errors such as "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/concepts/auto-imports#vue-and-nuxt-composables","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt instance unavailable"}]}]}]},{"type":"element","tag":"blockquote","props":{},"children":[{"type":"element","tag":"p","props":{},"children":[{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"Note:"}]},{"type":"text","value":" State connected to the certain composable is read-only and reactive. They are modified by the internal modifiers (setters)"}]}]},{"type":"element","tag":"h3","props":{"id":"utils"},"children":[{"type":"text","value":"Utils"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Main purpose of utils is to encapsulate non-reactive helper method logic and draw a semantic boundary between reactive composables and other auto-imported utility functions. Utils are contained inside the Shared/ folder. This project follows some simple conventions for utils:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Project utils end with a "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":".utils.ts"}]},{"type":"text","value":" extension (e.g format.utils.ts, wishlist.utils.ts)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"utils/index.utils.ts"}]},{"type":"text","value":" contains all the shared functions across all contexts/features (e.g "},{"type":"element","tag":"strong","props":{},"children":[{"type":"text","value":"isEqual<T>(a,b)"}]},{"type":"text","value":" compares two entities for equality)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Named exports are preferred over default export (e.g export function cleanUserInput(){ })"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"One utility method can have multiple exports, allowing relevant functions to be grouped together"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Utility functions are synchronous and do not communicate with any reactive source (store/composables)"}]}]},{"type":"element","tag":"h3","props":{"id":"localization"},"children":[{"type":"text","value":"Localization"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"NuxtStore ships with a basic setup for i18n localization powered by the "},{"type":"element","tag":"a","props":{"href":"https://i18n.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt-i18n"}]},{"type":"text","value":" library. Project locale translations are stored in "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"locale/[namespace].json"}]},{"type":"text","value":" files. Translations are grouped by "},{"type":"element","tag":"em","props":{},"children":[{"type":"text","value":"features"}]},{"type":"text","value":", and imported only where required to minimize bundle size.\nRefer to the "},{"type":"element","tag":"a","props":{"href":"https://i18n.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt-i18n"}]},{"type":"text","value":" documentation for translating content with SSR support."}]},{"type":"element","tag":"h3","props":{"id":"testing"},"children":[{"type":"text","value":"Testing"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"The project provides a basic setup for testing TypeScript code with "},{"type":"element","tag":"a","props":{"href":"https://vitest.dev/","rel":["nofollow"]},"children":[{"type":"text","value":"Vitest"}]},{"type":"text","value":" and "},{"type":"element","tag":"a","props":{"href":"https://test-utils.vuejs.org/guide/","rel":["nofollow"]},"children":[{"type":"text","value":"Vue Test Utils"}]},{"type":"text","value":" for testing Vue (Nuxt) components and "},{"type":"element","tag":"a","props":{"href":"https://pinia.vuejs.org/cookbook/testing.html#Mocking-the-returned-value-of-an-action","rel":["nofollow"]},"children":[{"type":"text","value":"pinia stores"}]},{"type":"text","value":"."}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Testing configuration files: (runs on nuxt environment and "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"happy-dom"}]},{"type":"text","value":")"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"vitest.config.ts"}]},{"type":"text","value":" - Test runner config file"}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Testing commands:"}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"npm run unittest"}]},{"type":"text","value":" - Run all the test scripts in the project (in watch mode by default)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"npm run unittest <Component>"}]},{"type":"text","value":" - Run specific component/feature mocks"}]}]},{"type":"element","tag":"h3","props":{"id":"conventions-enforced-by-automated-tooling"},"children":[{"type":"text","value":"Conventions enforced by automated tooling"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"To help you code with best practices in mind, this boilerplate comes with some automated tooling."}]},{"type":"element","tag":"ul","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"All test descriptions follow naming convention "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"test('should <component>... ')"}]}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Automatic code linting is managed by "},{"type":"element","tag":"a","props":{"href":"https://eslint.nuxt.com/packages/config","rel":["nofollow"]},"children":[{"type":"text","value":"nuxt-eslint-module"}]}]}]},{"type":"element","tag":"h3","props":{"id":"cache-control"},"children":[{"type":"text","value":"Cache control"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"As the initial Nuxt setup is not caching images generated by "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"NuxtImg"}]},{"type":"text","value":", the "},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"nuxt.config.ts"}]},{"type":"text","value":" in this repository has been extended to cache those images as well (by setting proper headers):"}]},{"type":"element","tag":"pre","props":{"className":"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","code":"routeRules: {\n '/_ipx/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/icons/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/favicon.ico': { headers: { 'cache-control': `putypescriptblic, max-age=31536000, immutable` } },\n},\n","language":"ts","meta":"","style":""},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line","line":1},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B"},"children":[{"type":"text","value":"routeRules"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":2},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/_ipx/**"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":3},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/icons/**"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"public, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":4},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"/favicon.ico"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":": "}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"{"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":" headers"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" {"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" '"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178"},"children":[{"type":"text","value":"cache-control"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"'"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":":"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" `"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D"},"children":[{"type":"text","value":"putypescriptblic, max-age=31536000, immutable"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"`"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" }"}]},{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":" },\n"}]}]},{"type":"element","tag":"span","props":{"class":"line","line":5},"children":[{"type":"element","tag":"span","props":{"style":"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF"},"children":[{"type":"text","value":"},\n"}]}]}]}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"You can read about more possible rules in the "},{"type":"element","tag":"a","props":{"href":"https://nuxt.com/docs/guide/concepts/rendering#hybrid-rendering","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt documentation"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h4","props":{"id":"more-about-performance"},"children":[{"type":"text","value":"More about performance"}]},{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"Additional performance good practices and vue project guide can be found "},{"type":"element","tag":"a","props":{"href":"https://docs.vaah.dev/guide/vue-and-nuxt-performance-improvement","rel":["nofollow"]},"children":[{"type":"text","value":"HERE"}]},{"type":"text","value":"."}]},{"type":"element","tag":"h3","props":{"id":"recommended-ide-setup"},"children":[{"type":"text","value":"Recommended IDE setup"}]},{"type":"element","tag":"ol","props":{},"children":[{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"Visual Studio Code (with prettier_extension @"},{"type":"element","tag":"code","props":{"className":[]},"children":[{"type":"text","value":"v9.14.0"}]},{"type":"text","value":" exact and the latest version of microsoft eslint_extension)"}]},{"type":"element","tag":"li","props":{},"children":[{"type":"text","value":"webstorm (for developers comfortable in jetbrains IDE like phpstorm with no extra configuration -\n"},{"type":"element","tag":"a","props":{"href":"https://www.jetbrains.com/help/webstorm/eslint.html#ws_js_eslint_activate","rel":["nofollow"]},"children":[{"type":"text","value":"ws_eslint_customisation_guide"}]},{"type":"text","value":")"}]}]},{"type":"element","tag":"style","props":{},"children":[{"type":"text","value":"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[{"id":"brief-overview-development-guide","depth":2,"text":"Brief overview & Development guide"},{"id":"project-structure","depth":2,"text":"Project Structure"},{"id":"project-guide","depth":2,"text":"Project Guide","children":[{"id":"components","depth":3,"text":"Components"},{"id":"state-management","depth":3,"text":"State Management"},{"id":"composables","depth":3,"text":"Composables"},{"id":"utils","depth":3,"text":"Utils"},{"id":"localization","depth":3,"text":"Localization"},{"id":"testing","depth":3,"text":"Testing"},{"id":"conventions-enforced-by-automated-tooling","depth":3,"text":"Conventions enforced by automated tooling"},{"id":"cache-control","depth":3,"text":"Cache control"},{"id":"recommended-ide-setup","depth":3,"text":"Recommended IDE setup"}]}]}},"_type":"markdown","_id":"content:3.web:guide.md","_source":"content","_file":"3.web/guide.md","_stem":"3.web/guide","_extension":"md"}] \ No newline at end of file diff --git a/app/app.config.ts b/app/app.config.ts deleted file mode 100644 index 8e82690..0000000 --- a/app/app.config.ts +++ /dev/null @@ -1,78 +0,0 @@ -export default defineAppConfig({ - ui: { - primary: 'green', - gray: 'slate', - footer: { - bottom: { - left: 'text-sm text-gray-500 dark:text-gray-400', - wrapper: 'border-t border-gray-200 dark:border-gray-800' - } - } - }, - seo: { - siteName: 'Nuxt UI Pro - Docs template' - }, - header: { - logo: { - alt: '', - light: '', - dark: '' - }, - search: true, - colorMode: true, - links: [{ - 'icon': 'i-simple-icons-github', - 'to': 'https://github.com/nuxt-ui-pro/docs', - 'target': '_blank', - 'aria-label': 'Docs template on GitHub' - }] - }, - footer: { - credits: 'Copyright © 2023', - colorMode: false, - links: [{ - 'icon': 'i-simple-icons-nuxtdotjs', - 'to': 'https://nuxt.com', - 'target': '_blank', - 'aria-label': 'Nuxt Website' - }, { - 'icon': 'i-simple-icons-discord', - 'to': 'https://discord.com/invite/ps2h6QT', - 'target': '_blank', - 'aria-label': 'Nuxt UI on Discord' - }, { - 'icon': 'i-simple-icons-x', - 'to': 'https://x.com/nuxt_js', - 'target': '_blank', - 'aria-label': 'Nuxt on X' - }, { - 'icon': 'i-simple-icons-github', - 'to': 'https://github.com/nuxt/ui', - 'target': '_blank', - 'aria-label': 'Nuxt UI on GitHub' - }] - }, - toc: { - title: 'Table of Contents', - bottom: { - title: 'Community', - edit: 'https://github.com/nuxt-ui-pro/docs/edit/main/content', - links: [{ - icon: 'i-heroicons-star', - label: 'Star on GitHub', - to: 'https://github.com/nuxt/ui', - target: '_blank' - }, { - icon: 'i-heroicons-book-open', - label: 'Nuxt UI Pro docs', - to: 'https://ui.nuxt.com/pro/guide', - target: '_blank' - }, { - icon: 'i-simple-icons-nuxtdotjs', - label: 'Purchase a license', - to: 'https://ui.nuxt.com/pro/purchase', - target: '_blank' - }] - } - } -}) diff --git a/app/app.vue b/app/app.vue deleted file mode 100644 index b5fe653..0000000 --- a/app/app.vue +++ /dev/null @@ -1,58 +0,0 @@ -<script setup lang="ts"> -import type { ParsedContent } from '@nuxt/content' - -const { seo } = useAppConfig() - -const { data: navigation } = await useAsyncData('navigation', () => fetchContentNavigation()) -const { data: files } = useLazyFetch<ParsedContent[]>('/api/search.json', { - default: () => [], - server: false -}) - -useHead({ - meta: [ - { name: 'viewport', content: 'width=device-width, initial-scale=1' } - ], - link: [ - { rel: 'icon', href: '/favicon.ico' } - ], - htmlAttrs: { - lang: 'en' - } -}) - -useSeoMeta({ - titleTemplate: `%s - ${seo?.siteName}`, - ogSiteName: seo?.siteName, - ogImage: 'https://docs-template.nuxt.dev/social-card.png', - twitterImage: 'https://docs-template.nuxt.dev/social-card.png', - twitterCard: 'summary_large_image' -}) - -provide('navigation', navigation) -</script> - -<template> - <div> - <NuxtLoadingIndicator /> - - <AppHeader /> - - <UMain> - <NuxtLayout> - <NuxtPage /> - </NuxtLayout> - </UMain> - - <AppFooter /> - - <ClientOnly> - <LazyUContentSearch - :files="files" - :navigation="navigation" - /> - </ClientOnly> - - <UNotifications /> - </div> -</template> diff --git a/app/components/AppFooter.vue b/app/components/AppFooter.vue deleted file mode 100644 index 694ecbc..0000000 --- a/app/components/AppFooter.vue +++ /dev/null @@ -1,23 +0,0 @@ -<script setup lang="ts"> -const { footer } = useAppConfig() -</script> - -<template> - <UFooter> - <template #left> - {{ footer.credits }} - </template> - - <template #right> - <UColorModeButton v-if="footer?.colorMode" /> - - <template v-if="footer?.links"> - <UButton - v-for="(link, index) of footer?.links" - :key="index" - v-bind="{ color: 'gray', variant: 'ghost', ...link }" - /> - </template> - </template> - </UFooter> -</template> diff --git a/app/components/AppHeader.vue b/app/components/AppHeader.vue deleted file mode 100644 index e847ad7..0000000 --- a/app/components/AppHeader.vue +++ /dev/null @@ -1,53 +0,0 @@ -<script setup lang="ts"> -import type { NavItem } from '@nuxt/content' - -const navigation = inject<NavItem[]>('navigation', []) - -const { header } = useAppConfig() -</script> - -<template> - <UHeader> - <template #logo> - <template v-if="header?.logo?.dark || header?.logo?.light"> - <UColorModeImage v-bind="{ class: 'h-6 w-auto', ...header?.logo }" /> - </template> - <template v-else> - Nuxt UI Pro <UBadge - label="Docs" - variant="subtle" - class="mb-0.5" - /> - </template> - </template> - - <template - v-if="header?.search" - #center - > - <UContentSearchButton class="hidden lg:flex" /> - </template> - - <template #right> - <UContentSearchButton - v-if="header?.search" - :label="null" - class="lg:hidden" - /> - - <UColorModeButton v-if="header?.colorMode" /> - - <template v-if="header?.links"> - <UButton - v-for="(link, index) of header.links" - :key="index" - v-bind="{ color: 'gray', variant: 'ghost', ...link }" - /> - </template> - </template> - - <template #panel> - <UNavigationTree :links="mapContentNavigation(navigation)" /> - </template> - </UHeader> -</template> diff --git a/app/components/OgImage/OgImageDocs.vue b/app/components/OgImage/OgImageDocs.vue deleted file mode 100644 index 4b5f790..0000000 --- a/app/components/OgImage/OgImageDocs.vue +++ /dev/null @@ -1,29 +0,0 @@ -<script setup lang="ts"> -defineOptions({ - inheritAttrs: false -}) - -defineProps({ - title: { - type: String, - required: true - }, - description: { - type: String, - required: true - } -}) -</script> - -<template> - <div class="w-full h-full flex flex-col justify-center text-center bg-slate-900 p-8"> - <div class="relative"> - <h1 class="text-8xl mb-4 text-white"> - {{ title }} - </h1> - <p class="text-5xl text-gray-200 leading-tight"> - {{ description }} - </p> - </div> - </div> -</template> diff --git a/app/error.vue b/app/error.vue deleted file mode 100644 index 6919189..0000000 --- a/app/error.vue +++ /dev/null @@ -1,55 +0,0 @@ -<script setup lang="ts"> -import type { ParsedContent } from '@nuxt/content' -import type { NuxtError } from '#app' - -defineProps({ - error: { - type: Object as PropType<NuxtError>, - required: true - } -}) - -useHead({ - htmlAttrs: { - lang: 'en' - } -}) - -useSeoMeta({ - title: 'Page not found', - description: 'We are sorry but this page could not be found.' -}) - -const { data: navigation } = await useAsyncData('navigation', () => fetchContentNavigation()) -const { data: files } = useLazyFetch<ParsedContent[]>('/api/search.json', { - default: () => [], - server: false -}) - -provide('navigation', navigation) -</script> - -<template> - <div> - <AppHeader /> - - <UMain> - <UContainer> - <UPage> - <UPageError :error="error" /> - </UPage> - </UContainer> - </UMain> - - <AppFooter /> - - <ClientOnly> - <LazyUContentSearch - :files="files" - :navigation="navigation" - /> - </ClientOnly> - - <UNotifications /> - </div> -</template> diff --git a/app/layouts/docs.vue b/app/layouts/docs.vue deleted file mode 100644 index 2514621..0000000 --- a/app/layouts/docs.vue +++ /dev/null @@ -1,19 +0,0 @@ -<script setup lang="ts"> -import type { NavItem } from '@nuxt/content' - -const navigation = inject<Ref<NavItem[]>>('navigation') -</script> - -<template> - <UContainer> - <UPage> - <template #left> - <UAside> - <UNavigationTree :links="mapContentNavigation(navigation)" /> - </UAside> - </template> - - <slot /> - </UPage> - </UContainer> -</template> diff --git a/app/pages/[...slug].vue b/app/pages/[...slug].vue deleted file mode 100644 index 83b881f..0000000 --- a/app/pages/[...slug].vue +++ /dev/null @@ -1,91 +0,0 @@ -<script setup lang="ts"> -import { withoutTrailingSlash } from 'ufo' - -definePageMeta({ - layout: 'docs' -}) - -const route = useRoute() -const { toc, seo } = useAppConfig() - -const { data: page } = await useAsyncData(route.path, () => queryContent(route.path).findOne()) -if (!page.value) { - throw createError({ statusCode: 404, statusMessage: 'Page not found', fatal: true }) -} - -const { data: surround } = await useAsyncData(`${route.path}-surround`, () => queryContent() - .where({ _extension: 'md', navigation: { $ne: false } }) - .only(['title', 'description', '_path']) - .findSurround(withoutTrailingSlash(route.path)) -) - -useSeoMeta({ - title: page.value.title, - ogTitle: `${page.value.title} - ${seo?.siteName}`, - description: page.value.description, - ogDescription: page.value.description -}) - -defineOgImageComponent('Docs') - -const headline = computed(() => findPageHeadline(page.value)) - -const links = computed(() => [toc?.bottom?.edit && { - icon: 'i-heroicons-pencil-square', - label: 'Edit this page', - to: `${toc.bottom.edit}/${page?.value?._file}`, - target: '_blank' -}, ...(toc?.bottom?.links || [])].filter(Boolean)) -</script> - -<template> - <UPage> - <UPageHeader - :title="page.title" - :description="page.description" - :links="page.links" - :headline="headline" - /> - - <UPageBody prose> - <ContentRenderer - v-if="page.body" - :value="page" - /> - - <hr v-if="surround?.length"> - - <UContentSurround :surround="surround" /> - </UPageBody> - - <template - v-if="page.toc !== false" - #right - > - <UContentToc - :title="toc?.title" - :links="page.body?.toc?.links" - > - <template - v-if="toc?.bottom" - #bottom - > - <div - class="hidden lg:block space-y-6" - :class="{ '!mt-6': page.body?.toc?.links?.length }" - > - <UDivider - v-if="page.body?.toc?.links?.length" - type="dashed" - /> - - <UPageLinks - :title="toc.bottom.title" - :links="links" - /> - </div> - </template> - </UContentToc> - </template> - </UPage> -</template> diff --git a/app/pages/index.vue b/app/pages/index.vue deleted file mode 100644 index 3847c02..0000000 --- a/app/pages/index.vue +++ /dev/null @@ -1,71 +0,0 @@ -<script setup lang="ts"> -const { data: page } = await useAsyncData('index', () => queryContent('/').findOne()) - -useSeoMeta({ - titleTemplate: '', - title: page.value.title, - ogTitle: page.value.title, - description: page.value.description, - ogDescription: page.value.description -}) -</script> - -<template> - <div> - <ULandingHero - v-if="page.hero" - v-bind="page.hero" - > - <template #headline> - <UBadge - v-if="page.hero.headline" - variant="subtle" - size="lg" - class="relative rounded-full font-semibold" - > - <NuxtLink - :to="page.hero.headline.to" - target="_blank" - class="focus:outline-none" - tabindex="-1" - > - <span - class="absolute inset-0" - aria-hidden="true" - /> - </NuxtLink> - - {{ page.hero.headline.label }} - - <UIcon - v-if="page.hero.headline.icon" - :name="page.hero.headline.icon" - class="ml-1 w-4 h-4 pointer-events-none" - /> - </UBadge> - </template> - - <template #title> - <MDC :value="page.hero.title" /> - </template> - - <MDC - :value="page.hero.code" - class="prose prose-primary dark:prose-invert mx-auto" - /> - </ULandingHero> - - <ULandingSection - :title="page.features.title" - :links="page.features.links" - > - <UPageGrid> - <ULandingCard - v-for="(item, index) of page.features.items" - :key="index" - v-bind="item" - /> - </UPageGrid> - </ULandingSection> - </div> -</template> diff --git a/content/1.getting-started/1.index.md b/content/1.getting-started/1.index.md deleted file mode 100644 index 3b215c3..0000000 --- a/content/1.getting-started/1.index.md +++ /dev/null @@ -1,53 +0,0 @@ ---- -title: Introduction -description: Welcome to Nuxt UI Pro documentation template. ---- - -This template is a ready-to-use documentation template made with [Nuxt UI Pro](https://ui.nuxt.com/pro), a collection of premium components built on top of [Nuxt UI](https://ui.nuxt.com) to create beautiful & responsive Nuxt applications in minutes. - -There are already many websites based on this template: - -- [Nuxt](https://nuxt.com) - The Nuxt website -- [Nuxt UI](https://ui.nuxt.com) - The documentation of `@nuxt/ui` and `@nuxt/ui-pro` -- [Nuxt Image](https://image.nuxt.com) - The documentation of `@nuxt/image` -- [Nuxt Content](https://content.nuxt.com) - The documentation of `@nuxt/content` -- [Nuxt Devtools](https://devtools.nuxt.com) - The documentation of `@nuxt/devtools` -- [Nuxt Studio](https://nuxt.studio) - The pro version of Nuxt Content - -## Features - -- Powered by [Nuxt 3](https://nuxt.com) -- Built with [Nuxt UI](https://ui.nuxt.com) and [Nuxt UI Pro](https://ui.nuxt.com/pro) -- Write content with [MDC syntax](https://content.nuxt.com/usage/markdown) thanks to [Nuxt Content](https://content.nuxt.com) -- Compatible with [Nuxt Studio](https://nuxt.studio) -- Auto-generated sidebar navigation -- Full-Text Search out of the box -- Beautiful Typography styles -- Dark mode support -- And more... - -## Play online - -You can start playing with this template in your browser using our online sandboxes: - -::u-button ---- -class: mr-4 -icon: i-simple-icons-stackblitz -label: Play on StackBlitz -target: _blank -to: https://stackblitz.com/github/nuxt-ui-pro/docs/ ---- -:: - -::u-button ---- -class: mt-2 sm:mt-0 -icon: i-simple-icons-codesandbox -label: Play on CodeSandbox -target: _blank -to: https://codesandbox.io/s/github/nuxt-ui-pro/docs/ ---- -:: - -Or open [Nuxt UI playground](https://ui.nuxt.com/playground). diff --git a/content/1.getting-started/2.installation.md b/content/1.getting-started/2.installation.md deleted file mode 100644 index 99cbb4c..0000000 --- a/content/1.getting-started/2.installation.md +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: Installation -description: Get started with Nuxt UI Pro documentation template. ---- - -::callout ---- -icon: i-heroicons-light-bulb -target: _blank -to: https://nuxt.studio/themes/docs ---- -Use this template on Nuxt Studio and start your documentation in seconds. -:: - -## Quick Start - -You can start a fresh new project with: - -```bash [Terminal] -npx nuxi init -t github:nuxt-ui-pro/docs -``` - -or create a new repository from GitHub: - -1. Open <https://github.com/nuxt-ui-pro/docs> -2. Click on `Use this template` button -3. Enter repository name and click on `Create repository from template` button -4. Clone your new repository -5. Install dependencies with your favorite package manager -6. Start development server - -That's it! You can now start writing your documentation in the [`content/`](https://content.nuxt.com/usage/content-directory) directory 🚀 diff --git a/content/1.getting-started/3.usage.md b/content/1.getting-started/3.usage.md deleted file mode 100644 index 7de8e15..0000000 --- a/content/1.getting-started/3.usage.md +++ /dev/null @@ -1,142 +0,0 @@ ---- -title: Usage -description: Learn how to write and customize your documentation. ---- - -This is only a basic example of what you can achieve with [Nuxt UI Pro](https://ui.nuxt.com/pro/guide), you can tweak it to match your needs. The template uses several Nuxt modules underneath like [`@nuxt/content`](https://content.nuxt.com) for the content, [`@nuxtjs/fontaine`](https://github.com/nuxt-modules/fontaine) and [`@nuxtjs/google-fonts`](https://github.com/nuxt-modules/google-fonts) to change the font and [`nuxt-og-image`](https://nuxtseo.com/og-image/getting-started/installation) for social previews. - -::callout ---- -icon: i-heroicons-light-bulb -target: _blank -to: https://ui.nuxt.com/pro/guide/usage#structure ---- -Learn more on how to customize and structure a Nuxt UI Pro app! -:: - -## Writing content - -You can just start writing `.md` or `.yml` files in the [`content/`](https://content.nuxt.com/usage/content-directory) directory to have your pages updated. -The navigation will be automatically generated in the left aside and in the mobile menu. You will also be able to go through your content with full-text search. - -::callout{icon="i-heroicons-light-bulb"} -This template relies on a [catch-all route](https://nuxt.com/docs/guide/directory-structure/pages#catch-all-route) but you can achieve the same thing with the [document-driven mode](https://content.nuxt.com/document-driven/introduction). -:: - -## App Configuration - -In addition to `@nuxt/ui-pro` configuration through the `app.config.ts`, this template lets you customize the `Header`, `Footer` and the `Table of contents` components. - -### Header - -```ts [app.config.ts] -export default defineAppConfig({ - header: { - // Logo configuration - logo: { - // Light mode - light: { - src: '', - alt: '', - class: '' - }, - // Dark mode - dark: { - src: '', - alt: '', - class: '' - } - }, - // Show or hide the search bar - search: true, - // Show or hide the color mode button - colorMode: true, - // Customize links - links: [{ - icon: 'i-simple-icons-github', - to: 'https://github.com/nuxt-ui-pro/docs', - target: '_blank', - 'aria-label': 'Docs template on GitHub' - }] - } -}) -``` - -### Footer - -```ts [app.config.ts] -export default defineAppConfig({ - footer: { - // Update bottom left credits - credits: 'Copyright © 2023', - // Show or hide the color mode button - colorMode: false, - // Customize links - links: [{ - icon: 'i-simple-icons-nuxtdotjs', - to: 'https://nuxt.com', - target: '_blank', - 'aria-label': 'Nuxt Website' - }, { - icon: 'i-simple-icons-discord', - to: 'https://discord.com/invite/ps2h6QT', - target: '_blank', - 'aria-label': 'Nuxt UI on Discord' - }, { - icon: 'i-simple-icons-x', - to: 'https://x.com/nuxt_js', - target: '_blank', - 'aria-label': 'Nuxt on X' - }, { - icon: 'i-simple-icons-github', - to: 'https://github.com/nuxt/ui', - target: '_blank', - 'aria-label': 'Nuxt UI on GitHub' - }] - } -}) -``` - -### Table of contents - -```ts [app.config.ts] -export default defineAppConfig({ - toc: { - // Title of the main table of contents - title: 'Table of Contents', - // Bottom TOC configuration - bottom: { - // Title of the bottom table of contents - title: 'Community', - // URL of your repository content folder - edit: '', - // Customize links - links: [{ - icon: 'i-heroicons-star', - label: 'Star on GitHub', - to: 'https://github.com/nuxt/ui', - target: '_blank', - }, { - icon: 'i-heroicons-book-open', - label: 'Nuxt UI Pro docs', - to: 'https://ui.nuxt.com/pro/guide', - target: '_blank', - }, { - icon: 'i-simple-icons-nuxtdotjs', - label: 'Purchase a license', - to: 'https://ui.nuxt.com/pro/purchase', - target: '_blank', - }] - } - } -}) -``` - -::callout ---- -icon: i-heroicons-light-bulb -target: _blank -to: https://nuxt.studio/docs/developers/data#appconfigts ---- -A dedicated interface is provided to edit those configurations on Nuxt Studio. -:: diff --git a/content/1.getting-started/_dir.yml b/content/1.getting-started/_dir.yml deleted file mode 100644 index 8ce8605..0000000 --- a/content/1.getting-started/_dir.yml +++ /dev/null @@ -1 +0,0 @@ -title: Getting Started \ No newline at end of file diff --git a/content/index.yml b/content/index.yml deleted file mode 100644 index 0934e84..0000000 --- a/content/index.yml +++ /dev/null @@ -1,68 +0,0 @@ -title: 'Nuxt UI Pro - Docs template' -description: Nuxt UI Pro is a collection of premium Vue components built on top of Nuxt UI to create beautiful & responsive Nuxt applications in minutes. -navigation: false -hero: - title: 'Build your docs in seconds' - description: 'Create your documentation in seconds with this template!' - orientation: horizontal - headline: - label: Made with Nuxt UI Pro - to: https://ui.nuxt.com/pro - icon: i-heroicons-arrow-top-right-on-square-20-solid - links: - - label: Get started - icon: i-heroicons-arrow-right-20-solid - trailing: true - to: '/getting-started' - size: lg - - label: Use this template - icon: i-simple-icons-github - size: lg - color: gray - to: https://github.com/nuxt-ui-pro/docs - target: _blank - code: | - ```bash [Terminal] - npx nuxi init -t github:nuxt-ui-pro/docs - ``` -features: - title: 'All-in-one docs template' - links: - - label: 'Explore Nuxt UI Pro' - icon: 'i-simple-icons-nuxtdotjs' - trailingIcon: 'i-heroicons-arrow-right-20-solid' - color: 'gray' - to: 'https://ui.nuxt.com/pro' - target: '_blank' - size: lg - items: - - title: 'Nuxt 3' - description: 'Powered by Nuxt 3 for optimal performances and SEO.' - icon: 'i-simple-icons-nuxtdotjs' - to: 'https://nuxt.com' - target: '_blank' - - title: 'Markdown' - description: 'Write your pages with MDC thanks to Nuxt Content.' - icon: 'i-simple-icons-markdown' - to: 'https://content.nuxt.com' - target: '_blank' - - title: 'Nuxt UI' - description: 'Offers a very large set of full customizable components.' - icon: 'i-heroicons-sparkles-20-solid' - to: 'https://ui.nuxt.com' - target: '_blank' - - title: 'TypeScript' - description: 'A fully typed development experience.' - icon: 'i-simple-icons-typescript' - to: 'https://www.typescriptlang.org' - target: '_blank' - - title: 'Nuxt Studio' - description: 'Supported by Nuxt Studio for fast updates and previews.' - icon: 'i-simple-icons-nuxtdotjs' - to: 'https://nuxt.studio' - target: '_blank' - - title: 'Search' - description: 'A full-text search modal empowered by Fuse.js.' - icon: 'i-heroicons-magnifying-glass-20-solid' - to: 'https://ui.nuxt.com/pro/components/docs/docs-search' - target: '_blank' diff --git a/eslint.config.mjs b/eslint.config.mjs deleted file mode 100644 index 934c3a1..0000000 --- a/eslint.config.mjs +++ /dev/null @@ -1,6 +0,0 @@ -// @ts-check -import withNuxt from './.nuxt/eslint.config.mjs' - -export default withNuxt( - // Your custom configs here -) diff --git a/public/favicon.ico b/favicon.ico similarity index 100% rename from public/favicon.ico rename to favicon.ico diff --git a/getting-started/_payload.json b/getting-started/_payload.json new file mode 100644 index 0000000..2bada8d --- /dev/null +++ b/getting-started/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":304},["ShallowReactive",2],{"navigation":3,"/getting-started":57,"/getting-started-surround":300},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":6,"_dir":58,"_draft":60,"_partial":60,"_locale":61,"title":9,"description":62,"body":63,"_type":294,"_id":295,"_source":296,"_file":297,"_stem":298,"_extension":299},{"_path":59,"title":5},"/getting-started/_dir",false,"","Welcome to the VaahStore documentation",{"type":64,"children":65,"toc":287},"root",[66,74,81,151,157,266,271,276,282],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71],{"type":72,"value":73},"text","VaahStore is a cutting-edge, open-source headless e-commerce platform designed to revolutionize the online shopping experience. VaahStore offers a fast, efficient, and feature-rich solution for businesses of all sizes.",{"type":67,"tag":75,"props":76,"children":78},"h2",{"id":77},"key-features",[79],{"type":72,"value":80},"Key Features",{"type":67,"tag":82,"props":83,"children":84},"ul",{},[85,99,112,125,138],{"type":67,"tag":86,"props":87,"children":88},"li",{},[89,91],{"type":72,"value":90},"Headless Architecture\n",{"type":67,"tag":82,"props":92,"children":93},{},[94],{"type":67,"tag":86,"props":95,"children":96},{},[97],{"type":72,"value":98},"Unrestricted flexibility to build custom storefronts and integrate with any device or platform.",{"type":67,"tag":86,"props":100,"children":101},{},[102,104],{"type":72,"value":103},"Open-Source\n",{"type":67,"tag":82,"props":105,"children":106},{},[107],{"type":67,"tag":86,"props":108,"children":109},{},[110],{"type":72,"value":111},"Empowering developers to customize and extend the platform to meet specific needs.",{"type":67,"tag":86,"props":113,"children":114},{},[115,117],{"type":72,"value":116},"Fast and Efficient\n",{"type":67,"tag":82,"props":118,"children":119},{},[120],{"type":67,"tag":86,"props":121,"children":122},{},[123],{"type":72,"value":124},"Optimized performance for seamless user experiences.",{"type":67,"tag":86,"props":126,"children":127},{},[128,130],{"type":72,"value":129},"Easy to Use\n",{"type":67,"tag":82,"props":131,"children":132},{},[133],{"type":67,"tag":86,"props":134,"children":135},{},[136],{"type":72,"value":137},"Intuitive interface and developer-friendly tools for rapid development.",{"type":67,"tag":86,"props":139,"children":140},{},[141,143],{"type":72,"value":142},"Comprehensive Features\n",{"type":67,"tag":82,"props":144,"children":145},{},[146],{"type":67,"tag":86,"props":147,"children":148},{},[149],{"type":72,"value":150},"Built-in functionalities like product catalogs, shopping carts, checkout processes, and more.",{"type":67,"tag":75,"props":152,"children":154},{"id":153},"why-choose-vaahstore",[155],{"type":72,"value":156},"Why Choose VaahStore?",{"type":67,"tag":82,"props":158,"children":159},{},[160,181,201,220,247],{"type":67,"tag":86,"props":161,"children":162},{},[163,165],{"type":72,"value":164},"Unleash Your Creativity\n",{"type":67,"tag":82,"props":166,"children":167},{},[168],{"type":67,"tag":86,"props":169,"children":170},{},[171,173,179],{"type":72,"value":172},"Design ",{"type":67,"tag":174,"props":175,"children":176},"strong",{},[177],{"type":72,"value":178},"stunning, personalized storefronts without compromise",{"type":72,"value":180},".",{"type":67,"tag":86,"props":182,"children":183},{},[184,186],{"type":72,"value":185},"Skyrocket Your Sales\n",{"type":67,"tag":82,"props":187,"children":188},{},[189],{"type":67,"tag":86,"props":190,"children":191},{},[192,194,199],{"type":72,"value":193},"Deliver ",{"type":67,"tag":174,"props":195,"children":196},{},[197],{"type":72,"value":198},"blazing-fast",{"type":72,"value":200}," performance and seamless user experiences.",{"type":67,"tag":86,"props":202,"children":203},{},[204,206],{"type":72,"value":205},"Future-Proof Your Business\n",{"type":67,"tag":82,"props":207,"children":208},{},[209],{"type":67,"tag":86,"props":210,"children":211},{},[212,214,219],{"type":72,"value":213},"Built on the latest technologies, VaahStore ensures you ",{"type":67,"tag":174,"props":215,"children":216},{},[217],{"type":72,"value":218},"stay ahead of the curve",{"type":72,"value":180},{"type":67,"tag":86,"props":221,"children":222},{},[223,225],{"type":72,"value":224},"Take Control of Your E-commerce Destiny\n",{"type":67,"tag":82,"props":226,"children":227},{},[228],{"type":67,"tag":86,"props":229,"children":230},{},[231,233,238,240,245],{"type":72,"value":232},"With complete ",{"type":67,"tag":174,"props":234,"children":235},{},[236],{"type":72,"value":237},"customization",{"type":72,"value":239}," and ",{"type":67,"tag":174,"props":241,"children":242},{},[243],{"type":72,"value":244},"extensibility",{"type":72,"value":246},", you're in the driver's seat.",{"type":67,"tag":86,"props":248,"children":249},{},[250,252],{"type":72,"value":251},"Join a Thriving Community\n",{"type":67,"tag":82,"props":253,"children":254},{},[255],{"type":67,"tag":86,"props":256,"children":257},{},[258,260,265],{"type":72,"value":259},"Benefit from a global community of developers, ",{"type":67,"tag":174,"props":261,"children":262},{},[263],{"type":72,"value":264},"sharing knowledge and innovation",{"type":72,"value":180},{"type":67,"tag":75,"props":267,"children":269},{"id":268},"getting-started",[270],{"type":72,"value":5},{"type":67,"tag":68,"props":272,"children":273},{},[274],{"type":72,"value":275},"To begin your journey with VaahStore, refer to our comprehensive documentation and community resources. Our dedicated team is committed to providing support and guidance throughout the development process.",{"type":67,"tag":75,"props":277,"children":279},{"id":278},"join-the-vaahstore-community",[280],{"type":72,"value":281},"Join the VaahStore Community",{"type":67,"tag":68,"props":283,"children":284},{},[285],{"type":72,"value":286},"Connect with fellow developers, share knowledge, and contribute to the future of e-commerce. Join our GitHub community to stay updated on the latest developments and best practices.",{"title":61,"searchDepth":288,"depth":288,"links":289},2,[290,291,292,293],{"id":77,"depth":288,"text":80},{"id":153,"depth":288,"text":156},{"id":268,"depth":288,"text":5},{"id":278,"depth":288,"text":281},"markdown","content:1.getting-started:1.index.md","content","1.getting-started/1.index.md","1.getting-started/1.index","md",[301,302],null,{"_path":12,"title":11,"description":303},"Let's keep it light and friendly, but serious about respect!",1741786570687] \ No newline at end of file diff --git a/getting-started/code-of-conduct/_payload.json b/getting-started/code-of-conduct/_payload.json new file mode 100644 index 0000000..8413fd8 --- /dev/null +++ b/getting-started/code-of-conduct/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":210},["ShallowReactive",2],{"navigation":3,"/getting-started/code-of-conduct":57,"/getting-started/code-of-conduct-surround":205},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":12,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":11,"description":61,"body":62,"_type":199,"_id":200,"_source":201,"_file":202,"_stem":203,"_extension":204},"getting-started",false,"","Let's keep it light and friendly, but serious about respect!",{"type":63,"children":64,"toc":192},"root",[65,73,80,126,132,165,171,176,182,187],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70],{"type":71,"value":72},"text","We want our community to be a fun and welcoming place for everyone. Here are a few guidelines to help us maintain that:",{"type":66,"tag":74,"props":75,"children":77},"h2",{"id":76},"play-nice",[78],{"type":71,"value":79},"Play Nice",{"type":66,"tag":81,"props":82,"children":83},"ul",{},[84,96,106,116],{"type":66,"tag":85,"props":86,"children":87},"li",{},[88,94],{"type":66,"tag":89,"props":90,"children":91},"strong",{},[92],{"type":71,"value":93},"No cyberbullying or trolling.",{"type":71,"value":95}," (We're all friends here, even if we disagree.)",{"type":66,"tag":85,"props":97,"children":98},{},[99,104],{"type":66,"tag":89,"props":100,"children":101},{},[102],{"type":71,"value":103},"Keep it clean.",{"type":71,"value":105}," (No offensive language or inappropriate content, please.)",{"type":66,"tag":85,"props":107,"children":108},{},[109,114],{"type":66,"tag":89,"props":110,"children":111},{},[112],{"type":71,"value":113},"Respect everyone's opinions.",{"type":71,"value":115}," (Even if they're really wrong.)",{"type":66,"tag":85,"props":117,"children":118},{},[119,124],{"type":66,"tag":89,"props":120,"children":121},{},[122],{"type":71,"value":123},"Be patient and understanding.",{"type":71,"value":125}," (We're all human, and sometimes we make mistakes.)",{"type":66,"tag":74,"props":127,"children":129},{"id":128},"unacceptable-behavior",[130],{"type":71,"value":131},"Unacceptable Behavior",{"type":66,"tag":81,"props":133,"children":134},{},[135,145,155],{"type":66,"tag":85,"props":136,"children":137},{},[138,143],{"type":66,"tag":89,"props":139,"children":140},{},[141],{"type":71,"value":142},"No bullying or hate speech.",{"type":71,"value":144}," (Seriously, it's not cool.)",{"type":66,"tag":85,"props":146,"children":147},{},[148,153],{"type":66,"tag":89,"props":149,"children":150},{},[151],{"type":71,"value":152},"Don't spam or troll.",{"type":71,"value":154}," (It's annoying, and nobody likes an annoying bot.)",{"type":66,"tag":85,"props":156,"children":157},{},[158,163],{"type":66,"tag":89,"props":159,"children":160},{},[161],{"type":71,"value":162},"Respect people's privacy.",{"type":71,"value":164}," (Keep your snooping to a minimum.)",{"type":66,"tag":74,"props":166,"children":168},{"id":167},"if-somethings-off",[169],{"type":71,"value":170},"If Something's Off",{"type":66,"tag":67,"props":172,"children":173},{},[174],{"type":71,"value":175},"If you see something that doesn't feel right, please let us know. We'll investigate and fix or take appropriate action.",{"type":66,"tag":74,"props":177,"children":179},{"id":178},"enforcement",[180],{"type":71,"value":181},"Enforcement",{"type":66,"tag":67,"props":183,"children":184},{},[185],{"type":71,"value":186},"We reserve the right to take action against individuals who violate this code of conduct, including warnings, temporary bans, or permanent bans.",{"type":66,"tag":67,"props":188,"children":189},{},[190],{"type":71,"value":191},"By participating in our community, you agree to abide by this code of conduct.",{"title":60,"searchDepth":193,"depth":193,"links":194},2,[195,196,197,198],{"id":76,"depth":193,"text":79},{"id":128,"depth":193,"text":131},{"id":167,"depth":193,"text":170},{"id":178,"depth":193,"text":181},"markdown","content:1.getting-started:2.code-of-conduct.md","content","1.getting-started/2.code-of-conduct.md","1.getting-started/2.code-of-conduct","md",[206,208],{"_path":6,"title":9,"description":207},"Welcome to the VaahStore documentation",{"_path":19,"title":9,"description":209},"Starting with Mobile App Onboarding",1741786570868] \ No newline at end of file diff --git a/getting-started/code-of-conduct/index.html b/getting-started/code-of-conduct/index.html new file mode 100644 index 0000000..07b48e9 --- /dev/null +++ b/getting-started/code-of-conduct/index.html @@ -0,0 +1,87 @@ +<!DOCTYPE html><html lang="en" data-capo=""><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><style id="nuxt-ui-colors">:root { +--color-primary-50: 239 253 245; +--color-primary-100: 217 251 232; +--color-primary-200: 179 245 209; +--color-primary-300: 117 237 174; +--color-primary-400: 0 220 130; +--color-primary-500: 0 193 106; +--color-primary-600: 0 161 85; +--color-primary-700: 0 127 69; +--color-primary-800: 1 101 56; +--color-primary-900: 10 83 49; +--color-primary-950: 5 46 22; +--color-primary-DEFAULT: var(--color-primary-500); + +--color-gray-50: 248 250 252; +--color-gray-100: 241 245 249; +--color-gray-200: 226 232 240; +--color-gray-300: 203 213 225; +--color-gray-400: 148 163 184; +--color-gray-500: 100 116 139; +--color-gray-600: 71 85 105; +--color-gray-700: 51 65 85; +--color-gray-800: 30 41 59; +--color-gray-900: 15 23 42; +--color-gray-950: 2 6 23; +} + +.dark { + --color-primary-DEFAULT: var(--color-primary-400); +} +</style><style id="nuxt-ui-variables">:root { + --header-height: 4rem; + + --ui-background: 255 255 255; +--ui-foreground: var(--color-gray-700); +} + +.dark { + --ui-background: var(--color-gray-900); +--ui-foreground: var(--color-gray-200); +}</style><title>Code of Conduct - Nuxt UI Pro - Docs template
Getting Started

Code of Conduct

Let's keep it light and friendly, but serious about respect!

We want our community to be a fun and welcoming place for everyone. Here are a few guidelines to help us maintain that:

Play Nice

  • No cyberbullying or trolling. (We're all friends here, even if we disagree.)
  • Keep it clean. (No offensive language or inappropriate content, please.)
  • Respect everyone's opinions. (Even if they're really wrong.)
  • Be patient and understanding. (We're all human, and sometimes we make mistakes.)

Unacceptable Behavior

  • No bullying or hate speech. (Seriously, it's not cool.)
  • Don't spam or troll. (It's annoying, and nobody likes an annoying bot.)
  • Respect people's privacy. (Keep your snooping to a minimum.)

If Something's Off

If you see something that doesn't feel right, please let us know. We'll investigate and fix or take appropriate action.

Enforcement

We reserve the right to take action against individuals who violate this code of conduct, including warnings, temporary bans, or permanent bans.

By participating in our community, you agree to abide by this code of conduct.


Copyright © 2023
\ No newline at end of file diff --git a/getting-started/index.html b/getting-started/index.html new file mode 100644 index 0000000..a999058 --- /dev/null +++ b/getting-started/index.html @@ -0,0 +1,97 @@ +Introduction - Nuxt UI Pro - Docs template
Getting Started

Introduction

Welcome to the VaahStore documentation

VaahStore is a cutting-edge, open-source headless e-commerce platform designed to revolutionize the online shopping experience. VaahStore offers a fast, efficient, and feature-rich solution for businesses of all sizes.

Key Features

  • Headless Architecture +
    • Unrestricted flexibility to build custom storefronts and integrate with any device or platform.
  • Open-Source +
    • Empowering developers to customize and extend the platform to meet specific needs.
  • Fast and Efficient +
    • Optimized performance for seamless user experiences.
  • Easy to Use +
    • Intuitive interface and developer-friendly tools for rapid development.
  • Comprehensive Features +
    • Built-in functionalities like product catalogs, shopping carts, checkout processes, and more.

Why Choose VaahStore?

  • Unleash Your Creativity +
    • Design stunning, personalized storefronts without compromise.
  • Skyrocket Your Sales +
    • Deliver blazing-fast performance and seamless user experiences.
  • Future-Proof Your Business +
    • Built on the latest technologies, VaahStore ensures you stay ahead of the curve.
  • Take Control of Your E-commerce Destiny +
    • With complete customization and extensibility, you're in the driver's seat.
  • Join a Thriving Community +
    • Benefit from a global community of developers, sharing knowledge and innovation.

Getting Started

To begin your journey with VaahStore, refer to our comprehensive documentation and community resources. Our dedicated team is committed to providing support and guidance throughout the development process.

Join the VaahStore Community

Connect with fellow developers, share knowledge, and contribute to the future of e-commerce. Join our GitHub community to stay updated on the latest developments and best practices.


Copyright © 2023
\ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..9754c91 --- /dev/null +++ b/index.html @@ -0,0 +1,91 @@ +Nuxt UI Pro - Docs template
Made with Nuxt UI Pro

Build your docs in seconds

Create your documentation in seconds with this template!
Terminal
npx nuxi init -t github:nuxt-ui-pro/docs
+

All-in-one docs template

Nuxt 3

Powered by Nuxt 3 for optimal performances and SEO.

Markdown

Write your pages with MDC thanks to Nuxt Content.

Nuxt UI

Offers a very large set of full customizable components.

TypeScript

A fully typed development experience.

Nuxt Studio

Supported by Nuxt Studio for fast updates and previews.

Search

A full-text search modal empowered by Fuse.js.
Copyright © 2023
\ No newline at end of file diff --git a/mobile-app/onboarding/_payload.json b/mobile-app/onboarding/_payload.json new file mode 100644 index 0000000..3b19a94 --- /dev/null +++ b/mobile-app/onboarding/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":231},["ShallowReactive",2],{"navigation":3,"/mobile-app/onboarding":57,"/mobile-app/onboarding-surround":226},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":19,"_dir":58,"_draft":60,"_partial":60,"_locale":61,"title":9,"description":62,"body":63,"_type":220,"_id":221,"_source":222,"_file":223,"_stem":224,"_extension":225},{"_path":59,"title":18},"/mobile-app/onboarding/_dir",false,"","Starting with Mobile App Onboarding",{"type":64,"children":65,"toc":216},"root",[66,74,81],{"type":67,"tag":68,"props":69,"children":70},"element","p",{},[71],{"type":72,"value":73},"text","VaahStore Mobile App is a feature-rich mobile application, designed to provide a seamless shopping experience on smartphones and tablets. It leverages the power of the VaahStore backend API to offer a wide range of features.",{"type":67,"tag":75,"props":76,"children":78},"h2",{"id":77},"features",[79],{"type":72,"value":80},"Features",{"type":67,"tag":82,"props":83,"children":84},"ul",{},[85,99,112,125,138,151,164,177,190,203],{"type":67,"tag":86,"props":87,"children":88},"li",{},[89,91],{"type":72,"value":90},"Product Browsing\n",{"type":67,"tag":82,"props":92,"children":93},{},[94],{"type":67,"tag":86,"props":95,"children":96},{},[97],{"type":72,"value":98},"Explore a vast catalog of products, categorized and filtered for easy navigation.",{"type":67,"tag":86,"props":100,"children":101},{},[102,104],{"type":72,"value":103},"Product Details\n",{"type":67,"tag":82,"props":105,"children":106},{},[107],{"type":67,"tag":86,"props":108,"children":109},{},[110],{"type":72,"value":111},"View detailed product information, including high-quality images, descriptions, and customer reviews.",{"type":67,"tag":86,"props":113,"children":114},{},[115,117],{"type":72,"value":116},"Shopping Cart\n",{"type":67,"tag":82,"props":118,"children":119},{},[120],{"type":67,"tag":86,"props":121,"children":122},{},[123],{"type":72,"value":124},"Add products to the cart, modify quantities, and apply discounts.",{"type":67,"tag":86,"props":126,"children":127},{},[128,130],{"type":72,"value":129},"Secure Checkout\n",{"type":67,"tag":82,"props":131,"children":132},{},[133],{"type":67,"tag":86,"props":134,"children":135},{},[136],{"type":72,"value":137},"Process payments securely using various payment methods.",{"type":67,"tag":86,"props":139,"children":140},{},[141,143],{"type":72,"value":142},"Order Tracking\n",{"type":67,"tag":82,"props":144,"children":145},{},[146],{"type":67,"tag":86,"props":147,"children":148},{},[149],{"type":72,"value":150},"Track the status of orders, from placement to delivery.",{"type":67,"tag":86,"props":152,"children":153},{},[154,156],{"type":72,"value":155},"User Accounts\n",{"type":67,"tag":82,"props":157,"children":158},{},[159],{"type":67,"tag":86,"props":160,"children":161},{},[162],{"type":72,"value":163},"Create and manage user accounts, including address book, order history, and wishlists.",{"type":67,"tag":86,"props":165,"children":166},{},[167,169],{"type":72,"value":168},"Push Notifications\n",{"type":67,"tag":82,"props":170,"children":171},{},[172],{"type":67,"tag":86,"props":173,"children":174},{},[175],{"type":72,"value":176},"Receive personalized notifications for order updates, promotions, and new arrivals.",{"type":67,"tag":86,"props":178,"children":179},{},[180,182],{"type":72,"value":181},"Recommendations\n",{"type":67,"tag":82,"props":183,"children":184},{},[185],{"type":67,"tag":86,"props":186,"children":187},{},[188],{"type":72,"value":189},"Personalized Recommendations to cater each individual",{"type":67,"tag":86,"props":191,"children":192},{},[193,195],{"type":72,"value":194},"Robust Logging and Analytics\n",{"type":67,"tag":82,"props":196,"children":197},{},[198],{"type":67,"tag":86,"props":199,"children":200},{},[201],{"type":72,"value":202},"Monitor app performance & issues. Also collect insights about what users prefer.",{"type":67,"tag":86,"props":204,"children":205},{},[206,208],{"type":72,"value":207},"And Much More\n",{"type":67,"tag":82,"props":209,"children":210},{},[211],{"type":67,"tag":86,"props":212,"children":213},{},[214],{"type":72,"value":215},"All the things you think should be there, If not let us know and we will try to fit them in our roadmap.",{"title":61,"searchDepth":217,"depth":217,"links":218},2,[219],{"id":77,"depth":217,"text":80},"markdown","content:2.mobile-app:1.onboarding:1.index.md","content","2.mobile-app/1.onboarding/1.index.md","2.mobile-app/1.onboarding/1.index","md",[227,229],{"_path":12,"title":11,"description":228},"Let's keep it light and friendly, but serious about respect!",{"_path":24,"title":23,"description":230},"Technologies powering our platform.",1741786570868] \ No newline at end of file diff --git a/mobile-app/onboarding/index.html b/mobile-app/onboarding/index.html new file mode 100644 index 0000000..41a124a --- /dev/null +++ b/mobile-app/onboarding/index.html @@ -0,0 +1,97 @@ +Introduction - Nuxt UI Pro - Docs template
Onboarding

Introduction

Starting with Mobile App Onboarding

VaahStore Mobile App is a feature-rich mobile application, designed to provide a seamless shopping experience on smartphones and tablets. It leverages the power of the VaahStore backend API to offer a wide range of features.

Features

  • Product Browsing +
    • Explore a vast catalog of products, categorized and filtered for easy navigation.
  • Product Details +
    • View detailed product information, including high-quality images, descriptions, and customer reviews.
  • Shopping Cart +
    • Add products to the cart, modify quantities, and apply discounts.
  • Secure Checkout +
    • Process payments securely using various payment methods.
  • Order Tracking +
    • Track the status of orders, from placement to delivery.
  • User Accounts +
    • Create and manage user accounts, including address book, order history, and wishlists.
  • Push Notifications +
    • Receive personalized notifications for order updates, promotions, and new arrivals.
  • Recommendations +
    • Personalized Recommendations to cater each individual
  • Robust Logging and Analytics +
    • Monitor app performance & issues. Also collect insights about what users prefer.
  • And Much More +
    • All the things you think should be there, If not let us know and we will try to fit them in our roadmap.

Copyright © 2023
\ No newline at end of file diff --git a/mobile-app/onboarding/tech-stack/_payload.json b/mobile-app/onboarding/tech-stack/_payload.json new file mode 100644 index 0000000..c62fd7f --- /dev/null +++ b/mobile-app/onboarding/tech-stack/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":89},["ShallowReactive",2],{"navigation":3,"/mobile-app/onboarding/tech-stack":57,"/mobile-app/onboarding/tech-stack-surround":84},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":24,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":23,"description":61,"body":62,"_type":78,"_id":79,"_source":80,"_file":81,"_stem":82,"_extension":83},"onboarding",false,"","Technologies powering our platform.",{"type":63,"children":64,"toc":74},"root",[65],{"type":66,"tag":67,"props":68,"children":70},"element","h2",{"id":69},"todo",[71],{"type":72,"value":73},"text","TODO:",{"title":60,"searchDepth":75,"depth":75,"links":76},2,[77],{"id":69,"depth":75,"text":73},"markdown","content:2.mobile-app:1.onboarding:2.tech-stack.md","content","2.mobile-app/1.onboarding/2.tech-stack.md","2.mobile-app/1.onboarding/2.tech-stack","md",[85,87],{"_path":19,"title":9,"description":86},"Starting with Mobile App Onboarding",{"_path":27,"title":9,"description":88},"Thought process behind reaching to the decisions",1741786570868] \ No newline at end of file diff --git a/mobile-app/onboarding/tech-stack/index.html b/mobile-app/onboarding/tech-stack/index.html new file mode 100644 index 0000000..8c449c4 --- /dev/null +++ b/mobile-app/onboarding/tech-stack/index.html @@ -0,0 +1,87 @@ +Tech Stack - Nuxt UI Pro - Docs template
\ No newline at end of file diff --git a/mobile-app/poc/_payload.json b/mobile-app/poc/_payload.json new file mode 100644 index 0000000..c4cc9d5 --- /dev/null +++ b/mobile-app/poc/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":98},["ShallowReactive",2],{"navigation":3,"/mobile-app/poc":57,"/mobile-app/poc-surround":93},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":41,"_dir":58,"_draft":60,"_partial":60,"_locale":61,"title":9,"description":40,"body":62,"_type":87,"_id":88,"_source":89,"_file":90,"_stem":91,"_extension":92},{"_path":59,"title":40},"/mobile-app/poc/_dir",false,"",{"type":63,"children":64,"toc":83},"root",[65,74],{"type":66,"tag":67,"props":68,"children":70},"element","h2",{"id":69},"topics-this-section-will-cover",[71],{"type":72,"value":73},"text","Topics this section will cover",{"type":66,"tag":75,"props":76,"children":77},"ul",{},[78],{"type":66,"tag":79,"props":80,"children":81},"li",{},[82],{"type":72,"value":45},{"title":61,"searchDepth":84,"depth":84,"links":85},2,[86],{"id":69,"depth":84,"text":73},"markdown","content:2.mobile-app:3.poc:1.index.md","content","2.mobile-app/3.poc/1.index.md","2.mobile-app/3.poc/1.index","md",[94,96],{"_path":38,"title":37,"description":95},"Managing State in the Project",{"_path":46,"title":45,"description":97},null,1741786570869] \ No newline at end of file diff --git a/mobile-app/poc/architecture/_payload.json b/mobile-app/poc/architecture/_payload.json new file mode 100644 index 0000000..fbcf2f5 --- /dev/null +++ b/mobile-app/poc/architecture/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":5104},["ShallowReactive",2],{"navigation":3,"/mobile-app/poc/architecture":57,"/mobile-app/poc/architecture-surround":5101},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":46,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":45,"description":61,"body":62,"_type":5095,"_id":5096,"_source":5097,"_file":5098,"_stem":5099,"_extension":5100},"poc",false,"",null,{"type":63,"children":64,"toc":5066},"root",[65,77,84,94,99,303,309,314,321,427,433,462,571,577,684,693,966,972,1065,1071,1076,1081,1149,1154,1197,1630,1635,1649,1655,1660,1666,1717,1722,1793,2731,2737,2742,2747,2825,2831,2844,2851,2883,2889,2907,2912,2970,2975,2984,3054,3647,3656,3664,3942,3951,3959,4234,4239,4244,4325,4341,4451,4467,4550,4566,4714,4720,4726,4823,4895,4901,5016,5022,5060],{"type":66,"tag":67,"props":68,"children":70},"element","pre",{"code":69},"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n",[71],{"type":66,"tag":72,"props":73,"children":74},"code",{"__ignoreMap":60},[75],{"type":76,"value":69},"text",{"type":66,"tag":78,"props":79,"children":81},"h2",{"id":80},"main-entry-point",[82],{"type":76,"value":83},"Main entry point",{"type":66,"tag":85,"props":86,"children":87},"p",{},[88],{"type":66,"tag":72,"props":89,"children":91},{"className":90},[],[92],{"type":76,"value":93},"app_config.dart",{"type":66,"tag":85,"props":95,"children":96},{},[97],{"type":76,"value":98},"This file is the main entry point of the application. It initializes the DependencyManager and sets up the application's initial configuration, including system UI styles. It then renders a FutureBuilder to handle the asynchronous initialization process of the DependencyManager. Based on the initialization result, it displays a loading screen, an error screen, or the main application.",{"type":66,"tag":67,"props":100,"children":104},{"code":101,"language":102,"meta":60,"className":103,"style":60}," return FutureBuilder\u003Cbool>(\n future: DependencyManager.init(),\n builder: (context, snapshot) {\n if (snapshot.connectionState == ConnectionState.waiting) {\n return const _DefaultAppConfig(\n child: _SplashScreen(),\n );\n } else if (snapshot.hasError) {\n return const _DefaultAppConfig(\n child: _HardRestartScreen(),\n );\n } else if (snapshot.hasData) {\n return _AppConfigImpl(\n env: env,\n );\n } else {\n return const _DefaultAppConfig(\n child: _SomethingWentWrongScreen(),\n );\n }\n },\n );\n","dart","language-dart shiki shiki-themes material-theme-lighter material-theme material-theme-palenight",[105],{"type":66,"tag":72,"props":106,"children":107},{"__ignoreMap":60},[108,119,128,137,146,155,164,173,182,190,199,207,216,225,234,242,251,259,268,276,285,294],{"type":66,"tag":109,"props":110,"children":113},"span",{"class":111,"line":112},"line",1,[114],{"type":66,"tag":109,"props":115,"children":116},{},[117],{"type":76,"value":118}," return FutureBuilder\u003Cbool>(\n",{"type":66,"tag":109,"props":120,"children":122},{"class":111,"line":121},2,[123],{"type":66,"tag":109,"props":124,"children":125},{},[126],{"type":76,"value":127}," future: DependencyManager.init(),\n",{"type":66,"tag":109,"props":129,"children":131},{"class":111,"line":130},3,[132],{"type":66,"tag":109,"props":133,"children":134},{},[135],{"type":76,"value":136}," builder: (context, snapshot) {\n",{"type":66,"tag":109,"props":138,"children":140},{"class":111,"line":139},4,[141],{"type":66,"tag":109,"props":142,"children":143},{},[144],{"type":76,"value":145}," if (snapshot.connectionState == ConnectionState.waiting) {\n",{"type":66,"tag":109,"props":147,"children":149},{"class":111,"line":148},5,[150],{"type":66,"tag":109,"props":151,"children":152},{},[153],{"type":76,"value":154}," return const _DefaultAppConfig(\n",{"type":66,"tag":109,"props":156,"children":158},{"class":111,"line":157},6,[159],{"type":66,"tag":109,"props":160,"children":161},{},[162],{"type":76,"value":163}," child: _SplashScreen(),\n",{"type":66,"tag":109,"props":165,"children":167},{"class":111,"line":166},7,[168],{"type":66,"tag":109,"props":169,"children":170},{},[171],{"type":76,"value":172}," );\n",{"type":66,"tag":109,"props":174,"children":176},{"class":111,"line":175},8,[177],{"type":66,"tag":109,"props":178,"children":179},{},[180],{"type":76,"value":181}," } else if (snapshot.hasError) {\n",{"type":66,"tag":109,"props":183,"children":185},{"class":111,"line":184},9,[186],{"type":66,"tag":109,"props":187,"children":188},{},[189],{"type":76,"value":154},{"type":66,"tag":109,"props":191,"children":193},{"class":111,"line":192},10,[194],{"type":66,"tag":109,"props":195,"children":196},{},[197],{"type":76,"value":198}," child: _HardRestartScreen(),\n",{"type":66,"tag":109,"props":200,"children":202},{"class":111,"line":201},11,[203],{"type":66,"tag":109,"props":204,"children":205},{},[206],{"type":76,"value":172},{"type":66,"tag":109,"props":208,"children":210},{"class":111,"line":209},12,[211],{"type":66,"tag":109,"props":212,"children":213},{},[214],{"type":76,"value":215}," } else if (snapshot.hasData) {\n",{"type":66,"tag":109,"props":217,"children":219},{"class":111,"line":218},13,[220],{"type":66,"tag":109,"props":221,"children":222},{},[223],{"type":76,"value":224}," return _AppConfigImpl(\n",{"type":66,"tag":109,"props":226,"children":228},{"class":111,"line":227},14,[229],{"type":66,"tag":109,"props":230,"children":231},{},[232],{"type":76,"value":233}," env: env,\n",{"type":66,"tag":109,"props":235,"children":237},{"class":111,"line":236},15,[238],{"type":66,"tag":109,"props":239,"children":240},{},[241],{"type":76,"value":172},{"type":66,"tag":109,"props":243,"children":245},{"class":111,"line":244},16,[246],{"type":66,"tag":109,"props":247,"children":248},{},[249],{"type":76,"value":250}," } else {\n",{"type":66,"tag":109,"props":252,"children":254},{"class":111,"line":253},17,[255],{"type":66,"tag":109,"props":256,"children":257},{},[258],{"type":76,"value":154},{"type":66,"tag":109,"props":260,"children":262},{"class":111,"line":261},18,[263],{"type":66,"tag":109,"props":264,"children":265},{},[266],{"type":76,"value":267}," child: _SomethingWentWrongScreen(),\n",{"type":66,"tag":109,"props":269,"children":271},{"class":111,"line":270},19,[272],{"type":66,"tag":109,"props":273,"children":274},{},[275],{"type":76,"value":172},{"type":66,"tag":109,"props":277,"children":279},{"class":111,"line":278},20,[280],{"type":66,"tag":109,"props":281,"children":282},{},[283],{"type":76,"value":284}," }\n",{"type":66,"tag":109,"props":286,"children":288},{"class":111,"line":287},21,[289],{"type":66,"tag":109,"props":290,"children":291},{},[292],{"type":76,"value":293}," },\n",{"type":66,"tag":109,"props":295,"children":297},{"class":111,"line":296},22,[298],{"type":66,"tag":109,"props":299,"children":300},{},[301],{"type":76,"value":302}," );\n",{"type":66,"tag":78,"props":304,"children":306},{"id":305},"dependency-manager",[307],{"type":76,"value":308},"Dependency Manager",{"type":66,"tag":85,"props":310,"children":311},{},[312],{"type":76,"value":313},"the DependencyManager acts as a central hub for managing application-wide dependencies.",{"type":66,"tag":315,"props":316,"children":318},"h3",{"id":317},"key-points",[319],{"type":76,"value":320},"Key Points",{"type":66,"tag":322,"props":323,"children":324},"ul",{},[325,368,401,414],{"type":66,"tag":326,"props":327,"children":328},"li",{},[329,331],{"type":76,"value":330},"Focus on Repositories\n",{"type":66,"tag":322,"props":332,"children":333},{},[334,339],{"type":66,"tag":326,"props":335,"children":336},{},[337],{"type":76,"value":338},"The DependencyManager primarily initializes and exposes repositories. Repositories encapsulate data access logic, often combining data from multiple services.",{"type":66,"tag":326,"props":340,"children":341},{},[342,344,350,352,358,360,366],{"type":76,"value":343},"For instance, ",{"type":66,"tag":72,"props":345,"children":347},{"className":346},[],[348],{"type":76,"value":349},"AuthenticationRepository",{"type":76,"value":351}," combines data from ",{"type":66,"tag":72,"props":353,"children":355},{"className":354},[],[356],{"type":76,"value":357},"ApiService",{"type":76,"value":359}," and ",{"type":66,"tag":72,"props":361,"children":363},{"className":362},[],[364],{"type":76,"value":365},"StorageService",{"type":76,"value":367},". This separation of concerns promotes cleaner code and easier testing.",{"type":66,"tag":326,"props":369,"children":370},{},[371,373],{"type":76,"value":372},"BLoCs and Repositories\n",{"type":66,"tag":322,"props":374,"children":375},{},[376,381],{"type":66,"tag":326,"props":377,"children":378},{},[379],{"type":76,"value":380},"BLoCs, which manage application state and logic, can leverage the DependencyManager to access the required repositories.",{"type":66,"tag":326,"props":382,"children":383},{},[384,386,392,394,399],{"type":76,"value":385},"For instance, an ",{"type":66,"tag":72,"props":387,"children":389},{"className":388},[],[390],{"type":76,"value":391},"AuthenticationBloc",{"type":76,"value":393}," might depend on the ",{"type":66,"tag":72,"props":395,"children":397},{"className":396},[],[398],{"type":76,"value":349},{"type":76,"value":400},".",{"type":66,"tag":326,"props":402,"children":403},{},[404,406],{"type":76,"value":405},"Modular Design\n",{"type":66,"tag":322,"props":407,"children":408},{},[409],{"type":66,"tag":326,"props":410,"children":411},{},[412],{"type":76,"value":413},"This approach promotes modularity by isolating dependency creation logic within the DependencyManager. BLoCs and other components don't need to be aware of how their dependencies are created, making the code more maintainable and testable.",{"type":66,"tag":326,"props":415,"children":416},{},[417,419],{"type":76,"value":418},"Singleton Pattern\n",{"type":66,"tag":322,"props":420,"children":421},{},[422],{"type":66,"tag":326,"props":423,"children":424},{},[425],{"type":76,"value":426},"The DependencyManager utilizes the Singleton pattern to ensure only one instance exists throughout the application's lifetime. This guarantees consistent access to the initialized dependencies.",{"type":66,"tag":315,"props":428,"children":430},{"id":429},"issues-with-this-approach",[431],{"type":76,"value":432},"Issues with this Approach",{"type":66,"tag":322,"props":434,"children":435},{},[436],{"type":66,"tag":326,"props":437,"children":438},{},[439,441],{"type":76,"value":440},"Circular Dependency Issue\n",{"type":66,"tag":322,"props":442,"children":443},{},[444,449],{"type":66,"tag":326,"props":445,"children":446},{},[447],{"type":76,"value":448},"It's something when first thing depends on second and second depends on first, creating a deadlock.",{"type":66,"tag":326,"props":450,"children":451},{},[452,454,461],{"type":76,"value":453},"Solution to this I explain later ",{"type":66,"tag":455,"props":456,"children":458},"a",{"href":457},"#circular-dependency",[459],{"type":76,"value":460},"here",{"type":76,"value":400},{"type":66,"tag":67,"props":463,"children":465},{"code":464,"language":102,"meta":60,"className":103,"style":60},"    final vaahApiService = ApiService(\n      interceptors: [\n        ApiTokenInterceptor(() => authenticationRepository),\n      ],\n    );\n\n    final authenticationService = AuthenticationService.vaah(\n      apiService: vaahApiService,\n    );\n\n    authenticationRepository = AuthenticationRepository(\n      authenticationService: authenticationService,\n    );\n",[466],{"type":66,"tag":72,"props":467,"children":468},{"__ignoreMap":60},[469,477,485,493,501,509,518,526,534,541,548,556,564],{"type":66,"tag":109,"props":470,"children":471},{"class":111,"line":112},[472],{"type":66,"tag":109,"props":473,"children":474},{},[475],{"type":76,"value":476},"    final vaahApiService = ApiService(\n",{"type":66,"tag":109,"props":478,"children":479},{"class":111,"line":121},[480],{"type":66,"tag":109,"props":481,"children":482},{},[483],{"type":76,"value":484},"      interceptors: [\n",{"type":66,"tag":109,"props":486,"children":487},{"class":111,"line":130},[488],{"type":66,"tag":109,"props":489,"children":490},{},[491],{"type":76,"value":492},"        ApiTokenInterceptor(() => authenticationRepository),\n",{"type":66,"tag":109,"props":494,"children":495},{"class":111,"line":139},[496],{"type":66,"tag":109,"props":497,"children":498},{},[499],{"type":76,"value":500},"      ],\n",{"type":66,"tag":109,"props":502,"children":503},{"class":111,"line":148},[504],{"type":66,"tag":109,"props":505,"children":506},{},[507],{"type":76,"value":508},"    );\n",{"type":66,"tag":109,"props":510,"children":511},{"class":111,"line":157},[512],{"type":66,"tag":109,"props":513,"children":515},{"emptyLinePlaceholder":514},true,[516],{"type":76,"value":517},"\n",{"type":66,"tag":109,"props":519,"children":520},{"class":111,"line":166},[521],{"type":66,"tag":109,"props":522,"children":523},{},[524],{"type":76,"value":525},"    final authenticationService = AuthenticationService.vaah(\n",{"type":66,"tag":109,"props":527,"children":528},{"class":111,"line":175},[529],{"type":66,"tag":109,"props":530,"children":531},{},[532],{"type":76,"value":533},"      apiService: vaahApiService,\n",{"type":66,"tag":109,"props":535,"children":536},{"class":111,"line":184},[537],{"type":66,"tag":109,"props":538,"children":539},{},[540],{"type":76,"value":508},{"type":66,"tag":109,"props":542,"children":543},{"class":111,"line":192},[544],{"type":66,"tag":109,"props":545,"children":546},{"emptyLinePlaceholder":514},[547],{"type":76,"value":517},{"type":66,"tag":109,"props":549,"children":550},{"class":111,"line":201},[551],{"type":66,"tag":109,"props":552,"children":553},{},[554],{"type":76,"value":555},"    authenticationRepository = AuthenticationRepository(\n",{"type":66,"tag":109,"props":557,"children":558},{"class":111,"line":209},[559],{"type":66,"tag":109,"props":560,"children":561},{},[562],{"type":76,"value":563},"      authenticationService: authenticationService,\n",{"type":66,"tag":109,"props":565,"children":566},{"class":111,"line":218},[567],{"type":66,"tag":109,"props":568,"children":569},{},[570],{"type":76,"value":508},{"type":66,"tag":315,"props":572,"children":574},{"id":573},"example",[575],{"type":76,"value":576},"Example",{"type":66,"tag":322,"props":578,"children":579},{},[580,599,647],{"type":66,"tag":326,"props":581,"children":582},{},[583,589,591],{"type":66,"tag":72,"props":584,"children":586},{"className":585},[],[587],{"type":76,"value":588},"init",{"type":76,"value":590}," Method\n",{"type":66,"tag":322,"props":592,"children":593},{},[594],{"type":66,"tag":326,"props":595,"children":596},{},[597],{"type":76,"value":598},"This asynchronous method initializes the essential services & repositories",{"type":66,"tag":326,"props":600,"children":601},{},[602,603,609],{"type":76,"value":343},{"type":66,"tag":72,"props":604,"children":606},{"className":605},[],[607],{"type":76,"value":608},"authenticationRepository",{"type":66,"tag":322,"props":610,"children":611},{},[612],{"type":66,"tag":326,"props":613,"children":614},{},[615,617,622,624,630,632,638,639,645],{"type":76,"value":616},"DependencyManager Creates the core ",{"type":66,"tag":72,"props":618,"children":620},{"className":619},[],[621],{"type":76,"value":349},{"type":76,"value":623}," ",{"type":66,"tag":72,"props":625,"children":627},{"className":626},[],[628],{"type":76,"value":629},"instance",{"type":76,"value":631},", injecting both ",{"type":66,"tag":72,"props":633,"children":635},{"className":634},[],[636],{"type":76,"value":637},"secureStorageService",{"type":76,"value":359},{"type":66,"tag":72,"props":640,"children":642},{"className":641},[],[643],{"type":76,"value":644},"authenticationService",{"type":76,"value":646},". And Let's say some other repository depends on secureStorageService we do not need to create a new one, we can utilize existing one.",{"type":66,"tag":326,"props":648,"children":649},{},[650,652],{"type":76,"value":651},"Exposing variables\n",{"type":66,"tag":322,"props":653,"children":654},{},[655,674],{"type":66,"tag":326,"props":656,"children":657},{},[658,660,666,668],{"type":76,"value":659},"To expose you need to create direct variable in ",{"type":66,"tag":72,"props":661,"children":663},{"className":662},[],[664],{"type":76,"value":665},"DependencyManager",{"type":76,"value":667}," with ",{"type":66,"tag":72,"props":669,"children":671},{"className":670},[],[672],{"type":76,"value":673},"static late final",{"type":66,"tag":326,"props":675,"children":676},{},[677,678],{"type":76,"value":343},{"type":66,"tag":72,"props":679,"children":681},{"className":680},[],[682],{"type":76,"value":683},"static late final AuthenticationRepository authenticationRepository;",{"type":66,"tag":85,"props":685,"children":686},{},[687],{"type":66,"tag":72,"props":688,"children":690},{"className":689},[],[691],{"type":76,"value":692},"dependency_manager.dart",{"type":66,"tag":67,"props":694,"children":696},{"code":695,"language":102,"meta":60,"className":103,"style":60},"/// DependencyManager: Singleton Class\nabstract class DependencyManager {\n static bool _isInitialized = false;\n\n static late final AuthenticationRepository authenticationRepository;\n\n static Future\u003Cbool> init() async {\n if (_isInitialized) {\n return true;\n }\n\n final secureStorageService = StorageService.secure();\n\n final vaahApiService = ApiService(\n interceptors: [\n ApiTokenInterceptor(() => authenticationRepository),\n ],\n )..addSerializerFunctions(VaahResponseSerializers.defaults());\n\n final authenticationService = AuthenticationService.vaah(\n apiService: vaahApiService,\n );\n\n authenticationRepository = AuthenticationRepository(\n storageService: secureStorageService,\n authenticationService: authenticationService,\n );\n await authenticationRepository.init();\n\n _isInitialized = true;\n return _isInitialized;\n }\n}\n",[697],{"type":66,"tag":72,"props":698,"children":699},{"__ignoreMap":60},[700,708,716,724,731,739,746,754,762,770,778,785,793,800,808,816,824,832,840,847,855,863,870,878,887,896,905,913,922,930,939,948,957],{"type":66,"tag":109,"props":701,"children":702},{"class":111,"line":112},[703],{"type":66,"tag":109,"props":704,"children":705},{},[706],{"type":76,"value":707},"/// DependencyManager: Singleton Class\n",{"type":66,"tag":109,"props":709,"children":710},{"class":111,"line":121},[711],{"type":66,"tag":109,"props":712,"children":713},{},[714],{"type":76,"value":715},"abstract class DependencyManager {\n",{"type":66,"tag":109,"props":717,"children":718},{"class":111,"line":130},[719],{"type":66,"tag":109,"props":720,"children":721},{},[722],{"type":76,"value":723}," static bool _isInitialized = false;\n",{"type":66,"tag":109,"props":725,"children":726},{"class":111,"line":139},[727],{"type":66,"tag":109,"props":728,"children":729},{"emptyLinePlaceholder":514},[730],{"type":76,"value":517},{"type":66,"tag":109,"props":732,"children":733},{"class":111,"line":148},[734],{"type":66,"tag":109,"props":735,"children":736},{},[737],{"type":76,"value":738}," static late final AuthenticationRepository authenticationRepository;\n",{"type":66,"tag":109,"props":740,"children":741},{"class":111,"line":157},[742],{"type":66,"tag":109,"props":743,"children":744},{"emptyLinePlaceholder":514},[745],{"type":76,"value":517},{"type":66,"tag":109,"props":747,"children":748},{"class":111,"line":166},[749],{"type":66,"tag":109,"props":750,"children":751},{},[752],{"type":76,"value":753}," static Future\u003Cbool> init() async {\n",{"type":66,"tag":109,"props":755,"children":756},{"class":111,"line":175},[757],{"type":66,"tag":109,"props":758,"children":759},{},[760],{"type":76,"value":761}," if (_isInitialized) {\n",{"type":66,"tag":109,"props":763,"children":764},{"class":111,"line":184},[765],{"type":66,"tag":109,"props":766,"children":767},{},[768],{"type":76,"value":769}," return true;\n",{"type":66,"tag":109,"props":771,"children":772},{"class":111,"line":192},[773],{"type":66,"tag":109,"props":774,"children":775},{},[776],{"type":76,"value":777}," }\n",{"type":66,"tag":109,"props":779,"children":780},{"class":111,"line":201},[781],{"type":66,"tag":109,"props":782,"children":783},{"emptyLinePlaceholder":514},[784],{"type":76,"value":517},{"type":66,"tag":109,"props":786,"children":787},{"class":111,"line":209},[788],{"type":66,"tag":109,"props":789,"children":790},{},[791],{"type":76,"value":792}," final secureStorageService = StorageService.secure();\n",{"type":66,"tag":109,"props":794,"children":795},{"class":111,"line":218},[796],{"type":66,"tag":109,"props":797,"children":798},{"emptyLinePlaceholder":514},[799],{"type":76,"value":517},{"type":66,"tag":109,"props":801,"children":802},{"class":111,"line":227},[803],{"type":66,"tag":109,"props":804,"children":805},{},[806],{"type":76,"value":807}," final vaahApiService = ApiService(\n",{"type":66,"tag":109,"props":809,"children":810},{"class":111,"line":236},[811],{"type":66,"tag":109,"props":812,"children":813},{},[814],{"type":76,"value":815}," interceptors: [\n",{"type":66,"tag":109,"props":817,"children":818},{"class":111,"line":244},[819],{"type":66,"tag":109,"props":820,"children":821},{},[822],{"type":76,"value":823}," ApiTokenInterceptor(() => authenticationRepository),\n",{"type":66,"tag":109,"props":825,"children":826},{"class":111,"line":253},[827],{"type":66,"tag":109,"props":828,"children":829},{},[830],{"type":76,"value":831}," ],\n",{"type":66,"tag":109,"props":833,"children":834},{"class":111,"line":261},[835],{"type":66,"tag":109,"props":836,"children":837},{},[838],{"type":76,"value":839}," )..addSerializerFunctions(VaahResponseSerializers.defaults());\n",{"type":66,"tag":109,"props":841,"children":842},{"class":111,"line":270},[843],{"type":66,"tag":109,"props":844,"children":845},{"emptyLinePlaceholder":514},[846],{"type":76,"value":517},{"type":66,"tag":109,"props":848,"children":849},{"class":111,"line":278},[850],{"type":66,"tag":109,"props":851,"children":852},{},[853],{"type":76,"value":854}," final authenticationService = AuthenticationService.vaah(\n",{"type":66,"tag":109,"props":856,"children":857},{"class":111,"line":287},[858],{"type":66,"tag":109,"props":859,"children":860},{},[861],{"type":76,"value":862}," apiService: vaahApiService,\n",{"type":66,"tag":109,"props":864,"children":865},{"class":111,"line":296},[866],{"type":66,"tag":109,"props":867,"children":868},{},[869],{"type":76,"value":302},{"type":66,"tag":109,"props":871,"children":873},{"class":111,"line":872},23,[874],{"type":66,"tag":109,"props":875,"children":876},{"emptyLinePlaceholder":514},[877],{"type":76,"value":517},{"type":66,"tag":109,"props":879,"children":881},{"class":111,"line":880},24,[882],{"type":66,"tag":109,"props":883,"children":884},{},[885],{"type":76,"value":886}," authenticationRepository = AuthenticationRepository(\n",{"type":66,"tag":109,"props":888,"children":890},{"class":111,"line":889},25,[891],{"type":66,"tag":109,"props":892,"children":893},{},[894],{"type":76,"value":895}," storageService: secureStorageService,\n",{"type":66,"tag":109,"props":897,"children":899},{"class":111,"line":898},26,[900],{"type":66,"tag":109,"props":901,"children":902},{},[903],{"type":76,"value":904}," authenticationService: authenticationService,\n",{"type":66,"tag":109,"props":906,"children":908},{"class":111,"line":907},27,[909],{"type":66,"tag":109,"props":910,"children":911},{},[912],{"type":76,"value":302},{"type":66,"tag":109,"props":914,"children":916},{"class":111,"line":915},28,[917],{"type":66,"tag":109,"props":918,"children":919},{},[920],{"type":76,"value":921}," await authenticationRepository.init();\n",{"type":66,"tag":109,"props":923,"children":925},{"class":111,"line":924},29,[926],{"type":66,"tag":109,"props":927,"children":928},{"emptyLinePlaceholder":514},[929],{"type":76,"value":517},{"type":66,"tag":109,"props":931,"children":933},{"class":111,"line":932},30,[934],{"type":66,"tag":109,"props":935,"children":936},{},[937],{"type":76,"value":938}," _isInitialized = true;\n",{"type":66,"tag":109,"props":940,"children":942},{"class":111,"line":941},31,[943],{"type":66,"tag":109,"props":944,"children":945},{},[946],{"type":76,"value":947}," return _isInitialized;\n",{"type":66,"tag":109,"props":949,"children":951},{"class":111,"line":950},32,[952],{"type":66,"tag":109,"props":953,"children":954},{},[955],{"type":76,"value":956}," }\n",{"type":66,"tag":109,"props":958,"children":960},{"class":111,"line":959},33,[961],{"type":66,"tag":109,"props":962,"children":963},{},[964],{"type":76,"value":965},"}\n",{"type":66,"tag":315,"props":967,"children":969},{"id":968},"usage",[970],{"type":76,"value":971},"Usage",{"type":66,"tag":67,"props":973,"children":975},{"code":974,"language":102,"meta":60,"className":103,"style":60}," return MultiBlocProvider(\n providers: [\n BlocProvider\u003CAuthenticationBloc>(\n create: (context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ...\n ],\n child: child,\n );\n",[976],{"type":66,"tag":72,"props":977,"children":978},{"__ignoreMap":60},[979,987,995,1003,1011,1019,1027,1035,1043,1050,1058],{"type":66,"tag":109,"props":980,"children":981},{"class":111,"line":112},[982],{"type":66,"tag":109,"props":983,"children":984},{},[985],{"type":76,"value":986}," return MultiBlocProvider(\n",{"type":66,"tag":109,"props":988,"children":989},{"class":111,"line":121},[990],{"type":66,"tag":109,"props":991,"children":992},{},[993],{"type":76,"value":994}," providers: [\n",{"type":66,"tag":109,"props":996,"children":997},{"class":111,"line":130},[998],{"type":66,"tag":109,"props":999,"children":1000},{},[1001],{"type":76,"value":1002}," BlocProvider\u003CAuthenticationBloc>(\n",{"type":66,"tag":109,"props":1004,"children":1005},{"class":111,"line":139},[1006],{"type":66,"tag":109,"props":1007,"children":1008},{},[1009],{"type":76,"value":1010}," create: (context) => AuthenticationBloc(\n",{"type":66,"tag":109,"props":1012,"children":1013},{"class":111,"line":148},[1014],{"type":66,"tag":109,"props":1015,"children":1016},{},[1017],{"type":76,"value":1018}," authenticationRepository: DependencyManager.authenticationRepository,\n",{"type":66,"tag":109,"props":1020,"children":1021},{"class":111,"line":157},[1022],{"type":66,"tag":109,"props":1023,"children":1024},{},[1025],{"type":76,"value":1026}," )..add(const InitializationRequested()),\n",{"type":66,"tag":109,"props":1028,"children":1029},{"class":111,"line":166},[1030],{"type":66,"tag":109,"props":1031,"children":1032},{},[1033],{"type":76,"value":1034}," ),\n",{"type":66,"tag":109,"props":1036,"children":1037},{"class":111,"line":175},[1038],{"type":66,"tag":109,"props":1039,"children":1040},{},[1041],{"type":76,"value":1042}," ...\n",{"type":66,"tag":109,"props":1044,"children":1045},{"class":111,"line":184},[1046],{"type":66,"tag":109,"props":1047,"children":1048},{},[1049],{"type":76,"value":831},{"type":66,"tag":109,"props":1051,"children":1052},{"class":111,"line":192},[1053],{"type":66,"tag":109,"props":1054,"children":1055},{},[1056],{"type":76,"value":1057}," child: child,\n",{"type":66,"tag":109,"props":1059,"children":1060},{"class":111,"line":201},[1061],{"type":66,"tag":109,"props":1062,"children":1063},{},[1064],{"type":76,"value":302},{"type":66,"tag":78,"props":1066,"children":1068},{"id":1067},"services",[1069],{"type":76,"value":1070},"Services",{"type":66,"tag":315,"props":1072,"children":1074},{"id":1073},"key-points-1",[1075],{"type":76,"value":320},{"type":66,"tag":85,"props":1077,"children":1078},{},[1079],{"type":76,"value":1080},"Benefits of Layered Architecture for Services",{"type":66,"tag":322,"props":1082,"children":1083},{},[1084,1097,1110,1123,1136],{"type":66,"tag":326,"props":1085,"children":1086},{},[1087,1089],{"type":76,"value":1088},"Abstract Interfaces\n",{"type":66,"tag":322,"props":1090,"children":1091},{},[1092],{"type":66,"tag":326,"props":1093,"children":1094},{},[1095],{"type":76,"value":1096},"By defining abstract interfaces for your services, you create a clear contract that all concrete implementations must adhere to. This promotes flexibility as you can easily swap out different implementations without affecting the rest of your application. For example this is so useful when you need to feature flag some features.",{"type":66,"tag":326,"props":1098,"children":1099},{},[1100,1102],{"type":76,"value":1101},"Improved Testability\n",{"type":66,"tag":322,"props":1103,"children":1104},{},[1105],{"type":66,"tag":326,"props":1106,"children":1107},{},[1108],{"type":76,"value":1109},"Abstract interfaces enable you to easily mock or stub service implementations during unit tests. This allows you to isolate the logic of your application components from the specific behavior of external services, making your tests more robust and easier to maintain",{"type":66,"tag":326,"props":1111,"children":1112},{},[1113,1115],{"type":76,"value":1114},"Separation of Concerns\n",{"type":66,"tag":322,"props":1116,"children":1117},{},[1118],{"type":66,"tag":326,"props":1119,"children":1120},{},[1121],{"type":76,"value":1122},"this architecture promotes a clean separation of concerns. Services are responsible for specific functionalities, while other components interact with them through well-defined interfaces. This reduces coupling and improves code maintainability.",{"type":66,"tag":326,"props":1124,"children":1125},{},[1126,1128],{"type":76,"value":1127},"Enhanced Maintainability\n",{"type":66,"tag":322,"props":1129,"children":1130},{},[1131],{"type":66,"tag":326,"props":1132,"children":1133},{},[1134],{"type":76,"value":1135},"By clearly defining service interfaces and their responsibilities, you make it easier to understand and maintain your application's architecture. Changes to service implementations can be made with minimal impact on other parts of the application as long as the interface remains unchanged.",{"type":66,"tag":326,"props":1137,"children":1138},{},[1139,1141],{"type":76,"value":1140},"Future-Proofing\n",{"type":66,"tag":322,"props":1142,"children":1143},{},[1144],{"type":66,"tag":326,"props":1145,"children":1146},{},[1147],{"type":76,"value":1148},"The layered architecture provides a solid foundation for future enhancements. You can easily add new service implementations or modify existing ones without significantly impacting the rest of your application.",{"type":66,"tag":315,"props":1150,"children":1152},{"id":1151},"example-1",[1153],{"type":76,"value":576},{"type":66,"tag":322,"props":1155,"children":1156},{},[1157],{"type":66,"tag":326,"props":1158,"children":1159},{},[1160,1162],{"type":76,"value":1161},"This code defines a layered approach for local storage in a Flutter application\n",{"type":66,"tag":322,"props":1163,"children":1164},{},[1165,1175,1186],{"type":66,"tag":326,"props":1166,"children":1167},{},[1168,1173],{"type":66,"tag":72,"props":1169,"children":1171},{"className":1170},[],[1172],{"type":76,"value":365},{"type":76,"value":1174}," is an abstract interface defining methods for get, set, and remove data.",{"type":66,"tag":326,"props":1176,"children":1177},{},[1178,1184],{"type":66,"tag":72,"props":1179,"children":1181},{"className":1180},[],[1182],{"type":76,"value":1183},"StorageServiceNoOp",{"type":76,"value":1185}," is a no-op implementation for testing purposes.",{"type":66,"tag":326,"props":1187,"children":1188},{},[1189,1195],{"type":66,"tag":72,"props":1190,"children":1192},{"className":1191},[],[1193],{"type":76,"value":1194},"SecureStorageService",{"type":76,"value":1196}," in an implementation using flutter_secure_storage for secure data storage.",{"type":66,"tag":67,"props":1198,"children":1200},{"code":1199,"language":102,"meta":60,"className":103,"style":60},"// lib/data/services/local_storage/storage_service.dart\nabstract class StorageService {\n const StorageService();\n\n factory StorageService.noOp() => const StorageServiceNoOp();\n\n factory StorageService.secure() => const SecureStorageService();\n\n Future\u003CT?> get\u003CT>({required String key});\n\n Future\u003Cvoid> set({required String key, required Object value});\n\n Future\u003Cvoid> remove({required String key});\n}\n\n\n// lib/data/services/local_storage/no_op_service.dart\nclass StorageServiceNoOp implements StorageService {\n const StorageServiceNoOp();\n\n @override\n Future\u003CT?> get\u003CT>({required String key}) async => null;\n\n @override\n Future\u003Cvoid> set({required String key, required Object value}) async => null;\n\n @override\n Future\u003Cvoid> remove({required String key}) async => null;\n}\n\n\n// lib/data/services/local_storage/secure_storage_service.dart\nclass SecureStorageService implements StorageService {\n const SecureStorageService({this.storage = const FlutterSecureStorage()});\n\n final FlutterSecureStorage storage;\n\n @override\n Future\u003CT?> get\u003CT>({required String key}) async {\n final match = await storage.read(key: key);\n if (match == null) return null;\n return jsonDecode(match) as T;\n }\n\n @override\n Future\u003Cvoid> set({required String key, required Object value}) async {\n await storage.write(key: key, value: jsonEncode(value));\n }\n\n @override\n Future\u003Cvoid> remove({required String key}) async {\n await storage.delete(key: key);\n }\n}\n",[1201],{"type":66,"tag":72,"props":1202,"children":1203},{"__ignoreMap":60},[1204,1212,1220,1228,1235,1243,1250,1258,1265,1273,1280,1288,1295,1303,1310,1317,1324,1332,1340,1348,1355,1363,1371,1378,1385,1393,1400,1407,1415,1422,1429,1436,1444,1452,1461,1469,1478,1486,1494,1503,1512,1521,1530,1538,1546,1554,1563,1572,1580,1588,1596,1605,1614,1622],{"type":66,"tag":109,"props":1205,"children":1206},{"class":111,"line":112},[1207],{"type":66,"tag":109,"props":1208,"children":1209},{},[1210],{"type":76,"value":1211},"// lib/data/services/local_storage/storage_service.dart\n",{"type":66,"tag":109,"props":1213,"children":1214},{"class":111,"line":121},[1215],{"type":66,"tag":109,"props":1216,"children":1217},{},[1218],{"type":76,"value":1219},"abstract class StorageService {\n",{"type":66,"tag":109,"props":1221,"children":1222},{"class":111,"line":130},[1223],{"type":66,"tag":109,"props":1224,"children":1225},{},[1226],{"type":76,"value":1227}," const StorageService();\n",{"type":66,"tag":109,"props":1229,"children":1230},{"class":111,"line":139},[1231],{"type":66,"tag":109,"props":1232,"children":1233},{"emptyLinePlaceholder":514},[1234],{"type":76,"value":517},{"type":66,"tag":109,"props":1236,"children":1237},{"class":111,"line":148},[1238],{"type":66,"tag":109,"props":1239,"children":1240},{},[1241],{"type":76,"value":1242}," factory StorageService.noOp() => const StorageServiceNoOp();\n",{"type":66,"tag":109,"props":1244,"children":1245},{"class":111,"line":157},[1246],{"type":66,"tag":109,"props":1247,"children":1248},{"emptyLinePlaceholder":514},[1249],{"type":76,"value":517},{"type":66,"tag":109,"props":1251,"children":1252},{"class":111,"line":166},[1253],{"type":66,"tag":109,"props":1254,"children":1255},{},[1256],{"type":76,"value":1257}," factory StorageService.secure() => const SecureStorageService();\n",{"type":66,"tag":109,"props":1259,"children":1260},{"class":111,"line":175},[1261],{"type":66,"tag":109,"props":1262,"children":1263},{"emptyLinePlaceholder":514},[1264],{"type":76,"value":517},{"type":66,"tag":109,"props":1266,"children":1267},{"class":111,"line":184},[1268],{"type":66,"tag":109,"props":1269,"children":1270},{},[1271],{"type":76,"value":1272}," Future\u003CT?> get\u003CT>({required String key});\n",{"type":66,"tag":109,"props":1274,"children":1275},{"class":111,"line":192},[1276],{"type":66,"tag":109,"props":1277,"children":1278},{"emptyLinePlaceholder":514},[1279],{"type":76,"value":517},{"type":66,"tag":109,"props":1281,"children":1282},{"class":111,"line":201},[1283],{"type":66,"tag":109,"props":1284,"children":1285},{},[1286],{"type":76,"value":1287}," Future\u003Cvoid> set({required String key, required Object value});\n",{"type":66,"tag":109,"props":1289,"children":1290},{"class":111,"line":209},[1291],{"type":66,"tag":109,"props":1292,"children":1293},{"emptyLinePlaceholder":514},[1294],{"type":76,"value":517},{"type":66,"tag":109,"props":1296,"children":1297},{"class":111,"line":218},[1298],{"type":66,"tag":109,"props":1299,"children":1300},{},[1301],{"type":76,"value":1302}," Future\u003Cvoid> remove({required String key});\n",{"type":66,"tag":109,"props":1304,"children":1305},{"class":111,"line":227},[1306],{"type":66,"tag":109,"props":1307,"children":1308},{},[1309],{"type":76,"value":965},{"type":66,"tag":109,"props":1311,"children":1312},{"class":111,"line":236},[1313],{"type":66,"tag":109,"props":1314,"children":1315},{"emptyLinePlaceholder":514},[1316],{"type":76,"value":517},{"type":66,"tag":109,"props":1318,"children":1319},{"class":111,"line":244},[1320],{"type":66,"tag":109,"props":1321,"children":1322},{"emptyLinePlaceholder":514},[1323],{"type":76,"value":517},{"type":66,"tag":109,"props":1325,"children":1326},{"class":111,"line":253},[1327],{"type":66,"tag":109,"props":1328,"children":1329},{},[1330],{"type":76,"value":1331},"// lib/data/services/local_storage/no_op_service.dart\n",{"type":66,"tag":109,"props":1333,"children":1334},{"class":111,"line":261},[1335],{"type":66,"tag":109,"props":1336,"children":1337},{},[1338],{"type":76,"value":1339},"class StorageServiceNoOp implements StorageService {\n",{"type":66,"tag":109,"props":1341,"children":1342},{"class":111,"line":270},[1343],{"type":66,"tag":109,"props":1344,"children":1345},{},[1346],{"type":76,"value":1347}," const StorageServiceNoOp();\n",{"type":66,"tag":109,"props":1349,"children":1350},{"class":111,"line":278},[1351],{"type":66,"tag":109,"props":1352,"children":1353},{"emptyLinePlaceholder":514},[1354],{"type":76,"value":517},{"type":66,"tag":109,"props":1356,"children":1357},{"class":111,"line":287},[1358],{"type":66,"tag":109,"props":1359,"children":1360},{},[1361],{"type":76,"value":1362}," @override\n",{"type":66,"tag":109,"props":1364,"children":1365},{"class":111,"line":296},[1366],{"type":66,"tag":109,"props":1367,"children":1368},{},[1369],{"type":76,"value":1370}," Future\u003CT?> get\u003CT>({required String key}) async => null;\n",{"type":66,"tag":109,"props":1372,"children":1373},{"class":111,"line":872},[1374],{"type":66,"tag":109,"props":1375,"children":1376},{"emptyLinePlaceholder":514},[1377],{"type":76,"value":517},{"type":66,"tag":109,"props":1379,"children":1380},{"class":111,"line":880},[1381],{"type":66,"tag":109,"props":1382,"children":1383},{},[1384],{"type":76,"value":1362},{"type":66,"tag":109,"props":1386,"children":1387},{"class":111,"line":889},[1388],{"type":66,"tag":109,"props":1389,"children":1390},{},[1391],{"type":76,"value":1392}," Future\u003Cvoid> set({required String key, required Object value}) async => null;\n",{"type":66,"tag":109,"props":1394,"children":1395},{"class":111,"line":898},[1396],{"type":66,"tag":109,"props":1397,"children":1398},{"emptyLinePlaceholder":514},[1399],{"type":76,"value":517},{"type":66,"tag":109,"props":1401,"children":1402},{"class":111,"line":907},[1403],{"type":66,"tag":109,"props":1404,"children":1405},{},[1406],{"type":76,"value":1362},{"type":66,"tag":109,"props":1408,"children":1409},{"class":111,"line":915},[1410],{"type":66,"tag":109,"props":1411,"children":1412},{},[1413],{"type":76,"value":1414}," Future\u003Cvoid> remove({required String key}) async => null;\n",{"type":66,"tag":109,"props":1416,"children":1417},{"class":111,"line":924},[1418],{"type":66,"tag":109,"props":1419,"children":1420},{},[1421],{"type":76,"value":965},{"type":66,"tag":109,"props":1423,"children":1424},{"class":111,"line":932},[1425],{"type":66,"tag":109,"props":1426,"children":1427},{"emptyLinePlaceholder":514},[1428],{"type":76,"value":517},{"type":66,"tag":109,"props":1430,"children":1431},{"class":111,"line":941},[1432],{"type":66,"tag":109,"props":1433,"children":1434},{"emptyLinePlaceholder":514},[1435],{"type":76,"value":517},{"type":66,"tag":109,"props":1437,"children":1438},{"class":111,"line":950},[1439],{"type":66,"tag":109,"props":1440,"children":1441},{},[1442],{"type":76,"value":1443},"// lib/data/services/local_storage/secure_storage_service.dart\n",{"type":66,"tag":109,"props":1445,"children":1446},{"class":111,"line":959},[1447],{"type":66,"tag":109,"props":1448,"children":1449},{},[1450],{"type":76,"value":1451},"class SecureStorageService implements StorageService {\n",{"type":66,"tag":109,"props":1453,"children":1455},{"class":111,"line":1454},34,[1456],{"type":66,"tag":109,"props":1457,"children":1458},{},[1459],{"type":76,"value":1460}," const SecureStorageService({this.storage = const FlutterSecureStorage()});\n",{"type":66,"tag":109,"props":1462,"children":1464},{"class":111,"line":1463},35,[1465],{"type":66,"tag":109,"props":1466,"children":1467},{"emptyLinePlaceholder":514},[1468],{"type":76,"value":517},{"type":66,"tag":109,"props":1470,"children":1472},{"class":111,"line":1471},36,[1473],{"type":66,"tag":109,"props":1474,"children":1475},{},[1476],{"type":76,"value":1477}," final FlutterSecureStorage storage;\n",{"type":66,"tag":109,"props":1479,"children":1481},{"class":111,"line":1480},37,[1482],{"type":66,"tag":109,"props":1483,"children":1484},{"emptyLinePlaceholder":514},[1485],{"type":76,"value":517},{"type":66,"tag":109,"props":1487,"children":1489},{"class":111,"line":1488},38,[1490],{"type":66,"tag":109,"props":1491,"children":1492},{},[1493],{"type":76,"value":1362},{"type":66,"tag":109,"props":1495,"children":1497},{"class":111,"line":1496},39,[1498],{"type":66,"tag":109,"props":1499,"children":1500},{},[1501],{"type":76,"value":1502}," Future\u003CT?> get\u003CT>({required String key}) async {\n",{"type":66,"tag":109,"props":1504,"children":1506},{"class":111,"line":1505},40,[1507],{"type":66,"tag":109,"props":1508,"children":1509},{},[1510],{"type":76,"value":1511}," final match = await storage.read(key: key);\n",{"type":66,"tag":109,"props":1513,"children":1515},{"class":111,"line":1514},41,[1516],{"type":66,"tag":109,"props":1517,"children":1518},{},[1519],{"type":76,"value":1520}," if (match == null) return null;\n",{"type":66,"tag":109,"props":1522,"children":1524},{"class":111,"line":1523},42,[1525],{"type":66,"tag":109,"props":1526,"children":1527},{},[1528],{"type":76,"value":1529}," return jsonDecode(match) as T;\n",{"type":66,"tag":109,"props":1531,"children":1533},{"class":111,"line":1532},43,[1534],{"type":66,"tag":109,"props":1535,"children":1536},{},[1537],{"type":76,"value":956},{"type":66,"tag":109,"props":1539,"children":1541},{"class":111,"line":1540},44,[1542],{"type":66,"tag":109,"props":1543,"children":1544},{"emptyLinePlaceholder":514},[1545],{"type":76,"value":517},{"type":66,"tag":109,"props":1547,"children":1549},{"class":111,"line":1548},45,[1550],{"type":66,"tag":109,"props":1551,"children":1552},{},[1553],{"type":76,"value":1362},{"type":66,"tag":109,"props":1555,"children":1557},{"class":111,"line":1556},46,[1558],{"type":66,"tag":109,"props":1559,"children":1560},{},[1561],{"type":76,"value":1562}," Future\u003Cvoid> set({required String key, required Object value}) async {\n",{"type":66,"tag":109,"props":1564,"children":1566},{"class":111,"line":1565},47,[1567],{"type":66,"tag":109,"props":1568,"children":1569},{},[1570],{"type":76,"value":1571}," await storage.write(key: key, value: jsonEncode(value));\n",{"type":66,"tag":109,"props":1573,"children":1575},{"class":111,"line":1574},48,[1576],{"type":66,"tag":109,"props":1577,"children":1578},{},[1579],{"type":76,"value":956},{"type":66,"tag":109,"props":1581,"children":1583},{"class":111,"line":1582},49,[1584],{"type":66,"tag":109,"props":1585,"children":1586},{"emptyLinePlaceholder":514},[1587],{"type":76,"value":517},{"type":66,"tag":109,"props":1589,"children":1591},{"class":111,"line":1590},50,[1592],{"type":66,"tag":109,"props":1593,"children":1594},{},[1595],{"type":76,"value":1362},{"type":66,"tag":109,"props":1597,"children":1599},{"class":111,"line":1598},51,[1600],{"type":66,"tag":109,"props":1601,"children":1602},{},[1603],{"type":76,"value":1604}," Future\u003Cvoid> remove({required String key}) async {\n",{"type":66,"tag":109,"props":1606,"children":1608},{"class":111,"line":1607},52,[1609],{"type":66,"tag":109,"props":1610,"children":1611},{},[1612],{"type":76,"value":1613}," await storage.delete(key: key);\n",{"type":66,"tag":109,"props":1615,"children":1617},{"class":111,"line":1616},53,[1618],{"type":66,"tag":109,"props":1619,"children":1620},{},[1621],{"type":76,"value":956},{"type":66,"tag":109,"props":1623,"children":1625},{"class":111,"line":1624},54,[1626],{"type":66,"tag":109,"props":1627,"children":1628},{},[1629],{"type":76,"value":965},{"type":66,"tag":315,"props":1631,"children":1633},{"id":1632},"usage-1",[1634],{"type":76,"value":971},{"type":66,"tag":67,"props":1636,"children":1638},{"code":1637,"language":102,"meta":60,"className":103,"style":60},"final secureStorageService = StorageService.secure();\n",[1639],{"type":66,"tag":72,"props":1640,"children":1641},{"__ignoreMap":60},[1642],{"type":66,"tag":109,"props":1643,"children":1644},{"class":111,"line":112},[1645],{"type":66,"tag":109,"props":1646,"children":1647},{},[1648],{"type":76,"value":1637},{"type":66,"tag":78,"props":1650,"children":1652},{"id":1651},"repositories",[1653],{"type":76,"value":1654},"Repositories",{"type":66,"tag":85,"props":1656,"children":1657},{},[1658],{"type":76,"value":1659},"Centralizing Data Access Logic",{"type":66,"tag":315,"props":1661,"children":1663},{"id":1662},"key-points-2",[1664],{"type":76,"value":1665},"Key points",{"type":66,"tag":322,"props":1667,"children":1668},{},[1669,1687,1704],{"type":66,"tag":326,"props":1670,"children":1671},{},[1672,1674],{"type":76,"value":1673},"Source of Truth\n",{"type":66,"tag":322,"props":1675,"children":1676},{},[1677,1682],{"type":66,"tag":326,"props":1678,"children":1679},{},[1680],{"type":76,"value":1681},"Repositories act as a single source of truth for accessing and managing data within your application's domain layer.",{"type":66,"tag":326,"props":1683,"children":1684},{},[1685],{"type":76,"value":1686},"They encapsulate the logic for fetching, storing, and manipulating data, often combining data from multiple services.",{"type":66,"tag":326,"props":1688,"children":1689},{},[1690,1691],{"type":76,"value":1114},{"type":66,"tag":322,"props":1692,"children":1693},{},[1694,1699],{"type":66,"tag":326,"props":1695,"children":1696},{},[1697],{"type":76,"value":1698},"Repositories shield the rest of your application (BLoCs, UI components) from the complexities of dealing with different data sources and services directly",{"type":66,"tag":326,"props":1700,"children":1701},{},[1702],{"type":76,"value":1703},"Repositories promote a clean separation of concerns by isolating data access logic from the presentation layer (Blocs, UI). This improves code maintainability and testability.",{"type":66,"tag":326,"props":1705,"children":1706},{},[1707,1709],{"type":76,"value":1708},"Data Transformation and Validation\n",{"type":66,"tag":322,"props":1710,"children":1711},{},[1712],{"type":66,"tag":326,"props":1713,"children":1714},{},[1715],{"type":76,"value":1716},"Repositories can handle data transformation and validation before exposing it to other layers.",{"type":66,"tag":315,"props":1718,"children":1720},{"id":1719},"example-2",[1721],{"type":76,"value":576},{"type":66,"tag":322,"props":1723,"children":1724},{},[1725,1738],{"type":66,"tag":326,"props":1726,"children":1727},{},[1728,1730],{"type":76,"value":1729},"Authentication States\n",{"type":66,"tag":322,"props":1731,"children":1732},{},[1733],{"type":66,"tag":326,"props":1734,"children":1735},{},[1736],{"type":76,"value":1737},"Defines three states: unknown (initial), authenticated (user logged in), and unauthenticated (user logged out).",{"type":66,"tag":326,"props":1739,"children":1740},{},[1741,1743],{"type":76,"value":1742},"AuthenticationRepository\n",{"type":66,"tag":322,"props":1744,"children":1745},{},[1746,1751,1756,1769,1782],{"type":66,"tag":326,"props":1747,"children":1748},{},[1749],{"type":76,"value":1750},"Handles user authentication logic.",{"type":66,"tag":326,"props":1752,"children":1753},{},[1754],{"type":76,"value":1755},"Stores the currently logged-in user.",{"type":66,"tag":326,"props":1757,"children":1758},{},[1759,1761,1767],{"type":76,"value":1760},"Provides a stream (",{"type":66,"tag":72,"props":1762,"children":1764},{"className":1763},[],[1765],{"type":76,"value":1766},"statusStream",{"type":76,"value":1768},") to notify about authentication state changes.",{"type":66,"tag":326,"props":1770,"children":1771},{},[1772,1774,1780],{"type":76,"value":1773},"Uses ",{"type":66,"tag":72,"props":1775,"children":1777},{"className":1776},[],[1778],{"type":76,"value":1779},"storageService",{"type":76,"value":1781}," to store/retrieve user data securely.",{"type":66,"tag":326,"props":1783,"children":1784},{},[1785,1786,1791],{"type":76,"value":1773},{"type":66,"tag":72,"props":1787,"children":1789},{"className":1788},[],[1790],{"type":76,"value":644},{"type":76,"value":1792}," to perform signup, signin, and signout operations.",{"type":66,"tag":67,"props":1794,"children":1796},{"code":1795,"language":102,"meta":60,"className":103,"style":60},"enum AuthenticationStatus {\n unknown,\n authenticated,\n unauthenticated,\n}\n\nextension AuthenticationStatusExtensions on AuthenticationStatus {\n bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n}\n\nconst String _userKey = 'secure_user';\n\nclass AuthenticationRepository implements DisposableRepository {\n AuthenticationRepository({\n required this.storageService,\n required this.authenticationService,\n });\n\n final StorageService storageService;\n final AuthenticationService authenticationService;\n\n @override\n Future\u003Cvoid> init() async {\n try {\n final decodedUser = await storageService.get\u003CMap\u003CString, dynamic>>(\n key: _userKey,\n );\n if (decodedUser == null) {\n _unsetUser();\n } else {\n final user = User.fromJson(decodedUser);\n _setUser(user);\n }\n } catch (e) {\n _unsetUser();\n }\n }\n\n @override\n Future\u003Cvoid> dispose() async {\n _statusController.close();\n }\n\n final BehaviorSubject\u003CAuthenticationStatus> _statusController =\n BehaviorSubject\u003CAuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n\n Stream\u003CAuthenticationStatus> get statusStream {\n return _statusController.stream;\n }\n\n AuthenticationStatus get statusCurrent {\n return _statusController.value;\n }\n\n User? _user;\n\n User? get user => _user;\n\n void _unsetUser() {\n _user = null;\n _statusController.add(AuthenticationStatus.unauthenticated);\n }\n\n void _setUser(User user) {\n _user = user;\n _statusController.add(AuthenticationStatus.authenticated);\n }\n\n Future\u003CUser> signUp({\n required String email,\n required String name,\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signUp(\n email: email,\n name: name,\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future\u003CUser> signIn({\n required String username,\n required String password,\n }) async {\n final authenticatedUser = await authenticationService.signIn(\n username: username,\n password: password,\n );\n await storageService.set(\n key: _userKey,\n value: authenticatedUser.toJson(),\n );\n\n _setUser(authenticatedUser);\n return authenticatedUser;\n }\n\n Future\u003Cvoid> signOut() async {\n await authenticationService.signOut();\n await storageService.remove(\n key: _userKey,\n );\n\n _unsetUser();\n }\n}\n",[1797],{"type":66,"tag":72,"props":1798,"children":1799},{"__ignoreMap":60},[1800,1808,1816,1824,1832,1839,1846,1854,1862,1869,1876,1884,1891,1899,1907,1915,1923,1931,1938,1946,1954,1961,1968,1976,1984,1992,2000,2008,2016,2024,2032,2040,2048,2056,2064,2072,2079,2086,2093,2100,2108,2116,2123,2130,2138,2146,2153,2161,2169,2176,2183,2191,2199,2206,2213,2222,2230,2239,2247,2256,2265,2274,2282,2290,2299,2308,2317,2325,2333,2342,2351,2360,2369,2378,2387,2396,2405,2414,2423,2432,2440,2449,2458,2467,2475,2483,2492,2501,2509,2517,2526,2534,2542,2550,2559,2567,2575,2583,2591,2599,2607,2615,2623,2631,2639,2647,2655,2664,2673,2682,2690,2698,2706,2715,2723],{"type":66,"tag":109,"props":1801,"children":1802},{"class":111,"line":112},[1803],{"type":66,"tag":109,"props":1804,"children":1805},{},[1806],{"type":76,"value":1807},"enum AuthenticationStatus {\n",{"type":66,"tag":109,"props":1809,"children":1810},{"class":111,"line":121},[1811],{"type":66,"tag":109,"props":1812,"children":1813},{},[1814],{"type":76,"value":1815}," unknown,\n",{"type":66,"tag":109,"props":1817,"children":1818},{"class":111,"line":130},[1819],{"type":66,"tag":109,"props":1820,"children":1821},{},[1822],{"type":76,"value":1823}," authenticated,\n",{"type":66,"tag":109,"props":1825,"children":1826},{"class":111,"line":139},[1827],{"type":66,"tag":109,"props":1828,"children":1829},{},[1830],{"type":76,"value":1831}," unauthenticated,\n",{"type":66,"tag":109,"props":1833,"children":1834},{"class":111,"line":148},[1835],{"type":66,"tag":109,"props":1836,"children":1837},{},[1838],{"type":76,"value":965},{"type":66,"tag":109,"props":1840,"children":1841},{"class":111,"line":157},[1842],{"type":66,"tag":109,"props":1843,"children":1844},{"emptyLinePlaceholder":514},[1845],{"type":76,"value":517},{"type":66,"tag":109,"props":1847,"children":1848},{"class":111,"line":166},[1849],{"type":66,"tag":109,"props":1850,"children":1851},{},[1852],{"type":76,"value":1853},"extension AuthenticationStatusExtensions on AuthenticationStatus {\n",{"type":66,"tag":109,"props":1855,"children":1856},{"class":111,"line":175},[1857],{"type":66,"tag":109,"props":1858,"children":1859},{},[1860],{"type":76,"value":1861}," bool get isAuthenticated => this == AuthenticationStatus.authenticated;\n",{"type":66,"tag":109,"props":1863,"children":1864},{"class":111,"line":184},[1865],{"type":66,"tag":109,"props":1866,"children":1867},{},[1868],{"type":76,"value":965},{"type":66,"tag":109,"props":1870,"children":1871},{"class":111,"line":192},[1872],{"type":66,"tag":109,"props":1873,"children":1874},{"emptyLinePlaceholder":514},[1875],{"type":76,"value":517},{"type":66,"tag":109,"props":1877,"children":1878},{"class":111,"line":201},[1879],{"type":66,"tag":109,"props":1880,"children":1881},{},[1882],{"type":76,"value":1883},"const String _userKey = 'secure_user';\n",{"type":66,"tag":109,"props":1885,"children":1886},{"class":111,"line":209},[1887],{"type":66,"tag":109,"props":1888,"children":1889},{"emptyLinePlaceholder":514},[1890],{"type":76,"value":517},{"type":66,"tag":109,"props":1892,"children":1893},{"class":111,"line":218},[1894],{"type":66,"tag":109,"props":1895,"children":1896},{},[1897],{"type":76,"value":1898},"class AuthenticationRepository implements DisposableRepository {\n",{"type":66,"tag":109,"props":1900,"children":1901},{"class":111,"line":227},[1902],{"type":66,"tag":109,"props":1903,"children":1904},{},[1905],{"type":76,"value":1906}," AuthenticationRepository({\n",{"type":66,"tag":109,"props":1908,"children":1909},{"class":111,"line":236},[1910],{"type":66,"tag":109,"props":1911,"children":1912},{},[1913],{"type":76,"value":1914}," required this.storageService,\n",{"type":66,"tag":109,"props":1916,"children":1917},{"class":111,"line":244},[1918],{"type":66,"tag":109,"props":1919,"children":1920},{},[1921],{"type":76,"value":1922}," required this.authenticationService,\n",{"type":66,"tag":109,"props":1924,"children":1925},{"class":111,"line":253},[1926],{"type":66,"tag":109,"props":1927,"children":1928},{},[1929],{"type":76,"value":1930}," });\n",{"type":66,"tag":109,"props":1932,"children":1933},{"class":111,"line":261},[1934],{"type":66,"tag":109,"props":1935,"children":1936},{"emptyLinePlaceholder":514},[1937],{"type":76,"value":517},{"type":66,"tag":109,"props":1939,"children":1940},{"class":111,"line":270},[1941],{"type":66,"tag":109,"props":1942,"children":1943},{},[1944],{"type":76,"value":1945}," final StorageService storageService;\n",{"type":66,"tag":109,"props":1947,"children":1948},{"class":111,"line":278},[1949],{"type":66,"tag":109,"props":1950,"children":1951},{},[1952],{"type":76,"value":1953}," final AuthenticationService authenticationService;\n",{"type":66,"tag":109,"props":1955,"children":1956},{"class":111,"line":287},[1957],{"type":66,"tag":109,"props":1958,"children":1959},{"emptyLinePlaceholder":514},[1960],{"type":76,"value":517},{"type":66,"tag":109,"props":1962,"children":1963},{"class":111,"line":296},[1964],{"type":66,"tag":109,"props":1965,"children":1966},{},[1967],{"type":76,"value":1362},{"type":66,"tag":109,"props":1969,"children":1970},{"class":111,"line":872},[1971],{"type":66,"tag":109,"props":1972,"children":1973},{},[1974],{"type":76,"value":1975}," Future\u003Cvoid> init() async {\n",{"type":66,"tag":109,"props":1977,"children":1978},{"class":111,"line":880},[1979],{"type":66,"tag":109,"props":1980,"children":1981},{},[1982],{"type":76,"value":1983}," try {\n",{"type":66,"tag":109,"props":1985,"children":1986},{"class":111,"line":889},[1987],{"type":66,"tag":109,"props":1988,"children":1989},{},[1990],{"type":76,"value":1991}," final decodedUser = await storageService.get\u003CMap\u003CString, dynamic>>(\n",{"type":66,"tag":109,"props":1993,"children":1994},{"class":111,"line":898},[1995],{"type":66,"tag":109,"props":1996,"children":1997},{},[1998],{"type":76,"value":1999}," key: _userKey,\n",{"type":66,"tag":109,"props":2001,"children":2002},{"class":111,"line":907},[2003],{"type":66,"tag":109,"props":2004,"children":2005},{},[2006],{"type":76,"value":2007}," );\n",{"type":66,"tag":109,"props":2009,"children":2010},{"class":111,"line":915},[2011],{"type":66,"tag":109,"props":2012,"children":2013},{},[2014],{"type":76,"value":2015}," if (decodedUser == null) {\n",{"type":66,"tag":109,"props":2017,"children":2018},{"class":111,"line":924},[2019],{"type":66,"tag":109,"props":2020,"children":2021},{},[2022],{"type":76,"value":2023}," _unsetUser();\n",{"type":66,"tag":109,"props":2025,"children":2026},{"class":111,"line":932},[2027],{"type":66,"tag":109,"props":2028,"children":2029},{},[2030],{"type":76,"value":2031}," } else {\n",{"type":66,"tag":109,"props":2033,"children":2034},{"class":111,"line":941},[2035],{"type":66,"tag":109,"props":2036,"children":2037},{},[2038],{"type":76,"value":2039}," final user = User.fromJson(decodedUser);\n",{"type":66,"tag":109,"props":2041,"children":2042},{"class":111,"line":950},[2043],{"type":66,"tag":109,"props":2044,"children":2045},{},[2046],{"type":76,"value":2047}," _setUser(user);\n",{"type":66,"tag":109,"props":2049,"children":2050},{"class":111,"line":959},[2051],{"type":66,"tag":109,"props":2052,"children":2053},{},[2054],{"type":76,"value":2055}," }\n",{"type":66,"tag":109,"props":2057,"children":2058},{"class":111,"line":1454},[2059],{"type":66,"tag":109,"props":2060,"children":2061},{},[2062],{"type":76,"value":2063}," } catch (e) {\n",{"type":66,"tag":109,"props":2065,"children":2066},{"class":111,"line":1463},[2067],{"type":66,"tag":109,"props":2068,"children":2069},{},[2070],{"type":76,"value":2071}," _unsetUser();\n",{"type":66,"tag":109,"props":2073,"children":2074},{"class":111,"line":1471},[2075],{"type":66,"tag":109,"props":2076,"children":2077},{},[2078],{"type":76,"value":777},{"type":66,"tag":109,"props":2080,"children":2081},{"class":111,"line":1480},[2082],{"type":66,"tag":109,"props":2083,"children":2084},{},[2085],{"type":76,"value":956},{"type":66,"tag":109,"props":2087,"children":2088},{"class":111,"line":1488},[2089],{"type":66,"tag":109,"props":2090,"children":2091},{"emptyLinePlaceholder":514},[2092],{"type":76,"value":517},{"type":66,"tag":109,"props":2094,"children":2095},{"class":111,"line":1496},[2096],{"type":66,"tag":109,"props":2097,"children":2098},{},[2099],{"type":76,"value":1362},{"type":66,"tag":109,"props":2101,"children":2102},{"class":111,"line":1505},[2103],{"type":66,"tag":109,"props":2104,"children":2105},{},[2106],{"type":76,"value":2107}," Future\u003Cvoid> dispose() async {\n",{"type":66,"tag":109,"props":2109,"children":2110},{"class":111,"line":1514},[2111],{"type":66,"tag":109,"props":2112,"children":2113},{},[2114],{"type":76,"value":2115}," _statusController.close();\n",{"type":66,"tag":109,"props":2117,"children":2118},{"class":111,"line":1523},[2119],{"type":66,"tag":109,"props":2120,"children":2121},{},[2122],{"type":76,"value":956},{"type":66,"tag":109,"props":2124,"children":2125},{"class":111,"line":1532},[2126],{"type":66,"tag":109,"props":2127,"children":2128},{"emptyLinePlaceholder":514},[2129],{"type":76,"value":517},{"type":66,"tag":109,"props":2131,"children":2132},{"class":111,"line":1540},[2133],{"type":66,"tag":109,"props":2134,"children":2135},{},[2136],{"type":76,"value":2137}," final BehaviorSubject\u003CAuthenticationStatus> _statusController =\n",{"type":66,"tag":109,"props":2139,"children":2140},{"class":111,"line":1548},[2141],{"type":66,"tag":109,"props":2142,"children":2143},{},[2144],{"type":76,"value":2145}," BehaviorSubject\u003CAuthenticationStatus>.seeded(AuthenticationStatus.unknown);\n",{"type":66,"tag":109,"props":2147,"children":2148},{"class":111,"line":1556},[2149],{"type":66,"tag":109,"props":2150,"children":2151},{"emptyLinePlaceholder":514},[2152],{"type":76,"value":517},{"type":66,"tag":109,"props":2154,"children":2155},{"class":111,"line":1565},[2156],{"type":66,"tag":109,"props":2157,"children":2158},{},[2159],{"type":76,"value":2160}," Stream\u003CAuthenticationStatus> get statusStream {\n",{"type":66,"tag":109,"props":2162,"children":2163},{"class":111,"line":1574},[2164],{"type":66,"tag":109,"props":2165,"children":2166},{},[2167],{"type":76,"value":2168}," return _statusController.stream;\n",{"type":66,"tag":109,"props":2170,"children":2171},{"class":111,"line":1582},[2172],{"type":66,"tag":109,"props":2173,"children":2174},{},[2175],{"type":76,"value":956},{"type":66,"tag":109,"props":2177,"children":2178},{"class":111,"line":1590},[2179],{"type":66,"tag":109,"props":2180,"children":2181},{"emptyLinePlaceholder":514},[2182],{"type":76,"value":517},{"type":66,"tag":109,"props":2184,"children":2185},{"class":111,"line":1598},[2186],{"type":66,"tag":109,"props":2187,"children":2188},{},[2189],{"type":76,"value":2190}," AuthenticationStatus get statusCurrent {\n",{"type":66,"tag":109,"props":2192,"children":2193},{"class":111,"line":1607},[2194],{"type":66,"tag":109,"props":2195,"children":2196},{},[2197],{"type":76,"value":2198}," return _statusController.value;\n",{"type":66,"tag":109,"props":2200,"children":2201},{"class":111,"line":1616},[2202],{"type":66,"tag":109,"props":2203,"children":2204},{},[2205],{"type":76,"value":956},{"type":66,"tag":109,"props":2207,"children":2208},{"class":111,"line":1624},[2209],{"type":66,"tag":109,"props":2210,"children":2211},{"emptyLinePlaceholder":514},[2212],{"type":76,"value":517},{"type":66,"tag":109,"props":2214,"children":2216},{"class":111,"line":2215},55,[2217],{"type":66,"tag":109,"props":2218,"children":2219},{},[2220],{"type":76,"value":2221}," User? _user;\n",{"type":66,"tag":109,"props":2223,"children":2225},{"class":111,"line":2224},56,[2226],{"type":66,"tag":109,"props":2227,"children":2228},{"emptyLinePlaceholder":514},[2229],{"type":76,"value":517},{"type":66,"tag":109,"props":2231,"children":2233},{"class":111,"line":2232},57,[2234],{"type":66,"tag":109,"props":2235,"children":2236},{},[2237],{"type":76,"value":2238}," User? get user => _user;\n",{"type":66,"tag":109,"props":2240,"children":2242},{"class":111,"line":2241},58,[2243],{"type":66,"tag":109,"props":2244,"children":2245},{"emptyLinePlaceholder":514},[2246],{"type":76,"value":517},{"type":66,"tag":109,"props":2248,"children":2250},{"class":111,"line":2249},59,[2251],{"type":66,"tag":109,"props":2252,"children":2253},{},[2254],{"type":76,"value":2255}," void _unsetUser() {\n",{"type":66,"tag":109,"props":2257,"children":2259},{"class":111,"line":2258},60,[2260],{"type":66,"tag":109,"props":2261,"children":2262},{},[2263],{"type":76,"value":2264}," _user = null;\n",{"type":66,"tag":109,"props":2266,"children":2268},{"class":111,"line":2267},61,[2269],{"type":66,"tag":109,"props":2270,"children":2271},{},[2272],{"type":76,"value":2273}," _statusController.add(AuthenticationStatus.unauthenticated);\n",{"type":66,"tag":109,"props":2275,"children":2277},{"class":111,"line":2276},62,[2278],{"type":66,"tag":109,"props":2279,"children":2280},{},[2281],{"type":76,"value":956},{"type":66,"tag":109,"props":2283,"children":2285},{"class":111,"line":2284},63,[2286],{"type":66,"tag":109,"props":2287,"children":2288},{"emptyLinePlaceholder":514},[2289],{"type":76,"value":517},{"type":66,"tag":109,"props":2291,"children":2293},{"class":111,"line":2292},64,[2294],{"type":66,"tag":109,"props":2295,"children":2296},{},[2297],{"type":76,"value":2298}," void _setUser(User user) {\n",{"type":66,"tag":109,"props":2300,"children":2302},{"class":111,"line":2301},65,[2303],{"type":66,"tag":109,"props":2304,"children":2305},{},[2306],{"type":76,"value":2307}," _user = user;\n",{"type":66,"tag":109,"props":2309,"children":2311},{"class":111,"line":2310},66,[2312],{"type":66,"tag":109,"props":2313,"children":2314},{},[2315],{"type":76,"value":2316}," _statusController.add(AuthenticationStatus.authenticated);\n",{"type":66,"tag":109,"props":2318,"children":2320},{"class":111,"line":2319},67,[2321],{"type":66,"tag":109,"props":2322,"children":2323},{},[2324],{"type":76,"value":956},{"type":66,"tag":109,"props":2326,"children":2328},{"class":111,"line":2327},68,[2329],{"type":66,"tag":109,"props":2330,"children":2331},{"emptyLinePlaceholder":514},[2332],{"type":76,"value":517},{"type":66,"tag":109,"props":2334,"children":2336},{"class":111,"line":2335},69,[2337],{"type":66,"tag":109,"props":2338,"children":2339},{},[2340],{"type":76,"value":2341}," Future\u003CUser> signUp({\n",{"type":66,"tag":109,"props":2343,"children":2345},{"class":111,"line":2344},70,[2346],{"type":66,"tag":109,"props":2347,"children":2348},{},[2349],{"type":76,"value":2350}," required String email,\n",{"type":66,"tag":109,"props":2352,"children":2354},{"class":111,"line":2353},71,[2355],{"type":66,"tag":109,"props":2356,"children":2357},{},[2358],{"type":76,"value":2359}," required String name,\n",{"type":66,"tag":109,"props":2361,"children":2363},{"class":111,"line":2362},72,[2364],{"type":66,"tag":109,"props":2365,"children":2366},{},[2367],{"type":76,"value":2368}," required String username,\n",{"type":66,"tag":109,"props":2370,"children":2372},{"class":111,"line":2371},73,[2373],{"type":66,"tag":109,"props":2374,"children":2375},{},[2376],{"type":76,"value":2377}," required String password,\n",{"type":66,"tag":109,"props":2379,"children":2381},{"class":111,"line":2380},74,[2382],{"type":66,"tag":109,"props":2383,"children":2384},{},[2385],{"type":76,"value":2386}," }) async {\n",{"type":66,"tag":109,"props":2388,"children":2390},{"class":111,"line":2389},75,[2391],{"type":66,"tag":109,"props":2392,"children":2393},{},[2394],{"type":76,"value":2395}," final authenticatedUser = await authenticationService.signUp(\n",{"type":66,"tag":109,"props":2397,"children":2399},{"class":111,"line":2398},76,[2400],{"type":66,"tag":109,"props":2401,"children":2402},{},[2403],{"type":76,"value":2404}," email: email,\n",{"type":66,"tag":109,"props":2406,"children":2408},{"class":111,"line":2407},77,[2409],{"type":66,"tag":109,"props":2410,"children":2411},{},[2412],{"type":76,"value":2413}," name: name,\n",{"type":66,"tag":109,"props":2415,"children":2417},{"class":111,"line":2416},78,[2418],{"type":66,"tag":109,"props":2419,"children":2420},{},[2421],{"type":76,"value":2422}," username: username,\n",{"type":66,"tag":109,"props":2424,"children":2426},{"class":111,"line":2425},79,[2427],{"type":66,"tag":109,"props":2428,"children":2429},{},[2430],{"type":76,"value":2431}," password: password,\n",{"type":66,"tag":109,"props":2433,"children":2435},{"class":111,"line":2434},80,[2436],{"type":66,"tag":109,"props":2437,"children":2438},{},[2439],{"type":76,"value":302},{"type":66,"tag":109,"props":2441,"children":2443},{"class":111,"line":2442},81,[2444],{"type":66,"tag":109,"props":2445,"children":2446},{},[2447],{"type":76,"value":2448}," await storageService.set(\n",{"type":66,"tag":109,"props":2450,"children":2452},{"class":111,"line":2451},82,[2453],{"type":66,"tag":109,"props":2454,"children":2455},{},[2456],{"type":76,"value":2457}," key: _userKey,\n",{"type":66,"tag":109,"props":2459,"children":2461},{"class":111,"line":2460},83,[2462],{"type":66,"tag":109,"props":2463,"children":2464},{},[2465],{"type":76,"value":2466}," value: authenticatedUser.toJson(),\n",{"type":66,"tag":109,"props":2468,"children":2470},{"class":111,"line":2469},84,[2471],{"type":66,"tag":109,"props":2472,"children":2473},{},[2474],{"type":76,"value":302},{"type":66,"tag":109,"props":2476,"children":2478},{"class":111,"line":2477},85,[2479],{"type":66,"tag":109,"props":2480,"children":2481},{"emptyLinePlaceholder":514},[2482],{"type":76,"value":517},{"type":66,"tag":109,"props":2484,"children":2486},{"class":111,"line":2485},86,[2487],{"type":66,"tag":109,"props":2488,"children":2489},{},[2490],{"type":76,"value":2491}," _setUser(authenticatedUser);\n",{"type":66,"tag":109,"props":2493,"children":2495},{"class":111,"line":2494},87,[2496],{"type":66,"tag":109,"props":2497,"children":2498},{},[2499],{"type":76,"value":2500}," return authenticatedUser;\n",{"type":66,"tag":109,"props":2502,"children":2504},{"class":111,"line":2503},88,[2505],{"type":66,"tag":109,"props":2506,"children":2507},{},[2508],{"type":76,"value":956},{"type":66,"tag":109,"props":2510,"children":2512},{"class":111,"line":2511},89,[2513],{"type":66,"tag":109,"props":2514,"children":2515},{"emptyLinePlaceholder":514},[2516],{"type":76,"value":517},{"type":66,"tag":109,"props":2518,"children":2520},{"class":111,"line":2519},90,[2521],{"type":66,"tag":109,"props":2522,"children":2523},{},[2524],{"type":76,"value":2525}," Future\u003CUser> signIn({\n",{"type":66,"tag":109,"props":2527,"children":2529},{"class":111,"line":2528},91,[2530],{"type":66,"tag":109,"props":2531,"children":2532},{},[2533],{"type":76,"value":2368},{"type":66,"tag":109,"props":2535,"children":2537},{"class":111,"line":2536},92,[2538],{"type":66,"tag":109,"props":2539,"children":2540},{},[2541],{"type":76,"value":2377},{"type":66,"tag":109,"props":2543,"children":2545},{"class":111,"line":2544},93,[2546],{"type":66,"tag":109,"props":2547,"children":2548},{},[2549],{"type":76,"value":2386},{"type":66,"tag":109,"props":2551,"children":2553},{"class":111,"line":2552},94,[2554],{"type":66,"tag":109,"props":2555,"children":2556},{},[2557],{"type":76,"value":2558}," final authenticatedUser = await authenticationService.signIn(\n",{"type":66,"tag":109,"props":2560,"children":2562},{"class":111,"line":2561},95,[2563],{"type":66,"tag":109,"props":2564,"children":2565},{},[2566],{"type":76,"value":2422},{"type":66,"tag":109,"props":2568,"children":2570},{"class":111,"line":2569},96,[2571],{"type":66,"tag":109,"props":2572,"children":2573},{},[2574],{"type":76,"value":2431},{"type":66,"tag":109,"props":2576,"children":2578},{"class":111,"line":2577},97,[2579],{"type":66,"tag":109,"props":2580,"children":2581},{},[2582],{"type":76,"value":302},{"type":66,"tag":109,"props":2584,"children":2586},{"class":111,"line":2585},98,[2587],{"type":66,"tag":109,"props":2588,"children":2589},{},[2590],{"type":76,"value":2448},{"type":66,"tag":109,"props":2592,"children":2594},{"class":111,"line":2593},99,[2595],{"type":66,"tag":109,"props":2596,"children":2597},{},[2598],{"type":76,"value":2457},{"type":66,"tag":109,"props":2600,"children":2602},{"class":111,"line":2601},100,[2603],{"type":66,"tag":109,"props":2604,"children":2605},{},[2606],{"type":76,"value":2466},{"type":66,"tag":109,"props":2608,"children":2610},{"class":111,"line":2609},101,[2611],{"type":66,"tag":109,"props":2612,"children":2613},{},[2614],{"type":76,"value":302},{"type":66,"tag":109,"props":2616,"children":2618},{"class":111,"line":2617},102,[2619],{"type":66,"tag":109,"props":2620,"children":2621},{"emptyLinePlaceholder":514},[2622],{"type":76,"value":517},{"type":66,"tag":109,"props":2624,"children":2626},{"class":111,"line":2625},103,[2627],{"type":66,"tag":109,"props":2628,"children":2629},{},[2630],{"type":76,"value":2491},{"type":66,"tag":109,"props":2632,"children":2634},{"class":111,"line":2633},104,[2635],{"type":66,"tag":109,"props":2636,"children":2637},{},[2638],{"type":76,"value":2500},{"type":66,"tag":109,"props":2640,"children":2642},{"class":111,"line":2641},105,[2643],{"type":66,"tag":109,"props":2644,"children":2645},{},[2646],{"type":76,"value":956},{"type":66,"tag":109,"props":2648,"children":2650},{"class":111,"line":2649},106,[2651],{"type":66,"tag":109,"props":2652,"children":2653},{"emptyLinePlaceholder":514},[2654],{"type":76,"value":517},{"type":66,"tag":109,"props":2656,"children":2658},{"class":111,"line":2657},107,[2659],{"type":66,"tag":109,"props":2660,"children":2661},{},[2662],{"type":76,"value":2663}," Future\u003Cvoid> signOut() async {\n",{"type":66,"tag":109,"props":2665,"children":2667},{"class":111,"line":2666},108,[2668],{"type":66,"tag":109,"props":2669,"children":2670},{},[2671],{"type":76,"value":2672}," await authenticationService.signOut();\n",{"type":66,"tag":109,"props":2674,"children":2676},{"class":111,"line":2675},109,[2677],{"type":66,"tag":109,"props":2678,"children":2679},{},[2680],{"type":76,"value":2681}," await storageService.remove(\n",{"type":66,"tag":109,"props":2683,"children":2685},{"class":111,"line":2684},110,[2686],{"type":66,"tag":109,"props":2687,"children":2688},{},[2689],{"type":76,"value":2457},{"type":66,"tag":109,"props":2691,"children":2693},{"class":111,"line":2692},111,[2694],{"type":66,"tag":109,"props":2695,"children":2696},{},[2697],{"type":76,"value":302},{"type":66,"tag":109,"props":2699,"children":2701},{"class":111,"line":2700},112,[2702],{"type":66,"tag":109,"props":2703,"children":2704},{"emptyLinePlaceholder":514},[2705],{"type":76,"value":517},{"type":66,"tag":109,"props":2707,"children":2709},{"class":111,"line":2708},113,[2710],{"type":66,"tag":109,"props":2711,"children":2712},{},[2713],{"type":76,"value":2714}," _unsetUser();\n",{"type":66,"tag":109,"props":2716,"children":2718},{"class":111,"line":2717},114,[2719],{"type":66,"tag":109,"props":2720,"children":2721},{},[2722],{"type":76,"value":956},{"type":66,"tag":109,"props":2724,"children":2726},{"class":111,"line":2725},115,[2727],{"type":66,"tag":109,"props":2728,"children":2729},{},[2730],{"type":76,"value":965},{"type":66,"tag":78,"props":2732,"children":2734},{"id":2733},"bloc",[2735],{"type":76,"value":2736},"BLoC",{"type":66,"tag":85,"props":2738,"children":2739},{},[2740],{"type":76,"value":2741},"As discussed, only repositories are accessible from dependency manager, no services are exposed, BLoC can depend multiple repositories in order to operate.",{"type":66,"tag":315,"props":2743,"children":2745},{"id":2744},"key-points-3",[2746],{"type":76,"value":320},{"type":66,"tag":322,"props":2748,"children":2749},{},[2750,2773,2786,2799,2812],{"type":66,"tag":326,"props":2751,"children":2752},{},[2753,2755],{"type":76,"value":2754},"What does it do?\n",{"type":66,"tag":322,"props":2756,"children":2757},{},[2758,2763,2768],{"type":66,"tag":326,"props":2759,"children":2760},{},[2761],{"type":76,"value":2762},"Manages the state of the application. Handles events.",{"type":66,"tag":326,"props":2764,"children":2765},{},[2766],{"type":76,"value":2767},"Interacts with Repository(s) to perform operations.",{"type":66,"tag":326,"props":2769,"children":2770},{},[2771],{"type":76,"value":2772},"Emits a stream of State objects to notify the UI about changes.",{"type":66,"tag":326,"props":2774,"children":2775},{},[2776,2778],{"type":76,"value":2777},"Improved Code Organization\n",{"type":66,"tag":322,"props":2779,"children":2780},{},[2781],{"type":66,"tag":326,"props":2782,"children":2783},{},[2784],{"type":76,"value":2785},"Separates business logic from the UI, making the code more modular and easier to understand.",{"type":66,"tag":326,"props":2787,"children":2788},{},[2789,2791],{"type":76,"value":2790},"Enhanced Testability\n",{"type":66,"tag":322,"props":2792,"children":2793},{},[2794],{"type":66,"tag":326,"props":2795,"children":2796},{},[2797],{"type":76,"value":2798},"Allows you to easily test the BLoC's behavior in isolation.",{"type":66,"tag":326,"props":2800,"children":2801},{},[2802,2804],{"type":76,"value":2803},"Improved Maintainability\n",{"type":66,"tag":322,"props":2805,"children":2806},{},[2807],{"type":66,"tag":326,"props":2808,"children":2809},{},[2810],{"type":76,"value":2811},"Makes it easier to modify and extend the application's logic without affecting other parts of the codebase.",{"type":66,"tag":326,"props":2813,"children":2814},{},[2815,2817],{"type":76,"value":2816},"Enhanced User Experience\n",{"type":66,"tag":322,"props":2818,"children":2819},{},[2820],{"type":66,"tag":326,"props":2821,"children":2822},{},[2823],{"type":76,"value":2824},"Provides a more predictable and responsive user interface by managing state changes effectively.",{"type":66,"tag":315,"props":2826,"children":2828},{"id":2827},"best-practices",[2829],{"type":76,"value":2830},"Best Practices",{"type":66,"tag":322,"props":2832,"children":2833},{},[2834,2839],{"type":66,"tag":326,"props":2835,"children":2836},{},[2837],{"type":76,"value":2838},"Use descriptive and meaningful names for classes, events, states, and methods.",{"type":66,"tag":326,"props":2840,"children":2841},{},[2842],{"type":76,"value":2843},"Follow consistent naming conventions throughout your project for better readability and maintainability.",{"type":66,"tag":2845,"props":2846,"children":2848},"h4",{"id":2847},"events",[2849],{"type":76,"value":2850},"Events",{"type":66,"tag":322,"props":2852,"children":2853},{},[2854,2859,2864],{"type":66,"tag":326,"props":2855,"children":2856},{},[2857],{"type":76,"value":2858},"Descriptive action verbs",{"type":66,"tag":326,"props":2860,"children":2861},{},[2862],{"type":76,"value":2863},"Use action verbs that clearly describe the intent of the event",{"type":66,"tag":326,"props":2865,"children":2866},{},[2867,2869,2875,2877],{"type":76,"value":2868},"Avoid generic names like ",{"type":66,"tag":72,"props":2870,"children":2872},{"className":2871},[],[2873],{"type":76,"value":2874},"ButtonClicked",{"type":76,"value":2876}," or ",{"type":66,"tag":72,"props":2878,"children":2880},{"className":2879},[],[2881],{"type":76,"value":2882},"DataUpdated",{"type":66,"tag":2845,"props":2884,"children":2886},{"id":2885},"states",[2887],{"type":76,"value":2888},"States",{"type":66,"tag":322,"props":2890,"children":2891},{},[2892,2897,2902],{"type":66,"tag":326,"props":2893,"children":2894},{},[2895],{"type":76,"value":2896},"Descriptive adjectives",{"type":66,"tag":326,"props":2898,"children":2899},{},[2900],{"type":76,"value":2901},"Use adjectives to describe the current state of the system.",{"type":66,"tag":326,"props":2903,"children":2904},{},[2905],{"type":76,"value":2906},"Avoid vague names like StateA, StateB.",{"type":66,"tag":2845,"props":2908,"children":2910},{"id":2909},"bloc-1",[2911],{"type":76,"value":2736},{"type":66,"tag":322,"props":2913,"children":2914},{},[2915,2933],{"type":66,"tag":326,"props":2916,"children":2917},{},[2918,2920],{"type":76,"value":2919},"Class Name\n",{"type":66,"tag":322,"props":2921,"children":2922},{},[2923,2928],{"type":66,"tag":326,"props":2924,"children":2925},{},[2926],{"type":76,"value":2927},"Follow the convention of using \"Bloc\" as a suffix for Bloc classes.",{"type":66,"tag":326,"props":2929,"children":2930},{},[2931],{"type":76,"value":2932},"name should clearly indicate what the Bloc is responsible for.",{"type":66,"tag":326,"props":2934,"children":2935},{},[2936,2938],{"type":76,"value":2937},"Event Handler Method Names\n",{"type":66,"tag":322,"props":2939,"children":2940},{},[2941,2954,2959],{"type":66,"tag":326,"props":2942,"children":2943},{},[2944,2946,2952],{"type":76,"value":2945},"Use the prefix ",{"type":66,"tag":72,"props":2947,"children":2949},{"className":2948},[],[2950],{"type":76,"value":2951},"_on",{"type":76,"value":2953}," followed by the corresponding event name.",{"type":66,"tag":326,"props":2955,"children":2956},{},[2957],{"type":76,"value":2958},"This convention is commonly used in Bloc implementations to clearly identify event handlers.",{"type":66,"tag":326,"props":2960,"children":2961},{},[2962,2964],{"type":76,"value":2963},"e.g. ",{"type":66,"tag":72,"props":2965,"children":2967},{"className":2966},[],[2968],{"type":76,"value":2969},"on\u003CInitializationRequested>(_onInitializationRequested);",{"type":66,"tag":315,"props":2971,"children":2973},{"id":2972},"example-3",[2974],{"type":76,"value":576},{"type":66,"tag":85,"props":2976,"children":2977},{},[2978],{"type":66,"tag":72,"props":2979,"children":2981},{"className":2980},[],[2982],{"type":76,"value":2983},"lib/features/authentication/bloc/authentication_bloc.dart",{"type":66,"tag":322,"props":2985,"children":2986},{},[2987,2992,2997],{"type":66,"tag":326,"props":2988,"children":2989},{},[2990],{"type":76,"value":2991},"Extends Bloc and manages authentication state based on events.",{"type":66,"tag":326,"props":2993,"children":2994},{},[2995],{"type":76,"value":2996},"The AuthenticationBloc constructor injects an AuthenticationRepository for interacting with authentication logic.",{"type":66,"tag":326,"props":2998,"children":2999},{},[3000,3002,3008,3010],{"type":76,"value":3001},"Event handlers (",{"type":66,"tag":72,"props":3003,"children":3005},{"className":3004},[],[3006],{"type":76,"value":3007},"_on*Requested",{"type":76,"value":3009},") handle specific events\n",{"type":66,"tag":322,"props":3011,"children":3012},{},[3013,3024,3043],{"type":66,"tag":326,"props":3014,"children":3015},{},[3016,3022],{"type":66,"tag":72,"props":3017,"children":3019},{"className":3018},[],[3020],{"type":76,"value":3021},"_onInitializationRequested",{"type":76,"value":3023},": Checks the initial authentication state and emits AuthenticationSuccessful if a user is logged in, otherwise stays in the initial state.",{"type":66,"tag":326,"props":3025,"children":3026},{},[3027,3033,3035,3041],{"type":66,"tag":72,"props":3028,"children":3030},{"className":3029},[],[3031],{"type":76,"value":3032},"_onSignUpRequested",{"type":76,"value":3034},", ",{"type":66,"tag":72,"props":3036,"children":3038},{"className":3037},[],[3039],{"type":76,"value":3040},"_onSignInRequested",{"type":76,"value":3042},": Handle signup and signin requests respectively, interacting with the repository and emitting loading/success/failure states.",{"type":66,"tag":326,"props":3044,"children":3045},{},[3046,3052],{"type":66,"tag":72,"props":3047,"children":3049},{"className":3048},[],[3050],{"type":76,"value":3051},"_onSignOutRequested",{"type":76,"value":3053},": Handles user signout, interacting with the repository and emitting loading/success/failure states.",{"type":66,"tag":67,"props":3055,"children":3057},{"code":3056,"language":102,"meta":60,"className":103,"style":60},"class AuthenticationBloc extends Bloc\u003CAuthenticationEvent, AuthenticationState> {\n AuthenticationBloc({\n required this.authenticationRepository,\n }) : super(const AuthenticationInitial()) {\n on\u003CInitializationRequested>(_onInitializationRequested);\n on\u003CSignUpRequested>(_onSignUpRequested);\n on\u003CSignInRequested>(_onSignInRequested);\n on\u003CSignOutRequested>(_onSignOutRequested);\n }\n\n final AuthenticationRepository authenticationRepository;\n\n void _onInitializationRequested(\n InitializationRequested event,\n Emitter\u003CAuthenticationState> emit,\n ) {\n if (authenticationRepository.statusCurrent.isAuthenticated &&\n authenticationRepository.user != null) {\n emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n }\n }\n\n Future\u003Cvoid> _onSignUpRequested(\n SignUpRequested event,\n Emitter\u003CAuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signUp(\n email: event.email,\n name: event.name,\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future\u003Cvoid> _onSignInRequested(\n SignInRequested event,\n Emitter\u003CAuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n final user = await authenticationRepository.signIn(\n username: event.username,\n password: event.password,\n );\n emit(AuthenticationSuccessful(user: user));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n\n Future\u003Cvoid> _onSignOutRequested(\n SignOutRequested event,\n Emitter\u003CAuthenticationState> emit,\n ) async {\n try {\n emit(const AuthenticationLoading());\n await authenticationRepository.signOut();\n emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n } catch (e, st) {\n Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n emit(const AuthenticationFailed(\n message: VaahStringConstants.somethingWentWrong,\n ));\n }\n }\n}\n",[3058],{"type":66,"tag":72,"props":3059,"children":3060},{"__ignoreMap":60},[3061,3069,3077,3085,3093,3101,3109,3117,3125,3132,3139,3147,3154,3162,3170,3178,3186,3194,3202,3210,3217,3224,3231,3239,3247,3254,3262,3269,3277,3285,3293,3301,3309,3317,3324,3332,3340,3348,3356,3364,3372,3379,3386,3393,3401,3409,3416,3423,3430,3437,3445,3452,3459,3466,3473,3480,3488,3495,3502,3509,3516,3523,3530,3538,3546,3553,3560,3567,3574,3582,3590,3597,3605,3612,3619,3626,3633,3640],{"type":66,"tag":109,"props":3062,"children":3063},{"class":111,"line":112},[3064],{"type":66,"tag":109,"props":3065,"children":3066},{},[3067],{"type":76,"value":3068},"class AuthenticationBloc extends Bloc\u003CAuthenticationEvent, AuthenticationState> {\n",{"type":66,"tag":109,"props":3070,"children":3071},{"class":111,"line":121},[3072],{"type":66,"tag":109,"props":3073,"children":3074},{},[3075],{"type":76,"value":3076}," AuthenticationBloc({\n",{"type":66,"tag":109,"props":3078,"children":3079},{"class":111,"line":130},[3080],{"type":66,"tag":109,"props":3081,"children":3082},{},[3083],{"type":76,"value":3084}," required this.authenticationRepository,\n",{"type":66,"tag":109,"props":3086,"children":3087},{"class":111,"line":139},[3088],{"type":66,"tag":109,"props":3089,"children":3090},{},[3091],{"type":76,"value":3092}," }) : super(const AuthenticationInitial()) {\n",{"type":66,"tag":109,"props":3094,"children":3095},{"class":111,"line":148},[3096],{"type":66,"tag":109,"props":3097,"children":3098},{},[3099],{"type":76,"value":3100}," on\u003CInitializationRequested>(_onInitializationRequested);\n",{"type":66,"tag":109,"props":3102,"children":3103},{"class":111,"line":157},[3104],{"type":66,"tag":109,"props":3105,"children":3106},{},[3107],{"type":76,"value":3108}," on\u003CSignUpRequested>(_onSignUpRequested);\n",{"type":66,"tag":109,"props":3110,"children":3111},{"class":111,"line":166},[3112],{"type":66,"tag":109,"props":3113,"children":3114},{},[3115],{"type":76,"value":3116}," on\u003CSignInRequested>(_onSignInRequested);\n",{"type":66,"tag":109,"props":3118,"children":3119},{"class":111,"line":175},[3120],{"type":66,"tag":109,"props":3121,"children":3122},{},[3123],{"type":76,"value":3124}," on\u003CSignOutRequested>(_onSignOutRequested);\n",{"type":66,"tag":109,"props":3126,"children":3127},{"class":111,"line":184},[3128],{"type":66,"tag":109,"props":3129,"children":3130},{},[3131],{"type":76,"value":956},{"type":66,"tag":109,"props":3133,"children":3134},{"class":111,"line":192},[3135],{"type":66,"tag":109,"props":3136,"children":3137},{"emptyLinePlaceholder":514},[3138],{"type":76,"value":517},{"type":66,"tag":109,"props":3140,"children":3141},{"class":111,"line":201},[3142],{"type":66,"tag":109,"props":3143,"children":3144},{},[3145],{"type":76,"value":3146}," final AuthenticationRepository authenticationRepository;\n",{"type":66,"tag":109,"props":3148,"children":3149},{"class":111,"line":209},[3150],{"type":66,"tag":109,"props":3151,"children":3152},{"emptyLinePlaceholder":514},[3153],{"type":76,"value":517},{"type":66,"tag":109,"props":3155,"children":3156},{"class":111,"line":218},[3157],{"type":66,"tag":109,"props":3158,"children":3159},{},[3160],{"type":76,"value":3161}," void _onInitializationRequested(\n",{"type":66,"tag":109,"props":3163,"children":3164},{"class":111,"line":227},[3165],{"type":66,"tag":109,"props":3166,"children":3167},{},[3168],{"type":76,"value":3169}," InitializationRequested event,\n",{"type":66,"tag":109,"props":3171,"children":3172},{"class":111,"line":236},[3173],{"type":66,"tag":109,"props":3174,"children":3175},{},[3176],{"type":76,"value":3177}," Emitter\u003CAuthenticationState> emit,\n",{"type":66,"tag":109,"props":3179,"children":3180},{"class":111,"line":244},[3181],{"type":66,"tag":109,"props":3182,"children":3183},{},[3184],{"type":76,"value":3185}," ) {\n",{"type":66,"tag":109,"props":3187,"children":3188},{"class":111,"line":253},[3189],{"type":66,"tag":109,"props":3190,"children":3191},{},[3192],{"type":76,"value":3193}," if (authenticationRepository.statusCurrent.isAuthenticated &&\n",{"type":66,"tag":109,"props":3195,"children":3196},{"class":111,"line":261},[3197],{"type":66,"tag":109,"props":3198,"children":3199},{},[3200],{"type":76,"value":3201}," authenticationRepository.user != null) {\n",{"type":66,"tag":109,"props":3203,"children":3204},{"class":111,"line":270},[3205],{"type":66,"tag":109,"props":3206,"children":3207},{},[3208],{"type":76,"value":3209}," emit(AuthenticationSuccessful(user: authenticationRepository.user!));\n",{"type":66,"tag":109,"props":3211,"children":3212},{"class":111,"line":278},[3213],{"type":66,"tag":109,"props":3214,"children":3215},{},[3216],{"type":76,"value":777},{"type":66,"tag":109,"props":3218,"children":3219},{"class":111,"line":287},[3220],{"type":66,"tag":109,"props":3221,"children":3222},{},[3223],{"type":76,"value":956},{"type":66,"tag":109,"props":3225,"children":3226},{"class":111,"line":296},[3227],{"type":66,"tag":109,"props":3228,"children":3229},{"emptyLinePlaceholder":514},[3230],{"type":76,"value":517},{"type":66,"tag":109,"props":3232,"children":3233},{"class":111,"line":872},[3234],{"type":66,"tag":109,"props":3235,"children":3236},{},[3237],{"type":76,"value":3238}," Future\u003Cvoid> _onSignUpRequested(\n",{"type":66,"tag":109,"props":3240,"children":3241},{"class":111,"line":880},[3242],{"type":66,"tag":109,"props":3243,"children":3244},{},[3245],{"type":76,"value":3246}," SignUpRequested event,\n",{"type":66,"tag":109,"props":3248,"children":3249},{"class":111,"line":889},[3250],{"type":66,"tag":109,"props":3251,"children":3252},{},[3253],{"type":76,"value":3177},{"type":66,"tag":109,"props":3255,"children":3256},{"class":111,"line":898},[3257],{"type":66,"tag":109,"props":3258,"children":3259},{},[3260],{"type":76,"value":3261}," ) async {\n",{"type":66,"tag":109,"props":3263,"children":3264},{"class":111,"line":907},[3265],{"type":66,"tag":109,"props":3266,"children":3267},{},[3268],{"type":76,"value":1983},{"type":66,"tag":109,"props":3270,"children":3271},{"class":111,"line":915},[3272],{"type":66,"tag":109,"props":3273,"children":3274},{},[3275],{"type":76,"value":3276}," emit(const AuthenticationLoading());\n",{"type":66,"tag":109,"props":3278,"children":3279},{"class":111,"line":924},[3280],{"type":66,"tag":109,"props":3281,"children":3282},{},[3283],{"type":76,"value":3284}," final user = await authenticationRepository.signUp(\n",{"type":66,"tag":109,"props":3286,"children":3287},{"class":111,"line":932},[3288],{"type":66,"tag":109,"props":3289,"children":3290},{},[3291],{"type":76,"value":3292}," email: event.email,\n",{"type":66,"tag":109,"props":3294,"children":3295},{"class":111,"line":941},[3296],{"type":66,"tag":109,"props":3297,"children":3298},{},[3299],{"type":76,"value":3300}," name: event.name,\n",{"type":66,"tag":109,"props":3302,"children":3303},{"class":111,"line":950},[3304],{"type":66,"tag":109,"props":3305,"children":3306},{},[3307],{"type":76,"value":3308}," username: event.username,\n",{"type":66,"tag":109,"props":3310,"children":3311},{"class":111,"line":959},[3312],{"type":66,"tag":109,"props":3313,"children":3314},{},[3315],{"type":76,"value":3316}," password: event.password,\n",{"type":66,"tag":109,"props":3318,"children":3319},{"class":111,"line":1454},[3320],{"type":66,"tag":109,"props":3321,"children":3322},{},[3323],{"type":76,"value":2007},{"type":66,"tag":109,"props":3325,"children":3326},{"class":111,"line":1463},[3327],{"type":66,"tag":109,"props":3328,"children":3329},{},[3330],{"type":76,"value":3331}," emit(AuthenticationSuccessful(user: user));\n",{"type":66,"tag":109,"props":3333,"children":3334},{"class":111,"line":1471},[3335],{"type":66,"tag":109,"props":3336,"children":3337},{},[3338],{"type":76,"value":3339}," } catch (e, st) {\n",{"type":66,"tag":109,"props":3341,"children":3342},{"class":111,"line":1480},[3343],{"type":66,"tag":109,"props":3344,"children":3345},{},[3346],{"type":76,"value":3347}," Log.exception(e, stackTrace: st, hint: 'user-signup-failed');\n",{"type":66,"tag":109,"props":3349,"children":3350},{"class":111,"line":1488},[3351],{"type":66,"tag":109,"props":3352,"children":3353},{},[3354],{"type":76,"value":3355}," emit(const AuthenticationFailed(\n",{"type":66,"tag":109,"props":3357,"children":3358},{"class":111,"line":1496},[3359],{"type":66,"tag":109,"props":3360,"children":3361},{},[3362],{"type":76,"value":3363}," message: VaahStringConstants.somethingWentWrong,\n",{"type":66,"tag":109,"props":3365,"children":3366},{"class":111,"line":1505},[3367],{"type":66,"tag":109,"props":3368,"children":3369},{},[3370],{"type":76,"value":3371}," ));\n",{"type":66,"tag":109,"props":3373,"children":3374},{"class":111,"line":1514},[3375],{"type":66,"tag":109,"props":3376,"children":3377},{},[3378],{"type":76,"value":777},{"type":66,"tag":109,"props":3380,"children":3381},{"class":111,"line":1523},[3382],{"type":66,"tag":109,"props":3383,"children":3384},{},[3385],{"type":76,"value":956},{"type":66,"tag":109,"props":3387,"children":3388},{"class":111,"line":1532},[3389],{"type":66,"tag":109,"props":3390,"children":3391},{"emptyLinePlaceholder":514},[3392],{"type":76,"value":517},{"type":66,"tag":109,"props":3394,"children":3395},{"class":111,"line":1540},[3396],{"type":66,"tag":109,"props":3397,"children":3398},{},[3399],{"type":76,"value":3400}," Future\u003Cvoid> _onSignInRequested(\n",{"type":66,"tag":109,"props":3402,"children":3403},{"class":111,"line":1548},[3404],{"type":66,"tag":109,"props":3405,"children":3406},{},[3407],{"type":76,"value":3408}," SignInRequested event,\n",{"type":66,"tag":109,"props":3410,"children":3411},{"class":111,"line":1556},[3412],{"type":66,"tag":109,"props":3413,"children":3414},{},[3415],{"type":76,"value":3177},{"type":66,"tag":109,"props":3417,"children":3418},{"class":111,"line":1565},[3419],{"type":66,"tag":109,"props":3420,"children":3421},{},[3422],{"type":76,"value":3261},{"type":66,"tag":109,"props":3424,"children":3425},{"class":111,"line":1574},[3426],{"type":66,"tag":109,"props":3427,"children":3428},{},[3429],{"type":76,"value":1983},{"type":66,"tag":109,"props":3431,"children":3432},{"class":111,"line":1582},[3433],{"type":66,"tag":109,"props":3434,"children":3435},{},[3436],{"type":76,"value":3276},{"type":66,"tag":109,"props":3438,"children":3439},{"class":111,"line":1590},[3440],{"type":66,"tag":109,"props":3441,"children":3442},{},[3443],{"type":76,"value":3444}," final user = await authenticationRepository.signIn(\n",{"type":66,"tag":109,"props":3446,"children":3447},{"class":111,"line":1598},[3448],{"type":66,"tag":109,"props":3449,"children":3450},{},[3451],{"type":76,"value":3308},{"type":66,"tag":109,"props":3453,"children":3454},{"class":111,"line":1607},[3455],{"type":66,"tag":109,"props":3456,"children":3457},{},[3458],{"type":76,"value":3316},{"type":66,"tag":109,"props":3460,"children":3461},{"class":111,"line":1616},[3462],{"type":66,"tag":109,"props":3463,"children":3464},{},[3465],{"type":76,"value":2007},{"type":66,"tag":109,"props":3467,"children":3468},{"class":111,"line":1624},[3469],{"type":66,"tag":109,"props":3470,"children":3471},{},[3472],{"type":76,"value":3331},{"type":66,"tag":109,"props":3474,"children":3475},{"class":111,"line":2215},[3476],{"type":66,"tag":109,"props":3477,"children":3478},{},[3479],{"type":76,"value":3339},{"type":66,"tag":109,"props":3481,"children":3482},{"class":111,"line":2224},[3483],{"type":66,"tag":109,"props":3484,"children":3485},{},[3486],{"type":76,"value":3487}," Log.exception(e, stackTrace: st, hint: 'user-signin-failed');\n",{"type":66,"tag":109,"props":3489,"children":3490},{"class":111,"line":2232},[3491],{"type":66,"tag":109,"props":3492,"children":3493},{},[3494],{"type":76,"value":3355},{"type":66,"tag":109,"props":3496,"children":3497},{"class":111,"line":2241},[3498],{"type":66,"tag":109,"props":3499,"children":3500},{},[3501],{"type":76,"value":3363},{"type":66,"tag":109,"props":3503,"children":3504},{"class":111,"line":2249},[3505],{"type":66,"tag":109,"props":3506,"children":3507},{},[3508],{"type":76,"value":3371},{"type":66,"tag":109,"props":3510,"children":3511},{"class":111,"line":2258},[3512],{"type":66,"tag":109,"props":3513,"children":3514},{},[3515],{"type":76,"value":777},{"type":66,"tag":109,"props":3517,"children":3518},{"class":111,"line":2267},[3519],{"type":66,"tag":109,"props":3520,"children":3521},{},[3522],{"type":76,"value":956},{"type":66,"tag":109,"props":3524,"children":3525},{"class":111,"line":2276},[3526],{"type":66,"tag":109,"props":3527,"children":3528},{"emptyLinePlaceholder":514},[3529],{"type":76,"value":517},{"type":66,"tag":109,"props":3531,"children":3532},{"class":111,"line":2284},[3533],{"type":66,"tag":109,"props":3534,"children":3535},{},[3536],{"type":76,"value":3537}," Future\u003Cvoid> _onSignOutRequested(\n",{"type":66,"tag":109,"props":3539,"children":3540},{"class":111,"line":2292},[3541],{"type":66,"tag":109,"props":3542,"children":3543},{},[3544],{"type":76,"value":3545}," SignOutRequested event,\n",{"type":66,"tag":109,"props":3547,"children":3548},{"class":111,"line":2301},[3549],{"type":66,"tag":109,"props":3550,"children":3551},{},[3552],{"type":76,"value":3177},{"type":66,"tag":109,"props":3554,"children":3555},{"class":111,"line":2310},[3556],{"type":66,"tag":109,"props":3557,"children":3558},{},[3559],{"type":76,"value":3261},{"type":66,"tag":109,"props":3561,"children":3562},{"class":111,"line":2319},[3563],{"type":66,"tag":109,"props":3564,"children":3565},{},[3566],{"type":76,"value":1983},{"type":66,"tag":109,"props":3568,"children":3569},{"class":111,"line":2327},[3570],{"type":66,"tag":109,"props":3571,"children":3572},{},[3573],{"type":76,"value":3276},{"type":66,"tag":109,"props":3575,"children":3576},{"class":111,"line":2335},[3577],{"type":66,"tag":109,"props":3578,"children":3579},{},[3580],{"type":76,"value":3581}," await authenticationRepository.signOut();\n",{"type":66,"tag":109,"props":3583,"children":3584},{"class":111,"line":2344},[3585],{"type":66,"tag":109,"props":3586,"children":3587},{},[3588],{"type":76,"value":3589}," emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));\n",{"type":66,"tag":109,"props":3591,"children":3592},{"class":111,"line":2353},[3593],{"type":66,"tag":109,"props":3594,"children":3595},{},[3596],{"type":76,"value":3339},{"type":66,"tag":109,"props":3598,"children":3599},{"class":111,"line":2362},[3600],{"type":66,"tag":109,"props":3601,"children":3602},{},[3603],{"type":76,"value":3604}," Log.exception(e, stackTrace: st, hint: 'user-signout-failed');\n",{"type":66,"tag":109,"props":3606,"children":3607},{"class":111,"line":2371},[3608],{"type":66,"tag":109,"props":3609,"children":3610},{},[3611],{"type":76,"value":3355},{"type":66,"tag":109,"props":3613,"children":3614},{"class":111,"line":2380},[3615],{"type":66,"tag":109,"props":3616,"children":3617},{},[3618],{"type":76,"value":3363},{"type":66,"tag":109,"props":3620,"children":3621},{"class":111,"line":2389},[3622],{"type":66,"tag":109,"props":3623,"children":3624},{},[3625],{"type":76,"value":3371},{"type":66,"tag":109,"props":3627,"children":3628},{"class":111,"line":2398},[3629],{"type":66,"tag":109,"props":3630,"children":3631},{},[3632],{"type":76,"value":777},{"type":66,"tag":109,"props":3634,"children":3635},{"class":111,"line":2407},[3636],{"type":66,"tag":109,"props":3637,"children":3638},{},[3639],{"type":76,"value":956},{"type":66,"tag":109,"props":3641,"children":3642},{"class":111,"line":2416},[3643],{"type":66,"tag":109,"props":3644,"children":3645},{},[3646],{"type":76,"value":965},{"type":66,"tag":85,"props":3648,"children":3649},{},[3650],{"type":66,"tag":72,"props":3651,"children":3653},{"className":3652},[],[3654],{"type":76,"value":3655},"lib/features/authentication/bloc/authentication_event.dart",{"type":66,"tag":322,"props":3657,"children":3658},{},[3659],{"type":66,"tag":326,"props":3660,"children":3661},{},[3662],{"type":76,"value":3663},"AuthenticationEvent: Sealed class representing events that trigger state changes",{"type":66,"tag":67,"props":3665,"children":3667},{"code":3666,"language":102,"meta":60,"className":103,"style":60},"@immutable\nsealed class AuthenticationEvent {\n const AuthenticationEvent();\n}\n\nfinal class InitializationRequested extends AuthenticationEvent {\n const InitializationRequested();\n}\n\nfinal class SignUpRequested extends AuthenticationEvent {\n const SignUpRequested({\n required this.email,\n required this.name,\n required this.username,\n required this.password,\n });\n\n final String email;\n final String name;\n final String username;\n final String password;\n}\n\nfinal class SignInRequested extends AuthenticationEvent {\n const SignInRequested({\n required this.username,\n required this.password,\n });\n\n final String username;\n final String password;\n}\n\nfinal class SignOutRequested extends AuthenticationEvent {\n const SignOutRequested();\n}\n",[3668],{"type":66,"tag":72,"props":3669,"children":3670},{"__ignoreMap":60},[3671,3679,3687,3695,3702,3709,3717,3725,3732,3739,3747,3755,3763,3771,3779,3787,3794,3801,3809,3817,3825,3833,3840,3847,3855,3863,3870,3877,3884,3891,3898,3905,3912,3919,3927,3935],{"type":66,"tag":109,"props":3672,"children":3673},{"class":111,"line":112},[3674],{"type":66,"tag":109,"props":3675,"children":3676},{},[3677],{"type":76,"value":3678},"@immutable\n",{"type":66,"tag":109,"props":3680,"children":3681},{"class":111,"line":121},[3682],{"type":66,"tag":109,"props":3683,"children":3684},{},[3685],{"type":76,"value":3686},"sealed class AuthenticationEvent {\n",{"type":66,"tag":109,"props":3688,"children":3689},{"class":111,"line":130},[3690],{"type":66,"tag":109,"props":3691,"children":3692},{},[3693],{"type":76,"value":3694}," const AuthenticationEvent();\n",{"type":66,"tag":109,"props":3696,"children":3697},{"class":111,"line":139},[3698],{"type":66,"tag":109,"props":3699,"children":3700},{},[3701],{"type":76,"value":965},{"type":66,"tag":109,"props":3703,"children":3704},{"class":111,"line":148},[3705],{"type":66,"tag":109,"props":3706,"children":3707},{"emptyLinePlaceholder":514},[3708],{"type":76,"value":517},{"type":66,"tag":109,"props":3710,"children":3711},{"class":111,"line":157},[3712],{"type":66,"tag":109,"props":3713,"children":3714},{},[3715],{"type":76,"value":3716},"final class InitializationRequested extends AuthenticationEvent {\n",{"type":66,"tag":109,"props":3718,"children":3719},{"class":111,"line":166},[3720],{"type":66,"tag":109,"props":3721,"children":3722},{},[3723],{"type":76,"value":3724}," const InitializationRequested();\n",{"type":66,"tag":109,"props":3726,"children":3727},{"class":111,"line":175},[3728],{"type":66,"tag":109,"props":3729,"children":3730},{},[3731],{"type":76,"value":965},{"type":66,"tag":109,"props":3733,"children":3734},{"class":111,"line":184},[3735],{"type":66,"tag":109,"props":3736,"children":3737},{"emptyLinePlaceholder":514},[3738],{"type":76,"value":517},{"type":66,"tag":109,"props":3740,"children":3741},{"class":111,"line":192},[3742],{"type":66,"tag":109,"props":3743,"children":3744},{},[3745],{"type":76,"value":3746},"final class SignUpRequested extends AuthenticationEvent {\n",{"type":66,"tag":109,"props":3748,"children":3749},{"class":111,"line":201},[3750],{"type":66,"tag":109,"props":3751,"children":3752},{},[3753],{"type":76,"value":3754}," const SignUpRequested({\n",{"type":66,"tag":109,"props":3756,"children":3757},{"class":111,"line":209},[3758],{"type":66,"tag":109,"props":3759,"children":3760},{},[3761],{"type":76,"value":3762}," required this.email,\n",{"type":66,"tag":109,"props":3764,"children":3765},{"class":111,"line":218},[3766],{"type":66,"tag":109,"props":3767,"children":3768},{},[3769],{"type":76,"value":3770}," required this.name,\n",{"type":66,"tag":109,"props":3772,"children":3773},{"class":111,"line":227},[3774],{"type":66,"tag":109,"props":3775,"children":3776},{},[3777],{"type":76,"value":3778}," required this.username,\n",{"type":66,"tag":109,"props":3780,"children":3781},{"class":111,"line":236},[3782],{"type":66,"tag":109,"props":3783,"children":3784},{},[3785],{"type":76,"value":3786}," required this.password,\n",{"type":66,"tag":109,"props":3788,"children":3789},{"class":111,"line":244},[3790],{"type":66,"tag":109,"props":3791,"children":3792},{},[3793],{"type":76,"value":1930},{"type":66,"tag":109,"props":3795,"children":3796},{"class":111,"line":253},[3797],{"type":66,"tag":109,"props":3798,"children":3799},{"emptyLinePlaceholder":514},[3800],{"type":76,"value":517},{"type":66,"tag":109,"props":3802,"children":3803},{"class":111,"line":261},[3804],{"type":66,"tag":109,"props":3805,"children":3806},{},[3807],{"type":76,"value":3808}," final String email;\n",{"type":66,"tag":109,"props":3810,"children":3811},{"class":111,"line":270},[3812],{"type":66,"tag":109,"props":3813,"children":3814},{},[3815],{"type":76,"value":3816}," final String name;\n",{"type":66,"tag":109,"props":3818,"children":3819},{"class":111,"line":278},[3820],{"type":66,"tag":109,"props":3821,"children":3822},{},[3823],{"type":76,"value":3824}," final String username;\n",{"type":66,"tag":109,"props":3826,"children":3827},{"class":111,"line":287},[3828],{"type":66,"tag":109,"props":3829,"children":3830},{},[3831],{"type":76,"value":3832}," final String password;\n",{"type":66,"tag":109,"props":3834,"children":3835},{"class":111,"line":296},[3836],{"type":66,"tag":109,"props":3837,"children":3838},{},[3839],{"type":76,"value":965},{"type":66,"tag":109,"props":3841,"children":3842},{"class":111,"line":872},[3843],{"type":66,"tag":109,"props":3844,"children":3845},{"emptyLinePlaceholder":514},[3846],{"type":76,"value":517},{"type":66,"tag":109,"props":3848,"children":3849},{"class":111,"line":880},[3850],{"type":66,"tag":109,"props":3851,"children":3852},{},[3853],{"type":76,"value":3854},"final class SignInRequested extends AuthenticationEvent {\n",{"type":66,"tag":109,"props":3856,"children":3857},{"class":111,"line":889},[3858],{"type":66,"tag":109,"props":3859,"children":3860},{},[3861],{"type":76,"value":3862}," const SignInRequested({\n",{"type":66,"tag":109,"props":3864,"children":3865},{"class":111,"line":898},[3866],{"type":66,"tag":109,"props":3867,"children":3868},{},[3869],{"type":76,"value":3778},{"type":66,"tag":109,"props":3871,"children":3872},{"class":111,"line":907},[3873],{"type":66,"tag":109,"props":3874,"children":3875},{},[3876],{"type":76,"value":3786},{"type":66,"tag":109,"props":3878,"children":3879},{"class":111,"line":915},[3880],{"type":66,"tag":109,"props":3881,"children":3882},{},[3883],{"type":76,"value":1930},{"type":66,"tag":109,"props":3885,"children":3886},{"class":111,"line":924},[3887],{"type":66,"tag":109,"props":3888,"children":3889},{"emptyLinePlaceholder":514},[3890],{"type":76,"value":517},{"type":66,"tag":109,"props":3892,"children":3893},{"class":111,"line":932},[3894],{"type":66,"tag":109,"props":3895,"children":3896},{},[3897],{"type":76,"value":3824},{"type":66,"tag":109,"props":3899,"children":3900},{"class":111,"line":941},[3901],{"type":66,"tag":109,"props":3902,"children":3903},{},[3904],{"type":76,"value":3832},{"type":66,"tag":109,"props":3906,"children":3907},{"class":111,"line":950},[3908],{"type":66,"tag":109,"props":3909,"children":3910},{},[3911],{"type":76,"value":965},{"type":66,"tag":109,"props":3913,"children":3914},{"class":111,"line":959},[3915],{"type":66,"tag":109,"props":3916,"children":3917},{"emptyLinePlaceholder":514},[3918],{"type":76,"value":517},{"type":66,"tag":109,"props":3920,"children":3921},{"class":111,"line":1454},[3922],{"type":66,"tag":109,"props":3923,"children":3924},{},[3925],{"type":76,"value":3926},"final class SignOutRequested extends AuthenticationEvent {\n",{"type":66,"tag":109,"props":3928,"children":3929},{"class":111,"line":1463},[3930],{"type":66,"tag":109,"props":3931,"children":3932},{},[3933],{"type":76,"value":3934}," const SignOutRequested();\n",{"type":66,"tag":109,"props":3936,"children":3937},{"class":111,"line":1471},[3938],{"type":66,"tag":109,"props":3939,"children":3940},{},[3941],{"type":76,"value":965},{"type":66,"tag":85,"props":3943,"children":3944},{},[3945],{"type":66,"tag":72,"props":3946,"children":3948},{"className":3947},[],[3949],{"type":76,"value":3950},"lib/features/authentication/bloc/authentication_state.dart",{"type":66,"tag":322,"props":3952,"children":3953},{},[3954],{"type":66,"tag":326,"props":3955,"children":3956},{},[3957],{"type":76,"value":3958},"AuthenticationState: Sealed class representing different states of authentication.",{"type":66,"tag":67,"props":3960,"children":3962},{"code":3961,"language":102,"meta":60,"className":103,"style":60},"@immutable\nsealed class AuthenticationState {\n const AuthenticationState();\n}\n\nfinal class AuthenticationInitial extends AuthenticationState {\n const AuthenticationInitial();\n}\n\nfinal class AuthenticationLoading extends AuthenticationState {\n const AuthenticationLoading();\n}\n\nfinal class AuthenticationSuccessful extends AuthenticationState {\n const AuthenticationSuccessful({\n required this.user,\n });\n\n final User user;\n}\n\nfinal class AuthenticationChanged extends AuthenticationState {\n const AuthenticationChanged({\n required this.message,\n });\n\n final String message;\n}\n\nfinal class AuthenticationFailed extends AuthenticationState {\n const AuthenticationFailed({\n required this.message,\n });\n\n final String message;\n}\n",[3963],{"type":66,"tag":72,"props":3964,"children":3965},{"__ignoreMap":60},[3966,3973,3981,3989,3996,4003,4011,4019,4026,4033,4041,4049,4056,4063,4071,4079,4087,4094,4101,4109,4116,4123,4131,4139,4147,4154,4161,4169,4176,4183,4191,4199,4206,4213,4220,4227],{"type":66,"tag":109,"props":3967,"children":3968},{"class":111,"line":112},[3969],{"type":66,"tag":109,"props":3970,"children":3971},{},[3972],{"type":76,"value":3678},{"type":66,"tag":109,"props":3974,"children":3975},{"class":111,"line":121},[3976],{"type":66,"tag":109,"props":3977,"children":3978},{},[3979],{"type":76,"value":3980},"sealed class AuthenticationState {\n",{"type":66,"tag":109,"props":3982,"children":3983},{"class":111,"line":130},[3984],{"type":66,"tag":109,"props":3985,"children":3986},{},[3987],{"type":76,"value":3988}," const AuthenticationState();\n",{"type":66,"tag":109,"props":3990,"children":3991},{"class":111,"line":139},[3992],{"type":66,"tag":109,"props":3993,"children":3994},{},[3995],{"type":76,"value":965},{"type":66,"tag":109,"props":3997,"children":3998},{"class":111,"line":148},[3999],{"type":66,"tag":109,"props":4000,"children":4001},{"emptyLinePlaceholder":514},[4002],{"type":76,"value":517},{"type":66,"tag":109,"props":4004,"children":4005},{"class":111,"line":157},[4006],{"type":66,"tag":109,"props":4007,"children":4008},{},[4009],{"type":76,"value":4010},"final class AuthenticationInitial extends AuthenticationState {\n",{"type":66,"tag":109,"props":4012,"children":4013},{"class":111,"line":166},[4014],{"type":66,"tag":109,"props":4015,"children":4016},{},[4017],{"type":76,"value":4018}," const AuthenticationInitial();\n",{"type":66,"tag":109,"props":4020,"children":4021},{"class":111,"line":175},[4022],{"type":66,"tag":109,"props":4023,"children":4024},{},[4025],{"type":76,"value":965},{"type":66,"tag":109,"props":4027,"children":4028},{"class":111,"line":184},[4029],{"type":66,"tag":109,"props":4030,"children":4031},{"emptyLinePlaceholder":514},[4032],{"type":76,"value":517},{"type":66,"tag":109,"props":4034,"children":4035},{"class":111,"line":192},[4036],{"type":66,"tag":109,"props":4037,"children":4038},{},[4039],{"type":76,"value":4040},"final class AuthenticationLoading extends AuthenticationState {\n",{"type":66,"tag":109,"props":4042,"children":4043},{"class":111,"line":201},[4044],{"type":66,"tag":109,"props":4045,"children":4046},{},[4047],{"type":76,"value":4048}," const AuthenticationLoading();\n",{"type":66,"tag":109,"props":4050,"children":4051},{"class":111,"line":209},[4052],{"type":66,"tag":109,"props":4053,"children":4054},{},[4055],{"type":76,"value":965},{"type":66,"tag":109,"props":4057,"children":4058},{"class":111,"line":218},[4059],{"type":66,"tag":109,"props":4060,"children":4061},{"emptyLinePlaceholder":514},[4062],{"type":76,"value":517},{"type":66,"tag":109,"props":4064,"children":4065},{"class":111,"line":227},[4066],{"type":66,"tag":109,"props":4067,"children":4068},{},[4069],{"type":76,"value":4070},"final class AuthenticationSuccessful extends AuthenticationState {\n",{"type":66,"tag":109,"props":4072,"children":4073},{"class":111,"line":236},[4074],{"type":66,"tag":109,"props":4075,"children":4076},{},[4077],{"type":76,"value":4078}," const AuthenticationSuccessful({\n",{"type":66,"tag":109,"props":4080,"children":4081},{"class":111,"line":244},[4082],{"type":66,"tag":109,"props":4083,"children":4084},{},[4085],{"type":76,"value":4086}," required this.user,\n",{"type":66,"tag":109,"props":4088,"children":4089},{"class":111,"line":253},[4090],{"type":66,"tag":109,"props":4091,"children":4092},{},[4093],{"type":76,"value":1930},{"type":66,"tag":109,"props":4095,"children":4096},{"class":111,"line":261},[4097],{"type":66,"tag":109,"props":4098,"children":4099},{"emptyLinePlaceholder":514},[4100],{"type":76,"value":517},{"type":66,"tag":109,"props":4102,"children":4103},{"class":111,"line":270},[4104],{"type":66,"tag":109,"props":4105,"children":4106},{},[4107],{"type":76,"value":4108}," final User user;\n",{"type":66,"tag":109,"props":4110,"children":4111},{"class":111,"line":278},[4112],{"type":66,"tag":109,"props":4113,"children":4114},{},[4115],{"type":76,"value":965},{"type":66,"tag":109,"props":4117,"children":4118},{"class":111,"line":287},[4119],{"type":66,"tag":109,"props":4120,"children":4121},{"emptyLinePlaceholder":514},[4122],{"type":76,"value":517},{"type":66,"tag":109,"props":4124,"children":4125},{"class":111,"line":296},[4126],{"type":66,"tag":109,"props":4127,"children":4128},{},[4129],{"type":76,"value":4130},"final class AuthenticationChanged extends AuthenticationState {\n",{"type":66,"tag":109,"props":4132,"children":4133},{"class":111,"line":872},[4134],{"type":66,"tag":109,"props":4135,"children":4136},{},[4137],{"type":76,"value":4138}," const AuthenticationChanged({\n",{"type":66,"tag":109,"props":4140,"children":4141},{"class":111,"line":880},[4142],{"type":66,"tag":109,"props":4143,"children":4144},{},[4145],{"type":76,"value":4146}," required this.message,\n",{"type":66,"tag":109,"props":4148,"children":4149},{"class":111,"line":889},[4150],{"type":66,"tag":109,"props":4151,"children":4152},{},[4153],{"type":76,"value":1930},{"type":66,"tag":109,"props":4155,"children":4156},{"class":111,"line":898},[4157],{"type":66,"tag":109,"props":4158,"children":4159},{"emptyLinePlaceholder":514},[4160],{"type":76,"value":517},{"type":66,"tag":109,"props":4162,"children":4163},{"class":111,"line":907},[4164],{"type":66,"tag":109,"props":4165,"children":4166},{},[4167],{"type":76,"value":4168}," final String message;\n",{"type":66,"tag":109,"props":4170,"children":4171},{"class":111,"line":915},[4172],{"type":66,"tag":109,"props":4173,"children":4174},{},[4175],{"type":76,"value":965},{"type":66,"tag":109,"props":4177,"children":4178},{"class":111,"line":924},[4179],{"type":66,"tag":109,"props":4180,"children":4181},{"emptyLinePlaceholder":514},[4182],{"type":76,"value":517},{"type":66,"tag":109,"props":4184,"children":4185},{"class":111,"line":932},[4186],{"type":66,"tag":109,"props":4187,"children":4188},{},[4189],{"type":76,"value":4190},"final class AuthenticationFailed extends AuthenticationState {\n",{"type":66,"tag":109,"props":4192,"children":4193},{"class":111,"line":941},[4194],{"type":66,"tag":109,"props":4195,"children":4196},{},[4197],{"type":76,"value":4198}," const AuthenticationFailed({\n",{"type":66,"tag":109,"props":4200,"children":4201},{"class":111,"line":950},[4202],{"type":66,"tag":109,"props":4203,"children":4204},{},[4205],{"type":76,"value":4146},{"type":66,"tag":109,"props":4207,"children":4208},{"class":111,"line":959},[4209],{"type":66,"tag":109,"props":4210,"children":4211},{},[4212],{"type":76,"value":1930},{"type":66,"tag":109,"props":4214,"children":4215},{"class":111,"line":1454},[4216],{"type":66,"tag":109,"props":4217,"children":4218},{"emptyLinePlaceholder":514},[4219],{"type":76,"value":517},{"type":66,"tag":109,"props":4221,"children":4222},{"class":111,"line":1463},[4223],{"type":66,"tag":109,"props":4224,"children":4225},{},[4226],{"type":76,"value":4168},{"type":66,"tag":109,"props":4228,"children":4229},{"class":111,"line":1471},[4230],{"type":66,"tag":109,"props":4231,"children":4232},{},[4233],{"type":76,"value":965},{"type":66,"tag":315,"props":4235,"children":4237},{"id":4236},"usage-2",[4238],{"type":76,"value":971},{"type":66,"tag":85,"props":4240,"children":4241},{},[4242],{"type":76,"value":4243},"On somewhere core level we initialize this bloc because it is used application wide, otherwise for other blocs for one screen only we can initialize for that screen only",{"type":66,"tag":67,"props":4245,"children":4247},{"code":4246,"language":102,"meta":60,"className":103,"style":60}," MultiBlocProvider(\n providers: [\n BlocProvider\u003CAuthenticationBloc>(\n create: (BuildContext context) => AuthenticationBloc(\n authenticationRepository: DependencyManager.authenticationRepository,\n )..add(const InitializationRequested()),\n ),\n ],\n child: ... ,\n )\n",[4248],{"type":66,"tag":72,"props":4249,"children":4250},{"__ignoreMap":60},[4251,4259,4266,4273,4281,4288,4295,4302,4309,4317],{"type":66,"tag":109,"props":4252,"children":4253},{"class":111,"line":112},[4254],{"type":66,"tag":109,"props":4255,"children":4256},{},[4257],{"type":76,"value":4258}," MultiBlocProvider(\n",{"type":66,"tag":109,"props":4260,"children":4261},{"class":111,"line":121},[4262],{"type":66,"tag":109,"props":4263,"children":4264},{},[4265],{"type":76,"value":994},{"type":66,"tag":109,"props":4267,"children":4268},{"class":111,"line":130},[4269],{"type":66,"tag":109,"props":4270,"children":4271},{},[4272],{"type":76,"value":1002},{"type":66,"tag":109,"props":4274,"children":4275},{"class":111,"line":139},[4276],{"type":66,"tag":109,"props":4277,"children":4278},{},[4279],{"type":76,"value":4280}," create: (BuildContext context) => AuthenticationBloc(\n",{"type":66,"tag":109,"props":4282,"children":4283},{"class":111,"line":148},[4284],{"type":66,"tag":109,"props":4285,"children":4286},{},[4287],{"type":76,"value":1018},{"type":66,"tag":109,"props":4289,"children":4290},{"class":111,"line":157},[4291],{"type":66,"tag":109,"props":4292,"children":4293},{},[4294],{"type":76,"value":1026},{"type":66,"tag":109,"props":4296,"children":4297},{"class":111,"line":166},[4298],{"type":66,"tag":109,"props":4299,"children":4300},{},[4301],{"type":76,"value":1034},{"type":66,"tag":109,"props":4303,"children":4304},{"class":111,"line":175},[4305],{"type":66,"tag":109,"props":4306,"children":4307},{},[4308],{"type":76,"value":831},{"type":66,"tag":109,"props":4310,"children":4311},{"class":111,"line":184},[4312],{"type":66,"tag":109,"props":4313,"children":4314},{},[4315],{"type":76,"value":4316}," child: ... ,\n",{"type":66,"tag":109,"props":4318,"children":4319},{"class":111,"line":192},[4320],{"type":66,"tag":109,"props":4321,"children":4322},{},[4323],{"type":76,"value":4324}," )\n",{"type":66,"tag":322,"props":4326,"children":4327},{},[4328],{"type":66,"tag":326,"props":4329,"children":4330},{},[4331,4333],{"type":76,"value":4332},"BlocBuilder\n",{"type":66,"tag":322,"props":4334,"children":4335},{},[4336],{"type":66,"tag":326,"props":4337,"children":4338},{},[4339],{"type":76,"value":4340},"Primarily used to build UI based on the current state of a Bloc.",{"type":66,"tag":67,"props":4342,"children":4344},{"code":4343,"language":102,"meta":60,"className":103,"style":60},"BlocBuilder\u003CAuthenticationBloc, AuthenticationState>(\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n",[4345],{"type":66,"tag":72,"props":4346,"children":4347},{"__ignoreMap":60},[4348,4356,4364,4372,4380,4388,4396,4404,4412,4420,4428,4435,4443],{"type":66,"tag":109,"props":4349,"children":4350},{"class":111,"line":112},[4351],{"type":66,"tag":109,"props":4352,"children":4353},{},[4354],{"type":76,"value":4355},"BlocBuilder\u003CAuthenticationBloc, AuthenticationState>(\n",{"type":66,"tag":109,"props":4357,"children":4358},{"class":111,"line":121},[4359],{"type":66,"tag":109,"props":4360,"children":4361},{},[4362],{"type":76,"value":4363}," builder: (context, state) {\n",{"type":66,"tag":109,"props":4365,"children":4366},{"class":111,"line":130},[4367],{"type":66,"tag":109,"props":4368,"children":4369},{},[4370],{"type":76,"value":4371}," if (state is AuthenticationLoading) {\n",{"type":66,"tag":109,"props":4373,"children":4374},{"class":111,"line":139},[4375],{"type":66,"tag":109,"props":4376,"children":4377},{},[4378],{"type":76,"value":4379}," return const CircularProgressIndicator();\n",{"type":66,"tag":109,"props":4381,"children":4382},{"class":111,"line":148},[4383],{"type":66,"tag":109,"props":4384,"children":4385},{},[4386],{"type":76,"value":4387}," } else if (state is AuthenticationSuccessful) {\n",{"type":66,"tag":109,"props":4389,"children":4390},{"class":111,"line":157},[4391],{"type":66,"tag":109,"props":4392,"children":4393},{},[4394],{"type":76,"value":4395}," return Text('Authentication Successful');\n",{"type":66,"tag":109,"props":4397,"children":4398},{"class":111,"line":166},[4399],{"type":66,"tag":109,"props":4400,"children":4401},{},[4402],{"type":76,"value":4403}," } else if (state is AuthenticationFailed) {\n",{"type":66,"tag":109,"props":4405,"children":4406},{"class":111,"line":175},[4407],{"type":66,"tag":109,"props":4408,"children":4409},{},[4410],{"type":76,"value":4411}," return Text('Authentication Failed');\n",{"type":66,"tag":109,"props":4413,"children":4414},{"class":111,"line":184},[4415],{"type":66,"tag":109,"props":4416,"children":4417},{},[4418],{"type":76,"value":4419}," } else {\n",{"type":66,"tag":109,"props":4421,"children":4422},{"class":111,"line":192},[4423],{"type":66,"tag":109,"props":4424,"children":4425},{},[4426],{"type":76,"value":4427}," return Text('Not authenticated');\n",{"type":66,"tag":109,"props":4429,"children":4430},{"class":111,"line":201},[4431],{"type":66,"tag":109,"props":4432,"children":4433},{},[4434],{"type":76,"value":777},{"type":66,"tag":109,"props":4436,"children":4437},{"class":111,"line":209},[4438],{"type":66,"tag":109,"props":4439,"children":4440},{},[4441],{"type":76,"value":4442}," },\n",{"type":66,"tag":109,"props":4444,"children":4445},{"class":111,"line":218},[4446],{"type":66,"tag":109,"props":4447,"children":4448},{},[4449],{"type":76,"value":4450},")\n",{"type":66,"tag":322,"props":4452,"children":4453},{},[4454],{"type":66,"tag":326,"props":4455,"children":4456},{},[4457,4459],{"type":76,"value":4458},"BlocListener\n",{"type":66,"tag":322,"props":4460,"children":4461},{},[4462],{"type":66,"tag":326,"props":4463,"children":4464},{},[4465],{"type":76,"value":4466},"Primarily used to perform side effects in response to state changes within a Bloc.",{"type":66,"tag":67,"props":4468,"children":4470},{"code":4469,"language":102,"meta":60,"className":103,"style":60},"BlocListener\u003CAuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n child: // Your UI here,\n)\n",[4471],{"type":66,"tag":72,"props":4472,"children":4473},{"__ignoreMap":60},[4474,4482,4490,4498,4506,4514,4521,4528,4535,4543],{"type":66,"tag":109,"props":4475,"children":4476},{"class":111,"line":112},[4477],{"type":66,"tag":109,"props":4478,"children":4479},{},[4480],{"type":76,"value":4481},"BlocListener\u003CAuthenticationBloc, AuthenticationState>(\n",{"type":66,"tag":109,"props":4483,"children":4484},{"class":111,"line":121},[4485],{"type":66,"tag":109,"props":4486,"children":4487},{},[4488],{"type":76,"value":4489}," listener: (context, state) {\n",{"type":66,"tag":109,"props":4491,"children":4492},{"class":111,"line":130},[4493],{"type":66,"tag":109,"props":4494,"children":4495},{},[4496],{"type":76,"value":4497}," if (state is AuthenticationFailed) {\n",{"type":66,"tag":109,"props":4499,"children":4500},{"class":111,"line":139},[4501],{"type":66,"tag":109,"props":4502,"children":4503},{},[4504],{"type":76,"value":4505}," ScaffoldMessenger.of(context).showSnackBar(\n",{"type":66,"tag":109,"props":4507,"children":4508},{"class":111,"line":148},[4509],{"type":66,"tag":109,"props":4510,"children":4511},{},[4512],{"type":76,"value":4513}," SnackBar(content: Text(state.message)),\n",{"type":66,"tag":109,"props":4515,"children":4516},{"class":111,"line":157},[4517],{"type":66,"tag":109,"props":4518,"children":4519},{},[4520],{"type":76,"value":2007},{"type":66,"tag":109,"props":4522,"children":4523},{"class":111,"line":166},[4524],{"type":66,"tag":109,"props":4525,"children":4526},{},[4527],{"type":76,"value":777},{"type":66,"tag":109,"props":4529,"children":4530},{"class":111,"line":175},[4531],{"type":66,"tag":109,"props":4532,"children":4533},{},[4534],{"type":76,"value":4442},{"type":66,"tag":109,"props":4536,"children":4537},{"class":111,"line":184},[4538],{"type":66,"tag":109,"props":4539,"children":4540},{},[4541],{"type":76,"value":4542}," child: // Your UI here,\n",{"type":66,"tag":109,"props":4544,"children":4545},{"class":111,"line":192},[4546],{"type":66,"tag":109,"props":4547,"children":4548},{},[4549],{"type":76,"value":4450},{"type":66,"tag":322,"props":4551,"children":4552},{},[4553],{"type":66,"tag":326,"props":4554,"children":4555},{},[4556,4558],{"type":76,"value":4557},"BlocConsumer\n",{"type":66,"tag":322,"props":4559,"children":4560},{},[4561],{"type":66,"tag":326,"props":4562,"children":4563},{},[4564],{"type":76,"value":4565},"Combines the functionality of both BlocListener and BlocBuilder.",{"type":66,"tag":67,"props":4567,"children":4569},{"code":4568,"language":102,"meta":60,"className":103,"style":60},"BlocConsumer\u003CAuthenticationBloc, AuthenticationState>(\n listener: (context, state) {\n if (state is AuthenticationFailed) {\n ScaffoldMessenger.of(context).showSnackBar(\n SnackBar(content: Text(state.message)),\n );\n }\n },\n builder: (context, state) {\n if (state is AuthenticationLoading) {\n return const CircularProgressIndicator();\n } else if (state is AuthenticationSuccessful) {\n return Text('Authentication Successful');\n } else if (state is AuthenticationFailed) {\n return Text('Authentication Failed');\n } else {\n return Text('Not authenticated');\n }\n },\n)\n",[4570],{"type":66,"tag":72,"props":4571,"children":4572},{"__ignoreMap":60},[4573,4581,4588,4595,4602,4609,4616,4623,4630,4637,4644,4651,4658,4665,4672,4679,4686,4693,4700,4707],{"type":66,"tag":109,"props":4574,"children":4575},{"class":111,"line":112},[4576],{"type":66,"tag":109,"props":4577,"children":4578},{},[4579],{"type":76,"value":4580},"BlocConsumer\u003CAuthenticationBloc, AuthenticationState>(\n",{"type":66,"tag":109,"props":4582,"children":4583},{"class":111,"line":121},[4584],{"type":66,"tag":109,"props":4585,"children":4586},{},[4587],{"type":76,"value":4489},{"type":66,"tag":109,"props":4589,"children":4590},{"class":111,"line":130},[4591],{"type":66,"tag":109,"props":4592,"children":4593},{},[4594],{"type":76,"value":4497},{"type":66,"tag":109,"props":4596,"children":4597},{"class":111,"line":139},[4598],{"type":66,"tag":109,"props":4599,"children":4600},{},[4601],{"type":76,"value":4505},{"type":66,"tag":109,"props":4603,"children":4604},{"class":111,"line":148},[4605],{"type":66,"tag":109,"props":4606,"children":4607},{},[4608],{"type":76,"value":4513},{"type":66,"tag":109,"props":4610,"children":4611},{"class":111,"line":157},[4612],{"type":66,"tag":109,"props":4613,"children":4614},{},[4615],{"type":76,"value":2007},{"type":66,"tag":109,"props":4617,"children":4618},{"class":111,"line":166},[4619],{"type":66,"tag":109,"props":4620,"children":4621},{},[4622],{"type":76,"value":777},{"type":66,"tag":109,"props":4624,"children":4625},{"class":111,"line":175},[4626],{"type":66,"tag":109,"props":4627,"children":4628},{},[4629],{"type":76,"value":4442},{"type":66,"tag":109,"props":4631,"children":4632},{"class":111,"line":184},[4633],{"type":66,"tag":109,"props":4634,"children":4635},{},[4636],{"type":76,"value":4363},{"type":66,"tag":109,"props":4638,"children":4639},{"class":111,"line":192},[4640],{"type":66,"tag":109,"props":4641,"children":4642},{},[4643],{"type":76,"value":4371},{"type":66,"tag":109,"props":4645,"children":4646},{"class":111,"line":201},[4647],{"type":66,"tag":109,"props":4648,"children":4649},{},[4650],{"type":76,"value":4379},{"type":66,"tag":109,"props":4652,"children":4653},{"class":111,"line":209},[4654],{"type":66,"tag":109,"props":4655,"children":4656},{},[4657],{"type":76,"value":4387},{"type":66,"tag":109,"props":4659,"children":4660},{"class":111,"line":218},[4661],{"type":66,"tag":109,"props":4662,"children":4663},{},[4664],{"type":76,"value":4395},{"type":66,"tag":109,"props":4666,"children":4667},{"class":111,"line":227},[4668],{"type":66,"tag":109,"props":4669,"children":4670},{},[4671],{"type":76,"value":4403},{"type":66,"tag":109,"props":4673,"children":4674},{"class":111,"line":236},[4675],{"type":66,"tag":109,"props":4676,"children":4677},{},[4678],{"type":76,"value":4411},{"type":66,"tag":109,"props":4680,"children":4681},{"class":111,"line":244},[4682],{"type":66,"tag":109,"props":4683,"children":4684},{},[4685],{"type":76,"value":4419},{"type":66,"tag":109,"props":4687,"children":4688},{"class":111,"line":253},[4689],{"type":66,"tag":109,"props":4690,"children":4691},{},[4692],{"type":76,"value":4427},{"type":66,"tag":109,"props":4694,"children":4695},{"class":111,"line":261},[4696],{"type":66,"tag":109,"props":4697,"children":4698},{},[4699],{"type":76,"value":777},{"type":66,"tag":109,"props":4701,"children":4702},{"class":111,"line":270},[4703],{"type":66,"tag":109,"props":4704,"children":4705},{},[4706],{"type":76,"value":4442},{"type":66,"tag":109,"props":4708,"children":4709},{"class":111,"line":278},[4710],{"type":66,"tag":109,"props":4711,"children":4712},{},[4713],{"type":76,"value":4450},{"type":66,"tag":78,"props":4715,"children":4717},{"id":4716},"circular-dependency",[4718],{"type":76,"value":4719},"Circular Dependency",{"type":66,"tag":315,"props":4721,"children":4723},{"id":4722},"the-problem",[4724],{"type":76,"value":4725},"The problem",{"type":66,"tag":67,"props":4727,"children":4728},{"code":464,"language":102,"meta":60,"className":103,"style":60},[4729],{"type":66,"tag":72,"props":4730,"children":4731},{"__ignoreMap":60},[4732,4739,4746,4753,4760,4767,4774,4781,4788,4795,4802,4809,4816],{"type":66,"tag":109,"props":4733,"children":4734},{"class":111,"line":112},[4735],{"type":66,"tag":109,"props":4736,"children":4737},{},[4738],{"type":76,"value":476},{"type":66,"tag":109,"props":4740,"children":4741},{"class":111,"line":121},[4742],{"type":66,"tag":109,"props":4743,"children":4744},{},[4745],{"type":76,"value":484},{"type":66,"tag":109,"props":4747,"children":4748},{"class":111,"line":130},[4749],{"type":66,"tag":109,"props":4750,"children":4751},{},[4752],{"type":76,"value":492},{"type":66,"tag":109,"props":4754,"children":4755},{"class":111,"line":139},[4756],{"type":66,"tag":109,"props":4757,"children":4758},{},[4759],{"type":76,"value":500},{"type":66,"tag":109,"props":4761,"children":4762},{"class":111,"line":148},[4763],{"type":66,"tag":109,"props":4764,"children":4765},{},[4766],{"type":76,"value":508},{"type":66,"tag":109,"props":4768,"children":4769},{"class":111,"line":157},[4770],{"type":66,"tag":109,"props":4771,"children":4772},{"emptyLinePlaceholder":514},[4773],{"type":76,"value":517},{"type":66,"tag":109,"props":4775,"children":4776},{"class":111,"line":166},[4777],{"type":66,"tag":109,"props":4778,"children":4779},{},[4780],{"type":76,"value":525},{"type":66,"tag":109,"props":4782,"children":4783},{"class":111,"line":175},[4784],{"type":66,"tag":109,"props":4785,"children":4786},{},[4787],{"type":76,"value":533},{"type":66,"tag":109,"props":4789,"children":4790},{"class":111,"line":184},[4791],{"type":66,"tag":109,"props":4792,"children":4793},{},[4794],{"type":76,"value":508},{"type":66,"tag":109,"props":4796,"children":4797},{"class":111,"line":192},[4798],{"type":66,"tag":109,"props":4799,"children":4800},{"emptyLinePlaceholder":514},[4801],{"type":76,"value":517},{"type":66,"tag":109,"props":4803,"children":4804},{"class":111,"line":201},[4805],{"type":66,"tag":109,"props":4806,"children":4807},{},[4808],{"type":76,"value":555},{"type":66,"tag":109,"props":4810,"children":4811},{"class":111,"line":209},[4812],{"type":66,"tag":109,"props":4813,"children":4814},{},[4815],{"type":76,"value":563},{"type":66,"tag":109,"props":4817,"children":4818},{"class":111,"line":218},[4819],{"type":66,"tag":109,"props":4820,"children":4821},{},[4822],{"type":76,"value":508},{"type":66,"tag":4824,"props":4825,"children":4826},"ol",{},[4827,4845,4863,4880],{"type":66,"tag":326,"props":4828,"children":4829},{},[4830,4836,4838,4843],{"type":66,"tag":72,"props":4831,"children":4833},{"className":4832},[],[4834],{"type":76,"value":4835},"ApiTokenInterceptor",{"type":76,"value":4837}," needs ",{"type":66,"tag":72,"props":4839,"children":4841},{"className":4840},[],[4842],{"type":76,"value":349},{"type":76,"value":4844}," to retrieve the user's securely locally stored API token.",{"type":66,"tag":326,"props":4846,"children":4847},{},[4848,4853,4855,4861],{"type":66,"tag":72,"props":4849,"children":4851},{"className":4850},[],[4852],{"type":76,"value":349},{"type":76,"value":4854}," depends on ",{"type":66,"tag":72,"props":4856,"children":4858},{"className":4857},[],[4859],{"type":76,"value":4860},"AuthenticationService",{"type":76,"value":4862}," for authentication logic.",{"type":66,"tag":326,"props":4864,"children":4865},{},[4866,4871,4873,4878],{"type":66,"tag":72,"props":4867,"children":4869},{"className":4868},[],[4870],{"type":76,"value":4860},{"type":76,"value":4872}," relies on ",{"type":66,"tag":72,"props":4874,"children":4876},{"className":4875},[],[4877],{"type":76,"value":357},{"type":76,"value":4879}," to make API calls.",{"type":66,"tag":326,"props":4881,"children":4882},{},[4883,4888,4889,4894],{"type":66,"tag":72,"props":4884,"children":4886},{"className":4885},[],[4887],{"type":76,"value":357},{"type":76,"value":4837},{"type":66,"tag":72,"props":4890,"children":4892},{"className":4891},[],[4893],{"type":76,"value":4835},{"type":76,"value":400},{"type":66,"tag":315,"props":4896,"children":4898},{"id":4897},"the-solution",[4899],{"type":76,"value":4900},"The solution",{"type":66,"tag":322,"props":4902,"children":4903},{},[4904,4936,4958,4975],{"type":66,"tag":326,"props":4905,"children":4906},{},[4907,4912,4914,4919,4921,4927,4929,4934],{"type":66,"tag":72,"props":4908,"children":4910},{"className":4909},[],[4911],{"type":76,"value":357},{"type":76,"value":4913}," is created with ",{"type":66,"tag":72,"props":4915,"children":4917},{"className":4916},[],[4918],{"type":76,"value":4835},{"type":76,"value":4920},". However, the interceptor uses a lambda function (",{"type":66,"tag":72,"props":4922,"children":4924},{"className":4923},[],[4925],{"type":76,"value":4926},"() => authenticationRepository",{"type":76,"value":4928},") to delay retrieving the ",{"type":66,"tag":72,"props":4930,"children":4932},{"className":4931},[],[4933],{"type":76,"value":349},{"type":76,"value":4935}," instance.",{"type":66,"tag":326,"props":4937,"children":4938},{},[4939,4944,4946,4951,4953],{"type":66,"tag":72,"props":4940,"children":4942},{"className":4941},[],[4943],{"type":76,"value":4860},{"type":76,"value":4945}," is created immediately after ",{"type":66,"tag":72,"props":4947,"children":4949},{"className":4948},[],[4950],{"type":76,"value":357},{"type":76,"value":4952}," using the already created ",{"type":66,"tag":72,"props":4954,"children":4956},{"className":4955},[],[4957],{"type":76,"value":357},{"type":66,"tag":326,"props":4959,"children":4960},{},[4961,4963,4968,4969,4974],{"type":76,"value":4962},"Finally, ",{"type":66,"tag":72,"props":4964,"children":4966},{"className":4965},[],[4967],{"type":76,"value":349},{"type":76,"value":4945},{"type":66,"tag":72,"props":4970,"children":4972},{"className":4971},[],[4973],{"type":76,"value":4860},{"type":76,"value":400},{"type":66,"tag":326,"props":4976,"children":4977},{},[4978,4980,4985,4987,4992,4994,4999,5001,5007,5009,5014],{"type":76,"value":4979},"One more thing to note here: We need to initialize services and repo in this perticular order (We can not initialize anything between given initializations). We always first initialize ",{"type":66,"tag":72,"props":4981,"children":4983},{"className":4982},[],[4984],{"type":76,"value":357},{"type":76,"value":4986},", then ",{"type":66,"tag":72,"props":4988,"children":4990},{"className":4989},[],[4991],{"type":76,"value":4860},{"type":76,"value":4993},", and then ",{"type":66,"tag":72,"props":4995,"children":4997},{"className":4996},[],[4998],{"type":76,"value":349},{"type":76,"value":5000}," -- ",{"type":66,"tag":72,"props":5002,"children":5004},{"className":5003},[],[5005],{"type":76,"value":5006},"Immediately",{"type":76,"value":5008}," one after another just to ensure that no other service that depends on ",{"type":66,"tag":72,"props":5010,"children":5012},{"className":5011},[],[5013],{"type":76,"value":357},{"type":76,"value":5015}," makes any request inbetween.",{"type":66,"tag":315,"props":5017,"children":5019},{"id":5018},"the-lambda-function",[5020],{"type":76,"value":5021},"The lambda function",{"type":66,"tag":322,"props":5023,"children":5024},{},[5025,5043,5055],{"type":66,"tag":326,"props":5026,"children":5027},{},[5028,5030,5035,5037,5042],{"type":76,"value":5029},"The lambda function ",{"type":66,"tag":72,"props":5031,"children":5033},{"className":5032},[],[5034],{"type":76,"value":4926},{"type":76,"value":5036}," is used within the ",{"type":66,"tag":72,"props":5038,"children":5040},{"className":5039},[],[5041],{"type":76,"value":4835},{"type":76,"value":400},{"type":66,"tag":326,"props":5044,"children":5045},{},[5046,5048,5053],{"type":76,"value":5047},"This function delays the retrieval of the ",{"type":66,"tag":72,"props":5049,"children":5051},{"className":5050},[],[5052],{"type":76,"value":608},{"type":76,"value":5054}," until it's actually needed.",{"type":66,"tag":326,"props":5056,"children":5057},{},[5058],{"type":76,"value":5059},"By the time the interceptor needs the repository during an API call, init would have already completed creating all the services and the repositories. And thus needed repository instance would be available by that time.",{"type":66,"tag":5061,"props":5062,"children":5063},"style",{},[5064],{"type":76,"value":5065},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":60,"searchDepth":121,"depth":121,"links":5067},[5068,5069,5075,5080,5084,5090],{"id":80,"depth":121,"text":83},{"id":305,"depth":121,"text":308,"children":5070},[5071,5072,5073,5074],{"id":317,"depth":130,"text":320},{"id":429,"depth":130,"text":432},{"id":573,"depth":130,"text":576},{"id":968,"depth":130,"text":971},{"id":1067,"depth":121,"text":1070,"children":5076},[5077,5078,5079],{"id":1073,"depth":130,"text":320},{"id":1151,"depth":130,"text":576},{"id":1632,"depth":130,"text":971},{"id":1651,"depth":121,"text":1654,"children":5081},[5082,5083],{"id":1662,"depth":130,"text":1665},{"id":1719,"depth":130,"text":576},{"id":2733,"depth":121,"text":2736,"children":5085},[5086,5087,5088,5089],{"id":2744,"depth":130,"text":320},{"id":2827,"depth":130,"text":2830},{"id":2972,"depth":130,"text":576},{"id":4236,"depth":130,"text":971},{"id":4716,"depth":121,"text":4719,"children":5091},[5092,5093,5094],{"id":4722,"depth":130,"text":4725},{"id":4897,"depth":130,"text":4900},{"id":5018,"depth":130,"text":5021},"markdown","content:2.mobile-app:3.poc:2.architecture.md","content","2.mobile-app/3.poc/2.architecture.md","2.mobile-app/3.poc/2.architecture","md",[5102,5103],{"_path":41,"title":9,"description":40},{"_path":49,"title":48,"description":61},1741786570869] \ No newline at end of file diff --git a/mobile-app/poc/architecture/index.html b/mobile-app/poc/architecture/index.html new file mode 100644 index 0000000..0679a63 --- /dev/null +++ b/mobile-app/poc/architecture/index.html @@ -0,0 +1,592 @@ +Architecture PoC - Nuxt UI Pro - Docs template
Poc

Architecture PoC

./lib
+├── data
+│   ├── models
+│   └── services
+├── domain
+│   ├── interfaces
+│   └── repositories
+├── presentation
+│   ├── pages
+│   └── widgets
+└── routes
+

Main entry point

app_config.dart

This file is the main entry point of the application. It initializes the DependencyManager and sets up the application's initial configuration, including system UI styles. It then renders a FutureBuilder to handle the asynchronous initialization process of the DependencyManager. Based on the initialization result, it displays a loading screen, an error screen, or the main application.

    return FutureBuilder<bool>(
+      future: DependencyManager.init(),
+      builder: (context, snapshot) {
+        if (snapshot.connectionState == ConnectionState.waiting) {
+          return const _DefaultAppConfig(
+            child: _SplashScreen(),
+          );
+        } else if (snapshot.hasError) {
+          return const _DefaultAppConfig(
+            child: _HardRestartScreen(),
+          );
+        } else if (snapshot.hasData) {
+          return _AppConfigImpl(
+            env: env,
+          );
+        } else {
+          return const _DefaultAppConfig(
+            child: _SomethingWentWrongScreen(),
+          );
+        }
+      },
+    );
+

Dependency Manager

the DependencyManager acts as a central hub for managing application-wide dependencies.

Key Points

  • Focus on Repositories +
    • The DependencyManager primarily initializes and exposes repositories. Repositories encapsulate data access logic, often combining data from multiple services.
    • For instance, AuthenticationRepository combines data from ApiService and StorageService. This separation of concerns promotes cleaner code and easier testing.
  • BLoCs and Repositories +
    • BLoCs, which manage application state and logic, can leverage the DependencyManager to access the required repositories.
    • For instance, an AuthenticationBloc might depend on the AuthenticationRepository.
  • Modular Design +
    • This approach promotes modularity by isolating dependency creation logic within the DependencyManager. BLoCs and other components don't need to be aware of how their dependencies are created, making the code more maintainable and testable.
  • Singleton Pattern +
    • The DependencyManager utilizes the Singleton pattern to ensure only one instance exists throughout the application's lifetime. This guarantees consistent access to the initialized dependencies.

Issues with this Approach

  • Circular Dependency Issue +
    • It's something when first thing depends on second and second depends on first, creating a deadlock.
    • Solution to this I explain later here.
    final vaahApiService = ApiService(
+      interceptors: [
+        ApiTokenInterceptor(() => authenticationRepository),
+      ],
+    );
+
+    final authenticationService = AuthenticationService.vaah(
+      apiService: vaahApiService,
+    );
+
+    authenticationRepository = AuthenticationRepository(
+      authenticationService: authenticationService,
+    );
+

Example

  • init Method +
    • This asynchronous method initializes the essential services & repositories
  • For instance, authenticationRepository
    • DependencyManager Creates the core AuthenticationRepository instance, injecting both secureStorageService and authenticationService. And Let's say some other repository depends on secureStorageService we do not need to create a new one, we can utilize existing one.
  • Exposing variables +
    • To expose you need to create direct variable in DependencyManager with static late final
    • For instance, static late final AuthenticationRepository authenticationRepository;

dependency_manager.dart

/// DependencyManager: Singleton Class
+abstract class DependencyManager {
+  static bool _isInitialized = false;
+
+  static late final AuthenticationRepository authenticationRepository;
+
+  static Future<bool> init() async {
+    if (_isInitialized) {
+      return true;
+    }
+
+    final secureStorageService = StorageService.secure();
+
+    final vaahApiService = ApiService(
+      interceptors: [
+        ApiTokenInterceptor(() => authenticationRepository),
+      ],
+    )..addSerializerFunctions(VaahResponseSerializers.defaults());
+
+    final authenticationService = AuthenticationService.vaah(
+      apiService: vaahApiService,
+    );
+
+    authenticationRepository = AuthenticationRepository(
+      storageService: secureStorageService,
+      authenticationService: authenticationService,
+    );
+    await authenticationRepository.init();
+
+    _isInitialized = true;
+    return _isInitialized;
+  }
+}
+

Usage

    return MultiBlocProvider(
+      providers: [
+        BlocProvider<AuthenticationBloc>(
+          create: (context) => AuthenticationBloc(
+            authenticationRepository: DependencyManager.authenticationRepository,
+          )..add(const InitializationRequested()),
+        ),
+        ...
+      ],
+      child: child,
+    );
+

Services

Key Points

Benefits of Layered Architecture for Services

  • Abstract Interfaces +
    • By defining abstract interfaces for your services, you create a clear contract that all concrete implementations must adhere to. This promotes flexibility as you can easily swap out different implementations without affecting the rest of your application. For example this is so useful when you need to feature flag some features.
  • Improved Testability +
    • Abstract interfaces enable you to easily mock or stub service implementations during unit tests. This allows you to isolate the logic of your application components from the specific behavior of external services, making your tests more robust and easier to maintain
  • Separation of Concerns +
    • this architecture promotes a clean separation of concerns. Services are responsible for specific functionalities, while other components interact with them through well-defined interfaces. This reduces coupling and improves code maintainability.
  • Enhanced Maintainability +
    • By clearly defining service interfaces and their responsibilities, you make it easier to understand and maintain your application's architecture. Changes to service implementations can be made with minimal impact on other parts of the application as long as the interface remains unchanged.
  • Future-Proofing +
    • The layered architecture provides a solid foundation for future enhancements. You can easily add new service implementations or modify existing ones without significantly impacting the rest of your application.

Example

  • This code defines a layered approach for local storage in a Flutter application +
    • StorageService is an abstract interface defining methods for get, set, and remove data.
    • StorageServiceNoOp is a no-op implementation for testing purposes.
    • SecureStorageService in an implementation using flutter_secure_storage for secure data storage.
// lib/data/services/local_storage/storage_service.dart
+abstract class StorageService {
+  const StorageService();
+
+  factory StorageService.noOp() => const StorageServiceNoOp();
+
+  factory StorageService.secure() => const SecureStorageService();
+
+  Future<T?> get<T>({required String key});
+
+  Future<void> set({required String key, required Object value});
+
+  Future<void> remove({required String key});
+}
+
+
+// lib/data/services/local_storage/no_op_service.dart
+class StorageServiceNoOp implements StorageService {
+  const StorageServiceNoOp();
+
+  @override
+  Future<T?> get<T>({required String key}) async => null;
+
+  @override
+  Future<void> set({required String key, required Object value}) async => null;
+
+  @override
+  Future<void> remove({required String key}) async => null;
+}
+
+
+// lib/data/services/local_storage/secure_storage_service.dart
+class SecureStorageService implements StorageService {
+  const SecureStorageService({this.storage = const FlutterSecureStorage()});
+
+  final FlutterSecureStorage storage;
+
+  @override
+  Future<T?> get<T>({required String key}) async {
+    final match = await storage.read(key: key);
+    if (match == null) return null;
+    return jsonDecode(match) as T;
+  }
+
+  @override
+  Future<void> set({required String key, required Object value}) async {
+    await storage.write(key: key, value: jsonEncode(value));
+  }
+
+  @override
+  Future<void> remove({required String key}) async {
+    await storage.delete(key: key);
+  }
+}
+

Usage

final secureStorageService = StorageService.secure();
+

Repositories

Centralizing Data Access Logic

Key points

  • Source of Truth +
    • Repositories act as a single source of truth for accessing and managing data within your application's domain layer.
    • They encapsulate the logic for fetching, storing, and manipulating data, often combining data from multiple services.
  • Separation of Concerns +
    • Repositories shield the rest of your application (BLoCs, UI components) from the complexities of dealing with different data sources and services directly
    • Repositories promote a clean separation of concerns by isolating data access logic from the presentation layer (Blocs, UI). This improves code maintainability and testability.
  • Data Transformation and Validation +
    • Repositories can handle data transformation and validation before exposing it to other layers.

Example

  • Authentication States +
    • Defines three states: unknown (initial), authenticated (user logged in), and unauthenticated (user logged out).
  • AuthenticationRepository +
    • Handles user authentication logic.
    • Stores the currently logged-in user.
    • Provides a stream (statusStream) to notify about authentication state changes.
    • Uses storageService to store/retrieve user data securely.
    • Uses authenticationService to perform signup, signin, and signout operations.
enum AuthenticationStatus {
+  unknown,
+  authenticated,
+  unauthenticated,
+}
+
+extension AuthenticationStatusExtensions on AuthenticationStatus {
+  bool get isAuthenticated => this == AuthenticationStatus.authenticated;
+}
+
+const String _userKey = 'secure_user';
+
+class AuthenticationRepository implements DisposableRepository {
+  AuthenticationRepository({
+    required this.storageService,
+    required this.authenticationService,
+  });
+
+  final StorageService storageService;
+  final AuthenticationService authenticationService;
+
+  @override
+  Future<void> init() async {
+    try {
+      final decodedUser = await storageService.get<Map<String, dynamic>>(
+        key: _userKey,
+      );
+      if (decodedUser == null) {
+        _unsetUser();
+      } else {
+        final user = User.fromJson(decodedUser);
+        _setUser(user);
+      }
+    } catch (e) {
+      _unsetUser();
+    }
+  }
+
+  @override
+  Future<void> dispose() async {
+    _statusController.close();
+  }
+
+  final BehaviorSubject<AuthenticationStatus> _statusController =
+      BehaviorSubject<AuthenticationStatus>.seeded(AuthenticationStatus.unknown);
+
+  Stream<AuthenticationStatus> get statusStream {
+    return _statusController.stream;
+  }
+
+  AuthenticationStatus get statusCurrent {
+    return _statusController.value;
+  }
+
+  User? _user;
+
+  User? get user => _user;
+
+  void _unsetUser() {
+    _user = null;
+    _statusController.add(AuthenticationStatus.unauthenticated);
+  }
+
+  void _setUser(User user) {
+    _user = user;
+    _statusController.add(AuthenticationStatus.authenticated);
+  }
+
+  Future<User> signUp({
+    required String email,
+    required String name,
+    required String username,
+    required String password,
+  }) async {
+    final authenticatedUser = await authenticationService.signUp(
+      email: email,
+      name: name,
+      username: username,
+      password: password,
+    );
+    await storageService.set(
+      key: _userKey,
+      value: authenticatedUser.toJson(),
+    );
+
+    _setUser(authenticatedUser);
+    return authenticatedUser;
+  }
+
+  Future<User> signIn({
+    required String username,
+    required String password,
+  }) async {
+    final authenticatedUser = await authenticationService.signIn(
+      username: username,
+      password: password,
+    );
+    await storageService.set(
+      key: _userKey,
+      value: authenticatedUser.toJson(),
+    );
+
+    _setUser(authenticatedUser);
+    return authenticatedUser;
+  }
+
+  Future<void> signOut() async {
+    await authenticationService.signOut();
+    await storageService.remove(
+      key: _userKey,
+    );
+
+    _unsetUser();
+  }
+}
+

BLoC

As discussed, only repositories are accessible from dependency manager, no services are exposed, BLoC can depend multiple repositories in order to operate.

Key Points

  • What does it do? +
    • Manages the state of the application. Handles events.
    • Interacts with Repository(s) to perform operations.
    • Emits a stream of State objects to notify the UI about changes.
  • Improved Code Organization +
    • Separates business logic from the UI, making the code more modular and easier to understand.
  • Enhanced Testability +
    • Allows you to easily test the BLoC's behavior in isolation.
  • Improved Maintainability +
    • Makes it easier to modify and extend the application's logic without affecting other parts of the codebase.
  • Enhanced User Experience +
    • Provides a more predictable and responsive user interface by managing state changes effectively.

Best Practices

  • Use descriptive and meaningful names for classes, events, states, and methods.
  • Follow consistent naming conventions throughout your project for better readability and maintainability.

Events

  • Descriptive action verbs
  • Use action verbs that clearly describe the intent of the event
  • Avoid generic names like ButtonClicked or DataUpdated

States

  • Descriptive adjectives
  • Use adjectives to describe the current state of the system.
  • Avoid vague names like StateA, StateB.

BLoC

  • Class Name +
    • Follow the convention of using "Bloc" as a suffix for Bloc classes.
    • name should clearly indicate what the Bloc is responsible for.
  • Event Handler Method Names +
    • Use the prefix _on followed by the corresponding event name.
    • This convention is commonly used in Bloc implementations to clearly identify event handlers.
    • e.g. on<InitializationRequested>(_onInitializationRequested);

Example

lib/features/authentication/bloc/authentication_bloc.dart

  • Extends Bloc and manages authentication state based on events.
  • The AuthenticationBloc constructor injects an AuthenticationRepository for interacting with authentication logic.
  • Event handlers (_on*Requested) handle specific events +
    • _onInitializationRequested: Checks the initial authentication state and emits AuthenticationSuccessful if a user is logged in, otherwise stays in the initial state.
    • _onSignUpRequested, _onSignInRequested: Handle signup and signin requests respectively, interacting with the repository and emitting loading/success/failure states.
    • _onSignOutRequested: Handles user signout, interacting with the repository and emitting loading/success/failure states.
class AuthenticationBloc extends Bloc<AuthenticationEvent, AuthenticationState> {
+  AuthenticationBloc({
+    required this.authenticationRepository,
+  }) : super(const AuthenticationInitial()) {
+    on<InitializationRequested>(_onInitializationRequested);
+    on<SignUpRequested>(_onSignUpRequested);
+    on<SignInRequested>(_onSignInRequested);
+    on<SignOutRequested>(_onSignOutRequested);
+  }
+
+  final AuthenticationRepository authenticationRepository;
+
+  void _onInitializationRequested(
+    InitializationRequested event,
+    Emitter<AuthenticationState> emit,
+  ) {
+    if (authenticationRepository.statusCurrent.isAuthenticated &&
+        authenticationRepository.user != null) {
+      emit(AuthenticationSuccessful(user: authenticationRepository.user!));
+    }
+  }
+
+  Future<void> _onSignUpRequested(
+    SignUpRequested event,
+    Emitter<AuthenticationState> emit,
+  ) async {
+    try {
+      emit(const AuthenticationLoading());
+      final user = await authenticationRepository.signUp(
+        email: event.email,
+        name: event.name,
+        username: event.username,
+        password: event.password,
+      );
+      emit(AuthenticationSuccessful(user: user));
+    } catch (e, st) {
+      Log.exception(e, stackTrace: st, hint: 'user-signup-failed');
+      emit(const AuthenticationFailed(
+        message: VaahStringConstants.somethingWentWrong,
+      ));
+    }
+  }
+
+  Future<void> _onSignInRequested(
+    SignInRequested event,
+    Emitter<AuthenticationState> emit,
+  ) async {
+    try {
+      emit(const AuthenticationLoading());
+      final user = await authenticationRepository.signIn(
+        username: event.username,
+        password: event.password,
+      );
+      emit(AuthenticationSuccessful(user: user));
+    } catch (e, st) {
+      Log.exception(e, stackTrace: st, hint: 'user-signin-failed');
+      emit(const AuthenticationFailed(
+        message: VaahStringConstants.somethingWentWrong,
+      ));
+    }
+  }
+
+  Future<void> _onSignOutRequested(
+    SignOutRequested event,
+    Emitter<AuthenticationState> emit,
+  ) async {
+    try {
+      emit(const AuthenticationLoading());
+      await authenticationRepository.signOut();
+      emit(const AuthenticationChanged(message: StringConstants.signedOutSuccessfully));
+    } catch (e, st) {
+      Log.exception(e, stackTrace: st, hint: 'user-signout-failed');
+      emit(const AuthenticationFailed(
+        message: VaahStringConstants.somethingWentWrong,
+      ));
+    }
+  }
+}
+

lib/features/authentication/bloc/authentication_event.dart

  • AuthenticationEvent: Sealed class representing events that trigger state changes
@immutable
+sealed class AuthenticationEvent {
+  const AuthenticationEvent();
+}
+
+final class InitializationRequested extends AuthenticationEvent {
+  const InitializationRequested();
+}
+
+final class SignUpRequested extends AuthenticationEvent {
+  const SignUpRequested({
+    required this.email,
+    required this.name,
+    required this.username,
+    required this.password,
+  });
+
+  final String email;
+  final String name;
+  final String username;
+  final String password;
+}
+
+final class SignInRequested extends AuthenticationEvent {
+  const SignInRequested({
+    required this.username,
+    required this.password,
+  });
+
+  final String username;
+  final String password;
+}
+
+final class SignOutRequested extends AuthenticationEvent {
+  const SignOutRequested();
+}
+

lib/features/authentication/bloc/authentication_state.dart

  • AuthenticationState: Sealed class representing different states of authentication.
@immutable
+sealed class AuthenticationState {
+  const AuthenticationState();
+}
+
+final class AuthenticationInitial extends AuthenticationState {
+  const AuthenticationInitial();
+}
+
+final class AuthenticationLoading extends AuthenticationState {
+  const AuthenticationLoading();
+}
+
+final class AuthenticationSuccessful extends AuthenticationState {
+  const AuthenticationSuccessful({
+    required this.user,
+  });
+
+  final User user;
+}
+
+final class AuthenticationChanged extends AuthenticationState {
+  const AuthenticationChanged({
+    required this.message,
+  });
+
+  final String message;
+}
+
+final class AuthenticationFailed extends AuthenticationState {
+  const AuthenticationFailed({
+    required this.message,
+  });
+
+  final String message;
+}
+

Usage

On somewhere core level we initialize this bloc because it is used application wide, otherwise for other blocs for one screen only we can initialize for that screen only

    MultiBlocProvider(
+      providers: [
+        BlocProvider<AuthenticationBloc>(
+          create: (BuildContext context) => AuthenticationBloc(
+            authenticationRepository: DependencyManager.authenticationRepository,
+          )..add(const InitializationRequested()),
+        ),
+      ],
+      child: ... ,
+    )
+
  • BlocBuilder +
    • Primarily used to build UI based on the current state of a Bloc.
BlocBuilder<AuthenticationBloc, AuthenticationState>(
+  builder: (context, state) {
+    if (state is AuthenticationLoading) {
+      return const CircularProgressIndicator();
+    } else if (state is AuthenticationSuccessful) {
+      return Text('Authentication Successful');
+    } else if (state is AuthenticationFailed) {
+      return Text('Authentication Failed');
+    } else {
+      return Text('Not authenticated');
+    }
+  },
+)
+
  • BlocListener +
    • Primarily used to perform side effects in response to state changes within a Bloc.
BlocListener<AuthenticationBloc, AuthenticationState>(
+  listener: (context, state) {
+    if (state is AuthenticationFailed) {
+      ScaffoldMessenger.of(context).showSnackBar(
+        SnackBar(content: Text(state.message)),
+      );
+    }
+  },
+  child: // Your UI here,
+)
+
  • BlocConsumer +
    • Combines the functionality of both BlocListener and BlocBuilder.
BlocConsumer<AuthenticationBloc, AuthenticationState>(
+  listener: (context, state) {
+    if (state is AuthenticationFailed) {
+      ScaffoldMessenger.of(context).showSnackBar(
+        SnackBar(content: Text(state.message)),
+      );
+    }
+  },
+  builder: (context, state) {
+    if (state is AuthenticationLoading) {
+      return const CircularProgressIndicator();
+    } else if (state is AuthenticationSuccessful) {
+      return Text('Authentication Successful');
+    } else if (state is AuthenticationFailed) {
+      return Text('Authentication Failed');
+    } else {
+      return Text('Not authenticated');
+    }
+  },
+)
+

Circular Dependency

The problem

    final vaahApiService = ApiService(
+      interceptors: [
+        ApiTokenInterceptor(() => authenticationRepository),
+      ],
+    );
+
+    final authenticationService = AuthenticationService.vaah(
+      apiService: vaahApiService,
+    );
+
+    authenticationRepository = AuthenticationRepository(
+      authenticationService: authenticationService,
+    );
+
  1. ApiTokenInterceptor needs AuthenticationRepository to retrieve the user's securely locally stored API token.
  2. AuthenticationRepository depends on AuthenticationService for authentication logic.
  3. AuthenticationService relies on ApiService to make API calls.
  4. ApiService needs ApiTokenInterceptor.

The solution

  • ApiService is created with ApiTokenInterceptor. However, the interceptor uses a lambda function (() => authenticationRepository) to delay retrieving the AuthenticationRepository instance.
  • AuthenticationService is created immediately after ApiService using the already created ApiService
  • Finally, AuthenticationRepository is created immediately after AuthenticationService.
  • One more thing to note here: We need to initialize services and repo in this perticular order (We can not initialize anything between given initializations). We always first initialize ApiService, then AuthenticationService, and then AuthenticationRepository -- Immediately one after another just to ensure that no other service that depends on ApiService makes any request inbetween.

The lambda function

  • The lambda function () => authenticationRepository is used within the ApiTokenInterceptor.
  • This function delays the retrieval of the authenticationRepository until it's actually needed.
  • By the time the interceptor needs the repository during an API call, init would have already completed creating all the services and the repositories. And thus needed repository instance would be available by that time.

Copyright © 2023
\ No newline at end of file diff --git a/mobile-app/poc/code-generation/_payload.json b/mobile-app/poc/code-generation/_payload.json new file mode 100644 index 0000000..664b9d0 --- /dev/null +++ b/mobile-app/poc/code-generation/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":87},["ShallowReactive",2],{"navigation":3,"/mobile-app/poc/code-generation":57,"/mobile-app/poc/code-generation-surround":84},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":49,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":48,"description":61,"body":62,"_type":78,"_id":79,"_source":80,"_file":81,"_stem":82,"_extension":83},"poc",false,"",null,{"type":63,"children":64,"toc":74},"root",[65],{"type":66,"tag":67,"props":68,"children":70},"element","h2",{"id":69},"todo",[71],{"type":72,"value":73},"text","TODO:",{"title":60,"searchDepth":75,"depth":75,"links":76},2,[77],{"id":69,"depth":75,"text":73},"markdown","content:2.mobile-app:3.poc:3.code-generation.md","content","2.mobile-app/3.poc/3.code-generation.md","2.mobile-app/3.poc/3.code-generation","md",[85,86],{"_path":46,"title":45,"description":61},{"_path":56,"title":55,"description":60},1741786570869] \ No newline at end of file diff --git a/mobile-app/poc/code-generation/index.html b/mobile-app/poc/code-generation/index.html new file mode 100644 index 0000000..4274d0e --- /dev/null +++ b/mobile-app/poc/code-generation/index.html @@ -0,0 +1,87 @@ +Automatic code generation - Nuxt UI Pro - Docs template
\ No newline at end of file diff --git a/mobile-app/poc/index.html b/mobile-app/poc/index.html new file mode 100644 index 0000000..e6d2be5 --- /dev/null +++ b/mobile-app/poc/index.html @@ -0,0 +1,87 @@ +Introduction - Nuxt UI Pro - Docs template
\ No newline at end of file diff --git a/mobile-app/thought-processses/_payload.json b/mobile-app/thought-processses/_payload.json new file mode 100644 index 0000000..f336846 --- /dev/null +++ b/mobile-app/thought-processses/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":134},["ShallowReactive",2],{"navigation":3,"/mobile-app/thought-processses":57,"/mobile-app/thought-processses-surround":129},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":27,"_dir":58,"_draft":60,"_partial":60,"_locale":61,"title":9,"description":62,"body":63,"_type":123,"_id":124,"_source":125,"_file":126,"_stem":127,"_extension":128},{"_path":59,"title":26},"/mobile-app/thought-processses/_dir",false,"","Thought process behind reaching to the decisions",{"type":64,"children":65,"toc":119},"root",[66,75],{"type":67,"tag":68,"props":69,"children":71},"element","h2",{"id":70},"topics-this-section-will-cover",[72],{"type":73,"value":74},"text","Topics this section will cover",{"type":67,"tag":76,"props":77,"children":78},"ul",{},[79,85,89,94,99,104,109,114],{"type":67,"tag":80,"props":81,"children":82},"li",{},[83],{"type":73,"value":84},"Project Architecture",{"type":67,"tag":80,"props":86,"children":87},{},[88],{"type":73,"value":34},{"type":67,"tag":80,"props":90,"children":91},{},[92],{"type":73,"value":93},"State Management Patterns",{"type":67,"tag":80,"props":95,"children":96},{},[97],{"type":73,"value":98},"Design Patterns",{"type":67,"tag":80,"props":100,"children":101},{},[102],{"type":73,"value":103},"Performance Optimization",{"type":67,"tag":80,"props":105,"children":106},{},[107],{"type":73,"value":108},"Security Considerations",{"type":67,"tag":80,"props":110,"children":111},{},[112],{"type":73,"value":113},"Code Quality and Maintainability",{"type":67,"tag":80,"props":115,"children":116},{},[117],{"type":73,"value":118},"Testing Strategies",{"title":61,"searchDepth":120,"depth":120,"links":121},2,[122],{"id":70,"depth":120,"text":74},"markdown","content:2.mobile-app:2.thought-processses:1.index.md","content","2.mobile-app/2.thought-processses/1.index.md","2.mobile-app/2.thought-processses/1.index","md",[130,132],{"_path":24,"title":23,"description":131},"Technologies powering our platform.",{"_path":32,"title":31,"description":133},"All about project architecture",1741786570868] \ No newline at end of file diff --git a/mobile-app/thought-processses/architecture/_payload.json b/mobile-app/thought-processses/architecture/_payload.json new file mode 100644 index 0000000..fa68f0d --- /dev/null +++ b/mobile-app/thought-processses/architecture/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":518},["ShallowReactive",2],{"navigation":3,"/mobile-app/thought-processses/architecture":57,"/mobile-app/thought-processses/architecture-surround":513},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":32,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":31,"description":61,"body":62,"_type":507,"_id":508,"_source":509,"_file":510,"_stem":511,"_extension":512},"thought-processses",false,"","All about project architecture",{"type":63,"children":64,"toc":492},"root",[65,74,80,95,101,148,153,158,200,210,217,251,257,290,295,382,390,395,438,443,476,482,487],{"type":66,"tag":67,"props":68,"children":70},"element","h2",{"id":69},"what-will-we-discuss-about",[71],{"type":72,"value":73},"text","What will we discuss about?",{"type":66,"tag":75,"props":76,"children":77},"p",{},[78],{"type":72,"value":79},"There are so many architectures but two of them needs some discussion here.",{"type":66,"tag":81,"props":82,"children":83},"ul",{},[84,90],{"type":66,"tag":85,"props":86,"children":87},"li",{},[88],{"type":72,"value":89},"Model-View-Controller",{"type":66,"tag":85,"props":91,"children":92},{},[93],{"type":72,"value":94},"Clean Architecture",{"type":66,"tag":67,"props":96,"children":98},{"id":97},"what-we-want-to-avoid-intentionally-for-now",[99],{"type":72,"value":100},"What we want to avoid intentionally for now?",{"type":66,"tag":81,"props":102,"children":103},{},[104,122,135],{"type":66,"tag":85,"props":105,"children":106},{},[107,109],{"type":72,"value":108},"MVVM\n",{"type":66,"tag":81,"props":110,"children":111},{},[112,117],{"type":66,"tag":85,"props":113,"children":114},{},[115],{"type":72,"value":116},"MVVM implies databindings between the view and the viewmodel, which means, in practice, the view objects mostly are the ones commanding the viewmodel. MVVM seems to me a simplification of MVC, to show the model \"as is\" behind the scenes. And because we are already talking about MVC, talking MVVM doesn't makes sense.",{"type":66,"tag":85,"props":118,"children":119},{},[120],{"type":72,"value":121},"Also I think, overuse of data binding can lead to tight coupling between the View and ViewModel, making the code less modular and harder to test.",{"type":66,"tag":85,"props":123,"children":124},{},[125,127],{"type":72,"value":126},"Layered Architecture\n",{"type":66,"tag":81,"props":128,"children":129},{},[130],{"type":66,"tag":85,"props":131,"children":132},{},[133],{"type":72,"value":134},"Layered Architecture has unidirectional dependencies, with lower layers depending on higher ones. While Clean Architecture Dependencies point inwards towards the core, making the core independent of external factors. So I am gonna exclude Layered Architecture & will focus on Clean Architecture. Also Clean Architecture offers high degree of flexibility, testability, and maintainability on top of what Layered Architecture does.",{"type":66,"tag":85,"props":136,"children":137},{},[138,140],{"type":72,"value":139},"Hexagonal Architecture\n",{"type":66,"tag":81,"props":141,"children":142},{},[143],{"type":66,"tag":85,"props":144,"children":145},{},[146],{"type":72,"value":147},"If one use-case (application-service) is dependent on another, and so on, resulting in a tangled chain of calls where people usually get lost. Usually, this web of dependencies is an anti-pattern that hinders the clarity and simplicity that Hexagonal Architecture aims to provide.",{"type":66,"tag":67,"props":149,"children":151},{"id":150},"model-view-controller",[152],{"type":72,"value":89},{"type":66,"tag":75,"props":154,"children":155},{},[156],{"type":72,"value":157},"MVC separates an application into three interconnected parts:",{"type":66,"tag":81,"props":159,"children":160},{},[161,174,187],{"type":66,"tag":85,"props":162,"children":163},{},[164,166],{"type":72,"value":165},"Model\n",{"type":66,"tag":81,"props":167,"children":168},{},[169],{"type":66,"tag":85,"props":170,"children":171},{},[172],{"type":72,"value":173},"Represents the data of the application.",{"type":66,"tag":85,"props":175,"children":176},{},[177,179],{"type":72,"value":178},"View\n",{"type":66,"tag":81,"props":180,"children":181},{},[182],{"type":66,"tag":85,"props":183,"children":184},{},[185],{"type":72,"value":186},"Responsible for the user interface",{"type":66,"tag":85,"props":188,"children":189},{},[190,192],{"type":72,"value":191},"Controller\n",{"type":66,"tag":81,"props":193,"children":194},{},[195],{"type":66,"tag":85,"props":196,"children":197},{},[198],{"type":72,"value":199},"Handles the logic between the Model and the View.",{"type":66,"tag":201,"props":202,"children":204},"pre",{"code":203},"./lib\n├── models\n│ ├── data\n│ └── ...\n├── Views\n│ └── ...\n├── Controllers\n│ └── ...\n├── Services\n│ └── ...\n├── Repositories\n│ └── ...\n└── routes\n",[205],{"type":66,"tag":206,"props":207,"children":208},"code",{"__ignoreMap":60},[209],{"type":72,"value":203},{"type":66,"tag":211,"props":212,"children":214},"h3",{"id":213},"pros",[215],{"type":72,"value":216},"Pros",{"type":66,"tag":81,"props":218,"children":219},{},[220,231,241],{"type":66,"tag":85,"props":221,"children":222},{},[223,229],{"type":66,"tag":224,"props":225,"children":226},"strong",{},[227],{"type":72,"value":228},"Simplicity",{"type":72,"value":230},": Easier to implement for small applications.",{"type":66,"tag":85,"props":232,"children":233},{},[234,239],{"type":66,"tag":224,"props":235,"children":236},{},[237],{"type":72,"value":238},"Quick to start",{"type":72,"value":240},": Suitable for smaller projects or MVP applications.",{"type":66,"tag":85,"props":242,"children":243},{},[244,249],{"type":66,"tag":224,"props":245,"children":246},{},[247],{"type":72,"value":248},"Familiarity",{"type":72,"value":250},": A widely recognized pattern, making it easier to onboard new developers.",{"type":66,"tag":211,"props":252,"children":254},{"id":253},"cons",[255],{"type":72,"value":256},"Cons",{"type":66,"tag":81,"props":258,"children":259},{},[260,270,280],{"type":66,"tag":85,"props":261,"children":262},{},[263,268],{"type":66,"tag":224,"props":264,"children":265},{},[266],{"type":72,"value":267},"Tight Coupling",{"type":72,"value":269},": The controller is responsible for both business logic and UI updates, leading to a tight coupling between the components.",{"type":66,"tag":85,"props":271,"children":272},{},[273,278],{"type":66,"tag":224,"props":274,"children":275},{},[276],{"type":72,"value":277},"Scalability Issues",{"type":72,"value":279},": As the application grows, managing complexity can become difficult because the logic might get mixed in the controller.",{"type":66,"tag":85,"props":281,"children":282},{},[283,288],{"type":66,"tag":224,"props":284,"children":285},{},[286],{"type":72,"value":287},"Limited Separation of Concerns",{"type":72,"value":289},": This pattern often doesn't separate responsibilities as clearly, leading to potential maintenance challenges in large apps.",{"type":66,"tag":67,"props":291,"children":293},{"id":292},"clean-architecture",[294],{"type":72,"value":94},{"type":66,"tag":81,"props":296,"children":297},{},[298,326,354],{"type":66,"tag":85,"props":299,"children":300},{},[301,303],{"type":72,"value":302},"Data Layer\n",{"type":66,"tag":81,"props":304,"children":305},{},[306,316],{"type":66,"tag":85,"props":307,"children":308},{},[309,314],{"type":66,"tag":224,"props":310,"children":311},{},[312],{"type":72,"value":313},"Models",{"type":72,"value":315},": Define the data structures for your application, keeping them simple and focused on the data they represent.",{"type":66,"tag":85,"props":317,"children":318},{},[319,324],{"type":66,"tag":224,"props":320,"children":321},{},[322],{"type":72,"value":323},"Services",{"type":72,"value":325},": Implement services for network requests, local storage, and other data operations. Use appropriate libraries to handle these tasks.",{"type":66,"tag":85,"props":327,"children":328},{},[329,331],{"type":72,"value":330},"Domain Layer\n",{"type":66,"tag":81,"props":332,"children":333},{},[334,344],{"type":66,"tag":85,"props":335,"children":336},{},[337,342],{"type":66,"tag":224,"props":338,"children":339},{},[340],{"type":72,"value":341},"Interfaces",{"type":72,"value":343},": Define clear interfaces for repositories, specifying the methods to interact with data.",{"type":66,"tag":85,"props":345,"children":346},{},[347,352],{"type":66,"tag":224,"props":348,"children":349},{},[350],{"type":72,"value":351},"Repositories",{"type":72,"value":353},": Implement these interfaces, using the data layer to fetch and store data. Keep the repository logic independent of the data source (e.g., network, database).",{"type":66,"tag":85,"props":355,"children":356},{},[357,359],{"type":72,"value":358},"Presentation Layer\n",{"type":66,"tag":81,"props":360,"children":361},{},[362,372],{"type":66,"tag":85,"props":363,"children":364},{},[365,370],{"type":66,"tag":224,"props":366,"children":367},{},[368],{"type":72,"value":369},"Pages",{"type":72,"value":371},": Build the UI screens, using widgets to compose the layout and handle user interactions.",{"type":66,"tag":85,"props":373,"children":374},{},[375,380],{"type":66,"tag":224,"props":376,"children":377},{},[378],{"type":72,"value":379},"Widgets",{"type":72,"value":381},": Create reusable UI components to improve code organization and maintainability.",{"type":66,"tag":201,"props":383,"children":385},{"code":384},"./lib\n├── data\n│ ├── models\n│ └── services\n├── domain\n│ ├── interfaces\n│ └── repositories\n├── presentation\n│ ├── pages\n│ └── widgets\n└── routes\n",[386],{"type":66,"tag":206,"props":387,"children":388},{"__ignoreMap":60},[389],{"type":72,"value":384},{"type":66,"tag":211,"props":391,"children":393},{"id":392},"pros-1",[394],{"type":72,"value":216},{"type":66,"tag":81,"props":396,"children":397},{},[398,408,418,428],{"type":66,"tag":85,"props":399,"children":400},{},[401,406],{"type":66,"tag":224,"props":402,"children":403},{},[404],{"type":72,"value":405},"Separation of Concerns",{"type":72,"value":407},": Clean Architecture separates concerns into distinct layers, making it easier to maintain and scale as the app grows.",{"type":66,"tag":85,"props":409,"children":410},{},[411,416],{"type":66,"tag":224,"props":412,"children":413},{},[414],{"type":72,"value":415},"Flexibility",{"type":72,"value":417},": The architecture can easily accommodate changes in UI frameworks, data sources, or external dependencies without affecting the core business logic.",{"type":66,"tag":85,"props":419,"children":420},{},[421,426],{"type":66,"tag":224,"props":422,"children":423},{},[424],{"type":72,"value":425},"Scalability",{"type":72,"value":427},": Clean Architecture is designed to handle complexity and larger applications efficiently.",{"type":66,"tag":85,"props":429,"children":430},{},[431,436],{"type":66,"tag":224,"props":432,"children":433},{},[434],{"type":72,"value":435},"Testability",{"type":72,"value":437},": Since the business logic and UI are decoupled, it’s easier to test different parts of the app independently.",{"type":66,"tag":211,"props":439,"children":441},{"id":440},"cons-1",[442],{"type":72,"value":256},{"type":66,"tag":81,"props":444,"children":445},{},[446,456,466],{"type":66,"tag":85,"props":447,"children":448},{},[449,454],{"type":66,"tag":224,"props":450,"children":451},{},[452],{"type":72,"value":453},"Complexity",{"type":72,"value":455},": The setup is more complex compared to MVC, and might be overkill for simple apps.",{"type":66,"tag":85,"props":457,"children":458},{},[459,464],{"type":66,"tag":224,"props":460,"children":461},{},[462],{"type":72,"value":463},"Learning Curve",{"type":72,"value":465},": For beginners or developers new to the architecture, there might be an initial learning curve to understand the separation of layers and their interactions.",{"type":66,"tag":85,"props":467,"children":468},{},[469,474],{"type":66,"tag":224,"props":470,"children":471},{},[472],{"type":72,"value":473},"Verbose Code",{"type":72,"value":475},": Because of the multiple layers and classes involved, it can lead to more boilerplate code.",{"type":66,"tag":67,"props":477,"children":479},{"id":478},"decision-making",[480],{"type":72,"value":481},"Decision Making",{"type":66,"tag":75,"props":483,"children":484},{},[485],{"type":72,"value":486},"For production-grade apps, Clean Architecture is often preferred. Where rapid development is key, and you can afford some level of coupling between logic and UI - you should use MVC. Clean Architecture is better suited for larger, more complex apps that need to scale, be maintainable over time, and where testability and decoupling of concerns are priorities.",{"type":66,"tag":75,"props":488,"children":489},{},[490],{"type":72,"value":491},"We have decided to go ahead with Clean Architecture.",{"title":60,"searchDepth":493,"depth":493,"links":494},2,[495,496,497,502,506],{"id":69,"depth":493,"text":73},{"id":97,"depth":493,"text":100},{"id":150,"depth":493,"text":89,"children":498},[499,501],{"id":213,"depth":500,"text":216},3,{"id":253,"depth":500,"text":256},{"id":292,"depth":493,"text":94,"children":503},[504,505],{"id":392,"depth":500,"text":216},{"id":440,"depth":500,"text":256},{"id":478,"depth":493,"text":481},"markdown","content:2.mobile-app:2.thought-processses:2.architecture.md","content","2.mobile-app/2.thought-processses/2.architecture.md","2.mobile-app/2.thought-processses/2.architecture","md",[514,516],{"_path":27,"title":9,"description":515},"Thought process behind reaching to the decisions",{"_path":35,"title":34,"description":517},null,1741786570869] \ No newline at end of file diff --git a/mobile-app/thought-processses/architecture/index.html b/mobile-app/thought-processses/architecture/index.html new file mode 100644 index 0000000..246cf2e --- /dev/null +++ b/mobile-app/thought-processses/architecture/index.html @@ -0,0 +1,120 @@ +Architecture - Nuxt UI Pro - Docs template
Thought Processses

Architecture

All about project architecture

What will we discuss about?

There are so many architectures but two of them needs some discussion here.

  • Model-View-Controller
  • Clean Architecture

What we want to avoid intentionally for now?

  • MVVM +
    • MVVM implies databindings between the view and the viewmodel, which means, in practice, the view objects mostly are the ones commanding the viewmodel. MVVM seems to me a simplification of MVC, to show the model "as is" behind the scenes. And because we are already talking about MVC, talking MVVM doesn't makes sense.
    • Also I think, overuse of data binding can lead to tight coupling between the View and ViewModel, making the code less modular and harder to test.
  • Layered Architecture +
    • Layered Architecture has unidirectional dependencies, with lower layers depending on higher ones. While Clean Architecture Dependencies point inwards towards the core, making the core independent of external factors. So I am gonna exclude Layered Architecture & will focus on Clean Architecture. Also Clean Architecture offers high degree of flexibility, testability, and maintainability on top of what Layered Architecture does.
  • Hexagonal Architecture +
    • If one use-case (application-service) is dependent on another, and so on, resulting in a tangled chain of calls where people usually get lost. Usually, this web of dependencies is an anti-pattern that hinders the clarity and simplicity that Hexagonal Architecture aims to provide.

Model-View-Controller

MVC separates an application into three interconnected parts:

  • Model +
    • Represents the data of the application.
  • View +
    • Responsible for the user interface
  • Controller +
    • Handles the logic between the Model and the View.
./lib
+├── models
+│   ├── data
+│   └── ...
+├── Views
+│   └── ...
+├── Controllers
+│   └── ...
+├── Services
+│   └── ...
+├── Repositories
+│   └── ...
+└── routes
+

Pros

  • Simplicity: Easier to implement for small applications.
  • Quick to start: Suitable for smaller projects or MVP applications.
  • Familiarity: A widely recognized pattern, making it easier to onboard new developers.

Cons

  • Tight Coupling: The controller is responsible for both business logic and UI updates, leading to a tight coupling between the components.
  • Scalability Issues: As the application grows, managing complexity can become difficult because the logic might get mixed in the controller.
  • Limited Separation of Concerns: This pattern often doesn't separate responsibilities as clearly, leading to potential maintenance challenges in large apps.

Clean Architecture

  • Data Layer +
    • Models: Define the data structures for your application, keeping them simple and focused on the data they represent.
    • Services: Implement services for network requests, local storage, and other data operations. Use appropriate libraries to handle these tasks.
  • Domain Layer +
    • Interfaces: Define clear interfaces for repositories, specifying the methods to interact with data.
    • Repositories: Implement these interfaces, using the data layer to fetch and store data. Keep the repository logic independent of the data source (e.g., network, database).
  • Presentation Layer +
    • Pages: Build the UI screens, using widgets to compose the layout and handle user interactions.
    • Widgets: Create reusable UI components to improve code organization and maintainability.
./lib
+├── data
+│   ├── models
+│   └── services
+├── domain
+│   ├── interfaces
+│   └── repositories
+├── presentation
+│   ├── pages
+│   └── widgets
+└── routes
+

Pros

  • Separation of Concerns: Clean Architecture separates concerns into distinct layers, making it easier to maintain and scale as the app grows.
  • Flexibility: The architecture can easily accommodate changes in UI frameworks, data sources, or external dependencies without affecting the core business logic.
  • Scalability: Clean Architecture is designed to handle complexity and larger applications efficiently.
  • Testability: Since the business logic and UI are decoupled, it’s easier to test different parts of the app independently.

Cons

  • Complexity: The setup is more complex compared to MVC, and might be overkill for simple apps.
  • Learning Curve: For beginners or developers new to the architecture, there might be an initial learning curve to understand the separation of layers and their interactions.
  • Verbose Code: Because of the multiple layers and classes involved, it can lead to more boilerplate code.

Decision Making

For production-grade apps, Clean Architecture is often preferred. Where rapid development is key, and you can afford some level of coupling between logic and UI - you should use MVC. Clean Architecture is better suited for larger, more complex apps that need to scale, be maintainable over time, and where testability and decoupling of concerns are priorities.

We have decided to go ahead with Clean Architecture.


Copyright © 2023
\ No newline at end of file diff --git a/mobile-app/thought-processses/decoupling/_payload.json b/mobile-app/thought-processses/decoupling/_payload.json new file mode 100644 index 0000000..710ad63 --- /dev/null +++ b/mobile-app/thought-processses/decoupling/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":357},["ShallowReactive",2],{"navigation":3,"/mobile-app/thought-processses/decoupling":57,"/mobile-app/thought-processses/decoupling-surround":352},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":35,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":34,"description":61,"body":62,"_type":346,"_id":347,"_source":348,"_file":349,"_stem":350,"_extension":351},"thought-processses",false,"",null,{"type":63,"children":64,"toc":332},"root",[65,73,80,85,91,96,175,182,200,206,214,220,225,277,282,300,305,318,324],{"type":66,"tag":67,"props":68,"children":69},"element","p",{},[70],{"type":71,"value":72},"text","Tightly coupled dependencies between components can lead to several issues like Increased complexity, Reduced testability, Reduced maintainability, etc.",{"type":66,"tag":74,"props":75,"children":77},"h2",{"id":76},"proposed-solutions",[78],{"type":71,"value":79},"Proposed Solutions",{"type":66,"tag":67,"props":81,"children":82},{},[83],{"type":71,"value":84},"To address these challenges, we propose two effective strategies: Singleton And Context-Aware Dependency Retrieval",{"type":66,"tag":74,"props":86,"children":88},{"id":87},"singleton",[89],{"type":71,"value":90},"Singleton",{"type":66,"tag":67,"props":92,"children":93},{},[94],{"type":71,"value":95},"In this approach, a singleton acts as a centralized container for all repository and service instances.",{"type":66,"tag":97,"props":98,"children":99},"ul",{},[100,119,155],{"type":66,"tag":101,"props":102,"children":103},"li",{},[104,106],{"type":71,"value":105},"Create a Singleton\n",{"type":66,"tag":97,"props":107,"children":108},{},[109,114],{"type":66,"tag":101,"props":110,"children":111},{},[112],{"type":71,"value":113},"Design a singleton class to hold all repository and service instances.",{"type":66,"tag":101,"props":115,"children":116},{},[117],{"type":71,"value":118},"Initialize the singleton asynchronously during the app's startup phase, typically during the splash screen.",{"type":66,"tag":101,"props":120,"children":121},{},[122,124],{"type":71,"value":123},"Access the Singleton\n",{"type":66,"tag":97,"props":125,"children":126},{},[127,132,145],{"type":66,"tag":101,"props":128,"children":129},{},[130],{"type":71,"value":131},"Once the singleton is initialized, it can be accessed from anywhere in the app.",{"type":66,"tag":101,"props":133,"children":134},{},[135,137,143],{"type":71,"value":136},"However, ",{"type":66,"tag":138,"props":139,"children":140},"strong",{},[141],{"type":71,"value":142},"limit its usage",{"type":71,"value":144}," to passing necessary instances to Blocs, Controllers, or Providers during their injection.",{"type":66,"tag":101,"props":146,"children":147},{},[148,153],{"type":66,"tag":138,"props":149,"children":150},{},[151],{"type":71,"value":152},"Avoid excessive use",{"type":71,"value":154}," of the singleton to prevent tight coupling and global state management.",{"type":66,"tag":101,"props":156,"children":157},{},[158,160],{"type":71,"value":159},"Selective Instance Passing\n",{"type":66,"tag":97,"props":161,"children":162},{},[163],{"type":66,"tag":101,"props":164,"children":165},{},[166,168,173],{"type":71,"value":167},"When injecting dependencies into a Bloc, Controller, or Provider, pass only the ",{"type":66,"tag":138,"props":169,"children":170},{},[171],{"type":71,"value":172},"specific instances",{"type":71,"value":174}," required for its functionality. This approach promotes a more granular and focused dependency injection process.",{"type":66,"tag":176,"props":177,"children":179},"h3",{"id":178},"pros",[180],{"type":71,"value":181},"Pros",{"type":66,"tag":97,"props":183,"children":184},{},[185,190,195],{"type":66,"tag":101,"props":186,"children":187},{},[188],{"type":71,"value":189},"Centralized initialization of dependencies.",{"type":66,"tag":101,"props":191,"children":192},{},[193],{"type":71,"value":194},"Clear separation of the initialization phase and dependency usage phase.",{"type":66,"tag":101,"props":196,"children":197},{},[198],{"type":71,"value":199},"Ensures that dependencies are only instantiated once, avoiding redundant resource usage.",{"type":66,"tag":176,"props":201,"children":203},{"id":202},"cons",[204],{"type":71,"value":205},"Cons",{"type":66,"tag":97,"props":207,"children":208},{},[209],{"type":66,"tag":101,"props":210,"children":211},{},[212],{"type":71,"value":213},"The app relies on all dependencies being initialized upfront, which may increase the splash screen loading time.",{"type":66,"tag":74,"props":215,"children":217},{"id":216},"context-aware-dependency-retrieval",[218],{"type":71,"value":219},"Context-Aware Dependency Retrieval",{"type":66,"tag":67,"props":221,"children":222},{},[223],{"type":71,"value":224},"This approach introduces a core Bloc, Controller, or Provider, referred to as the \"core instance,\" to store all repository and service instances. Dependencies are accessed dynamically using the BuildContext to locate the core instance. This approach emphasizes context-aware dependency resolution and reduces the reliance on global access patterns.",{"type":66,"tag":97,"props":226,"children":227},{},[228,241,259],{"type":66,"tag":101,"props":229,"children":230},{},[231,233],{"type":71,"value":232},"Create a Core Instance\n",{"type":66,"tag":97,"props":234,"children":235},{},[236],{"type":66,"tag":101,"props":237,"children":238},{},[239],{"type":71,"value":240},"Define a Bloc, Controller, or Provider to act as the central storage for dependencies.",{"type":66,"tag":101,"props":242,"children":243},{},[244,246],{"type":71,"value":245},"Inject Dependencies\n",{"type":66,"tag":97,"props":247,"children":248},{},[249,254],{"type":66,"tag":101,"props":250,"children":251},{},[252],{"type":71,"value":253},"Initialize all required repository and service instances within the core instance.",{"type":66,"tag":101,"props":255,"children":256},{},[257],{"type":71,"value":258},"Provide the core instance to the widget tree using a dependency injection mechanism.",{"type":66,"tag":101,"props":260,"children":261},{},[262,264],{"type":71,"value":263},"Dynamic Retrieval\n",{"type":66,"tag":97,"props":265,"children":266},{},[267,272],{"type":66,"tag":101,"props":268,"children":269},{},[270],{"type":71,"value":271},"Use the BuildContext to locate the core instance dynamically whenever dependencies are needed.",{"type":66,"tag":101,"props":273,"children":274},{},[275],{"type":71,"value":276},"Extract only the specific instances required for a given Bloc, Controller, or Provider.",{"type":66,"tag":176,"props":278,"children":280},{"id":279},"pros-1",[281],{"type":71,"value":181},{"type":66,"tag":97,"props":283,"children":284},{},[285,290,295],{"type":66,"tag":101,"props":286,"children":287},{},[288],{"type":71,"value":289},"Context-aware dependency resolution promotes structured and localized access patterns.",{"type":66,"tag":101,"props":291,"children":292},{},[293],{"type":71,"value":294},"Simplifies testing by mocking the core instance for specific widget trees.",{"type":66,"tag":101,"props":296,"children":297},{},[298],{"type":71,"value":299},"Reduces global state access, aligning with best practices in state management.",{"type":66,"tag":176,"props":301,"children":303},{"id":302},"cons-1",[304],{"type":71,"value":205},{"type":66,"tag":97,"props":306,"children":307},{},[308,313],{"type":66,"tag":101,"props":309,"children":310},{},[311],{"type":71,"value":312},"Requires proper handling of BuildContext to avoid accessing dependencies outside of the widget tree.",{"type":66,"tag":101,"props":314,"children":315},{},[316],{"type":71,"value":317},"Dependency retrieval via BuildContext can become verbose if not managed properly.",{"type":66,"tag":74,"props":319,"children":321},{"id":320},"decision-making",[322],{"type":71,"value":323},"Decision Making",{"type":66,"tag":97,"props":325,"children":326},{},[327],{"type":66,"tag":101,"props":328,"children":329},{},[330],{"type":71,"value":331},"Going ahead with Singleton makes sense for the project we have",{"title":60,"searchDepth":333,"depth":333,"links":334},2,[335,336,341,345],{"id":76,"depth":333,"text":79},{"id":87,"depth":333,"text":90,"children":337},[338,340],{"id":178,"depth":339,"text":181},3,{"id":202,"depth":339,"text":205},{"id":216,"depth":333,"text":219,"children":342},[343,344],{"id":279,"depth":339,"text":181},{"id":302,"depth":339,"text":205},{"id":320,"depth":333,"text":323},"markdown","content:2.mobile-app:2.thought-processses:3.decoupling.md","content","2.mobile-app/2.thought-processses/3.decoupling.md","2.mobile-app/2.thought-processses/3.decoupling","md",[353,355],{"_path":32,"title":31,"description":354},"All about project architecture",{"_path":38,"title":37,"description":356},"Managing State in the Project",1741786570869] \ No newline at end of file diff --git a/mobile-app/thought-processses/decoupling/index.html b/mobile-app/thought-processses/decoupling/index.html new file mode 100644 index 0000000..d7e1f2f --- /dev/null +++ b/mobile-app/thought-processses/decoupling/index.html @@ -0,0 +1,93 @@ +Decoupling Dependencies - Nuxt UI Pro - Docs template
Thought Processses

Decoupling Dependencies

Tightly coupled dependencies between components can lead to several issues like Increased complexity, Reduced testability, Reduced maintainability, etc.

Proposed Solutions

To address these challenges, we propose two effective strategies: Singleton And Context-Aware Dependency Retrieval

Singleton

In this approach, a singleton acts as a centralized container for all repository and service instances.

  • Create a Singleton +
    • Design a singleton class to hold all repository and service instances.
    • Initialize the singleton asynchronously during the app's startup phase, typically during the splash screen.
  • Access the Singleton +
    • Once the singleton is initialized, it can be accessed from anywhere in the app.
    • However, limit its usage to passing necessary instances to Blocs, Controllers, or Providers during their injection.
    • Avoid excessive use of the singleton to prevent tight coupling and global state management.
  • Selective Instance Passing +
    • When injecting dependencies into a Bloc, Controller, or Provider, pass only the specific instances required for its functionality. This approach promotes a more granular and focused dependency injection process.

Pros

  • Centralized initialization of dependencies.
  • Clear separation of the initialization phase and dependency usage phase.
  • Ensures that dependencies are only instantiated once, avoiding redundant resource usage.

Cons

  • The app relies on all dependencies being initialized upfront, which may increase the splash screen loading time.

Context-Aware Dependency Retrieval

This approach introduces a core Bloc, Controller, or Provider, referred to as the "core instance," to store all repository and service instances. Dependencies are accessed dynamically using the BuildContext to locate the core instance. This approach emphasizes context-aware dependency resolution and reduces the reliance on global access patterns.

  • Create a Core Instance +
    • Define a Bloc, Controller, or Provider to act as the central storage for dependencies.
  • Inject Dependencies +
    • Initialize all required repository and service instances within the core instance.
    • Provide the core instance to the widget tree using a dependency injection mechanism.
  • Dynamic Retrieval +
    • Use the BuildContext to locate the core instance dynamically whenever dependencies are needed.
    • Extract only the specific instances required for a given Bloc, Controller, or Provider.

Pros

  • Context-aware dependency resolution promotes structured and localized access patterns.
  • Simplifies testing by mocking the core instance for specific widget trees.
  • Reduces global state access, aligning with best practices in state management.

Cons

  • Requires proper handling of BuildContext to avoid accessing dependencies outside of the widget tree.
  • Dependency retrieval via BuildContext can become verbose if not managed properly.

Decision Making

  • Going ahead with Singleton makes sense for the project we have

Copyright © 2023
\ No newline at end of file diff --git a/mobile-app/thought-processses/index.html b/mobile-app/thought-processses/index.html new file mode 100644 index 0000000..65987ab --- /dev/null +++ b/mobile-app/thought-processses/index.html @@ -0,0 +1,87 @@ +Introduction - Nuxt UI Pro - Docs template
Thought Processes

Introduction

Thought process behind reaching to the decisions

Topics this section will cover

  • Project Architecture
  • Decoupling Dependencies
  • State Management Patterns
  • Design Patterns
  • Performance Optimization
  • Security Considerations
  • Code Quality and Maintainability
  • Testing Strategies

Copyright © 2023
\ No newline at end of file diff --git a/mobile-app/thought-processses/state-management/_payload.json b/mobile-app/thought-processses/state-management/_payload.json new file mode 100644 index 0000000..3493881 --- /dev/null +++ b/mobile-app/thought-processses/state-management/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":214},["ShallowReactive",2],{"navigation":3,"/mobile-app/thought-processses/state-management":57,"/mobile-app/thought-processses/state-management-surround":210},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":38,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":37,"description":61,"body":62,"_type":204,"_id":205,"_source":206,"_file":207,"_stem":208,"_extension":209},"thought-processses",false,"","Managing State in the Project",{"type":63,"children":64,"toc":196},"root",[65,74,84,91,135,141],{"type":66,"tag":67,"props":68,"children":70},"element","h2",{"id":69},"bloc",[71],{"type":72,"value":73},"text","BLoC",{"type":66,"tag":75,"props":76,"children":77},"blockquote",{},[78],{"type":66,"tag":79,"props":80,"children":81},"p",{},[82],{"type":72,"value":83},"BLoC, short for Business Logic Component, enforces a unidirectional data flow, ensuring a clear separation of concerns and promoting testability.",{"type":66,"tag":85,"props":86,"children":88},"h3",{"id":87},"principles",[89],{"type":72,"value":90},"Principles",{"type":66,"tag":92,"props":93,"children":94},"ul",{},[95,109,122],{"type":66,"tag":96,"props":97,"children":98},"li",{},[99,101],{"type":72,"value":100},"Events Drive State Changes\n",{"type":66,"tag":92,"props":102,"children":103},{},[104],{"type":66,"tag":96,"props":105,"children":106},{},[107],{"type":72,"value":108},"BLoC receives events triggered by user interactions or other parts of the application. These events signal a potential change in the state.",{"type":66,"tag":96,"props":110,"children":111},{},[112,114],{"type":72,"value":113},"State Updates via Emitting New States\n",{"type":66,"tag":92,"props":115,"children":116},{},[117],{"type":66,"tag":96,"props":118,"children":119},{},[120],{"type":72,"value":121},"Based on the received event, the BLoC processes it and emits a new state that reflects the updated application state.",{"type":66,"tag":96,"props":123,"children":124},{},[125,127],{"type":72,"value":126},"UI Reacts to State Changes\n",{"type":66,"tag":92,"props":128,"children":129},{},[130],{"type":66,"tag":96,"props":131,"children":132},{},[133],{"type":72,"value":134},"The UI observes the state emitted by the BLoC and rebuilds itself accordingly, ensuring the UI always reflects the current state.",{"type":66,"tag":85,"props":136,"children":138},{"id":137},"pros",[139],{"type":72,"value":140},"Pros",{"type":66,"tag":92,"props":142,"children":143},{},[144,157,170,183],{"type":66,"tag":96,"props":145,"children":146},{},[147,149],{"type":72,"value":148},"Predictable State Flow\n",{"type":66,"tag":92,"props":150,"children":151},{},[152],{"type":66,"tag":96,"props":153,"children":154},{},[155],{"type":72,"value":156},"BLoC enforces a unidirectional data flow, making it easier to reason about how state changes occur within your application.",{"type":66,"tag":96,"props":158,"children":159},{},[160,162],{"type":72,"value":161},"Separation of Concerns\n",{"type":66,"tag":92,"props":163,"children":164},{},[165],{"type":66,"tag":96,"props":166,"children":167},{},[168],{"type":72,"value":169},"BLoC separates the UI from the business logic, leading to cleaner and more maintainable code.",{"type":66,"tag":96,"props":171,"children":172},{},[173,175],{"type":72,"value":174},"Scalability\n",{"type":66,"tag":92,"props":176,"children":177},{},[178],{"type":66,"tag":96,"props":179,"children":180},{},[181],{"type":72,"value":182},"The BLoC pattern scales well for complex applications with intricate state management requirements.",{"type":66,"tag":96,"props":184,"children":185},{},[186,188],{"type":72,"value":187},"Improved Testability\n",{"type":66,"tag":92,"props":189,"children":190},{},[191],{"type":66,"tag":96,"props":192,"children":193},{},[194],{"type":72,"value":195},"By isolating state logic within the BLoC, you can write unit tests to ensure the BLoC reacts correctly to different events.",{"title":60,"searchDepth":197,"depth":197,"links":198},2,[199],{"id":69,"depth":197,"text":73,"children":200},[201,203],{"id":87,"depth":202,"text":90},3,{"id":137,"depth":202,"text":140},"markdown","content:2.mobile-app:2.thought-processses:4.state-management.md","content","2.mobile-app/2.thought-processses/4.state-management.md","2.mobile-app/2.thought-processses/4.state-management","md",[211,213],{"_path":35,"title":34,"description":212},null,{"_path":41,"title":9,"description":40},1741786570869] \ No newline at end of file diff --git a/mobile-app/thought-processses/state-management/index.html b/mobile-app/thought-processses/state-management/index.html new file mode 100644 index 0000000..ea20428 --- /dev/null +++ b/mobile-app/thought-processses/state-management/index.html @@ -0,0 +1,94 @@ +State Management - Nuxt UI Pro - Docs template
Thought Processses

State Management

Managing State in the Project

BLoC

BLoC, short for Business Logic Component, enforces a unidirectional data flow, ensuring a clear separation of concerns and promoting testability.

Principles

  • Events Drive State Changes +
    • BLoC receives events triggered by user interactions or other parts of the application. These events signal a potential change in the state.
  • State Updates via Emitting New States +
    • Based on the received event, the BLoC processes it and emits a new state that reflects the updated application state.
  • UI Reacts to State Changes +
    • The UI observes the state emitted by the BLoC and rebuilds itself accordingly, ensuring the UI always reflects the current state.

Pros

  • Predictable State Flow +
    • BLoC enforces a unidirectional data flow, making it easier to reason about how state changes occur within your application.
  • Separation of Concerns +
    • BLoC separates the UI from the business logic, leading to cleaner and more maintainable code.
  • Scalability +
    • The BLoC pattern scales well for complex applications with intricate state management requirements.
  • Improved Testability +
    • By isolating state logic within the BLoC, you can write unit tests to ensure the BLoC reacts correctly to different events.

Copyright © 2023
\ No newline at end of file diff --git a/nuxt.config.ts b/nuxt.config.ts deleted file mode 100644 index 6f1d781..0000000 --- a/nuxt.config.ts +++ /dev/null @@ -1,63 +0,0 @@ -// https://nuxt.com/docs/api/configuration/nuxt-config -export default defineNuxtConfig({ - extends: ['@nuxt/ui-pro'], - - modules: [ - '@nuxt/content', - '@nuxt/eslint', - '@nuxt/fonts', - '@nuxt/image', - '@nuxt/ui', - '@nuxthq/studio', - 'nuxt-og-image' - ], - - hooks: { - // Define `@nuxt/ui` components as global to use them in `.md` (feel free to add those you need) - 'components:extend': (components) => { - const globals = components.filter(c => ['UButton', 'UIcon'].includes(c.pascalName)) - - globals.forEach(c => c.global = true) - } - }, - - colorMode: { - disableTransition: true - }, - - nitro: { - prerender: { - routes: [ - '/' - ], - crawlLinks: true - } - }, - - routeRules: { - '/api/search.json': { prerender: true } - }, - - devtools: { - enabled: true - }, - - typescript: { - strict: false - }, - - future: { - compatibilityVersion: 4 - }, - - eslint: { - config: { - stylistic: { - commaDangle: 'never', - braceStyle: '1tbs' - } - } - }, - - compatibilityDate: '2024-07-11' -}) diff --git a/nuxt.schema.ts b/nuxt.schema.ts deleted file mode 100644 index 2326de4..0000000 --- a/nuxt.schema.ts +++ /dev/null @@ -1,218 +0,0 @@ -import { field, group } from '@nuxthq/studio/theme' - -export default defineNuxtSchema({ - appConfig: { - ui: group({ - title: 'UI', - description: 'UI Customization.', - icon: 'i-mdi-palette-outline', - fields: { - icons: group({ - title: 'Icons', - description: 'Manage icons used in UI Pro.', - icon: 'i-mdi-application-settings-outline', - fields: { - search: field({ - type: 'icon', - title: 'Search Bar', - description: 'Icon to display in the search bar.', - icon: 'i-mdi-magnify', - default: 'i-heroicons-magnifying-glass-20-solid' - }), - dark: field({ - type: 'icon', - title: 'Dark mode', - description: 'Icon of color mode button for dark mode.', - icon: 'i-mdi-moon-waning-crescent', - default: 'i-heroicons-moon-20-solid' - }), - light: field({ - type: 'icon', - title: 'Light mode', - description: 'Icon of color mode button for light mode.', - icon: 'i-mdi-white-balance-sunny', - default: 'i-heroicons-sun-20-solid' - }), - external: field({ - type: 'icon', - title: 'External Link', - description: 'Icon for external link.', - icon: 'i-mdi-arrow-top-right', - default: 'i-heroicons-arrow-up-right-20-solid' - }), - chevron: field({ - type: 'icon', - title: 'Chevron', - description: 'Icon for chevron.', - icon: 'i-mdi-chevron-down', - default: 'i-heroicons-chevron-down-20-solid' - }), - hash: field({ - type: 'icon', - title: 'Hash', - description: 'Icon for hash anchors.', - icon: 'i-ph-hash', - default: 'i-heroicons-hashtag-20-solid' - }) - } - }), - primary: field({ - type: 'string', - title: 'Primary', - description: 'Primary color of your UI.', - icon: 'i-mdi-palette-outline', - default: 'green', - required: ['sky', 'mint', 'rose', 'amber', 'violet', 'emerald', 'fuchsia', 'indigo', 'lime', 'orange', 'pink', 'purple', 'red', 'teal', 'yellow', 'green', 'blue', 'cyan', 'gray', 'white', 'black'] - }), - gray: field({ - type: 'string', - title: 'Gray', - description: 'Gray color of your UI.', - icon: 'i-mdi-palette-outline', - default: 'slate', - required: ['slate', 'cool', 'zinc', 'neutral', 'stone'] - }) - } - }), - seo: group({ - title: 'SEO', - description: 'SEO configuration.', - icon: 'i-ph-app-window', - fields: { - siteName: field({ - type: 'string', - title: 'Site Name', - description: 'Name used in ogSiteName and used as second part of your page title (My page title - Nuxt UI Pro).', - icon: 'i-mdi-web', - default: [] - }) - } - }), - header: group({ - title: 'Header', - description: 'Header configuration.', - icon: 'i-mdi-page-layout-header', - fields: { - logo: group({ - title: 'Logo', - description: 'Header logo configuration.', - icon: 'i-mdi-image-filter-center-focus-strong-outline', - fields: { - light: field({ - type: 'media', - title: 'Light Mode Logo', - description: 'Pick an image from your gallery.', - icon: 'i-mdi-white-balance-sunny', - default: '' - }), - dark: field({ - type: 'media', - title: 'Dark Mode Logo', - description: 'Pick an image from your gallery.', - icon: 'i-mdi-moon-waning-crescent', - default: '' - }), - alt: field({ - type: 'string', - title: 'Alt', - description: 'Alt to display for accessibility.', - icon: 'i-mdi-alphabet-latin', - default: '' - }) - } - }), - search: field({ - type: 'boolean', - title: 'Search Bar', - description: 'Hide or display the search bar.', - icon: 'i-mdi-magnify', - default: true - }), - colorMode: field({ - type: 'boolean', - title: 'Color Mode', - description: 'Hide or display the color mode button in your header.', - icon: 'i-mdi-moon-waning-crescent', - default: true - }), - links: field({ - type: 'array', - title: 'Links', - description: 'Array of link object displayed in header.', - icon: 'i-mdi-link-variant', - default: [] - }) - } - }), - footer: group({ - title: 'Footer', - description: 'Footer configuration.', - icon: 'i-mdi-page-layout-footer', - fields: { - credits: field({ - type: 'string', - title: 'Footer credits section', - description: 'Text to display as credits in the footer.', - icon: 'i-mdi-circle-edit-outline', - default: '' - }), - colorMode: field({ - type: 'boolean', - title: 'Color Mode', - description: 'Hide or display the color mode button in the footer.', - icon: 'i-mdi-moon-waning-crescent', - default: false - }), - links: field({ - type: 'array', - title: 'Links', - description: 'Array of link object displayed in footer.', - icon: 'i-mdi-link-variant', - default: [] - }) - } - }), - toc: group({ - title: 'Table of contents', - description: 'TOC configuration.', - icon: 'i-mdi-table-of-contents', - fields: { - title: field({ - type: 'string', - title: 'Title', - description: 'Text to display as title of the main toc.', - icon: 'i-mdi-format-title', - default: '' - }), - bottom: group({ - title: 'Bottom', - description: 'Bottom TOC configuration.', - icon: 'i-mdi-table-of-contents', - fields: { - title: field({ - type: 'string', - title: 'Title', - description: 'Text to display as title of the bottom toc.', - icon: 'i-mdi-format-title', - default: '' - }), - edit: field({ - type: 'string', - title: 'Edit Page Link', - description: 'URL of your repository content folder.', - icon: 'i-ph-note-pencil', - default: '' - }), - links: field({ - type: 'array', - title: 'Links', - description: 'Array of link object displayed in bottom toc.', - icon: 'i-mdi-link-variant', - default: [] - }) - } - }) - } - }) - } -}) diff --git a/package.json b/package.json deleted file mode 100644 index f65db94..0000000 --- a/package.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "name": "nuxt-ui-pro-template-docs", - "private": true, - "type": "module", - "scripts": { - "build": "nuxt build", - "dev": "nuxt dev", - "generate": "nuxt generate", - "preview": "nuxt preview", - "postinstall": "nuxt prepare", - "lint": "eslint .", - "typecheck": "nuxt typecheck" - }, - "dependencies": { - "@iconify-json/heroicons": "^1.2.1", - "@iconify-json/simple-icons": "^1.2.9", - "@nuxt/content": "^2.13.4", - "@nuxt/fonts": "^0.10.0", - "@nuxt/image": "^1.8.1", - "@nuxt/ui-pro": "^1.4.4", - "nuxt": "^3.13.2", - "nuxt-og-image": "^3.0.6" - }, - "devDependencies": { - "@nuxt/eslint": "^0.6.0", - "@nuxthq/studio": "^2.1.1", - "eslint": "^9.13.0", - "vue-tsc": "^2.1.6" - }, - "packageManager": "pnpm@9.12.2" -} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml deleted file mode 100644 index d4b50ec..0000000 --- a/pnpm-lock.yaml +++ /dev/null @@ -1,12105 +0,0 @@ -lockfileVersion: '9.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -importers: - - .: - dependencies: - '@iconify-json/heroicons': - specifier: ^1.2.1 - version: 1.2.1 - '@iconify-json/simple-icons': - specifier: ^1.2.9 - version: 1.2.9 - '@nuxt/content': - specifier: ^2.13.4 - version: 2.13.4(ioredis@5.4.1)(magicast@0.3.5)(nuxt@3.13.2(@parcel/watcher@2.4.1)(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3)) - '@nuxt/fonts': - specifier: ^0.10.0 - version: 0.10.0(ioredis@5.4.1)(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxt/image': - specifier: ^1.8.1 - version: 1.8.1(ioredis@5.4.1)(magicast@0.3.5)(rollup@4.24.0) - '@nuxt/ui-pro': - specifier: ^1.4.4 - version: 1.4.4(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - nuxt: - specifier: ^3.13.2 - version: 3.13.2(@parcel/watcher@2.4.1)(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)) - nuxt-og-image: - specifier: ^3.0.6 - version: 3.0.6(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - devDependencies: - '@nuxt/eslint': - specifier: ^0.6.0 - version: 0.6.0(eslint@9.13.0(jiti@2.3.3))(magicast@0.3.5)(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxthq/studio': - specifier: ^2.1.1 - version: 2.1.1(magicast@0.3.5)(rollup@4.24.0) - eslint: - specifier: ^9.13.0 - version: 9.13.0(jiti@2.3.3) - vue-tsc: - specifier: ^2.1.6 - version: 2.1.6(typescript@5.6.3) - -packages: - - '@alloc/quick-lru@5.2.0': - resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==} - engines: {node: '>=10'} - - '@ampproject/remapping@2.3.0': - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} - engines: {node: '>=6.0.0'} - - '@antfu/install-pkg@0.4.1': - resolution: {integrity: sha512-T7yB5QNG29afhWVkVq7XeIMBa5U/vs9mX69YqayXypPRmYzUmzwnYltplHmPtZ4HPCn+sQKeXW8I47wCbuBOjw==} - - '@antfu/utils@0.7.10': - resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} - - '@apidevtools/json-schema-ref-parser@11.7.2': - resolution: {integrity: sha512-4gY54eEGEstClvEkGnwVkTkrx0sqwemEFG5OSRRn3tD91XH0+Q8XIkYIfo7IwEWPpJZwILb9GUXeShtplRc/eA==} - engines: {node: '>= 16'} - - '@babel/code-frame@7.25.7': - resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==} - engines: {node: '>=6.9.0'} - - '@babel/compat-data@7.25.8': - resolution: {integrity: sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==} - engines: {node: '>=6.9.0'} - - '@babel/core@7.25.8': - resolution: {integrity: sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==} - engines: {node: '>=6.9.0'} - - '@babel/generator@7.25.7': - resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-annotate-as-pure@7.25.7': - resolution: {integrity: sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-compilation-targets@7.25.7': - resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==} - engines: {node: '>=6.9.0'} - - '@babel/helper-create-class-features-plugin@7.25.7': - resolution: {integrity: sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-member-expression-to-functions@7.25.7': - resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-imports@7.25.7': - resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-module-transforms@7.25.7': - resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-optimise-call-expression@7.25.7': - resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==} - engines: {node: '>=6.9.0'} - - '@babel/helper-plugin-utils@7.25.7': - resolution: {integrity: sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==} - engines: {node: '>=6.9.0'} - - '@babel/helper-replace-supers@7.25.7': - resolution: {integrity: sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - - '@babel/helper-simple-access@7.25.7': - resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-skip-transparent-expression-wrappers@7.25.7': - resolution: {integrity: sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==} - engines: {node: '>=6.9.0'} - - '@babel/helper-string-parser@7.25.7': - resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.25.7': - resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-option@7.25.7': - resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==} - engines: {node: '>=6.9.0'} - - '@babel/helpers@7.25.7': - resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.25.7': - resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==} - engines: {node: '>=6.9.0'} - - '@babel/parser@7.25.8': - resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==} - engines: {node: '>=6.0.0'} - hasBin: true - - '@babel/plugin-proposal-decorators@7.25.7': - resolution: {integrity: sha512-q1mqqqH0e1lhmsEQHV5U8OmdueBC2y0RFr2oUzZoFRtN3MvPmt2fsFRcNQAoGLTSNdHBFUYGnlgcRFhkBbKjPw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-decorators@7.25.7': - resolution: {integrity: sha512-oXduHo642ZhstLVYTe2z2GSJIruU0c/W3/Ghr6A5yGMsVrvdnxO1z+3pbTcT7f3/Clnt+1z8D/w1r1f1SHaCHw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-attributes@7.25.7': - resolution: {integrity: sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-import-meta@7.10.4': - resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-jsx@7.25.7': - resolution: {integrity: sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-syntax-typescript@7.25.7': - resolution: {integrity: sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-typescript@7.25.7': - resolution: {integrity: sha512-VKlgy2vBzj8AmEzunocMun2fF06bsSWV+FvVXohtL6FGve/+L217qhHxRTVGHEDO/YR8IANcjzgJsd04J8ge5Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/standalone@7.25.8': - resolution: {integrity: sha512-UvRanvLCGPRscJ5Rw9o6vUBS5P+E+gkhl6eaokrIN+WM1kUkmj254VZhyihFdDZVDlI3cPcZoakbJJw24QPISw==} - engines: {node: '>=6.9.0'} - - '@babel/template@7.25.7': - resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==} - engines: {node: '>=6.9.0'} - - '@babel/traverse@7.25.7': - resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==} - engines: {node: '>=6.9.0'} - - '@babel/types@7.25.8': - resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==} - engines: {node: '>=6.9.0'} - - '@capsizecss/metrics@2.2.0': - resolution: {integrity: sha512-DkFIser1KbGxWyG2hhQQeCit72TnOQDx5pr9bkA7+XlIy7qv+4lYtslH3bidVxm2qkY2guAgypSIPYuQQuk70A==} - - '@capsizecss/unpack@2.3.0': - resolution: {integrity: sha512-qkf9IoFIVTOkkpr8oZtCNSmubyWFCuPU4EOWO6J/rFPP5Ks2b1k1EHDSQRLwfokh6nCd7mJgBT2lhcuDCE6w4w==} - - '@cloudflare/kv-asset-handler@0.3.4': - resolution: {integrity: sha512-YLPHc8yASwjNkmcDMQMY35yiWjoKAKnhUbPRszBRS0YgH+IXtsMp61j+yTcnCE3oO2DgP0U3iejLC8FTtKDC8Q==} - engines: {node: '>=16.13'} - - '@csstools/selector-resolve-nested@2.0.0': - resolution: {integrity: sha512-oklSrRvOxNeeOW1yARd4WNCs/D09cQjunGZUgSq6vM8GpzFswN+8rBZyJA29YFZhOTQ6GFzxgLDNtVbt9wPZMA==} - engines: {node: '>=18'} - peerDependencies: - postcss-selector-parser: ^6.1.0 - - '@csstools/selector-specificity@4.0.0': - resolution: {integrity: sha512-189nelqtPd8++phaHNwYovKZI0FOzH1vQEE3QhHHkNIGrg5fSs9CbYP3RvfEH5geztnIA9Jwq91wyOIwAW5JIQ==} - engines: {node: '>=18'} - peerDependencies: - postcss-selector-parser: ^6.1.0 - - '@es-joy/jsdoccomment@0.49.0': - resolution: {integrity: sha512-xjZTSFgECpb9Ohuk5yMX5RhUEbfeQcuOp8IF60e+wyzWEF0M5xeSgqsfLtvPEX8BIyOX9saZqzuGPmZ8oWc+5Q==} - engines: {node: '>=16'} - - '@esbuild/aix-ppc64@0.20.2': - resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - - '@esbuild/aix-ppc64@0.21.5': - resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [aix] - - '@esbuild/aix-ppc64@0.23.1': - resolution: {integrity: sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - - '@esbuild/aix-ppc64@0.24.0': - resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - - '@esbuild/android-arm64@0.20.2': - resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm64@0.21.5': - resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm64@0.23.1': - resolution: {integrity: sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm64@0.24.0': - resolution: {integrity: sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - - '@esbuild/android-arm@0.20.2': - resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-arm@0.21.5': - resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} - engines: {node: '>=12'} - cpu: [arm] - os: [android] - - '@esbuild/android-arm@0.23.1': - resolution: {integrity: sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - - '@esbuild/android-arm@0.24.0': - resolution: {integrity: sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - - '@esbuild/android-x64@0.20.2': - resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/android-x64@0.21.5': - resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} - engines: {node: '>=12'} - cpu: [x64] - os: [android] - - '@esbuild/android-x64@0.23.1': - resolution: {integrity: sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - - '@esbuild/android-x64@0.24.0': - resolution: {integrity: sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - - '@esbuild/darwin-arm64@0.20.2': - resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-arm64@0.21.5': - resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-arm64@0.23.1': - resolution: {integrity: sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-arm64@0.24.0': - resolution: {integrity: sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - - '@esbuild/darwin-x64@0.20.2': - resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/darwin-x64@0.21.5': - resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} - engines: {node: '>=12'} - cpu: [x64] - os: [darwin] - - '@esbuild/darwin-x64@0.23.1': - resolution: {integrity: sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - - '@esbuild/darwin-x64@0.24.0': - resolution: {integrity: sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - - '@esbuild/freebsd-arm64@0.20.2': - resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-arm64@0.21.5': - resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} - engines: {node: '>=12'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-arm64@0.23.1': - resolution: {integrity: sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-arm64@0.24.0': - resolution: {integrity: sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.20.2': - resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.21.5': - resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.23.1': - resolution: {integrity: sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - - '@esbuild/freebsd-x64@0.24.0': - resolution: {integrity: sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - - '@esbuild/linux-arm64@0.20.2': - resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm64@0.21.5': - resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} - engines: {node: '>=12'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm64@0.23.1': - resolution: {integrity: sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm64@0.24.0': - resolution: {integrity: sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - - '@esbuild/linux-arm@0.20.2': - resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-arm@0.21.5': - resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} - engines: {node: '>=12'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-arm@0.23.1': - resolution: {integrity: sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-arm@0.24.0': - resolution: {integrity: sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - - '@esbuild/linux-ia32@0.20.2': - resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-ia32@0.21.5': - resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} - engines: {node: '>=12'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-ia32@0.23.1': - resolution: {integrity: sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-ia32@0.24.0': - resolution: {integrity: sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - - '@esbuild/linux-loong64@0.20.2': - resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-loong64@0.21.5': - resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} - engines: {node: '>=12'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-loong64@0.23.1': - resolution: {integrity: sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-loong64@0.24.0': - resolution: {integrity: sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - - '@esbuild/linux-mips64el@0.20.2': - resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-mips64el@0.21.5': - resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} - engines: {node: '>=12'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-mips64el@0.23.1': - resolution: {integrity: sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-mips64el@0.24.0': - resolution: {integrity: sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - - '@esbuild/linux-ppc64@0.20.2': - resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-ppc64@0.21.5': - resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} - engines: {node: '>=12'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-ppc64@0.23.1': - resolution: {integrity: sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-ppc64@0.24.0': - resolution: {integrity: sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - - '@esbuild/linux-riscv64@0.20.2': - resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-riscv64@0.21.5': - resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} - engines: {node: '>=12'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-riscv64@0.23.1': - resolution: {integrity: sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-riscv64@0.24.0': - resolution: {integrity: sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - - '@esbuild/linux-s390x@0.20.2': - resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-s390x@0.21.5': - resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} - engines: {node: '>=12'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-s390x@0.23.1': - resolution: {integrity: sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-s390x@0.24.0': - resolution: {integrity: sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - - '@esbuild/linux-x64@0.20.2': - resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/linux-x64@0.21.5': - resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [linux] - - '@esbuild/linux-x64@0.23.1': - resolution: {integrity: sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - - '@esbuild/linux-x64@0.24.0': - resolution: {integrity: sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - - '@esbuild/netbsd-x64@0.20.2': - resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.21.5': - resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} - engines: {node: '>=12'} - cpu: [x64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.23.1': - resolution: {integrity: sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - - '@esbuild/netbsd-x64@0.24.0': - resolution: {integrity: sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - - '@esbuild/openbsd-arm64@0.23.1': - resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - - '@esbuild/openbsd-arm64@0.24.0': - resolution: {integrity: sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.20.2': - resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.21.5': - resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} - engines: {node: '>=12'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.23.1': - resolution: {integrity: sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - - '@esbuild/openbsd-x64@0.24.0': - resolution: {integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - - '@esbuild/sunos-x64@0.20.2': - resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/sunos-x64@0.21.5': - resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} - engines: {node: '>=12'} - cpu: [x64] - os: [sunos] - - '@esbuild/sunos-x64@0.23.1': - resolution: {integrity: sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - - '@esbuild/sunos-x64@0.24.0': - resolution: {integrity: sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - - '@esbuild/win32-arm64@0.20.2': - resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-arm64@0.21.5': - resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} - engines: {node: '>=12'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-arm64@0.23.1': - resolution: {integrity: sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-arm64@0.24.0': - resolution: {integrity: sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - - '@esbuild/win32-ia32@0.20.2': - resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-ia32@0.21.5': - resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} - engines: {node: '>=12'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-ia32@0.23.1': - resolution: {integrity: sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-ia32@0.24.0': - resolution: {integrity: sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - - '@esbuild/win32-x64@0.20.2': - resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@esbuild/win32-x64@0.21.5': - resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} - engines: {node: '>=12'} - cpu: [x64] - os: [win32] - - '@esbuild/win32-x64@0.23.1': - resolution: {integrity: sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - - '@esbuild/win32-x64@0.24.0': - resolution: {integrity: sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - - '@eslint-community/eslint-utils@4.4.0': - resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - - '@eslint-community/regexpp@4.11.1': - resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - '@eslint/compat@1.2.1': - resolution: {integrity: sha512-JbHG2TWuCeNzh87fXo+/46Z1LEo9DBA9T188d0fZgGxAD+cNyS6sx9fdiyxjGPBMyQVRlCutTByZ6a5+YMkF7g==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^9.10.0 - peerDependenciesMeta: - eslint: - optional: true - - '@eslint/config-array@0.18.0': - resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/config-inspector@0.5.5': - resolution: {integrity: sha512-HRh0suZvtocEu1FmVtrBKzvhkrZkrppzBc+fqKKHYMxOy5melLG9qvxthGJ2cRNKBuEDCrnSYG9u+Y7Ifz5e2A==} - hasBin: true - peerDependencies: - eslint: ^8.50.0 || ^9.0.0 - - '@eslint/core@0.7.0': - resolution: {integrity: sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/eslintrc@3.1.0': - resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/js@9.13.0': - resolution: {integrity: sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/object-schema@2.1.4': - resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@eslint/plugin-kit@0.2.1': - resolution: {integrity: sha512-HFZ4Mp26nbWk9d/BpvP0YNL6W4UoZF0VFcTw/aPPA8RpOxeFQgK+ClABGgAUXs9Y/RGX/l1vOmrqz1MQt9MNuw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@fastify/accept-negotiator@1.1.0': - resolution: {integrity: sha512-OIHZrb2ImZ7XG85HXOONLcJWGosv7sIvM2ifAPQVhg9Lv7qdmMBNVaai4QTdyuaqbKM5eO6sLSQOYI7wEQeCJQ==} - engines: {node: '>=14'} - - '@fastify/busboy@2.1.1': - resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} - engines: {node: '>=14'} - - '@headlessui/tailwindcss@0.2.1': - resolution: {integrity: sha512-2+5+NZ+RzMyrVeCZOxdbvkUSssSxGvcUxphkIfSVLpRiKsj+/63T2TOL9dBYMXVfj/CGr6hMxSRInzXv6YY7sA==} - engines: {node: '>=10'} - peerDependencies: - tailwindcss: ^3.0 - - '@headlessui/vue@1.7.23': - resolution: {integrity: sha512-JzdCNqurrtuu0YW6QaDtR2PIYCKPUWq28csDyMvN4zmGccmE7lz40Is6hc3LA4HFeCI7sekZ/PQMTNmn9I/4Wg==} - engines: {node: '>=10'} - peerDependencies: - vue: ^3.2.0 - - '@humanfs/core@0.19.0': - resolution: {integrity: sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==} - engines: {node: '>=18.18.0'} - - '@humanfs/node@0.16.5': - resolution: {integrity: sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==} - engines: {node: '>=18.18.0'} - - '@humanwhocodes/module-importer@1.0.1': - resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} - engines: {node: '>=12.22'} - - '@humanwhocodes/retry@0.3.1': - resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} - engines: {node: '>=18.18'} - - '@iconify-json/heroicons@1.2.1': - resolution: {integrity: sha512-TkKfS5U27kE5MXmSGLzPoz95BP5VA9xEJXwJFwmPMVLX+xyWq0OkoiWTUXB0uAoQODpb8BaRpzSydItrq9fIRA==} - - '@iconify-json/simple-icons@1.2.9': - resolution: {integrity: sha512-0hxlf0uCKAUT+rLjh4iH16XMfRqptOpZURBVk2PKAFDGbe1+8hPPstKFkBAPvtfkCK0bO+E9QE/Q5ozuCYz28A==} - - '@iconify-json/vscode-icons@1.2.2': - resolution: {integrity: sha512-bTpT0HJDRqGkxQv8oiETNHLEnBZpnA1QaRD35CQyO7M7qgWVLx2xwn/lK6e4waojmlPC3ckMBx3WFIUUn0/Jdg==} - - '@iconify/collections@1.0.473': - resolution: {integrity: sha512-cz6i7fnTue2AFOF+/EFhIixklOIqYtQIV9QbI7gVC8WcpyDaURfReGFlgkvEI5GStnFTM5lIDIztuT6Fl6eP8g==} - - '@iconify/types@2.0.0': - resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} - - '@iconify/utils@2.1.33': - resolution: {integrity: sha512-jP9h6v/g0BIZx0p7XGJJVtkVnydtbgTgt9mVNcGDYwaa7UhdHdI9dvoq+gKj9sijMSJKxUPEG2JyjsgXjxL7Kw==} - - '@iconify/vue@4.1.3-beta.1': - resolution: {integrity: sha512-N7iEOnWfhjbMqiyGMhotJKip23nrK5l3+T1hQwpEjKeMD2o4zOjm8zmeEfOOH81EXllhhOm7upR8jcH499YRWA==} - peerDependencies: - vue: '>=3' - - '@ioredis/commands@1.2.0': - resolution: {integrity: sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==} - - '@isaacs/cliui@8.0.2': - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} - - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} - engines: {node: '>=6.0.0'} - - '@jridgewell/resolve-uri@3.1.2': - resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} - engines: {node: '>=6.0.0'} - - '@jridgewell/set-array@1.2.1': - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} - - '@jridgewell/source-map@0.3.6': - resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==} - - '@jridgewell/sourcemap-codec@1.5.0': - resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} - - '@jridgewell/trace-mapping@0.3.25': - resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - - '@jsdevtools/ono@7.1.3': - resolution: {integrity: sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==} - - '@koa/router@12.0.2': - resolution: {integrity: sha512-sYcHglGKTxGF+hQ6x67xDfkE9o+NhVlRHBqq6gLywaMc6CojK/5vFZByphdonKinYlMLkEkacm+HEse9HzwgTA==} - engines: {node: '>= 12'} - - '@kwsites/file-exists@1.1.1': - resolution: {integrity: sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==} - - '@kwsites/promise-deferred@1.1.1': - resolution: {integrity: sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==} - - '@mapbox/node-pre-gyp@1.0.11': - resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} - hasBin: true - - '@netlify/functions@2.8.2': - resolution: {integrity: sha512-DeoAQh8LuNPvBE4qsKlezjKj0PyXDryOFJfJKo3Z1qZLKzQ21sT314KQKPVjfvw6knqijj+IO+0kHXy/TJiqNA==} - engines: {node: '>=14.0.0'} - - '@netlify/node-cookies@0.1.0': - resolution: {integrity: sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==} - engines: {node: ^14.16.0 || >=16.0.0} - - '@netlify/serverless-functions-api@1.26.1': - resolution: {integrity: sha512-q3L9i3HoNfz0SGpTIS4zTcKBbRkxzCRpd169eyiTuk3IwcPC3/85mzLHranlKo2b+HYT0gu37YxGB45aD8A3Tw==} - engines: {node: '>=18.0.0'} - - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.scandir@3.0.0': - resolution: {integrity: sha512-ktI9+PxfHYtKjF3cLTUAh2N+b8MijCRPNwKJNqTVdL0gB0QxLU2rIRaZ1t71oEa3YBDE6bukH1sR0+CDnpp/Mg==} - engines: {node: '>=16.14.0'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@3.0.0': - resolution: {integrity: sha512-2tQOI38s19P9i7X/Drt0v8iMA+KMsgdhB/dyPER+e+2Y8L1Z7QvnuRdW/uLuf5YRFUYmnj4bMA6qCuZHFI1GDQ==} - engines: {node: '>=16.14.0'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@2.0.0': - resolution: {integrity: sha512-54voNDBobGdMl3BUXSu7UaDh1P85PGHWlJ5e0XhPugo1JulOyCtp2I+5ri4wplGDJ8QGwPEQW7/x3yTLU7yF1A==} - engines: {node: '>=16.14.0'} - - '@nuxt/content@2.13.4': - resolution: {integrity: sha512-NBaHL/SNYUK7+RLgOngSFmKqEPYc0dYdnwVFsxIdrOZUoUbD8ERJJDaoRwwtyYCMOgUeFA/zxAkuADytp+DKiQ==} - - '@nuxt/devalue@2.0.2': - resolution: {integrity: sha512-GBzP8zOc7CGWyFQS6dv1lQz8VVpz5C2yRszbXufwG/9zhStTIH50EtD87NmWbTMwXDvZLNg8GIpb1UFdH93JCA==} - - '@nuxt/devtools-kit@1.6.0': - resolution: {integrity: sha512-kJ8mVKwTSN3tdEVNy7mxKCiQk9wsG5t3oOrRMWk6IEbTSov+5sOULqQSM/+OWxWsEDmDfA7QlS5sM3Ti9uMRqQ==} - peerDependencies: - vite: '*' - - '@nuxt/devtools-wizard@1.6.0': - resolution: {integrity: sha512-n+mzz5NwnKZim0tq1oBi+x1nNXb21fp7QeBl7bYKyDT1eJ0XCxFkVTr/kB/ddkkLYZ+o8TykpeNPa74cN+xAyQ==} - hasBin: true - - '@nuxt/devtools@1.6.0': - resolution: {integrity: sha512-xNorMapzpM8HaW7NnAsEEO38OrmrYBzGvkkqfBU5nNh5XEymmIfCbQc7IA/GIOH9pXOV4gRutCjHCWXHYbOl3A==} - hasBin: true - peerDependencies: - vite: '*' - - '@nuxt/eslint-config@0.6.0': - resolution: {integrity: sha512-/WZ9tzukVj6+epdJki27IzAOqj1Kf5NBCwJfI7BUoEwhyyL//M9+TtS2jfBxVcbcEshxIV3GD3BCaq6l4tHGtQ==} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - - '@nuxt/eslint-plugin@0.6.0': - resolution: {integrity: sha512-DLSX6RCxUg5UDVmOjopd7pUb/eDnmPmqKFlvy4ETytcr4sXS3JXs+Fwn2sUbcASo9sn1ndPMz/c2pTA7YnYqJA==} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - - '@nuxt/eslint@0.6.0': - resolution: {integrity: sha512-Fk/GERGjHVCBi3xKAusxpb12i1PrUI/N6fepSmHKDA815Kh8fUYPvh0yZFI6b5os6f1RlYEZpSjFu5S4TplDMw==} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - eslint-webpack-plugin: ^4.1.0 - vite-plugin-eslint2: ^4.4.0 - peerDependenciesMeta: - eslint-webpack-plugin: - optional: true - vite-plugin-eslint2: - optional: true - - '@nuxt/fonts@0.10.0': - resolution: {integrity: sha512-VoK/rssN1PzMeQOplap8UYnbKtI6IDaI+sj5BmbCCpXRYY84gH8m+zePGRo88Mi9ujRhd1HUOXfsCvHN88iGmQ==} - - '@nuxt/icon@1.5.6': - resolution: {integrity: sha512-7l99CWc/laHphSsoLikh99Hkwjv+59cwAMJ0f9eZddBV+vO7zLGWwocH/TDNjlX0IACgVoG+AfbP/p1fqlLKpg==} - - '@nuxt/image@1.8.1': - resolution: {integrity: sha512-qNj7OCNsoGcutGOo1R2PYp4tQ/6uD77aSakyDoVAmLSRJBmhFTnT2+gIqVD95JMmkSHgYhmSX4gGxnaQK/t1cw==} - engines: {node: ^14.16.0 || >=16.11.0} - - '@nuxt/kit@3.13.2': - resolution: {integrity: sha512-KvRw21zU//wdz25IeE1E5m/aFSzhJloBRAQtv+evcFeZvuroIxpIQuUqhbzuwznaUwpiWbmwlcsp5uOWmi4vwA==} - engines: {node: ^14.18.0 || >=16.10.0} - - '@nuxt/schema@3.13.2': - resolution: {integrity: sha512-CCZgpm+MkqtOMDEgF9SWgGPBXlQ01hV/6+2reDEpJuqFPGzV8HYKPBcIFvn7/z5ahtgutHLzjP71Na+hYcqSpw==} - engines: {node: ^14.18.0 || >=16.10.0} - - '@nuxt/telemetry@2.6.0': - resolution: {integrity: sha512-h4YJ1d32cU7tDKjjhjtIIEck4WF/w3DTQBT348E9Pz85YLttnLqktLM0Ez9Xc2LzCeUgBDQv1el7Ob/zT3KUqg==} - hasBin: true - - '@nuxt/ui-pro@1.4.4': - resolution: {integrity: sha512-sQbaXcUaMWxTYf0UewkncvRc5U3CeamTuDP3bDYi0uni//9BqVSby7avKgKGRZZwq4z2U+cmlMkWgxk1DFM0hQ==} - - '@nuxt/ui@2.18.7': - resolution: {integrity: sha512-8k0Ha43WC9iaL6n98ieLcOVg+2wkSKWww4MEXKOkoOv2YzvsALrdSLh2anv3P7OfI8VCWYXDehhYuOTJd9um2g==} - - '@nuxt/vite-builder@3.13.2': - resolution: {integrity: sha512-3dzc3YH3UeTmzGtCevW1jTq0Q8/cm+yXqo/VS/EFM3aIO/tuNPS88is8ZF2YeBButFnLFllq/QenziPbq0YD6Q==} - engines: {node: ^14.18.0 || >=16.10.0} - peerDependencies: - vue: ^3.3.4 - - '@nuxthq/studio@2.1.1': - resolution: {integrity: sha512-NQMf1Howrr5D7fDRMSpYyjQSi3/RzUT91KfcLxGz3Q2iAq0y94GSlPCpYMqYId9CgcfG2OIIDm40/dFusQZIvQ==} - - '@nuxtjs/color-mode@3.5.1': - resolution: {integrity: sha512-GRHF3WUwX6fXIiRVlngNq1nVDwrVuP6dWX1DRmox3QolzX0eH1oJEcFr/lAm1nkT71JVGb8mszho9w+yHJbePw==} - - '@nuxtjs/mdc@0.9.2': - resolution: {integrity: sha512-dozIPTPjEYu8jChHNCICZP3mN0sFC6l3aLxTkgv/DAr1EI8jqqqoSZKevzuiHUWGNTguS70+fLcztCwrzWdoYA==} - - '@nuxtjs/tailwindcss@6.12.2': - resolution: {integrity: sha512-qPJiFH67CkTj/2kBGBzqXihOD1rQXMsbVS4vdQvfBxOBLPfGhU1yw7AATdhPl2BBjO2krjJLuZj39t7dnDYOwg==} - - '@parcel/watcher-android-arm64@2.4.1': - resolution: {integrity: sha512-LOi/WTbbh3aTn2RYddrO8pnapixAziFl6SMxHM69r3tvdSm94JtCenaKgk1GRg5FJ5wpMCpHeW+7yqPlvZv7kg==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [android] - - '@parcel/watcher-darwin-arm64@2.4.1': - resolution: {integrity: sha512-ln41eihm5YXIY043vBrrHfn94SIBlqOWmoROhsMVTSXGh0QahKGy77tfEywQ7v3NywyxBBkGIfrWRHm0hsKtzA==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [darwin] - - '@parcel/watcher-darwin-x64@2.4.1': - resolution: {integrity: sha512-yrw81BRLjjtHyDu7J61oPuSoeYWR3lDElcPGJyOvIXmor6DEo7/G2u1o7I38cwlcoBHQFULqF6nesIX3tsEXMg==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [darwin] - - '@parcel/watcher-freebsd-x64@2.4.1': - resolution: {integrity: sha512-TJa3Pex/gX3CWIx/Co8k+ykNdDCLx+TuZj3f3h7eOjgpdKM+Mnix37RYsYU4LHhiYJz3DK5nFCCra81p6g050w==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [freebsd] - - '@parcel/watcher-linux-arm-glibc@2.4.1': - resolution: {integrity: sha512-4rVYDlsMEYfa537BRXxJ5UF4ddNwnr2/1O4MHM5PjI9cvV2qymvhwZSFgXqbS8YoTk5i/JR0L0JDs69BUn45YA==} - engines: {node: '>= 10.0.0'} - cpu: [arm] - os: [linux] - - '@parcel/watcher-linux-arm64-glibc@2.4.1': - resolution: {integrity: sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [linux] - - '@parcel/watcher-linux-arm64-musl@2.4.1': - resolution: {integrity: sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [linux] - - '@parcel/watcher-linux-x64-glibc@2.4.1': - resolution: {integrity: sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [linux] - - '@parcel/watcher-linux-x64-musl@2.4.1': - resolution: {integrity: sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [linux] - - '@parcel/watcher-wasm@2.4.1': - resolution: {integrity: sha512-/ZR0RxqxU/xxDGzbzosMjh4W6NdYFMqq2nvo2b8SLi7rsl/4jkL8S5stIikorNkdR50oVDvqb/3JT05WM+CRRA==} - engines: {node: '>= 10.0.0'} - bundledDependencies: - - napi-wasm - - '@parcel/watcher-win32-arm64@2.4.1': - resolution: {integrity: sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==} - engines: {node: '>= 10.0.0'} - cpu: [arm64] - os: [win32] - - '@parcel/watcher-win32-ia32@2.4.1': - resolution: {integrity: sha512-maNRit5QQV2kgHFSYwftmPBxiuK5u4DXjbXx7q6eKjq5dsLXZ4FJiVvlcw35QXzk0KrUecJmuVFbj4uV9oYrcw==} - engines: {node: '>= 10.0.0'} - cpu: [ia32] - os: [win32] - - '@parcel/watcher-win32-x64@2.4.1': - resolution: {integrity: sha512-+DvS92F9ezicfswqrvIRM2njcYJbd5mb9CUgtrHCHmvn7pPPa+nMDRu1o1bYYz/l5IB2NVGNJWiH7h1E58IF2A==} - engines: {node: '>= 10.0.0'} - cpu: [x64] - os: [win32] - - '@parcel/watcher@2.4.1': - resolution: {integrity: sha512-HNjmfLQEVRZmHRET336f20H/8kOozUGwk7yajvsonjNxbj2wBTK1WsQuHkD5yYh9RxFGL2EyDHryOihOwUoKDA==} - engines: {node: '>= 10.0.0'} - - '@pkgjs/parseargs@0.11.0': - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - - '@pkgr/core@0.1.1': - resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} - engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} - - '@polka/url@1.0.0-next.28': - resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==} - - '@popperjs/core@2.11.8': - resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} - - '@resvg/resvg-js-android-arm-eabi@2.6.2': - resolution: {integrity: sha512-FrJibrAk6v29eabIPgcTUMPXiEz8ssrAk7TXxsiZzww9UTQ1Z5KAbFJs+Z0Ez+VZTYgnE5IQJqBcoSiMebtPHA==} - engines: {node: '>= 10'} - cpu: [arm] - os: [android] - - '@resvg/resvg-js-android-arm64@2.6.2': - resolution: {integrity: sha512-VcOKezEhm2VqzXpcIJoITuvUS/fcjIw5NA/w3tjzWyzmvoCdd+QXIqy3FBGulWdClvp4g+IfUemigrkLThSjAQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [android] - - '@resvg/resvg-js-darwin-arm64@2.6.2': - resolution: {integrity: sha512-nmok2LnAd6nLUKI16aEB9ydMC6Lidiiq2m1nEBDR1LaaP7FGs4AJ90qDraxX+CWlVuRlvNjyYJTNv8qFjtL9+A==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [darwin] - - '@resvg/resvg-js-darwin-x64@2.6.2': - resolution: {integrity: sha512-GInyZLjgWDfsVT6+SHxQVRwNzV0AuA1uqGsOAW+0th56J7Nh6bHHKXHBWzUrihxMetcFDmQMAX1tZ1fZDYSRsw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [darwin] - - '@resvg/resvg-js-linux-arm-gnueabihf@2.6.2': - resolution: {integrity: sha512-YIV3u/R9zJbpqTTNwTZM5/ocWetDKGsro0SWp70eGEM9eV2MerWyBRZnQIgzU3YBnSBQ1RcxRZvY/UxwESfZIw==} - engines: {node: '>= 10'} - cpu: [arm] - os: [linux] - - '@resvg/resvg-js-linux-arm64-gnu@2.6.2': - resolution: {integrity: sha512-zc2BlJSim7YR4FZDQ8OUoJg5holYzdiYMeobb9pJuGDidGL9KZUv7SbiD4E8oZogtYY42UZEap7dqkkYuA91pg==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@resvg/resvg-js-linux-arm64-musl@2.6.2': - resolution: {integrity: sha512-3h3dLPWNgSsD4lQBJPb4f+kvdOSJHa5PjTYVsWHxLUzH4IFTJUAnmuWpw4KqyQ3NA5QCyhw4TWgxk3jRkQxEKg==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [linux] - - '@resvg/resvg-js-linux-x64-gnu@2.6.2': - resolution: {integrity: sha512-IVUe+ckIerA7xMZ50duAZzwf1U7khQe2E0QpUxu5MBJNao5RqC0zwV/Zm965vw6D3gGFUl7j4m+oJjubBVoftw==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@resvg/resvg-js-linux-x64-musl@2.6.2': - resolution: {integrity: sha512-UOf83vqTzoYQO9SZ0fPl2ZIFtNIz/Rr/y+7X8XRX1ZnBYsQ/tTb+cj9TE+KHOdmlTFBxhYzVkP2lRByCzqi4jQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [linux] - - '@resvg/resvg-js-win32-arm64-msvc@2.6.2': - resolution: {integrity: sha512-7C/RSgCa+7vqZ7qAbItfiaAWhyRSoD4l4BQAbVDqRRsRgY+S+hgS3in0Rxr7IorKUpGE69X48q6/nOAuTJQxeQ==} - engines: {node: '>= 10'} - cpu: [arm64] - os: [win32] - - '@resvg/resvg-js-win32-ia32-msvc@2.6.2': - resolution: {integrity: sha512-har4aPAlvjnLcil40AC77YDIk6loMawuJwFINEM7n0pZviwMkMvjb2W5ZirsNOZY4aDbo5tLx0wNMREp5Brk+w==} - engines: {node: '>= 10'} - cpu: [ia32] - os: [win32] - - '@resvg/resvg-js-win32-x64-msvc@2.6.2': - resolution: {integrity: sha512-ZXtYhtUr5SSaBrUDq7DiyjOFJqBVL/dOBN7N/qmi/pO0IgiWW/f/ue3nbvu9joWE5aAKDoIzy/CxsY0suwGosQ==} - engines: {node: '>= 10'} - cpu: [x64] - os: [win32] - - '@resvg/resvg-js@2.6.2': - resolution: {integrity: sha512-xBaJish5OeGmniDj9cW5PRa/PtmuVU3ziqrbr5xJj901ZDN4TosrVaNZpEiLZAxdfnhAe7uQ7QFWfjPe9d9K2Q==} - engines: {node: '>= 10'} - - '@resvg/resvg-wasm@2.6.2': - resolution: {integrity: sha512-FqALmHI8D4o6lk/LRWDnhw95z5eO+eAa6ORjVg09YRR7BkcM6oPHU9uyC0gtQG5vpFLvgpeU4+zEAz2H8APHNw==} - engines: {node: '>= 10'} - - '@rollup/plugin-alias@5.1.1': - resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/plugin-commonjs@25.0.8': - resolution: {integrity: sha512-ZEZWTK5n6Qde0to4vS9Mr5x/0UZoqCxPVR9KRUjU4kA2sO7GEUn1fop0DAwpO6z0Nw/kJON9bDmSxdWxO/TT1A==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/plugin-inject@5.0.5': - resolution: {integrity: sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/plugin-json@6.1.0': - resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/plugin-node-resolve@15.3.0': - resolution: {integrity: sha512-9eO5McEICxMzJpDW9OnMYSv4Sta3hmt7VtBFz5zR9273suNOydOyq/FrGeGy+KsTRFm8w0SLVhzig2ILFT63Ag==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.78.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/plugin-replace@5.0.7': - resolution: {integrity: sha512-PqxSfuorkHz/SPpyngLyg5GCEkOcee9M1bkxiVDr41Pd61mqP1PLOoDPbpl44SB2mQGKwV/In74gqQmGITOhEQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/plugin-terser@0.4.4': - resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/pluginutils@4.2.1': - resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} - engines: {node: '>= 8.0.0'} - - '@rollup/pluginutils@5.1.2': - resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - - '@rollup/rollup-android-arm-eabi@4.24.0': - resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==} - cpu: [arm] - os: [android] - - '@rollup/rollup-android-arm64@4.24.0': - resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==} - cpu: [arm64] - os: [android] - - '@rollup/rollup-darwin-arm64@4.24.0': - resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==} - cpu: [arm64] - os: [darwin] - - '@rollup/rollup-darwin-x64@4.24.0': - resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==} - cpu: [x64] - os: [darwin] - - '@rollup/rollup-linux-arm-gnueabihf@4.24.0': - resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm-musleabihf@4.24.0': - resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==} - cpu: [arm] - os: [linux] - - '@rollup/rollup-linux-arm64-gnu@4.24.0': - resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-arm64-musl@4.24.0': - resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==} - cpu: [arm64] - os: [linux] - - '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': - resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.24.0': - resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-s390x-gnu@4.24.0': - resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.24.0': - resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-linux-x64-musl@4.24.0': - resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==} - cpu: [x64] - os: [linux] - - '@rollup/rollup-win32-arm64-msvc@4.24.0': - resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==} - cpu: [arm64] - os: [win32] - - '@rollup/rollup-win32-ia32-msvc@4.24.0': - resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==} - cpu: [ia32] - os: [win32] - - '@rollup/rollup-win32-x64-msvc@4.24.0': - resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==} - cpu: [x64] - os: [win32] - - '@sec-ant/readable-stream@0.4.1': - resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} - - '@shikijs/core@1.22.0': - resolution: {integrity: sha512-S8sMe4q71TJAW+qG93s5VaiihujRK6rqDFqBnxqvga/3LvqHEnxqBIOPkt//IdXVtHkQWKu4nOQNk0uBGicU7Q==} - - '@shikijs/engine-javascript@1.22.0': - resolution: {integrity: sha512-AeEtF4Gcck2dwBqCFUKYfsCq0s+eEbCEbkUuFou53NZ0sTGnJnJ/05KHQFZxpii5HMXbocV9URYVowOP2wH5kw==} - - '@shikijs/engine-oniguruma@1.22.0': - resolution: {integrity: sha512-5iBVjhu/DYs1HB0BKsRRFipRrD7rqjxlWTj4F2Pf+nQSPqc3kcyqFFeZXnBMzDf0HdqaFVvhDRAGiYNvyLP+Mw==} - - '@shikijs/transformers@1.22.0': - resolution: {integrity: sha512-k7iMOYuGQA62KwAuJOQBgH2IQb5vP8uiB3lMvAMGUgAMMurePOx3Z7oNqJdcpxqZP6I9cc7nc4DNqSKduCxmdg==} - - '@shikijs/types@1.22.0': - resolution: {integrity: sha512-Fw/Nr7FGFhlQqHfxzZY8Cwtwk5E9nKDUgeLjZgt3UuhcM3yJR9xj3ZGNravZZok8XmEZMiYkSMTPlPkULB8nww==} - - '@shikijs/vscode-textmate@9.3.0': - resolution: {integrity: sha512-jn7/7ky30idSkd/O5yDBfAnVt+JJpepofP/POZ1iMOxK59cOfqIgg/Dj0eFsjOTMw+4ycJN0uhZH/Eb0bs/EUA==} - - '@shuding/opentype.js@1.4.0-beta.0': - resolution: {integrity: sha512-3NgmNyH3l/Hv6EvsWJbsvpcpUba6R8IREQ83nH83cyakCw7uM1arZKNfHwv1Wz6jgqrF/j4x5ELvR6PnK9nTcA==} - engines: {node: '>= 8.0.0'} - hasBin: true - - '@sindresorhus/is@4.6.0': - resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==} - engines: {node: '>=10'} - - '@sindresorhus/merge-streams@2.3.0': - resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} - engines: {node: '>=18'} - - '@sindresorhus/merge-streams@4.0.0': - resolution: {integrity: sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==} - engines: {node: '>=18'} - - '@socket.io/component-emitter@3.1.2': - resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} - - '@stylistic/eslint-plugin@2.9.0': - resolution: {integrity: sha512-OrDyFAYjBT61122MIY1a3SfEgy3YCMgt2vL4eoPmvTwDBwyQhAXurxNQznlRD/jESNfYWfID8Ej+31LljvF7Xg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: '>=8.40.0' - - '@swc/helpers@0.5.13': - resolution: {integrity: sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==} - - '@tailwindcss/aspect-ratio@0.4.2': - resolution: {integrity: sha512-8QPrypskfBa7QIMuKHg2TA7BqES6vhBrDLOv8Unb6FcFyd3TjKbc6lcmb9UPQHxfl24sXoJ41ux/H7qQQvfaSQ==} - peerDependencies: - tailwindcss: '>=2.0.0 || >=3.0.0 || >=3.0.0-alpha.1' - - '@tailwindcss/container-queries@0.1.1': - resolution: {integrity: sha512-p18dswChx6WnTSaJCSGx6lTmrGzNNvm2FtXmiO6AuA1V4U5REyoqwmT6kgAsIMdjo07QdAfYXHJ4hnMtfHzWgA==} - peerDependencies: - tailwindcss: '>=3.2.0' - - '@tailwindcss/forms@0.5.9': - resolution: {integrity: sha512-tM4XVr2+UVTxXJzey9Twx48c1gcxFStqn1pQz0tRsX8o3DvxhN5oY5pvyAbUx7VTaZxpej4Zzvc6h+1RJBzpIg==} - peerDependencies: - tailwindcss: '>=3.0.0 || >= 3.0.0-alpha.1 || >= 4.0.0-alpha.20' - - '@tailwindcss/typography@0.5.15': - resolution: {integrity: sha512-AqhlCXl+8grUz8uqExv5OTtgpjuVIwFTSXTrh8y9/pw6q2ek7fJ+Y8ZEVw7EB2DCcuCOtEjf9w3+J3rzts01uA==} - peerDependencies: - tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20' - - '@tanstack/virtual-core@3.10.8': - resolution: {integrity: sha512-PBu00mtt95jbKFi6Llk9aik8bnR3tR/oQP1o3TSi+iG//+Q2RTIzCEgKkHG8BB86kxMNW6O8wku+Lmi+QFR6jA==} - - '@tanstack/vue-virtual@3.10.8': - resolution: {integrity: sha512-DB5QA8c/LfqOqIUCpSs3RdOTVroRRdqeHMqBkYrcashSZtOzIv8xbiqHgg7RYxDfkH5F3Y+e0MkuuyGNDVB0BQ==} - peerDependencies: - vue: ^2.7.0 || ^3.0.0 - - '@trysound/sax@0.2.0': - resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} - engines: {node: '>=10.13.0'} - - '@types/debug@4.1.12': - resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} - - '@types/estree@1.0.6': - resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} - - '@types/hast@3.0.4': - resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==} - - '@types/http-proxy@1.17.15': - resolution: {integrity: sha512-25g5atgiVNTIv0LBDTg1H74Hvayx0ajtJPLLcYE3whFv75J0pWNtOBzaXJQgDTmrX1bx5U9YC2w/n65BN1HwRQ==} - - '@types/json-schema@7.0.15': - resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - - '@types/mdast@4.0.4': - resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} - - '@types/ms@0.7.34': - resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} - - '@types/node@22.7.7': - resolution: {integrity: sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==} - - '@types/normalize-package-data@2.4.4': - resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} - - '@types/resolve@1.20.2': - resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==} - - '@types/unist@2.0.11': - resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==} - - '@types/unist@3.0.3': - resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} - - '@types/web-bluetooth@0.0.20': - resolution: {integrity: sha512-g9gZnnXVq7gM7v3tJCWV/qw7w+KeOlSHAhgF9RytFyifW6AF61hdT2ucrYhPq9hLs5JIryeupHV3qGk95dH9ow==} - - '@typescript-eslint/eslint-plugin@8.10.0': - resolution: {integrity: sha512-phuB3hoP7FFKbRXxjl+DRlQDuJqhpOnm5MmtROXyWi3uS/Xg2ZXqiQfcG2BJHiN4QKyzdOJi3NEn/qTnjUlkmQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 - eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/parser@8.10.0': - resolution: {integrity: sha512-E24l90SxuJhytWJ0pTQydFT46Nk0Z+bsLKo/L8rtQSL93rQ6byd1V/QbDpHUTdLPOMsBCcYXZweADNCfOCmOAg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/scope-manager@8.10.0': - resolution: {integrity: sha512-AgCaEjhfql9MDKjMUxWvH7HjLeBqMCBfIaBbzzIcBbQPZE7CPh1m6FF+L75NUMJFMLYhCywJXIDEMa3//1A0dw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@typescript-eslint/type-utils@8.10.0': - resolution: {integrity: sha512-PCpUOpyQSpxBn230yIcK+LeCQaXuxrgCm2Zk1S+PTIRJsEfU6nJ0TtwyH8pIwPK/vJoA+7TZtzyAJSGBz+s/dg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/types@8.10.0': - resolution: {integrity: sha512-k/E48uzsfJCRRbGLapdZgrX52csmWJ2rcowwPvOZ8lwPUv3xW6CcFeJAXgx4uJm+Ge4+a4tFOkdYvSpxhRhg1w==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@typescript-eslint/typescript-estree@8.10.0': - resolution: {integrity: sha512-3OE0nlcOHaMvQ8Xu5gAfME3/tWVDpb/HxtpUZ1WeOAksZ/h/gwrBzCklaGzwZT97/lBbbxJ16dMA98JMEngW4w==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/utils@8.10.0': - resolution: {integrity: sha512-Oq4uZ7JFr9d1ZunE/QKy5egcDRXT/FrS2z/nlxzPua2VHFtmMvFNDvpq1m/hq0ra+T52aUezfcjGRIB7vNJF9w==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - - '@typescript-eslint/visitor-keys@8.10.0': - resolution: {integrity: sha512-k8nekgqwr7FadWk548Lfph6V3r9OVqjzAIVskE7orMZR23cGJjAOVazsZSJW+ElyjfTM4wx/1g88Mi70DDtG9A==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} - - '@unhead/dom@1.11.10': - resolution: {integrity: sha512-nL1mdRzYVATZIYauK15zOI2YyM3YxCLfhbTqljEjDFJeiJUzTTi+a//5FHiUk84ewSucFnrwHNey/pEXFlyY1A==} - - '@unhead/schema@1.11.10': - resolution: {integrity: sha512-lXh7cm5XtFaw3gc+ZVXTSfIHXiBpAywbjtEiOsz5TR4GxOjj2rtfOAl4C3Difk1yupP6L2otYmOZdn/i8EXSJg==} - - '@unhead/shared@1.11.10': - resolution: {integrity: sha512-YQgZcOyo1id7drUeDPGn0R83pirvIcV+Car3/m7ZfCLL1Syab6uXmRckVRd69yVbUL4eirIm9IzzmvzM/OuGuw==} - - '@unhead/ssr@1.11.10': - resolution: {integrity: sha512-tj5zeJtCbSktNNqsdL+6h6OIY7dYO+2HSiC1VbofGYsoG7nDNXMypkrW/cTMqZVr5/gWhKaUgFQALjm28CflYg==} - - '@unhead/vue@1.11.10': - resolution: {integrity: sha512-v6ddp4YEQCNILhYrx37Yt0GKRIFeTrb3VSmTbjh+URT+ua1mwgmNFTfl2ZldtTtri3tEkwSG1/5wLRq20ma70g==} - peerDependencies: - vue: '>=2.7 || >=3' - - '@unocss/core@0.63.4': - resolution: {integrity: sha512-VB4DJ5DsRWpX64si5tWYRXf1n5UkYQqe2s1V22qFiWmXa7Ec+Vf9s3cxWZmoWFC5P9RQiwM9kAqxdg1G+elVkQ==} - - '@unocss/extractor-arbitrary-variants@0.63.4': - resolution: {integrity: sha512-gI/+2Nv+cH/ZoOc/4X7RLD9CuBXH51jfwGJ1xRveS7tj+EBs8VshP7Vhbn6Jyp69E00wt4hyzjviDoGqcIA8bA==} - - '@unocss/preset-mini@0.63.4': - resolution: {integrity: sha512-sim1/uy/XaVzdnMdepXdbdacXF5QNkPDnl4PYBWTyGuT5yKFpuipWpJDS5zZH5W6PYzKdcDA3YiaJ0S5CiUWpQ==} - - '@unocss/preset-wind@0.63.4': - resolution: {integrity: sha512-8fTUp6ZxH9YiScz4nZ1tRqprayrlQSfguzkjxDvOrwazfNcmxvHSZfC9dtpEmY+QssM1zHH0mmWmWgQYwU9Zdw==} - - '@unocss/rule-utils@0.63.4': - resolution: {integrity: sha512-7yRWF881ymxnMcCJSiI/1kMI8uwRqRi3l5XnV+JSGjjF2fDr1POUQjSLaA4s7ZfdEgmjagdLK3F5xqkfMMECNA==} - engines: {node: '>=14'} - - '@vercel/nft@0.26.5': - resolution: {integrity: sha512-NHxohEqad6Ra/r4lGknO52uc/GrWILXAMs1BB4401GTqww0fw1bAqzpG1XHuDO+dprg4GvsD9ZLLSsdo78p9hQ==} - engines: {node: '>=16'} - hasBin: true - - '@vitejs/plugin-vue-jsx@4.0.1': - resolution: {integrity: sha512-7mg9HFGnFHMEwCdB6AY83cVK4A6sCqnrjFYF4WIlebYAQVVJ/sC/CiTruVdrRlhrFoeZ8rlMxY9wYpPTIRhhAg==} - engines: {node: ^18.0.0 || >=20.0.0} - peerDependencies: - vite: ^5.0.0 - vue: ^3.0.0 - - '@vitejs/plugin-vue@5.1.4': - resolution: {integrity: sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==} - engines: {node: ^18.0.0 || >=20.0.0} - peerDependencies: - vite: ^5.0.0 - vue: ^3.2.25 - - '@volar/language-core@2.4.6': - resolution: {integrity: sha512-FxUfxaB8sCqvY46YjyAAV6c3mMIq/NWQMVvJ+uS4yxr1KzOvyg61gAuOnNvgCvO4TZ7HcLExBEsWcDu4+K4E8A==} - - '@volar/source-map@2.4.6': - resolution: {integrity: sha512-Nsh7UW2ruK+uURIPzjJgF0YRGP5CX9nQHypA2OMqdM2FKy7rh+uv3XgPnWPw30JADbKvZ5HuBzG4gSbVDYVtiw==} - - '@volar/typescript@2.4.6': - resolution: {integrity: sha512-NMIrA7y5OOqddL9VtngPWYmdQU03htNKFtAYidbYfWA0TOhyGVd9tfcP4TsLWQ+RBWDZCbBqsr8xzU0ZOxYTCQ==} - - '@voxpelli/config-array-find-files@1.2.1': - resolution: {integrity: sha512-mRqVGLcK+yU+fQyaHAL9Xbhw633spi+VGurX1+gwSiZS8SzX63WzOmGi3qXO7mn4cozJcExyzIC5WmbUFJWQOw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - '@eslint/config-array': '>=0.16.0' - - '@vue-macros/common@1.15.0': - resolution: {integrity: sha512-yg5VqW7+HRfJGimdKvFYzx8zorHUYo0hzPwuraoC1DWa7HHazbTMoVsHDvk3JHa1SGfSL87fRnzmlvgjEHhszA==} - engines: {node: '>=16.14.0'} - peerDependencies: - vue: ^2.7.0 || ^3.2.25 - peerDependenciesMeta: - vue: - optional: true - - '@vue/babel-helper-vue-transform-on@1.2.5': - resolution: {integrity: sha512-lOz4t39ZdmU4DJAa2hwPYmKc8EsuGa2U0L9KaZaOJUt0UwQNjNA3AZTq6uEivhOKhhG1Wvy96SvYBoFmCg3uuw==} - - '@vue/babel-plugin-jsx@1.2.5': - resolution: {integrity: sha512-zTrNmOd4939H9KsRIGmmzn3q2zvv1mjxkYZHgqHZgDrXz5B1Q3WyGEjO2f+JrmKghvl1JIRcvo63LgM1kH5zFg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - peerDependenciesMeta: - '@babel/core': - optional: true - - '@vue/babel-plugin-resolve-type@1.2.5': - resolution: {integrity: sha512-U/ibkQrf5sx0XXRnUZD1mo5F7PkpKyTbfXM3a3rC4YnUz6crHEz9Jg09jzzL6QYlXNto/9CePdOg/c87O4Nlfg==} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@vue/compiler-core@3.5.12': - resolution: {integrity: sha512-ISyBTRMmMYagUxhcpyEH0hpXRd/KqDU4ymofPgl2XAkY9ZhQ+h0ovEZJIiPop13UmR/54oA2cgMDjgroRelaEw==} - - '@vue/compiler-dom@3.5.12': - resolution: {integrity: sha512-9G6PbJ03uwxLHKQ3P42cMTi85lDRvGLB2rSGOiQqtXELat6uI4n8cNz9yjfVHRPIu+MsK6TE418Giruvgptckg==} - - '@vue/compiler-sfc@3.5.12': - resolution: {integrity: sha512-2k973OGo2JuAa5+ZlekuQJtitI5CgLMOwgl94BzMCsKZCX/xiqzJYzapl4opFogKHqwJk34vfsaKpfEhd1k5nw==} - - '@vue/compiler-ssr@3.5.12': - resolution: {integrity: sha512-eLwc7v6bfGBSM7wZOGPmRavSWzNFF6+PdRhE+VFJhNCgHiF8AM7ccoqcv5kBXA2eWUfigD7byekvf/JsOfKvPA==} - - '@vue/compiler-vue2@2.7.16': - resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} - - '@vue/devtools-api@6.6.4': - resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} - - '@vue/devtools-core@7.4.4': - resolution: {integrity: sha512-DLxgA3DfeADkRzhAfm3G2Rw/cWxub64SdP5b+s5dwL30+whOGj+QNhmyFpwZ8ZTrHDFRIPj0RqNzJ8IRR1pz7w==} - peerDependencies: - vue: ^3.0.0 - - '@vue/devtools-kit@7.4.4': - resolution: {integrity: sha512-awK/4NfsUG0nQ7qnTM37m7ZkEUMREyPh8taFCX+uQYps/MTFEum0AD05VeGDRMXwWvMmGIcWX9xp8ZiBddY0jw==} - - '@vue/devtools-shared@7.5.2': - resolution: {integrity: sha512-+zmcixnD6TAo+zwm30YuwZckhL9iIi4u+gFwbq9C8zpm3SMndTlEYZtNhAHUhOXB+bCkzyunxw80KQ/T0trF4w==} - - '@vue/language-core@2.1.6': - resolution: {integrity: sha512-MW569cSky9R/ooKMh6xa2g1D0AtRKbL56k83dzus/bx//RDJk24RHWkMzbAlXjMdDNyxAaagKPRquBIxkxlCkg==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@vue/reactivity@3.5.12': - resolution: {integrity: sha512-UzaN3Da7xnJXdz4Okb/BGbAaomRHc3RdoWqTzlvd9+WBR5m3J39J1fGcHes7U3za0ruYn/iYy/a1euhMEHvTAg==} - - '@vue/runtime-core@3.5.12': - resolution: {integrity: sha512-hrMUYV6tpocr3TL3Ad8DqxOdpDe4zuQY4HPY3X/VRh+L2myQO8MFXPAMarIOSGNu0bFAjh1yBkMPXZBqCk62Uw==} - - '@vue/runtime-dom@3.5.12': - resolution: {integrity: sha512-q8VFxR9A2MRfBr6/55Q3umyoN7ya836FzRXajPB6/Vvuv0zOPL+qltd9rIMzG/DbRLAIlREmnLsplEF/kotXKA==} - - '@vue/server-renderer@3.5.12': - resolution: {integrity: sha512-I3QoeDDeEPZm8yR28JtY+rk880Oqmj43hreIBVTicisFTx/Dl7JpG72g/X7YF8hnQD3IFhkky5i2bPonwrTVPg==} - peerDependencies: - vue: 3.5.12 - - '@vue/shared@3.5.12': - resolution: {integrity: sha512-L2RPSAwUFbgZH20etwrXyVyCBu9OxRSi8T/38QsvnkJyvq2LufW2lDCOzm7t/U9C1mkhJGWYfCuFBCmIuNivrg==} - - '@vueuse/core@11.1.0': - resolution: {integrity: sha512-P6dk79QYA6sKQnghrUz/1tHi0n9mrb/iO1WTMk/ElLmTyNqgDeSZ3wcDf6fRBGzRJbeG1dxzEOvLENMjr+E3fg==} - - '@vueuse/head@2.0.0': - resolution: {integrity: sha512-ykdOxTGs95xjD4WXE4na/umxZea2Itl0GWBILas+O4oqS7eXIods38INvk3XkJKjqMdWPcpCyLX/DioLQxU1KA==} - peerDependencies: - vue: '>=2.7 || >=3' - - '@vueuse/integrations@11.1.0': - resolution: {integrity: sha512-O2ZgrAGPy0qAjpoI2YR3egNgyEqwG85fxfwmA9BshRIGjV4G6yu6CfOPpMHAOoCD+UfsIl7Vb1bXJ6ifrHYDDA==} - peerDependencies: - async-validator: ^4 - axios: ^1 - change-case: ^5 - drauu: ^0.4 - focus-trap: ^7 - fuse.js: ^7 - idb-keyval: ^6 - jwt-decode: ^4 - nprogress: ^0.2 - qrcode: ^1.5 - sortablejs: ^1 - universal-cookie: ^7 - peerDependenciesMeta: - async-validator: - optional: true - axios: - optional: true - change-case: - optional: true - drauu: - optional: true - focus-trap: - optional: true - fuse.js: - optional: true - idb-keyval: - optional: true - jwt-decode: - optional: true - nprogress: - optional: true - qrcode: - optional: true - sortablejs: - optional: true - universal-cookie: - optional: true - - '@vueuse/math@11.1.0': - resolution: {integrity: sha512-pnjB9WBatF5RHHRbMo2P1w/e5m+r0QQJtGcA1cZGrg5yp1itzixLpMZHEmXVWelRTc0Dfn5uyn/sYmBimU1BoA==} - - '@vueuse/metadata@11.1.0': - resolution: {integrity: sha512-l9Q502TBTaPYGanl1G+hPgd3QX5s4CGnpXriVBR5fEZ/goI6fvDaVmIl3Td8oKFurOxTmbXvBPSsgrd6eu6HYg==} - - '@vueuse/nuxt@11.1.0': - resolution: {integrity: sha512-ZPYigcqgPPe9vk9nBHLF8p0zshX8qvWV/ox1Y4GdV4k2flPiw7+2THNTpU2NZDBXSOXlhB2sao+paGCsvJm/Qw==} - peerDependencies: - nuxt: ^3.0.0 - - '@vueuse/shared@11.1.0': - resolution: {integrity: sha512-YUtIpY122q7osj+zsNMFAfMTubGz0sn5QzE5gPzAIiCmtt2ha3uQUY1+JPyL4gRCTsLPX82Y9brNbo/aqlA91w==} - - abbrev@1.1.1: - resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} - - abort-controller@3.0.0: - resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} - engines: {node: '>=6.5'} - - accepts@1.3.8: - resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==} - engines: {node: '>= 0.6'} - - acorn-import-attributes@1.9.5: - resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==} - peerDependencies: - acorn: ^8 - - acorn-jsx@5.3.2: - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - - acorn@8.12.1: - resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} - engines: {node: '>=0.4.0'} - hasBin: true - - acorn@8.13.0: - resolution: {integrity: sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w==} - engines: {node: '>=0.4.0'} - hasBin: true - - agent-base@6.0.2: - resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} - engines: {node: '>= 6.0.0'} - - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - - ansi-colors@4.1.3: - resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} - engines: {node: '>=6'} - - ansi-escapes@4.3.2: - resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} - engines: {node: '>=8'} - - ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - - ansi-regex@6.1.0: - resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} - engines: {node: '>=12'} - - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - - ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} - - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - - anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} - - aproba@2.0.0: - resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} - - archiver-utils@5.0.2: - resolution: {integrity: sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA==} - engines: {node: '>= 14'} - - archiver@7.0.1: - resolution: {integrity: sha512-ZcbTaIqJOfCc03QwD468Unz/5Ir8ATtvAHsK+FdXbDIbGfihqh9mrvdcYunQzqn4HrvWWaFyaxJhGZagaJJpPQ==} - engines: {node: '>= 14'} - - are-docs-informative@0.0.2: - resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==} - engines: {node: '>=14'} - - are-we-there-yet@2.0.0: - resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==} - engines: {node: '>=10'} - deprecated: This package is no longer supported. - - arg@5.0.2: - resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} - - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - ast-kit@1.3.0: - resolution: {integrity: sha512-ORycPY6qYSrAGMnSk1tlqy/Y0rFGk/WIYP/H6io0A+jXK2Jp3Il7h8vjfwaLvZUwanjiLwBeE5h3A9M+eQqeNw==} - engines: {node: '>=16.14.0'} - - ast-walker-scope@0.6.2: - resolution: {integrity: sha512-1UWOyC50xI3QZkRuDj6PqDtpm1oHWtYs+NQGwqL/2R11eN3Q81PHAHPM0SWW3BNQm53UDwS//Jv8L4CCVLM1bQ==} - engines: {node: '>=16.14.0'} - - async-sema@3.1.1: - resolution: {integrity: sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==} - - async@2.6.4: - resolution: {integrity: sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==} - - async@3.2.6: - resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==} - - at-least-node@1.0.0: - resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==} - engines: {node: '>= 4.0.0'} - - autoprefixer@10.4.20: - resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: ^8.1.0 - - b4a@1.6.7: - resolution: {integrity: sha512-OnAYlL5b7LEkALw87fUVafQw5rVR9RjwGd4KUwNQ6DrrNmaVaUCgLipfVlzrPQ4tWOR9P0IXGNOx50jYCCdSJg==} - - bail@2.0.2: - resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==} - - balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - - bare-events@2.5.0: - resolution: {integrity: sha512-/E8dDe9dsbLyh2qrZ64PEPadOQ0F4gbl1sUJOrmph7xOiIxfY8vwab/4bFLh4Y88/Hk/ujKcrQKc+ps0mv873A==} - - bare-fs@2.3.5: - resolution: {integrity: sha512-SlE9eTxifPDJrT6YgemQ1WGFleevzwY+XAP1Xqgl56HtcrisC2CHCZ2tq6dBpcH2TnNxwUEUGhweo+lrQtYuiw==} - - bare-os@2.4.4: - resolution: {integrity: sha512-z3UiI2yi1mK0sXeRdc4O1Kk8aOa/e+FNWZcTiPB/dfTWyLypuE99LibgRaQki914Jq//yAWylcAt+mknKdixRQ==} - - bare-path@2.1.3: - resolution: {integrity: sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==} - - bare-stream@2.3.1: - resolution: {integrity: sha512-Vm8kAeOcfzHPTH8sq0tHBnUqYrkXdroaBVVylqFT4cF5wnMfKEIxxy2jIGu2zKVNl9P8MAP9XBWwXJ9N2+jfEw==} - - base64-js@0.0.8: - resolution: {integrity: sha512-3XSA2cR/h/73EzlXXdU6YNycmYI7+kicTxks4eJg2g39biHR84slg2+des+p7iHYhbRg/udIS4TD53WabcOUkw==} - engines: {node: '>= 0.4'} - - base64-js@1.5.1: - resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - - binary-extensions@2.3.0: - resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} - engines: {node: '>=8'} - - bindings@1.5.0: - resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==} - - birpc@0.2.19: - resolution: {integrity: sha512-5WeXXAvTmitV1RqJFppT5QtUiz2p1mRSYU000Jkft5ZUCLJIk4uQriYNO50HknxKwM6jd8utNc66K1qGIwwWBQ==} - - bl@4.1.0: - resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} - - blob-to-buffer@1.2.9: - resolution: {integrity: sha512-BF033y5fN6OCofD3vgHmNtwZWRcq9NLyyxyILx9hfMy1sXYy4ojFl765hJ2lP0YaN2fuxPaLO2Vzzoxy0FLFFA==} - - boolbase@1.0.0: - resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} - - brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} - - brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} - - braces@3.0.3: - resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} - engines: {node: '>=8'} - - brotli@1.3.3: - resolution: {integrity: sha512-oTKjJdShmDuGW94SyyaoQvAjf30dZaHnjJ8uAF+u2/vGJkJbJPJAT1gDiOJP5v1Zb6f9KEyW/1HpuaWIXtGHPg==} - - browserslist@4.24.0: - resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - - buffer-crc32@1.0.0: - resolution: {integrity: sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w==} - engines: {node: '>=8.0.0'} - - buffer-from@1.1.2: - resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - - buffer@5.7.1: - resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} - - buffer@6.0.3: - resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} - - builtin-modules@3.3.0: - resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} - engines: {node: '>=6'} - - bundle-name@4.1.0: - resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} - engines: {node: '>=18'} - - bundle-require@5.0.0: - resolution: {integrity: sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - peerDependencies: - esbuild: '>=0.18' - - c12@1.11.2: - resolution: {integrity: sha512-oBs8a4uvSDO9dm8b7OCFW7+dgtVrwmwnrVXYzLm43ta7ep2jCn/0MhoUFygIWtxhyy6+/MG7/agvpY0U1Iemew==} - peerDependencies: - magicast: ^0.3.4 - peerDependenciesMeta: - magicast: - optional: true - - cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} - - cache-content-type@1.0.1: - resolution: {integrity: sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==} - engines: {node: '>= 6.0.0'} - - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - camelcase-css@2.0.1: - resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==} - engines: {node: '>= 6'} - - camelize@1.0.1: - resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} - - caniuse-api@3.0.0: - resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - - caniuse-lite@1.0.30001669: - resolution: {integrity: sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==} - - ccount@2.0.1: - resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} - - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - - chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - - chalk@5.3.0: - resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - - changelogen@0.5.7: - resolution: {integrity: sha512-cTZXBcJMl3pudE40WENOakXkcVtrbBpbkmSkM20NdRiUqa4+VYRdXdEsgQ0BNQ6JBE2YymTNWtPKVF7UCTN5+g==} - hasBin: true - - char-regex@1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} - - character-entities-html4@2.1.0: - resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==} - - character-entities-legacy@3.0.0: - resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==} - - character-entities@2.0.2: - resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==} - - character-reference-invalid@2.0.1: - resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} - - chokidar@3.6.0: - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} - engines: {node: '>= 8.10.0'} - - chokidar@4.0.1: - resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} - engines: {node: '>= 14.16.0'} - - chownr@1.1.4: - resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} - - chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - - chrome-launcher@1.1.2: - resolution: {integrity: sha512-YclTJey34KUm5jB1aEJCq807bSievi7Nb/TU4Gu504fUYi3jw3KCIaH6L7nFWQhdEgH3V+wCh+kKD1P5cXnfxw==} - engines: {node: '>=12.13.0'} - hasBin: true - - ci-info@4.0.0: - resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} - engines: {node: '>=8'} - - citty@0.1.6: - resolution: {integrity: sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==} - - clean-regexp@1.0.0: - resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==} - engines: {node: '>=4'} - - clear@0.1.0: - resolution: {integrity: sha512-qMjRnoL+JDPJHeLePZJuao6+8orzHMGP04A8CdwCNsKhRbOnKRjefxONR7bwILT3MHecxKBjHkKL/tkZ8r4Uzw==} - - clipboardy@4.0.0: - resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==} - engines: {node: '>=18'} - - cliui@8.0.1: - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} - engines: {node: '>=12'} - - clone@2.1.2: - resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} - engines: {node: '>=0.8'} - - cluster-key-slot@1.1.2: - resolution: {integrity: sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==} - engines: {node: '>=0.10.0'} - - co@4.6.0: - resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==} - engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} - - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - - color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} - - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - - color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - - color-string@1.9.1: - resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} - - color-support@1.1.3: - resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} - hasBin: true - - color@4.2.3: - resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} - engines: {node: '>=12.5.0'} - - colord@2.9.3: - resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==} - - colorette@2.0.20: - resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} - - comma-separated-tokens@2.0.3: - resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} - - commander@2.20.3: - resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} - - commander@4.1.1: - resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} - engines: {node: '>= 6'} - - commander@6.2.1: - resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} - engines: {node: '>= 6'} - - commander@7.2.0: - resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} - engines: {node: '>= 10'} - - commander@8.3.0: - resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} - engines: {node: '>= 12'} - - comment-parser@1.4.1: - resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==} - engines: {node: '>= 12.0.0'} - - commondir@1.0.1: - resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} - - compatx@0.1.8: - resolution: {integrity: sha512-jcbsEAR81Bt5s1qOFymBufmCbXCXbk0Ql+K5ouj6gCyx2yHlu6AgmGIi9HxfKixpUDO5bCFJUHQ5uM6ecbTebw==} - - compress-commons@6.0.2: - resolution: {integrity: sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg==} - engines: {node: '>= 14'} - - computeds@0.0.1: - resolution: {integrity: sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==} - - concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - - confbox@0.1.8: - resolution: {integrity: sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==} - - consola@3.2.3: - resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} - engines: {node: ^14.18.0 || >=16.10.0} - - console-control-strings@1.1.0: - resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} - - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - - content-type@1.0.5: - resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==} - engines: {node: '>= 0.6'} - - convert-gitmoji@0.1.5: - resolution: {integrity: sha512-4wqOafJdk2tqZC++cjcbGcaJ13BZ3kwldf06PTiAQRAB76Z1KJwZNL1SaRZMi2w1FM9RYTgZ6QErS8NUl/GBmQ==} - - convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - - cookie-es@1.2.2: - resolution: {integrity: sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==} - - cookies@0.9.1: - resolution: {integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==} - engines: {node: '>= 0.8'} - - copy-anything@3.0.5: - resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==} - engines: {node: '>=12.13'} - - core-js-compat@3.38.1: - resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==} - - core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - - crc-32@1.2.2: - resolution: {integrity: sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==} - engines: {node: '>=0.8'} - hasBin: true - - crc32-stream@6.0.0: - resolution: {integrity: sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g==} - engines: {node: '>= 14'} - - create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - - croner@8.1.2: - resolution: {integrity: sha512-ypfPFcAXHuAZRCzo3vJL6ltENzniTjwe/qsLleH1V2/7SRDjgvRQyrLmumFTLmjFax4IuSxfGXEn79fozXcJog==} - engines: {node: '>=18.0'} - - cronstrue@2.50.0: - resolution: {integrity: sha512-ULYhWIonJzlScCCQrPUG5uMXzXxSixty4djud9SS37DoNxDdkeRocxzHuAo4ImRBUK+mAuU5X9TSwEDccnnuPg==} - hasBin: true - - cross-fetch@3.1.8: - resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==} - - cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} - - crossws@0.2.4: - resolution: {integrity: sha512-DAxroI2uSOgUKLz00NX6A8U/8EE3SZHmIND+10jkVSaypvyt57J5JEOxAQOL6lQxyzi/wZbTIwssU1uy69h5Vg==} - peerDependencies: - uWebSockets.js: '*' - peerDependenciesMeta: - uWebSockets.js: - optional: true - - crossws@0.3.1: - resolution: {integrity: sha512-HsZgeVYaG+b5zA+9PbIPGq4+J/CJynJuearykPsXx4V/eMhyQ5EDVg3Ak2FBZtVXCiOLu/U7IiwDHTr9MA+IKw==} - - css-background-parser@0.1.0: - resolution: {integrity: sha512-2EZLisiZQ+7m4wwur/qiYJRniHX4K5Tc9w93MT3AS0WS1u5kaZ4FKXlOTBhOjc+CgEgPiGY+fX1yWD8UwpEqUA==} - - css-box-shadow@1.0.0-3: - resolution: {integrity: sha512-9jaqR6e7Ohds+aWwmhe6wILJ99xYQbfmK9QQB9CcMjDbTxPZjwEmUQpU91OG05Xgm8BahT5fW+svbsQGjS/zPg==} - - css-color-keywords@1.0.0: - resolution: {integrity: sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==} - engines: {node: '>=4'} - - css-declaration-sorter@7.2.0: - resolution: {integrity: sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==} - engines: {node: ^14 || ^16 || >=18} - peerDependencies: - postcss: ^8.0.9 - - css-gradient-parser@0.0.16: - resolution: {integrity: sha512-3O5QdqgFRUbXvK1x5INf1YkBz1UKSWqrd63vWsum8MNHDBYD5urm3QtxZbKU259OrEXNM26lP/MPY3d1IGkBgA==} - engines: {node: '>=16'} - - css-select@5.1.0: - resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==} - - css-to-react-native@3.2.0: - resolution: {integrity: sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==} - - css-tree@2.2.1: - resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} - - css-tree@2.3.1: - resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} - - css-tree@3.0.0: - resolution: {integrity: sha512-o88DVQ6GzsABn1+6+zo2ct801dBO5OASVyxbbvA2W20ue2puSh/VOuqUj90eUeMSX/xqGqBmOKiRQN7tJOuBXw==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} - - css-what@6.1.0: - resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} - engines: {node: '>= 6'} - - cssesc@3.0.0: - resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} - engines: {node: '>=4'} - hasBin: true - - cssfilter@0.0.10: - resolution: {integrity: sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==} - - cssnano-preset-default@7.0.6: - resolution: {integrity: sha512-ZzrgYupYxEvdGGuqL+JKOY70s7+saoNlHSCK/OGn1vB2pQK8KSET8jvenzItcY+kA7NoWvfbb/YhlzuzNKjOhQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - cssnano-utils@5.0.0: - resolution: {integrity: sha512-Uij0Xdxc24L6SirFr25MlwC2rCFX6scyUmuKpzI+JQ7cyqDEwD42fJ0xfB3yLfOnRDU5LKGgjQ9FA6LYh76GWQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - cssnano@7.0.6: - resolution: {integrity: sha512-54woqx8SCbp8HwvNZYn68ZFAepuouZW4lTwiMVnBErM3VkO7/Sd4oTOt3Zz3bPx3kxQ36aISppyXj2Md4lg8bw==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - csso@5.0.5: - resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} - engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} - - csstype@3.1.3: - resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} - - db0@0.1.4: - resolution: {integrity: sha512-Ft6eCwONYxlwLjBXSJxw0t0RYtA5gW9mq8JfBXn9TtC0nDPlqePAhpv9v4g9aONBi6JI1OXHTKKkUYGd+BOrCA==} - peerDependencies: - '@libsql/client': ^0.5.2 - better-sqlite3: ^9.4.3 - drizzle-orm: ^0.29.4 - peerDependenciesMeta: - '@libsql/client': - optional: true - better-sqlite3: - optional: true - drizzle-orm: - optional: true - - de-indent@1.0.2: - resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} - - debug@2.6.9: - resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@4.3.7: - resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - decode-named-character-reference@1.0.2: - resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} - - decompress-response@6.0.0: - resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} - engines: {node: '>=10'} - - deep-equal@1.0.1: - resolution: {integrity: sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==} - - deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - - deep-is@0.1.4: - resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - - deepmerge@4.3.1: - resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} - engines: {node: '>=0.10.0'} - - default-browser-id@5.0.0: - resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==} - engines: {node: '>=18'} - - default-browser@5.2.1: - resolution: {integrity: sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==} - engines: {node: '>=18'} - - define-lazy-prop@2.0.0: - resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==} - engines: {node: '>=8'} - - define-lazy-prop@3.0.0: - resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==} - engines: {node: '>=12'} - - defu@6.1.4: - resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} - - delegates@1.0.0: - resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} - - denque@2.1.0: - resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} - engines: {node: '>=0.10'} - - depd@1.1.2: - resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} - engines: {node: '>= 0.6'} - - depd@2.0.0: - resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} - engines: {node: '>= 0.8'} - - dequal@2.0.3: - resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} - engines: {node: '>=6'} - - destr@2.0.3: - resolution: {integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==} - - destroy@1.2.0: - resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} - engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - - detab@3.0.2: - resolution: {integrity: sha512-7Bp16Bk8sk0Y6gdXiCtnpGbghn8atnTJdd/82aWvS5ESnlcNvgUc10U2NYS0PAiDSGjWiI8qs/Cv1b2uSGdQ8w==} - - detect-libc@1.0.3: - resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} - engines: {node: '>=0.10'} - hasBin: true - - detect-libc@2.0.3: - resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==} - engines: {node: '>=8'} - - devalue@5.1.1: - resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==} - - devlop@1.1.0: - resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==} - - dfa@1.2.0: - resolution: {integrity: sha512-ED3jP8saaweFTjeGX8HQPjeC1YYyZs98jGNZx6IiBvxW7JG5v492kamAQB3m2wop07CvU/RQmzcKr6bgcC5D/Q==} - - didyoumean@1.2.2: - resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} - - diff@7.0.0: - resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==} - engines: {node: '>=0.3.1'} - - dlv@1.1.3: - resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==} - - doctrine@3.0.0: - resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} - engines: {node: '>=6.0.0'} - - dom-serializer@2.0.0: - resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==} - - domelementtype@2.3.0: - resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} - - domhandler@5.0.3: - resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==} - engines: {node: '>= 4'} - - domutils@3.1.0: - resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==} - - dot-prop@8.0.2: - resolution: {integrity: sha512-xaBe6ZT4DHPkg0k4Ytbvn5xoxgpG0jOS1dYxSOwAHPuNLjP3/OzN0gH55SrLqpx8cBfSaVt91lXYkApjb+nYdQ==} - engines: {node: '>=16'} - - dotenv@16.4.5: - resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==} - engines: {node: '>=12'} - - duplexer@0.1.2: - resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} - - eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - - ee-first@1.1.1: - resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - - electron-to-chromium@1.5.41: - resolution: {integrity: sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==} - - emoji-regex@10.4.0: - resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} - - emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - - emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - - emojilib@2.4.0: - resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} - - emoticon@4.1.0: - resolution: {integrity: sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==} - - encodeurl@1.0.2: - resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} - engines: {node: '>= 0.8'} - - encodeurl@2.0.0: - resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} - engines: {node: '>= 0.8'} - - end-of-stream@1.4.4: - resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} - - engine.io-client@6.6.1: - resolution: {integrity: sha512-aYuoak7I+R83M/BBPIOs2to51BmFIpC1wZe6zZzMrT2llVsHy5cvcmdsJgP2Qz6smHu+sD9oexiSUAVd8OfBPw==} - - engine.io-parser@5.2.3: - resolution: {integrity: sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==} - engines: {node: '>=10.0.0'} - - enhanced-resolve@5.17.1: - resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==} - engines: {node: '>=10.13.0'} - - entities@4.5.0: - resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} - engines: {node: '>=0.12'} - - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - - error-stack-parser-es@0.1.5: - resolution: {integrity: sha512-xHku1X40RO+fO8yJ8Wh2f2rZWVjqyhb1zgq1yZ8aZRQkv6OOKhKWRUaht3eSCUbAOBaKIgM+ykwFLE+QUxgGeg==} - - errx@0.1.0: - resolution: {integrity: sha512-fZmsRiDNv07K6s2KkKFTiD2aIvECa7++PKyD5NC32tpRw46qZA3sOz+aM+/V9V0GDHxVTKLziveV4JhzBHDp9Q==} - - es-module-lexer@1.5.4: - resolution: {integrity: sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==} - - esbuild@0.20.2: - resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} - engines: {node: '>=12'} - hasBin: true - - esbuild@0.21.5: - resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} - engines: {node: '>=12'} - hasBin: true - - esbuild@0.23.1: - resolution: {integrity: sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==} - engines: {node: '>=18'} - hasBin: true - - esbuild@0.24.0: - resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} - engines: {node: '>=18'} - hasBin: true - - escalade@3.2.0: - resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} - engines: {node: '>=6'} - - escape-html@1.0.3: - resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - - escape-string-regexp@4.0.0: - resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} - engines: {node: '>=10'} - - escape-string-regexp@5.0.0: - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} - engines: {node: '>=12'} - - eslint-config-flat-gitignore@0.3.0: - resolution: {integrity: sha512-0Ndxo4qGhcewjTzw52TK06Mc00aDtHNTdeeW2JfONgDcLkRO/n/BteMRzNVpLQYxdCC/dFEilfM9fjjpGIJ9Og==} - peerDependencies: - eslint: ^9.5.0 - - eslint-flat-config-utils@0.4.0: - resolution: {integrity: sha512-kfd5kQZC+BMO0YwTol6zxjKX1zAsk8JfSAopbKjKqmENTJcew+yBejuvccAg37cvOrN0Mh+DVbeyznuNWEjt4A==} - - eslint-import-resolver-node@0.3.9: - resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} - - eslint-plugin-import-x@4.3.1: - resolution: {integrity: sha512-5TriWkXulDl486XnYYRgsL+VQoS/7mhN/2ci02iLCuL7gdhbiWxnsuL/NTcaKY9fpMgsMFjWZBtIGW7pb+RX0g==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - eslint: ^8.57.0 || ^9.0.0 - - eslint-plugin-jsdoc@50.4.3: - resolution: {integrity: sha512-uWtwFxGRv6B8sU63HZM5dAGDhgsatb+LONwmILZJhdRALLOkCX2HFZhdL/Kw2ls8SQMAVEfK+LmnEfxInRN8HA==} - engines: {node: '>=18'} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - - eslint-plugin-regexp@2.6.0: - resolution: {integrity: sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==} - engines: {node: ^18 || >=20} - peerDependencies: - eslint: '>=8.44.0' - - eslint-plugin-unicorn@56.0.0: - resolution: {integrity: sha512-aXpddVz/PQMmd69uxO98PA4iidiVNvA0xOtbpUoz1WhBd4RxOQQYqN618v68drY0hmy5uU2jy1bheKEVWBjlPw==} - engines: {node: '>=18.18'} - peerDependencies: - eslint: '>=8.56.0' - - eslint-plugin-vue@9.29.1: - resolution: {integrity: sha512-MH/MbVae4HV/tM8gKAVWMPJbYgW04CK7SuzYRrlNERpxbO0P3+Zdsa2oAcFBW6xNu7W6lIkGOsFAMCRTYmrlWQ==} - engines: {node: ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.2.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 - - eslint-scope@7.2.2: - resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-scope@8.1.0: - resolution: {integrity: sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - eslint-typegen@0.3.2: - resolution: {integrity: sha512-YD/flDDDYoBszomo6wVAJ01HcEWTLfOb04+Mwir8/oR66t2bnajw+qUI6JfBoBQO3HbebcCmEtgjKgWVB67ggQ==} - peerDependencies: - eslint: ^8.45.0 || ^9.0.0 - - eslint-visitor-keys@3.4.3: - resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - eslint-visitor-keys@4.1.0: - resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - eslint@9.13.0: - resolution: {integrity: sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - hasBin: true - peerDependencies: - jiti: '*' - peerDependenciesMeta: - jiti: - optional: true - - espree@10.2.0: - resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - espree@9.6.1: - resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - esquery@1.6.0: - resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} - engines: {node: '>=0.10'} - - esrecurse@4.3.0: - resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} - engines: {node: '>=4.0'} - - estraverse@5.3.0: - resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} - engines: {node: '>=4.0'} - - estree-walker@2.0.2: - resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} - - estree-walker@3.0.3: - resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} - - esutils@2.0.3: - resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} - engines: {node: '>=0.10.0'} - - etag@1.8.1: - resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} - engines: {node: '>= 0.6'} - - event-target-shim@5.0.1: - resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} - engines: {node: '>=6'} - - events@3.3.0: - resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} - engines: {node: '>=0.8.x'} - - execa@7.2.0: - resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} - engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} - - execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - - execa@9.4.1: - resolution: {integrity: sha512-5eo/BRqZm3GYce+1jqX/tJ7duA2AnE39i88fuedNFUV8XxGxUpF3aWkBRfbUcjV49gCkvS/pzc0YrCPhaIewdg==} - engines: {node: ^18.19.0 || >=20.5.0} - - expand-template@2.0.3: - resolution: {integrity: sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==} - engines: {node: '>=6'} - - extend@3.0.2: - resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==} - - externality@1.0.2: - resolution: {integrity: sha512-LyExtJWKxtgVzmgtEHyQtLFpw1KFhQphF9nTG8TpAIVkiI/xQ3FJh75tRFLYl4hkn7BNIIdLJInuDAavX35pMw==} - - fast-deep-equal@3.1.3: - resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} - - fast-fifo@1.3.2: - resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} - - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - - fast-json-stable-stringify@2.1.0: - resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - - fast-levenshtein@2.0.6: - resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} - - fast-npm-meta@0.2.2: - resolution: {integrity: sha512-E+fdxeaOQGo/CMWc9f4uHFfgUPJRAu7N3uB8GBvB3SDPAIWJK4GKyYhkAGFq+GYrcbKNfQIz5VVQyJnDuPPCrg==} - - fastq@1.17.1: - resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} - - fdir@6.4.2: - resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==} - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - - fflate@0.7.4: - resolution: {integrity: sha512-5u2V/CDW15QM1XbbgS+0DfPxVB+jUKhWEKuuFuHncbk3tEEqzmoXL+2KyOFuKGqOnmdIy0/davWF1CkuwtibCw==} - - figures@6.1.0: - resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==} - engines: {node: '>=18'} - - file-entry-cache@8.0.0: - resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} - engines: {node: '>=16.0.0'} - - file-uri-to-path@1.0.0: - resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} - - fill-range@7.1.1: - resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} - engines: {node: '>=8'} - - find-up-simple@1.0.0: - resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==} - engines: {node: '>=18'} - - find-up@4.1.0: - resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} - engines: {node: '>=8'} - - find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} - - find-up@7.0.0: - resolution: {integrity: sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==} - engines: {node: '>=18'} - - flat-cache@4.0.1: - resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} - engines: {node: '>=16'} - - flat@6.0.1: - resolution: {integrity: sha512-/3FfIa8mbrg3xE7+wAhWeV+bd7L2Mof+xtZb5dRDKZ+wDvYJK4WDYeIOuOhre5Yv5aQObZrlbRmk3RTSiuQBtw==} - engines: {node: '>=18'} - hasBin: true - - flatted@3.3.1: - resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} - - fontaine@0.5.0: - resolution: {integrity: sha512-vPDSWKhVAfTx4hRKT777+N6Szh2pAosAuzLpbppZ6O3UdD/1m6OlHjNcC3vIbgkRTIcLjzySLHXzPeLO2rE8cA==} - - fontkit@2.0.4: - resolution: {integrity: sha512-syetQadaUEDNdxdugga9CpEYVaQIxOwk7GlwZWWZ19//qW4zE5bknOKeMBDYAASwnpaSHKJITRLMF9m1fp3s6g==} - - foreground-child@3.3.0: - resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==} - engines: {node: '>=14'} - - fraction.js@4.3.7: - resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - - fresh@0.5.2: - resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} - engines: {node: '>= 0.6'} - - fs-constants@1.0.0: - resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==} - - fs-extra@11.2.0: - resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} - engines: {node: '>=14.14'} - - fs-extra@9.1.0: - resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==} - engines: {node: '>=10'} - - fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} - - fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - - fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - - fuse.js@7.0.0: - resolution: {integrity: sha512-14F4hBIxqKvD4Zz/XjDc3y94mNZN6pRv3U13Udo0lNLCWRBUsrMv2xwcF/y/Z5sV6+FQW+/ow68cHpm4sunt8Q==} - engines: {node: '>=10'} - - gauge@3.0.2: - resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} - engines: {node: '>=10'} - deprecated: This package is no longer supported. - - gensync@1.0.0-beta.2: - resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} - engines: {node: '>=6.9.0'} - - get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - - get-port-please@3.1.2: - resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==} - - get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - - get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - - get-stream@9.0.1: - resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} - engines: {node: '>=18'} - - get-tsconfig@4.8.1: - resolution: {integrity: sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==} - - giget@1.2.3: - resolution: {integrity: sha512-8EHPljDvs7qKykr6uw8b+lqLiUc/vUg+KVTI0uND4s63TdsZM2Xus3mflvF0DDG9SiM4RlCkFGL+7aAjRmV7KA==} - hasBin: true - - git-config-path@2.0.0: - resolution: {integrity: sha512-qc8h1KIQbJpp+241id3GuAtkdyJ+IK+LIVtkiFTRKRrmddDzs3SI9CvP1QYmWBFvm1I/PWRwj//of8bgAc0ltA==} - engines: {node: '>=4'} - - git-up@7.0.0: - resolution: {integrity: sha512-ONdIrbBCFusq1Oy0sC71F5azx8bVkvtZtMJAsv+a6lz5YAmbNnLD6HAB4gptHZVLPR8S2/kVN6Gab7lryq5+lQ==} - - git-url-parse@15.0.0: - resolution: {integrity: sha512-5reeBufLi+i4QD3ZFftcJs9jC26aULFLBU23FeKM/b1rI0K6ofIeAblmDVO7Ht22zTDE9+CkJ3ZVb0CgJmz3UQ==} - - github-from-package@0.0.0: - resolution: {integrity: sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==} - - github-slugger@2.0.0: - resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} - - glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} - - glob-parent@6.0.2: - resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} - engines: {node: '>=10.13.0'} - - glob@10.4.5: - resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} - hasBin: true - - glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - deprecated: Glob versions prior to v9 are no longer supported - - glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - deprecated: Glob versions prior to v9 are no longer supported - - global-directory@4.0.1: - resolution: {integrity: sha512-wHTUcDUoZ1H5/0iVqEudYW4/kAlN5cZ3j/bXn0Dpbizl9iaUVeWSHqiOjsgk6OW2bkLclbBjzewBz6weQ1zA2Q==} - engines: {node: '>=18'} - - globals@11.12.0: - resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} - engines: {node: '>=4'} - - globals@13.24.0: - resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} - engines: {node: '>=8'} - - globals@14.0.0: - resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} - engines: {node: '>=18'} - - globals@15.11.0: - resolution: {integrity: sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==} - engines: {node: '>=18'} - - globby@14.0.2: - resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} - engines: {node: '>=18'} - - graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - - graphemer@1.4.0: - resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - - gzip-size@7.0.0: - resolution: {integrity: sha512-O1Ld7Dr+nqPnmGpdhzLmMTQ4vAsD+rHwMm1NLUmoUFFymBOMKxCCrtDxqdBRYXdeEPEi3SyoR4TizJLQrnKBNA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - h3@1.13.0: - resolution: {integrity: sha512-vFEAu/yf8UMUcB4s43OaDaigcqpQd14yanmOsn+NcRX3/guSKncyE2rOYhq8RIchgJrPSs/QiIddnTTR1ddiAg==} - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - - has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} - engines: {node: '>= 0.4'} - - has-tostringtag@1.0.2: - resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} - engines: {node: '>= 0.4'} - - has-unicode@2.0.1: - resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} - - hash-sum@2.0.0: - resolution: {integrity: sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==} - - hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - - hast-util-from-parse5@8.0.1: - resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==} - - hast-util-heading-rank@3.0.0: - resolution: {integrity: sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==} - - hast-util-is-element@3.0.0: - resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==} - - hast-util-parse-selector@4.0.0: - resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==} - - hast-util-raw@9.0.4: - resolution: {integrity: sha512-LHE65TD2YiNsHD3YuXcKPHXPLuYh/gjp12mOfU8jxSrm1f/yJpsb0F/KKljS6U9LJoP0Ux+tCe8iJ2AsPzTdgA==} - - hast-util-to-html@9.0.3: - resolution: {integrity: sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==} - - hast-util-to-parse5@8.0.0: - resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==} - - hast-util-to-string@3.0.1: - resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==} - - hast-util-whitespace@3.0.0: - resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==} - - hastscript@8.0.0: - resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==} - - he@1.2.0: - resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==} - hasBin: true - - hex-rgb@4.3.0: - resolution: {integrity: sha512-Ox1pJVrDCyGHMG9CFg1tmrRUMRPRsAWYc/PinY0XzJU4K7y7vjNoLKIQ7BR5UJMCxNN8EM1MNDmHWA/B3aZUuw==} - engines: {node: '>=6'} - - hookable@5.5.3: - resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} - - hosted-git-info@2.8.9: - resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} - - html-tags@3.3.1: - resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==} - engines: {node: '>=8'} - - html-void-elements@3.0.0: - resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==} - - http-assert@1.5.0: - resolution: {integrity: sha512-uPpH7OKX4H25hBmU6G1jWNaqJGpTXxey+YOUizJUAgu0AjLUeC8D73hTrhvDS5D+GJN1DN1+hhc/eF/wpxtp0w==} - engines: {node: '>= 0.8'} - - http-errors@1.6.3: - resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==} - engines: {node: '>= 0.6'} - - http-errors@1.8.1: - resolution: {integrity: sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==} - engines: {node: '>= 0.6'} - - http-errors@2.0.0: - resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==} - engines: {node: '>= 0.8'} - - http-shutdown@1.2.2: - resolution: {integrity: sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==} - engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} - - https-proxy-agent@5.0.1: - resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} - engines: {node: '>= 6'} - - httpxy@0.1.5: - resolution: {integrity: sha512-hqLDO+rfststuyEUTWObQK6zHEEmZ/kaIP2/zclGGZn6X8h/ESTWg+WKecQ/e5k4nPswjzZD+q2VqZIbr15CoQ==} - - human-signals@4.3.1: - resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} - engines: {node: '>=14.18.0'} - - human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - - human-signals@8.0.0: - resolution: {integrity: sha512-/1/GPCpDUCCYwlERiYjxoczfP0zfvZMU/OWgQPMya9AbAE24vseigFdhAMObpc8Q4lc/kjutPfUddDYyAmejnA==} - engines: {node: '>=18.18.0'} - - ieee754@1.2.1: - resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} - - ignore@5.3.2: - resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} - engines: {node: '>= 4'} - - image-meta@0.2.1: - resolution: {integrity: sha512-K6acvFaelNxx8wc2VjbIzXKDVB0Khs0QT35U6NkGfTdCmjLNcO2945m7RFNR9/RPVFm48hq7QPzK8uGH18HCGw==} - - image-size@1.1.1: - resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==} - engines: {node: '>=16.x'} - hasBin: true - - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - - impound@0.1.0: - resolution: {integrity: sha512-F9nJgOsDc3tysjN74edE0vGPEQrU7DAje6g5nNAL5Jc9Tv4JW3mH7XMGne+EaadTniDXLeUrVR21opkNfWO1zQ==} - - imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - - indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - - inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} - deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. - - inherits@2.0.3: - resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==} - - inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - - ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - - ini@4.1.1: - resolution: {integrity: sha512-QQnnxNyfvmHFIsj7gkPcYymR8Jdw/o7mp5ZFihxn6h8Ci6fh3Dx4E1gPjpQEpIuPo9XVNY/ZUwh4BPMjGyL01g==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - - ioredis@5.4.1: - resolution: {integrity: sha512-2YZsvl7jopIa1gaePkeMtd9rAcSjOOjPtpcLlOeusyO+XH2SK5ZcT+UCrElPP+WVIInh2TzeI4XW9ENaSLVVHA==} - engines: {node: '>=12.22.0'} - - ipx@2.1.0: - resolution: {integrity: sha512-AVnPGXJ8L41vjd11Z4akIF2yd14636Klxul3tBySxHA6PKfCOQPxBDkCFK5zcWh0z/keR6toh1eg8qzdBVUgdA==} - hasBin: true - - iron-webcrypto@1.2.1: - resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==} - - is-absolute-url@4.0.1: - resolution: {integrity: sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - is-alphabetical@2.0.1: - resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==} - - is-alphanumerical@2.0.1: - resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==} - - is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - - is-arrayish@0.3.2: - resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - - is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} - - is-builtin-module@3.2.1: - resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} - engines: {node: '>=6'} - - is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} - engines: {node: '>= 0.4'} - - is-decimal@2.0.1: - resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==} - - is-docker@2.2.1: - resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==} - engines: {node: '>=8'} - hasBin: true - - is-docker@3.0.0: - resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - hasBin: true - - is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - - is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - - is-generator-function@1.0.10: - resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} - engines: {node: '>= 0.4'} - - is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} - - is-hexadecimal@2.0.1: - resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==} - - is-inside-container@1.0.0: - resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} - engines: {node: '>=14.16'} - hasBin: true - - is-installed-globally@1.0.0: - resolution: {integrity: sha512-K55T22lfpQ63N4KEN57jZUAaAYqYHEe8veb/TycJRk9DdSCLLcovXz/mL6mOnhQaZsQGwPhuFopdQIlqGSEjiQ==} - engines: {node: '>=18'} - - is-module@1.0.0: - resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} - - is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - - is-path-inside@4.0.0: - resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==} - engines: {node: '>=12'} - - is-plain-obj@4.1.0: - resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} - engines: {node: '>=12'} - - is-reference@1.2.1: - resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} - - is-ssh@1.4.0: - resolution: {integrity: sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==} - - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - - is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - is-stream@4.0.1: - resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==} - engines: {node: '>=18'} - - is-unicode-supported@2.1.0: - resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==} - engines: {node: '>=18'} - - is-what@4.1.16: - resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==} - engines: {node: '>=12.13'} - - is-wsl@2.2.0: - resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==} - engines: {node: '>=8'} - - is-wsl@3.1.0: - resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} - engines: {node: '>=16'} - - is64bit@2.0.0: - resolution: {integrity: sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==} - engines: {node: '>=18'} - - isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - - isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - - jackspeak@3.4.3: - resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - - jiti@1.21.6: - resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} - hasBin: true - - jiti@2.3.3: - resolution: {integrity: sha512-EX4oNDwcXSivPrw2qKH2LB5PoFxEvgtv2JgwW0bU858HoLQ+kutSvjLMUqBd0PeJYEinLWhoI9Ol0eYMqj/wNQ==} - hasBin: true - - js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - - js-tokens@9.0.0: - resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==} - - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - jsdoc-type-pratt-parser@4.1.0: - resolution: {integrity: sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==} - engines: {node: '>=12.0.0'} - - jsesc@0.5.0: - resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==} - hasBin: true - - jsesc@3.0.2: - resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==} - engines: {node: '>=6'} - hasBin: true - - json-buffer@3.0.1: - resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - - json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - - json-schema-to-typescript-lite@14.1.0: - resolution: {integrity: sha512-b8K6P3aiLgiYKYcHacgZKrwPXPyjekqRPV5vkNfBt0EoohcOSXEbcuGzgi6KQmsAhuy5Mh2KMxofXodRhMxURA==} - - json-schema-traverse@0.4.1: - resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} - - json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} - - json5@2.2.3: - resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} - engines: {node: '>=6'} - hasBin: true - - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - - keygrip@1.1.0: - resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==} - engines: {node: '>= 0.6'} - - keyv@4.5.4: - resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} - - kleur@3.0.3: - resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==} - engines: {node: '>=6'} - - klona@2.0.6: - resolution: {integrity: sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==} - engines: {node: '>= 8'} - - knitwork@1.1.0: - resolution: {integrity: sha512-oHnmiBUVHz1V+URE77PNot2lv3QiYU2zQf1JjOVkMt3YDKGbu8NAFr+c4mcNOhdsGrB/VpVbRwPwhiXrPhxQbw==} - - koa-compose@4.1.0: - resolution: {integrity: sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==} - - koa-convert@2.0.0: - resolution: {integrity: sha512-asOvN6bFlSnxewce2e/DK3p4tltyfC4VM7ZwuTuepI7dEQVcvpyFuBcEARu1+Hxg8DIwytce2n7jrZtRlPrARA==} - engines: {node: '>= 10'} - - koa-send@5.0.1: - resolution: {integrity: sha512-tmcyQ/wXXuxpDxyNXv5yNNkdAMdFRqwtegBXUaowiQzUKqJehttS0x2j0eOZDQAyloAth5w6wwBImnFzkUz3pQ==} - engines: {node: '>= 8'} - - koa-static@5.0.0: - resolution: {integrity: sha512-UqyYyH5YEXaJrf9S8E23GoJFQZXkBVJ9zYYMPGz919MSX1KuvAcycIuS0ci150HCoPf4XQVhQ84Qf8xRPWxFaQ==} - engines: {node: '>= 7.6.0'} - - koa@2.15.3: - resolution: {integrity: sha512-j/8tY9j5t+GVMLeioLaxweJiKUayFhlGqNTzf2ZGwL0ZCQijd2RLHK0SLW5Tsko8YyyqCZC2cojIb0/s62qTAg==} - engines: {node: ^4.8.4 || ^6.10.1 || ^7.10.1 || >= 8.1.4} - - kolorist@1.8.0: - resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} - - launch-editor@2.9.1: - resolution: {integrity: sha512-Gcnl4Bd+hRO9P9icCP/RVVT2o8SFlPXofuCxvA2SaZuH45whSvf5p8x5oih5ftLiVhEI4sp5xDY+R+b3zJBh5w==} - - lazystream@1.0.1: - resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==} - engines: {node: '>= 0.6.3'} - - levn@0.4.1: - resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} - engines: {node: '>= 0.8.0'} - - lighthouse-logger@2.0.1: - resolution: {integrity: sha512-ioBrW3s2i97noEmnXxmUq7cjIcVRjT5HBpAYy8zE11CxU9HqlWHHeRxfeN1tn8F7OEMVPIC9x1f8t3Z7US9ehQ==} - - lilconfig@2.1.0: - resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} - engines: {node: '>=10'} - - lilconfig@3.1.2: - resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} - engines: {node: '>=14'} - - linebreak@1.1.0: - resolution: {integrity: sha512-MHp03UImeVhB7XZtjd0E4n6+3xr5Dq/9xI/5FptGk5FrbDR3zagPa2DS6U8ks/3HjbKWG9Q1M2ufOzxV2qLYSQ==} - - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - listhen@1.9.0: - resolution: {integrity: sha512-I8oW2+QL5KJo8zXNWX046M134WchxsXC7SawLPvRQpogCbkyQIaFxPE89A2HiwR7vAK2Dm2ERBAmyjTYGYEpBg==} - hasBin: true - - load-tsconfig@0.2.5: - resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - local-pkg@0.5.0: - resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} - engines: {node: '>=14'} - - locate-path@5.0.0: - resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} - engines: {node: '>=8'} - - locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} - - locate-path@7.2.0: - resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - lodash.castarray@4.4.0: - resolution: {integrity: sha512-aVx8ztPv7/2ULbArGJ2Y42bG1mEQ5mGjpdvrbJcJFU3TbYybe+QlLS4pst9zV52ymy2in1KpFPiZnAOATxD4+Q==} - - lodash.defaults@4.2.0: - resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} - - lodash.isarguments@3.1.0: - resolution: {integrity: sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==} - - lodash.isplainobject@4.0.6: - resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} - - lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - - lodash.merge@4.6.2: - resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - - lodash.uniq@4.5.0: - resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} - - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - - longest-streak@3.1.0: - resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} - - lru-cache@10.4.3: - resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - - lru-cache@5.1.1: - resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - - magic-regexp@0.8.0: - resolution: {integrity: sha512-lOSLWdE156csDYwCTIGiAymOLN7Epu/TU5e/oAnISZfU6qP+pgjkE+xbVjVn3yLPKN8n1G2yIAYTAM5KRk6/ow==} - - magic-string-ast@0.6.2: - resolution: {integrity: sha512-oN3Bcd7ZVt+0VGEs7402qR/tjgjbM7kPlH/z7ufJnzTLVBzXJITRHOJiwMmmYMgZfdoWQsfQcY+iKlxiBppnMA==} - engines: {node: '>=16.14.0'} - - magic-string@0.30.12: - resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} - - magicast@0.3.5: - resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==} - - make-dir@3.1.0: - resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} - engines: {node: '>=8'} - - markdown-table@3.0.3: - resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==} - - marky@1.2.5: - resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==} - - mdast-util-find-and-replace@3.0.1: - resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==} - - mdast-util-from-markdown@2.0.1: - resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==} - - mdast-util-gfm-autolink-literal@2.0.1: - resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==} - - mdast-util-gfm-footnote@2.0.0: - resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==} - - mdast-util-gfm-strikethrough@2.0.0: - resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==} - - mdast-util-gfm-table@2.0.0: - resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==} - - mdast-util-gfm-task-list-item@2.0.0: - resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==} - - mdast-util-gfm@3.0.0: - resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==} - - mdast-util-phrasing@4.1.0: - resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==} - - mdast-util-to-hast@13.2.0: - resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==} - - mdast-util-to-markdown@2.1.0: - resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==} - - mdast-util-to-string@4.0.0: - resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==} - - mdn-data@2.0.28: - resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==} - - mdn-data@2.0.30: - resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==} - - mdn-data@2.10.0: - resolution: {integrity: sha512-qq7C3EtK3yJXMwz1zAab65pjl+UhohqMOctTgcqjLOWABqmwj+me02LSsCuEUxnst9X1lCBpoE0WArGKgdGDzw==} - - mdurl@2.0.0: - resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==} - - media-typer@0.3.0: - resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} - engines: {node: '>= 0.6'} - - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - methods@1.1.2: - resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} - engines: {node: '>= 0.6'} - - micromark-core-commonmark@2.0.1: - resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==} - - micromark-extension-gfm-autolink-literal@2.1.0: - resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==} - - micromark-extension-gfm-footnote@2.1.0: - resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==} - - micromark-extension-gfm-strikethrough@2.1.0: - resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==} - - micromark-extension-gfm-table@2.1.0: - resolution: {integrity: sha512-Ub2ncQv+fwD70/l4ou27b4YzfNaCJOvyX4HxXU15m7mpYY+rjuWzsLIPZHJL253Z643RpbcP1oeIJlQ/SKW67g==} - - micromark-extension-gfm-tagfilter@2.0.0: - resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==} - - micromark-extension-gfm-task-list-item@2.1.0: - resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==} - - micromark-extension-gfm@3.0.0: - resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==} - - micromark-factory-destination@2.0.0: - resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==} - - micromark-factory-label@2.0.0: - resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==} - - micromark-factory-space@2.0.0: - resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==} - - micromark-factory-title@2.0.0: - resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==} - - micromark-factory-whitespace@2.0.0: - resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==} - - micromark-util-character@2.1.0: - resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==} - - micromark-util-chunked@2.0.0: - resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==} - - micromark-util-classify-character@2.0.0: - resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==} - - micromark-util-combine-extensions@2.0.0: - resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==} - - micromark-util-decode-numeric-character-reference@2.0.1: - resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==} - - micromark-util-decode-string@2.0.0: - resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==} - - micromark-util-encode@2.0.0: - resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==} - - micromark-util-html-tag-name@2.0.0: - resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==} - - micromark-util-normalize-identifier@2.0.0: - resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==} - - micromark-util-resolve-all@2.0.0: - resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==} - - micromark-util-sanitize-uri@2.0.0: - resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==} - - micromark-util-subtokenize@2.0.1: - resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==} - - micromark-util-symbol@2.0.0: - resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==} - - micromark-util-types@2.0.0: - resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==} - - micromark@4.0.0: - resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==} - - micromatch@4.0.8: - resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} - engines: {node: '>=8.6'} - - mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - - mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} - - mime@1.6.0: - resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} - engines: {node: '>=4'} - hasBin: true - - mime@3.0.0: - resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} - engines: {node: '>=10.0.0'} - hasBin: true - - mime@4.0.4: - resolution: {integrity: sha512-v8yqInVjhXyqP6+Kw4fV3ZzeMRqEW6FotRsKXjRS5VMTNIuXsdRoAvklpoRgSqXm6o9VNH4/C0mgedko9DdLsQ==} - engines: {node: '>=16'} - hasBin: true - - mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - - mimic-response@3.1.0: - resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==} - engines: {node: '>=10'} - - min-indent@1.0.1: - resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} - engines: {node: '>=4'} - - mini-svg-data-uri@1.4.4: - resolution: {integrity: sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==} - hasBin: true - - minimatch@10.0.1: - resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} - engines: {node: 20 || >=22} - - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - - minimatch@9.0.5: - resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} - engines: {node: '>=16 || 14 >=14.17'} - - minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - - minipass@3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} - - minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} - - minipass@7.1.2: - resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} - engines: {node: '>=16 || 14 >=14.17'} - - minisearch@7.1.0: - resolution: {integrity: sha512-tv7c/uefWdEhcu6hvrfTihflgeEi2tN6VV7HJnCjK6VxM75QQJh4t9FwJCsA2EsRS8LCnu3W87CuGPWMocOLCA==} - - minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} - - mitt@3.0.1: - resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - - mkdirp-classic@0.5.3: - resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} - - mkdirp@0.5.6: - resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} - hasBin: true - - mkdirp@1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - - mlly@1.7.2: - resolution: {integrity: sha512-tN3dvVHYVz4DhSXinXIk7u9syPYaJvio118uomkovAtWBT+RdbP6Lfh/5Lvo519YMmwBafwlh20IPTXIStscpA==} - - mri@1.2.0: - resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} - engines: {node: '>=4'} - - mrmime@2.0.0: - resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} - engines: {node: '>=10'} - - ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - - ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - - muggle-string@0.4.1: - resolution: {integrity: sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==} - - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} - engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} - hasBin: true - - nanoid@5.0.7: - resolution: {integrity: sha512-oLxFY2gd2IqnjcYyOXD8XGCftpGtZP2AbHbOkthDkvRywH5ayNtPVy9YlOPcHckXzbLTCHpkb7FB+yuxKV13pQ==} - engines: {node: ^18 || >=20} - hasBin: true - - nanotar@0.1.1: - resolution: {integrity: sha512-AiJsGsSF3O0havL1BydvI4+wR76sKT+okKRwWIaK96cZUnXqH0uNBOsHlbwZq3+m2BR1VKqHDVudl3gO4mYjpQ==} - - napi-build-utils@1.0.2: - resolution: {integrity: sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==} - - natural-compare@1.4.0: - resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} - - negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - - nitropack@2.9.7: - resolution: {integrity: sha512-aKXvtNrWkOCMsQbsk4A0qQdBjrJ1ZcvwlTQevI/LAgLWLYc5L7Q/YiYxGLal4ITyNSlzir1Cm1D2ZxnYhmpMEw==} - engines: {node: ^16.11.0 || >=17.0.0} - hasBin: true - peerDependencies: - xml2js: ^0.6.2 - peerDependenciesMeta: - xml2js: - optional: true - - node-abi@3.71.0: - resolution: {integrity: sha512-SZ40vRiy/+wRTf21hxkkEjPJZpARzUMVcJoQse2EF8qkUWbbO2z7vd5oA/H6bVH6SZQ5STGcu0KRDS7biNRfxw==} - engines: {node: '>=10'} - - node-addon-api@6.1.0: - resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} - - node-addon-api@7.1.1: - resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==} - - node-emoji@2.1.3: - resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==} - engines: {node: '>=18'} - - node-fetch-native@1.6.4: - resolution: {integrity: sha512-IhOigYzAKHd244OC0JIMIUrjzctirCmPkaIfhDeGcEETWof5zKYUW7e7MYvChGWh/4CJeXEgsRyGzuF334rOOQ==} - - node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - - node-forge@1.3.1: - resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} - engines: {node: '>= 6.13.0'} - - node-gyp-build@4.8.2: - resolution: {integrity: sha512-IRUxE4BVsHWXkV/SFOut4qTlagw2aM8T5/vnTsmrHJvVoKueJHRc/JaFND7QDDc61kLYUJ6qlZM3sqTSyx2dTw==} - hasBin: true - - node-releases@2.0.18: - resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} - - nopt@5.0.0: - resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==} - engines: {node: '>=6'} - hasBin: true - - normalize-package-data@2.5.0: - resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} - - normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - - normalize-range@0.1.2: - resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==} - engines: {node: '>=0.10.0'} - - npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - - npm-run-path@5.3.0: - resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - npm-run-path@6.0.0: - resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==} - engines: {node: '>=18'} - - npmlog@5.0.1: - resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==} - deprecated: This package is no longer supported. - - nth-check@2.1.1: - resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - - nuxi@3.14.0: - resolution: {integrity: sha512-MhG4QR6D95jQxhnwKfdKXulZ8Yqy1nbpwbotbxY5IcabOzpEeTB8hYn2BFkmYdMUB0no81qpv2ldZmVCT9UsnQ==} - engines: {node: ^16.10.0 || >=18.0.0} - hasBin: true - - nuxt-component-meta@0.8.2: - resolution: {integrity: sha512-diMXSjBDlueIGy0Wb60vqKCwjT+ZorJGhcD/0xMhGOuyc971ccJgbQRZnwYoCTgMICo+0/+ZL2UyjAiYuHgHqw==} - hasBin: true - - nuxt-og-image@3.0.6: - resolution: {integrity: sha512-9Z/aTH7Sb6/BtpmhntH0VYeww5i96tq1rkKHRhIi2n1dIVfOTFYQHM/7hFkktvVsfrHPlZmB0ZdLTaQbbDDQSA==} - engines: {node: '>=18.0.0'} - - nuxt-site-config-kit@2.2.18: - resolution: {integrity: sha512-iPtf2X1fvI9m9VV04edSqNGC2EzQ1aLB7F2/AOxYRktCJxHeTdBGifuNPc90EaEIOfWx+gf3lmRd4EppGoAMSA==} - - nuxt-site-config@2.2.18: - resolution: {integrity: sha512-NU39ANP1kvRBzpEWV496y/lf9PKVv3t1VKX3zmQ1POcbzAXU4gm0Mh5NKOaLEcoXj6bQnziFNqjzHX3DAA8Aog==} - - nuxt@3.13.2: - resolution: {integrity: sha512-Bjc2qRsipfBhjXsBEJCN+EUAukhdgFv/KoIR5HFB2hZOYRSqXBod3oWQs78k3ja1nlIhAEdBG533898KJxUtJw==} - engines: {node: ^14.18.0 || >=16.10.0} - hasBin: true - peerDependencies: - '@parcel/watcher': ^2.1.0 - '@types/node': ^14.18.0 || >=16.10.0 - peerDependenciesMeta: - '@parcel/watcher': - optional: true - '@types/node': - optional: true - - nypm@0.3.12: - resolution: {integrity: sha512-D3pzNDWIvgA+7IORhD/IuWzEk4uXv6GsgOxiid4UU3h9oq5IqV1KtPDi63n4sZJ/xcWlr88c0QM2RgN5VbOhFA==} - engines: {node: ^14.16.0 || >=16.10.0} - hasBin: true - - object-assign@4.1.1: - resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} - engines: {node: '>=0.10.0'} - - object-hash@3.0.0: - resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} - engines: {node: '>= 6'} - - ofetch@1.4.1: - resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==} - - ohash@1.1.4: - resolution: {integrity: sha512-FlDryZAahJmEF3VR3w1KogSEdWX3WhA5GPakFx4J81kEAiHyLMpdLLElS8n8dfNadMgAne/MywcvmogzscVt4g==} - - on-finished@2.4.1: - resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} - engines: {node: '>= 0.8'} - - once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - - onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - - oniguruma-to-js@0.4.3: - resolution: {integrity: sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==} - - only@0.0.2: - resolution: {integrity: sha512-Fvw+Jemq5fjjyWz6CpKx6w9s7xxqo3+JCyM0WXWeCSOboZ8ABkyvP8ID4CZuChA/wxSx+XSJmdOm8rGVyJ1hdQ==} - - open@10.1.0: - resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==} - engines: {node: '>=18'} - - open@7.4.2: - resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==} - engines: {node: '>=8'} - - open@8.4.2: - resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} - engines: {node: '>=12'} - - openapi-typescript@6.7.6: - resolution: {integrity: sha512-c/hfooPx+RBIOPM09GSxABOZhYPblDoyaGhqBkD/59vtpN21jEuWKDlM0KYTvqJVlSYjKs0tBcIdeXKChlSPtw==} - hasBin: true - - optionator@0.9.4: - resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} - engines: {node: '>= 0.8.0'} - - p-limit@2.3.0: - resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} - engines: {node: '>=6'} - - p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} - - p-limit@4.0.0: - resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - p-locate@4.1.0: - resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} - engines: {node: '>=8'} - - p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} - - p-locate@6.0.0: - resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - p-try@2.2.0: - resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} - engines: {node: '>=6'} - - package-json-from-dist@1.0.1: - resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - - package-manager-detector@0.2.2: - resolution: {integrity: sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==} - - pako@0.2.9: - resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==} - - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - parse-css-color@0.2.1: - resolution: {integrity: sha512-bwS/GGIFV3b6KS4uwpzCFj4w297Yl3uqnSgIPsoQkx7GMLROXfMnWvxfNkL0oh8HVhZA4hvJoEoEIqonfJ3BWg==} - - parse-entities@4.0.1: - resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} - - parse-git-config@3.0.0: - resolution: {integrity: sha512-wXoQGL1D+2COYWCD35/xbiKma1Z15xvZL8cI25wvxzled58V51SJM04Urt/uznS900iQor7QO04SgdfT/XlbuA==} - engines: {node: '>=8'} - - parse-imports@2.2.1: - resolution: {integrity: sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==} - engines: {node: '>= 18'} - - parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - - parse-ms@4.0.0: - resolution: {integrity: sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==} - engines: {node: '>=18'} - - parse-path@7.0.0: - resolution: {integrity: sha512-Euf9GG8WT9CdqwuWJGdf3RkUcTBArppHABkO7Lm8IzRQp0e2r/kkFnmhu4TSK30Wcu5rVAZLmfPKSBBi9tWFog==} - - parse-url@8.1.0: - resolution: {integrity: sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==} - - parse5@7.2.0: - resolution: {integrity: sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==} - - parseurl@1.3.3: - resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} - engines: {node: '>= 0.8'} - - path-browserify@1.0.1: - resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==} - - path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - - path-exists@5.0.0: - resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - - path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - - path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - - path-scurry@1.11.1: - resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} - engines: {node: '>=16 || 14 >=14.18'} - - path-to-regexp@6.3.0: - resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} - - path-type@5.0.0: - resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} - engines: {node: '>=12'} - - pathe@1.1.2: - resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} - - perfect-debounce@1.0.0: - resolution: {integrity: sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==} - - picocolors@1.1.1: - resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} - - picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - - picomatch@4.0.2: - resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} - engines: {node: '>=12'} - - pify@2.3.0: - resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} - engines: {node: '>=0.10.0'} - - pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} - - pkg-types@1.2.1: - resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} - - playwright-core@1.48.1: - resolution: {integrity: sha512-Yw/t4VAFX/bBr1OzwCuOMZkY1Cnb4z/doAFSwf4huqAGWmf9eMNjmK7NiOljCdLmxeRYcGPPmcDgU0zOlzP0YA==} - engines: {node: '>=18'} - hasBin: true - - pluralize@8.0.0: - resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} - engines: {node: '>=4'} - - portfinder@1.0.32: - resolution: {integrity: sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==} - engines: {node: '>= 0.12.0'} - - postcss-calc@10.0.2: - resolution: {integrity: sha512-DT/Wwm6fCKgpYVI7ZEWuPJ4az8hiEHtCUeYjZXqU7Ou4QqYh1Df2yCQ7Ca6N7xqKPFkxN3fhf+u9KSoOCJNAjg==} - engines: {node: ^18.12 || ^20.9 || >=22.0} - peerDependencies: - postcss: ^8.4.38 - - postcss-colormin@7.0.2: - resolution: {integrity: sha512-YntRXNngcvEvDbEjTdRWGU606eZvB5prmHG4BF0yLmVpamXbpsRJzevyy6MZVyuecgzI2AWAlvFi8DAeCqwpvA==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-convert-values@7.0.4: - resolution: {integrity: sha512-e2LSXPqEHVW6aoGbjV9RsSSNDO3A0rZLCBxN24zvxF25WknMPpX8Dm9UxxThyEbaytzggRuZxaGXqaOhxQ514Q==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-discard-comments@7.0.3: - resolution: {integrity: sha512-q6fjd4WU4afNhWOA2WltHgCbkRhZPgQe7cXF74fuVB/ge4QbM9HEaOIzGSiMvM+g/cOsNAUGdf2JDzqA2F8iLA==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-discard-duplicates@7.0.1: - resolution: {integrity: sha512-oZA+v8Jkpu1ct/xbbrntHRsfLGuzoP+cpt0nJe5ED2FQF8n8bJtn7Bo28jSmBYwqgqnqkuSXJfSUEE7if4nClQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-discard-empty@7.0.0: - resolution: {integrity: sha512-e+QzoReTZ8IAwhnSdp/++7gBZ/F+nBq9y6PomfwORfP7q9nBpK5AMP64kOt0bA+lShBFbBDcgpJ3X4etHg4lzA==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-discard-overridden@7.0.0: - resolution: {integrity: sha512-GmNAzx88u3k2+sBTZrJSDauR0ccpE24omTQCVmaTTZFz1du6AasspjaUPMJ2ud4RslZpoFKyf+6MSPETLojc6w==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-import@15.1.0: - resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==} - engines: {node: '>=14.0.0'} - peerDependencies: - postcss: ^8.0.0 - - postcss-js@4.0.1: - resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==} - engines: {node: ^12 || ^14 || >= 16} - peerDependencies: - postcss: ^8.4.21 - - postcss-load-config@4.0.2: - resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} - engines: {node: '>= 14'} - peerDependencies: - postcss: '>=8.0.9' - ts-node: '>=9.0.0' - peerDependenciesMeta: - postcss: - optional: true - ts-node: - optional: true - - postcss-merge-longhand@7.0.4: - resolution: {integrity: sha512-zer1KoZA54Q8RVHKOY5vMke0cCdNxMP3KBfDerjH/BYHh4nCIh+1Yy0t1pAEQF18ac/4z3OFclO+ZVH8azjR4A==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-merge-rules@7.0.4: - resolution: {integrity: sha512-ZsaamiMVu7uBYsIdGtKJ64PkcQt6Pcpep/uO90EpLS3dxJi6OXamIobTYcImyXGoW0Wpugh7DSD3XzxZS9JCPg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-minify-font-values@7.0.0: - resolution: {integrity: sha512-2ckkZtgT0zG8SMc5aoNwtm5234eUx1GGFJKf2b1bSp8UflqaeFzR50lid4PfqVI9NtGqJ2J4Y7fwvnP/u1cQog==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-minify-gradients@7.0.0: - resolution: {integrity: sha512-pdUIIdj/C93ryCHew0UgBnL2DtUS3hfFa5XtERrs4x+hmpMYGhbzo6l/Ir5de41O0GaKVpK1ZbDNXSY6GkXvtg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-minify-params@7.0.2: - resolution: {integrity: sha512-nyqVLu4MFl9df32zTsdcLqCFfE/z2+f8GE1KHPxWOAmegSo6lpV2GNy5XQvrzwbLmiU7d+fYay4cwto1oNdAaQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-minify-selectors@7.0.4: - resolution: {integrity: sha512-JG55VADcNb4xFCf75hXkzc1rNeURhlo7ugf6JjiiKRfMsKlDzN9CXHZDyiG6x/zGchpjQS+UAgb1d4nqXqOpmA==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-nested@6.2.0: - resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==} - engines: {node: '>=12.0'} - peerDependencies: - postcss: ^8.2.14 - - postcss-nesting@13.0.0: - resolution: {integrity: sha512-TCGQOizyqvEkdeTPM+t6NYwJ3EJszYE/8t8ILxw/YoeUvz2rz7aM8XTAmBWh9/DJjfaaabL88fWrsVHSPF2zgA==} - engines: {node: '>=18'} - peerDependencies: - postcss: ^8.4 - - postcss-normalize-charset@7.0.0: - resolution: {integrity: sha512-ABisNUXMeZeDNzCQxPxBCkXexvBrUHV+p7/BXOY+ulxkcjUZO0cp8ekGBwvIh2LbCwnWbyMPNJVtBSdyhM2zYQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-display-values@7.0.0: - resolution: {integrity: sha512-lnFZzNPeDf5uGMPYgGOw7v0BfB45+irSRz9gHQStdkkhiM0gTfvWkWB5BMxpn0OqgOQuZG/mRlZyJxp0EImr2Q==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-positions@7.0.0: - resolution: {integrity: sha512-I0yt8wX529UKIGs2y/9Ybs2CelSvItfmvg/DBIjTnoUSrPxSV7Z0yZ8ShSVtKNaV/wAY+m7bgtyVQLhB00A1NQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-repeat-style@7.0.0: - resolution: {integrity: sha512-o3uSGYH+2q30ieM3ppu9GTjSXIzOrRdCUn8UOMGNw7Af61bmurHTWI87hRybrP6xDHvOe5WlAj3XzN6vEO8jLw==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-string@7.0.0: - resolution: {integrity: sha512-w/qzL212DFVOpMy3UGyxrND+Kb0fvCiBBujiaONIihq7VvtC7bswjWgKQU/w4VcRyDD8gpfqUiBQ4DUOwEJ6Qg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-timing-functions@7.0.0: - resolution: {integrity: sha512-tNgw3YV0LYoRwg43N3lTe3AEWZ66W7Dh7lVEpJbHoKOuHc1sLrzMLMFjP8SNULHaykzsonUEDbKedv8C+7ej6g==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-unicode@7.0.2: - resolution: {integrity: sha512-ztisabK5C/+ZWBdYC+Y9JCkp3M9qBv/XFvDtSw0d/XwfT3UaKeW/YTm/MD/QrPNxuecia46vkfEhewjwcYFjkg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-url@7.0.0: - resolution: {integrity: sha512-+d7+PpE+jyPX1hDQZYG+NaFD+Nd2ris6r8fPTBAjE8z/U41n/bib3vze8x7rKs5H1uEw5ppe9IojewouHk0klQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-normalize-whitespace@7.0.0: - resolution: {integrity: sha512-37/toN4wwZErqohedXYqWgvcHUGlT8O/m2jVkAfAe9Bd4MzRqlBmXrJRePH0e9Wgnz2X7KymTgTOaaFizQe3AQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-ordered-values@7.0.1: - resolution: {integrity: sha512-irWScWRL6nRzYmBOXReIKch75RRhNS86UPUAxXdmW/l0FcAsg0lvAXQCby/1lymxn/o0gVa6Rv/0f03eJOwHxw==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-reduce-initial@7.0.2: - resolution: {integrity: sha512-pOnu9zqQww7dEKf62Nuju6JgsW2V0KRNBHxeKohU+JkHd/GAH5uvoObqFLqkeB2n20mr6yrlWDvo5UBU5GnkfA==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-reduce-transforms@7.0.0: - resolution: {integrity: sha512-pnt1HKKZ07/idH8cpATX/ujMbtOGhUfE+m8gbqwJE05aTaNw8gbo34a2e3if0xc0dlu75sUOiqvwCGY3fzOHew==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-selector-parser@6.0.10: - resolution: {integrity: sha512-IQ7TZdoaqbT+LCpShg46jnZVlhWD2w6iQYAcYXfHARZ7X1t/UGhhceQDs5X0cGqKvYlHNOuv7Oa1xmb0oQuA3w==} - engines: {node: '>=4'} - - postcss-selector-parser@6.1.2: - resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} - engines: {node: '>=4'} - - postcss-svgo@7.0.1: - resolution: {integrity: sha512-0WBUlSL4lhD9rA5k1e5D8EN5wCEyZD6HJk0jIvRxl+FDVOMlJ7DePHYWGGVc5QRqrJ3/06FTXM0bxjmJpmTPSA==} - engines: {node: ^18.12.0 || ^20.9.0 || >= 18} - peerDependencies: - postcss: ^8.4.31 - - postcss-unique-selectors@7.0.3: - resolution: {integrity: sha512-J+58u5Ic5T1QjP/LDV9g3Cx4CNOgB5vz+kM6+OxHHhFACdcDeKhBXjQmB7fnIZM12YSTvsL0Opwco83DmacW2g==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - postcss-value-parser@4.2.0: - resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - - postcss@8.4.47: - resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} - engines: {node: ^10 || ^12 || >=14} - - prebuild-install@7.1.2: - resolution: {integrity: sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==} - engines: {node: '>=10'} - hasBin: true - - prelude-ls@1.2.1: - resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} - engines: {node: '>= 0.8.0'} - - pretty-bytes@6.1.1: - resolution: {integrity: sha512-mQUvGU6aUFQ+rNvTIAcZuWGRT9a6f6Yrg9bHs4ImKF+HZCEK+plBvnAZYSIQztknZF2qnzNtr6F8s0+IuptdlQ==} - engines: {node: ^14.13.1 || >=16.0.0} - - pretty-ms@9.1.0: - resolution: {integrity: sha512-o1piW0n3tgKIKCwk2vpM/vOV13zjJzvP37Ioze54YlTHE06m4tjEbzg9WsKkvTuyYln2DHjo5pY4qrZGI0otpw==} - engines: {node: '>=18'} - - process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - - process@0.11.10: - resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} - engines: {node: '>= 0.6.0'} - - prompts@2.4.2: - resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} - engines: {node: '>= 6'} - - property-information@6.5.0: - resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} - - protocols@2.0.1: - resolution: {integrity: sha512-/XJ368cyBJ7fzLMwLKv1e4vLxOju2MNAIokcr7meSaNcVbWz/CPcW22cP04mwxOErdA5mwjA8Q6w/cdAQxVn7Q==} - - pump@3.0.2: - resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==} - - punycode@2.3.1: - resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} - engines: {node: '>=6'} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - queue-tick@1.0.1: - resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} - - queue@6.0.2: - resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==} - - radix3@1.1.2: - resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} - - randombytes@2.1.0: - resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} - - range-parser@1.2.1: - resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} - engines: {node: '>= 0.6'} - - rc9@2.1.2: - resolution: {integrity: sha512-btXCnMmRIBINM2LDZoEmOogIZU7Qe7zn4BpomSKZ/ykbLObuBdvG+mFq11DL6fjH1DRwHhrlgtYWG96bJiC7Cg==} - - rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - - read-cache@1.0.0: - resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==} - - read-pkg-up@7.0.1: - resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} - engines: {node: '>=8'} - - read-pkg@5.2.0: - resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} - engines: {node: '>=8'} - - readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} - - readable-stream@3.6.2: - resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} - engines: {node: '>= 6'} - - readable-stream@4.5.2: - resolution: {integrity: sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - readdir-glob@1.1.3: - resolution: {integrity: sha512-v05I2k7xN8zXvPD9N+z/uhXPaj0sUFCe2rcWZIpBsqxfP7xXFQ0tipAd/wjj1YxWyWtUS5IDJpOG82JKt2EAVA==} - - readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} - - readdirp@4.0.2: - resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} - engines: {node: '>= 14.16.0'} - - redis-errors@1.2.0: - resolution: {integrity: sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==} - engines: {node: '>=4'} - - redis-parser@3.0.0: - resolution: {integrity: sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==} - engines: {node: '>=4'} - - refa@0.12.1: - resolution: {integrity: sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - regex@4.3.3: - resolution: {integrity: sha512-r/AadFO7owAq1QJVeZ/nq9jNS1vyZt+6t1p/E59B56Rn2GCya+gr1KSyOzNL/er+r+B7phv5jG2xU2Nz1YkmJg==} - - regexp-ast-analysis@0.7.1: - resolution: {integrity: sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==} - engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - - regexp-tree@0.1.27: - resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==} - hasBin: true - - regjsparser@0.10.0: - resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==} - hasBin: true - - rehype-external-links@3.0.0: - resolution: {integrity: sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==} - - rehype-raw@7.0.0: - resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==} - - rehype-slug@6.0.0: - resolution: {integrity: sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==} - - rehype-sort-attribute-values@5.0.1: - resolution: {integrity: sha512-lU3ABJO5frbUgV132YS6SL7EISf//irIm9KFMaeu5ixHfgWf6jhe+09Uf/Ef8pOYUJWKOaQJDRJGCXs6cNsdsQ==} - - rehype-sort-attributes@5.0.1: - resolution: {integrity: sha512-Bxo+AKUIELcnnAZwJDt5zUDDRpt4uzhfz9d0PVGhcxYWsbFj5Cv35xuWxu5r1LeYNFNhgGqsr9Q2QiIOM/Qctg==} - - remark-emoji@5.0.1: - resolution: {integrity: sha512-QCqTSvcZ65Ym+P+VyBKd4JfJfh7icMl7cIOGVmPMzWkDtdD8pQ0nQG7yxGolVIiMzSx90EZ7SwNiVpYpfTxn7w==} - engines: {node: '>=18'} - - remark-gfm@4.0.0: - resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==} - - remark-mdc@3.2.1: - resolution: {integrity: sha512-MLNqQE7ryygOA3TtH4hKmIvmjFAqTMzCs2zrMzXs4MWJXYM2vbtdwR2NfgcN3vxIp5Pllgq3oLGuKgQSs8J19w==} - - remark-parse@11.0.0: - resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==} - - remark-rehype@11.1.1: - resolution: {integrity: sha512-g/osARvjkBXb6Wo0XvAeXQohVta8i84ACbenPpoSsxTOQH/Ae0/RGP4WZgnMH5pMLpsj4FG7OHmcIcXxpza8eQ==} - - remark-stringify@11.0.0: - resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==} - - replace-in-file@6.3.5: - resolution: {integrity: sha512-arB9d3ENdKva2fxRnSjwBEXfK1npgyci7ZZuwysgAp7ORjHSyxz6oqIjTEv8R0Ydl4Ll7uOAZXL4vbkhGIizCg==} - engines: {node: '>=10'} - hasBin: true - - require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} - - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - - resolve-path@1.4.0: - resolution: {integrity: sha512-i1xevIst/Qa+nA9olDxLWnLk8YZbi8R/7JPbCMcgyWaFR6bKWaexgJgEB5oc2PKMjYdrHynyz0NY+if+H98t1w==} - engines: {node: '>= 0.8'} - - resolve-pkg-maps@1.0.0: - resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - - resolve@1.22.8: - resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} - hasBin: true - - restructure@3.0.2: - resolution: {integrity: sha512-gSfoiOEA0VPE6Tukkrr7I0RBdE0s7H1eFCDBk05l1KIQT1UIKNc5JZy6jdyW6eYH3aR3g5b3PuL77rq0hvwtAw==} - - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - - rfdc@1.4.1: - resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} - - rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - deprecated: Rimraf versions prior to v4 are no longer supported - hasBin: true - - rollup-plugin-visualizer@5.12.0: - resolution: {integrity: sha512-8/NU9jXcHRs7Nnj07PF2o4gjxmm9lXIrZ8r175bT9dK8qoLlvKTwRMArRCMgpMGlq8CTLugRvEmyMeMXIU2pNQ==} - engines: {node: '>=14'} - hasBin: true - peerDependencies: - rollup: 2.x || 3.x || 4.x - peerDependenciesMeta: - rollup: - optional: true - - rollup@4.24.0: - resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - - run-applescript@7.0.0: - resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==} - engines: {node: '>=18'} - - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - - safe-buffer@5.2.1: - resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - - satori-html@0.3.2: - resolution: {integrity: sha512-wjTh14iqADFKDK80e51/98MplTGfxz2RmIzh0GqShlf4a67+BooLywF17TvJPD6phO0Hxm7Mf1N5LtRYvdkYRA==} - - satori@0.11.2: - resolution: {integrity: sha512-uEPLbx89BfwzJroECvnTg8IQ+XxqkMl0apvB41mm8fmc6brzHA8bu9Etu43UoUF4ECnACPiDDFz6PfYDG0S46Q==} - engines: {node: '>=16'} - - scslre@0.3.0: - resolution: {integrity: sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==} - engines: {node: ^14.0.0 || >=16.0.0} - - scule@1.3.0: - resolution: {integrity: sha512-6FtHJEvt+pVMIB9IBY+IcCJ6Z5f1iQnytgyfKMhDKgmzYG+TeH/wx1y3l27rshSbLiSanrR9ffZDrEsmjlQF2g==} - - semver@5.7.2: - resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} - hasBin: true - - semver@6.3.1: - resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} - hasBin: true - - semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} - engines: {node: '>=10'} - hasBin: true - - send@0.19.0: - resolution: {integrity: sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==} - engines: {node: '>= 0.8.0'} - - serialize-javascript@6.0.2: - resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} - - serve-placeholder@2.0.2: - resolution: {integrity: sha512-/TMG8SboeiQbZJWRlfTCqMs2DD3SZgWp0kDQePz9yUuCnDfDh/92gf7/PxGhzXTKBIPASIHxFcZndoNbp6QOLQ==} - - serve-static@1.16.2: - resolution: {integrity: sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==} - engines: {node: '>= 0.8.0'} - - set-blocking@2.0.0: - resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} - - setprototypeof@1.1.0: - resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==} - - setprototypeof@1.2.0: - resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - - sharp@0.32.6: - resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} - engines: {node: '>=14.15.0'} - - shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} - - shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - - shell-quote@1.8.1: - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} - - shiki@1.22.0: - resolution: {integrity: sha512-/t5LlhNs+UOKQCYBtl5ZsH/Vclz73GIqT2yQsCBygr8L/ppTdmpL4w3kPLoZJbMKVWtoG77Ue1feOjZfDxvMkw==} - - signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - - signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - - simple-concat@1.0.1: - resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==} - - simple-get@4.0.1: - resolution: {integrity: sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==} - - simple-git@3.27.0: - resolution: {integrity: sha512-ivHoFS9Yi9GY49ogc6/YAi3Fl9ROnF4VyubNylgCkA+RVqLaKWnDSzXOVzya8csELIaWaYNutsEuAhZrtOjozA==} - - simple-swizzle@0.2.2: - resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} - - sirv@2.0.4: - resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==} - engines: {node: '>= 10'} - - sirv@3.0.0: - resolution: {integrity: sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg==} - engines: {node: '>=18'} - - sisteransi@1.0.5: - resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} - - site-config-stack@2.2.18: - resolution: {integrity: sha512-kwyuCwYZBJikuLN3IB15cGT7SHQQxAitLaDs1b6eNZbb+tBHubVUhj0pnFZnZZi4+5eNCO+3HiZxaU3qpFxP2A==} - peerDependencies: - vue: ^3 - - skin-tone@2.0.0: - resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} - engines: {node: '>=8'} - - slash@5.1.0: - resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} - engines: {node: '>=14.16'} - - slashes@3.0.12: - resolution: {integrity: sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==} - - slugify@1.6.6: - resolution: {integrity: sha512-h+z7HKHYXj6wJU+AnS/+IH8Uh9fdcX1Lrhg1/VMdf9PwoBQXFcXiAdsy2tSK0P6gKwJLXp02r90ahUCqHk9rrw==} - engines: {node: '>=8.0.0'} - - smob@1.5.0: - resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} - - smooth-dnd@0.12.1: - resolution: {integrity: sha512-Dndj/MOG7VP83mvzfGCLGzV2HuK1lWachMtWl/Iuk6zV7noDycIBnflwaPuDzoaapEl3Pc4+ybJArkkx9sxPZg==} - - socket.io-client@4.8.0: - resolution: {integrity: sha512-C0jdhD5yQahMws9alf/yvtsMGTaIDBnZ8Rb5HU56svyq0l5LIrGzIDZZD5pHQlmzxLuU91Gz+VpQMKgCTNYtkw==} - engines: {node: '>=10.0.0'} - - socket.io-parser@4.2.4: - resolution: {integrity: sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==} - engines: {node: '>=10.0.0'} - - source-map-js@1.2.1: - resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} - engines: {node: '>=0.10.0'} - - source-map-support@0.5.21: - resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} - - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - source-map@0.7.4: - resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} - engines: {node: '>= 8'} - - space-separated-tokens@2.0.2: - resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} - - spdx-correct@3.2.0: - resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} - - spdx-exceptions@2.5.0: - resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} - - spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} - - spdx-expression-parse@4.0.0: - resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==} - - spdx-license-ids@3.0.20: - resolution: {integrity: sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==} - - speakingurl@14.0.1: - resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} - engines: {node: '>=0.10.0'} - - stable-hash@0.0.4: - resolution: {integrity: sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==} - - standard-as-callback@2.1.0: - resolution: {integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==} - - statuses@1.5.0: - resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==} - engines: {node: '>= 0.6'} - - statuses@2.0.1: - resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} - engines: {node: '>= 0.8'} - - std-env@3.7.0: - resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} - - streamx@2.20.1: - resolution: {integrity: sha512-uTa0mU6WUC65iUvzKH4X9hEdvSW7rbPxPtwfWiLMSj3qTdQbAiUboZTxauKfpFuGIGa1C2BYijZ7wgdUXICJhA==} - - string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} - - string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} - - string.prototype.codepointat@0.2.1: - resolution: {integrity: sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==} - - string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - - string_decoder@1.3.0: - resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} - - stringify-entities@4.0.4: - resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==} - - strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} - - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} - - strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - - strip-final-newline@4.0.0: - resolution: {integrity: sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==} - engines: {node: '>=18'} - - strip-indent@3.0.0: - resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} - engines: {node: '>=8'} - - strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - - strip-literal@2.1.0: - resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==} - - stylehacks@7.0.4: - resolution: {integrity: sha512-i4zfNrGMt9SB4xRK9L83rlsFCgdGANfeDAYacO1pkqcE7cRHPdWHwnKZVz7WY17Veq/FvyYsRAU++Ga+qDFIww==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.31 - - sucrase@3.35.0: - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true - - superjson@2.2.1: - resolution: {integrity: sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==} - engines: {node: '>=16'} - - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - - supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} - - supports-color@9.4.0: - resolution: {integrity: sha512-VL+lNrEoIXww1coLPOmiEmK/0sGigko5COxI09KzHc2VJXJsQ37UaQ+8quuxjDeA7+KnLGTWRyOXSLLR2Wb4jw==} - engines: {node: '>=12'} - - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - - svg-tags@1.0.0: - resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==} - - svgo@3.3.2: - resolution: {integrity: sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==} - engines: {node: '>=14.0.0'} - hasBin: true - - synckit@0.9.2: - resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} - engines: {node: ^14.18.0 || >=16.0.0} - - system-architecture@0.1.0: - resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==} - engines: {node: '>=18'} - - tailwind-config-viewer@2.0.4: - resolution: {integrity: sha512-icvcmdMmt9dphvas8wL40qttrHwAnW3QEN4ExJ2zICjwRsPj7gowd1cOceaWG3IfTuM/cTNGQcx+bsjMtmV+cw==} - engines: {node: '>=13'} - hasBin: true - peerDependencies: - tailwindcss: 1 || 2 || 2.0.1-compat || 3 - - tailwind-merge@2.5.4: - resolution: {integrity: sha512-0q8cfZHMu9nuYP/b5Shb7Y7Sh1B7Nnl5GqNr1U+n2p6+mybvRtayrQ+0042Z5byvTA8ihjlP8Odo8/VnHbZu4Q==} - - tailwindcss@3.4.14: - resolution: {integrity: sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==} - engines: {node: '>=14.0.0'} - hasBin: true - - tapable@2.2.1: - resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} - engines: {node: '>=6'} - - tar-fs@2.1.1: - resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==} - - tar-fs@3.0.6: - resolution: {integrity: sha512-iokBDQQkUyeXhgPYaZxmczGPhnhXZ0CmrqI+MOb/WFGS9DW5wnfrLgtjUJBvz50vQ3qfRwJ62QVoCFu8mPVu5w==} - - tar-stream@2.2.0: - resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==} - engines: {node: '>=6'} - - tar-stream@3.1.7: - resolution: {integrity: sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==} - - tar@6.2.1: - resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} - engines: {node: '>=10'} - - terser@5.36.0: - resolution: {integrity: sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==} - engines: {node: '>=10'} - hasBin: true - - text-decoder@1.2.1: - resolution: {integrity: sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ==} - - text-table@0.2.0: - resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - - tiny-inflate@1.0.3: - resolution: {integrity: sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==} - - tiny-invariant@1.3.3: - resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} - - tinyexec@0.3.1: - resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==} - - tinyglobby@0.2.6: - resolution: {integrity: sha512-NbBoFBpqfcgd1tCiO8Lkfdk+xrA7mlLR9zgvZcZWQQwU63XAfUePyd6wZBaU93Hqw347lHnwFzttAkemHzzz4g==} - engines: {node: '>=12.0.0'} - - tinyglobby@0.2.9: - resolution: {integrity: sha512-8or1+BGEdk1Zkkw2ii16qSS7uVrQJPre5A9o/XkWPATkk23FZh/15BKFxPnlTy6vkljZxLqYCzzBMj30ZrSvjw==} - engines: {node: '>=12.0.0'} - - to-fast-properties@2.0.0: - resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} - engines: {node: '>=4'} - - to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} - - toidentifier@1.0.1: - resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} - engines: {node: '>=0.6'} - - totalist@3.0.1: - resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} - engines: {node: '>=6'} - - tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - - trim-lines@3.0.1: - resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} - - trough@2.2.0: - resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} - - ts-api-utils@1.3.0: - resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} - engines: {node: '>=16'} - peerDependencies: - typescript: '>=4.2.0' - - ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - - tslib@2.8.0: - resolution: {integrity: sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==} - - tsscmp@1.0.6: - resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} - engines: {node: '>=0.6.x'} - - tunnel-agent@0.6.0: - resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - - type-check@0.4.0: - resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} - engines: {node: '>= 0.8.0'} - - type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - - type-fest@0.21.3: - resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} - engines: {node: '>=10'} - - type-fest@0.6.0: - resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} - engines: {node: '>=8'} - - type-fest@0.8.1: - resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} - engines: {node: '>=8'} - - type-fest@3.13.1: - resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} - engines: {node: '>=14.16'} - - type-is@1.6.18: - resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} - engines: {node: '>= 0.6'} - - type-level-regexp@0.1.17: - resolution: {integrity: sha512-wTk4DH3cxwk196uGLK/E9pE45aLfeKJacKmcEgEOA/q5dnPGNxXt0cfYdFxb57L+sEpf1oJH4Dnx/pnRcku9jg==} - - typescript@5.6.3: - resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} - engines: {node: '>=14.17'} - hasBin: true - - ufo@1.5.4: - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} - - ultrahtml@1.5.3: - resolution: {integrity: sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==} - - uncrypto@0.1.3: - resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} - - unctx@2.3.1: - resolution: {integrity: sha512-PhKke8ZYauiqh3FEMVNm7ljvzQiph0Mt3GBRve03IJm7ukfaON2OBK795tLwhbyfzknuRRkW0+Ze+CQUmzOZ+A==} - - undici-types@6.19.8: - resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} - - undici@5.28.4: - resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} - engines: {node: '>=14.0'} - - unenv@1.10.0: - resolution: {integrity: sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==} - - unhead@1.11.10: - resolution: {integrity: sha512-hypXrAI47wE3wIhkze0RMPGAWcoo45Q1+XzdqLD/OnTCzjFXQrpuE4zBy8JRexyrqp+Ud2+nFTUNf/mjfFSymw==} - - unicode-emoji-modifier-base@1.0.0: - resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} - engines: {node: '>=4'} - - unicode-properties@1.4.1: - resolution: {integrity: sha512-CLjCCLQ6UuMxWnbIylkisbRj31qxHPAurvena/0iwSVbQ2G1VY5/HjV0IRabOEbDHlzZlRdCrD4NhB0JtU40Pg==} - - unicode-trie@2.0.0: - resolution: {integrity: sha512-x7bc76x0bm4prf1VLg79uhAzKw8DVboClSN5VxJuQ+LKDOVEW9CdH+VY7SP+vX7xCYQqzzgQpFqz15zeLvAtZQ==} - - unicorn-magic@0.1.0: - resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} - engines: {node: '>=18'} - - unicorn-magic@0.3.0: - resolution: {integrity: sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==} - engines: {node: '>=18'} - - unified@11.0.5: - resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} - - unifont@0.1.4: - resolution: {integrity: sha512-zQ55RqKnOKFNRReeOiOpRa/Jv3Sr69rRvwgxDizQQV/Qcz4X5s2BHkQ3Lt8tAM+di61TBgAHG8i74hZNWktWag==} - - unimport@3.13.1: - resolution: {integrity: sha512-nNrVzcs93yrZQOW77qnyOVHtb68LegvhYFwxFMfuuWScmwQmyVCG/NBuN8tYsaGzgQUVYv34E/af+Cc9u4og4A==} - - unist-builder@4.0.0: - resolution: {integrity: sha512-wmRFnH+BLpZnTKpc5L7O67Kac89s9HMrtELpnNaE6TAobq5DTZZs5YaTQfAZBA9bFPECx2uVAPO31c+GVug8mg==} - - unist-util-is@6.0.0: - resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==} - - unist-util-position@5.0.0: - resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==} - - unist-util-stringify-position@4.0.0: - resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==} - - unist-util-visit-parents@6.0.1: - resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==} - - unist-util-visit@5.0.0: - resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} - - universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - - unplugin-vue-router@0.10.8: - resolution: {integrity: sha512-xi+eLweYAqolIoTRSmumbi6Yx0z5M0PLvl+NFNVWHJgmE2ByJG1SZbrn+TqyuDtIyln20KKgq8tqmL7aLoiFjw==} - peerDependencies: - vue-router: ^4.4.0 - peerDependenciesMeta: - vue-router: - optional: true - - unplugin@1.14.1: - resolution: {integrity: sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==} - engines: {node: '>=14.0.0'} - peerDependencies: - webpack-sources: ^3 - peerDependenciesMeta: - webpack-sources: - optional: true - - unstorage@1.12.0: - resolution: {integrity: sha512-ARZYTXiC+e8z3lRM7/qY9oyaOkaozCeNd2xoz7sYK9fv7OLGhVsf+BZbmASqiK/HTZ7T6eAlnVq9JynZppyk3w==} - peerDependencies: - '@azure/app-configuration': ^1.7.0 - '@azure/cosmos': ^4.1.1 - '@azure/data-tables': ^13.2.2 - '@azure/identity': ^4.4.1 - '@azure/keyvault-secrets': ^4.8.0 - '@azure/storage-blob': ^12.24.0 - '@capacitor/preferences': ^6.0.2 - '@netlify/blobs': ^6.5.0 || ^7.0.0 - '@planetscale/database': ^1.19.0 - '@upstash/redis': ^1.34.0 - '@vercel/kv': ^1.0.1 - idb-keyval: ^6.2.1 - ioredis: ^5.4.1 - peerDependenciesMeta: - '@azure/app-configuration': - optional: true - '@azure/cosmos': - optional: true - '@azure/data-tables': - optional: true - '@azure/identity': - optional: true - '@azure/keyvault-secrets': - optional: true - '@azure/storage-blob': - optional: true - '@capacitor/preferences': - optional: true - '@netlify/blobs': - optional: true - '@planetscale/database': - optional: true - '@upstash/redis': - optional: true - '@vercel/kv': - optional: true - idb-keyval: - optional: true - ioredis: - optional: true - - untun@0.1.3: - resolution: {integrity: sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==} - hasBin: true - - untyped@1.5.1: - resolution: {integrity: sha512-reBOnkJBFfBZ8pCKaeHgfZLcehXtM6UTxc+vqs1JvCps0c4amLNp3fhdGBZwYp+VLyoY9n3X5KOP7lCyWBUX9A==} - hasBin: true - - unwasm@0.3.9: - resolution: {integrity: sha512-LDxTx/2DkFURUd+BU1vUsF/moj0JsoTvl+2tcg2AUOiEzVturhGGx17/IMgGvKUYdZwr33EJHtChCJuhu9Ouvg==} - - update-browserslist-db@1.1.1: - resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - - uqr@0.1.2: - resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==} - - uri-js@4.4.1: - resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} - - urlpattern-polyfill@8.0.2: - resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==} - - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - - validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} - - vary@1.1.2: - resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} - engines: {node: '>= 0.8'} - - vfile-location@5.0.3: - resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} - - vfile-message@4.0.2: - resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==} - - vfile@6.0.3: - resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - - vite-hot-client@0.2.3: - resolution: {integrity: sha512-rOGAV7rUlUHX89fP2p2v0A2WWvV3QMX2UYq0fRqsWSvFvev4atHWqjwGoKaZT1VTKyLGk533ecu3eyd0o59CAg==} - peerDependencies: - vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0 - - vite-node@2.1.3: - resolution: {integrity: sha512-I1JadzO+xYX887S39Do+paRePCKoiDrWRRjp9kkG5he0t7RXNvPAJPCQSJqbGN4uCrFFeS3Kj3sLqY8NMYBEdA==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - - vite-plugin-checker@0.8.0: - resolution: {integrity: sha512-UA5uzOGm97UvZRTdZHiQVYFnd86AVn8EVaD4L3PoVzxH+IZSfaAw14WGFwX9QS23UW3lV/5bVKZn6l0w+q9P0g==} - engines: {node: '>=14.16'} - peerDependencies: - '@biomejs/biome': '>=1.7' - eslint: '>=7' - meow: ^9.0.0 - optionator: ^0.9.1 - stylelint: '>=13' - typescript: '*' - vite: '>=2.0.0' - vls: '*' - vti: '*' - vue-tsc: ~2.1.6 - peerDependenciesMeta: - '@biomejs/biome': - optional: true - eslint: - optional: true - meow: - optional: true - optionator: - optional: true - stylelint: - optional: true - typescript: - optional: true - vls: - optional: true - vti: - optional: true - vue-tsc: - optional: true - - vite-plugin-inspect@0.8.7: - resolution: {integrity: sha512-/XXou3MVc13A5O9/2Nd6xczjrUwt7ZyI9h8pTnUMkr5SshLcb0PJUOVq2V+XVkdeU4njsqAtmK87THZuO2coGA==} - engines: {node: '>=14'} - peerDependencies: - '@nuxt/kit': '*' - vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0 - peerDependenciesMeta: - '@nuxt/kit': - optional: true - - vite-plugin-vue-inspector@5.1.3: - resolution: {integrity: sha512-pMrseXIDP1Gb38mOevY+BvtNGNqiqmqa2pKB99lnLsADQww9w9xMbAfT4GB6RUoaOkSPrtlXqpq2Fq+Dj2AgFg==} - peerDependencies: - vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0 - - vite@5.4.9: - resolution: {integrity: sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==} - engines: {node: ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@types/node': ^18.0.0 || >=20.0.0 - less: '*' - lightningcss: ^1.21.0 - sass: '*' - sass-embedded: '*' - stylus: '*' - sugarss: '*' - terser: ^5.4.0 - peerDependenciesMeta: - '@types/node': - optional: true - less: - optional: true - lightningcss: - optional: true - sass: - optional: true - sass-embedded: - optional: true - stylus: - optional: true - sugarss: - optional: true - terser: - optional: true - - vscode-jsonrpc@6.0.0: - resolution: {integrity: sha512-wnJA4BnEjOSyFMvjZdpiOwhSq9uDoK8e/kpRJDTaMYzwlkrhG1fwDIZI94CLsLzlCK5cIbMMtFlJlfR57Lavmg==} - engines: {node: '>=8.0.0 || >=10.0.0'} - - vscode-languageclient@7.0.0: - resolution: {integrity: sha512-P9AXdAPlsCgslpP9pRxYPqkNYV7Xq8300/aZDpO35j1fJm/ncize8iGswzYlcvFw5DQUx4eVk+KvfXdL0rehNg==} - engines: {vscode: ^1.52.0} - - vscode-languageserver-protocol@3.16.0: - resolution: {integrity: sha512-sdeUoAawceQdgIfTI+sdcwkiK2KU+2cbEYA0agzM2uqaUy2UpnnGHtWTHVEtS0ES4zHU0eMFRGN+oQgDxlD66A==} - - vscode-languageserver-textdocument@1.0.12: - resolution: {integrity: sha512-cxWNPesCnQCcMPeenjKKsOCKQZ/L6Tv19DTRIGuLWe32lyzWhihGVJ/rcckZXJxfdKCFvRLS3fpBIsV/ZGX4zA==} - - vscode-languageserver-types@3.16.0: - resolution: {integrity: sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==} - - vscode-languageserver@7.0.0: - resolution: {integrity: sha512-60HTx5ID+fLRcgdHfmz0LDZAXYEV68fzwG0JWwEPBode9NuMYTIxuYXPg4ngO8i8+Ou0lM7y6GzaYWbiDL0drw==} - hasBin: true - - vscode-uri@3.0.8: - resolution: {integrity: sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==} - - vue-bundle-renderer@2.1.1: - resolution: {integrity: sha512-+qALLI5cQncuetYOXp4yScwYvqh8c6SMXee3B+M7oTZxOgtESP0l4j/fXdEJoZ+EdMxkGWIj+aSEyjXkOdmd7g==} - - vue-component-meta@2.1.6: - resolution: {integrity: sha512-N5zReatWQTNqULhatFib69K82g5UhDERVobeqrT5S6Uk2QoCeYbsSY8nHRUwJFywE2iXRFN4B+XPhI+piZfC6w==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - vue-component-type-helpers@2.1.6: - resolution: {integrity: sha512-ng11B8B/ZADUMMOsRbqv0arc442q7lifSubD0v8oDXIFoMg/mXwAPUunrroIDkY+mcD0dHKccdaznSVp8EoX3w==} - - vue-demi@0.14.10: - resolution: {integrity: sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==} - engines: {node: '>=12'} - hasBin: true - peerDependencies: - '@vue/composition-api': ^1.0.0-rc.1 - vue: ^3.0.0-0 || ^2.6.0 - peerDependenciesMeta: - '@vue/composition-api': - optional: true - - vue-devtools-stub@0.1.0: - resolution: {integrity: sha512-RutnB7X8c5hjq39NceArgXg28WZtZpGc3+J16ljMiYnFhKvd8hITxSWQSQ5bvldxMDU6gG5mkxl1MTQLXckVSQ==} - - vue-eslint-parser@9.4.3: - resolution: {integrity: sha512-2rYRLWlIpaiN8xbPiDyXZXRgLGOtWxERV7ND5fFAv5qo1D2N9Fu9MNajBNc6o13lZ+24DAWCkQCvj4klgmcITg==} - engines: {node: ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: '>=6.0.0' - - vue-router@4.4.5: - resolution: {integrity: sha512-4fKZygS8cH1yCyuabAXGUAsyi1b2/o/OKgu/RUb+znIYOxPRxdkytJEx+0wGcpBE1pX6vUgh5jwWOKRGvuA/7Q==} - peerDependencies: - vue: ^3.2.0 - - vue-tsc@2.1.6: - resolution: {integrity: sha512-f98dyZp5FOukcYmbFpuSCJ4Z0vHSOSmxGttZJCsFeX0M4w/Rsq0s4uKXjcSRsZqsRgQa6z7SfuO+y0HVICE57Q==} - hasBin: true - peerDependencies: - typescript: '>=5.0.0' - - vue3-smooth-dnd@0.0.6: - resolution: {integrity: sha512-CH9ZZhEfE7qU1ef2rlfgBG+nZtQX8PnWlspB2HDDz1uVGU7fXM0Pr65DftBMz4X81S+edw2H+ZFG6Dyb5J81KA==} - peerDependencies: - vue: ^3.0.11 - - vue@3.5.12: - resolution: {integrity: sha512-CLVZtXtn2ItBIi/zHZ0Sg1Xkb7+PU32bJJ8Bmy7ts3jxXTcbfsEfBivFYYWz1Hur+lalqGAh65Coin0r+HRUfg==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - web-namespaces@2.0.1: - resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} - - webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - - webpack-virtual-modules@0.6.2: - resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==} - - whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - - which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true - - which@3.0.1: - resolution: {integrity: sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true - - wide-align@1.1.5: - resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} - - word-wrap@1.2.5: - resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} - engines: {node: '>=0.10.0'} - - wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} - - wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} - - wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - - ws@8.17.1: - resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - ws@8.18.0: - resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - - xml-name-validator@4.0.0: - resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} - engines: {node: '>=12'} - - xmlhttprequest-ssl@2.1.1: - resolution: {integrity: sha512-ptjR8YSJIXoA3Mbv5po7RtSYHO6mZr8s7i5VGmEk7QY2pQWyT1o0N+W1gKbOyJPUCGXGnuw0wqe8f0L6Y0ny7g==} - engines: {node: '>=0.4.0'} - - xss@1.0.15: - resolution: {integrity: sha512-FVdlVVC67WOIPvfOwhoMETV72f6GbW7aOabBC3WxN/oUdoEMDyLz4OgRv5/gck2ZeNqEQu+Tb0kloovXOfpYVg==} - engines: {node: '>= 0.10.0'} - hasBin: true - - y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - - yallist@3.1.1: - resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} - - yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - - yaml@2.6.0: - resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==} - engines: {node: '>= 14'} - hasBin: true - - yargs-parser@21.1.1: - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} - engines: {node: '>=12'} - - yargs@17.7.2: - resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} - engines: {node: '>=12'} - - ylru@1.4.0: - resolution: {integrity: sha512-2OQsPNEmBCvXuFlIni/a+Rn+R2pHW9INm0BxXJ4hVDA8TirqMj+J/Rp9ItLatT/5pZqWwefVrTQcHpixsxnVlA==} - engines: {node: '>= 4.0.0'} - - yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - - yocto-queue@1.1.1: - resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} - engines: {node: '>=12.20'} - - yoctocolors@2.1.1: - resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} - engines: {node: '>=18'} - - yoga-wasm-web@0.3.3: - resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} - - zhead@2.2.4: - resolution: {integrity: sha512-8F0OI5dpWIA5IGG5NHUg9staDwz/ZPxZtvGVf01j7vHqSyZ0raHY+78atOVxRqb73AotX22uV1pXt3gYSstGag==} - - zip-stream@6.0.1: - resolution: {integrity: sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==} - engines: {node: '>= 14'} - - zwitch@2.0.4: - resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} - -snapshots: - - '@alloc/quick-lru@5.2.0': {} - - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - - '@antfu/install-pkg@0.4.1': - dependencies: - package-manager-detector: 0.2.2 - tinyexec: 0.3.1 - - '@antfu/utils@0.7.10': {} - - '@apidevtools/json-schema-ref-parser@11.7.2': - dependencies: - '@jsdevtools/ono': 7.1.3 - '@types/json-schema': 7.0.15 - js-yaml: 4.1.0 - - '@babel/code-frame@7.25.7': - dependencies: - '@babel/highlight': 7.25.7 - picocolors: 1.1.1 - - '@babel/compat-data@7.25.8': {} - - '@babel/core@7.25.8': - dependencies: - '@ampproject/remapping': 2.3.0 - '@babel/code-frame': 7.25.7 - '@babel/generator': 7.25.7 - '@babel/helper-compilation-targets': 7.25.7 - '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8) - '@babel/helpers': 7.25.7 - '@babel/parser': 7.25.8 - '@babel/template': 7.25.7 - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.8 - convert-source-map: 2.0.0 - debug: 4.3.7 - gensync: 1.0.0-beta.2 - json5: 2.2.3 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/generator@7.25.7': - dependencies: - '@babel/types': 7.25.8 - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.0.2 - - '@babel/helper-annotate-as-pure@7.25.7': - dependencies: - '@babel/types': 7.25.8 - - '@babel/helper-compilation-targets@7.25.7': - dependencies: - '@babel/compat-data': 7.25.8 - '@babel/helper-validator-option': 7.25.7 - browserslist: 4.24.0 - lru-cache: 5.1.1 - semver: 6.3.1 - - '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.7 - '@babel/helper-member-expression-to-functions': 7.25.7 - '@babel/helper-optimise-call-expression': 7.25.7 - '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.8) - '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 - '@babel/traverse': 7.25.7 - semver: 6.3.1 - transitivePeerDependencies: - - supports-color - - '@babel/helper-member-expression-to-functions@7.25.7': - dependencies: - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.8 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-imports@7.25.7': - dependencies: - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.8 - transitivePeerDependencies: - - supports-color - - '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-module-imports': 7.25.7 - '@babel/helper-simple-access': 7.25.7 - '@babel/helper-validator-identifier': 7.25.7 - '@babel/traverse': 7.25.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-optimise-call-expression@7.25.7': - dependencies: - '@babel/types': 7.25.8 - - '@babel/helper-plugin-utils@7.25.7': {} - - '@babel/helper-replace-supers@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-member-expression-to-functions': 7.25.7 - '@babel/helper-optimise-call-expression': 7.25.7 - '@babel/traverse': 7.25.7 - transitivePeerDependencies: - - supports-color - - '@babel/helper-simple-access@7.25.7': - dependencies: - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.8 - transitivePeerDependencies: - - supports-color - - '@babel/helper-skip-transparent-expression-wrappers@7.25.7': - dependencies: - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.8 - transitivePeerDependencies: - - supports-color - - '@babel/helper-string-parser@7.25.7': {} - - '@babel/helper-validator-identifier@7.25.7': {} - - '@babel/helper-validator-option@7.25.7': {} - - '@babel/helpers@7.25.7': - dependencies: - '@babel/template': 7.25.7 - '@babel/types': 7.25.8 - - '@babel/highlight@7.25.7': - dependencies: - '@babel/helper-validator-identifier': 7.25.7 - chalk: 2.4.2 - js-tokens: 4.0.0 - picocolors: 1.1.1 - - '@babel/parser@7.25.8': - dependencies: - '@babel/types': 7.25.8 - - '@babel/plugin-proposal-decorators@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-decorators': 7.25.7(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/plugin-syntax-decorators@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.25.7 - - '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.25.7 - - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.25.7 - - '@babel/plugin-syntax-jsx@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.25.7 - - '@babel/plugin-syntax-typescript@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-plugin-utils': 7.25.7 - - '@babel/plugin-transform-typescript@7.25.7(@babel/core@7.25.8)': - dependencies: - '@babel/core': 7.25.8 - '@babel/helper-annotate-as-pure': 7.25.7 - '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8) - '@babel/helper-plugin-utils': 7.25.7 - '@babel/helper-skip-transparent-expression-wrappers': 7.25.7 - '@babel/plugin-syntax-typescript': 7.25.7(@babel/core@7.25.8) - transitivePeerDependencies: - - supports-color - - '@babel/standalone@7.25.8': {} - - '@babel/template@7.25.7': - dependencies: - '@babel/code-frame': 7.25.7 - '@babel/parser': 7.25.8 - '@babel/types': 7.25.8 - - '@babel/traverse@7.25.7': - dependencies: - '@babel/code-frame': 7.25.7 - '@babel/generator': 7.25.7 - '@babel/parser': 7.25.8 - '@babel/template': 7.25.7 - '@babel/types': 7.25.8 - debug: 4.3.7 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - '@babel/types@7.25.8': - dependencies: - '@babel/helper-string-parser': 7.25.7 - '@babel/helper-validator-identifier': 7.25.7 - to-fast-properties: 2.0.0 - - '@capsizecss/metrics@2.2.0': {} - - '@capsizecss/unpack@2.3.0': - dependencies: - blob-to-buffer: 1.2.9 - cross-fetch: 3.1.8 - fontkit: 2.0.4 - transitivePeerDependencies: - - encoding - - '@cloudflare/kv-asset-handler@0.3.4': - dependencies: - mime: 3.0.0 - - '@csstools/selector-resolve-nested@2.0.0(postcss-selector-parser@6.1.2)': - dependencies: - postcss-selector-parser: 6.1.2 - - '@csstools/selector-specificity@4.0.0(postcss-selector-parser@6.1.2)': - dependencies: - postcss-selector-parser: 6.1.2 - - '@es-joy/jsdoccomment@0.49.0': - dependencies: - comment-parser: 1.4.1 - esquery: 1.6.0 - jsdoc-type-pratt-parser: 4.1.0 - - '@esbuild/aix-ppc64@0.20.2': - optional: true - - '@esbuild/aix-ppc64@0.21.5': - optional: true - - '@esbuild/aix-ppc64@0.23.1': - optional: true - - '@esbuild/aix-ppc64@0.24.0': - optional: true - - '@esbuild/android-arm64@0.20.2': - optional: true - - '@esbuild/android-arm64@0.21.5': - optional: true - - '@esbuild/android-arm64@0.23.1': - optional: true - - '@esbuild/android-arm64@0.24.0': - optional: true - - '@esbuild/android-arm@0.20.2': - optional: true - - '@esbuild/android-arm@0.21.5': - optional: true - - '@esbuild/android-arm@0.23.1': - optional: true - - '@esbuild/android-arm@0.24.0': - optional: true - - '@esbuild/android-x64@0.20.2': - optional: true - - '@esbuild/android-x64@0.21.5': - optional: true - - '@esbuild/android-x64@0.23.1': - optional: true - - '@esbuild/android-x64@0.24.0': - optional: true - - '@esbuild/darwin-arm64@0.20.2': - optional: true - - '@esbuild/darwin-arm64@0.21.5': - optional: true - - '@esbuild/darwin-arm64@0.23.1': - optional: true - - '@esbuild/darwin-arm64@0.24.0': - optional: true - - '@esbuild/darwin-x64@0.20.2': - optional: true - - '@esbuild/darwin-x64@0.21.5': - optional: true - - '@esbuild/darwin-x64@0.23.1': - optional: true - - '@esbuild/darwin-x64@0.24.0': - optional: true - - '@esbuild/freebsd-arm64@0.20.2': - optional: true - - '@esbuild/freebsd-arm64@0.21.5': - optional: true - - '@esbuild/freebsd-arm64@0.23.1': - optional: true - - '@esbuild/freebsd-arm64@0.24.0': - optional: true - - '@esbuild/freebsd-x64@0.20.2': - optional: true - - '@esbuild/freebsd-x64@0.21.5': - optional: true - - '@esbuild/freebsd-x64@0.23.1': - optional: true - - '@esbuild/freebsd-x64@0.24.0': - optional: true - - '@esbuild/linux-arm64@0.20.2': - optional: true - - '@esbuild/linux-arm64@0.21.5': - optional: true - - '@esbuild/linux-arm64@0.23.1': - optional: true - - '@esbuild/linux-arm64@0.24.0': - optional: true - - '@esbuild/linux-arm@0.20.2': - optional: true - - '@esbuild/linux-arm@0.21.5': - optional: true - - '@esbuild/linux-arm@0.23.1': - optional: true - - '@esbuild/linux-arm@0.24.0': - optional: true - - '@esbuild/linux-ia32@0.20.2': - optional: true - - '@esbuild/linux-ia32@0.21.5': - optional: true - - '@esbuild/linux-ia32@0.23.1': - optional: true - - '@esbuild/linux-ia32@0.24.0': - optional: true - - '@esbuild/linux-loong64@0.20.2': - optional: true - - '@esbuild/linux-loong64@0.21.5': - optional: true - - '@esbuild/linux-loong64@0.23.1': - optional: true - - '@esbuild/linux-loong64@0.24.0': - optional: true - - '@esbuild/linux-mips64el@0.20.2': - optional: true - - '@esbuild/linux-mips64el@0.21.5': - optional: true - - '@esbuild/linux-mips64el@0.23.1': - optional: true - - '@esbuild/linux-mips64el@0.24.0': - optional: true - - '@esbuild/linux-ppc64@0.20.2': - optional: true - - '@esbuild/linux-ppc64@0.21.5': - optional: true - - '@esbuild/linux-ppc64@0.23.1': - optional: true - - '@esbuild/linux-ppc64@0.24.0': - optional: true - - '@esbuild/linux-riscv64@0.20.2': - optional: true - - '@esbuild/linux-riscv64@0.21.5': - optional: true - - '@esbuild/linux-riscv64@0.23.1': - optional: true - - '@esbuild/linux-riscv64@0.24.0': - optional: true - - '@esbuild/linux-s390x@0.20.2': - optional: true - - '@esbuild/linux-s390x@0.21.5': - optional: true - - '@esbuild/linux-s390x@0.23.1': - optional: true - - '@esbuild/linux-s390x@0.24.0': - optional: true - - '@esbuild/linux-x64@0.20.2': - optional: true - - '@esbuild/linux-x64@0.21.5': - optional: true - - '@esbuild/linux-x64@0.23.1': - optional: true - - '@esbuild/linux-x64@0.24.0': - optional: true - - '@esbuild/netbsd-x64@0.20.2': - optional: true - - '@esbuild/netbsd-x64@0.21.5': - optional: true - - '@esbuild/netbsd-x64@0.23.1': - optional: true - - '@esbuild/netbsd-x64@0.24.0': - optional: true - - '@esbuild/openbsd-arm64@0.23.1': - optional: true - - '@esbuild/openbsd-arm64@0.24.0': - optional: true - - '@esbuild/openbsd-x64@0.20.2': - optional: true - - '@esbuild/openbsd-x64@0.21.5': - optional: true - - '@esbuild/openbsd-x64@0.23.1': - optional: true - - '@esbuild/openbsd-x64@0.24.0': - optional: true - - '@esbuild/sunos-x64@0.20.2': - optional: true - - '@esbuild/sunos-x64@0.21.5': - optional: true - - '@esbuild/sunos-x64@0.23.1': - optional: true - - '@esbuild/sunos-x64@0.24.0': - optional: true - - '@esbuild/win32-arm64@0.20.2': - optional: true - - '@esbuild/win32-arm64@0.21.5': - optional: true - - '@esbuild/win32-arm64@0.23.1': - optional: true - - '@esbuild/win32-arm64@0.24.0': - optional: true - - '@esbuild/win32-ia32@0.20.2': - optional: true - - '@esbuild/win32-ia32@0.21.5': - optional: true - - '@esbuild/win32-ia32@0.23.1': - optional: true - - '@esbuild/win32-ia32@0.24.0': - optional: true - - '@esbuild/win32-x64@0.20.2': - optional: true - - '@esbuild/win32-x64@0.21.5': - optional: true - - '@esbuild/win32-x64@0.23.1': - optional: true - - '@esbuild/win32-x64@0.24.0': - optional: true - - '@eslint-community/eslint-utils@4.4.0(eslint@9.13.0(jiti@2.3.3))': - dependencies: - eslint: 9.13.0(jiti@2.3.3) - eslint-visitor-keys: 3.4.3 - - '@eslint-community/regexpp@4.11.1': {} - - '@eslint/compat@1.2.1(eslint@9.13.0(jiti@2.3.3))': - optionalDependencies: - eslint: 9.13.0(jiti@2.3.3) - - '@eslint/config-array@0.18.0': - dependencies: - '@eslint/object-schema': 2.1.4 - debug: 4.3.7 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color - - '@eslint/config-inspector@0.5.5(eslint@9.13.0(jiti@2.3.3))': - dependencies: - '@eslint/config-array': 0.18.0 - '@voxpelli/config-array-find-files': 1.2.1(@eslint/config-array@0.18.0) - bundle-require: 5.0.0(esbuild@0.24.0) - cac: 6.7.14 - chokidar: 4.0.1 - esbuild: 0.24.0 - eslint: 9.13.0(jiti@2.3.3) - fast-glob: 3.3.2 - find-up: 7.0.0 - get-port-please: 3.1.2 - h3: 1.13.0 - minimatch: 10.0.1 - mlly: 1.7.2 - mrmime: 2.0.0 - open: 10.1.0 - picocolors: 1.1.1 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - '@eslint/core@0.7.0': {} - - '@eslint/eslintrc@3.1.0': - dependencies: - ajv: 6.12.6 - debug: 4.3.7 - espree: 10.2.0 - globals: 14.0.0 - ignore: 5.3.2 - import-fresh: 3.3.0 - js-yaml: 4.1.0 - minimatch: 3.1.2 - strip-json-comments: 3.1.1 - transitivePeerDependencies: - - supports-color - - '@eslint/js@9.13.0': {} - - '@eslint/object-schema@2.1.4': {} - - '@eslint/plugin-kit@0.2.1': - dependencies: - levn: 0.4.1 - - '@fastify/accept-negotiator@1.1.0': - optional: true - - '@fastify/busboy@2.1.1': {} - - '@headlessui/tailwindcss@0.2.1(tailwindcss@3.4.14)': - dependencies: - tailwindcss: 3.4.14 - - '@headlessui/vue@1.7.23(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@tanstack/vue-virtual': 3.10.8(vue@3.5.12(typescript@5.6.3)) - vue: 3.5.12(typescript@5.6.3) - - '@humanfs/core@0.19.0': {} - - '@humanfs/node@0.16.5': - dependencies: - '@humanfs/core': 0.19.0 - '@humanwhocodes/retry': 0.3.1 - - '@humanwhocodes/module-importer@1.0.1': {} - - '@humanwhocodes/retry@0.3.1': {} - - '@iconify-json/heroicons@1.2.1': - dependencies: - '@iconify/types': 2.0.0 - - '@iconify-json/simple-icons@1.2.9': - dependencies: - '@iconify/types': 2.0.0 - - '@iconify-json/vscode-icons@1.2.2': - dependencies: - '@iconify/types': 2.0.0 - - '@iconify/collections@1.0.473': - dependencies: - '@iconify/types': 2.0.0 - - '@iconify/types@2.0.0': {} - - '@iconify/utils@2.1.33': - dependencies: - '@antfu/install-pkg': 0.4.1 - '@antfu/utils': 0.7.10 - '@iconify/types': 2.0.0 - debug: 4.3.7 - kolorist: 1.8.0 - local-pkg: 0.5.0 - mlly: 1.7.2 - transitivePeerDependencies: - - supports-color - - '@iconify/vue@4.1.3-beta.1(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@iconify/types': 2.0.0 - vue: 3.5.12(typescript@5.6.3) - - '@ioredis/commands@1.2.0': {} - - '@isaacs/cliui@8.0.2': - dependencies: - string-width: 5.1.2 - string-width-cjs: string-width@4.2.3 - strip-ansi: 7.1.0 - strip-ansi-cjs: strip-ansi@6.0.1 - wrap-ansi: 8.1.0 - wrap-ansi-cjs: wrap-ansi@7.0.0 - - '@jridgewell/gen-mapping@0.3.5': - dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/resolve-uri@3.1.2': {} - - '@jridgewell/set-array@1.2.1': {} - - '@jridgewell/source-map@0.3.6': - dependencies: - '@jridgewell/gen-mapping': 0.3.5 - '@jridgewell/trace-mapping': 0.3.25 - - '@jridgewell/sourcemap-codec@1.5.0': {} - - '@jridgewell/trace-mapping@0.3.25': - dependencies: - '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 - - '@jsdevtools/ono@7.1.3': {} - - '@koa/router@12.0.2': - dependencies: - debug: 4.3.7 - http-errors: 2.0.0 - koa-compose: 4.1.0 - methods: 1.1.2 - path-to-regexp: 6.3.0 - transitivePeerDependencies: - - supports-color - - '@kwsites/file-exists@1.1.1': - dependencies: - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - '@kwsites/promise-deferred@1.1.1': {} - - '@mapbox/node-pre-gyp@1.0.11': - dependencies: - detect-libc: 2.0.3 - https-proxy-agent: 5.0.1 - make-dir: 3.1.0 - node-fetch: 2.7.0 - nopt: 5.0.0 - npmlog: 5.0.1 - rimraf: 3.0.2 - semver: 7.6.3 - tar: 6.2.1 - transitivePeerDependencies: - - encoding - - supports-color - - '@netlify/functions@2.8.2': - dependencies: - '@netlify/serverless-functions-api': 1.26.1 - - '@netlify/node-cookies@0.1.0': {} - - '@netlify/serverless-functions-api@1.26.1': - dependencies: - '@netlify/node-cookies': 0.1.0 - urlpattern-polyfill: 8.0.2 - - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - '@nodelib/fs.scandir@3.0.0': - dependencies: - '@nodelib/fs.stat': 3.0.0 - run-parallel: 1.2.0 - - '@nodelib/fs.stat@2.0.5': {} - - '@nodelib/fs.stat@3.0.0': {} - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.17.1 - - '@nodelib/fs.walk@2.0.0': - dependencies: - '@nodelib/fs.scandir': 3.0.0 - fastq: 1.17.1 - - '@nuxt/content@2.13.4(ioredis@5.4.1)(magicast@0.3.5)(nuxt@3.13.2(@parcel/watcher@2.4.1)(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@nuxtjs/mdc': 0.9.2(magicast@0.3.5)(rollup@4.24.0) - '@vueuse/core': 11.1.0(vue@3.5.12(typescript@5.6.3)) - '@vueuse/head': 2.0.0(vue@3.5.12(typescript@5.6.3)) - '@vueuse/nuxt': 11.1.0(magicast@0.3.5)(nuxt@3.13.2(@parcel/watcher@2.4.1)(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3)) - consola: 3.2.3 - defu: 6.1.4 - destr: 2.0.3 - json5: 2.2.3 - knitwork: 1.1.0 - listhen: 1.9.0 - mdast-util-to-string: 4.0.0 - mdurl: 2.0.0 - micromark: 4.0.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-types: 2.0.0 - minisearch: 7.1.0 - ohash: 1.1.4 - pathe: 1.1.2 - scule: 1.3.0 - shiki: 1.22.0 - slugify: 1.6.6 - socket.io-client: 4.8.0 - ufo: 1.5.4 - unist-util-stringify-position: 4.0.0 - unstorage: 1.12.0(ioredis@5.4.1) - ws: 8.18.0 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/kv' - - '@vue/composition-api' - - bufferutil - - idb-keyval - - ioredis - - magicast - - nuxt - - rollup - - supports-color - - utf-8-validate - - vue - - webpack-sources - - '@nuxt/devalue@2.0.2': {} - - '@nuxt/devtools-kit@1.6.0(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@nuxt/schema': 3.13.2(rollup@4.24.0) - execa: 7.2.0 - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - webpack-sources - - '@nuxt/devtools-wizard@1.6.0': - dependencies: - consola: 3.2.3 - diff: 7.0.0 - execa: 7.2.0 - global-directory: 4.0.1 - magicast: 0.3.5 - pathe: 1.1.2 - pkg-types: 1.2.1 - prompts: 2.4.2 - rc9: 2.1.2 - semver: 7.6.3 - - '@nuxt/devtools@1.6.0(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@antfu/utils': 0.7.10 - '@nuxt/devtools-kit': 1.6.0(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxt/devtools-wizard': 1.6.0 - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@vue/devtools-core': 7.4.4(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - '@vue/devtools-kit': 7.4.4 - birpc: 0.2.19 - consola: 3.2.3 - cronstrue: 2.50.0 - destr: 2.0.3 - error-stack-parser-es: 0.1.5 - execa: 7.2.0 - fast-npm-meta: 0.2.2 - flatted: 3.3.1 - get-port-please: 3.1.2 - hookable: 5.5.3 - image-meta: 0.2.1 - is-installed-globally: 1.0.0 - launch-editor: 2.9.1 - local-pkg: 0.5.0 - magicast: 0.3.5 - nypm: 0.3.12 - ohash: 1.1.4 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - rc9: 2.1.2 - scule: 1.3.0 - semver: 7.6.3 - simple-git: 3.27.0 - sirv: 2.0.4 - tinyglobby: 0.2.6 - unimport: 3.13.1(rollup@4.24.0) - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - vite-plugin-inspect: 0.8.7(@nuxt/kit@3.13.2(magicast@0.3.5)(rollup@4.24.0))(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - vite-plugin-vue-inspector: 5.1.3(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - which: 3.0.1 - ws: 8.18.0 - transitivePeerDependencies: - - bufferutil - - rollup - - supports-color - - utf-8-validate - - vue - - webpack-sources - - '@nuxt/eslint-config@0.6.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)': - dependencies: - '@eslint/js': 9.13.0 - '@nuxt/eslint-plugin': 0.6.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@stylistic/eslint-plugin': 2.9.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@typescript-eslint/eslint-plugin': 8.10.0(@typescript-eslint/parser@8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@typescript-eslint/parser': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - eslint: 9.13.0(jiti@2.3.3) - eslint-config-flat-gitignore: 0.3.0(eslint@9.13.0(jiti@2.3.3)) - eslint-flat-config-utils: 0.4.0 - eslint-plugin-import-x: 4.3.1(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - eslint-plugin-jsdoc: 50.4.3(eslint@9.13.0(jiti@2.3.3)) - eslint-plugin-regexp: 2.6.0(eslint@9.13.0(jiti@2.3.3)) - eslint-plugin-unicorn: 56.0.0(eslint@9.13.0(jiti@2.3.3)) - eslint-plugin-vue: 9.29.1(eslint@9.13.0(jiti@2.3.3)) - globals: 15.11.0 - local-pkg: 0.5.0 - pathe: 1.1.2 - vue-eslint-parser: 9.4.3(eslint@9.13.0(jiti@2.3.3)) - transitivePeerDependencies: - - supports-color - - typescript - - '@nuxt/eslint-plugin@0.6.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)': - dependencies: - '@typescript-eslint/types': 8.10.0 - '@typescript-eslint/utils': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - eslint: 9.13.0(jiti@2.3.3) - transitivePeerDependencies: - - supports-color - - typescript - - '@nuxt/eslint@0.6.0(eslint@9.13.0(jiti@2.3.3))(magicast@0.3.5)(rollup@4.24.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))': - dependencies: - '@eslint/config-inspector': 0.5.5(eslint@9.13.0(jiti@2.3.3)) - '@nuxt/devtools-kit': 1.6.0(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxt/eslint-config': 0.6.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@nuxt/eslint-plugin': 0.6.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - chokidar: 4.0.1 - eslint: 9.13.0(jiti@2.3.3) - eslint-flat-config-utils: 0.4.0 - eslint-typegen: 0.3.2(eslint@9.13.0(jiti@2.3.3)) - find-up: 7.0.0 - get-port-please: 3.1.2 - mlly: 1.7.2 - pathe: 1.1.2 - unimport: 3.13.1(rollup@4.24.0) - transitivePeerDependencies: - - bufferutil - - magicast - - rollup - - supports-color - - typescript - - utf-8-validate - - vite - - webpack-sources - - '@nuxt/fonts@0.10.0(ioredis@5.4.1)(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))': - dependencies: - '@nuxt/devtools-kit': 1.6.0(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - chalk: 5.3.0 - css-tree: 3.0.0 - defu: 6.1.4 - esbuild: 0.24.0 - fontaine: 0.5.0 - h3: 1.13.0 - jiti: 2.3.3 - magic-regexp: 0.8.0 - magic-string: 0.30.12 - node-fetch-native: 1.6.4 - ohash: 1.1.4 - pathe: 1.1.2 - sirv: 2.0.4 - tinyglobby: 0.2.9 - ufo: 1.5.4 - unifont: 0.1.4 - unplugin: 1.14.1 - unstorage: 1.12.0(ioredis@5.4.1) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/kv' - - encoding - - idb-keyval - - ioredis - - magicast - - rollup - - supports-color - - vite - - webpack-sources - - '@nuxt/icon@1.5.6(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@iconify/collections': 1.0.473 - '@iconify/types': 2.0.0 - '@iconify/utils': 2.1.33 - '@iconify/vue': 4.1.3-beta.1(vue@3.5.12(typescript@5.6.3)) - '@nuxt/devtools-kit': 1.6.0(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - consola: 3.2.3 - local-pkg: 0.5.0 - mlly: 1.7.2 - ohash: 1.1.4 - pathe: 1.1.2 - std-env: 3.7.0 - tinyglobby: 0.2.9 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - vite - - vue - - webpack-sources - - '@nuxt/image@1.8.1(ioredis@5.4.1)(magicast@0.3.5)(rollup@4.24.0)': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - consola: 3.2.3 - defu: 6.1.4 - h3: 1.13.0 - image-meta: 0.2.1 - node-fetch-native: 1.6.4 - ohash: 1.1.4 - pathe: 1.1.2 - std-env: 3.7.0 - ufo: 1.5.4 - optionalDependencies: - ipx: 2.1.0(ioredis@5.4.1) - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/kv' - - idb-keyval - - ioredis - - magicast - - rollup - - supports-color - - webpack-sources - - '@nuxt/kit@3.13.2(magicast@0.3.5)(rollup@4.24.0)': - dependencies: - '@nuxt/schema': 3.13.2(rollup@4.24.0) - c12: 1.11.2(magicast@0.3.5) - consola: 3.2.3 - defu: 6.1.4 - destr: 2.0.3 - globby: 14.0.2 - hash-sum: 2.0.0 - ignore: 5.3.2 - jiti: 1.21.6 - klona: 2.0.6 - knitwork: 1.1.0 - mlly: 1.7.2 - pathe: 1.1.2 - pkg-types: 1.2.1 - scule: 1.3.0 - semver: 7.6.3 - ufo: 1.5.4 - unctx: 2.3.1 - unimport: 3.13.1(rollup@4.24.0) - untyped: 1.5.1 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - webpack-sources - - '@nuxt/schema@3.13.2(rollup@4.24.0)': - dependencies: - compatx: 0.1.8 - consola: 3.2.3 - defu: 6.1.4 - hookable: 5.5.3 - pathe: 1.1.2 - pkg-types: 1.2.1 - scule: 1.3.0 - std-env: 3.7.0 - ufo: 1.5.4 - uncrypto: 0.1.3 - unimport: 3.13.1(rollup@4.24.0) - untyped: 1.5.1 - transitivePeerDependencies: - - rollup - - supports-color - - webpack-sources - - '@nuxt/telemetry@2.6.0(magicast@0.3.5)(rollup@4.24.0)': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - ci-info: 4.0.0 - consola: 3.2.3 - create-require: 1.1.1 - defu: 6.1.4 - destr: 2.0.3 - dotenv: 16.4.5 - git-url-parse: 15.0.0 - is-docker: 3.0.0 - jiti: 1.21.6 - mri: 1.2.0 - nanoid: 5.0.7 - ofetch: 1.4.1 - package-manager-detector: 0.2.2 - parse-git-config: 3.0.0 - pathe: 1.1.2 - rc9: 2.1.2 - std-env: 3.7.0 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - webpack-sources - - '@nuxt/ui-pro@1.4.4(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@iconify-json/vscode-icons': 1.2.2 - '@nuxt/ui': 2.18.7(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - '@vueuse/core': 11.1.0(vue@3.5.12(typescript@5.6.3)) - defu: 6.1.4 - git-url-parse: 15.0.0 - ofetch: 1.4.1 - parse-git-config: 3.0.0 - pathe: 1.1.2 - pkg-types: 1.2.1 - tailwind-merge: 2.5.4 - vue3-smooth-dnd: 0.0.6(vue@3.5.12(typescript@5.6.3)) - transitivePeerDependencies: - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - focus-trap - - idb-keyval - - jwt-decode - - magicast - - nprogress - - qrcode - - rollup - - sortablejs - - supports-color - - ts-node - - universal-cookie - - vite - - vue - - webpack-sources - - '@nuxt/ui@2.18.7(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@headlessui/tailwindcss': 0.2.1(tailwindcss@3.4.14) - '@headlessui/vue': 1.7.23(vue@3.5.12(typescript@5.6.3)) - '@iconify-json/heroicons': 1.2.1 - '@nuxt/icon': 1.5.6(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@nuxtjs/color-mode': 3.5.1(magicast@0.3.5)(rollup@4.24.0) - '@nuxtjs/tailwindcss': 6.12.2(magicast@0.3.5)(rollup@4.24.0) - '@popperjs/core': 2.11.8 - '@tailwindcss/aspect-ratio': 0.4.2(tailwindcss@3.4.14) - '@tailwindcss/container-queries': 0.1.1(tailwindcss@3.4.14) - '@tailwindcss/forms': 0.5.9(tailwindcss@3.4.14) - '@tailwindcss/typography': 0.5.15(tailwindcss@3.4.14) - '@vueuse/core': 11.1.0(vue@3.5.12(typescript@5.6.3)) - '@vueuse/integrations': 11.1.0(fuse.js@7.0.0)(vue@3.5.12(typescript@5.6.3)) - '@vueuse/math': 11.1.0(vue@3.5.12(typescript@5.6.3)) - defu: 6.1.4 - fuse.js: 7.0.0 - ohash: 1.1.4 - pathe: 1.1.2 - scule: 1.3.0 - tailwind-merge: 2.5.4 - tailwindcss: 3.4.14 - transitivePeerDependencies: - - '@vue/composition-api' - - async-validator - - axios - - change-case - - drauu - - focus-trap - - idb-keyval - - jwt-decode - - magicast - - nprogress - - qrcode - - rollup - - sortablejs - - supports-color - - ts-node - - universal-cookie - - vite - - vue - - webpack-sources - - '@nuxt/vite-builder@3.13.2(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@rollup/plugin-replace': 5.0.7(rollup@4.24.0) - '@vitejs/plugin-vue': 5.1.4(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - '@vitejs/plugin-vue-jsx': 4.0.1(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - autoprefixer: 10.4.20(postcss@8.4.47) - clear: 0.1.0 - consola: 3.2.3 - cssnano: 7.0.6(postcss@8.4.47) - defu: 6.1.4 - esbuild: 0.23.1 - escape-string-regexp: 5.0.0 - estree-walker: 3.0.3 - externality: 1.0.2 - get-port-please: 3.1.2 - h3: 1.13.0 - knitwork: 1.1.0 - magic-string: 0.30.12 - mlly: 1.7.2 - ohash: 1.1.4 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - postcss: 8.4.47 - rollup-plugin-visualizer: 5.12.0(rollup@4.24.0) - std-env: 3.7.0 - strip-literal: 2.1.0 - ufo: 1.5.4 - unenv: 1.10.0 - unplugin: 1.14.1 - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - vite-node: 2.1.3(@types/node@22.7.7)(terser@5.36.0) - vite-plugin-checker: 0.8.0(eslint@9.13.0(jiti@2.3.3))(optionator@0.9.4)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)) - vue: 3.5.12(typescript@5.6.3) - vue-bundle-renderer: 2.1.1 - transitivePeerDependencies: - - '@biomejs/biome' - - '@types/node' - - eslint - - less - - lightningcss - - magicast - - meow - - optionator - - rollup - - sass - - sass-embedded - - stylelint - - stylus - - sugarss - - supports-color - - terser - - typescript - - vls - - vti - - vue-tsc - - webpack-sources - - '@nuxthq/studio@2.1.1(magicast@0.3.5)(rollup@4.24.0)': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - defu: 6.1.4 - git-url-parse: 15.0.0 - nuxt-component-meta: 0.8.2(magicast@0.3.5)(rollup@4.24.0) - parse-git-config: 3.0.0 - pkg-types: 1.2.1 - socket.io-client: 4.8.0 - ufo: 1.5.4 - untyped: 1.5.1 - transitivePeerDependencies: - - bufferutil - - magicast - - rollup - - supports-color - - utf-8-validate - - webpack-sources - - '@nuxtjs/color-mode@3.5.1(magicast@0.3.5)(rollup@4.24.0)': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - changelogen: 0.5.7(magicast@0.3.5) - pathe: 1.1.2 - pkg-types: 1.2.1 - semver: 7.6.3 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - webpack-sources - - '@nuxtjs/mdc@0.9.2(magicast@0.3.5)(rollup@4.24.0)': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@shikijs/transformers': 1.22.0 - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - '@vue/compiler-core': 3.5.12 - consola: 3.2.3 - debug: 4.3.7 - defu: 6.1.4 - destr: 2.0.3 - detab: 3.0.2 - github-slugger: 2.0.0 - hast-util-to-string: 3.0.1 - mdast-util-to-hast: 13.2.0 - micromark-util-sanitize-uri: 2.0.0 - ohash: 1.1.4 - parse5: 7.2.0 - pathe: 1.1.2 - property-information: 6.5.0 - rehype-external-links: 3.0.0 - rehype-raw: 7.0.0 - rehype-slug: 6.0.0 - rehype-sort-attribute-values: 5.0.1 - rehype-sort-attributes: 5.0.1 - remark-emoji: 5.0.1 - remark-gfm: 4.0.0 - remark-mdc: 3.2.1 - remark-parse: 11.0.0 - remark-rehype: 11.1.1 - scule: 1.3.0 - shiki: 1.22.0 - ufo: 1.5.4 - unified: 11.0.5 - unist-builder: 4.0.0 - unist-util-visit: 5.0.0 - unwasm: 0.3.9 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - webpack-sources - - '@nuxtjs/tailwindcss@6.12.2(magicast@0.3.5)(rollup@4.24.0)': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - autoprefixer: 10.4.20(postcss@8.4.47) - consola: 3.2.3 - defu: 6.1.4 - h3: 1.13.0 - klona: 2.0.6 - pathe: 1.1.2 - postcss: 8.4.47 - postcss-nesting: 13.0.0(postcss@8.4.47) - tailwind-config-viewer: 2.0.4(tailwindcss@3.4.14) - tailwindcss: 3.4.14 - ufo: 1.5.4 - unctx: 2.3.1 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - ts-node - - webpack-sources - - '@parcel/watcher-android-arm64@2.4.1': - optional: true - - '@parcel/watcher-darwin-arm64@2.4.1': - optional: true - - '@parcel/watcher-darwin-x64@2.4.1': - optional: true - - '@parcel/watcher-freebsd-x64@2.4.1': - optional: true - - '@parcel/watcher-linux-arm-glibc@2.4.1': - optional: true - - '@parcel/watcher-linux-arm64-glibc@2.4.1': - optional: true - - '@parcel/watcher-linux-arm64-musl@2.4.1': - optional: true - - '@parcel/watcher-linux-x64-glibc@2.4.1': - optional: true - - '@parcel/watcher-linux-x64-musl@2.4.1': - optional: true - - '@parcel/watcher-wasm@2.4.1': - dependencies: - is-glob: 4.0.3 - micromatch: 4.0.8 - - '@parcel/watcher-win32-arm64@2.4.1': - optional: true - - '@parcel/watcher-win32-ia32@2.4.1': - optional: true - - '@parcel/watcher-win32-x64@2.4.1': - optional: true - - '@parcel/watcher@2.4.1': - dependencies: - detect-libc: 1.0.3 - is-glob: 4.0.3 - micromatch: 4.0.8 - node-addon-api: 7.1.1 - optionalDependencies: - '@parcel/watcher-android-arm64': 2.4.1 - '@parcel/watcher-darwin-arm64': 2.4.1 - '@parcel/watcher-darwin-x64': 2.4.1 - '@parcel/watcher-freebsd-x64': 2.4.1 - '@parcel/watcher-linux-arm-glibc': 2.4.1 - '@parcel/watcher-linux-arm64-glibc': 2.4.1 - '@parcel/watcher-linux-arm64-musl': 2.4.1 - '@parcel/watcher-linux-x64-glibc': 2.4.1 - '@parcel/watcher-linux-x64-musl': 2.4.1 - '@parcel/watcher-win32-arm64': 2.4.1 - '@parcel/watcher-win32-ia32': 2.4.1 - '@parcel/watcher-win32-x64': 2.4.1 - - '@pkgjs/parseargs@0.11.0': - optional: true - - '@pkgr/core@0.1.1': {} - - '@polka/url@1.0.0-next.28': {} - - '@popperjs/core@2.11.8': {} - - '@resvg/resvg-js-android-arm-eabi@2.6.2': - optional: true - - '@resvg/resvg-js-android-arm64@2.6.2': - optional: true - - '@resvg/resvg-js-darwin-arm64@2.6.2': - optional: true - - '@resvg/resvg-js-darwin-x64@2.6.2': - optional: true - - '@resvg/resvg-js-linux-arm-gnueabihf@2.6.2': - optional: true - - '@resvg/resvg-js-linux-arm64-gnu@2.6.2': - optional: true - - '@resvg/resvg-js-linux-arm64-musl@2.6.2': - optional: true - - '@resvg/resvg-js-linux-x64-gnu@2.6.2': - optional: true - - '@resvg/resvg-js-linux-x64-musl@2.6.2': - optional: true - - '@resvg/resvg-js-win32-arm64-msvc@2.6.2': - optional: true - - '@resvg/resvg-js-win32-ia32-msvc@2.6.2': - optional: true - - '@resvg/resvg-js-win32-x64-msvc@2.6.2': - optional: true - - '@resvg/resvg-js@2.6.2': - optionalDependencies: - '@resvg/resvg-js-android-arm-eabi': 2.6.2 - '@resvg/resvg-js-android-arm64': 2.6.2 - '@resvg/resvg-js-darwin-arm64': 2.6.2 - '@resvg/resvg-js-darwin-x64': 2.6.2 - '@resvg/resvg-js-linux-arm-gnueabihf': 2.6.2 - '@resvg/resvg-js-linux-arm64-gnu': 2.6.2 - '@resvg/resvg-js-linux-arm64-musl': 2.6.2 - '@resvg/resvg-js-linux-x64-gnu': 2.6.2 - '@resvg/resvg-js-linux-x64-musl': 2.6.2 - '@resvg/resvg-js-win32-arm64-msvc': 2.6.2 - '@resvg/resvg-js-win32-ia32-msvc': 2.6.2 - '@resvg/resvg-js-win32-x64-msvc': 2.6.2 - - '@resvg/resvg-wasm@2.6.2': {} - - '@rollup/plugin-alias@5.1.1(rollup@4.24.0)': - optionalDependencies: - rollup: 4.24.0 - - '@rollup/plugin-commonjs@25.0.8(rollup@4.24.0)': - dependencies: - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - commondir: 1.0.1 - estree-walker: 2.0.2 - glob: 8.1.0 - is-reference: 1.2.1 - magic-string: 0.30.12 - optionalDependencies: - rollup: 4.24.0 - - '@rollup/plugin-inject@5.0.5(rollup@4.24.0)': - dependencies: - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - estree-walker: 2.0.2 - magic-string: 0.30.12 - optionalDependencies: - rollup: 4.24.0 - - '@rollup/plugin-json@6.1.0(rollup@4.24.0)': - dependencies: - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - optionalDependencies: - rollup: 4.24.0 - - '@rollup/plugin-node-resolve@15.3.0(rollup@4.24.0)': - dependencies: - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - '@types/resolve': 1.20.2 - deepmerge: 4.3.1 - is-module: 1.0.0 - resolve: 1.22.8 - optionalDependencies: - rollup: 4.24.0 - - '@rollup/plugin-replace@5.0.7(rollup@4.24.0)': - dependencies: - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - magic-string: 0.30.12 - optionalDependencies: - rollup: 4.24.0 - - '@rollup/plugin-terser@0.4.4(rollup@4.24.0)': - dependencies: - serialize-javascript: 6.0.2 - smob: 1.5.0 - terser: 5.36.0 - optionalDependencies: - rollup: 4.24.0 - - '@rollup/pluginutils@4.2.1': - dependencies: - estree-walker: 2.0.2 - picomatch: 2.3.1 - - '@rollup/pluginutils@5.1.2(rollup@4.24.0)': - dependencies: - '@types/estree': 1.0.6 - estree-walker: 2.0.2 - picomatch: 2.3.1 - optionalDependencies: - rollup: 4.24.0 - - '@rollup/rollup-android-arm-eabi@4.24.0': - optional: true - - '@rollup/rollup-android-arm64@4.24.0': - optional: true - - '@rollup/rollup-darwin-arm64@4.24.0': - optional: true - - '@rollup/rollup-darwin-x64@4.24.0': - optional: true - - '@rollup/rollup-linux-arm-gnueabihf@4.24.0': - optional: true - - '@rollup/rollup-linux-arm-musleabihf@4.24.0': - optional: true - - '@rollup/rollup-linux-arm64-gnu@4.24.0': - optional: true - - '@rollup/rollup-linux-arm64-musl@4.24.0': - optional: true - - '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': - optional: true - - '@rollup/rollup-linux-riscv64-gnu@4.24.0': - optional: true - - '@rollup/rollup-linux-s390x-gnu@4.24.0': - optional: true - - '@rollup/rollup-linux-x64-gnu@4.24.0': - optional: true - - '@rollup/rollup-linux-x64-musl@4.24.0': - optional: true - - '@rollup/rollup-win32-arm64-msvc@4.24.0': - optional: true - - '@rollup/rollup-win32-ia32-msvc@4.24.0': - optional: true - - '@rollup/rollup-win32-x64-msvc@4.24.0': - optional: true - - '@sec-ant/readable-stream@0.4.1': {} - - '@shikijs/core@1.22.0': - dependencies: - '@shikijs/engine-javascript': 1.22.0 - '@shikijs/engine-oniguruma': 1.22.0 - '@shikijs/types': 1.22.0 - '@shikijs/vscode-textmate': 9.3.0 - '@types/hast': 3.0.4 - hast-util-to-html: 9.0.3 - - '@shikijs/engine-javascript@1.22.0': - dependencies: - '@shikijs/types': 1.22.0 - '@shikijs/vscode-textmate': 9.3.0 - oniguruma-to-js: 0.4.3 - - '@shikijs/engine-oniguruma@1.22.0': - dependencies: - '@shikijs/types': 1.22.0 - '@shikijs/vscode-textmate': 9.3.0 - - '@shikijs/transformers@1.22.0': - dependencies: - shiki: 1.22.0 - - '@shikijs/types@1.22.0': - dependencies: - '@shikijs/vscode-textmate': 9.3.0 - '@types/hast': 3.0.4 - - '@shikijs/vscode-textmate@9.3.0': {} - - '@shuding/opentype.js@1.4.0-beta.0': - dependencies: - fflate: 0.7.4 - string.prototype.codepointat: 0.2.1 - - '@sindresorhus/is@4.6.0': {} - - '@sindresorhus/merge-streams@2.3.0': {} - - '@sindresorhus/merge-streams@4.0.0': {} - - '@socket.io/component-emitter@3.1.2': {} - - '@stylistic/eslint-plugin@2.9.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)': - dependencies: - '@typescript-eslint/utils': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - eslint: 9.13.0(jiti@2.3.3) - eslint-visitor-keys: 4.1.0 - espree: 10.2.0 - estraverse: 5.3.0 - picomatch: 4.0.2 - transitivePeerDependencies: - - supports-color - - typescript - - '@swc/helpers@0.5.13': - dependencies: - tslib: 2.8.0 - - '@tailwindcss/aspect-ratio@0.4.2(tailwindcss@3.4.14)': - dependencies: - tailwindcss: 3.4.14 - - '@tailwindcss/container-queries@0.1.1(tailwindcss@3.4.14)': - dependencies: - tailwindcss: 3.4.14 - - '@tailwindcss/forms@0.5.9(tailwindcss@3.4.14)': - dependencies: - mini-svg-data-uri: 1.4.4 - tailwindcss: 3.4.14 - - '@tailwindcss/typography@0.5.15(tailwindcss@3.4.14)': - dependencies: - lodash.castarray: 4.4.0 - lodash.isplainobject: 4.0.6 - lodash.merge: 4.6.2 - postcss-selector-parser: 6.0.10 - tailwindcss: 3.4.14 - - '@tanstack/virtual-core@3.10.8': {} - - '@tanstack/vue-virtual@3.10.8(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@tanstack/virtual-core': 3.10.8 - vue: 3.5.12(typescript@5.6.3) - - '@trysound/sax@0.2.0': {} - - '@types/debug@4.1.12': - dependencies: - '@types/ms': 0.7.34 - - '@types/estree@1.0.6': {} - - '@types/hast@3.0.4': - dependencies: - '@types/unist': 3.0.3 - - '@types/http-proxy@1.17.15': - dependencies: - '@types/node': 22.7.7 - - '@types/json-schema@7.0.15': {} - - '@types/mdast@4.0.4': - dependencies: - '@types/unist': 3.0.3 - - '@types/ms@0.7.34': {} - - '@types/node@22.7.7': - dependencies: - undici-types: 6.19.8 - - '@types/normalize-package-data@2.4.4': {} - - '@types/resolve@1.20.2': {} - - '@types/unist@2.0.11': {} - - '@types/unist@3.0.3': {} - - '@types/web-bluetooth@0.0.20': {} - - '@typescript-eslint/eslint-plugin@8.10.0(@typescript-eslint/parser@8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3))(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)': - dependencies: - '@eslint-community/regexpp': 4.11.1 - '@typescript-eslint/parser': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@typescript-eslint/scope-manager': 8.10.0 - '@typescript-eslint/type-utils': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@typescript-eslint/utils': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - '@typescript-eslint/visitor-keys': 8.10.0 - eslint: 9.13.0(jiti@2.3.3) - graphemer: 1.4.0 - ignore: 5.3.2 - natural-compare: 1.4.0 - ts-api-utils: 1.3.0(typescript@5.6.3) - optionalDependencies: - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/parser@8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)': - dependencies: - '@typescript-eslint/scope-manager': 8.10.0 - '@typescript-eslint/types': 8.10.0 - '@typescript-eslint/typescript-estree': 8.10.0(typescript@5.6.3) - '@typescript-eslint/visitor-keys': 8.10.0 - debug: 4.3.7 - eslint: 9.13.0(jiti@2.3.3) - optionalDependencies: - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/scope-manager@8.10.0': - dependencies: - '@typescript-eslint/types': 8.10.0 - '@typescript-eslint/visitor-keys': 8.10.0 - - '@typescript-eslint/type-utils@8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)': - dependencies: - '@typescript-eslint/typescript-estree': 8.10.0(typescript@5.6.3) - '@typescript-eslint/utils': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - debug: 4.3.7 - ts-api-utils: 1.3.0(typescript@5.6.3) - optionalDependencies: - typescript: 5.6.3 - transitivePeerDependencies: - - eslint - - supports-color - - '@typescript-eslint/types@8.10.0': {} - - '@typescript-eslint/typescript-estree@8.10.0(typescript@5.6.3)': - dependencies: - '@typescript-eslint/types': 8.10.0 - '@typescript-eslint/visitor-keys': 8.10.0 - debug: 4.3.7 - fast-glob: 3.3.2 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.6.3) - optionalDependencies: - typescript: 5.6.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/utils@8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3)': - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@2.3.3)) - '@typescript-eslint/scope-manager': 8.10.0 - '@typescript-eslint/types': 8.10.0 - '@typescript-eslint/typescript-estree': 8.10.0(typescript@5.6.3) - eslint: 9.13.0(jiti@2.3.3) - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/visitor-keys@8.10.0': - dependencies: - '@typescript-eslint/types': 8.10.0 - eslint-visitor-keys: 3.4.3 - - '@ungap/structured-clone@1.2.0': {} - - '@unhead/dom@1.11.10': - dependencies: - '@unhead/schema': 1.11.10 - '@unhead/shared': 1.11.10 - - '@unhead/schema@1.11.10': - dependencies: - hookable: 5.5.3 - zhead: 2.2.4 - - '@unhead/shared@1.11.10': - dependencies: - '@unhead/schema': 1.11.10 - - '@unhead/ssr@1.11.10': - dependencies: - '@unhead/schema': 1.11.10 - '@unhead/shared': 1.11.10 - - '@unhead/vue@1.11.10(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@unhead/schema': 1.11.10 - '@unhead/shared': 1.11.10 - defu: 6.1.4 - hookable: 5.5.3 - unhead: 1.11.10 - vue: 3.5.12(typescript@5.6.3) - - '@unocss/core@0.63.4': {} - - '@unocss/extractor-arbitrary-variants@0.63.4': - dependencies: - '@unocss/core': 0.63.4 - - '@unocss/preset-mini@0.63.4': - dependencies: - '@unocss/core': 0.63.4 - '@unocss/extractor-arbitrary-variants': 0.63.4 - '@unocss/rule-utils': 0.63.4 - - '@unocss/preset-wind@0.63.4': - dependencies: - '@unocss/core': 0.63.4 - '@unocss/preset-mini': 0.63.4 - '@unocss/rule-utils': 0.63.4 - - '@unocss/rule-utils@0.63.4': - dependencies: - '@unocss/core': 0.63.4 - magic-string: 0.30.12 - - '@vercel/nft@0.26.5': - dependencies: - '@mapbox/node-pre-gyp': 1.0.11 - '@rollup/pluginutils': 4.2.1 - acorn: 8.12.1 - acorn-import-attributes: 1.9.5(acorn@8.12.1) - async-sema: 3.1.1 - bindings: 1.5.0 - estree-walker: 2.0.2 - glob: 7.2.3 - graceful-fs: 4.2.11 - micromatch: 4.0.8 - node-gyp-build: 4.8.2 - resolve-from: 5.0.0 - transitivePeerDependencies: - - encoding - - supports-color - - '@vitejs/plugin-vue-jsx@4.0.1(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@babel/core': 7.25.8 - '@babel/plugin-transform-typescript': 7.25.7(@babel/core@7.25.8) - '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.25.8) - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - vue: 3.5.12(typescript@5.6.3) - transitivePeerDependencies: - - supports-color - - '@vitejs/plugin-vue@5.1.4(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3))': - dependencies: - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - vue: 3.5.12(typescript@5.6.3) - - '@volar/language-core@2.4.6': - dependencies: - '@volar/source-map': 2.4.6 - - '@volar/source-map@2.4.6': {} - - '@volar/typescript@2.4.6': - dependencies: - '@volar/language-core': 2.4.6 - path-browserify: 1.0.1 - vscode-uri: 3.0.8 - - '@voxpelli/config-array-find-files@1.2.1(@eslint/config-array@0.18.0)': - dependencies: - '@eslint/config-array': 0.18.0 - '@nodelib/fs.walk': 2.0.0 - - '@vue-macros/common@1.15.0(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@babel/types': 7.25.8 - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - '@vue/compiler-sfc': 3.5.12 - ast-kit: 1.3.0 - local-pkg: 0.5.0 - magic-string-ast: 0.6.2 - optionalDependencies: - vue: 3.5.12(typescript@5.6.3) - transitivePeerDependencies: - - rollup - - '@vue/babel-helper-vue-transform-on@1.2.5': {} - - '@vue/babel-plugin-jsx@1.2.5(@babel/core@7.25.8)': - dependencies: - '@babel/helper-module-imports': 7.25.7 - '@babel/helper-plugin-utils': 7.25.7 - '@babel/plugin-syntax-jsx': 7.25.7(@babel/core@7.25.8) - '@babel/template': 7.25.7 - '@babel/traverse': 7.25.7 - '@babel/types': 7.25.8 - '@vue/babel-helper-vue-transform-on': 1.2.5 - '@vue/babel-plugin-resolve-type': 1.2.5(@babel/core@7.25.8) - html-tags: 3.3.1 - svg-tags: 1.0.0 - optionalDependencies: - '@babel/core': 7.25.8 - transitivePeerDependencies: - - supports-color - - '@vue/babel-plugin-resolve-type@1.2.5(@babel/core@7.25.8)': - dependencies: - '@babel/code-frame': 7.25.7 - '@babel/core': 7.25.8 - '@babel/helper-module-imports': 7.25.7 - '@babel/helper-plugin-utils': 7.25.7 - '@babel/parser': 7.25.8 - '@vue/compiler-sfc': 3.5.12 - transitivePeerDependencies: - - supports-color - - '@vue/compiler-core@3.5.12': - dependencies: - '@babel/parser': 7.25.8 - '@vue/shared': 3.5.12 - entities: 4.5.0 - estree-walker: 2.0.2 - source-map-js: 1.2.1 - - '@vue/compiler-dom@3.5.12': - dependencies: - '@vue/compiler-core': 3.5.12 - '@vue/shared': 3.5.12 - - '@vue/compiler-sfc@3.5.12': - dependencies: - '@babel/parser': 7.25.8 - '@vue/compiler-core': 3.5.12 - '@vue/compiler-dom': 3.5.12 - '@vue/compiler-ssr': 3.5.12 - '@vue/shared': 3.5.12 - estree-walker: 2.0.2 - magic-string: 0.30.12 - postcss: 8.4.47 - source-map-js: 1.2.1 - - '@vue/compiler-ssr@3.5.12': - dependencies: - '@vue/compiler-dom': 3.5.12 - '@vue/shared': 3.5.12 - - '@vue/compiler-vue2@2.7.16': - dependencies: - de-indent: 1.0.2 - he: 1.2.0 - - '@vue/devtools-api@6.6.4': {} - - '@vue/devtools-core@7.4.4(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@vue/devtools-kit': 7.4.4 - '@vue/devtools-shared': 7.5.2 - mitt: 3.0.1 - nanoid: 3.3.7 - pathe: 1.1.2 - vite-hot-client: 0.2.3(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - vue: 3.5.12(typescript@5.6.3) - transitivePeerDependencies: - - vite - - '@vue/devtools-kit@7.4.4': - dependencies: - '@vue/devtools-shared': 7.5.2 - birpc: 0.2.19 - hookable: 5.5.3 - mitt: 3.0.1 - perfect-debounce: 1.0.0 - speakingurl: 14.0.1 - superjson: 2.2.1 - - '@vue/devtools-shared@7.5.2': - dependencies: - rfdc: 1.4.1 - - '@vue/language-core@2.1.6(typescript@5.6.3)': - dependencies: - '@volar/language-core': 2.4.6 - '@vue/compiler-dom': 3.5.12 - '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.12 - computeds: 0.0.1 - minimatch: 9.0.5 - muggle-string: 0.4.1 - path-browserify: 1.0.1 - optionalDependencies: - typescript: 5.6.3 - - '@vue/reactivity@3.5.12': - dependencies: - '@vue/shared': 3.5.12 - - '@vue/runtime-core@3.5.12': - dependencies: - '@vue/reactivity': 3.5.12 - '@vue/shared': 3.5.12 - - '@vue/runtime-dom@3.5.12': - dependencies: - '@vue/reactivity': 3.5.12 - '@vue/runtime-core': 3.5.12 - '@vue/shared': 3.5.12 - csstype: 3.1.3 - - '@vue/server-renderer@3.5.12(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@vue/compiler-ssr': 3.5.12 - '@vue/shared': 3.5.12 - vue: 3.5.12(typescript@5.6.3) - - '@vue/shared@3.5.12': {} - - '@vueuse/core@11.1.0(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@types/web-bluetooth': 0.0.20 - '@vueuse/metadata': 11.1.0 - '@vueuse/shared': 11.1.0(vue@3.5.12(typescript@5.6.3)) - vue-demi: 0.14.10(vue@3.5.12(typescript@5.6.3)) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - - '@vueuse/head@2.0.0(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@unhead/dom': 1.11.10 - '@unhead/schema': 1.11.10 - '@unhead/ssr': 1.11.10 - '@unhead/vue': 1.11.10(vue@3.5.12(typescript@5.6.3)) - vue: 3.5.12(typescript@5.6.3) - - '@vueuse/integrations@11.1.0(fuse.js@7.0.0)(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@vueuse/core': 11.1.0(vue@3.5.12(typescript@5.6.3)) - '@vueuse/shared': 11.1.0(vue@3.5.12(typescript@5.6.3)) - vue-demi: 0.14.10(vue@3.5.12(typescript@5.6.3)) - optionalDependencies: - fuse.js: 7.0.0 - transitivePeerDependencies: - - '@vue/composition-api' - - vue - - '@vueuse/math@11.1.0(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@vueuse/shared': 11.1.0(vue@3.5.12(typescript@5.6.3)) - vue-demi: 0.14.10(vue@3.5.12(typescript@5.6.3)) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - - '@vueuse/metadata@11.1.0': {} - - '@vueuse/nuxt@11.1.0(magicast@0.3.5)(nuxt@3.13.2(@parcel/watcher@2.4.1)(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)))(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3))': - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@vueuse/core': 11.1.0(vue@3.5.12(typescript@5.6.3)) - '@vueuse/metadata': 11.1.0 - local-pkg: 0.5.0 - nuxt: 3.13.2(@parcel/watcher@2.4.1)(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)) - vue-demi: 0.14.10(vue@3.5.12(typescript@5.6.3)) - transitivePeerDependencies: - - '@vue/composition-api' - - magicast - - rollup - - supports-color - - vue - - webpack-sources - - '@vueuse/shared@11.1.0(vue@3.5.12(typescript@5.6.3))': - dependencies: - vue-demi: 0.14.10(vue@3.5.12(typescript@5.6.3)) - transitivePeerDependencies: - - '@vue/composition-api' - - vue - - abbrev@1.1.1: {} - - abort-controller@3.0.0: - dependencies: - event-target-shim: 5.0.1 - - accepts@1.3.8: - dependencies: - mime-types: 2.1.35 - negotiator: 0.6.3 - - acorn-import-attributes@1.9.5(acorn@8.12.1): - dependencies: - acorn: 8.12.1 - - acorn-jsx@5.3.2(acorn@8.13.0): - dependencies: - acorn: 8.13.0 - - acorn@8.12.1: {} - - acorn@8.13.0: {} - - agent-base@6.0.2: - dependencies: - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - ajv@6.12.6: - dependencies: - fast-deep-equal: 3.1.3 - fast-json-stable-stringify: 2.1.0 - json-schema-traverse: 0.4.1 - uri-js: 4.4.1 - - ansi-colors@4.1.3: {} - - ansi-escapes@4.3.2: - dependencies: - type-fest: 0.21.3 - - ansi-regex@5.0.1: {} - - ansi-regex@6.1.0: {} - - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - - ansi-styles@4.3.0: - dependencies: - color-convert: 2.0.1 - - ansi-styles@6.2.1: {} - - any-promise@1.3.0: {} - - anymatch@3.1.3: - dependencies: - normalize-path: 3.0.0 - picomatch: 2.3.1 - - aproba@2.0.0: {} - - archiver-utils@5.0.2: - dependencies: - glob: 10.4.5 - graceful-fs: 4.2.11 - is-stream: 2.0.1 - lazystream: 1.0.1 - lodash: 4.17.21 - normalize-path: 3.0.0 - readable-stream: 4.5.2 - - archiver@7.0.1: - dependencies: - archiver-utils: 5.0.2 - async: 3.2.6 - buffer-crc32: 1.0.0 - readable-stream: 4.5.2 - readdir-glob: 1.1.3 - tar-stream: 3.1.7 - zip-stream: 6.0.1 - - are-docs-informative@0.0.2: {} - - are-we-there-yet@2.0.0: - dependencies: - delegates: 1.0.0 - readable-stream: 3.6.2 - - arg@5.0.2: {} - - argparse@2.0.1: {} - - ast-kit@1.3.0: - dependencies: - '@babel/parser': 7.25.8 - pathe: 1.1.2 - - ast-walker-scope@0.6.2: - dependencies: - '@babel/parser': 7.25.8 - ast-kit: 1.3.0 - - async-sema@3.1.1: {} - - async@2.6.4: - dependencies: - lodash: 4.17.21 - - async@3.2.6: {} - - at-least-node@1.0.0: {} - - autoprefixer@10.4.20(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - caniuse-lite: 1.0.30001669 - fraction.js: 4.3.7 - normalize-range: 0.1.2 - picocolors: 1.1.1 - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - b4a@1.6.7: {} - - bail@2.0.2: {} - - balanced-match@1.0.2: {} - - bare-events@2.5.0: - optional: true - - bare-fs@2.3.5: - dependencies: - bare-events: 2.5.0 - bare-path: 2.1.3 - bare-stream: 2.3.1 - optional: true - - bare-os@2.4.4: - optional: true - - bare-path@2.1.3: - dependencies: - bare-os: 2.4.4 - optional: true - - bare-stream@2.3.1: - dependencies: - streamx: 2.20.1 - optional: true - - base64-js@0.0.8: {} - - base64-js@1.5.1: {} - - binary-extensions@2.3.0: {} - - bindings@1.5.0: - dependencies: - file-uri-to-path: 1.0.0 - - birpc@0.2.19: {} - - bl@4.1.0: - dependencies: - buffer: 5.7.1 - inherits: 2.0.4 - readable-stream: 3.6.2 - optional: true - - blob-to-buffer@1.2.9: {} - - boolbase@1.0.0: {} - - brace-expansion@1.1.11: - dependencies: - balanced-match: 1.0.2 - concat-map: 0.0.1 - - brace-expansion@2.0.1: - dependencies: - balanced-match: 1.0.2 - - braces@3.0.3: - dependencies: - fill-range: 7.1.1 - - brotli@1.3.3: - dependencies: - base64-js: 1.5.1 - - browserslist@4.24.0: - dependencies: - caniuse-lite: 1.0.30001669 - electron-to-chromium: 1.5.41 - node-releases: 2.0.18 - update-browserslist-db: 1.1.1(browserslist@4.24.0) - - buffer-crc32@1.0.0: {} - - buffer-from@1.1.2: {} - - buffer@5.7.1: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - optional: true - - buffer@6.0.3: - dependencies: - base64-js: 1.5.1 - ieee754: 1.2.1 - - builtin-modules@3.3.0: {} - - bundle-name@4.1.0: - dependencies: - run-applescript: 7.0.0 - - bundle-require@5.0.0(esbuild@0.24.0): - dependencies: - esbuild: 0.24.0 - load-tsconfig: 0.2.5 - - c12@1.11.2(magicast@0.3.5): - dependencies: - chokidar: 3.6.0 - confbox: 0.1.8 - defu: 6.1.4 - dotenv: 16.4.5 - giget: 1.2.3 - jiti: 1.21.6 - mlly: 1.7.2 - ohash: 1.1.4 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - rc9: 2.1.2 - optionalDependencies: - magicast: 0.3.5 - - cac@6.7.14: {} - - cache-content-type@1.0.1: - dependencies: - mime-types: 2.1.35 - ylru: 1.4.0 - - callsites@3.1.0: {} - - camelcase-css@2.0.1: {} - - camelize@1.0.1: {} - - caniuse-api@3.0.0: - dependencies: - browserslist: 4.24.0 - caniuse-lite: 1.0.30001669 - lodash.memoize: 4.1.2 - lodash.uniq: 4.5.0 - - caniuse-lite@1.0.30001669: {} - - ccount@2.0.1: {} - - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - - chalk@4.1.2: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - - chalk@5.3.0: {} - - changelogen@0.5.7(magicast@0.3.5): - dependencies: - c12: 1.11.2(magicast@0.3.5) - colorette: 2.0.20 - consola: 3.2.3 - convert-gitmoji: 0.1.5 - mri: 1.2.0 - node-fetch-native: 1.6.4 - ofetch: 1.4.1 - open: 10.1.0 - pathe: 1.1.2 - pkg-types: 1.2.1 - scule: 1.3.0 - semver: 7.6.3 - std-env: 3.7.0 - yaml: 2.6.0 - transitivePeerDependencies: - - magicast - - char-regex@1.0.2: {} - - character-entities-html4@2.1.0: {} - - character-entities-legacy@3.0.0: {} - - character-entities@2.0.2: {} - - character-reference-invalid@2.0.1: {} - - chokidar@3.6.0: - dependencies: - anymatch: 3.1.3 - braces: 3.0.3 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - - chokidar@4.0.1: - dependencies: - readdirp: 4.0.2 - - chownr@1.1.4: - optional: true - - chownr@2.0.0: {} - - chrome-launcher@1.1.2: - dependencies: - '@types/node': 22.7.7 - escape-string-regexp: 4.0.0 - is-wsl: 2.2.0 - lighthouse-logger: 2.0.1 - transitivePeerDependencies: - - supports-color - - ci-info@4.0.0: {} - - citty@0.1.6: - dependencies: - consola: 3.2.3 - - clean-regexp@1.0.0: - dependencies: - escape-string-regexp: 1.0.5 - - clear@0.1.0: {} - - clipboardy@4.0.0: - dependencies: - execa: 8.0.1 - is-wsl: 3.1.0 - is64bit: 2.0.0 - - cliui@8.0.1: - dependencies: - string-width: 4.2.3 - strip-ansi: 6.0.1 - wrap-ansi: 7.0.0 - - clone@2.1.2: {} - - cluster-key-slot@1.1.2: {} - - co@4.6.0: {} - - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - - color-convert@2.0.1: - dependencies: - color-name: 1.1.4 - - color-name@1.1.3: {} - - color-name@1.1.4: {} - - color-string@1.9.1: - dependencies: - color-name: 1.1.4 - simple-swizzle: 0.2.2 - optional: true - - color-support@1.1.3: {} - - color@4.2.3: - dependencies: - color-convert: 2.0.1 - color-string: 1.9.1 - optional: true - - colord@2.9.3: {} - - colorette@2.0.20: {} - - comma-separated-tokens@2.0.3: {} - - commander@2.20.3: {} - - commander@4.1.1: {} - - commander@6.2.1: {} - - commander@7.2.0: {} - - commander@8.3.0: {} - - comment-parser@1.4.1: {} - - commondir@1.0.1: {} - - compatx@0.1.8: {} - - compress-commons@6.0.2: - dependencies: - crc-32: 1.2.2 - crc32-stream: 6.0.0 - is-stream: 2.0.1 - normalize-path: 3.0.0 - readable-stream: 4.5.2 - - computeds@0.0.1: {} - - concat-map@0.0.1: {} - - confbox@0.1.8: {} - - consola@3.2.3: {} - - console-control-strings@1.1.0: {} - - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - - content-type@1.0.5: {} - - convert-gitmoji@0.1.5: {} - - convert-source-map@2.0.0: {} - - cookie-es@1.2.2: {} - - cookies@0.9.1: - dependencies: - depd: 2.0.0 - keygrip: 1.1.0 - - copy-anything@3.0.5: - dependencies: - is-what: 4.1.16 - - core-js-compat@3.38.1: - dependencies: - browserslist: 4.24.0 - - core-util-is@1.0.3: {} - - crc-32@1.2.2: {} - - crc32-stream@6.0.0: - dependencies: - crc-32: 1.2.2 - readable-stream: 4.5.2 - - create-require@1.1.1: {} - - croner@8.1.2: {} - - cronstrue@2.50.0: {} - - cross-fetch@3.1.8: - dependencies: - node-fetch: 2.7.0 - transitivePeerDependencies: - - encoding - - cross-spawn@7.0.3: - dependencies: - path-key: 3.1.1 - shebang-command: 2.0.0 - which: 2.0.2 - - crossws@0.2.4: {} - - crossws@0.3.1: - dependencies: - uncrypto: 0.1.3 - - css-background-parser@0.1.0: {} - - css-box-shadow@1.0.0-3: {} - - css-color-keywords@1.0.0: {} - - css-declaration-sorter@7.2.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - - css-gradient-parser@0.0.16: {} - - css-select@5.1.0: - dependencies: - boolbase: 1.0.0 - css-what: 6.1.0 - domhandler: 5.0.3 - domutils: 3.1.0 - nth-check: 2.1.1 - - css-to-react-native@3.2.0: - dependencies: - camelize: 1.0.1 - css-color-keywords: 1.0.0 - postcss-value-parser: 4.2.0 - - css-tree@2.2.1: - dependencies: - mdn-data: 2.0.28 - source-map-js: 1.2.1 - - css-tree@2.3.1: - dependencies: - mdn-data: 2.0.30 - source-map-js: 1.2.1 - - css-tree@3.0.0: - dependencies: - mdn-data: 2.10.0 - source-map-js: 1.2.1 - - css-what@6.1.0: {} - - cssesc@3.0.0: {} - - cssfilter@0.0.10: - optional: true - - cssnano-preset-default@7.0.6(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - css-declaration-sorter: 7.2.0(postcss@8.4.47) - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-calc: 10.0.2(postcss@8.4.47) - postcss-colormin: 7.0.2(postcss@8.4.47) - postcss-convert-values: 7.0.4(postcss@8.4.47) - postcss-discard-comments: 7.0.3(postcss@8.4.47) - postcss-discard-duplicates: 7.0.1(postcss@8.4.47) - postcss-discard-empty: 7.0.0(postcss@8.4.47) - postcss-discard-overridden: 7.0.0(postcss@8.4.47) - postcss-merge-longhand: 7.0.4(postcss@8.4.47) - postcss-merge-rules: 7.0.4(postcss@8.4.47) - postcss-minify-font-values: 7.0.0(postcss@8.4.47) - postcss-minify-gradients: 7.0.0(postcss@8.4.47) - postcss-minify-params: 7.0.2(postcss@8.4.47) - postcss-minify-selectors: 7.0.4(postcss@8.4.47) - postcss-normalize-charset: 7.0.0(postcss@8.4.47) - postcss-normalize-display-values: 7.0.0(postcss@8.4.47) - postcss-normalize-positions: 7.0.0(postcss@8.4.47) - postcss-normalize-repeat-style: 7.0.0(postcss@8.4.47) - postcss-normalize-string: 7.0.0(postcss@8.4.47) - postcss-normalize-timing-functions: 7.0.0(postcss@8.4.47) - postcss-normalize-unicode: 7.0.2(postcss@8.4.47) - postcss-normalize-url: 7.0.0(postcss@8.4.47) - postcss-normalize-whitespace: 7.0.0(postcss@8.4.47) - postcss-ordered-values: 7.0.1(postcss@8.4.47) - postcss-reduce-initial: 7.0.2(postcss@8.4.47) - postcss-reduce-transforms: 7.0.0(postcss@8.4.47) - postcss-svgo: 7.0.1(postcss@8.4.47) - postcss-unique-selectors: 7.0.3(postcss@8.4.47) - - cssnano-utils@5.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - - cssnano@7.0.6(postcss@8.4.47): - dependencies: - cssnano-preset-default: 7.0.6(postcss@8.4.47) - lilconfig: 3.1.2 - postcss: 8.4.47 - - csso@5.0.5: - dependencies: - css-tree: 2.2.1 - - csstype@3.1.3: {} - - db0@0.1.4: {} - - de-indent@1.0.2: {} - - debug@2.6.9: - dependencies: - ms: 2.0.0 - - debug@3.2.7: - dependencies: - ms: 2.1.3 - - debug@4.3.7: - dependencies: - ms: 2.1.3 - - decode-named-character-reference@1.0.2: - dependencies: - character-entities: 2.0.2 - - decompress-response@6.0.0: - dependencies: - mimic-response: 3.1.0 - optional: true - - deep-equal@1.0.1: {} - - deep-extend@0.6.0: - optional: true - - deep-is@0.1.4: {} - - deepmerge@4.3.1: {} - - default-browser-id@5.0.0: {} - - default-browser@5.2.1: - dependencies: - bundle-name: 4.1.0 - default-browser-id: 5.0.0 - - define-lazy-prop@2.0.0: {} - - define-lazy-prop@3.0.0: {} - - defu@6.1.4: {} - - delegates@1.0.0: {} - - denque@2.1.0: {} - - depd@1.1.2: {} - - depd@2.0.0: {} - - dequal@2.0.3: {} - - destr@2.0.3: {} - - destroy@1.2.0: {} - - detab@3.0.2: {} - - detect-libc@1.0.3: {} - - detect-libc@2.0.3: {} - - devalue@5.1.1: {} - - devlop@1.1.0: - dependencies: - dequal: 2.0.3 - - dfa@1.2.0: {} - - didyoumean@1.2.2: {} - - diff@7.0.0: {} - - dlv@1.1.3: {} - - doctrine@3.0.0: - dependencies: - esutils: 2.0.3 - - dom-serializer@2.0.0: - dependencies: - domelementtype: 2.3.0 - domhandler: 5.0.3 - entities: 4.5.0 - - domelementtype@2.3.0: {} - - domhandler@5.0.3: - dependencies: - domelementtype: 2.3.0 - - domutils@3.1.0: - dependencies: - dom-serializer: 2.0.0 - domelementtype: 2.3.0 - domhandler: 5.0.3 - - dot-prop@8.0.2: - dependencies: - type-fest: 3.13.1 - - dotenv@16.4.5: {} - - duplexer@0.1.2: {} - - eastasianwidth@0.2.0: {} - - ee-first@1.1.1: {} - - electron-to-chromium@1.5.41: {} - - emoji-regex@10.4.0: {} - - emoji-regex@8.0.0: {} - - emoji-regex@9.2.2: {} - - emojilib@2.4.0: {} - - emoticon@4.1.0: {} - - encodeurl@1.0.2: {} - - encodeurl@2.0.0: {} - - end-of-stream@1.4.4: - dependencies: - once: 1.4.0 - optional: true - - engine.io-client@6.6.1: - dependencies: - '@socket.io/component-emitter': 3.1.2 - debug: 4.3.7 - engine.io-parser: 5.2.3 - ws: 8.17.1 - xmlhttprequest-ssl: 2.1.1 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - engine.io-parser@5.2.3: {} - - enhanced-resolve@5.17.1: - dependencies: - graceful-fs: 4.2.11 - tapable: 2.2.1 - - entities@4.5.0: {} - - error-ex@1.3.2: - dependencies: - is-arrayish: 0.2.1 - - error-stack-parser-es@0.1.5: {} - - errx@0.1.0: {} - - es-module-lexer@1.5.4: {} - - esbuild@0.20.2: - optionalDependencies: - '@esbuild/aix-ppc64': 0.20.2 - '@esbuild/android-arm': 0.20.2 - '@esbuild/android-arm64': 0.20.2 - '@esbuild/android-x64': 0.20.2 - '@esbuild/darwin-arm64': 0.20.2 - '@esbuild/darwin-x64': 0.20.2 - '@esbuild/freebsd-arm64': 0.20.2 - '@esbuild/freebsd-x64': 0.20.2 - '@esbuild/linux-arm': 0.20.2 - '@esbuild/linux-arm64': 0.20.2 - '@esbuild/linux-ia32': 0.20.2 - '@esbuild/linux-loong64': 0.20.2 - '@esbuild/linux-mips64el': 0.20.2 - '@esbuild/linux-ppc64': 0.20.2 - '@esbuild/linux-riscv64': 0.20.2 - '@esbuild/linux-s390x': 0.20.2 - '@esbuild/linux-x64': 0.20.2 - '@esbuild/netbsd-x64': 0.20.2 - '@esbuild/openbsd-x64': 0.20.2 - '@esbuild/sunos-x64': 0.20.2 - '@esbuild/win32-arm64': 0.20.2 - '@esbuild/win32-ia32': 0.20.2 - '@esbuild/win32-x64': 0.20.2 - - esbuild@0.21.5: - optionalDependencies: - '@esbuild/aix-ppc64': 0.21.5 - '@esbuild/android-arm': 0.21.5 - '@esbuild/android-arm64': 0.21.5 - '@esbuild/android-x64': 0.21.5 - '@esbuild/darwin-arm64': 0.21.5 - '@esbuild/darwin-x64': 0.21.5 - '@esbuild/freebsd-arm64': 0.21.5 - '@esbuild/freebsd-x64': 0.21.5 - '@esbuild/linux-arm': 0.21.5 - '@esbuild/linux-arm64': 0.21.5 - '@esbuild/linux-ia32': 0.21.5 - '@esbuild/linux-loong64': 0.21.5 - '@esbuild/linux-mips64el': 0.21.5 - '@esbuild/linux-ppc64': 0.21.5 - '@esbuild/linux-riscv64': 0.21.5 - '@esbuild/linux-s390x': 0.21.5 - '@esbuild/linux-x64': 0.21.5 - '@esbuild/netbsd-x64': 0.21.5 - '@esbuild/openbsd-x64': 0.21.5 - '@esbuild/sunos-x64': 0.21.5 - '@esbuild/win32-arm64': 0.21.5 - '@esbuild/win32-ia32': 0.21.5 - '@esbuild/win32-x64': 0.21.5 - - esbuild@0.23.1: - optionalDependencies: - '@esbuild/aix-ppc64': 0.23.1 - '@esbuild/android-arm': 0.23.1 - '@esbuild/android-arm64': 0.23.1 - '@esbuild/android-x64': 0.23.1 - '@esbuild/darwin-arm64': 0.23.1 - '@esbuild/darwin-x64': 0.23.1 - '@esbuild/freebsd-arm64': 0.23.1 - '@esbuild/freebsd-x64': 0.23.1 - '@esbuild/linux-arm': 0.23.1 - '@esbuild/linux-arm64': 0.23.1 - '@esbuild/linux-ia32': 0.23.1 - '@esbuild/linux-loong64': 0.23.1 - '@esbuild/linux-mips64el': 0.23.1 - '@esbuild/linux-ppc64': 0.23.1 - '@esbuild/linux-riscv64': 0.23.1 - '@esbuild/linux-s390x': 0.23.1 - '@esbuild/linux-x64': 0.23.1 - '@esbuild/netbsd-x64': 0.23.1 - '@esbuild/openbsd-arm64': 0.23.1 - '@esbuild/openbsd-x64': 0.23.1 - '@esbuild/sunos-x64': 0.23.1 - '@esbuild/win32-arm64': 0.23.1 - '@esbuild/win32-ia32': 0.23.1 - '@esbuild/win32-x64': 0.23.1 - - esbuild@0.24.0: - optionalDependencies: - '@esbuild/aix-ppc64': 0.24.0 - '@esbuild/android-arm': 0.24.0 - '@esbuild/android-arm64': 0.24.0 - '@esbuild/android-x64': 0.24.0 - '@esbuild/darwin-arm64': 0.24.0 - '@esbuild/darwin-x64': 0.24.0 - '@esbuild/freebsd-arm64': 0.24.0 - '@esbuild/freebsd-x64': 0.24.0 - '@esbuild/linux-arm': 0.24.0 - '@esbuild/linux-arm64': 0.24.0 - '@esbuild/linux-ia32': 0.24.0 - '@esbuild/linux-loong64': 0.24.0 - '@esbuild/linux-mips64el': 0.24.0 - '@esbuild/linux-ppc64': 0.24.0 - '@esbuild/linux-riscv64': 0.24.0 - '@esbuild/linux-s390x': 0.24.0 - '@esbuild/linux-x64': 0.24.0 - '@esbuild/netbsd-x64': 0.24.0 - '@esbuild/openbsd-arm64': 0.24.0 - '@esbuild/openbsd-x64': 0.24.0 - '@esbuild/sunos-x64': 0.24.0 - '@esbuild/win32-arm64': 0.24.0 - '@esbuild/win32-ia32': 0.24.0 - '@esbuild/win32-x64': 0.24.0 - - escalade@3.2.0: {} - - escape-html@1.0.3: {} - - escape-string-regexp@1.0.5: {} - - escape-string-regexp@4.0.0: {} - - escape-string-regexp@5.0.0: {} - - eslint-config-flat-gitignore@0.3.0(eslint@9.13.0(jiti@2.3.3)): - dependencies: - '@eslint/compat': 1.2.1(eslint@9.13.0(jiti@2.3.3)) - eslint: 9.13.0(jiti@2.3.3) - find-up-simple: 1.0.0 - - eslint-flat-config-utils@0.4.0: - dependencies: - pathe: 1.1.2 - - eslint-import-resolver-node@0.3.9: - dependencies: - debug: 3.2.7 - is-core-module: 2.15.1 - resolve: 1.22.8 - transitivePeerDependencies: - - supports-color - - eslint-plugin-import-x@4.3.1(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3): - dependencies: - '@typescript-eslint/utils': 8.10.0(eslint@9.13.0(jiti@2.3.3))(typescript@5.6.3) - debug: 4.3.7 - doctrine: 3.0.0 - eslint: 9.13.0(jiti@2.3.3) - eslint-import-resolver-node: 0.3.9 - get-tsconfig: 4.8.1 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.3 - stable-hash: 0.0.4 - tslib: 2.8.0 - transitivePeerDependencies: - - supports-color - - typescript - - eslint-plugin-jsdoc@50.4.3(eslint@9.13.0(jiti@2.3.3)): - dependencies: - '@es-joy/jsdoccomment': 0.49.0 - are-docs-informative: 0.0.2 - comment-parser: 1.4.1 - debug: 4.3.7 - escape-string-regexp: 4.0.0 - eslint: 9.13.0(jiti@2.3.3) - espree: 10.2.0 - esquery: 1.6.0 - parse-imports: 2.2.1 - semver: 7.6.3 - spdx-expression-parse: 4.0.0 - synckit: 0.9.2 - transitivePeerDependencies: - - supports-color - - eslint-plugin-regexp@2.6.0(eslint@9.13.0(jiti@2.3.3)): - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@2.3.3)) - '@eslint-community/regexpp': 4.11.1 - comment-parser: 1.4.1 - eslint: 9.13.0(jiti@2.3.3) - jsdoc-type-pratt-parser: 4.1.0 - refa: 0.12.1 - regexp-ast-analysis: 0.7.1 - scslre: 0.3.0 - - eslint-plugin-unicorn@56.0.0(eslint@9.13.0(jiti@2.3.3)): - dependencies: - '@babel/helper-validator-identifier': 7.25.7 - '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@2.3.3)) - ci-info: 4.0.0 - clean-regexp: 1.0.0 - core-js-compat: 3.38.1 - eslint: 9.13.0(jiti@2.3.3) - esquery: 1.6.0 - globals: 15.11.0 - indent-string: 4.0.0 - is-builtin-module: 3.2.1 - jsesc: 3.0.2 - pluralize: 8.0.0 - read-pkg-up: 7.0.1 - regexp-tree: 0.1.27 - regjsparser: 0.10.0 - semver: 7.6.3 - strip-indent: 3.0.0 - - eslint-plugin-vue@9.29.1(eslint@9.13.0(jiti@2.3.3)): - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@2.3.3)) - eslint: 9.13.0(jiti@2.3.3) - globals: 13.24.0 - natural-compare: 1.4.0 - nth-check: 2.1.1 - postcss-selector-parser: 6.1.2 - semver: 7.6.3 - vue-eslint-parser: 9.4.3(eslint@9.13.0(jiti@2.3.3)) - xml-name-validator: 4.0.0 - transitivePeerDependencies: - - supports-color - - eslint-scope@7.2.2: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - - eslint-scope@8.1.0: - dependencies: - esrecurse: 4.3.0 - estraverse: 5.3.0 - - eslint-typegen@0.3.2(eslint@9.13.0(jiti@2.3.3)): - dependencies: - eslint: 9.13.0(jiti@2.3.3) - json-schema-to-typescript-lite: 14.1.0 - ohash: 1.1.4 - - eslint-visitor-keys@3.4.3: {} - - eslint-visitor-keys@4.1.0: {} - - eslint@9.13.0(jiti@2.3.3): - dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@2.3.3)) - '@eslint-community/regexpp': 4.11.1 - '@eslint/config-array': 0.18.0 - '@eslint/core': 0.7.0 - '@eslint/eslintrc': 3.1.0 - '@eslint/js': 9.13.0 - '@eslint/plugin-kit': 0.2.1 - '@humanfs/node': 0.16.5 - '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.3.1 - '@types/estree': 1.0.6 - '@types/json-schema': 7.0.15 - ajv: 6.12.6 - chalk: 4.1.2 - cross-spawn: 7.0.3 - debug: 4.3.7 - escape-string-regexp: 4.0.0 - eslint-scope: 8.1.0 - eslint-visitor-keys: 4.1.0 - espree: 10.2.0 - esquery: 1.6.0 - esutils: 2.0.3 - fast-deep-equal: 3.1.3 - file-entry-cache: 8.0.0 - find-up: 5.0.0 - glob-parent: 6.0.2 - ignore: 5.3.2 - imurmurhash: 0.1.4 - is-glob: 4.0.3 - json-stable-stringify-without-jsonify: 1.0.1 - lodash.merge: 4.6.2 - minimatch: 3.1.2 - natural-compare: 1.4.0 - optionator: 0.9.4 - text-table: 0.2.0 - optionalDependencies: - jiti: 2.3.3 - transitivePeerDependencies: - - supports-color - - espree@10.2.0: - dependencies: - acorn: 8.13.0 - acorn-jsx: 5.3.2(acorn@8.13.0) - eslint-visitor-keys: 4.1.0 - - espree@9.6.1: - dependencies: - acorn: 8.13.0 - acorn-jsx: 5.3.2(acorn@8.13.0) - eslint-visitor-keys: 3.4.3 - - esquery@1.6.0: - dependencies: - estraverse: 5.3.0 - - esrecurse@4.3.0: - dependencies: - estraverse: 5.3.0 - - estraverse@5.3.0: {} - - estree-walker@2.0.2: {} - - estree-walker@3.0.3: - dependencies: - '@types/estree': 1.0.6 - - esutils@2.0.3: {} - - etag@1.8.1: {} - - event-target-shim@5.0.1: {} - - events@3.3.0: {} - - execa@7.2.0: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 4.3.1 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.3.0 - onetime: 6.0.0 - signal-exit: 3.0.7 - strip-final-newline: 3.0.0 - - execa@8.0.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 8.0.1 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.3.0 - onetime: 6.0.0 - signal-exit: 4.1.0 - strip-final-newline: 3.0.0 - - execa@9.4.1: - dependencies: - '@sindresorhus/merge-streams': 4.0.0 - cross-spawn: 7.0.3 - figures: 6.1.0 - get-stream: 9.0.1 - human-signals: 8.0.0 - is-plain-obj: 4.1.0 - is-stream: 4.0.1 - npm-run-path: 6.0.0 - pretty-ms: 9.1.0 - signal-exit: 4.1.0 - strip-final-newline: 4.0.0 - yoctocolors: 2.1.1 - - expand-template@2.0.3: - optional: true - - extend@3.0.2: {} - - externality@1.0.2: - dependencies: - enhanced-resolve: 5.17.1 - mlly: 1.7.2 - pathe: 1.1.2 - ufo: 1.5.4 - - fast-deep-equal@3.1.3: {} - - fast-fifo@1.3.2: {} - - fast-glob@3.3.2: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.8 - - fast-json-stable-stringify@2.1.0: {} - - fast-levenshtein@2.0.6: {} - - fast-npm-meta@0.2.2: {} - - fastq@1.17.1: - dependencies: - reusify: 1.0.4 - - fdir@6.4.2(picomatch@4.0.2): - optionalDependencies: - picomatch: 4.0.2 - - fflate@0.7.4: {} - - figures@6.1.0: - dependencies: - is-unicode-supported: 2.1.0 - - file-entry-cache@8.0.0: - dependencies: - flat-cache: 4.0.1 - - file-uri-to-path@1.0.0: {} - - fill-range@7.1.1: - dependencies: - to-regex-range: 5.0.1 - - find-up-simple@1.0.0: {} - - find-up@4.1.0: - dependencies: - locate-path: 5.0.0 - path-exists: 4.0.0 - - find-up@5.0.0: - dependencies: - locate-path: 6.0.0 - path-exists: 4.0.0 - - find-up@7.0.0: - dependencies: - locate-path: 7.2.0 - path-exists: 5.0.0 - unicorn-magic: 0.1.0 - - flat-cache@4.0.1: - dependencies: - flatted: 3.3.1 - keyv: 4.5.4 - - flat@6.0.1: {} - - flatted@3.3.1: {} - - fontaine@0.5.0: - dependencies: - '@capsizecss/metrics': 2.2.0 - '@capsizecss/unpack': 2.3.0 - magic-regexp: 0.8.0 - magic-string: 0.30.12 - pathe: 1.1.2 - ufo: 1.5.4 - unplugin: 1.14.1 - transitivePeerDependencies: - - encoding - - webpack-sources - - fontkit@2.0.4: - dependencies: - '@swc/helpers': 0.5.13 - brotli: 1.3.3 - clone: 2.1.2 - dfa: 1.2.0 - fast-deep-equal: 3.1.3 - restructure: 3.0.2 - tiny-inflate: 1.0.3 - unicode-properties: 1.4.1 - unicode-trie: 2.0.0 - - foreground-child@3.3.0: - dependencies: - cross-spawn: 7.0.3 - signal-exit: 4.1.0 - - fraction.js@4.3.7: {} - - fresh@0.5.2: {} - - fs-constants@1.0.0: - optional: true - - fs-extra@11.2.0: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - - fs-extra@9.1.0: - dependencies: - at-least-node: 1.0.0 - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - - fs-minipass@2.1.0: - dependencies: - minipass: 3.3.6 - - fs.realpath@1.0.0: {} - - fsevents@2.3.3: - optional: true - - function-bind@1.1.2: {} - - fuse.js@7.0.0: {} - - gauge@3.0.2: - dependencies: - aproba: 2.0.0 - color-support: 1.1.3 - console-control-strings: 1.1.0 - has-unicode: 2.0.1 - object-assign: 4.1.1 - signal-exit: 3.0.7 - string-width: 4.2.3 - strip-ansi: 6.0.1 - wide-align: 1.1.5 - - gensync@1.0.0-beta.2: {} - - get-caller-file@2.0.5: {} - - get-port-please@3.1.2: {} - - get-stream@6.0.1: {} - - get-stream@8.0.1: {} - - get-stream@9.0.1: - dependencies: - '@sec-ant/readable-stream': 0.4.1 - is-stream: 4.0.1 - - get-tsconfig@4.8.1: - dependencies: - resolve-pkg-maps: 1.0.0 - - giget@1.2.3: - dependencies: - citty: 0.1.6 - consola: 3.2.3 - defu: 6.1.4 - node-fetch-native: 1.6.4 - nypm: 0.3.12 - ohash: 1.1.4 - pathe: 1.1.2 - tar: 6.2.1 - - git-config-path@2.0.0: {} - - git-up@7.0.0: - dependencies: - is-ssh: 1.4.0 - parse-url: 8.1.0 - - git-url-parse@15.0.0: - dependencies: - git-up: 7.0.0 - - github-from-package@0.0.0: - optional: true - - github-slugger@2.0.0: {} - - glob-parent@5.1.2: - dependencies: - is-glob: 4.0.3 - - glob-parent@6.0.2: - dependencies: - is-glob: 4.0.3 - - glob@10.4.5: - dependencies: - foreground-child: 3.3.0 - jackspeak: 3.4.3 - minimatch: 9.0.5 - minipass: 7.1.2 - package-json-from-dist: 1.0.1 - path-scurry: 1.11.1 - - glob@7.2.3: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 - - glob@8.1.0: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 - - global-directory@4.0.1: - dependencies: - ini: 4.1.1 - - globals@11.12.0: {} - - globals@13.24.0: - dependencies: - type-fest: 0.20.2 - - globals@14.0.0: {} - - globals@15.11.0: {} - - globby@14.0.2: - dependencies: - '@sindresorhus/merge-streams': 2.3.0 - fast-glob: 3.3.2 - ignore: 5.3.2 - path-type: 5.0.0 - slash: 5.1.0 - unicorn-magic: 0.1.0 - - graceful-fs@4.2.11: {} - - graphemer@1.4.0: {} - - gzip-size@7.0.0: - dependencies: - duplexer: 0.1.2 - - h3@1.13.0: - dependencies: - cookie-es: 1.2.2 - crossws: 0.3.1 - defu: 6.1.4 - destr: 2.0.3 - iron-webcrypto: 1.2.1 - ohash: 1.1.4 - radix3: 1.1.2 - ufo: 1.5.4 - uncrypto: 0.1.3 - unenv: 1.10.0 - - has-flag@3.0.0: {} - - has-flag@4.0.0: {} - - has-symbols@1.0.3: {} - - has-tostringtag@1.0.2: - dependencies: - has-symbols: 1.0.3 - - has-unicode@2.0.1: {} - - hash-sum@2.0.0: {} - - hasown@2.0.2: - dependencies: - function-bind: 1.1.2 - - hast-util-from-parse5@8.0.1: - dependencies: - '@types/hast': 3.0.4 - '@types/unist': 3.0.3 - devlop: 1.1.0 - hastscript: 8.0.0 - property-information: 6.5.0 - vfile: 6.0.3 - vfile-location: 5.0.3 - web-namespaces: 2.0.1 - - hast-util-heading-rank@3.0.0: - dependencies: - '@types/hast': 3.0.4 - - hast-util-is-element@3.0.0: - dependencies: - '@types/hast': 3.0.4 - - hast-util-parse-selector@4.0.0: - dependencies: - '@types/hast': 3.0.4 - - hast-util-raw@9.0.4: - dependencies: - '@types/hast': 3.0.4 - '@types/unist': 3.0.3 - '@ungap/structured-clone': 1.2.0 - hast-util-from-parse5: 8.0.1 - hast-util-to-parse5: 8.0.0 - html-void-elements: 3.0.0 - mdast-util-to-hast: 13.2.0 - parse5: 7.2.0 - unist-util-position: 5.0.0 - unist-util-visit: 5.0.0 - vfile: 6.0.3 - web-namespaces: 2.0.1 - zwitch: 2.0.4 - - hast-util-to-html@9.0.3: - dependencies: - '@types/hast': 3.0.4 - '@types/unist': 3.0.3 - ccount: 2.0.1 - comma-separated-tokens: 2.0.3 - hast-util-whitespace: 3.0.0 - html-void-elements: 3.0.0 - mdast-util-to-hast: 13.2.0 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - stringify-entities: 4.0.4 - zwitch: 2.0.4 - - hast-util-to-parse5@8.0.0: - dependencies: - '@types/hast': 3.0.4 - comma-separated-tokens: 2.0.3 - devlop: 1.1.0 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - web-namespaces: 2.0.1 - zwitch: 2.0.4 - - hast-util-to-string@3.0.1: - dependencies: - '@types/hast': 3.0.4 - - hast-util-whitespace@3.0.0: - dependencies: - '@types/hast': 3.0.4 - - hastscript@8.0.0: - dependencies: - '@types/hast': 3.0.4 - comma-separated-tokens: 2.0.3 - hast-util-parse-selector: 4.0.0 - property-information: 6.5.0 - space-separated-tokens: 2.0.2 - - he@1.2.0: {} - - hex-rgb@4.3.0: {} - - hookable@5.5.3: {} - - hosted-git-info@2.8.9: {} - - html-tags@3.3.1: {} - - html-void-elements@3.0.0: {} - - http-assert@1.5.0: - dependencies: - deep-equal: 1.0.1 - http-errors: 1.8.1 - - http-errors@1.6.3: - dependencies: - depd: 1.1.2 - inherits: 2.0.3 - setprototypeof: 1.1.0 - statuses: 1.5.0 - - http-errors@1.8.1: - dependencies: - depd: 1.1.2 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 1.5.0 - toidentifier: 1.0.1 - - http-errors@2.0.0: - dependencies: - depd: 2.0.0 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: 2.0.1 - toidentifier: 1.0.1 - - http-shutdown@1.2.2: {} - - https-proxy-agent@5.0.1: - dependencies: - agent-base: 6.0.2 - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - httpxy@0.1.5: {} - - human-signals@4.3.1: {} - - human-signals@5.0.0: {} - - human-signals@8.0.0: {} - - ieee754@1.2.1: {} - - ignore@5.3.2: {} - - image-meta@0.2.1: {} - - image-size@1.1.1: - dependencies: - queue: 6.0.2 - - import-fresh@3.3.0: - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - - impound@0.1.0(rollup@4.24.0): - dependencies: - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - mlly: 1.7.2 - pathe: 1.1.2 - unenv: 1.10.0 - unplugin: 1.14.1 - transitivePeerDependencies: - - rollup - - webpack-sources - - imurmurhash@0.1.4: {} - - indent-string@4.0.0: {} - - inflight@1.0.6: - dependencies: - once: 1.4.0 - wrappy: 1.0.2 - - inherits@2.0.3: {} - - inherits@2.0.4: {} - - ini@1.3.8: {} - - ini@4.1.1: {} - - ioredis@5.4.1: - dependencies: - '@ioredis/commands': 1.2.0 - cluster-key-slot: 1.1.2 - debug: 4.3.7 - denque: 2.1.0 - lodash.defaults: 4.2.0 - lodash.isarguments: 3.1.0 - redis-errors: 1.2.0 - redis-parser: 3.0.0 - standard-as-callback: 2.1.0 - transitivePeerDependencies: - - supports-color - - ipx@2.1.0(ioredis@5.4.1): - dependencies: - '@fastify/accept-negotiator': 1.1.0 - citty: 0.1.6 - consola: 3.2.3 - defu: 6.1.4 - destr: 2.0.3 - etag: 1.8.1 - h3: 1.13.0 - image-meta: 0.2.1 - listhen: 1.9.0 - ofetch: 1.4.1 - pathe: 1.1.2 - sharp: 0.32.6 - svgo: 3.3.2 - ufo: 1.5.4 - unstorage: 1.12.0(ioredis@5.4.1) - xss: 1.0.15 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/kv' - - idb-keyval - - ioredis - optional: true - - iron-webcrypto@1.2.1: {} - - is-absolute-url@4.0.1: {} - - is-alphabetical@2.0.1: {} - - is-alphanumerical@2.0.1: - dependencies: - is-alphabetical: 2.0.1 - is-decimal: 2.0.1 - - is-arrayish@0.2.1: {} - - is-arrayish@0.3.2: - optional: true - - is-binary-path@2.1.0: - dependencies: - binary-extensions: 2.3.0 - - is-builtin-module@3.2.1: - dependencies: - builtin-modules: 3.3.0 - - is-core-module@2.15.1: - dependencies: - hasown: 2.0.2 - - is-decimal@2.0.1: {} - - is-docker@2.2.1: {} - - is-docker@3.0.0: {} - - is-extglob@2.1.1: {} - - is-fullwidth-code-point@3.0.0: {} - - is-generator-function@1.0.10: - dependencies: - has-tostringtag: 1.0.2 - - is-glob@4.0.3: - dependencies: - is-extglob: 2.1.1 - - is-hexadecimal@2.0.1: {} - - is-inside-container@1.0.0: - dependencies: - is-docker: 3.0.0 - - is-installed-globally@1.0.0: - dependencies: - global-directory: 4.0.1 - is-path-inside: 4.0.0 - - is-module@1.0.0: {} - - is-number@7.0.0: {} - - is-path-inside@4.0.0: {} - - is-plain-obj@4.1.0: {} - - is-reference@1.2.1: - dependencies: - '@types/estree': 1.0.6 - - is-ssh@1.4.0: - dependencies: - protocols: 2.0.1 - - is-stream@2.0.1: {} - - is-stream@3.0.0: {} - - is-stream@4.0.1: {} - - is-unicode-supported@2.1.0: {} - - is-what@4.1.16: {} - - is-wsl@2.2.0: - dependencies: - is-docker: 2.2.1 - - is-wsl@3.1.0: - dependencies: - is-inside-container: 1.0.0 - - is64bit@2.0.0: - dependencies: - system-architecture: 0.1.0 - - isarray@1.0.0: {} - - isexe@2.0.0: {} - - jackspeak@3.4.3: - dependencies: - '@isaacs/cliui': 8.0.2 - optionalDependencies: - '@pkgjs/parseargs': 0.11.0 - - jiti@1.21.6: {} - - jiti@2.3.3: {} - - js-tokens@4.0.0: {} - - js-tokens@9.0.0: {} - - js-yaml@4.1.0: - dependencies: - argparse: 2.0.1 - - jsdoc-type-pratt-parser@4.1.0: {} - - jsesc@0.5.0: {} - - jsesc@3.0.2: {} - - json-buffer@3.0.1: {} - - json-parse-even-better-errors@2.3.1: {} - - json-schema-to-typescript-lite@14.1.0: - dependencies: - '@apidevtools/json-schema-ref-parser': 11.7.2 - '@types/json-schema': 7.0.15 - - json-schema-traverse@0.4.1: {} - - json-stable-stringify-without-jsonify@1.0.1: {} - - json5@2.2.3: {} - - jsonfile@6.1.0: - dependencies: - universalify: 2.0.1 - optionalDependencies: - graceful-fs: 4.2.11 - - keygrip@1.1.0: - dependencies: - tsscmp: 1.0.6 - - keyv@4.5.4: - dependencies: - json-buffer: 3.0.1 - - kleur@3.0.3: {} - - klona@2.0.6: {} - - knitwork@1.1.0: {} - - koa-compose@4.1.0: {} - - koa-convert@2.0.0: - dependencies: - co: 4.6.0 - koa-compose: 4.1.0 - - koa-send@5.0.1: - dependencies: - debug: 4.3.7 - http-errors: 1.8.1 - resolve-path: 1.4.0 - transitivePeerDependencies: - - supports-color - - koa-static@5.0.0: - dependencies: - debug: 3.2.7 - koa-send: 5.0.1 - transitivePeerDependencies: - - supports-color - - koa@2.15.3: - dependencies: - accepts: 1.3.8 - cache-content-type: 1.0.1 - content-disposition: 0.5.4 - content-type: 1.0.5 - cookies: 0.9.1 - debug: 4.3.7 - delegates: 1.0.0 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - fresh: 0.5.2 - http-assert: 1.5.0 - http-errors: 1.8.1 - is-generator-function: 1.0.10 - koa-compose: 4.1.0 - koa-convert: 2.0.0 - on-finished: 2.4.1 - only: 0.0.2 - parseurl: 1.3.3 - statuses: 1.5.0 - type-is: 1.6.18 - vary: 1.1.2 - transitivePeerDependencies: - - supports-color - - kolorist@1.8.0: {} - - launch-editor@2.9.1: - dependencies: - picocolors: 1.1.1 - shell-quote: 1.8.1 - - lazystream@1.0.1: - dependencies: - readable-stream: 2.3.8 - - levn@0.4.1: - dependencies: - prelude-ls: 1.2.1 - type-check: 0.4.0 - - lighthouse-logger@2.0.1: - dependencies: - debug: 2.6.9 - marky: 1.2.5 - transitivePeerDependencies: - - supports-color - - lilconfig@2.1.0: {} - - lilconfig@3.1.2: {} - - linebreak@1.1.0: - dependencies: - base64-js: 0.0.8 - unicode-trie: 2.0.0 - - lines-and-columns@1.2.4: {} - - listhen@1.9.0: - dependencies: - '@parcel/watcher': 2.4.1 - '@parcel/watcher-wasm': 2.4.1 - citty: 0.1.6 - clipboardy: 4.0.0 - consola: 3.2.3 - crossws: 0.3.1 - defu: 6.1.4 - get-port-please: 3.1.2 - h3: 1.13.0 - http-shutdown: 1.2.2 - jiti: 2.3.3 - mlly: 1.7.2 - node-forge: 1.3.1 - pathe: 1.1.2 - std-env: 3.7.0 - ufo: 1.5.4 - untun: 0.1.3 - uqr: 0.1.2 - - load-tsconfig@0.2.5: {} - - local-pkg@0.5.0: - dependencies: - mlly: 1.7.2 - pkg-types: 1.2.1 - - locate-path@5.0.0: - dependencies: - p-locate: 4.1.0 - - locate-path@6.0.0: - dependencies: - p-locate: 5.0.0 - - locate-path@7.2.0: - dependencies: - p-locate: 6.0.0 - - lodash.castarray@4.4.0: {} - - lodash.defaults@4.2.0: {} - - lodash.isarguments@3.1.0: {} - - lodash.isplainobject@4.0.6: {} - - lodash.memoize@4.1.2: {} - - lodash.merge@4.6.2: {} - - lodash.uniq@4.5.0: {} - - lodash@4.17.21: {} - - longest-streak@3.1.0: {} - - lru-cache@10.4.3: {} - - lru-cache@5.1.1: - dependencies: - yallist: 3.1.1 - - magic-regexp@0.8.0: - dependencies: - estree-walker: 3.0.3 - magic-string: 0.30.12 - mlly: 1.7.2 - regexp-tree: 0.1.27 - type-level-regexp: 0.1.17 - ufo: 1.5.4 - unplugin: 1.14.1 - transitivePeerDependencies: - - webpack-sources - - magic-string-ast@0.6.2: - dependencies: - magic-string: 0.30.12 - - magic-string@0.30.12: - dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 - - magicast@0.3.5: - dependencies: - '@babel/parser': 7.25.8 - '@babel/types': 7.25.8 - source-map-js: 1.2.1 - - make-dir@3.1.0: - dependencies: - semver: 6.3.1 - - markdown-table@3.0.3: {} - - marky@1.2.5: {} - - mdast-util-find-and-replace@3.0.1: - dependencies: - '@types/mdast': 4.0.4 - escape-string-regexp: 5.0.0 - unist-util-is: 6.0.0 - unist-util-visit-parents: 6.0.1 - - mdast-util-from-markdown@2.0.1: - dependencies: - '@types/mdast': 4.0.4 - '@types/unist': 3.0.3 - decode-named-character-reference: 1.0.2 - devlop: 1.1.0 - mdast-util-to-string: 4.0.0 - micromark: 4.0.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-decode-string: 2.0.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - unist-util-stringify-position: 4.0.0 - transitivePeerDependencies: - - supports-color - - mdast-util-gfm-autolink-literal@2.0.1: - dependencies: - '@types/mdast': 4.0.4 - ccount: 2.0.1 - devlop: 1.1.0 - mdast-util-find-and-replace: 3.0.1 - micromark-util-character: 2.1.0 - - mdast-util-gfm-footnote@2.0.0: - dependencies: - '@types/mdast': 4.0.4 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - micromark-util-normalize-identifier: 2.0.0 - transitivePeerDependencies: - - supports-color - - mdast-util-gfm-strikethrough@2.0.0: - dependencies: - '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - transitivePeerDependencies: - - supports-color - - mdast-util-gfm-table@2.0.0: - dependencies: - '@types/mdast': 4.0.4 - devlop: 1.1.0 - markdown-table: 3.0.3 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - transitivePeerDependencies: - - supports-color - - mdast-util-gfm-task-list-item@2.0.0: - dependencies: - '@types/mdast': 4.0.4 - devlop: 1.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - transitivePeerDependencies: - - supports-color - - mdast-util-gfm@3.0.0: - dependencies: - mdast-util-from-markdown: 2.0.1 - mdast-util-gfm-autolink-literal: 2.0.1 - mdast-util-gfm-footnote: 2.0.0 - mdast-util-gfm-strikethrough: 2.0.0 - mdast-util-gfm-table: 2.0.0 - mdast-util-gfm-task-list-item: 2.0.0 - mdast-util-to-markdown: 2.1.0 - transitivePeerDependencies: - - supports-color - - mdast-util-phrasing@4.1.0: - dependencies: - '@types/mdast': 4.0.4 - unist-util-is: 6.0.0 - - mdast-util-to-hast@13.2.0: - dependencies: - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - '@ungap/structured-clone': 1.2.0 - devlop: 1.1.0 - micromark-util-sanitize-uri: 2.0.0 - trim-lines: 3.0.1 - unist-util-position: 5.0.0 - unist-util-visit: 5.0.0 - vfile: 6.0.3 - - mdast-util-to-markdown@2.1.0: - dependencies: - '@types/mdast': 4.0.4 - '@types/unist': 3.0.3 - longest-streak: 3.1.0 - mdast-util-phrasing: 4.1.0 - mdast-util-to-string: 4.0.0 - micromark-util-decode-string: 2.0.0 - unist-util-visit: 5.0.0 - zwitch: 2.0.4 - - mdast-util-to-string@4.0.0: - dependencies: - '@types/mdast': 4.0.4 - - mdn-data@2.0.28: {} - - mdn-data@2.0.30: {} - - mdn-data@2.10.0: {} - - mdurl@2.0.0: {} - - media-typer@0.3.0: {} - - merge-stream@2.0.0: {} - - merge2@1.4.1: {} - - methods@1.1.2: {} - - micromark-core-commonmark@2.0.1: - dependencies: - decode-named-character-reference: 1.0.2 - devlop: 1.1.0 - micromark-factory-destination: 2.0.0 - micromark-factory-label: 2.0.0 - micromark-factory-space: 2.0.0 - micromark-factory-title: 2.0.0 - micromark-factory-whitespace: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-classify-character: 2.0.0 - micromark-util-html-tag-name: 2.0.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-resolve-all: 2.0.0 - micromark-util-subtokenize: 2.0.1 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-extension-gfm-autolink-literal@2.1.0: - dependencies: - micromark-util-character: 2.1.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-extension-gfm-footnote@2.1.0: - dependencies: - devlop: 1.1.0 - micromark-core-commonmark: 2.0.1 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-extension-gfm-strikethrough@2.1.0: - dependencies: - devlop: 1.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-classify-character: 2.0.0 - micromark-util-resolve-all: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-extension-gfm-table@2.1.0: - dependencies: - devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-extension-gfm-tagfilter@2.0.0: - dependencies: - micromark-util-types: 2.0.0 - - micromark-extension-gfm-task-list-item@2.1.0: - dependencies: - devlop: 1.1.0 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-extension-gfm@3.0.0: - dependencies: - micromark-extension-gfm-autolink-literal: 2.1.0 - micromark-extension-gfm-footnote: 2.1.0 - micromark-extension-gfm-strikethrough: 2.1.0 - micromark-extension-gfm-table: 2.1.0 - micromark-extension-gfm-tagfilter: 2.0.0 - micromark-extension-gfm-task-list-item: 2.1.0 - micromark-util-combine-extensions: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-factory-destination@2.0.0: - dependencies: - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-factory-label@2.0.0: - dependencies: - devlop: 1.1.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-factory-space@2.0.0: - dependencies: - micromark-util-character: 2.1.0 - micromark-util-types: 2.0.0 - - micromark-factory-title@2.0.0: - dependencies: - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-factory-whitespace@2.0.0: - dependencies: - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-util-character@2.1.0: - dependencies: - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-util-chunked@2.0.0: - dependencies: - micromark-util-symbol: 2.0.0 - - micromark-util-classify-character@2.0.0: - dependencies: - micromark-util-character: 2.1.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-util-combine-extensions@2.0.0: - dependencies: - micromark-util-chunked: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-util-decode-numeric-character-reference@2.0.1: - dependencies: - micromark-util-symbol: 2.0.0 - - micromark-util-decode-string@2.0.0: - dependencies: - decode-named-character-reference: 1.0.2 - micromark-util-character: 2.1.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-symbol: 2.0.0 - - micromark-util-encode@2.0.0: {} - - micromark-util-html-tag-name@2.0.0: {} - - micromark-util-normalize-identifier@2.0.0: - dependencies: - micromark-util-symbol: 2.0.0 - - micromark-util-resolve-all@2.0.0: - dependencies: - micromark-util-types: 2.0.0 - - micromark-util-sanitize-uri@2.0.0: - dependencies: - micromark-util-character: 2.1.0 - micromark-util-encode: 2.0.0 - micromark-util-symbol: 2.0.0 - - micromark-util-subtokenize@2.0.1: - dependencies: - devlop: 1.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - - micromark-util-symbol@2.0.0: {} - - micromark-util-types@2.0.0: {} - - micromark@4.0.0: - dependencies: - '@types/debug': 4.1.12 - debug: 4.3.7 - decode-named-character-reference: 1.0.2 - devlop: 1.1.0 - micromark-core-commonmark: 2.0.1 - micromark-factory-space: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-chunked: 2.0.0 - micromark-util-combine-extensions: 2.0.0 - micromark-util-decode-numeric-character-reference: 2.0.1 - micromark-util-encode: 2.0.0 - micromark-util-normalize-identifier: 2.0.0 - micromark-util-resolve-all: 2.0.0 - micromark-util-sanitize-uri: 2.0.0 - micromark-util-subtokenize: 2.0.1 - micromark-util-symbol: 2.0.0 - micromark-util-types: 2.0.0 - transitivePeerDependencies: - - supports-color - - micromatch@4.0.8: - dependencies: - braces: 3.0.3 - picomatch: 2.3.1 - - mime-db@1.52.0: {} - - mime-types@2.1.35: - dependencies: - mime-db: 1.52.0 - - mime@1.6.0: {} - - mime@3.0.0: {} - - mime@4.0.4: {} - - mimic-fn@4.0.0: {} - - mimic-response@3.1.0: - optional: true - - min-indent@1.0.1: {} - - mini-svg-data-uri@1.4.4: {} - - minimatch@10.0.1: - dependencies: - brace-expansion: 2.0.1 - - minimatch@3.1.2: - dependencies: - brace-expansion: 1.1.11 - - minimatch@5.1.6: - dependencies: - brace-expansion: 2.0.1 - - minimatch@9.0.5: - dependencies: - brace-expansion: 2.0.1 - - minimist@1.2.8: {} - - minipass@3.3.6: - dependencies: - yallist: 4.0.0 - - minipass@5.0.0: {} - - minipass@7.1.2: {} - - minisearch@7.1.0: {} - - minizlib@2.1.2: - dependencies: - minipass: 3.3.6 - yallist: 4.0.0 - - mitt@3.0.1: {} - - mkdirp-classic@0.5.3: - optional: true - - mkdirp@0.5.6: - dependencies: - minimist: 1.2.8 - - mkdirp@1.0.4: {} - - mlly@1.7.2: - dependencies: - acorn: 8.13.0 - pathe: 1.1.2 - pkg-types: 1.2.1 - ufo: 1.5.4 - - mri@1.2.0: {} - - mrmime@2.0.0: {} - - ms@2.0.0: {} - - ms@2.1.3: {} - - muggle-string@0.4.1: {} - - mz@2.7.0: - dependencies: - any-promise: 1.3.0 - object-assign: 4.1.1 - thenify-all: 1.6.0 - - nanoid@3.3.7: {} - - nanoid@5.0.7: {} - - nanotar@0.1.1: {} - - napi-build-utils@1.0.2: - optional: true - - natural-compare@1.4.0: {} - - negotiator@0.6.3: {} - - nitropack@2.9.7(magicast@0.3.5): - dependencies: - '@cloudflare/kv-asset-handler': 0.3.4 - '@netlify/functions': 2.8.2 - '@rollup/plugin-alias': 5.1.1(rollup@4.24.0) - '@rollup/plugin-commonjs': 25.0.8(rollup@4.24.0) - '@rollup/plugin-inject': 5.0.5(rollup@4.24.0) - '@rollup/plugin-json': 6.1.0(rollup@4.24.0) - '@rollup/plugin-node-resolve': 15.3.0(rollup@4.24.0) - '@rollup/plugin-replace': 5.0.7(rollup@4.24.0) - '@rollup/plugin-terser': 0.4.4(rollup@4.24.0) - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - '@types/http-proxy': 1.17.15 - '@vercel/nft': 0.26.5 - archiver: 7.0.1 - c12: 1.11.2(magicast@0.3.5) - chalk: 5.3.0 - chokidar: 3.6.0 - citty: 0.1.6 - consola: 3.2.3 - cookie-es: 1.2.2 - croner: 8.1.2 - crossws: 0.2.4 - db0: 0.1.4 - defu: 6.1.4 - destr: 2.0.3 - dot-prop: 8.0.2 - esbuild: 0.20.2 - escape-string-regexp: 5.0.0 - etag: 1.8.1 - fs-extra: 11.2.0 - globby: 14.0.2 - gzip-size: 7.0.0 - h3: 1.13.0 - hookable: 5.5.3 - httpxy: 0.1.5 - ioredis: 5.4.1 - jiti: 1.21.6 - klona: 2.0.6 - knitwork: 1.1.0 - listhen: 1.9.0 - magic-string: 0.30.12 - mime: 4.0.4 - mlly: 1.7.2 - mri: 1.2.0 - node-fetch-native: 1.6.4 - ofetch: 1.4.1 - ohash: 1.1.4 - openapi-typescript: 6.7.6 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - pretty-bytes: 6.1.1 - radix3: 1.1.2 - rollup: 4.24.0 - rollup-plugin-visualizer: 5.12.0(rollup@4.24.0) - scule: 1.3.0 - semver: 7.6.3 - serve-placeholder: 2.0.2 - serve-static: 1.16.2 - std-env: 3.7.0 - ufo: 1.5.4 - uncrypto: 0.1.3 - unctx: 2.3.1 - unenv: 1.10.0 - unimport: 3.13.1(rollup@4.24.0) - unstorage: 1.12.0(ioredis@5.4.1) - unwasm: 0.3.9 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@capacitor/preferences' - - '@libsql/client' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/kv' - - better-sqlite3 - - drizzle-orm - - encoding - - idb-keyval - - magicast - - supports-color - - uWebSockets.js - - webpack-sources - - node-abi@3.71.0: - dependencies: - semver: 7.6.3 - optional: true - - node-addon-api@6.1.0: - optional: true - - node-addon-api@7.1.1: {} - - node-emoji@2.1.3: - dependencies: - '@sindresorhus/is': 4.6.0 - char-regex: 1.0.2 - emojilib: 2.4.0 - skin-tone: 2.0.0 - - node-fetch-native@1.6.4: {} - - node-fetch@2.7.0: - dependencies: - whatwg-url: 5.0.0 - - node-forge@1.3.1: {} - - node-gyp-build@4.8.2: {} - - node-releases@2.0.18: {} - - nopt@5.0.0: - dependencies: - abbrev: 1.1.1 - - normalize-package-data@2.5.0: - dependencies: - hosted-git-info: 2.8.9 - resolve: 1.22.8 - semver: 5.7.2 - validate-npm-package-license: 3.0.4 - - normalize-path@3.0.0: {} - - normalize-range@0.1.2: {} - - npm-run-path@4.0.1: - dependencies: - path-key: 3.1.1 - - npm-run-path@5.3.0: - dependencies: - path-key: 4.0.0 - - npm-run-path@6.0.0: - dependencies: - path-key: 4.0.0 - unicorn-magic: 0.3.0 - - npmlog@5.0.1: - dependencies: - are-we-there-yet: 2.0.0 - console-control-strings: 1.1.0 - gauge: 3.0.2 - set-blocking: 2.0.0 - - nth-check@2.1.1: - dependencies: - boolbase: 1.0.0 - - nuxi@3.14.0: {} - - nuxt-component-meta@0.8.2(magicast@0.3.5)(rollup@4.24.0): - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - citty: 0.1.6 - mlly: 1.7.2 - scule: 1.3.0 - typescript: 5.6.3 - vue-component-meta: 2.1.6(typescript@5.6.3) - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - webpack-sources - - nuxt-og-image@3.0.6(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)): - dependencies: - '@nuxt/devtools-kit': 1.6.0(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@resvg/resvg-js': 2.6.2 - '@resvg/resvg-wasm': 2.6.2 - '@unocss/core': 0.63.4 - '@unocss/preset-wind': 0.63.4 - chrome-launcher: 1.1.2 - defu: 6.1.4 - execa: 9.4.1 - image-size: 1.1.1 - magic-string: 0.30.12 - nuxt-site-config: 2.2.18(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - nuxt-site-config-kit: 2.2.18(magicast@0.3.5)(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3)) - nypm: 0.3.12 - ofetch: 1.4.1 - ohash: 1.1.4 - pathe: 1.1.2 - pkg-types: 1.2.1 - playwright-core: 1.48.1 - radix3: 1.1.2 - satori: 0.11.2 - satori-html: 0.3.2 - sirv: 3.0.0 - std-env: 3.7.0 - strip-literal: 2.1.0 - ufo: 1.5.4 - unplugin: 1.14.1 - unwasm: 0.3.9 - yoga-wasm-web: 0.3.3 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - vite - - vue - - webpack-sources - - nuxt-site-config-kit@2.2.18(magicast@0.3.5)(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3)): - dependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@nuxt/schema': 3.13.2(rollup@4.24.0) - pkg-types: 1.2.1 - site-config-stack: 2.2.18(vue@3.5.12(typescript@5.6.3)) - std-env: 3.7.0 - ufo: 1.5.4 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - vue - - webpack-sources - - nuxt-site-config@2.2.18(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)): - dependencies: - '@nuxt/devtools-kit': 1.6.0(magicast@0.3.5)(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)) - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@nuxt/schema': 3.13.2(rollup@4.24.0) - nuxt-site-config-kit: 2.2.18(magicast@0.3.5)(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3)) - pathe: 1.1.2 - pkg-types: 1.2.1 - sirv: 2.0.4 - site-config-stack: 2.2.18(vue@3.5.12(typescript@5.6.3)) - ufo: 1.5.4 - transitivePeerDependencies: - - magicast - - rollup - - supports-color - - vite - - vue - - webpack-sources - - nuxt@3.13.2(@parcel/watcher@2.4.1)(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(ioredis@5.4.1)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)): - dependencies: - '@nuxt/devalue': 2.0.2 - '@nuxt/devtools': 1.6.0(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue@3.5.12(typescript@5.6.3)) - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - '@nuxt/schema': 3.13.2(rollup@4.24.0) - '@nuxt/telemetry': 2.6.0(magicast@0.3.5)(rollup@4.24.0) - '@nuxt/vite-builder': 3.13.2(@types/node@22.7.7)(eslint@9.13.0(jiti@2.3.3))(magicast@0.3.5)(optionator@0.9.4)(rollup@4.24.0)(terser@5.36.0)(typescript@5.6.3)(vue-tsc@2.1.6(typescript@5.6.3))(vue@3.5.12(typescript@5.6.3)) - '@unhead/dom': 1.11.10 - '@unhead/shared': 1.11.10 - '@unhead/ssr': 1.11.10 - '@unhead/vue': 1.11.10(vue@3.5.12(typescript@5.6.3)) - '@vue/shared': 3.5.12 - acorn: 8.12.1 - c12: 1.11.2(magicast@0.3.5) - chokidar: 3.6.0 - compatx: 0.1.8 - consola: 3.2.3 - cookie-es: 1.2.2 - defu: 6.1.4 - destr: 2.0.3 - devalue: 5.1.1 - errx: 0.1.0 - esbuild: 0.23.1 - escape-string-regexp: 5.0.0 - estree-walker: 3.0.3 - globby: 14.0.2 - h3: 1.13.0 - hookable: 5.5.3 - ignore: 5.3.2 - impound: 0.1.0(rollup@4.24.0) - jiti: 1.21.6 - klona: 2.0.6 - knitwork: 1.1.0 - magic-string: 0.30.12 - mlly: 1.7.2 - nanotar: 0.1.1 - nitropack: 2.9.7(magicast@0.3.5) - nuxi: 3.14.0 - nypm: 0.3.12 - ofetch: 1.4.1 - ohash: 1.1.4 - pathe: 1.1.2 - perfect-debounce: 1.0.0 - pkg-types: 1.2.1 - radix3: 1.1.2 - scule: 1.3.0 - semver: 7.6.3 - std-env: 3.7.0 - strip-literal: 2.1.0 - tinyglobby: 0.2.6 - ufo: 1.5.4 - ultrahtml: 1.5.3 - uncrypto: 0.1.3 - unctx: 2.3.1 - unenv: 1.10.0 - unhead: 1.11.10 - unimport: 3.13.1(rollup@4.24.0) - unplugin: 1.14.1 - unplugin-vue-router: 0.10.8(rollup@4.24.0)(vue-router@4.4.5(vue@3.5.12(typescript@5.6.3)))(vue@3.5.12(typescript@5.6.3)) - unstorage: 1.12.0(ioredis@5.4.1) - untyped: 1.5.1 - vue: 3.5.12(typescript@5.6.3) - vue-bundle-renderer: 2.1.1 - vue-devtools-stub: 0.1.0 - vue-router: 4.4.5(vue@3.5.12(typescript@5.6.3)) - optionalDependencies: - '@parcel/watcher': 2.4.1 - '@types/node': 22.7.7 - transitivePeerDependencies: - - '@azure/app-configuration' - - '@azure/cosmos' - - '@azure/data-tables' - - '@azure/identity' - - '@azure/keyvault-secrets' - - '@azure/storage-blob' - - '@biomejs/biome' - - '@capacitor/preferences' - - '@libsql/client' - - '@netlify/blobs' - - '@planetscale/database' - - '@upstash/redis' - - '@vercel/kv' - - better-sqlite3 - - bufferutil - - drizzle-orm - - encoding - - eslint - - idb-keyval - - ioredis - - less - - lightningcss - - magicast - - meow - - optionator - - rollup - - sass - - sass-embedded - - stylelint - - stylus - - sugarss - - supports-color - - terser - - typescript - - uWebSockets.js - - utf-8-validate - - vite - - vls - - vti - - vue-tsc - - webpack-sources - - xml2js - - nypm@0.3.12: - dependencies: - citty: 0.1.6 - consola: 3.2.3 - execa: 8.0.1 - pathe: 1.1.2 - pkg-types: 1.2.1 - ufo: 1.5.4 - - object-assign@4.1.1: {} - - object-hash@3.0.0: {} - - ofetch@1.4.1: - dependencies: - destr: 2.0.3 - node-fetch-native: 1.6.4 - ufo: 1.5.4 - - ohash@1.1.4: {} - - on-finished@2.4.1: - dependencies: - ee-first: 1.1.1 - - once@1.4.0: - dependencies: - wrappy: 1.0.2 - - onetime@6.0.0: - dependencies: - mimic-fn: 4.0.0 - - oniguruma-to-js@0.4.3: - dependencies: - regex: 4.3.3 - - only@0.0.2: {} - - open@10.1.0: - dependencies: - default-browser: 5.2.1 - define-lazy-prop: 3.0.0 - is-inside-container: 1.0.0 - is-wsl: 3.1.0 - - open@7.4.2: - dependencies: - is-docker: 2.2.1 - is-wsl: 2.2.0 - - open@8.4.2: - dependencies: - define-lazy-prop: 2.0.0 - is-docker: 2.2.1 - is-wsl: 2.2.0 - - openapi-typescript@6.7.6: - dependencies: - ansi-colors: 4.1.3 - fast-glob: 3.3.2 - js-yaml: 4.1.0 - supports-color: 9.4.0 - undici: 5.28.4 - yargs-parser: 21.1.1 - - optionator@0.9.4: - dependencies: - deep-is: 0.1.4 - fast-levenshtein: 2.0.6 - levn: 0.4.1 - prelude-ls: 1.2.1 - type-check: 0.4.0 - word-wrap: 1.2.5 - - p-limit@2.3.0: - dependencies: - p-try: 2.2.0 - - p-limit@3.1.0: - dependencies: - yocto-queue: 0.1.0 - - p-limit@4.0.0: - dependencies: - yocto-queue: 1.1.1 - - p-locate@4.1.0: - dependencies: - p-limit: 2.3.0 - - p-locate@5.0.0: - dependencies: - p-limit: 3.1.0 - - p-locate@6.0.0: - dependencies: - p-limit: 4.0.0 - - p-try@2.2.0: {} - - package-json-from-dist@1.0.1: {} - - package-manager-detector@0.2.2: {} - - pako@0.2.9: {} - - parent-module@1.0.1: - dependencies: - callsites: 3.1.0 - - parse-css-color@0.2.1: - dependencies: - color-name: 1.1.4 - hex-rgb: 4.3.0 - - parse-entities@4.0.1: - dependencies: - '@types/unist': 2.0.11 - character-entities: 2.0.2 - character-entities-legacy: 3.0.0 - character-reference-invalid: 2.0.1 - decode-named-character-reference: 1.0.2 - is-alphanumerical: 2.0.1 - is-decimal: 2.0.1 - is-hexadecimal: 2.0.1 - - parse-git-config@3.0.0: - dependencies: - git-config-path: 2.0.0 - ini: 1.3.8 - - parse-imports@2.2.1: - dependencies: - es-module-lexer: 1.5.4 - slashes: 3.0.12 - - parse-json@5.2.0: - dependencies: - '@babel/code-frame': 7.25.7 - error-ex: 1.3.2 - json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.2.4 - - parse-ms@4.0.0: {} - - parse-path@7.0.0: - dependencies: - protocols: 2.0.1 - - parse-url@8.1.0: - dependencies: - parse-path: 7.0.0 - - parse5@7.2.0: - dependencies: - entities: 4.5.0 - - parseurl@1.3.3: {} - - path-browserify@1.0.1: {} - - path-exists@4.0.0: {} - - path-exists@5.0.0: {} - - path-is-absolute@1.0.1: {} - - path-key@3.1.1: {} - - path-key@4.0.0: {} - - path-parse@1.0.7: {} - - path-scurry@1.11.1: - dependencies: - lru-cache: 10.4.3 - minipass: 7.1.2 - - path-to-regexp@6.3.0: {} - - path-type@5.0.0: {} - - pathe@1.1.2: {} - - perfect-debounce@1.0.0: {} - - picocolors@1.1.1: {} - - picomatch@2.3.1: {} - - picomatch@4.0.2: {} - - pify@2.3.0: {} - - pirates@4.0.6: {} - - pkg-types@1.2.1: - dependencies: - confbox: 0.1.8 - mlly: 1.7.2 - pathe: 1.1.2 - - playwright-core@1.48.1: {} - - pluralize@8.0.0: {} - - portfinder@1.0.32: - dependencies: - async: 2.6.4 - debug: 3.2.7 - mkdirp: 0.5.6 - transitivePeerDependencies: - - supports-color - - postcss-calc@10.0.2(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - postcss-value-parser: 4.2.0 - - postcss-colormin@7.0.2(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - caniuse-api: 3.0.0 - colord: 2.9.3 - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-convert-values@7.0.4(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-discard-comments@7.0.3(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - - postcss-discard-duplicates@7.0.1(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - - postcss-discard-empty@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - - postcss-discard-overridden@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - - postcss-import@15.1.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - read-cache: 1.0.0 - resolve: 1.22.8 - - postcss-js@4.0.1(postcss@8.4.47): - dependencies: - camelcase-css: 2.0.1 - postcss: 8.4.47 - - postcss-load-config@4.0.2(postcss@8.4.47): - dependencies: - lilconfig: 3.1.2 - yaml: 2.6.0 - optionalDependencies: - postcss: 8.4.47 - - postcss-merge-longhand@7.0.4(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - stylehacks: 7.0.4(postcss@8.4.47) - - postcss-merge-rules@7.0.4(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - caniuse-api: 3.0.0 - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - - postcss-minify-font-values@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-minify-gradients@7.0.0(postcss@8.4.47): - dependencies: - colord: 2.9.3 - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-minify-params@7.0.2(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-minify-selectors@7.0.4(postcss@8.4.47): - dependencies: - cssesc: 3.0.0 - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - - postcss-nested@6.2.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - - postcss-nesting@13.0.0(postcss@8.4.47): - dependencies: - '@csstools/selector-resolve-nested': 2.0.0(postcss-selector-parser@6.1.2) - '@csstools/selector-specificity': 4.0.0(postcss-selector-parser@6.1.2) - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - - postcss-normalize-charset@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - - postcss-normalize-display-values@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-normalize-positions@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-normalize-repeat-style@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-normalize-string@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-normalize-timing-functions@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-normalize-unicode@7.0.2(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-normalize-url@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-normalize-whitespace@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-ordered-values@7.0.1(postcss@8.4.47): - dependencies: - cssnano-utils: 5.0.0(postcss@8.4.47) - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-reduce-initial@7.0.2(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - caniuse-api: 3.0.0 - postcss: 8.4.47 - - postcss-reduce-transforms@7.0.0(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - - postcss-selector-parser@6.0.10: - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - - postcss-selector-parser@6.1.2: - dependencies: - cssesc: 3.0.0 - util-deprecate: 1.0.2 - - postcss-svgo@7.0.1(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-value-parser: 4.2.0 - svgo: 3.3.2 - - postcss-unique-selectors@7.0.3(postcss@8.4.47): - dependencies: - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - - postcss-value-parser@4.2.0: {} - - postcss@8.4.47: - dependencies: - nanoid: 3.3.7 - picocolors: 1.1.1 - source-map-js: 1.2.1 - - prebuild-install@7.1.2: - dependencies: - detect-libc: 2.0.3 - expand-template: 2.0.3 - github-from-package: 0.0.0 - minimist: 1.2.8 - mkdirp-classic: 0.5.3 - napi-build-utils: 1.0.2 - node-abi: 3.71.0 - pump: 3.0.2 - rc: 1.2.8 - simple-get: 4.0.1 - tar-fs: 2.1.1 - tunnel-agent: 0.6.0 - optional: true - - prelude-ls@1.2.1: {} - - pretty-bytes@6.1.1: {} - - pretty-ms@9.1.0: - dependencies: - parse-ms: 4.0.0 - - process-nextick-args@2.0.1: {} - - process@0.11.10: {} - - prompts@2.4.2: - dependencies: - kleur: 3.0.3 - sisteransi: 1.0.5 - - property-information@6.5.0: {} - - protocols@2.0.1: {} - - pump@3.0.2: - dependencies: - end-of-stream: 1.4.4 - once: 1.4.0 - optional: true - - punycode@2.3.1: {} - - queue-microtask@1.2.3: {} - - queue-tick@1.0.1: {} - - queue@6.0.2: - dependencies: - inherits: 2.0.4 - - radix3@1.1.2: {} - - randombytes@2.1.0: - dependencies: - safe-buffer: 5.2.1 - - range-parser@1.2.1: {} - - rc9@2.1.2: - dependencies: - defu: 6.1.4 - destr: 2.0.3 - - rc@1.2.8: - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.8 - strip-json-comments: 2.0.1 - optional: true - - read-cache@1.0.0: - dependencies: - pify: 2.3.0 - - read-pkg-up@7.0.1: - dependencies: - find-up: 4.1.0 - read-pkg: 5.2.0 - type-fest: 0.8.1 - - read-pkg@5.2.0: - dependencies: - '@types/normalize-package-data': 2.4.4 - normalize-package-data: 2.5.0 - parse-json: 5.2.0 - type-fest: 0.6.0 - - readable-stream@2.3.8: - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - - readable-stream@3.6.2: - dependencies: - inherits: 2.0.4 - string_decoder: 1.3.0 - util-deprecate: 1.0.2 - - readable-stream@4.5.2: - dependencies: - abort-controller: 3.0.0 - buffer: 6.0.3 - events: 3.3.0 - process: 0.11.10 - string_decoder: 1.3.0 - - readdir-glob@1.1.3: - dependencies: - minimatch: 5.1.6 - - readdirp@3.6.0: - dependencies: - picomatch: 2.3.1 - - readdirp@4.0.2: {} - - redis-errors@1.2.0: {} - - redis-parser@3.0.0: - dependencies: - redis-errors: 1.2.0 - - refa@0.12.1: - dependencies: - '@eslint-community/regexpp': 4.11.1 - - regex@4.3.3: {} - - regexp-ast-analysis@0.7.1: - dependencies: - '@eslint-community/regexpp': 4.11.1 - refa: 0.12.1 - - regexp-tree@0.1.27: {} - - regjsparser@0.10.0: - dependencies: - jsesc: 0.5.0 - - rehype-external-links@3.0.0: - dependencies: - '@types/hast': 3.0.4 - '@ungap/structured-clone': 1.2.0 - hast-util-is-element: 3.0.0 - is-absolute-url: 4.0.1 - space-separated-tokens: 2.0.2 - unist-util-visit: 5.0.0 - - rehype-raw@7.0.0: - dependencies: - '@types/hast': 3.0.4 - hast-util-raw: 9.0.4 - vfile: 6.0.3 - - rehype-slug@6.0.0: - dependencies: - '@types/hast': 3.0.4 - github-slugger: 2.0.0 - hast-util-heading-rank: 3.0.0 - hast-util-to-string: 3.0.1 - unist-util-visit: 5.0.0 - - rehype-sort-attribute-values@5.0.1: - dependencies: - '@types/hast': 3.0.4 - hast-util-is-element: 3.0.0 - unist-util-visit: 5.0.0 - - rehype-sort-attributes@5.0.1: - dependencies: - '@types/hast': 3.0.4 - unist-util-visit: 5.0.0 - - remark-emoji@5.0.1: - dependencies: - '@types/mdast': 4.0.4 - emoticon: 4.1.0 - mdast-util-find-and-replace: 3.0.1 - node-emoji: 2.1.3 - unified: 11.0.5 - - remark-gfm@4.0.0: - dependencies: - '@types/mdast': 4.0.4 - mdast-util-gfm: 3.0.0 - micromark-extension-gfm: 3.0.0 - remark-parse: 11.0.0 - remark-stringify: 11.0.0 - unified: 11.0.5 - transitivePeerDependencies: - - supports-color - - remark-mdc@3.2.1: - dependencies: - '@types/mdast': 4.0.4 - '@types/unist': 3.0.3 - flat: 6.0.1 - js-yaml: 4.1.0 - mdast-util-from-markdown: 2.0.1 - mdast-util-to-markdown: 2.1.0 - micromark: 4.0.0 - micromark-core-commonmark: 2.0.1 - micromark-factory-space: 2.0.0 - micromark-factory-whitespace: 2.0.0 - micromark-util-character: 2.1.0 - micromark-util-types: 2.0.0 - parse-entities: 4.0.1 - scule: 1.3.0 - stringify-entities: 4.0.4 - unified: 11.0.5 - unist-util-visit: 5.0.0 - unist-util-visit-parents: 6.0.1 - transitivePeerDependencies: - - supports-color - - remark-parse@11.0.0: - dependencies: - '@types/mdast': 4.0.4 - mdast-util-from-markdown: 2.0.1 - micromark-util-types: 2.0.0 - unified: 11.0.5 - transitivePeerDependencies: - - supports-color - - remark-rehype@11.1.1: - dependencies: - '@types/hast': 3.0.4 - '@types/mdast': 4.0.4 - mdast-util-to-hast: 13.2.0 - unified: 11.0.5 - vfile: 6.0.3 - - remark-stringify@11.0.0: - dependencies: - '@types/mdast': 4.0.4 - mdast-util-to-markdown: 2.1.0 - unified: 11.0.5 - - replace-in-file@6.3.5: - dependencies: - chalk: 4.1.2 - glob: 7.2.3 - yargs: 17.7.2 - - require-directory@2.1.1: {} - - resolve-from@4.0.0: {} - - resolve-from@5.0.0: {} - - resolve-path@1.4.0: - dependencies: - http-errors: 1.6.3 - path-is-absolute: 1.0.1 - - resolve-pkg-maps@1.0.0: {} - - resolve@1.22.8: - dependencies: - is-core-module: 2.15.1 - path-parse: 1.0.7 - supports-preserve-symlinks-flag: 1.0.0 - - restructure@3.0.2: {} - - reusify@1.0.4: {} - - rfdc@1.4.1: {} - - rimraf@3.0.2: - dependencies: - glob: 7.2.3 - - rollup-plugin-visualizer@5.12.0(rollup@4.24.0): - dependencies: - open: 8.4.2 - picomatch: 2.3.1 - source-map: 0.7.4 - yargs: 17.7.2 - optionalDependencies: - rollup: 4.24.0 - - rollup@4.24.0: - dependencies: - '@types/estree': 1.0.6 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.24.0 - '@rollup/rollup-android-arm64': 4.24.0 - '@rollup/rollup-darwin-arm64': 4.24.0 - '@rollup/rollup-darwin-x64': 4.24.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.24.0 - '@rollup/rollup-linux-arm-musleabihf': 4.24.0 - '@rollup/rollup-linux-arm64-gnu': 4.24.0 - '@rollup/rollup-linux-arm64-musl': 4.24.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0 - '@rollup/rollup-linux-riscv64-gnu': 4.24.0 - '@rollup/rollup-linux-s390x-gnu': 4.24.0 - '@rollup/rollup-linux-x64-gnu': 4.24.0 - '@rollup/rollup-linux-x64-musl': 4.24.0 - '@rollup/rollup-win32-arm64-msvc': 4.24.0 - '@rollup/rollup-win32-ia32-msvc': 4.24.0 - '@rollup/rollup-win32-x64-msvc': 4.24.0 - fsevents: 2.3.3 - - run-applescript@7.0.0: {} - - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - - safe-buffer@5.1.2: {} - - safe-buffer@5.2.1: {} - - satori-html@0.3.2: - dependencies: - ultrahtml: 1.5.3 - - satori@0.11.2: - dependencies: - '@shuding/opentype.js': 1.4.0-beta.0 - css-background-parser: 0.1.0 - css-box-shadow: 1.0.0-3 - css-gradient-parser: 0.0.16 - css-to-react-native: 3.2.0 - emoji-regex: 10.4.0 - escape-html: 1.0.3 - linebreak: 1.1.0 - parse-css-color: 0.2.1 - postcss-value-parser: 4.2.0 - yoga-wasm-web: 0.3.3 - - scslre@0.3.0: - dependencies: - '@eslint-community/regexpp': 4.11.1 - refa: 0.12.1 - regexp-ast-analysis: 0.7.1 - - scule@1.3.0: {} - - semver@5.7.2: {} - - semver@6.3.1: {} - - semver@7.6.3: {} - - send@0.19.0: - dependencies: - debug: 2.6.9 - depd: 2.0.0 - destroy: 1.2.0 - encodeurl: 1.0.2 - escape-html: 1.0.3 - etag: 1.8.1 - fresh: 0.5.2 - http-errors: 2.0.0 - mime: 1.6.0 - ms: 2.1.3 - on-finished: 2.4.1 - range-parser: 1.2.1 - statuses: 2.0.1 - transitivePeerDependencies: - - supports-color - - serialize-javascript@6.0.2: - dependencies: - randombytes: 2.1.0 - - serve-placeholder@2.0.2: - dependencies: - defu: 6.1.4 - - serve-static@1.16.2: - dependencies: - encodeurl: 2.0.0 - escape-html: 1.0.3 - parseurl: 1.3.3 - send: 0.19.0 - transitivePeerDependencies: - - supports-color - - set-blocking@2.0.0: {} - - setprototypeof@1.1.0: {} - - setprototypeof@1.2.0: {} - - sharp@0.32.6: - dependencies: - color: 4.2.3 - detect-libc: 2.0.3 - node-addon-api: 6.1.0 - prebuild-install: 7.1.2 - semver: 7.6.3 - simple-get: 4.0.1 - tar-fs: 3.0.6 - tunnel-agent: 0.6.0 - optional: true - - shebang-command@2.0.0: - dependencies: - shebang-regex: 3.0.0 - - shebang-regex@3.0.0: {} - - shell-quote@1.8.1: {} - - shiki@1.22.0: - dependencies: - '@shikijs/core': 1.22.0 - '@shikijs/engine-javascript': 1.22.0 - '@shikijs/engine-oniguruma': 1.22.0 - '@shikijs/types': 1.22.0 - '@shikijs/vscode-textmate': 9.3.0 - '@types/hast': 3.0.4 - - signal-exit@3.0.7: {} - - signal-exit@4.1.0: {} - - simple-concat@1.0.1: - optional: true - - simple-get@4.0.1: - dependencies: - decompress-response: 6.0.0 - once: 1.4.0 - simple-concat: 1.0.1 - optional: true - - simple-git@3.27.0: - dependencies: - '@kwsites/file-exists': 1.1.1 - '@kwsites/promise-deferred': 1.1.1 - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - simple-swizzle@0.2.2: - dependencies: - is-arrayish: 0.3.2 - optional: true - - sirv@2.0.4: - dependencies: - '@polka/url': 1.0.0-next.28 - mrmime: 2.0.0 - totalist: 3.0.1 - - sirv@3.0.0: - dependencies: - '@polka/url': 1.0.0-next.28 - mrmime: 2.0.0 - totalist: 3.0.1 - - sisteransi@1.0.5: {} - - site-config-stack@2.2.18(vue@3.5.12(typescript@5.6.3)): - dependencies: - ufo: 1.5.4 - vue: 3.5.12(typescript@5.6.3) - - skin-tone@2.0.0: - dependencies: - unicode-emoji-modifier-base: 1.0.0 - - slash@5.1.0: {} - - slashes@3.0.12: {} - - slugify@1.6.6: {} - - smob@1.5.0: {} - - smooth-dnd@0.12.1: {} - - socket.io-client@4.8.0: - dependencies: - '@socket.io/component-emitter': 3.1.2 - debug: 4.3.7 - engine.io-client: 6.6.1 - socket.io-parser: 4.2.4 - transitivePeerDependencies: - - bufferutil - - supports-color - - utf-8-validate - - socket.io-parser@4.2.4: - dependencies: - '@socket.io/component-emitter': 3.1.2 - debug: 4.3.7 - transitivePeerDependencies: - - supports-color - - source-map-js@1.2.1: {} - - source-map-support@0.5.21: - dependencies: - buffer-from: 1.1.2 - source-map: 0.6.1 - - source-map@0.6.1: {} - - source-map@0.7.4: {} - - space-separated-tokens@2.0.2: {} - - spdx-correct@3.2.0: - dependencies: - spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.20 - - spdx-exceptions@2.5.0: {} - - spdx-expression-parse@3.0.1: - dependencies: - spdx-exceptions: 2.5.0 - spdx-license-ids: 3.0.20 - - spdx-expression-parse@4.0.0: - dependencies: - spdx-exceptions: 2.5.0 - spdx-license-ids: 3.0.20 - - spdx-license-ids@3.0.20: {} - - speakingurl@14.0.1: {} - - stable-hash@0.0.4: {} - - standard-as-callback@2.1.0: {} - - statuses@1.5.0: {} - - statuses@2.0.1: {} - - std-env@3.7.0: {} - - streamx@2.20.1: - dependencies: - fast-fifo: 1.3.2 - queue-tick: 1.0.1 - text-decoder: 1.2.1 - optionalDependencies: - bare-events: 2.5.0 - - string-width@4.2.3: - dependencies: - emoji-regex: 8.0.0 - is-fullwidth-code-point: 3.0.0 - strip-ansi: 6.0.1 - - string-width@5.1.2: - dependencies: - eastasianwidth: 0.2.0 - emoji-regex: 9.2.2 - strip-ansi: 7.1.0 - - string.prototype.codepointat@0.2.1: {} - - string_decoder@1.1.1: - dependencies: - safe-buffer: 5.1.2 - - string_decoder@1.3.0: - dependencies: - safe-buffer: 5.2.1 - - stringify-entities@4.0.4: - dependencies: - character-entities-html4: 2.1.0 - character-entities-legacy: 3.0.0 - - strip-ansi@6.0.1: - dependencies: - ansi-regex: 5.0.1 - - strip-ansi@7.1.0: - dependencies: - ansi-regex: 6.1.0 - - strip-final-newline@3.0.0: {} - - strip-final-newline@4.0.0: {} - - strip-indent@3.0.0: - dependencies: - min-indent: 1.0.1 - - strip-json-comments@2.0.1: - optional: true - - strip-json-comments@3.1.1: {} - - strip-literal@2.1.0: - dependencies: - js-tokens: 9.0.0 - - stylehacks@7.0.4(postcss@8.4.47): - dependencies: - browserslist: 4.24.0 - postcss: 8.4.47 - postcss-selector-parser: 6.1.2 - - sucrase@3.35.0: - dependencies: - '@jridgewell/gen-mapping': 0.3.5 - commander: 4.1.1 - glob: 10.4.5 - lines-and-columns: 1.2.4 - mz: 2.7.0 - pirates: 4.0.6 - ts-interface-checker: 0.1.13 - - superjson@2.2.1: - dependencies: - copy-anything: 3.0.5 - - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - - supports-color@7.2.0: - dependencies: - has-flag: 4.0.0 - - supports-color@9.4.0: {} - - supports-preserve-symlinks-flag@1.0.0: {} - - svg-tags@1.0.0: {} - - svgo@3.3.2: - dependencies: - '@trysound/sax': 0.2.0 - commander: 7.2.0 - css-select: 5.1.0 - css-tree: 2.3.1 - css-what: 6.1.0 - csso: 5.0.5 - picocolors: 1.1.1 - - synckit@0.9.2: - dependencies: - '@pkgr/core': 0.1.1 - tslib: 2.8.0 - - system-architecture@0.1.0: {} - - tailwind-config-viewer@2.0.4(tailwindcss@3.4.14): - dependencies: - '@koa/router': 12.0.2 - commander: 6.2.1 - fs-extra: 9.1.0 - koa: 2.15.3 - koa-static: 5.0.0 - open: 7.4.2 - portfinder: 1.0.32 - replace-in-file: 6.3.5 - tailwindcss: 3.4.14 - transitivePeerDependencies: - - supports-color - - tailwind-merge@2.5.4: {} - - tailwindcss@3.4.14: - dependencies: - '@alloc/quick-lru': 5.2.0 - arg: 5.0.2 - chokidar: 3.6.0 - didyoumean: 1.2.2 - dlv: 1.1.3 - fast-glob: 3.3.2 - glob-parent: 6.0.2 - is-glob: 4.0.3 - jiti: 1.21.6 - lilconfig: 2.1.0 - micromatch: 4.0.8 - normalize-path: 3.0.0 - object-hash: 3.0.0 - picocolors: 1.1.1 - postcss: 8.4.47 - postcss-import: 15.1.0(postcss@8.4.47) - postcss-js: 4.0.1(postcss@8.4.47) - postcss-load-config: 4.0.2(postcss@8.4.47) - postcss-nested: 6.2.0(postcss@8.4.47) - postcss-selector-parser: 6.1.2 - resolve: 1.22.8 - sucrase: 3.35.0 - transitivePeerDependencies: - - ts-node - - tapable@2.2.1: {} - - tar-fs@2.1.1: - dependencies: - chownr: 1.1.4 - mkdirp-classic: 0.5.3 - pump: 3.0.2 - tar-stream: 2.2.0 - optional: true - - tar-fs@3.0.6: - dependencies: - pump: 3.0.2 - tar-stream: 3.1.7 - optionalDependencies: - bare-fs: 2.3.5 - bare-path: 2.1.3 - optional: true - - tar-stream@2.2.0: - dependencies: - bl: 4.1.0 - end-of-stream: 1.4.4 - fs-constants: 1.0.0 - inherits: 2.0.4 - readable-stream: 3.6.2 - optional: true - - tar-stream@3.1.7: - dependencies: - b4a: 1.6.7 - fast-fifo: 1.3.2 - streamx: 2.20.1 - - tar@6.2.1: - dependencies: - chownr: 2.0.0 - fs-minipass: 2.1.0 - minipass: 5.0.0 - minizlib: 2.1.2 - mkdirp: 1.0.4 - yallist: 4.0.0 - - terser@5.36.0: - dependencies: - '@jridgewell/source-map': 0.3.6 - acorn: 8.12.1 - commander: 2.20.3 - source-map-support: 0.5.21 - - text-decoder@1.2.1: {} - - text-table@0.2.0: {} - - thenify-all@1.6.0: - dependencies: - thenify: 3.3.1 - - thenify@3.3.1: - dependencies: - any-promise: 1.3.0 - - tiny-inflate@1.0.3: {} - - tiny-invariant@1.3.3: {} - - tinyexec@0.3.1: {} - - tinyglobby@0.2.6: - dependencies: - fdir: 6.4.2(picomatch@4.0.2) - picomatch: 4.0.2 - - tinyglobby@0.2.9: - dependencies: - fdir: 6.4.2(picomatch@4.0.2) - picomatch: 4.0.2 - - to-fast-properties@2.0.0: {} - - to-regex-range@5.0.1: - dependencies: - is-number: 7.0.0 - - toidentifier@1.0.1: {} - - totalist@3.0.1: {} - - tr46@0.0.3: {} - - trim-lines@3.0.1: {} - - trough@2.2.0: {} - - ts-api-utils@1.3.0(typescript@5.6.3): - dependencies: - typescript: 5.6.3 - - ts-interface-checker@0.1.13: {} - - tslib@2.8.0: {} - - tsscmp@1.0.6: {} - - tunnel-agent@0.6.0: - dependencies: - safe-buffer: 5.2.1 - optional: true - - type-check@0.4.0: - dependencies: - prelude-ls: 1.2.1 - - type-fest@0.20.2: {} - - type-fest@0.21.3: {} - - type-fest@0.6.0: {} - - type-fest@0.8.1: {} - - type-fest@3.13.1: {} - - type-is@1.6.18: - dependencies: - media-typer: 0.3.0 - mime-types: 2.1.35 - - type-level-regexp@0.1.17: {} - - typescript@5.6.3: {} - - ufo@1.5.4: {} - - ultrahtml@1.5.3: {} - - uncrypto@0.1.3: {} - - unctx@2.3.1: - dependencies: - acorn: 8.12.1 - estree-walker: 3.0.3 - magic-string: 0.30.12 - unplugin: 1.14.1 - transitivePeerDependencies: - - webpack-sources - - undici-types@6.19.8: {} - - undici@5.28.4: - dependencies: - '@fastify/busboy': 2.1.1 - - unenv@1.10.0: - dependencies: - consola: 3.2.3 - defu: 6.1.4 - mime: 3.0.0 - node-fetch-native: 1.6.4 - pathe: 1.1.2 - - unhead@1.11.10: - dependencies: - '@unhead/dom': 1.11.10 - '@unhead/schema': 1.11.10 - '@unhead/shared': 1.11.10 - hookable: 5.5.3 - - unicode-emoji-modifier-base@1.0.0: {} - - unicode-properties@1.4.1: - dependencies: - base64-js: 1.5.1 - unicode-trie: 2.0.0 - - unicode-trie@2.0.0: - dependencies: - pako: 0.2.9 - tiny-inflate: 1.0.3 - - unicorn-magic@0.1.0: {} - - unicorn-magic@0.3.0: {} - - unified@11.0.5: - dependencies: - '@types/unist': 3.0.3 - bail: 2.0.2 - devlop: 1.1.0 - extend: 3.0.2 - is-plain-obj: 4.1.0 - trough: 2.2.0 - vfile: 6.0.3 - - unifont@0.1.4: - dependencies: - css-tree: 3.0.0 - ohash: 1.1.4 - - unimport@3.13.1(rollup@4.24.0): - dependencies: - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - acorn: 8.13.0 - escape-string-regexp: 5.0.0 - estree-walker: 3.0.3 - fast-glob: 3.3.2 - local-pkg: 0.5.0 - magic-string: 0.30.12 - mlly: 1.7.2 - pathe: 1.1.2 - pkg-types: 1.2.1 - scule: 1.3.0 - strip-literal: 2.1.0 - unplugin: 1.14.1 - transitivePeerDependencies: - - rollup - - webpack-sources - - unist-builder@4.0.0: - dependencies: - '@types/unist': 3.0.3 - - unist-util-is@6.0.0: - dependencies: - '@types/unist': 3.0.3 - - unist-util-position@5.0.0: - dependencies: - '@types/unist': 3.0.3 - - unist-util-stringify-position@4.0.0: - dependencies: - '@types/unist': 3.0.3 - - unist-util-visit-parents@6.0.1: - dependencies: - '@types/unist': 3.0.3 - unist-util-is: 6.0.0 - - unist-util-visit@5.0.0: - dependencies: - '@types/unist': 3.0.3 - unist-util-is: 6.0.0 - unist-util-visit-parents: 6.0.1 - - universalify@2.0.1: {} - - unplugin-vue-router@0.10.8(rollup@4.24.0)(vue-router@4.4.5(vue@3.5.12(typescript@5.6.3)))(vue@3.5.12(typescript@5.6.3)): - dependencies: - '@babel/types': 7.25.8 - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - '@vue-macros/common': 1.15.0(rollup@4.24.0)(vue@3.5.12(typescript@5.6.3)) - ast-walker-scope: 0.6.2 - chokidar: 3.6.0 - fast-glob: 3.3.2 - json5: 2.2.3 - local-pkg: 0.5.0 - magic-string: 0.30.12 - mlly: 1.7.2 - pathe: 1.1.2 - scule: 1.3.0 - unplugin: 1.14.1 - yaml: 2.6.0 - optionalDependencies: - vue-router: 4.4.5(vue@3.5.12(typescript@5.6.3)) - transitivePeerDependencies: - - rollup - - vue - - webpack-sources - - unplugin@1.14.1: - dependencies: - acorn: 8.13.0 - webpack-virtual-modules: 0.6.2 - - unstorage@1.12.0(ioredis@5.4.1): - dependencies: - anymatch: 3.1.3 - chokidar: 3.6.0 - destr: 2.0.3 - h3: 1.13.0 - listhen: 1.9.0 - lru-cache: 10.4.3 - mri: 1.2.0 - node-fetch-native: 1.6.4 - ofetch: 1.4.1 - ufo: 1.5.4 - optionalDependencies: - ioredis: 5.4.1 - - untun@0.1.3: - dependencies: - citty: 0.1.6 - consola: 3.2.3 - pathe: 1.1.2 - - untyped@1.5.1: - dependencies: - '@babel/core': 7.25.8 - '@babel/standalone': 7.25.8 - '@babel/types': 7.25.8 - defu: 6.1.4 - jiti: 2.3.3 - mri: 1.2.0 - scule: 1.3.0 - transitivePeerDependencies: - - supports-color - - unwasm@0.3.9: - dependencies: - knitwork: 1.1.0 - magic-string: 0.30.12 - mlly: 1.7.2 - pathe: 1.1.2 - pkg-types: 1.2.1 - unplugin: 1.14.1 - transitivePeerDependencies: - - webpack-sources - - update-browserslist-db@1.1.1(browserslist@4.24.0): - dependencies: - browserslist: 4.24.0 - escalade: 3.2.0 - picocolors: 1.1.1 - - uqr@0.1.2: {} - - uri-js@4.4.1: - dependencies: - punycode: 2.3.1 - - urlpattern-polyfill@8.0.2: {} - - util-deprecate@1.0.2: {} - - validate-npm-package-license@3.0.4: - dependencies: - spdx-correct: 3.2.0 - spdx-expression-parse: 3.0.1 - - vary@1.1.2: {} - - vfile-location@5.0.3: - dependencies: - '@types/unist': 3.0.3 - vfile: 6.0.3 - - vfile-message@4.0.2: - dependencies: - '@types/unist': 3.0.3 - unist-util-stringify-position: 4.0.0 - - vfile@6.0.3: - dependencies: - '@types/unist': 3.0.3 - vfile-message: 4.0.2 - - vite-hot-client@0.2.3(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)): - dependencies: - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - - vite-node@2.1.3(@types/node@22.7.7)(terser@5.36.0): - dependencies: - cac: 6.7.14 - debug: 4.3.7 - pathe: 1.1.2 - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - transitivePeerDependencies: - - '@types/node' - - less - - lightningcss - - sass - - sass-embedded - - stylus - - sugarss - - supports-color - - terser - - vite-plugin-checker@0.8.0(eslint@9.13.0(jiti@2.3.3))(optionator@0.9.4)(typescript@5.6.3)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0))(vue-tsc@2.1.6(typescript@5.6.3)): - dependencies: - '@babel/code-frame': 7.25.7 - ansi-escapes: 4.3.2 - chalk: 4.1.2 - chokidar: 3.6.0 - commander: 8.3.0 - fast-glob: 3.3.2 - fs-extra: 11.2.0 - npm-run-path: 4.0.1 - strip-ansi: 6.0.1 - tiny-invariant: 1.3.3 - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - vscode-languageclient: 7.0.0 - vscode-languageserver: 7.0.0 - vscode-languageserver-textdocument: 1.0.12 - vscode-uri: 3.0.8 - optionalDependencies: - eslint: 9.13.0(jiti@2.3.3) - optionator: 0.9.4 - typescript: 5.6.3 - vue-tsc: 2.1.6(typescript@5.6.3) - - vite-plugin-inspect@0.8.7(@nuxt/kit@3.13.2(magicast@0.3.5)(rollup@4.24.0))(rollup@4.24.0)(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)): - dependencies: - '@antfu/utils': 0.7.10 - '@rollup/pluginutils': 5.1.2(rollup@4.24.0) - debug: 4.3.7 - error-stack-parser-es: 0.1.5 - fs-extra: 11.2.0 - open: 10.1.0 - perfect-debounce: 1.0.0 - picocolors: 1.1.1 - sirv: 2.0.4 - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - optionalDependencies: - '@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.24.0) - transitivePeerDependencies: - - rollup - - supports-color - - vite-plugin-vue-inspector@5.1.3(vite@5.4.9(@types/node@22.7.7)(terser@5.36.0)): - dependencies: - '@babel/core': 7.25.8 - '@babel/plugin-proposal-decorators': 7.25.7(@babel/core@7.25.8) - '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.25.8) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.8) - '@babel/plugin-transform-typescript': 7.25.7(@babel/core@7.25.8) - '@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.25.8) - '@vue/compiler-dom': 3.5.12 - kolorist: 1.8.0 - magic-string: 0.30.12 - vite: 5.4.9(@types/node@22.7.7)(terser@5.36.0) - transitivePeerDependencies: - - supports-color - - vite@5.4.9(@types/node@22.7.7)(terser@5.36.0): - dependencies: - esbuild: 0.21.5 - postcss: 8.4.47 - rollup: 4.24.0 - optionalDependencies: - '@types/node': 22.7.7 - fsevents: 2.3.3 - terser: 5.36.0 - - vscode-jsonrpc@6.0.0: {} - - vscode-languageclient@7.0.0: - dependencies: - minimatch: 3.1.2 - semver: 7.6.3 - vscode-languageserver-protocol: 3.16.0 - - vscode-languageserver-protocol@3.16.0: - dependencies: - vscode-jsonrpc: 6.0.0 - vscode-languageserver-types: 3.16.0 - - vscode-languageserver-textdocument@1.0.12: {} - - vscode-languageserver-types@3.16.0: {} - - vscode-languageserver@7.0.0: - dependencies: - vscode-languageserver-protocol: 3.16.0 - - vscode-uri@3.0.8: {} - - vue-bundle-renderer@2.1.1: - dependencies: - ufo: 1.5.4 - - vue-component-meta@2.1.6(typescript@5.6.3): - dependencies: - '@volar/typescript': 2.4.6 - '@vue/language-core': 2.1.6(typescript@5.6.3) - path-browserify: 1.0.1 - vue-component-type-helpers: 2.1.6 - optionalDependencies: - typescript: 5.6.3 - - vue-component-type-helpers@2.1.6: {} - - vue-demi@0.14.10(vue@3.5.12(typescript@5.6.3)): - dependencies: - vue: 3.5.12(typescript@5.6.3) - - vue-devtools-stub@0.1.0: {} - - vue-eslint-parser@9.4.3(eslint@9.13.0(jiti@2.3.3)): - dependencies: - debug: 4.3.7 - eslint: 9.13.0(jiti@2.3.3) - eslint-scope: 7.2.2 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - esquery: 1.6.0 - lodash: 4.17.21 - semver: 7.6.3 - transitivePeerDependencies: - - supports-color - - vue-router@4.4.5(vue@3.5.12(typescript@5.6.3)): - dependencies: - '@vue/devtools-api': 6.6.4 - vue: 3.5.12(typescript@5.6.3) - - vue-tsc@2.1.6(typescript@5.6.3): - dependencies: - '@volar/typescript': 2.4.6 - '@vue/language-core': 2.1.6(typescript@5.6.3) - semver: 7.6.3 - typescript: 5.6.3 - - vue3-smooth-dnd@0.0.6(vue@3.5.12(typescript@5.6.3)): - dependencies: - smooth-dnd: 0.12.1 - vue: 3.5.12(typescript@5.6.3) - - vue@3.5.12(typescript@5.6.3): - dependencies: - '@vue/compiler-dom': 3.5.12 - '@vue/compiler-sfc': 3.5.12 - '@vue/runtime-dom': 3.5.12 - '@vue/server-renderer': 3.5.12(vue@3.5.12(typescript@5.6.3)) - '@vue/shared': 3.5.12 - optionalDependencies: - typescript: 5.6.3 - - web-namespaces@2.0.1: {} - - webidl-conversions@3.0.1: {} - - webpack-virtual-modules@0.6.2: {} - - whatwg-url@5.0.0: - dependencies: - tr46: 0.0.3 - webidl-conversions: 3.0.1 - - which@2.0.2: - dependencies: - isexe: 2.0.0 - - which@3.0.1: - dependencies: - isexe: 2.0.0 - - wide-align@1.1.5: - dependencies: - string-width: 4.2.3 - - word-wrap@1.2.5: {} - - wrap-ansi@7.0.0: - dependencies: - ansi-styles: 4.3.0 - string-width: 4.2.3 - strip-ansi: 6.0.1 - - wrap-ansi@8.1.0: - dependencies: - ansi-styles: 6.2.1 - string-width: 5.1.2 - strip-ansi: 7.1.0 - - wrappy@1.0.2: {} - - ws@8.17.1: {} - - ws@8.18.0: {} - - xml-name-validator@4.0.0: {} - - xmlhttprequest-ssl@2.1.1: {} - - xss@1.0.15: - dependencies: - commander: 2.20.3 - cssfilter: 0.0.10 - optional: true - - y18n@5.0.8: {} - - yallist@3.1.1: {} - - yallist@4.0.0: {} - - yaml@2.6.0: {} - - yargs-parser@21.1.1: {} - - yargs@17.7.2: - dependencies: - cliui: 8.0.1 - escalade: 3.2.0 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 21.1.1 - - ylru@1.4.0: {} - - yocto-queue@0.1.0: {} - - yocto-queue@1.1.1: {} - - yoctocolors@2.1.1: {} - - yoga-wasm-web@0.3.3: {} - - zhead@2.2.4: {} - - zip-stream@6.0.1: - dependencies: - archiver-utils: 5.0.2 - compress-commons: 6.0.2 - readable-stream: 4.5.2 - - zwitch@2.0.4: {} diff --git a/renovate.json b/renovate.json deleted file mode 100644 index 08cfd65..0000000 --- a/renovate.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": [ - "github>nuxt/renovate-config-nuxt" - ], - "lockFileMaintenance": { - "enabled": true - } -} diff --git a/server/api/search.json.get.ts b/server/api/search.json.get.ts deleted file mode 100644 index f5ef8e4..0000000 --- a/server/api/search.json.get.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { serverQueryContent } from '#content/server' - -export default eventHandler(async (event) => { - return serverQueryContent(event).where({ _type: 'markdown', navigation: { $ne: false } }).find() -}) diff --git a/server/tsconfig.json b/server/tsconfig.json deleted file mode 100644 index b9ed69c..0000000 --- a/server/tsconfig.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "extends": "../.nuxt/tsconfig.server.json" -} diff --git a/public/social-card.png b/social-card.png similarity index 100% rename from public/social-card.png rename to social-card.png diff --git a/tailwind.config.ts b/tailwind.config.ts deleted file mode 100644 index f5c5f42..0000000 --- a/tailwind.config.ts +++ /dev/null @@ -1,27 +0,0 @@ -import type { Config } from 'tailwindcss' -import defaultTheme from 'tailwindcss/defaultTheme' - -export default >{ - theme: { - extend: { - fontFamily: { - sans: ['DM Sans', ...defaultTheme.fontFamily.sans] - }, - colors: { - green: { - 50: '#EFFDF5', - 100: '#D9FBE8', - 200: '#B3F5D1', - 300: '#75EDAE', - 400: '#00DC82', - 500: '#00C16A', - 600: '#00A155', - 700: '#007F45', - 800: '#016538', - 900: '#0A5331', - 950: '#052e16' - } - } - } - } -} diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index a746f2a..0000000 --- a/tsconfig.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - // https://nuxt.com/docs/guide/concepts/typescript - "extends": "./.nuxt/tsconfig.json" -} diff --git a/web/guide/_payload.json b/web/guide/_payload.json new file mode 100644 index 0000000..483b1d0 --- /dev/null +++ b/web/guide/_payload.json @@ -0,0 +1 @@ +[{"data":1,"prerenderedAt":2842},["ShallowReactive",2],{"navigation":3,"/web/guide":57,"/web/guide-surround":2839},[4,13,50],{"title":5,"_path":6,"children":7},"Getting Started","/getting-started",[8,10],{"title":9,"_path":6},"Introduction",{"title":11,"_path":12},"Code of Conduct","/getting-started/code-of-conduct",{"title":14,"_path":15,"children":16},"Mobile App","/mobile-app",[17,25,39],{"title":18,"_path":19,"children":20},"Onboarding","/mobile-app/onboarding",[21,22],{"title":9,"_path":19},{"title":23,"_path":24},"Tech Stack","/mobile-app/onboarding/tech-stack",{"title":26,"_path":27,"children":28},"Thought Processes","/mobile-app/thought-processses",[29,30,33,36],{"title":9,"_path":27},{"title":31,"_path":32},"Architecture","/mobile-app/thought-processses/architecture",{"title":34,"_path":35},"Decoupling Dependencies","/mobile-app/thought-processses/decoupling",{"title":37,"_path":38},"State Management","/mobile-app/thought-processses/state-management",{"title":40,"_path":41,"children":42},"Proof of Concepts","/mobile-app/poc",[43,44,47],{"title":9,"_path":41},{"title":45,"_path":46},"Architecture PoC","/mobile-app/poc/architecture",{"title":48,"_path":49},"Automatic code generation","/mobile-app/poc/code-generation",{"title":51,"_path":52,"children":53},"Web","/web",[54],{"title":55,"_path":56},"Guide","/web/guide",{"_path":56,"_dir":58,"_draft":59,"_partial":59,"_locale":60,"title":55,"description":60,"body":61,"_type":2833,"_id":2834,"_source":2835,"_file":2836,"_stem":2837,"_extension":2838},"web",false,"",{"type":62,"children":63,"toc":2818},"root",[64,73,79,84,90,95,100,162,176,183,197,939,944,1032,1038,1043,1189,1221,1227,1257,1350,1355,1631,1643,1756,1761,2004,2009,2023,2099,2104,2116,2123,2213,2225,2231,2236,2285,2291,2328,2334,2364,2376,2390,2395,2420,2426,2431,2457,2463,2484,2744,2757,2763,2776,2782,2812],{"type":65,"tag":66,"props":67,"children":69},"element","h2",{"id":68},"brief-overview-development-guide",[70],{"type":71,"value":72},"text","Brief overview & Development guide",{"type":65,"tag":74,"props":75,"children":76},"p",{},[77],{"type":71,"value":78},"NuxtStore is a platform-agnostic ecommerce frontend solution that allows seamless integration with various ecommerce backends! It provides tools for building customizable, high-performance online storefronts.",{"type":65,"tag":74,"props":80,"children":81},{},[82],{"type":71,"value":83},"This guide will provide you with an overview of the project structure, tools and best practices to help you get started quickly.",{"type":65,"tag":66,"props":85,"children":87},{"id":86},"project-structure",[88],{"type":71,"value":89},"Project Structure",{"type":65,"tag":74,"props":91,"children":92},{},[93],{"type":71,"value":94},"This project follows a modular and scalable architecture, by decoupling the composable frontend from the server middleware allowing for easy collaboration among multiple teams and ensuring consistent development practices across the codebase.",{"type":65,"tag":74,"props":96,"children":97},{},[98],{"type":71,"value":99},"The architecture includes the following apps:",{"type":65,"tag":101,"props":102,"children":103},"ul",{},[104,130],{"type":65,"tag":105,"props":106,"children":107},"li",{},[108,115,117],{"type":65,"tag":109,"props":110,"children":112},"code",{"className":111},[],[113],{"type":71,"value":114},"server",{"type":71,"value":116}," - NuxtStore server middleware powered by ",{"type":65,"tag":118,"props":119,"children":120},"strong",{},[121],{"type":65,"tag":122,"props":123,"children":127},"a",{"href":124,"rel":125},"https://fastify.dev/",[126],"nofollow",[128],{"type":71,"value":129},"Fastify",{"type":65,"tag":105,"props":131,"children":132},{},[133,138,140,150,152],{"type":65,"tag":109,"props":134,"children":136},{"className":135},[],[137],{"type":71,"value":58},{"type":71,"value":139}," - A typescript based web application powered by ",{"type":65,"tag":118,"props":141,"children":142},{},[143],{"type":65,"tag":122,"props":144,"children":147},{"href":145,"rel":146},"https://nuxtjs.org",[126],[148],{"type":71,"value":149},"Nuxt",{"type":71,"value":151}," and ",{"type":65,"tag":118,"props":153,"children":154},{},[155],{"type":65,"tag":122,"props":156,"children":159},{"href":157,"rel":158},"https://vuejs.org",[126],[160],{"type":71,"value":161},"Vue",{"type":65,"tag":163,"props":164,"children":165},"blockquote",{},[166],{"type":65,"tag":74,"props":167,"children":168},{},[169,174],{"type":65,"tag":118,"props":170,"children":171},{},[172],{"type":71,"value":173},"Note",{"type":71,"value":175},": These two standalone modules are capable of being integrated with any backend service with consistent APIs without extra configuration to setup.",{"type":65,"tag":177,"props":178,"children":180},"h4",{"id":179},"web-application",[181],{"type":71,"value":182},"Web application",{"type":65,"tag":74,"props":184,"children":185},{},[186,188,195],{"type":71,"value":187},"Web app follows a typical Nuxt.js directory ",{"type":65,"tag":122,"props":189,"children":192},{"href":190,"rel":191},"https://nuxt.com/docs/guide/directory-structure/nuxt",[126],[193],{"type":71,"value":194},"structure",{"type":71,"value":196}," with a few tweaks:",{"type":65,"tag":198,"props":199,"children":203},"pre",{"className":200,"code":201,"language":202,"meta":60,"style":60},"language-shell shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\napps/\n └── root/\n ├── ...\n ├── assets/ # Static assets\n ├── components/ \n │ ├── atoms/ # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n │ ├── molecules/ # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n │ └── organisms/ # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n ├── composables/ # Custom hooks composing reactive logic\n ├── constants/ \n │ ├── api.ts # API-related constants (HTTP methods)\n │ └── ui.ts # UI-related constants (colors, breakpoints)\n ├── data/ # Static data or JSON files\n ├── layouts/ # Nuxt Layouts\n ├── middleware/ # Client side route middlewares \n │ ├── auth.ts \n │ └── ...\n ├── pages/ # Pages\n │ ├── index.vue # App home page component\n │ └── ...\n ├── plugins/ # App plugins run on both client and server\n ├── public/ # Public assets\n ├── server/ # In-app backend server\n ├── shared/\n │ ├── types/ # Type definitions\n │ └── utils/ # Non-reactive helper functions\n ├── stores/ # Pinia stores for state management\n │ ├── auth.store.ts \n │ └── cart.store.ts \n ├── tests/ # Component and feature unit tests\n ├── eslint.config.mjs # Linter rules\n ├── features.json # Feature flags\n ├── app.vue # Application entry point\n ├── nuxt.config.ts # Nuxt.js configuration\n ├── package.json # Package entry point\n ├── tailwind.config.ts # TailwindCSS configuration\n ├── tsconfig.json # TypeScript configuration\n ├── vitest.config.ts # Vitest configuration\n └── ...\n\n","shell",[204],{"type":65,"tag":109,"props":205,"children":206},{"__ignoreMap":60},[207,219,229,244,258,277,296,320,342,365,383,401,423,445,463,481,499,520,536,554,576,592,610,628,646,659,681,703,721,743,764,782,800,818,836,854,872,890,908,926],{"type":65,"tag":208,"props":209,"children":212},"span",{"class":210,"line":211},"line",1,[213],{"type":65,"tag":208,"props":214,"children":216},{"emptyLinePlaceholder":215},true,[217],{"type":71,"value":218},"\n",{"type":65,"tag":208,"props":220,"children":222},{"class":210,"line":221},2,[223],{"type":65,"tag":208,"props":224,"children":226},{"style":225},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[227],{"type":71,"value":228},"apps/\n",{"type":65,"tag":208,"props":230,"children":232},{"class":210,"line":231},3,[233,238],{"type":65,"tag":208,"props":234,"children":235},{"style":225},[236],{"type":71,"value":237}," └──",{"type":65,"tag":208,"props":239,"children":241},{"style":240},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[242],{"type":71,"value":243}," root/\n",{"type":65,"tag":208,"props":245,"children":247},{"class":210,"line":246},4,[248,253],{"type":65,"tag":208,"props":249,"children":250},{"style":225},[251],{"type":71,"value":252}," ├──",{"type":65,"tag":208,"props":254,"children":255},{"style":240},[256],{"type":71,"value":257}," ...\n",{"type":65,"tag":208,"props":259,"children":261},{"class":210,"line":260},5,[262,266,271],{"type":65,"tag":208,"props":263,"children":264},{"style":225},[265],{"type":71,"value":252},{"type":65,"tag":208,"props":267,"children":268},{"style":240},[269],{"type":71,"value":270}," assets/",{"type":65,"tag":208,"props":272,"children":274},{"style":273},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[275],{"type":71,"value":276}," # Static assets\n",{"type":65,"tag":208,"props":278,"children":280},{"class":210,"line":279},6,[281,285,290],{"type":65,"tag":208,"props":282,"children":283},{"style":225},[284],{"type":71,"value":252},{"type":65,"tag":208,"props":286,"children":287},{"style":240},[288],{"type":71,"value":289}," components/",{"type":65,"tag":208,"props":291,"children":293},{"style":292},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[294],{"type":71,"value":295}," \n",{"type":65,"tag":208,"props":297,"children":299},{"class":210,"line":298},7,[300,305,310,315],{"type":65,"tag":208,"props":301,"children":302},{"style":225},[303],{"type":71,"value":304}," │",{"type":65,"tag":208,"props":306,"children":307},{"style":240},[308],{"type":71,"value":309}," ├──",{"type":65,"tag":208,"props":311,"children":312},{"style":240},[313],{"type":71,"value":314}," atoms/",{"type":65,"tag":208,"props":316,"children":317},{"style":273},[318],{"type":71,"value":319}," # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)\n",{"type":65,"tag":208,"props":321,"children":323},{"class":210,"line":322},8,[324,328,332,337],{"type":65,"tag":208,"props":325,"children":326},{"style":225},[327],{"type":71,"value":304},{"type":65,"tag":208,"props":329,"children":330},{"style":240},[331],{"type":71,"value":309},{"type":65,"tag":208,"props":333,"children":334},{"style":240},[335],{"type":71,"value":336}," molecules/",{"type":65,"tag":208,"props":338,"children":339},{"style":273},[340],{"type":71,"value":341}," # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)\n",{"type":65,"tag":208,"props":343,"children":345},{"class":210,"line":344},9,[346,350,355,360],{"type":65,"tag":208,"props":347,"children":348},{"style":225},[349],{"type":71,"value":304},{"type":65,"tag":208,"props":351,"children":352},{"style":240},[353],{"type":71,"value":354}," └──",{"type":65,"tag":208,"props":356,"children":357},{"style":240},[358],{"type":71,"value":359}," organisms/",{"type":65,"tag":208,"props":361,"children":362},{"style":273},[363],{"type":71,"value":364}," # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)\n",{"type":65,"tag":208,"props":366,"children":368},{"class":210,"line":367},10,[369,373,378],{"type":65,"tag":208,"props":370,"children":371},{"style":225},[372],{"type":71,"value":252},{"type":65,"tag":208,"props":374,"children":375},{"style":240},[376],{"type":71,"value":377}," composables/",{"type":65,"tag":208,"props":379,"children":380},{"style":273},[381],{"type":71,"value":382}," # Custom hooks composing reactive logic\n",{"type":65,"tag":208,"props":384,"children":386},{"class":210,"line":385},11,[387,391,396],{"type":65,"tag":208,"props":388,"children":389},{"style":225},[390],{"type":71,"value":252},{"type":65,"tag":208,"props":392,"children":393},{"style":240},[394],{"type":71,"value":395}," constants/",{"type":65,"tag":208,"props":397,"children":398},{"style":292},[399],{"type":71,"value":400}," \n",{"type":65,"tag":208,"props":402,"children":404},{"class":210,"line":403},12,[405,409,413,418],{"type":65,"tag":208,"props":406,"children":407},{"style":225},[408],{"type":71,"value":304},{"type":65,"tag":208,"props":410,"children":411},{"style":240},[412],{"type":71,"value":309},{"type":65,"tag":208,"props":414,"children":415},{"style":240},[416],{"type":71,"value":417}," api.ts",{"type":65,"tag":208,"props":419,"children":420},{"style":273},[421],{"type":71,"value":422}," # API-related constants (HTTP methods)\n",{"type":65,"tag":208,"props":424,"children":426},{"class":210,"line":425},13,[427,431,435,440],{"type":65,"tag":208,"props":428,"children":429},{"style":225},[430],{"type":71,"value":304},{"type":65,"tag":208,"props":432,"children":433},{"style":240},[434],{"type":71,"value":354},{"type":65,"tag":208,"props":436,"children":437},{"style":240},[438],{"type":71,"value":439}," ui.ts",{"type":65,"tag":208,"props":441,"children":442},{"style":273},[443],{"type":71,"value":444}," # UI-related constants (colors, breakpoints)\n",{"type":65,"tag":208,"props":446,"children":448},{"class":210,"line":447},14,[449,453,458],{"type":65,"tag":208,"props":450,"children":451},{"style":225},[452],{"type":71,"value":252},{"type":65,"tag":208,"props":454,"children":455},{"style":240},[456],{"type":71,"value":457}," data/",{"type":65,"tag":208,"props":459,"children":460},{"style":273},[461],{"type":71,"value":462}," # Static data or JSON files\n",{"type":65,"tag":208,"props":464,"children":466},{"class":210,"line":465},15,[467,471,476],{"type":65,"tag":208,"props":468,"children":469},{"style":225},[470],{"type":71,"value":252},{"type":65,"tag":208,"props":472,"children":473},{"style":240},[474],{"type":71,"value":475}," layouts/",{"type":65,"tag":208,"props":477,"children":478},{"style":273},[479],{"type":71,"value":480}," # Nuxt Layouts\n",{"type":65,"tag":208,"props":482,"children":484},{"class":210,"line":483},16,[485,489,494],{"type":65,"tag":208,"props":486,"children":487},{"style":225},[488],{"type":71,"value":252},{"type":65,"tag":208,"props":490,"children":491},{"style":240},[492],{"type":71,"value":493}," middleware/",{"type":65,"tag":208,"props":495,"children":496},{"style":273},[497],{"type":71,"value":498}," # Client side route middlewares \n",{"type":65,"tag":208,"props":500,"children":502},{"class":210,"line":501},17,[503,507,511,516],{"type":65,"tag":208,"props":504,"children":505},{"style":225},[506],{"type":71,"value":304},{"type":65,"tag":208,"props":508,"children":509},{"style":240},[510],{"type":71,"value":309},{"type":65,"tag":208,"props":512,"children":513},{"style":240},[514],{"type":71,"value":515}," auth.ts",{"type":65,"tag":208,"props":517,"children":518},{"style":292},[519],{"type":71,"value":295},{"type":65,"tag":208,"props":521,"children":523},{"class":210,"line":522},18,[524,528,532],{"type":65,"tag":208,"props":525,"children":526},{"style":225},[527],{"type":71,"value":304},{"type":65,"tag":208,"props":529,"children":530},{"style":240},[531],{"type":71,"value":354},{"type":65,"tag":208,"props":533,"children":534},{"style":240},[535],{"type":71,"value":257},{"type":65,"tag":208,"props":537,"children":539},{"class":210,"line":538},19,[540,544,549],{"type":65,"tag":208,"props":541,"children":542},{"style":225},[543],{"type":71,"value":252},{"type":65,"tag":208,"props":545,"children":546},{"style":240},[547],{"type":71,"value":548}," pages/",{"type":65,"tag":208,"props":550,"children":551},{"style":273},[552],{"type":71,"value":553}," # Pages\n",{"type":65,"tag":208,"props":555,"children":557},{"class":210,"line":556},20,[558,562,566,571],{"type":65,"tag":208,"props":559,"children":560},{"style":225},[561],{"type":71,"value":304},{"type":65,"tag":208,"props":563,"children":564},{"style":240},[565],{"type":71,"value":309},{"type":65,"tag":208,"props":567,"children":568},{"style":240},[569],{"type":71,"value":570}," index.vue",{"type":65,"tag":208,"props":572,"children":573},{"style":273},[574],{"type":71,"value":575}," # App home page component\n",{"type":65,"tag":208,"props":577,"children":579},{"class":210,"line":578},21,[580,584,588],{"type":65,"tag":208,"props":581,"children":582},{"style":225},[583],{"type":71,"value":304},{"type":65,"tag":208,"props":585,"children":586},{"style":240},[587],{"type":71,"value":354},{"type":65,"tag":208,"props":589,"children":590},{"style":240},[591],{"type":71,"value":257},{"type":65,"tag":208,"props":593,"children":595},{"class":210,"line":594},22,[596,600,605],{"type":65,"tag":208,"props":597,"children":598},{"style":225},[599],{"type":71,"value":252},{"type":65,"tag":208,"props":601,"children":602},{"style":240},[603],{"type":71,"value":604}," plugins/",{"type":65,"tag":208,"props":606,"children":607},{"style":273},[608],{"type":71,"value":609}," # App plugins run on both client and server\n",{"type":65,"tag":208,"props":611,"children":613},{"class":210,"line":612},23,[614,618,623],{"type":65,"tag":208,"props":615,"children":616},{"style":225},[617],{"type":71,"value":252},{"type":65,"tag":208,"props":619,"children":620},{"style":240},[621],{"type":71,"value":622}," public/",{"type":65,"tag":208,"props":624,"children":625},{"style":273},[626],{"type":71,"value":627}," # Public assets\n",{"type":65,"tag":208,"props":629,"children":631},{"class":210,"line":630},24,[632,636,641],{"type":65,"tag":208,"props":633,"children":634},{"style":225},[635],{"type":71,"value":252},{"type":65,"tag":208,"props":637,"children":638},{"style":240},[639],{"type":71,"value":640}," server/",{"type":65,"tag":208,"props":642,"children":643},{"style":273},[644],{"type":71,"value":645}," # In-app backend server\n",{"type":65,"tag":208,"props":647,"children":649},{"class":210,"line":648},25,[650,654],{"type":65,"tag":208,"props":651,"children":652},{"style":225},[653],{"type":71,"value":252},{"type":65,"tag":208,"props":655,"children":656},{"style":240},[657],{"type":71,"value":658}," shared/\n",{"type":65,"tag":208,"props":660,"children":662},{"class":210,"line":661},26,[663,667,671,676],{"type":65,"tag":208,"props":664,"children":665},{"style":225},[666],{"type":71,"value":304},{"type":65,"tag":208,"props":668,"children":669},{"style":240},[670],{"type":71,"value":309},{"type":65,"tag":208,"props":672,"children":673},{"style":240},[674],{"type":71,"value":675}," types/",{"type":65,"tag":208,"props":677,"children":678},{"style":273},[679],{"type":71,"value":680}," # Type definitions\n",{"type":65,"tag":208,"props":682,"children":684},{"class":210,"line":683},27,[685,689,693,698],{"type":65,"tag":208,"props":686,"children":687},{"style":225},[688],{"type":71,"value":304},{"type":65,"tag":208,"props":690,"children":691},{"style":240},[692],{"type":71,"value":354},{"type":65,"tag":208,"props":694,"children":695},{"style":240},[696],{"type":71,"value":697}," utils/",{"type":65,"tag":208,"props":699,"children":700},{"style":273},[701],{"type":71,"value":702}," # Non-reactive helper functions\n",{"type":65,"tag":208,"props":704,"children":706},{"class":210,"line":705},28,[707,711,716],{"type":65,"tag":208,"props":708,"children":709},{"style":225},[710],{"type":71,"value":252},{"type":65,"tag":208,"props":712,"children":713},{"style":240},[714],{"type":71,"value":715}," stores/",{"type":65,"tag":208,"props":717,"children":718},{"style":273},[719],{"type":71,"value":720}," # Pinia stores for state management\n",{"type":65,"tag":208,"props":722,"children":724},{"class":210,"line":723},29,[725,729,733,738],{"type":65,"tag":208,"props":726,"children":727},{"style":225},[728],{"type":71,"value":304},{"type":65,"tag":208,"props":730,"children":731},{"style":240},[732],{"type":71,"value":309},{"type":65,"tag":208,"props":734,"children":735},{"style":240},[736],{"type":71,"value":737}," auth.store.ts",{"type":65,"tag":208,"props":739,"children":740},{"style":292},[741],{"type":71,"value":742}," \n",{"type":65,"tag":208,"props":744,"children":746},{"class":210,"line":745},30,[747,751,755,760],{"type":65,"tag":208,"props":748,"children":749},{"style":225},[750],{"type":71,"value":304},{"type":65,"tag":208,"props":752,"children":753},{"style":240},[754],{"type":71,"value":354},{"type":65,"tag":208,"props":756,"children":757},{"style":240},[758],{"type":71,"value":759}," cart.store.ts",{"type":65,"tag":208,"props":761,"children":762},{"style":292},[763],{"type":71,"value":742},{"type":65,"tag":208,"props":765,"children":767},{"class":210,"line":766},31,[768,772,777],{"type":65,"tag":208,"props":769,"children":770},{"style":225},[771],{"type":71,"value":252},{"type":65,"tag":208,"props":773,"children":774},{"style":240},[775],{"type":71,"value":776}," tests/",{"type":65,"tag":208,"props":778,"children":779},{"style":273},[780],{"type":71,"value":781}," # Component and feature unit tests\n",{"type":65,"tag":208,"props":783,"children":785},{"class":210,"line":784},32,[786,790,795],{"type":65,"tag":208,"props":787,"children":788},{"style":225},[789],{"type":71,"value":252},{"type":65,"tag":208,"props":791,"children":792},{"style":240},[793],{"type":71,"value":794}," eslint.config.mjs",{"type":65,"tag":208,"props":796,"children":797},{"style":273},[798],{"type":71,"value":799}," # Linter rules\n",{"type":65,"tag":208,"props":801,"children":803},{"class":210,"line":802},33,[804,808,813],{"type":65,"tag":208,"props":805,"children":806},{"style":225},[807],{"type":71,"value":252},{"type":65,"tag":208,"props":809,"children":810},{"style":240},[811],{"type":71,"value":812}," features.json",{"type":65,"tag":208,"props":814,"children":815},{"style":273},[816],{"type":71,"value":817}," # Feature flags\n",{"type":65,"tag":208,"props":819,"children":821},{"class":210,"line":820},34,[822,826,831],{"type":65,"tag":208,"props":823,"children":824},{"style":225},[825],{"type":71,"value":252},{"type":65,"tag":208,"props":827,"children":828},{"style":240},[829],{"type":71,"value":830}," app.vue",{"type":65,"tag":208,"props":832,"children":833},{"style":273},[834],{"type":71,"value":835}," # Application entry point\n",{"type":65,"tag":208,"props":837,"children":839},{"class":210,"line":838},35,[840,844,849],{"type":65,"tag":208,"props":841,"children":842},{"style":225},[843],{"type":71,"value":252},{"type":65,"tag":208,"props":845,"children":846},{"style":240},[847],{"type":71,"value":848}," nuxt.config.ts",{"type":65,"tag":208,"props":850,"children":851},{"style":273},[852],{"type":71,"value":853}," # Nuxt.js configuration\n",{"type":65,"tag":208,"props":855,"children":857},{"class":210,"line":856},36,[858,862,867],{"type":65,"tag":208,"props":859,"children":860},{"style":225},[861],{"type":71,"value":252},{"type":65,"tag":208,"props":863,"children":864},{"style":240},[865],{"type":71,"value":866}," package.json",{"type":65,"tag":208,"props":868,"children":869},{"style":273},[870],{"type":71,"value":871}," # Package entry point\n",{"type":65,"tag":208,"props":873,"children":875},{"class":210,"line":874},37,[876,880,885],{"type":65,"tag":208,"props":877,"children":878},{"style":225},[879],{"type":71,"value":252},{"type":65,"tag":208,"props":881,"children":882},{"style":240},[883],{"type":71,"value":884}," tailwind.config.ts",{"type":65,"tag":208,"props":886,"children":887},{"style":273},[888],{"type":71,"value":889}," # TailwindCSS configuration\n",{"type":65,"tag":208,"props":891,"children":893},{"class":210,"line":892},38,[894,898,903],{"type":65,"tag":208,"props":895,"children":896},{"style":225},[897],{"type":71,"value":252},{"type":65,"tag":208,"props":899,"children":900},{"style":240},[901],{"type":71,"value":902}," tsconfig.json",{"type":65,"tag":208,"props":904,"children":905},{"style":273},[906],{"type":71,"value":907}," # TypeScript configuration\n",{"type":65,"tag":208,"props":909,"children":911},{"class":210,"line":910},39,[912,916,921],{"type":65,"tag":208,"props":913,"children":914},{"style":225},[915],{"type":71,"value":252},{"type":65,"tag":208,"props":917,"children":918},{"style":240},[919],{"type":71,"value":920}," vitest.config.ts",{"type":65,"tag":208,"props":922,"children":923},{"style":273},[924],{"type":71,"value":925}," # Vitest configuration\n",{"type":65,"tag":208,"props":927,"children":929},{"class":210,"line":928},40,[930,935],{"type":65,"tag":208,"props":931,"children":932},{"style":225},[933],{"type":71,"value":934}," └──",{"type":65,"tag":208,"props":936,"children":937},{"style":240},[938],{"type":71,"value":257},{"type":65,"tag":74,"props":940,"children":941},{},[942],{"type":71,"value":943},"List of essential directories:",{"type":65,"tag":101,"props":945,"children":946},{},[947,972,983,994,1021],{"type":65,"tag":105,"props":948,"children":949},{},[950,956,958,964,966],{"type":65,"tag":109,"props":951,"children":953},{"className":952},[],[954],{"type":71,"value":955},"components",{"type":71,"value":957}," NuxtStore UI components, like ",{"type":65,"tag":109,"props":959,"children":961},{"className":960},[],[962],{"type":71,"value":963},"ProductCard",{"type":71,"value":965}," or ",{"type":65,"tag":109,"props":967,"children":969},{"className":968},[],[970],{"type":71,"value":971},"Review",{"type":65,"tag":105,"props":973,"children":974},{},[975,981],{"type":65,"tag":109,"props":976,"children":978},{"className":977},[],[979],{"type":71,"value":980},"stores",{"type":71,"value":982}," Pinia store containing global state, getters and mutators",{"type":65,"tag":105,"props":984,"children":985},{},[986,992],{"type":65,"tag":109,"props":987,"children":989},{"className":988},[],[990],{"type":71,"value":991},"composables",{"type":71,"value":993}," Contains reusable composition functions, e.g. data fetchers and stateful helpers",{"type":65,"tag":105,"props":995,"children":996},{},[997,1003,1005,1011,1013,1019],{"type":65,"tag":109,"props":998,"children":1000},{"className":999},[],[1001],{"type":71,"value":1002},"shared",{"type":71,"value":1004}," Contains types and utilities ",{"type":65,"tag":122,"props":1006,"children":1009},{"href":1007,"rel":1008},"https://github.com/nuxt/nuxt/releases/tag/v3.14.0",[126],[1010],{"type":71,"value":1002},{"type":71,"value":1012}," across client and server e.g ",{"type":65,"tag":109,"props":1014,"children":1016},{"className":1015},[],[1017],{"type":71,"value":1018},"product.type.ts",{"type":71,"value":1020},". Auto-import support will follow in next major release.",{"type":65,"tag":105,"props":1022,"children":1023},{},[1024,1030],{"type":65,"tag":109,"props":1025,"children":1027},{"className":1026},[],[1028],{"type":71,"value":1029},"tests",{"type":71,"value":1031}," Contains mocks for components, composables and store actions",{"type":65,"tag":66,"props":1033,"children":1035},{"id":1034},"project-guide",[1036],{"type":71,"value":1037},"Project Guide",{"type":65,"tag":74,"props":1039,"children":1040},{},[1041],{"type":71,"value":1042},"This project follows a few conventions to help with organizing your code:",{"type":65,"tag":101,"props":1044,"children":1045},{},[1046,1059,1064,1078,1092,1097,1125,1139,1177],{"type":65,"tag":105,"props":1047,"children":1048},{},[1049,1051,1057],{"type":71,"value":1050},"Each function is located in a dedicated module and exported from the ",{"type":65,"tag":109,"props":1052,"children":1054},{"className":1053},[],[1055],{"type":71,"value":1056},"index.ts",{"type":71,"value":1058}," file.",{"type":65,"tag":105,"props":1060,"children":1061},{},[1062],{"type":71,"value":1063},"In this nuxt application, avoid importing auto-imported APIs (ref, onMounted etc.) or compiler macros (defineProps, defineEmits etc.) and PrimeVue components (Button, InputText, Dialog, Carousel etc.)",{"type":65,"tag":105,"props":1065,"children":1066},{},[1067,1069,1076],{"type":71,"value":1068},"Names are short, descriptive and must follow our consistent naming convention (",{"type":65,"tag":122,"props":1070,"children":1073},{"href":1071,"rel":1072},"https://docs.vaah.dev/guide/code",[126],[1074],{"type":71,"value":1075},"guide",{"type":71,"value":1077},")",{"type":65,"tag":105,"props":1079,"children":1080},{},[1081,1083,1090],{"type":71,"value":1082},"Follow this ",{"type":65,"tag":122,"props":1084,"children":1087},{"href":1085,"rel":1086},"https://docs.vaah.dev/guide/nuxt",[126],[1088],{"type":71,"value":1089},"nuxt guide",{"type":71,"value":1091}," to avoid common mistakes and comply with industry standard practices",{"type":65,"tag":105,"props":1093,"children":1094},{},[1095],{"type":71,"value":1096},"Functions (including composables and utils) are exported using explicit named exports instead of anonymous exports",{"type":65,"tag":105,"props":1098,"children":1099},{},[1100,1102,1108,1110,1115,1117,1123],{"type":71,"value":1101},"Actions or functions are defined following the trivial function definitions (",{"type":65,"tag":109,"props":1103,"children":1105},{"className":1104},[],[1106],{"type":71,"value":1107},"func() { }",{"type":71,"value":1109},") ",{"type":65,"tag":118,"props":1111,"children":1112},{},[1113],{"type":71,"value":1114},"instead of arrow functions",{"type":71,"value":1116}," (",{"type":65,"tag":109,"props":1118,"children":1120},{"className":1119},[],[1121],{"type":71,"value":1122},"const func = () => { }",{"type":71,"value":1124},") to create visible distinction between constants and methods",{"type":65,"tag":105,"props":1126,"children":1127},{},[1128,1130,1137],{"type":71,"value":1129},"This project follows ",{"type":65,"tag":122,"props":1131,"children":1134},{"href":1132,"rel":1133},"https://docs.vaah.dev/guide/git",[126],[1135],{"type":71,"value":1136},"gitflow",{"type":71,"value":1138}," as the branching strategy",{"type":65,"tag":105,"props":1140,"children":1141},{},[1142,1144,1150,1152,1157,1159,1164,1165,1170,1171,1176],{"type":71,"value":1143},"Feature branch name must follow a simple convention such as\n",{"type":65,"tag":109,"props":1145,"children":1147},{"className":1146},[],[1148],{"type":71,"value":1149},"feature/\u003Cpurpose>-\u003Cpage_name>-\u003Csubject>",{"type":71,"value":1151},". Subject can be component or specific feature\n(e.g ",{"type":65,"tag":118,"props":1153,"children":1154},{},[1155],{"type":71,"value":1156},"ui-cart-summary",{"type":71,"value":1158},", ",{"type":65,"tag":118,"props":1160,"children":1161},{},[1162],{"type":71,"value":1163},"ui-layout-footer",{"type":71,"value":1158},{"type":65,"tag":118,"props":1166,"children":1167},{},[1168],{"type":71,"value":1169},"flow-checkout-payment",{"type":71,"value":1158},{"type":65,"tag":118,"props":1172,"children":1173},{},[1174],{"type":71,"value":1175},"action-cart-quantity",{"type":71,"value":1077},{"type":65,"tag":105,"props":1178,"children":1179},{},[1180,1187],{"type":65,"tag":122,"props":1181,"children":1184},{"href":1182,"rel":1183},"https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html",[126],[1185],{"type":71,"value":1186},"JS doc comments",{"type":71,"value":1188}," are added at necessary places to define the structure of a complex entity or explain the construct of a method",{"type":65,"tag":163,"props":1190,"children":1191},{},[1192],{"type":65,"tag":74,"props":1193,"children":1194},{},[1195,1200,1202,1208,1210,1215,1216],{"type":65,"tag":118,"props":1196,"children":1197},{},[1198],{"type":71,"value":1199},"Note:",{"type":71,"value":1201}," In order to add code comments, we prefix the action with a ",{"type":65,"tag":109,"props":1203,"children":1205},{"className":1204},[],[1206],{"type":71,"value":1207},"@",{"type":71,"value":1209}," for contributors reference such as ",{"type":65,"tag":118,"props":1211,"children":1212},{},[1213],{"type":71,"value":1214},"@todo:",{"type":71,"value":965},{"type":65,"tag":118,"props":1217,"children":1218},{},[1219],{"type":71,"value":1220},"@debug:",{"type":65,"tag":1222,"props":1223,"children":1224},"h3",{"id":955},[1225],{"type":71,"value":1226},"Components",{"type":65,"tag":74,"props":1228,"children":1229},{},[1230,1232,1239,1241,1248,1250,1255],{"type":71,"value":1231},"NuxtStore UI follows ",{"type":65,"tag":122,"props":1233,"children":1236},{"href":1234,"rel":1235},"https://atomicdesign.bradfrost.com/chapter-2/",[126],[1237],{"type":71,"value":1238},"atomic design principle",{"type":71,"value":1240}," to develop components and it leverages ",{"type":65,"tag":122,"props":1242,"children":1245},{"href":1243,"rel":1244},"https://primevue.org/",[126],[1246],{"type":71,"value":1247},"PrimeVue",{"type":71,"value":1249}," as the building blocks of storefront components. All components are auto-imported by their name (no path-prefix) and are located inside subfolders in the ",{"type":65,"tag":109,"props":1251,"children":1253},{"className":1252},[],[1254],{"type":71,"value":955},{"type":71,"value":1256}," directory.",{"type":65,"tag":101,"props":1258,"children":1259},{},[1260],{"type":65,"tag":105,"props":1261,"children":1262},{},[1263,1265],{"type":71,"value":1264},"Introduction to project components:",{"type":65,"tag":101,"props":1266,"children":1267},{},[1268,1273,1278,1303,1321,1326,1345],{"type":65,"tag":105,"props":1269,"children":1270},{},[1271],{"type":71,"value":1272},"Consists of representational components that are designed to fulfill project requirements",{"type":65,"tag":105,"props":1274,"children":1275},{},[1276],{"type":71,"value":1277},"Components should be placed in dedicated folders inside components directory",{"type":65,"tag":105,"props":1279,"children":1280},{},[1281,1283,1289,1290,1296,1297],{"type":71,"value":1282},"Root of the component folder has ",{"type":65,"tag":109,"props":1284,"children":1286},{"className":1285},[],[1287],{"type":71,"value":1288},"atoms",{"type":71,"value":1158},{"type":65,"tag":109,"props":1291,"children":1293},{"className":1292},[],[1294],{"type":71,"value":1295},"molecules",{"type":71,"value":151},{"type":65,"tag":109,"props":1298,"children":1300},{"className":1299},[],[1301],{"type":71,"value":1302},"organisms",{"type":65,"tag":105,"props":1304,"children":1305},{},[1306,1308,1313,1315,1320],{"type":71,"value":1307},"Each component name must be prefixed with ",{"type":65,"tag":118,"props":1309,"children":1310},{},[1311],{"type":71,"value":1312},"\"Ns\"",{"type":71,"value":1314}," (e.g ",{"type":65,"tag":118,"props":1316,"children":1317},{},[1318],{"type":71,"value":1319},"NsProductCard",{"type":71,"value":1077},{"type":65,"tag":105,"props":1322,"children":1323},{},[1324],{"type":71,"value":1325},"TypeScript types are located inside the SFC for ease of access and coupling",{"type":65,"tag":105,"props":1327,"children":1328},{},[1329,1331,1337,1339,1344],{"type":71,"value":1330},"Tests for components are located in the ",{"type":65,"tag":109,"props":1332,"children":1334},{"className":1333},[],[1335],{"type":71,"value":1336},"/tests/components",{"type":71,"value":1338}," folder (e.g ",{"type":65,"tag":118,"props":1340,"children":1341},{},[1342],{"type":71,"value":1343},"NsUserAddress.spec.ts",{"type":71,"value":1077},{"type":65,"tag":105,"props":1346,"children":1347},{},[1348],{"type":71,"value":1349},"Folders inside /atoms, /molecules and /organisms must follow their purpose",{"type":65,"tag":74,"props":1351,"children":1352},{},[1353],{"type":71,"value":1354},"Expected directory structure:",{"type":65,"tag":198,"props":1356,"children":1358},{"className":200,"code":1357,"language":202,"meta":60,"style":60},"components/\n └── atoms/\n └── cart/\n └── NsAddToCartButton.vue\n └── NsCartIcon.vue\n └── ui/\n └── NsHeader.vue\n └── NsFooter.vue\n └── ...\n └── molecules/\n └── form/\n └── NsEmailInput.vue\n └── NsPasswordInput.vue\n └── ...\n └── organisms/\n └── address/\n └── NsAddressCard.vue\n └── cart/\n └── NsCartOverview.vue\n └── forms/\n └── NsSignUpForm.vue\n └── NsAddressForm.vue\n └── ...\n",[1359],{"type":65,"tag":109,"props":1360,"children":1361},{"__ignoreMap":60},[1362,1370,1382,1394,1407,1419,1431,1443,1455,1466,1478,1490,1502,1514,1525,1537,1549,1561,1572,1584,1596,1608,1620],{"type":65,"tag":208,"props":1363,"children":1364},{"class":210,"line":211},[1365],{"type":65,"tag":208,"props":1366,"children":1367},{"style":225},[1368],{"type":71,"value":1369},"components/\n",{"type":65,"tag":208,"props":1371,"children":1372},{"class":210,"line":221},[1373,1377],{"type":65,"tag":208,"props":1374,"children":1375},{"style":225},[1376],{"type":71,"value":237},{"type":65,"tag":208,"props":1378,"children":1379},{"style":240},[1380],{"type":71,"value":1381}," atoms/\n",{"type":65,"tag":208,"props":1383,"children":1384},{"class":210,"line":231},[1385,1389],{"type":65,"tag":208,"props":1386,"children":1387},{"style":225},[1388],{"type":71,"value":934},{"type":65,"tag":208,"props":1390,"children":1391},{"style":240},[1392],{"type":71,"value":1393}," cart/\n",{"type":65,"tag":208,"props":1395,"children":1396},{"class":210,"line":246},[1397,1402],{"type":65,"tag":208,"props":1398,"children":1399},{"style":225},[1400],{"type":71,"value":1401}," └──",{"type":65,"tag":208,"props":1403,"children":1404},{"style":240},[1405],{"type":71,"value":1406}," NsAddToCartButton.vue\n",{"type":65,"tag":208,"props":1408,"children":1409},{"class":210,"line":260},[1410,1414],{"type":65,"tag":208,"props":1411,"children":1412},{"style":225},[1413],{"type":71,"value":1401},{"type":65,"tag":208,"props":1415,"children":1416},{"style":240},[1417],{"type":71,"value":1418}," NsCartIcon.vue\n",{"type":65,"tag":208,"props":1420,"children":1421},{"class":210,"line":279},[1422,1426],{"type":65,"tag":208,"props":1423,"children":1424},{"style":225},[1425],{"type":71,"value":934},{"type":65,"tag":208,"props":1427,"children":1428},{"style":240},[1429],{"type":71,"value":1430}," ui/\n",{"type":65,"tag":208,"props":1432,"children":1433},{"class":210,"line":298},[1434,1438],{"type":65,"tag":208,"props":1435,"children":1436},{"style":225},[1437],{"type":71,"value":1401},{"type":65,"tag":208,"props":1439,"children":1440},{"style":240},[1441],{"type":71,"value":1442}," NsHeader.vue\n",{"type":65,"tag":208,"props":1444,"children":1445},{"class":210,"line":322},[1446,1450],{"type":65,"tag":208,"props":1447,"children":1448},{"style":225},[1449],{"type":71,"value":1401},{"type":65,"tag":208,"props":1451,"children":1452},{"style":240},[1453],{"type":71,"value":1454}," NsFooter.vue\n",{"type":65,"tag":208,"props":1456,"children":1457},{"class":210,"line":344},[1458,1462],{"type":65,"tag":208,"props":1459,"children":1460},{"style":225},[1461],{"type":71,"value":934},{"type":65,"tag":208,"props":1463,"children":1464},{"style":240},[1465],{"type":71,"value":257},{"type":65,"tag":208,"props":1467,"children":1468},{"class":210,"line":367},[1469,1473],{"type":65,"tag":208,"props":1470,"children":1471},{"style":225},[1472],{"type":71,"value":237},{"type":65,"tag":208,"props":1474,"children":1475},{"style":240},[1476],{"type":71,"value":1477}," molecules/\n",{"type":65,"tag":208,"props":1479,"children":1480},{"class":210,"line":385},[1481,1485],{"type":65,"tag":208,"props":1482,"children":1483},{"style":225},[1484],{"type":71,"value":934},{"type":65,"tag":208,"props":1486,"children":1487},{"style":240},[1488],{"type":71,"value":1489}," form/\n",{"type":65,"tag":208,"props":1491,"children":1492},{"class":210,"line":403},[1493,1497],{"type":65,"tag":208,"props":1494,"children":1495},{"style":225},[1496],{"type":71,"value":1401},{"type":65,"tag":208,"props":1498,"children":1499},{"style":240},[1500],{"type":71,"value":1501}," NsEmailInput.vue\n",{"type":65,"tag":208,"props":1503,"children":1504},{"class":210,"line":425},[1505,1509],{"type":65,"tag":208,"props":1506,"children":1507},{"style":225},[1508],{"type":71,"value":1401},{"type":65,"tag":208,"props":1510,"children":1511},{"style":240},[1512],{"type":71,"value":1513}," NsPasswordInput.vue\n",{"type":65,"tag":208,"props":1515,"children":1516},{"class":210,"line":447},[1517,1521],{"type":65,"tag":208,"props":1518,"children":1519},{"style":225},[1520],{"type":71,"value":934},{"type":65,"tag":208,"props":1522,"children":1523},{"style":240},[1524],{"type":71,"value":257},{"type":65,"tag":208,"props":1526,"children":1527},{"class":210,"line":465},[1528,1532],{"type":65,"tag":208,"props":1529,"children":1530},{"style":225},[1531],{"type":71,"value":237},{"type":65,"tag":208,"props":1533,"children":1534},{"style":240},[1535],{"type":71,"value":1536}," organisms/\n",{"type":65,"tag":208,"props":1538,"children":1539},{"class":210,"line":483},[1540,1544],{"type":65,"tag":208,"props":1541,"children":1542},{"style":225},[1543],{"type":71,"value":934},{"type":65,"tag":208,"props":1545,"children":1546},{"style":240},[1547],{"type":71,"value":1548}," address/\n",{"type":65,"tag":208,"props":1550,"children":1551},{"class":210,"line":501},[1552,1556],{"type":65,"tag":208,"props":1553,"children":1554},{"style":225},[1555],{"type":71,"value":1401},{"type":65,"tag":208,"props":1557,"children":1558},{"style":240},[1559],{"type":71,"value":1560}," NsAddressCard.vue\n",{"type":65,"tag":208,"props":1562,"children":1563},{"class":210,"line":522},[1564,1568],{"type":65,"tag":208,"props":1565,"children":1566},{"style":225},[1567],{"type":71,"value":934},{"type":65,"tag":208,"props":1569,"children":1570},{"style":240},[1571],{"type":71,"value":1393},{"type":65,"tag":208,"props":1573,"children":1574},{"class":210,"line":538},[1575,1579],{"type":65,"tag":208,"props":1576,"children":1577},{"style":225},[1578],{"type":71,"value":1401},{"type":65,"tag":208,"props":1580,"children":1581},{"style":240},[1582],{"type":71,"value":1583}," NsCartOverview.vue\n",{"type":65,"tag":208,"props":1585,"children":1586},{"class":210,"line":556},[1587,1591],{"type":65,"tag":208,"props":1588,"children":1589},{"style":225},[1590],{"type":71,"value":934},{"type":65,"tag":208,"props":1592,"children":1593},{"style":240},[1594],{"type":71,"value":1595}," forms/\n",{"type":65,"tag":208,"props":1597,"children":1598},{"class":210,"line":578},[1599,1603],{"type":65,"tag":208,"props":1600,"children":1601},{"style":225},[1602],{"type":71,"value":1401},{"type":65,"tag":208,"props":1604,"children":1605},{"style":240},[1606],{"type":71,"value":1607}," NsSignUpForm.vue\n",{"type":65,"tag":208,"props":1609,"children":1610},{"class":210,"line":594},[1611,1615],{"type":65,"tag":208,"props":1612,"children":1613},{"style":225},[1614],{"type":71,"value":1401},{"type":65,"tag":208,"props":1616,"children":1617},{"style":240},[1618],{"type":71,"value":1619}," NsAddressForm.vue\n",{"type":65,"tag":208,"props":1621,"children":1622},{"class":210,"line":612},[1623,1627],{"type":65,"tag":208,"props":1624,"children":1625},{"style":225},[1626],{"type":71,"value":934},{"type":65,"tag":208,"props":1628,"children":1629},{"style":240},[1630],{"type":71,"value":257},{"type":65,"tag":74,"props":1632,"children":1633},{},[1634,1636,1641],{"type":71,"value":1635},"For more information about available NuxtStore components for Vue (Nuxt), check out ",{"type":65,"tag":122,"props":1637,"children":1638},{"href":60},[1639],{"type":71,"value":1640},"documentation",{"type":71,"value":1642},".",{"type":65,"tag":101,"props":1644,"children":1645},{},[1646,1715],{"type":65,"tag":105,"props":1647,"children":1648},{},[1649,1654],{"type":65,"tag":118,"props":1650,"children":1651},{},[1652],{"type":71,"value":1653},"Convention:",{"type":65,"tag":101,"props":1655,"children":1656},{},[1657,1684,1710],{"type":65,"tag":105,"props":1658,"children":1659},{},[1660,1662,1668,1670,1676,1677,1683],{"type":71,"value":1661},"Vue (Nuxt) components should follow ",{"type":65,"tag":109,"props":1663,"children":1665},{"className":1664},[],[1666],{"type":71,"value":1667},"PascalCase",{"type":71,"value":1669}," pattern (",{"type":65,"tag":109,"props":1671,"children":1673},{"className":1672},[],[1674],{"type":71,"value":1675},"CategoryFilters",{"type":71,"value":1158},{"type":65,"tag":109,"props":1678,"children":1680},{"className":1679},[],[1681],{"type":71,"value":1682},"Heading",{"type":71,"value":1077},{"type":65,"tag":105,"props":1685,"children":1686},{},[1687,1689,1695,1697,1703,1704],{"type":71,"value":1688},"The types for component's props should be named ",{"type":65,"tag":109,"props":1690,"children":1692},{"className":1691},[],[1693],{"type":71,"value":1694},"{Component}Props",{"type":71,"value":1696}," and exist in the same SFC as the component. For example, ",{"type":65,"tag":109,"props":1698,"children":1700},{"className":1699},[],[1701],{"type":71,"value":1702},"GalleryProps",{"type":71,"value":965},{"type":65,"tag":109,"props":1705,"children":1707},{"className":1706},[],[1708],{"type":71,"value":1709},"HeadingProps",{"type":65,"tag":105,"props":1711,"children":1712},{},[1713],{"type":71,"value":1714},"Line of code in a single file component must not exceed 200 (formatted)",{"type":65,"tag":105,"props":1716,"children":1717},{},[1718,1723,1725,1732,1734],{"type":65,"tag":118,"props":1719,"children":1720},{},[1721],{"type":71,"value":1722},"Prop Declaration:",{"type":71,"value":1724}," In vue, there are multiple ways to define component props especially with typescript. [",{"type":65,"tag":122,"props":1726,"children":1729},{"href":1727,"rel":1728},"https://vuejs.org/guide/typescript/composition-api.html#typing-component-props",[126],[1730],{"type":71,"value":1731},"checkout official docs",{"type":71,"value":1733},"] To ensure consistency and still allow customisability, we have adopted the following pattern.",{"type":65,"tag":101,"props":1735,"children":1736},{},[1737],{"type":65,"tag":105,"props":1738,"children":1739},{},[1740,1742,1748,1750],{"type":71,"value":1741},"Multiword props are defined in ",{"type":65,"tag":109,"props":1743,"children":1745},{"className":1744},[],[1746],{"type":71,"value":1747},"camelCase",{"type":71,"value":1749}," and passed in template as ",{"type":65,"tag":109,"props":1751,"children":1753},{"className":1752},[],[1754],{"type":71,"value":1755},"kebab-case",{"type":65,"tag":74,"props":1757,"children":1758},{},[1759],{"type":71,"value":1760},"Example:",{"type":65,"tag":198,"props":1762,"children":1766},{"className":1763,"code":1764,"language":1765,"meta":60,"style":60},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export type CartActionProps = {\n icon?: string,\n label?: string,\n ...\n};\n\nconst props = withDefaults(defineProps\u003CCartActionProps>(), {\n icon: \"pi pi-cart\",\n label: \"Add to cart\"\n});\n","ts",[1767],{"type":65,"tag":109,"props":1768,"children":1769},{"__ignoreMap":60},[1770,1801,1825,1845,1853,1861,1868,1931,1962,1987],{"type":65,"tag":208,"props":1771,"children":1772},{"class":210,"line":211},[1773,1779,1785,1790,1796],{"type":65,"tag":208,"props":1774,"children":1776},{"style":1775},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[1777],{"type":71,"value":1778},"export",{"type":65,"tag":208,"props":1780,"children":1782},{"style":1781},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[1783],{"type":71,"value":1784}," type",{"type":65,"tag":208,"props":1786,"children":1787},{"style":225},[1788],{"type":71,"value":1789}," CartActionProps",{"type":65,"tag":208,"props":1791,"children":1793},{"style":1792},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[1794],{"type":71,"value":1795}," =",{"type":65,"tag":208,"props":1797,"children":1798},{"style":1792},[1799],{"type":71,"value":1800}," {\n",{"type":65,"tag":208,"props":1802,"children":1803},{"class":210,"line":221},[1804,1810,1815,1820],{"type":65,"tag":208,"props":1805,"children":1807},{"style":1806},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[1808],{"type":71,"value":1809}," icon",{"type":65,"tag":208,"props":1811,"children":1812},{"style":1792},[1813],{"type":71,"value":1814},"?:",{"type":65,"tag":208,"props":1816,"children":1817},{"style":225},[1818],{"type":71,"value":1819}," string",{"type":65,"tag":208,"props":1821,"children":1822},{"style":1792},[1823],{"type":71,"value":1824},",\n",{"type":65,"tag":208,"props":1826,"children":1827},{"class":210,"line":231},[1828,1833,1837,1841],{"type":65,"tag":208,"props":1829,"children":1830},{"style":1806},[1831],{"type":71,"value":1832}," label",{"type":65,"tag":208,"props":1834,"children":1835},{"style":1792},[1836],{"type":71,"value":1814},{"type":65,"tag":208,"props":1838,"children":1839},{"style":225},[1840],{"type":71,"value":1819},{"type":65,"tag":208,"props":1842,"children":1843},{"style":1792},[1844],{"type":71,"value":1824},{"type":65,"tag":208,"props":1846,"children":1847},{"class":210,"line":246},[1848],{"type":65,"tag":208,"props":1849,"children":1850},{"style":1792},[1851],{"type":71,"value":1852}," ...\n",{"type":65,"tag":208,"props":1854,"children":1855},{"class":210,"line":260},[1856],{"type":65,"tag":208,"props":1857,"children":1858},{"style":1792},[1859],{"type":71,"value":1860},"};\n",{"type":65,"tag":208,"props":1862,"children":1863},{"class":210,"line":279},[1864],{"type":65,"tag":208,"props":1865,"children":1866},{"emptyLinePlaceholder":215},[1867],{"type":71,"value":218},{"type":65,"tag":208,"props":1869,"children":1870},{"class":210,"line":298},[1871,1876,1881,1886,1892,1897,1902,1907,1912,1917,1922,1927],{"type":65,"tag":208,"props":1872,"children":1873},{"style":1781},[1874],{"type":71,"value":1875},"const",{"type":65,"tag":208,"props":1877,"children":1878},{"style":292},[1879],{"type":71,"value":1880}," props ",{"type":65,"tag":208,"props":1882,"children":1883},{"style":1792},[1884],{"type":71,"value":1885},"=",{"type":65,"tag":208,"props":1887,"children":1889},{"style":1888},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[1890],{"type":71,"value":1891}," withDefaults",{"type":65,"tag":208,"props":1893,"children":1894},{"style":292},[1895],{"type":71,"value":1896},"(",{"type":65,"tag":208,"props":1898,"children":1899},{"style":1888},[1900],{"type":71,"value":1901},"defineProps",{"type":65,"tag":208,"props":1903,"children":1904},{"style":1792},[1905],{"type":71,"value":1906},"\u003C",{"type":65,"tag":208,"props":1908,"children":1909},{"style":225},[1910],{"type":71,"value":1911},"CartActionProps",{"type":65,"tag":208,"props":1913,"children":1914},{"style":1792},[1915],{"type":71,"value":1916},">",{"type":65,"tag":208,"props":1918,"children":1919},{"style":292},[1920],{"type":71,"value":1921},"()",{"type":65,"tag":208,"props":1923,"children":1924},{"style":1792},[1925],{"type":71,"value":1926},",",{"type":65,"tag":208,"props":1928,"children":1929},{"style":1792},[1930],{"type":71,"value":1800},{"type":65,"tag":208,"props":1932,"children":1933},{"class":210,"line":322},[1934,1938,1943,1948,1953,1958],{"type":65,"tag":208,"props":1935,"children":1936},{"style":1806},[1937],{"type":71,"value":1809},{"type":65,"tag":208,"props":1939,"children":1940},{"style":1792},[1941],{"type":71,"value":1942},":",{"type":65,"tag":208,"props":1944,"children":1945},{"style":1792},[1946],{"type":71,"value":1947}," \"",{"type":65,"tag":208,"props":1949,"children":1950},{"style":240},[1951],{"type":71,"value":1952},"pi pi-cart",{"type":65,"tag":208,"props":1954,"children":1955},{"style":1792},[1956],{"type":71,"value":1957},"\"",{"type":65,"tag":208,"props":1959,"children":1960},{"style":1792},[1961],{"type":71,"value":1824},{"type":65,"tag":208,"props":1963,"children":1964},{"class":210,"line":344},[1965,1969,1973,1977,1982],{"type":65,"tag":208,"props":1966,"children":1967},{"style":1806},[1968],{"type":71,"value":1832},{"type":65,"tag":208,"props":1970,"children":1971},{"style":1792},[1972],{"type":71,"value":1942},{"type":65,"tag":208,"props":1974,"children":1975},{"style":1792},[1976],{"type":71,"value":1947},{"type":65,"tag":208,"props":1978,"children":1979},{"style":240},[1980],{"type":71,"value":1981},"Add to cart",{"type":65,"tag":208,"props":1983,"children":1984},{"style":1792},[1985],{"type":71,"value":1986},"\"\n",{"type":65,"tag":208,"props":1988,"children":1989},{"class":210,"line":367},[1990,1995,1999],{"type":65,"tag":208,"props":1991,"children":1992},{"style":1792},[1993],{"type":71,"value":1994},"}",{"type":65,"tag":208,"props":1996,"children":1997},{"style":292},[1998],{"type":71,"value":1077},{"type":65,"tag":208,"props":2000,"children":2001},{"style":1792},[2002],{"type":71,"value":2003},";\n",{"type":65,"tag":1222,"props":2005,"children":2007},{"id":2006},"state-management",[2008],{"type":71,"value":37},{"type":65,"tag":74,"props":2010,"children":2011},{},[2012,2014,2021],{"type":71,"value":2013},"We are using ",{"type":65,"tag":122,"props":2015,"children":2018},{"href":2016,"rel":2017},"https://pinia.vuejs.org/ssr/nuxt.html",[126],[2019],{"type":71,"value":2020},"Pinia state management",{"type":71,"value":2022}," to lock the data responsibility along with the composition functions (composables).",{"type":65,"tag":101,"props":2024,"children":2025},{},[2026,2040,2053,2078,2094],{"type":65,"tag":105,"props":2027,"children":2028},{},[2029,2031,2038],{"type":71,"value":2030},"Pinia stores are defined in the style of ",{"type":65,"tag":122,"props":2032,"children":2035},{"href":2033,"rel":2034},"https://pinia.vuejs.org/core-concepts/#Setup-Stores",[126],[2036],{"type":71,"value":2037},"Setup stores",{"type":71,"value":2039},", keeping performance and modern standards in view",{"type":65,"tag":105,"props":2041,"children":2042},{},[2043,2045,2051],{"type":71,"value":2044},"Each store file must end with a ",{"type":65,"tag":109,"props":2046,"children":2048},{"className":2047},[],[2049],{"type":71,"value":2050},".store.ts",{"type":71,"value":2052}," extension",{"type":65,"tag":105,"props":2054,"children":2055},{},[2056,2058,2064,2065,2070,2072,2077],{"type":71,"value":2057},"Store methods are as modular and reusable as possible and do not perform side effects. If required, new action is created in order to handle ",{"type":65,"tag":109,"props":2059,"children":2061},{"className":2060},[],[2062],{"type":71,"value":2063},"post{Action}",{"type":71,"value":1314},{"type":65,"tag":118,"props":2066,"children":2067},{},[2068],{"type":71,"value":2069},"addToCart",{"type":71,"value":2071}," , ",{"type":65,"tag":118,"props":2073,"children":2074},{},[2075],{"type":71,"value":2076},"postAddToCart",{"type":71,"value":1077},{"type":65,"tag":105,"props":2079,"children":2080},{},[2081,2092],{"type":65,"tag":122,"props":2082,"children":2085},{"href":2083,"rel":2084},"https://nuxt.com/docs/getting-started/state-management",[126],[2086],{"type":65,"tag":109,"props":2087,"children":2089},{"className":2088},[],[2090],{"type":71,"value":2091},"useState",{"type":71,"value":2093}," is used in very narrow context where creating global store for shared state doesn't make sense",{"type":65,"tag":105,"props":2095,"children":2096},{},[2097],{"type":71,"value":2098},"Sequentially a store structure should have state >> getters >> actions for readability",{"type":65,"tag":1222,"props":2100,"children":2101},{"id":991},[2102],{"type":71,"value":2103},"Composables",{"type":65,"tag":74,"props":2105,"children":2106},{},[2107,2109,2115],{"type":71,"value":2108},"Composables are useful when stateful logic has to be reused across components - e.g. controlling component state or leverage lifecycle hooks or accessing DOM api.\nProject composables are located on top level inside the ",{"type":65,"tag":109,"props":2110,"children":2112},{"className":2111},[],[2113],{"type":71,"value":2114},"composables/",{"type":71,"value":1256},{"type":65,"tag":74,"props":2117,"children":2118},{},[2119],{"type":65,"tag":118,"props":2120,"children":2121},{},[2122],{"type":71,"value":1653},{"type":65,"tag":101,"props":2124,"children":2125},{},[2126,2146,2164,2169,2190,2201],{"type":65,"tag":105,"props":2127,"children":2128},{},[2129,2131,2137,2139,2145],{"type":71,"value":2130},"Each composable should be prefixed with ",{"type":65,"tag":109,"props":2132,"children":2134},{"className":2133},[],[2135],{"type":71,"value":2136},"use",{"type":71,"value":2138}," keyword (",{"type":65,"tag":109,"props":2140,"children":2142},{"className":2141},[],[2143],{"type":71,"value":2144},"useCartStatus",{"type":71,"value":1077},{"type":65,"tag":105,"props":2147,"children":2148},{},[2149,2151,2156,2157,2163],{"type":71,"value":2150},"Composables should follow ",{"type":65,"tag":109,"props":2152,"children":2154},{"className":2153},[],[2155],{"type":71,"value":1747},{"type":71,"value":1669},{"type":65,"tag":109,"props":2158,"children":2160},{"className":2159},[],[2161],{"type":71,"value":2162},"useProductReviews",{"type":71,"value":1077},{"type":65,"tag":105,"props":2165,"children":2166},{},[2167],{"type":71,"value":2168},"Composables follow single responsibility principle. Avoid calling side effects inside composables",{"type":65,"tag":105,"props":2170,"children":2171},{},[2172,2174,2181,2183,2188],{"type":71,"value":2173},"This project inherits most of the composables from ",{"type":65,"tag":122,"props":2175,"children":2178},{"href":2176,"rel":2177},"https://vueuse.org/guide/best-practice.html",[126],[2179],{"type":71,"value":2180},"vueuse",{"type":71,"value":2182}," library. Always search for an already available ",{"type":65,"tag":109,"props":2184,"children":2186},{"className":2185},[],[2187],{"type":71,"value":2180},{"type":71,"value":2189}," composable before writing on own for common tasks or DOM manipulation.",{"type":65,"tag":105,"props":2191,"children":2192},{},[2193,2199],{"type":65,"tag":122,"props":2194,"children":2197},{"href":2195,"rel":2196},"https://vuejs.org/guide/reusability/composables.html#conventions-and-best-practices",[126],[2198],{"type":71,"value":2103},{"type":71,"value":2200}," should only be called in synchronous environment and on top level. Remember to clean attached event handlers or timeouts if defined inside a composable using vue's unmount hooks",{"type":65,"tag":105,"props":2202,"children":2203},{},[2204,2206],{"type":71,"value":2205},"Built-in Nuxt composables must be called in the right context to avoid critical errors such as ",{"type":65,"tag":122,"props":2207,"children":2210},{"href":2208,"rel":2209},"https://nuxt.com/docs/guide/concepts/auto-imports#vue-and-nuxt-composables",[126],[2211],{"type":71,"value":2212},"Nuxt instance unavailable",{"type":65,"tag":163,"props":2214,"children":2215},{},[2216],{"type":65,"tag":74,"props":2217,"children":2218},{},[2219,2223],{"type":65,"tag":118,"props":2220,"children":2221},{},[2222],{"type":71,"value":1199},{"type":71,"value":2224}," State connected to the certain composable is read-only and reactive. They are modified by the internal modifiers (setters)",{"type":65,"tag":1222,"props":2226,"children":2228},{"id":2227},"utils",[2229],{"type":71,"value":2230},"Utils",{"type":65,"tag":74,"props":2232,"children":2233},{},[2234],{"type":71,"value":2235},"Main purpose of utils is to encapsulate non-reactive helper method logic and draw a semantic boundary between reactive composables and other auto-imported utility functions. Utils are contained inside the Shared/ folder. This project follows some simple conventions for utils:",{"type":65,"tag":101,"props":2237,"children":2238},{},[2239,2252,2270,2275,2280],{"type":65,"tag":105,"props":2240,"children":2241},{},[2242,2244,2250],{"type":71,"value":2243},"Project utils end with a ",{"type":65,"tag":109,"props":2245,"children":2247},{"className":2246},[],[2248],{"type":71,"value":2249},".utils.ts",{"type":71,"value":2251}," extension (e.g format.utils.ts, wishlist.utils.ts)",{"type":65,"tag":105,"props":2253,"children":2254},{},[2255,2261,2263,2268],{"type":65,"tag":109,"props":2256,"children":2258},{"className":2257},[],[2259],{"type":71,"value":2260},"utils/index.utils.ts",{"type":71,"value":2262}," contains all the shared functions across all contexts/features (e.g ",{"type":65,"tag":118,"props":2264,"children":2265},{},[2266],{"type":71,"value":2267},"isEqual\u003CT>(a,b)",{"type":71,"value":2269}," compares two entities for equality)",{"type":65,"tag":105,"props":2271,"children":2272},{},[2273],{"type":71,"value":2274},"Named exports are preferred over default export (e.g export function cleanUserInput(){ })",{"type":65,"tag":105,"props":2276,"children":2277},{},[2278],{"type":71,"value":2279},"One utility method can have multiple exports, allowing relevant functions to be grouped together",{"type":65,"tag":105,"props":2281,"children":2282},{},[2283],{"type":71,"value":2284},"Utility functions are synchronous and do not communicate with any reactive source (store/composables)",{"type":65,"tag":1222,"props":2286,"children":2288},{"id":2287},"localization",[2289],{"type":71,"value":2290},"Localization",{"type":65,"tag":74,"props":2292,"children":2293},{},[2294,2296,2303,2305,2311,2313,2319,2321,2326],{"type":71,"value":2295},"NuxtStore ships with a basic setup for i18n localization powered by the ",{"type":65,"tag":122,"props":2297,"children":2300},{"href":2298,"rel":2299},"https://i18n.nuxtjs.org",[126],[2301],{"type":71,"value":2302},"Nuxt-i18n",{"type":71,"value":2304}," library. Project locale translations are stored in ",{"type":65,"tag":109,"props":2306,"children":2308},{"className":2307},[],[2309],{"type":71,"value":2310},"locale/[namespace].json",{"type":71,"value":2312}," files. Translations are grouped by ",{"type":65,"tag":2314,"props":2315,"children":2316},"em",{},[2317],{"type":71,"value":2318},"features",{"type":71,"value":2320},", and imported only where required to minimize bundle size.\nRefer to the ",{"type":65,"tag":122,"props":2322,"children":2324},{"href":2298,"rel":2323},[126],[2325],{"type":71,"value":2302},{"type":71,"value":2327}," documentation for translating content with SSR support.",{"type":65,"tag":1222,"props":2329,"children":2331},{"id":2330},"testing",[2332],{"type":71,"value":2333},"Testing",{"type":65,"tag":74,"props":2335,"children":2336},{},[2337,2339,2346,2347,2354,2356,2363],{"type":71,"value":2338},"The project provides a basic setup for testing TypeScript code with ",{"type":65,"tag":122,"props":2340,"children":2343},{"href":2341,"rel":2342},"https://vitest.dev/",[126],[2344],{"type":71,"value":2345},"Vitest",{"type":71,"value":151},{"type":65,"tag":122,"props":2348,"children":2351},{"href":2349,"rel":2350},"https://test-utils.vuejs.org/guide/",[126],[2352],{"type":71,"value":2353},"Vue Test Utils",{"type":71,"value":2355}," for testing Vue (Nuxt) components and ",{"type":65,"tag":122,"props":2357,"children":2360},{"href":2358,"rel":2359},"https://pinia.vuejs.org/cookbook/testing.html#Mocking-the-returned-value-of-an-action",[126],[2361],{"type":71,"value":2362},"pinia stores",{"type":71,"value":1642},{"type":65,"tag":74,"props":2365,"children":2366},{},[2367,2369,2375],{"type":71,"value":2368},"Testing configuration files: (runs on nuxt environment and ",{"type":65,"tag":109,"props":2370,"children":2372},{"className":2371},[],[2373],{"type":71,"value":2374},"happy-dom",{"type":71,"value":1077},{"type":65,"tag":101,"props":2377,"children":2378},{},[2379],{"type":65,"tag":105,"props":2380,"children":2381},{},[2382,2388],{"type":65,"tag":109,"props":2383,"children":2385},{"className":2384},[],[2386],{"type":71,"value":2387},"vitest.config.ts",{"type":71,"value":2389}," - Test runner config file",{"type":65,"tag":74,"props":2391,"children":2392},{},[2393],{"type":71,"value":2394},"Testing commands:",{"type":65,"tag":101,"props":2396,"children":2397},{},[2398,2409],{"type":65,"tag":105,"props":2399,"children":2400},{},[2401,2407],{"type":65,"tag":109,"props":2402,"children":2404},{"className":2403},[],[2405],{"type":71,"value":2406},"npm run unittest",{"type":71,"value":2408}," - Run all the test scripts in the project (in watch mode by default)",{"type":65,"tag":105,"props":2410,"children":2411},{},[2412,2418],{"type":65,"tag":109,"props":2413,"children":2415},{"className":2414},[],[2416],{"type":71,"value":2417},"npm run unittest \u003CComponent>",{"type":71,"value":2419}," - Run specific component/feature mocks",{"type":65,"tag":1222,"props":2421,"children":2423},{"id":2422},"conventions-enforced-by-automated-tooling",[2424],{"type":71,"value":2425},"Conventions enforced by automated tooling",{"type":65,"tag":74,"props":2427,"children":2428},{},[2429],{"type":71,"value":2430},"To help you code with best practices in mind, this boilerplate comes with some automated tooling.",{"type":65,"tag":101,"props":2432,"children":2433},{},[2434,2445],{"type":65,"tag":105,"props":2435,"children":2436},{},[2437,2439],{"type":71,"value":2438},"All test descriptions follow naming convention ",{"type":65,"tag":109,"props":2440,"children":2442},{"className":2441},[],[2443],{"type":71,"value":2444},"test('should \u003Ccomponent>... ')",{"type":65,"tag":105,"props":2446,"children":2447},{},[2448,2450],{"type":71,"value":2449},"Automatic code linting is managed by ",{"type":65,"tag":122,"props":2451,"children":2454},{"href":2452,"rel":2453},"https://eslint.nuxt.com/packages/config",[126],[2455],{"type":71,"value":2456},"nuxt-eslint-module",{"type":65,"tag":1222,"props":2458,"children":2460},{"id":2459},"cache-control",[2461],{"type":71,"value":2462},"Cache control",{"type":65,"tag":74,"props":2464,"children":2465},{},[2466,2468,2474,2476,2482],{"type":71,"value":2467},"As the initial Nuxt setup is not caching images generated by ",{"type":65,"tag":109,"props":2469,"children":2471},{"className":2470},[],[2472],{"type":71,"value":2473},"NuxtImg",{"type":71,"value":2475},", the ",{"type":65,"tag":109,"props":2477,"children":2479},{"className":2478},[],[2480],{"type":71,"value":2481},"nuxt.config.ts",{"type":71,"value":2483}," in this repository has been extended to cache those images as well (by setting proper headers):",{"type":65,"tag":198,"props":2485,"children":2487},{"className":1763,"code":2486,"language":1765,"meta":60,"style":60},"routeRules: {\n '/_ipx/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/icons/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },\n '/favicon.ico': { headers: { 'cache-control': `putypescriptblic, max-age=31536000, immutable` } },\n},\n",[2488],{"type":65,"tag":109,"props":2489,"children":2490},{"__ignoreMap":60},[2491,2507,2591,2663,2736],{"type":65,"tag":208,"props":2492,"children":2493},{"class":210,"line":211},[2494,2499,2503],{"type":65,"tag":208,"props":2495,"children":2496},{"style":225},[2497],{"type":71,"value":2498},"routeRules",{"type":65,"tag":208,"props":2500,"children":2501},{"style":1792},[2502],{"type":71,"value":1942},{"type":65,"tag":208,"props":2504,"children":2505},{"style":1792},[2506],{"type":71,"value":1800},{"type":65,"tag":208,"props":2508,"children":2509},{"class":210,"line":221},[2510,2515,2520,2525,2530,2535,2540,2544,2549,2554,2558,2562,2566,2571,2576,2581,2586],{"type":65,"tag":208,"props":2511,"children":2512},{"style":1792},[2513],{"type":71,"value":2514}," '",{"type":65,"tag":208,"props":2516,"children":2517},{"style":240},[2518],{"type":71,"value":2519},"/_ipx/**",{"type":65,"tag":208,"props":2521,"children":2522},{"style":1792},[2523],{"type":71,"value":2524},"'",{"type":65,"tag":208,"props":2526,"children":2527},{"style":1806},[2528],{"type":71,"value":2529},": ",{"type":65,"tag":208,"props":2531,"children":2532},{"style":1792},[2533],{"type":71,"value":2534},"{",{"type":65,"tag":208,"props":2536,"children":2537},{"style":1806},[2538],{"type":71,"value":2539}," headers",{"type":65,"tag":208,"props":2541,"children":2542},{"style":1792},[2543],{"type":71,"value":1942},{"type":65,"tag":208,"props":2545,"children":2546},{"style":1792},[2547],{"type":71,"value":2548}," {",{"type":65,"tag":208,"props":2550,"children":2551},{"style":1792},[2552],{"type":71,"value":2553}," '",{"type":65,"tag":208,"props":2555,"children":2556},{"style":1806},[2557],{"type":71,"value":2459},{"type":65,"tag":208,"props":2559,"children":2560},{"style":1792},[2561],{"type":71,"value":2524},{"type":65,"tag":208,"props":2563,"children":2564},{"style":1792},[2565],{"type":71,"value":1942},{"type":65,"tag":208,"props":2567,"children":2568},{"style":1792},[2569],{"type":71,"value":2570}," `",{"type":65,"tag":208,"props":2572,"children":2573},{"style":240},[2574],{"type":71,"value":2575},"public, max-age=31536000, immutable",{"type":65,"tag":208,"props":2577,"children":2578},{"style":1792},[2579],{"type":71,"value":2580},"`",{"type":65,"tag":208,"props":2582,"children":2583},{"style":1792},[2584],{"type":71,"value":2585}," }",{"type":65,"tag":208,"props":2587,"children":2588},{"style":1792},[2589],{"type":71,"value":2590}," },\n",{"type":65,"tag":208,"props":2592,"children":2593},{"class":210,"line":231},[2594,2598,2603,2607,2611,2615,2619,2623,2627,2631,2635,2639,2643,2647,2651,2655,2659],{"type":65,"tag":208,"props":2595,"children":2596},{"style":1792},[2597],{"type":71,"value":2514},{"type":65,"tag":208,"props":2599,"children":2600},{"style":240},[2601],{"type":71,"value":2602},"/icons/**",{"type":65,"tag":208,"props":2604,"children":2605},{"style":1792},[2606],{"type":71,"value":2524},{"type":65,"tag":208,"props":2608,"children":2609},{"style":1806},[2610],{"type":71,"value":2529},{"type":65,"tag":208,"props":2612,"children":2613},{"style":1792},[2614],{"type":71,"value":2534},{"type":65,"tag":208,"props":2616,"children":2617},{"style":1806},[2618],{"type":71,"value":2539},{"type":65,"tag":208,"props":2620,"children":2621},{"style":1792},[2622],{"type":71,"value":1942},{"type":65,"tag":208,"props":2624,"children":2625},{"style":1792},[2626],{"type":71,"value":2548},{"type":65,"tag":208,"props":2628,"children":2629},{"style":1792},[2630],{"type":71,"value":2553},{"type":65,"tag":208,"props":2632,"children":2633},{"style":1806},[2634],{"type":71,"value":2459},{"type":65,"tag":208,"props":2636,"children":2637},{"style":1792},[2638],{"type":71,"value":2524},{"type":65,"tag":208,"props":2640,"children":2641},{"style":1792},[2642],{"type":71,"value":1942},{"type":65,"tag":208,"props":2644,"children":2645},{"style":1792},[2646],{"type":71,"value":2570},{"type":65,"tag":208,"props":2648,"children":2649},{"style":240},[2650],{"type":71,"value":2575},{"type":65,"tag":208,"props":2652,"children":2653},{"style":1792},[2654],{"type":71,"value":2580},{"type":65,"tag":208,"props":2656,"children":2657},{"style":1792},[2658],{"type":71,"value":2585},{"type":65,"tag":208,"props":2660,"children":2661},{"style":1792},[2662],{"type":71,"value":2590},{"type":65,"tag":208,"props":2664,"children":2665},{"class":210,"line":246},[2666,2670,2675,2679,2683,2687,2691,2695,2699,2703,2707,2711,2715,2719,2724,2728,2732],{"type":65,"tag":208,"props":2667,"children":2668},{"style":1792},[2669],{"type":71,"value":2514},{"type":65,"tag":208,"props":2671,"children":2672},{"style":240},[2673],{"type":71,"value":2674},"/favicon.ico",{"type":65,"tag":208,"props":2676,"children":2677},{"style":1792},[2678],{"type":71,"value":2524},{"type":65,"tag":208,"props":2680,"children":2681},{"style":1806},[2682],{"type":71,"value":2529},{"type":65,"tag":208,"props":2684,"children":2685},{"style":1792},[2686],{"type":71,"value":2534},{"type":65,"tag":208,"props":2688,"children":2689},{"style":1806},[2690],{"type":71,"value":2539},{"type":65,"tag":208,"props":2692,"children":2693},{"style":1792},[2694],{"type":71,"value":1942},{"type":65,"tag":208,"props":2696,"children":2697},{"style":1792},[2698],{"type":71,"value":2548},{"type":65,"tag":208,"props":2700,"children":2701},{"style":1792},[2702],{"type":71,"value":2553},{"type":65,"tag":208,"props":2704,"children":2705},{"style":1806},[2706],{"type":71,"value":2459},{"type":65,"tag":208,"props":2708,"children":2709},{"style":1792},[2710],{"type":71,"value":2524},{"type":65,"tag":208,"props":2712,"children":2713},{"style":1792},[2714],{"type":71,"value":1942},{"type":65,"tag":208,"props":2716,"children":2717},{"style":1792},[2718],{"type":71,"value":2570},{"type":65,"tag":208,"props":2720,"children":2721},{"style":240},[2722],{"type":71,"value":2723},"putypescriptblic, max-age=31536000, immutable",{"type":65,"tag":208,"props":2725,"children":2726},{"style":1792},[2727],{"type":71,"value":2580},{"type":65,"tag":208,"props":2729,"children":2730},{"style":1792},[2731],{"type":71,"value":2585},{"type":65,"tag":208,"props":2733,"children":2734},{"style":1792},[2735],{"type":71,"value":2590},{"type":65,"tag":208,"props":2737,"children":2738},{"class":210,"line":260},[2739],{"type":65,"tag":208,"props":2740,"children":2741},{"style":1792},[2742],{"type":71,"value":2743},"},\n",{"type":65,"tag":74,"props":2745,"children":2746},{},[2747,2749,2756],{"type":71,"value":2748},"You can read about more possible rules in the ",{"type":65,"tag":122,"props":2750,"children":2753},{"href":2751,"rel":2752},"https://nuxt.com/docs/guide/concepts/rendering#hybrid-rendering",[126],[2754],{"type":71,"value":2755},"Nuxt documentation",{"type":71,"value":1642},{"type":65,"tag":177,"props":2758,"children":2760},{"id":2759},"more-about-performance",[2761],{"type":71,"value":2762},"More about performance",{"type":65,"tag":74,"props":2764,"children":2765},{},[2766,2768,2775],{"type":71,"value":2767},"Additional performance good practices and vue project guide can be found ",{"type":65,"tag":122,"props":2769,"children":2772},{"href":2770,"rel":2771},"https://docs.vaah.dev/guide/vue-and-nuxt-performance-improvement",[126],[2773],{"type":71,"value":2774},"HERE",{"type":71,"value":1642},{"type":65,"tag":1222,"props":2777,"children":2779},{"id":2778},"recommended-ide-setup",[2780],{"type":71,"value":2781},"Recommended IDE setup",{"type":65,"tag":2783,"props":2784,"children":2785},"ol",{},[2786,2799],{"type":65,"tag":105,"props":2787,"children":2788},{},[2789,2791,2797],{"type":71,"value":2790},"Visual Studio Code (with prettier_extension @",{"type":65,"tag":109,"props":2792,"children":2794},{"className":2793},[],[2795],{"type":71,"value":2796},"v9.14.0",{"type":71,"value":2798}," exact and the latest version of microsoft eslint_extension)",{"type":65,"tag":105,"props":2800,"children":2801},{},[2802,2804,2811],{"type":71,"value":2803},"webstorm (for developers comfortable in jetbrains IDE like phpstorm with no extra configuration -\n",{"type":65,"tag":122,"props":2805,"children":2808},{"href":2806,"rel":2807},"https://www.jetbrains.com/help/webstorm/eslint.html#ws_js_eslint_activate",[126],[2809],{"type":71,"value":2810},"ws_eslint_customisation_guide",{"type":71,"value":1077},{"type":65,"tag":2813,"props":2814,"children":2815},"style",{},[2816],{"type":71,"value":2817},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":60,"searchDepth":221,"depth":221,"links":2819},[2820,2821,2822],{"id":68,"depth":221,"text":72},{"id":86,"depth":221,"text":89},{"id":1034,"depth":221,"text":1037,"children":2823},[2824,2825,2826,2827,2828,2829,2830,2831,2832],{"id":955,"depth":231,"text":1226},{"id":2006,"depth":231,"text":37},{"id":991,"depth":231,"text":2103},{"id":2227,"depth":231,"text":2230},{"id":2287,"depth":231,"text":2290},{"id":2330,"depth":231,"text":2333},{"id":2422,"depth":231,"text":2425},{"id":2459,"depth":231,"text":2462},{"id":2778,"depth":231,"text":2781},"markdown","content:3.web:guide.md","content","3.web/guide.md","3.web/guide","md",[2840,2841],{"_path":49,"title":48,"description":2841},null,1741786570869] \ No newline at end of file diff --git a/web/guide/index.html b/web/guide/index.html new file mode 100644 index 0000000..54861f4 --- /dev/null +++ b/web/guide/index.html @@ -0,0 +1,170 @@ +Guide - Nuxt UI Pro - Docs template
Web

Guide

Brief overview & Development guide

NuxtStore is a platform-agnostic ecommerce frontend solution that allows seamless integration with various ecommerce backends! It provides tools for building customizable, high-performance online storefronts.

This guide will provide you with an overview of the project structure, tools and best practices to help you get started quickly.

Project Structure

This project follows a modular and scalable architecture, by decoupling the composable frontend from the server middleware allowing for easy collaboration among multiple teams and ensuring consistent development practices across the codebase.

The architecture includes the following apps:

  • server - NuxtStore server middleware powered by Fastify
  • web - A typescript based web application powered by Nuxt and Vue

Note: These two standalone modules are capable of being integrated with any backend service with consistent APIs without extra configuration to setup.

Web application

Web app follows a typical Nuxt.js directory structure with a few tweaks:


+apps/
+ └── root/
+     ├── ...
+     ├── assets/                  # Static assets
+     ├── components/              
+   ├── atoms/               # Atomic components related to feature (e.g atoms/cart/NsAddToCartButton.vue)
+   ├── molecules/           # Molecular components made using atoms (e.g molecules/form/NsEmailInput.vue)
+   └── organisms/           # Large components made using atoms and molecules (e.g organisms/address/NsAddressCard.vue)
+     ├── composables/             # Custom hooks composing reactive logic
+     ├── constants/               
+   ├── api.ts               # API-related constants (HTTP methods)
+   └── ui.ts                # UI-related constants (colors, breakpoints)
+     ├── data/                    # Static data or JSON files
+     ├── layouts/                 # Nuxt Layouts
+     ├── middleware/              # Client side route middlewares 
+   ├── auth.ts              
+   └── ...
+     ├── pages/                   # Pages
+   ├── index.vue            # App home page component
+   └── ...
+     ├── plugins/                 # App plugins run on both client and server
+     ├── public/                  # Public assets
+     ├── server/                  # In-app backend server
+     ├── shared/
+   ├── types/               # Type definitions
+   └── utils/               # Non-reactive helper functions
+     ├── stores/                  # Pinia stores for state management
+   ├── auth.store.ts        
+   └── cart.store.ts        
+     ├── tests/                   # Component and feature unit tests
+     ├── eslint.config.mjs        # Linter rules
+     ├── features.json            # Feature flags
+     ├── app.vue                  # Application entry point
+     ├── nuxt.config.ts           # Nuxt.js configuration
+     ├── package.json             # Package entry point
+     ├── tailwind.config.ts       # TailwindCSS configuration
+     ├── tsconfig.json            # TypeScript configuration
+     ├── vitest.config.ts         # Vitest configuration
+     └── ...
+

List of essential directories:

  • components NuxtStore UI components, like ProductCard or Review
  • stores Pinia store containing global state, getters and mutators
  • composables Contains reusable composition functions, e.g. data fetchers and stateful helpers
  • shared Contains types and utilities shared across client and server e.g product.type.ts. Auto-import support will follow in next major release.
  • tests Contains mocks for components, composables and store actions

Project Guide

This project follows a few conventions to help with organizing your code:

  • Each function is located in a dedicated module and exported from the index.ts file.
  • In this nuxt application, avoid importing auto-imported APIs (ref, onMounted etc.) or compiler macros (defineProps, defineEmits etc.) and PrimeVue components (Button, InputText, Dialog, Carousel etc.)
  • Names are short, descriptive and must follow our consistent naming convention (guide)
  • Follow this nuxt guide to avoid common mistakes and comply with industry standard practices
  • Functions (including composables and utils) are exported using explicit named exports instead of anonymous exports
  • Actions or functions are defined following the trivial function definitions (func() { }) instead of arrow functions (const func = () => { }) to create visible distinction between constants and methods
  • This project follows gitflow as the branching strategy
  • Feature branch name must follow a simple convention such as +feature/<purpose>-<page_name>-<subject>. Subject can be component or specific feature +(e.g ui-cart-summary, ui-layout-footer, flow-checkout-payment, action-cart-quantity)
  • JS doc comments are added at necessary places to define the structure of a complex entity or explain the construct of a method

Note: In order to add code comments, we prefix the action with a @ for contributors reference such as @todo: or @debug:

Components

NuxtStore UI follows atomic design principle to develop components and it leverages PrimeVue as the building blocks of storefront components. All components are auto-imported by their name (no path-prefix) and are located inside subfolders in the components directory.

  • Introduction to project components:
    • Consists of representational components that are designed to fulfill project requirements
    • Components should be placed in dedicated folders inside components directory
    • Root of the component folder has atoms, molecules and organisms
    • Each component name must be prefixed with "Ns" (e.g NsProductCard)
    • TypeScript types are located inside the SFC for ease of access and coupling
    • Tests for components are located in the /tests/components folder (e.g NsUserAddress.spec.ts)
    • Folders inside /atoms, /molecules and /organisms must follow their purpose

Expected directory structure:

components/
+ └── atoms/
+     └── cart/
+         └── NsAddToCartButton.vue
+         └── NsCartIcon.vue
+     └── ui/
+         └── NsHeader.vue
+         └── NsFooter.vue
+     └── ...
+ └── molecules/
+     └── form/
+         └── NsEmailInput.vue
+         └── NsPasswordInput.vue
+     └── ...
+ └── organisms/
+     └── address/
+         └── NsAddressCard.vue
+     └── cart/
+         └── NsCartOverview.vue
+     └── forms/
+         └── NsSignUpForm.vue
+         └── NsAddressForm.vue
+     └── ...
+

For more information about available NuxtStore components for Vue (Nuxt), check out documentation.

  • Convention:
    • Vue (Nuxt) components should follow PascalCase pattern (CategoryFilters, Heading)
    • The types for component's props should be named {Component}Props and exist in the same SFC as the component. For example, GalleryProps or HeadingProps
    • Line of code in a single file component must not exceed 200 (formatted)
  • Prop Declaration: In vue, there are multiple ways to define component props especially with typescript. [checkout official docs] To ensure consistency and still allow customisability, we have adopted the following pattern.
    • Multiword props are defined in camelCase and passed in template as kebab-case

Example:

export type CartActionProps = {
+    icon?: string,
+    label?: string,
+    ...
+};
+
+const props = withDefaults(defineProps<CartActionProps>(), {
+    icon: "pi pi-cart",
+    label: "Add to cart"
+});
+

State Management

We are using Pinia state management to lock the data responsibility along with the composition functions (composables).

  • Pinia stores are defined in the style of Setup stores, keeping performance and modern standards in view
  • Each store file must end with a .store.ts extension
  • Store methods are as modular and reusable as possible and do not perform side effects. If required, new action is created in order to handle post{Action} (e.g addToCart , postAddToCart)
  • useState is used in very narrow context where creating global store for shared state doesn't make sense
  • Sequentially a store structure should have state >> getters >> actions for readability

Composables

Composables are useful when stateful logic has to be reused across components - e.g. controlling component state or leverage lifecycle hooks or accessing DOM api. +Project composables are located on top level inside the composables/ directory.

Convention:

  • Each composable should be prefixed with use keyword (useCartStatus)
  • Composables should follow camelCase pattern (useProductReviews)
  • Composables follow single responsibility principle. Avoid calling side effects inside composables
  • This project inherits most of the composables from vueuse library. Always search for an already available vueuse composable before writing on own for common tasks or DOM manipulation.
  • Composables should only be called in synchronous environment and on top level. Remember to clean attached event handlers or timeouts if defined inside a composable using vue's unmount hooks
  • Built-in Nuxt composables must be called in the right context to avoid critical errors such as Nuxt instance unavailable

Note: State connected to the certain composable is read-only and reactive. They are modified by the internal modifiers (setters)

Utils

Main purpose of utils is to encapsulate non-reactive helper method logic and draw a semantic boundary between reactive composables and other auto-imported utility functions. Utils are contained inside the Shared/ folder. This project follows some simple conventions for utils:

  • Project utils end with a .utils.ts extension (e.g format.utils.ts, wishlist.utils.ts)
  • utils/index.utils.ts contains all the shared functions across all contexts/features (e.g isEqual<T>(a,b) compares two entities for equality)
  • Named exports are preferred over default export (e.g export function cleanUserInput(){ })
  • One utility method can have multiple exports, allowing relevant functions to be grouped together
  • Utility functions are synchronous and do not communicate with any reactive source (store/composables)

Localization

NuxtStore ships with a basic setup for i18n localization powered by the Nuxt-i18n library. Project locale translations are stored in locale/[namespace].json files. Translations are grouped by features, and imported only where required to minimize bundle size. +Refer to the Nuxt-i18n documentation for translating content with SSR support.

Testing

The project provides a basic setup for testing TypeScript code with Vitest and Vue Test Utils for testing Vue (Nuxt) components and pinia stores.

Testing configuration files: (runs on nuxt environment and happy-dom)

  • vitest.config.ts - Test runner config file

Testing commands:

  • npm run unittest - Run all the test scripts in the project (in watch mode by default)
  • npm run unittest <Component> - Run specific component/feature mocks

Conventions enforced by automated tooling

To help you code with best practices in mind, this boilerplate comes with some automated tooling.

  • All test descriptions follow naming convention test('should <component>... ')
  • Automatic code linting is managed by nuxt-eslint-module

Cache control

As the initial Nuxt setup is not caching images generated by NuxtImg, the nuxt.config.ts in this repository has been extended to cache those images as well (by setting proper headers):

routeRules: {
+  '/_ipx/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },
+  '/icons/**': { headers: { 'cache-control': `public, max-age=31536000, immutable` } },
+  '/favicon.ico': { headers: { 'cache-control': `putypescriptblic, max-age=31536000, immutable` } },
+},
+

You can read about more possible rules in the Nuxt documentation.

More about performance

Additional performance good practices and vue project guide can be found HERE.

  1. Visual Studio Code (with prettier_extension @v9.14.0 exact and the latest version of microsoft eslint_extension)
  2. webstorm (for developers comfortable in jetbrains IDE like phpstorm with no extra configuration - +ws_eslint_customisation_guide)

Copyright © 2023
\ No newline at end of file