@ionic/vue 8.4.4-dev.11741377533.15770110 → 8.4.4-dev.11741630999.189d7fc2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/css/core.css.map +1 -1
- package/css/ionic.bundle.css.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/vetur/attributes.json +30 -0
- package/dist/vetur/tags.json +6 -0
- package/dist/web-types.json +59 -1
- package/package.json +2 -2
package/css/core.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../src/css/core.scss","../src/themes/ionic.mixins.scss","../src/themes/ionic.globals.scss","../src/components/menu/menu.ios.vars.scss","../src/components/menu/menu.md.vars.scss"],"names":[],"mappings":"AAKA,MAOI,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,sCACA,oCACA,iDACA,oCACA,mCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,qCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BAOJ,SACE,8FAEF,QACE,2DAGF,KACE,uCACA,2CAGF,KACE,uCACA,4BAGF,wBACE,gBAYF,+LAGE,gBAQF,qIAEE,mBAQF,+BACE,qDACA,mDAOF,qCACE,4CACE,0BA+BJ,2DACE,sBACA,mBAaF,wCACE,4CAyBA,mBATA,+DACA,0EACA,yEACA,0FACA,sEACA,oEAIA,qBATA,iEACA,4EACA,2EACA,4FACA,wEACA,sEAIA,oBATA,gEACA,4EACA,0EACA,2FACA,uEACA,qEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,kBATA,8DACA,yEACA,wEACA,yFACA,qEACA,mEAIA,iBATA,6DACA,2EACA,uEACA,kFACA,oEACA,kEAIA,kBATA,8DACA,2EACA,wEACA,yFACA,qEACA,mEAIA,gBATA,4DACA,uEACA,sEACA,uFACA,mEACA,iEAaF,UCsOM,KDrOuB,ECsOvB,MDtOiB,EC0PrB,ID1PkB,EC2PlB,OD3PwB,EAExB,aACA,kBAEA,sBACA,8BAEA,0BACA,QExH+B,EFmIjC,oBACE,kBAEA,qBAEA,YAGF,8CACE,kBAGF,iRAeE,wBAGF,oBACE,UAGF,wCACE,cAOF,6CACE,8BAGF,6BACE,KACE,mDAIJ,iDACE,KACE,8CACA,oDACA,gDACA,mDAQJ,mFAEE,cAOF,cC8TM,iCD1TN,mBACE,eACA,0BAUA,oBAMA,kBAUF,+BACE,mBAGF,4CACE,gBAGF,0BACE,WGtS+B,4BHySjC,mCACE,WGvS+B,2BH8SjC,yBACE,WIrT8B,6BJwThC,uBACE,WIzT8B,6BJ6ThC,6EACE,2BACA,4BAEF,4EACE,8BACA,+BAEF,qEACE,oBAGF,0EACE,2DAGF,uCACE,yCAEE,4BASJ,qJAEE,yBAGF,2GACE,oBACA,0BAGF,uMAEE,aAMF,6CACE,iBASF,6BACE,qBACA,sBAUF,wDACE,YACA,iBAUF,uNAOE,aAaF,oCACE,gBAUF,4CACE,kBACE","file":"core.css","sourcesContent":["@use \"sass:map\";\n@import \"../themes/ionic.globals\";\n@import \"../components/menu/menu.ios.vars\";\n@import \"../components/menu/menu.md.vars\";\n\n:root {\n /**\n * Loop through each color object from the\n * `ionic.theme.default.scss` file\n * and generate CSS Variables for each color.\n */\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n}\n\n// Ionic Font Family\n// --------------------------------------------------\n\nhtml.ios {\n --ion-default-font: -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", \"Roboto\", sans-serif;\n}\nhtml.md {\n --ion-default-font: \"Roboto\", \"Helvetica Neue\", sans-serif;\n}\n\nhtml {\n --ion-dynamic-font: -apple-system-body;\n --ion-font-family: var(--ion-default-font);\n}\n\nbody {\n background: var(--ion-background-color);\n color: var(--ion-text-color);\n}\n\nbody.backdrop-no-scroll {\n overflow: hidden;\n}\n\n// Modal - Card Style\n// --------------------------------------------------\n/**\n * Card style modal needs additional padding on the\n * top of the header. We accomplish this by targeting\n * the first toolbar in the header.\n * Footer also needs this. We do not adjust the bottom\n * padding though because of the safe area.\n */\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal ion-footer ion-toolbar:first-of-type {\n padding-top: 6px;\n}\n\n/**\n* Card style modal needs additional padding on the\n* bottom of the header. We accomplish this by targeting\n* the last toolbar in the header.\n*/\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type {\n padding-bottom: 6px;\n}\n\n/**\n* Add padding on the left and right\n* of toolbars while accounting for\n* safe area values when in landscape.\n*/\nhtml.ios ion-modal ion-toolbar {\n padding-right: calc(var(--ion-safe-area-right) + 8px);\n padding-left: calc(var(--ion-safe-area-left) + 8px);\n}\n\n/**\n * Card style modal on iPadOS\n * should only have backdrop on first instance.\n */\n@media screen and (min-width: 768px) {\n html.ios ion-modal.modal-card:first-of-type {\n --backdrop-opacity: 0.18;\n }\n}\n\n/**\n * Subsequent modals should not have a backdrop/box shadow\n * as it will cause the screen to appear to get progressively\n * darker. With Ionic 6, declarative modals made it\n * possible to have multiple non-presented modals in the DOM,\n * so we could no longer rely on ion-modal:first-of-type.\n * Here we disable the opacity/box-shadow for every modal\n * that comes after the first presented modal.\n *\n * Note: ion-modal:not(.overlay-hidden):first-of-type\n * does not match the first modal to not have\n * the .overlay-hidden class, it will match the\n * first modal in general only if it does not\n * have the .overlay-hidden class.\n * The :nth-child() pseudo-class has support\n * for selectors which would help us here. At the\n * time of writing it does not have great cross browser\n * support.\n *\n * Note 2: This should only apply to non-card and\n * non-sheet modals. Card and sheet modals have their\n * own criteria for displaying backdrops/box shadows.\n *\n * Do not use :not(.overlay-hidden) in place of\n * .show-modal because that triggers a memory\n * leak in Blink: https://bugs.chromium.org/p/chromium/issues/detail?id=1418768\n */\nion-modal.modal-default.show-modal ~ ion-modal.modal-default {\n --backdrop-opacity: 0;\n --box-shadow: none;\n}\n\n/**\n * This works around a bug in WebKit where the\n * content will overflow outside of the bottom border\n * radius when re-painting. As long as a single\n * border radius value is set on .ion-page, this\n * issue does not happen. We set the top left radius\n * here because the top left corner will always have a\n * radius no matter the platform.\n * This behavior only applies to card modals.\n */\nhtml.ios ion-modal.modal-card .ion-page {\n border-top-left-radius: var(--border-radius);\n}\n\n// Ionic Colors\n// --------------------------------------------------\n// Generates the color classes and variables based on the\n// colors map\n\n@mixin generate-color($color-name) {\n $value: map-get($colors, $color-name);\n\n $base: map-get($value, base);\n $contrast: map-get($value, contrast);\n $shade: map-get($value, shade);\n $tint: map-get($value, tint);\n\n --ion-color-base: var(--ion-color-#{$color-name}, #{$base}) !important;\n --ion-color-base-rgb: var(--ion-color-#{$color-name}-rgb, #{color-to-rgb-list($base)}) !important;\n --ion-color-contrast: var(--ion-color-#{$color-name}-contrast, #{$contrast}) !important;\n --ion-color-contrast-rgb: var(--ion-color-#{$color-name}-contrast-rgb, #{color-to-rgb-list($contrast)}) !important;\n --ion-color-shade: var(--ion-color-#{$color-name}-shade, #{$shade}) !important;\n --ion-color-tint: var(--ion-color-#{$color-name}-tint, #{$tint}) !important;\n}\n\n@each $color-name, $value in $colors {\n .ion-color-#{$color-name} {\n @include generate-color($color-name);\n }\n}\n\n\n// Page Container Structure\n// --------------------------------------------------\n\n.ion-page {\n @include position(0, 0, 0, 0);\n\n display: flex;\n position: absolute;\n\n flex-direction: column;\n justify-content: space-between;\n\n contain: layout size style;\n z-index: $z-index-page-container;\n}\n\n/**\n * When making custom dialogs, using\n * ion-content is not required. As a result,\n * some developers may wish to have dialogs\n * that are automatically sized by the browser.\n * These changes allow certain dimension values\n * such as fit-content to work correctly.\n */\nion-modal > .ion-page {\n position: relative;\n\n contain: layout style;\n\n height: 100%;\n}\n\n.split-pane-visible > .ion-page.split-pane-main {\n position: relative;\n}\n\nion-route,\nion-route-redirect,\nion-router,\nion-select-option,\nion-nav-controller,\nion-menu-controller,\nion-action-sheet-controller,\nion-alert-controller,\nion-loading-controller,\nion-modal-controller,\nion-picker-controller,\nion-popover-controller,\nion-toast-controller,\n.ion-page-hidden {\n /* stylelint-disable-next-line declaration-no-important */\n display: none !important;\n}\n\n.ion-page-invisible {\n opacity: 0;\n}\n\n.can-go-back > ion-header ion-back-button {\n display: block;\n}\n\n\n// Ionic Safe Margins\n// --------------------------------------------------\n\nhtml.plt-ios.plt-hybrid, html.plt-ios.plt-pwa {\n --ion-statusbar-padding: 20px;\n}\n\n@supports (padding-top: 20px) {\n html {\n --ion-safe-area-top: var(--ion-statusbar-padding);\n }\n}\n\n@supports (padding-top: env(safe-area-inset-top)) {\n html {\n --ion-safe-area-top: env(safe-area-inset-top);\n --ion-safe-area-bottom: env(safe-area-inset-bottom);\n --ion-safe-area-left: env(safe-area-inset-left);\n --ion-safe-area-right: env(safe-area-inset-right);\n }\n}\n\n\n// Global Card Styles\n// --------------------------------------------------\n\nion-card.ion-color .ion-inherit-color,\nion-card-header.ion-color .ion-inherit-color {\n color: inherit;\n}\n\n\n// Menu Styles\n// --------------------------------------------------\n\n.menu-content {\n @include transform(translate3d(0, 0, 0));\n}\n\n.menu-content-open {\n cursor: pointer;\n touch-action: manipulation;\n\n /**\n * The containing element itself should be clickable but\n * everything inside of it should not clickable when menu is open\n *\n * Setting pointer-events after scrolling has already started\n * will not cancel scrolling which is why we also set\n * overflow-y below.\n */\n pointer-events: none;\n\n /**\n * This accounts for scenarios where the main content itself\n * is scrollable.\n */\n overflow-y: hidden;\n}\n\n/**\n * Setting overflow cancels any in-progress scrolling\n * when the menu opens. This prevents users from accidentally\n * scrolling the main content while also dragging the menu open.\n * The code below accounts for both ion-content and then custom\n * scroll containers within ion-content (such as virtual scroll)\n */\n.menu-content-open ion-content {\n --overflow: hidden;\n}\n\n.menu-content-open .ion-content-scroll-host {\n overflow: hidden;\n}\n\n.ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal;\n}\n\n[dir=rtl].ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal-rtl;\n}\n\n.ios .menu-content-push {\n box-shadow: $menu-ios-box-shadow-push;\n}\n\n.md .menu-content-reveal {\n box-shadow: $menu-md-box-shadow;\n}\n\n.md .menu-content-push {\n box-shadow: $menu-md-box-shadow;\n}\n\n// Accordion Styles\nion-accordion-group.accordion-group-expand-inset > ion-accordion:first-of-type {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n}\nion-accordion-group.accordion-group-expand-inset > ion-accordion:last-of-type {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n}\nion-accordion-group > ion-accordion:last-of-type ion-item[slot=\"header\"] {\n --border-width: 0px;\n}\n\nion-accordion.accordion-animated > [slot=\"header\"] .ion-accordion-toggle-icon {\n transition: 300ms transform cubic-bezier(0.25, 0.8, 0.5, 1);\n}\n\n@media (prefers-reduced-motion: reduce) {\n ion-accordion .ion-accordion-toggle-icon {\n /* stylelint-disable declaration-no-important */\n transition: none !important;\n }\n}\n/**\n * The > [slot=\"header\"] selector ensures that we do\n * not modify toggle icons for any nested accordions. The state\n * of one accordion should not affect any accordions inside\n * of a nested accordion group.\n */\nion-accordion.accordion-expanding > [slot=\"header\"] .ion-accordion-toggle-icon,\nion-accordion.accordion-expanded > [slot=\"header\"] .ion-accordion-toggle-icon {\n transform: rotate(180deg);\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-previous ion-item[slot=\"header\"] {\n --border-width: 0px;\n --inner-border-width: 0px;\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanding:first-of-type,\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanded:first-of-type {\n margin-top: 0;\n}\n\n// Safari/iOS 15 changes the appearance of input[type=\"date\"].\n// For backwards compatibility from Ionic 5/Safari 14 designs,\n// we override the appearance only when using within an ion-input.\nion-input input::-webkit-date-and-time-value {\n text-align: start;\n}\n\n/**\n * The .ion-datetime-button-overlay class contains\n * styles that allow any modal/popover to be\n * sized according to the dimensions of the datetime\n * when used with ion-datetime-button.\n */\n.ion-datetime-button-overlay {\n --width: fit-content;\n --height: fit-content;\n}\n\n/**\n * The grid variant can scale down when inline.\n * When used in a `fit-content` overlay, this causes\n * the overlay to shrink when the month/year picker is open.\n * Explicitly setting the dimensions lets us have a consistently\n * sized grid interface.\n */\n.ion-datetime-button-overlay ion-datetime.datetime-grid {\n width: 320px;\n min-height: 320px;\n}\n\n/**\n * When moving focus on page transitions we call .focus() on an element which can\n * add an undesired outline ring. This CSS removes the outline ring.\n * We also remove the outline ring from elements that are actively being focused\n * by the focus manager. We are intentionally selective about which elements this\n * applies to so we do not accidentally override outlines set by the developer.\n */\n[ion-last-focus],\nheader[tabindex=\"-1\"]:focus,\n[role=\"banner\"][tabindex=\"-1\"]:focus,\nmain[tabindex=\"-1\"]:focus,\n[role=\"main\"][tabindex=\"-1\"]:focus,\nh1[tabindex=\"-1\"]:focus,\n[role=\"heading\"][aria-level=\"1\"][tabindex=\"-1\"]:focus {\n outline: none;\n}\n\n/*\n * If a popover has a child ion-content (or class equivalent) then the .popover-viewport element\n * should not be scrollable to ensure the inner content does scroll. However, if the popover\n * does not have a child ion-content (or class equivalent) then the .popover-viewport element\n * should remain scrollable. This code exists globally because popover targets\n * .popover-viewport using ::slotted which only supports simple selectors.\n *\n * Note that we do not need to account for .ion-content-scroll-host here because that\n * class should always be placed within ion-content even if ion-content is not scrollable.\n */\n.popover-viewport:has(> ion-content) {\n overflow: hidden;\n}\n\n/**\n * :has has cross-browser support, but it is still relatively new. As a result,\n * we should fallback to the old behavior for environments that do not support :has.\n * Developers can explicitly enable this behavior by setting overflow: visible\n * on .popover-viewport if they know they are not going to use an ion-content.\n * TODO FW-6106 Remove this\n */\n@supports not selector(:has(> ion-content)) {\n .popover-viewport {\n overflow: hidden;\n }\n}\n","\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n@mixin tablet-viewport() {\n @media screen and (min-width: 768px) {\n @content;\n }\n}\n\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n@mixin mobile-viewport() {\n @media screen and (max-width: 767px) {\n @content;\n }\n}\n\n@mixin input-cover() {\n @include position(0, null, null, 0);\n @include margin(0);\n\n position: absolute;\n\n width: 100%;\n height: 100%;\n\n border: 0;\n background: transparent;\n cursor: pointer;\n\n appearance: none;\n outline: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin visually-hidden() {\n position: absolute;\n\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n\n width: 100%;\n height: 100%;\n\n margin: 0;\n padding: 0;\n\n border: 0;\n outline: 0;\n clip: rect(0 0 0 0);\n\n opacity: 0;\n overflow: hidden;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n@mixin text-inherit() {\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n}\n\n@mixin button-state() {\n @include position(0, 0, 0, 0);\n\n position: absolute;\n\n content: \"\";\n\n opacity: 0;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name != index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $screen-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n//\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\t// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\t// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n $rootSplit: str-split($root, \",\");\n $selectors: #{add-root-selector($root, \"[dir=rtl]\")};\n $selectorsSplit: str-split($selectors, \",\");\n\n $hostContextSelectors: ();\n $restSelectors: ();\n $dirSelectors: ();\n\n // Selectors must be split into individual selectors in case the browser\n // doesn't support a specific selector.\n // For example, Firefox and Safari doesn't support `:host-context()`.\n // If an invalid selector is used, then the entire group of selectors\n // will be ignored.\n // @link https://www.w3.org/TR/selectors-3/#grouping\n @each $selector in $selectorsSplit {\n // Group the selectors back into a single selector to optimize the output.\n @if str-index($selector, \":host-context\") {\n $hostContextSelectors: append($hostContextSelectors, $selector, comma);\n } @else {\n // Group the selectors back into a single selector to optimize the output.\n $restSelectors: append($restSelectors, $selector, comma);\n }\n }\n\n // Supported by Chrome.\n @if length($hostContextSelectors) > 0 {\n @at-root #{$hostContextSelectors} {\n @content;\n }\n }\n\n // Supported by all browsers.\n @if length($restSelectors) > 0 {\n @at-root #{$restSelectors} {\n @content;\n }\n }\n\n // If browser can support `:dir()`, then add the `:dir()` selectors.\n @supports selector(:dir(rtl)) {\n // Adding :dir() in case the browser doesn't support `:host-context()` and does support `:dir()`.\n // `:host-context()` is added:\n // - through the `add-root-selector()` function.\n // - first so that it takes precedence over `:dir()`.\n // For example,\n // - Firefox doesn't support `:host-context()`, but does support `:dir()`.\n // - Safari doesn't support `:host-context()`, but Safari 16.4+ supports `:dir()`\n // @link https://webkit.org/blog/13966/webkit-features-in-safari-16-4/\n // -- However, there is a Webkit bug on v16 that prevents `:dir()` from working when\n // -- the app direction is changed dynamically. v17+ works fine.\n // -- @link https://bugs.webkit.org/show_bug.cgi?id=257133\n\n // Supported by Firefox.\n @at-root #{add-root-selector($root, \":dir(rtl)\", false)} {\n @content;\n }\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: str-split(str-extract($svg, \"viewBox='\", \"'\"), \" \");\n\n @if $flip-rtl != true or $viewBox == null {\n @include multi-dir() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n } @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: str-replace($flipped-url, \"<path\", \"<path #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<line\", \"<line #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<polygon\", \"<polygon #{$transform}\");\n $flipped-url: url-encode($flipped-url);\n\n @include ltr () {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n @include rtl() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$flipped-url}\");\n }\n }\n}\n\n// Add property horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin property-horizontal($prop, $start, $end: $start) {\n @if $start == 0 and $end == 0 {\n #{$prop}-left: $start;\n #{$prop}-right: $end;\n\n } @else {\n -webkit-#{$prop}-start: $start;\n #{$prop}-inline-start: $start;\n -webkit-#{$prop}-end: $end;\n #{$prop}-inline-end: $end;\n }\n}\n\n// Add property for all directions\n// @param {string} $prop\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// @param {boolean} $content include content or use default\n// ----------------------------------------------------------\n@mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) {\n @include property-horizontal($prop, $start, $end);\n #{$prop}-top: $top;\n #{$prop}-bottom: $bottom;\n}\n\n// Add padding horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin padding-horizontal($start, $end: $start) {\n @include property-horizontal(padding, $start, $end);\n}\n\n// Add padding for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin padding($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(padding, $top, $end, $bottom, $start);\n}\n\n// Add margin horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin margin-horizontal($start, $end: $start) {\n @include property-horizontal(margin, $start, $end);\n}\n\n// Add margin for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin margin($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(margin, $top, $end, $bottom, $start);\n}\n\n// Add position horizontal\n// @param {string} $start - amount to position start\n// @param {string} $end - amount to left: 0; end\n// ----------------------------------------------------------\n@mixin position-horizontal($start: null, $end: null) {\n @if $start == $end {\n @include multi-dir() {\n left: $start;\n right: $end;\n }\n } @else {\n @at-root {\n & {\n inset-inline-start: $start;\n inset-inline-end: $end;\n }\n }\n }\n}\n\n// Add position for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin position($top: null, $end: null, $bottom: null, $start: null) {\n @include position-horizontal($start, $end);\n top: $top;\n bottom: $bottom;\n}\n\n// Add border for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin border($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(border, $top, $end, $bottom, $start);\n}\n\n// Add border radius for all directions\n// @param {string} $top-start\n// @param {string} $top-end\n// @param {string} $bottom-end\n// @param {string} $bottom-start\n// ----------------------------------------------------------\n@mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) {\n @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start {\n border-radius: $top-start;\n } @else {\n border-start-start-radius: $top-start;\n border-start-end-radius: $top-end;\n border-end-end-radius: $bottom-end;\n border-end-start-radius: $bottom-start;\n }\n}\n\n// Add direction for all directions\n// @param {string} $dir - Direction on LTR\n@mixin direction($dir) {\n $other-dir: null;\n\n @if $dir == ltr {\n $other-dir: rtl;\n } @else {\n $other-dir: ltr;\n }\n\n @include ltr() {\n direction: $dir;\n }\n @include rtl() {\n direction: $other-dir;\n }\n}\n\n// Add float for all directions\n// @param {string} $side\n// @param {string} $decorator - !important\n@mixin float($side, $decorator: null) {\n @if $side == start {\n @include ltr() {\n float: left $decorator;\n }\n @include rtl() {\n float: right $decorator;\n }\n } @else if $side == end {\n @include ltr() {\n float: right $decorator;\n }\n @include rtl() {\n float: left $decorator;\n }\n } @else {\n @include multi-dir() {\n float: $side $decorator;\n }\n }\n}\n\n@mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) {\n @if $horizontal == start or $horizontal == end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n @if $horizontal == start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n } @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount;\n }\n @include rtl() {\n background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount;\n }\n } @else {\n @include multi-dir() {\n background-position: $horizontal $horizontal-amount $vertical $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis == start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n @include rtl() {\n transform-origin: right $y-axis;\n }\n } @else if $x-axis == end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n @include rtl() {\n transform-origin: left $y-axis;\n }\n } @else if $x-axis == left or $x-axis == right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n } @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: str-replace($transform, 'translate3d(');\n $transform: str-replace($transform, ')');\n\n $coordinates: str-split($transform, ',');\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n } @else {\n @if $extra == null {\n $extra: $transform;\n } @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x == '0' or $x == null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n } @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n","\n// Global Utility Functions\n@import \"./ionic.functions.string\";\n\n// Global Color Functions\n@import \"./ionic.functions.color\";\n\n// Global Font Functions\n@import \"./ionic.functions.font\";\n\n// Global Mixins\n@import \"./ionic.mixins\";\n\n// Default Theme\n@import \"./ionic.theme.default\";\n\n\n// Default General\n// --------------------------------------------------\n$font-family-base: var(--ion-font-family, inherit);\n\n// Hairlines width\n$hairlines-width: .55px;\n\n// The minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries\n$screen-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n);\n\n// Input placeholder opacity\n// Ensures that the placeholder has the\n// correct color contrast against the background.\n$placeholder-opacity: var(--ion-placeholder-opacity, 0.6);\n\n$form-control-label-margin: 16px;\n\n// How much the stacked labels should be scaled by\n/// The value 0.75 is used to match the MD spec.\n/// iOS does not have a floating label design spec, so we standardize on 0.75.\n$form-control-label-stacked-scale: 0.75;\n\n\n// Z-Index\n// --------------------------------------------------\n// Grouped by elements which would be siblings\n\n$z-index-menu-overlay: 1000;\n$z-index-overlay: 1001;\n\n$z-index-fixed-content: 999;\n$z-index-refresher: -1;\n\n$z-index-page-container: 0;\n$z-index-toolbar: 10;\n$z-index-toolbar-background: -1;\n$z-index-toolbar-buttons: 99;\n\n$z-index-backdrop: 2;\n$z-index-overlay-wrapper: 10;\n\n$z-index-item-options: 1;\n$z-index-item-input: 2;\n$z-index-item-divider: 100;\n\n$z-index-reorder-selected: 100;\n","@import \"../../themes/ionic.globals.ios\";\n\n// iOS Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow color of the menu\n$menu-ios-box-shadow-color: rgba(0, 0, 0, .08);\n\n/// @prop - Box shadow of the menu\n$menu-ios-box-shadow: -8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the menu in rtl mode\n$menu-ios-box-shadow-rtl: 8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal: $menu-ios-box-shadow;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal-rtl: $menu-ios-box-shadow-rtl;\n\n/// @prop - Box shadow of the push menu\n$menu-ios-box-shadow-push: null;\n\n/// @prop - Box shadow of the overlay menu\n$menu-ios-box-shadow-overlay: null;\n","@import \"../../themes/ionic.globals.md\";\n\n// Material Design Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow of the menu\n$menu-md-box-shadow: 4px 0px 16px rgba(0, 0, 0, 0.18);\n"]}
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../src/css/core.scss","../src/components/modal/modal.vars.scss","../src/themes/ionic.mixins.scss","../src/themes/ionic.globals.scss","../src/components/menu/menu.ios.vars.scss","../src/components/menu/menu.md.vars.scss"],"names":[],"mappings":"AAMA,MAOI,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,sCACA,oCACA,iDACA,oCACA,mCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,qCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BAOJ,SACE,8FAEF,QACE,2DAGF,KACE,uCACA,2CAGF,KACE,uCACA,4BAGF,wBACE,gBAYF,+LAGE,YC/B+B,IDuCjC,qIAEE,eCtC+B,ID8CjC,+BACE,qDACA,mDAOF,qCACE,4CACE,0BA+BJ,2DACE,sBACA,mBAaF,wCACE,4CAyBA,mBATA,+DACA,0EACA,yEACA,0FACA,sEACA,oEAIA,qBATA,iEACA,4EACA,2EACA,4FACA,wEACA,sEAIA,oBATA,gEACA,4EACA,0EACA,2FACA,uEACA,qEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,kBATA,8DACA,yEACA,wEACA,yFACA,qEACA,mEAIA,iBATA,6DACA,2EACA,uEACA,kFACA,oEACA,kEAIA,kBATA,8DACA,2EACA,wEACA,yFACA,qEACA,mEAIA,gBATA,4DACA,uEACA,sEACA,uFACA,mEACA,iEAaF,UEqOM,KFpOuB,EEqOvB,MFrOiB,EEyPrB,IFzPkB,EE0PlB,OF1PwB,EAExB,aACA,kBAEA,sBACA,8BAEA,0BACA,QGzH+B,EHoIjC,oBACE,kBAEA,qBAEA,YAGF,8CACE,kBAGF,iRAeE,wBAGF,oBACE,UAGF,wCACE,cAOF,6CACE,8BAGF,6BACE,KACE,mDAIJ,iDACE,KACE,8CACA,oDACA,gDACA,mDAQJ,mFAEE,cAOF,cE6TM,iCFzTN,mBACE,eACA,0BAUA,oBAMA,kBAUF,+BACE,mBAGF,4CACE,gBAGF,0BACE,WIvS+B,4BJ0SjC,mCACE,WIxS+B,2BJ+SjC,yBACE,WKtT8B,6BLyThC,uBACE,WK1T8B,6BL8ThC,6EACE,2BACA,4BAEF,4EACE,8BACA,+BAEF,qEACE,oBAGF,0EACE,2DAGF,uCACE,yCAEE,4BASJ,qJAEE,yBAGF,2GACE,oBACA,0BAGF,uMAEE,aAMF,6CACE,iBASF,6BACE,qBACA,sBAUF,wDACE,YACA,iBAUF,uNAOE,aAaF,oCACE,gBAUF,4CACE,kBACE","file":"core.css","sourcesContent":["@use \"sass:map\";\n@import \"../themes/ionic.globals\";\n@import \"../components/menu/menu.ios.vars\";\n@import \"../components/menu/menu.md.vars\";\n@import \"../components/modal/modal.vars\";\n\n:root {\n /**\n * Loop through each color object from the\n * `ionic.theme.default.scss` file\n * and generate CSS Variables for each color.\n */\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n}\n\n// Ionic Font Family\n// --------------------------------------------------\n\nhtml.ios {\n --ion-default-font: -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", \"Roboto\", sans-serif;\n}\nhtml.md {\n --ion-default-font: \"Roboto\", \"Helvetica Neue\", sans-serif;\n}\n\nhtml {\n --ion-dynamic-font: -apple-system-body;\n --ion-font-family: var(--ion-default-font);\n}\n\nbody {\n background: var(--ion-background-color);\n color: var(--ion-text-color);\n}\n\nbody.backdrop-no-scroll {\n overflow: hidden;\n}\n\n// Modal - Card Style\n// --------------------------------------------------\n/**\n * Card style modal needs additional padding on the\n * top of the header. We accomplish this by targeting\n * the first toolbar in the header.\n * Footer also needs this. We do not adjust the bottom\n * padding though because of the safe area.\n */\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal ion-footer ion-toolbar:first-of-type {\n padding-top: $modal-sheet-padding-top;\n}\n\n/**\n* Card style modal needs additional padding on the\n* bottom of the header. We accomplish this by targeting\n* the last toolbar in the header.\n*/\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type {\n padding-bottom: $modal-sheet-padding-bottom;\n}\n\n/**\n* Add padding on the left and right\n* of toolbars while accounting for\n* safe area values when in landscape.\n*/\nhtml.ios ion-modal ion-toolbar {\n padding-right: calc(var(--ion-safe-area-right) + 8px);\n padding-left: calc(var(--ion-safe-area-left) + 8px);\n}\n\n/**\n * Card style modal on iPadOS\n * should only have backdrop on first instance.\n */\n@media screen and (min-width: 768px) {\n html.ios ion-modal.modal-card:first-of-type {\n --backdrop-opacity: 0.18;\n }\n}\n\n/**\n * Subsequent modals should not have a backdrop/box shadow\n * as it will cause the screen to appear to get progressively\n * darker. With Ionic 6, declarative modals made it\n * possible to have multiple non-presented modals in the DOM,\n * so we could no longer rely on ion-modal:first-of-type.\n * Here we disable the opacity/box-shadow for every modal\n * that comes after the first presented modal.\n *\n * Note: ion-modal:not(.overlay-hidden):first-of-type\n * does not match the first modal to not have\n * the .overlay-hidden class, it will match the\n * first modal in general only if it does not\n * have the .overlay-hidden class.\n * The :nth-child() pseudo-class has support\n * for selectors which would help us here. At the\n * time of writing it does not have great cross browser\n * support.\n *\n * Note 2: This should only apply to non-card and\n * non-sheet modals. Card and sheet modals have their\n * own criteria for displaying backdrops/box shadows.\n *\n * Do not use :not(.overlay-hidden) in place of\n * .show-modal because that triggers a memory\n * leak in Blink: https://bugs.chromium.org/p/chromium/issues/detail?id=1418768\n */\nion-modal.modal-default.show-modal ~ ion-modal.modal-default {\n --backdrop-opacity: 0;\n --box-shadow: none;\n}\n\n/**\n * This works around a bug in WebKit where the\n * content will overflow outside of the bottom border\n * radius when re-painting. As long as a single\n * border radius value is set on .ion-page, this\n * issue does not happen. We set the top left radius\n * here because the top left corner will always have a\n * radius no matter the platform.\n * This behavior only applies to card modals.\n */\nhtml.ios ion-modal.modal-card .ion-page {\n border-top-left-radius: var(--border-radius);\n}\n\n// Ionic Colors\n// --------------------------------------------------\n// Generates the color classes and variables based on the\n// colors map\n\n@mixin generate-color($color-name) {\n $value: map-get($colors, $color-name);\n\n $base: map-get($value, base);\n $contrast: map-get($value, contrast);\n $shade: map-get($value, shade);\n $tint: map-get($value, tint);\n\n --ion-color-base: var(--ion-color-#{$color-name}, #{$base}) !important;\n --ion-color-base-rgb: var(--ion-color-#{$color-name}-rgb, #{color-to-rgb-list($base)}) !important;\n --ion-color-contrast: var(--ion-color-#{$color-name}-contrast, #{$contrast}) !important;\n --ion-color-contrast-rgb: var(--ion-color-#{$color-name}-contrast-rgb, #{color-to-rgb-list($contrast)}) !important;\n --ion-color-shade: var(--ion-color-#{$color-name}-shade, #{$shade}) !important;\n --ion-color-tint: var(--ion-color-#{$color-name}-tint, #{$tint}) !important;\n}\n\n@each $color-name, $value in $colors {\n .ion-color-#{$color-name} {\n @include generate-color($color-name);\n }\n}\n\n\n// Page Container Structure\n// --------------------------------------------------\n\n.ion-page {\n @include position(0, 0, 0, 0);\n\n display: flex;\n position: absolute;\n\n flex-direction: column;\n justify-content: space-between;\n\n contain: layout size style;\n z-index: $z-index-page-container;\n}\n\n/**\n * When making custom dialogs, using\n * ion-content is not required. As a result,\n * some developers may wish to have dialogs\n * that are automatically sized by the browser.\n * These changes allow certain dimension values\n * such as fit-content to work correctly.\n */\nion-modal > .ion-page {\n position: relative;\n\n contain: layout style;\n\n height: 100%;\n}\n\n.split-pane-visible > .ion-page.split-pane-main {\n position: relative;\n}\n\nion-route,\nion-route-redirect,\nion-router,\nion-select-option,\nion-nav-controller,\nion-menu-controller,\nion-action-sheet-controller,\nion-alert-controller,\nion-loading-controller,\nion-modal-controller,\nion-picker-controller,\nion-popover-controller,\nion-toast-controller,\n.ion-page-hidden {\n /* stylelint-disable-next-line declaration-no-important */\n display: none !important;\n}\n\n.ion-page-invisible {\n opacity: 0;\n}\n\n.can-go-back > ion-header ion-back-button {\n display: block;\n}\n\n\n// Ionic Safe Margins\n// --------------------------------------------------\n\nhtml.plt-ios.plt-hybrid, html.plt-ios.plt-pwa {\n --ion-statusbar-padding: 20px;\n}\n\n@supports (padding-top: 20px) {\n html {\n --ion-safe-area-top: var(--ion-statusbar-padding);\n }\n}\n\n@supports (padding-top: env(safe-area-inset-top)) {\n html {\n --ion-safe-area-top: env(safe-area-inset-top);\n --ion-safe-area-bottom: env(safe-area-inset-bottom);\n --ion-safe-area-left: env(safe-area-inset-left);\n --ion-safe-area-right: env(safe-area-inset-right);\n }\n}\n\n\n// Global Card Styles\n// --------------------------------------------------\n\nion-card.ion-color .ion-inherit-color,\nion-card-header.ion-color .ion-inherit-color {\n color: inherit;\n}\n\n\n// Menu Styles\n// --------------------------------------------------\n\n.menu-content {\n @include transform(translate3d(0, 0, 0));\n}\n\n.menu-content-open {\n cursor: pointer;\n touch-action: manipulation;\n\n /**\n * The containing element itself should be clickable but\n * everything inside of it should not clickable when menu is open\n *\n * Setting pointer-events after scrolling has already started\n * will not cancel scrolling which is why we also set\n * overflow-y below.\n */\n pointer-events: none;\n\n /**\n * This accounts for scenarios where the main content itself\n * is scrollable.\n */\n overflow-y: hidden;\n}\n\n/**\n * Setting overflow cancels any in-progress scrolling\n * when the menu opens. This prevents users from accidentally\n * scrolling the main content while also dragging the menu open.\n * The code below accounts for both ion-content and then custom\n * scroll containers within ion-content (such as virtual scroll)\n */\n.menu-content-open ion-content {\n --overflow: hidden;\n}\n\n.menu-content-open .ion-content-scroll-host {\n overflow: hidden;\n}\n\n.ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal;\n}\n\n[dir=rtl].ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal-rtl;\n}\n\n.ios .menu-content-push {\n box-shadow: $menu-ios-box-shadow-push;\n}\n\n.md .menu-content-reveal {\n box-shadow: $menu-md-box-shadow;\n}\n\n.md .menu-content-push {\n box-shadow: $menu-md-box-shadow;\n}\n\n// Accordion Styles\nion-accordion-group.accordion-group-expand-inset > ion-accordion:first-of-type {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n}\nion-accordion-group.accordion-group-expand-inset > ion-accordion:last-of-type {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n}\nion-accordion-group > ion-accordion:last-of-type ion-item[slot=\"header\"] {\n --border-width: 0px;\n}\n\nion-accordion.accordion-animated > [slot=\"header\"] .ion-accordion-toggle-icon {\n transition: 300ms transform cubic-bezier(0.25, 0.8, 0.5, 1);\n}\n\n@media (prefers-reduced-motion: reduce) {\n ion-accordion .ion-accordion-toggle-icon {\n /* stylelint-disable declaration-no-important */\n transition: none !important;\n }\n}\n/**\n * The > [slot=\"header\"] selector ensures that we do\n * not modify toggle icons for any nested accordions. The state\n * of one accordion should not affect any accordions inside\n * of a nested accordion group.\n */\nion-accordion.accordion-expanding > [slot=\"header\"] .ion-accordion-toggle-icon,\nion-accordion.accordion-expanded > [slot=\"header\"] .ion-accordion-toggle-icon {\n transform: rotate(180deg);\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-previous ion-item[slot=\"header\"] {\n --border-width: 0px;\n --inner-border-width: 0px;\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanding:first-of-type,\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanded:first-of-type {\n margin-top: 0;\n}\n\n// Safari/iOS 15 changes the appearance of input[type=\"date\"].\n// For backwards compatibility from Ionic 5/Safari 14 designs,\n// we override the appearance only when using within an ion-input.\nion-input input::-webkit-date-and-time-value {\n text-align: start;\n}\n\n/**\n * The .ion-datetime-button-overlay class contains\n * styles that allow any modal/popover to be\n * sized according to the dimensions of the datetime\n * when used with ion-datetime-button.\n */\n.ion-datetime-button-overlay {\n --width: fit-content;\n --height: fit-content;\n}\n\n/**\n * The grid variant can scale down when inline.\n * When used in a `fit-content` overlay, this causes\n * the overlay to shrink when the month/year picker is open.\n * Explicitly setting the dimensions lets us have a consistently\n * sized grid interface.\n */\n.ion-datetime-button-overlay ion-datetime.datetime-grid {\n width: 320px;\n min-height: 320px;\n}\n\n/**\n * When moving focus on page transitions we call .focus() on an element which can\n * add an undesired outline ring. This CSS removes the outline ring.\n * We also remove the outline ring from elements that are actively being focused\n * by the focus manager. We are intentionally selective about which elements this\n * applies to so we do not accidentally override outlines set by the developer.\n */\n[ion-last-focus],\nheader[tabindex=\"-1\"]:focus,\n[role=\"banner\"][tabindex=\"-1\"]:focus,\nmain[tabindex=\"-1\"]:focus,\n[role=\"main\"][tabindex=\"-1\"]:focus,\nh1[tabindex=\"-1\"]:focus,\n[role=\"heading\"][aria-level=\"1\"][tabindex=\"-1\"]:focus {\n outline: none;\n}\n\n/*\n * If a popover has a child ion-content (or class equivalent) then the .popover-viewport element\n * should not be scrollable to ensure the inner content does scroll. However, if the popover\n * does not have a child ion-content (or class equivalent) then the .popover-viewport element\n * should remain scrollable. This code exists globally because popover targets\n * .popover-viewport using ::slotted which only supports simple selectors.\n *\n * Note that we do not need to account for .ion-content-scroll-host here because that\n * class should always be placed within ion-content even if ion-content is not scrollable.\n */\n.popover-viewport:has(> ion-content) {\n overflow: hidden;\n}\n\n/**\n * :has has cross-browser support, but it is still relatively new. As a result,\n * we should fallback to the old behavior for environments that do not support :has.\n * Developers can explicitly enable this behavior by setting overflow: visible\n * on .popover-viewport if they know they are not going to use an ion-content.\n * TODO FW-6106 Remove this\n */\n@supports not selector(:has(> ion-content)) {\n .popover-viewport {\n overflow: hidden;\n }\n}\n","@import \"../../themes/ionic.globals\";\n\n// Modals\n// --------------------------------------------------\n\n/// @prop - Min width of the modal inset\n$modal-inset-min-width: 768px;\n\n/// @prop - Minimum height of the small modal inset\n$modal-inset-min-height-small: 600px;\n\n/// @prop - Minimum height of the large modal inset\n$modal-inset-min-height-large: 768px;\n\n/// @prop - Width of the large modal inset\n$modal-inset-width: 600px;\n\n/// @prop - Height of the small modal inset\n$modal-inset-height-small: 500px;\n\n/// @prop - Height of the large modal inset\n$modal-inset-height-large: 600px;\n\n/// @prop - Text color of the modal content\n$modal-text-color: $text-color;\n\n/// @prop - Padding top of the sheet modal\n$modal-sheet-padding-top: 6px;\n\n/// @prop - Padding bottom of the sheet modal\n$modal-sheet-padding-bottom: 6px;\n","\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n@mixin tablet-viewport() {\n @media screen and (min-width: 768px) {\n @content;\n }\n}\n\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n@mixin mobile-viewport() {\n @media screen and (max-width: 767px) {\n @content;\n }\n}\n\n@mixin input-cover() {\n @include position(0, null, null, 0);\n @include margin(0);\n\n position: absolute;\n\n width: 100%;\n height: 100%;\n\n border: 0;\n background: transparent;\n cursor: pointer;\n\n appearance: none;\n outline: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin visually-hidden() {\n position: absolute;\n\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n\n width: 100%;\n height: 100%;\n\n margin: 0;\n padding: 0;\n\n border: 0;\n outline: 0;\n clip: rect(0 0 0 0);\n\n opacity: 0;\n overflow: hidden;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n@mixin text-inherit() {\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n}\n\n@mixin button-state() {\n @include position(0, 0, 0, 0);\n\n position: absolute;\n\n content: \"\";\n\n opacity: 0;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name != index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $screen-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n//\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\t// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\t// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n $rootSplit: str-split($root, \",\");\n $selectors: #{add-root-selector($root, \"[dir=rtl]\")};\n $selectorsSplit: str-split($selectors, \",\");\n\n $hostContextSelectors: ();\n $restSelectors: ();\n $dirSelectors: ();\n\n // Selectors must be split into individual selectors in case the browser\n // doesn't support a specific selector.\n // For example, Firefox and Safari doesn't support `:host-context()`.\n // If an invalid selector is used, then the entire group of selectors\n // will be ignored.\n // @link https://www.w3.org/TR/selectors-3/#grouping\n @each $selector in $selectorsSplit {\n // Group the selectors back into a single selector to optimize the output.\n @if str-index($selector, \":host-context\") {\n $hostContextSelectors: append($hostContextSelectors, $selector, comma);\n } @else {\n // Group the selectors back into a single selector to optimize the output.\n $restSelectors: append($restSelectors, $selector, comma);\n }\n }\n\n // Supported by Chrome.\n @if length($hostContextSelectors) > 0 {\n @at-root #{$hostContextSelectors} {\n @content;\n }\n }\n\n // Supported by all browsers.\n @if length($restSelectors) > 0 {\n @at-root #{$restSelectors} {\n @content;\n }\n }\n\n // If browser can support `:dir()`, then add the `:dir()` selectors.\n @supports selector(:dir(rtl)) {\n // Adding :dir() in case the browser doesn't support `:host-context()` and does support `:dir()`.\n // `:host-context()` is added:\n // - through the `add-root-selector()` function.\n // - first so that it takes precedence over `:dir()`.\n // For example,\n // - Firefox doesn't support `:host-context()`, but does support `:dir()`.\n // - Safari doesn't support `:host-context()`, but Safari 16.4+ supports `:dir()`\n // @link https://webkit.org/blog/13966/webkit-features-in-safari-16-4/\n // -- However, there is a Webkit bug on v16 that prevents `:dir()` from working when\n // -- the app direction is changed dynamically. v17+ works fine.\n // -- @link https://bugs.webkit.org/show_bug.cgi?id=257133\n\n // Supported by Firefox.\n @at-root #{add-root-selector($root, \":dir(rtl)\", false)} {\n @content;\n }\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: str-split(str-extract($svg, \"viewBox='\", \"'\"), \" \");\n\n @if $flip-rtl != true or $viewBox == null {\n @include multi-dir() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n } @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: str-replace($flipped-url, \"<path\", \"<path #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<line\", \"<line #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<polygon\", \"<polygon #{$transform}\");\n $flipped-url: url-encode($flipped-url);\n\n @include ltr () {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n @include rtl() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$flipped-url}\");\n }\n }\n}\n\n// Add property horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin property-horizontal($prop, $start, $end: $start) {\n @if $start == 0 and $end == 0 {\n #{$prop}-left: $start;\n #{$prop}-right: $end;\n\n } @else {\n -webkit-#{$prop}-start: $start;\n #{$prop}-inline-start: $start;\n -webkit-#{$prop}-end: $end;\n #{$prop}-inline-end: $end;\n }\n}\n\n// Add property for all directions\n// @param {string} $prop\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// @param {boolean} $content include content or use default\n// ----------------------------------------------------------\n@mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) {\n @include property-horizontal($prop, $start, $end);\n #{$prop}-top: $top;\n #{$prop}-bottom: $bottom;\n}\n\n// Add padding horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin padding-horizontal($start, $end: $start) {\n @include property-horizontal(padding, $start, $end);\n}\n\n// Add padding for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin padding($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(padding, $top, $end, $bottom, $start);\n}\n\n// Add margin horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin margin-horizontal($start, $end: $start) {\n @include property-horizontal(margin, $start, $end);\n}\n\n// Add margin for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin margin($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(margin, $top, $end, $bottom, $start);\n}\n\n// Add position horizontal\n// @param {string} $start - amount to position start\n// @param {string} $end - amount to left: 0; end\n// ----------------------------------------------------------\n@mixin position-horizontal($start: null, $end: null) {\n @if $start == $end {\n @include multi-dir() {\n left: $start;\n right: $end;\n }\n } @else {\n @at-root {\n & {\n inset-inline-start: $start;\n inset-inline-end: $end;\n }\n }\n }\n}\n\n// Add position for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin position($top: null, $end: null, $bottom: null, $start: null) {\n @include position-horizontal($start, $end);\n top: $top;\n bottom: $bottom;\n}\n\n// Add border for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin border($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(border, $top, $end, $bottom, $start);\n}\n\n// Add border radius for all directions\n// @param {string} $top-start\n// @param {string} $top-end\n// @param {string} $bottom-end\n// @param {string} $bottom-start\n// ----------------------------------------------------------\n@mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) {\n @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start {\n border-radius: $top-start;\n } @else {\n border-start-start-radius: $top-start;\n border-start-end-radius: $top-end;\n border-end-end-radius: $bottom-end;\n border-end-start-radius: $bottom-start;\n }\n}\n\n// Add direction for all directions\n// @param {string} $dir - Direction on LTR\n@mixin direction($dir) {\n $other-dir: null;\n\n @if $dir == ltr {\n $other-dir: rtl;\n } @else {\n $other-dir: ltr;\n }\n\n @include ltr() {\n direction: $dir;\n }\n @include rtl() {\n direction: $other-dir;\n }\n}\n\n// Add float for all directions\n// @param {string} $side\n// @param {string} $decorator - !important\n@mixin float($side, $decorator: null) {\n @if $side == start {\n @include ltr() {\n float: left $decorator;\n }\n @include rtl() {\n float: right $decorator;\n }\n } @else if $side == end {\n @include ltr() {\n float: right $decorator;\n }\n @include rtl() {\n float: left $decorator;\n }\n } @else {\n @include multi-dir() {\n float: $side $decorator;\n }\n }\n}\n\n@mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) {\n @if $horizontal == start or $horizontal == end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n @if $horizontal == start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n } @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount;\n }\n @include rtl() {\n background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount;\n }\n } @else {\n @include multi-dir() {\n background-position: $horizontal $horizontal-amount $vertical $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis == start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n @include rtl() {\n transform-origin: right $y-axis;\n }\n } @else if $x-axis == end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n @include rtl() {\n transform-origin: left $y-axis;\n }\n } @else if $x-axis == left or $x-axis == right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n } @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: str-replace($transform, 'translate3d(');\n $transform: str-replace($transform, ')');\n\n $coordinates: str-split($transform, ',');\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n } @else {\n @if $extra == null {\n $extra: $transform;\n } @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x == '0' or $x == null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n } @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n","\n// Global Utility Functions\n@import \"./ionic.functions.string\";\n\n// Global Color Functions\n@import \"./ionic.functions.color\";\n\n// Global Font Functions\n@import \"./ionic.functions.font\";\n\n// Global Mixins\n@import \"./ionic.mixins\";\n\n// Default Theme\n@import \"./ionic.theme.default\";\n\n\n// Default General\n// --------------------------------------------------\n$font-family-base: var(--ion-font-family, inherit);\n\n// Hairlines width\n$hairlines-width: .55px;\n\n// The minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries\n$screen-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n);\n\n// Input placeholder opacity\n// Ensures that the placeholder has the\n// correct color contrast against the background.\n$placeholder-opacity: var(--ion-placeholder-opacity, 0.6);\n\n$form-control-label-margin: 16px;\n\n// How much the stacked labels should be scaled by\n/// The value 0.75 is used to match the MD spec.\n/// iOS does not have a floating label design spec, so we standardize on 0.75.\n$form-control-label-stacked-scale: 0.75;\n\n\n// Z-Index\n// --------------------------------------------------\n// Grouped by elements which would be siblings\n\n$z-index-menu-overlay: 1000;\n$z-index-overlay: 1001;\n\n$z-index-fixed-content: 999;\n$z-index-refresher: -1;\n\n$z-index-page-container: 0;\n$z-index-toolbar: 10;\n$z-index-toolbar-background: -1;\n$z-index-toolbar-buttons: 99;\n\n$z-index-backdrop: 2;\n$z-index-overlay-wrapper: 10;\n\n$z-index-item-options: 1;\n$z-index-item-input: 2;\n$z-index-item-divider: 100;\n\n$z-index-reorder-selected: 100;\n","@import \"../../themes/ionic.globals.ios\";\n\n// iOS Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow color of the menu\n$menu-ios-box-shadow-color: rgba(0, 0, 0, .08);\n\n/// @prop - Box shadow of the menu\n$menu-ios-box-shadow: -8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the menu in rtl mode\n$menu-ios-box-shadow-rtl: 8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal: $menu-ios-box-shadow;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal-rtl: $menu-ios-box-shadow-rtl;\n\n/// @prop - Box shadow of the push menu\n$menu-ios-box-shadow-push: null;\n\n/// @prop - Box shadow of the overlay menu\n$menu-ios-box-shadow-overlay: null;\n","@import \"../../themes/ionic.globals.md\";\n\n// Material Design Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow of the menu\n$menu-md-box-shadow: 4px 0px 16px rgba(0, 0, 0, 0.18);\n"]}
|
package/css/ionic.bundle.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["../src/css/core.scss","../src/themes/ionic.mixins.scss","../src/themes/ionic.globals.scss","../src/components/menu/menu.ios.vars.scss","../src/components/menu/menu.md.vars.scss","../src/css/normalize.scss","../src/css/structure.scss","../src/css/typography.scss","../src/css/padding.scss","../src/css/float-elements.scss","../src/css/text-alignment.scss","../src/css/text-transformation.scss","../src/css/flex-utils.scss","../src/css/display.scss"],"names":[],"mappings":"AAKA,MAOI,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,sCACA,oCACA,iDACA,oCACA,mCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,qCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BAOJ,SACE,8FAEF,QACE,2DAGF,KACE,uCACA,2CAGF,KACE,uCACA,4BAGF,wBACE,gBAYF,+LAGE,gBAQF,qIAEE,mBAQF,+BACE,qDACA,mDAOF,qCACE,4CACE,0BA+BJ,2DACE,sBACA,mBAaF,wCACE,4CAyBA,mBATA,+DACA,0EACA,yEACA,0FACA,sEACA,oEAIA,qBATA,iEACA,4EACA,2EACA,4FACA,wEACA,sEAIA,oBATA,gEACA,4EACA,0EACA,2FACA,uEACA,qEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,kBATA,8DACA,yEACA,wEACA,yFACA,qEACA,mEAIA,iBATA,6DACA,2EACA,uEACA,kFACA,oEACA,kEAIA,kBATA,8DACA,2EACA,wEACA,yFACA,qEACA,mEAIA,gBATA,4DACA,uEACA,sEACA,uFACA,mEACA,iEAaF,UCsOM,KDrOuB,ECsOvB,MDtOiB,EC0PrB,ID1PkB,EC2PlB,OD3PwB,EAExB,aACA,kBAEA,sBACA,8BAEA,0BACA,QExH+B,EFmIjC,oBACE,kBAEA,qBAEA,YAGF,8CACE,kBAGF,iRAeE,wBAGF,oBACE,UAGF,wCACE,cAOF,6CACE,8BAGF,6BACE,KACE,mDAIJ,iDACE,KACE,8CACA,oDACA,gDACA,mDAQJ,mFAEE,cAOF,cC8TM,iCD1TN,mBACE,eACA,0BAUA,oBAMA,kBAUF,+BACE,mBAGF,4CACE,gBAGF,0BACE,WGtS+B,4BHySjC,mCACE,WGvS+B,2BH8SjC,yBACE,WIrT8B,6BJwThC,uBACE,WIzT8B,6BJ6ThC,6EACE,2BACA,4BAEF,4EACE,8BACA,+BAEF,qEACE,oBAGF,0EACE,2DAGF,uCACE,yCAEE,4BASJ,qJAEE,yBAGF,2GACE,oBACA,0BAGF,uMAEE,aAMF,6CACE,iBASF,6BACE,qBACA,sBAUF,wDACE,YACA,iBAUF,uNAOE,aAaF,oCACE,gBAUF,4CACE,kBACE,iBK7aJ,4BAIE,wBAKF,sBACE,aAEA,SAQF,SAEE,iBAOF,IACE,eAMF,GACE,WAEA,eAEA,uBAIF,IACE,cAIF,kBAIE,gCACA,cAgBF,4BAIE,oBACA,mBAGF,SACE,cAEA,YAEA,aACA,cAGF,sBACE,iBAGF,2BAIE,SAEA,aACA,cAQF,6DAGE,eAEA,0BAIF,qNAkBE,0BAGF,6BAEE,oBAGF,OACE,UACA,SACA,gBACA,oBACA,mBACA,qBACA,cACA,oBACA,eAEA,0BAGF,WACE,eAIF,kDAGE,eAIF,iDAEE,UAEA,SAMF,4FAEE,YAMF,+FAEE,wBAQF,MACE,yBACA,iBAGF,MAEE,UC1MF,EACE,sBAEA,0CACA,wCACA,2BAGF,KACE,WACA,YACA,8BAEA,sBAGF,yBACE,aAGF,iBACE,cAGF,aACE,aAGF,KL0EE,kCACA,mCA0NE,YKnSc,ELoSd,aKpSc,ELwThB,WKxTgB,ELyThB,cKzTgB,ELmSd,aKlSe,ELmSf,cKnSe,ELuTjB,YKvTiB,ELwTjB,eKxTiB,EAEjB,eAEA,WACA,eACA,YACA,gBAsBA,wBAEA,kCAEA,gBAEA,0BAEA,uBAEA,yBAEA,qBAEA,2BACA,8BAEA,sBCvDF,KACE,mCAOF,uCACE,KAIE,2DAIJ,EACE,6BACA,wCAGF,kBN0SE,WMpSgB,KNqShB,cMrS4B,KAE5B,YArD6B,IAuD7B,YApD6B,IAuD/B,GN6RE,WM5RgB,KAEhB,UAvD6B,SA0D/B,GNuRE,WMtRgB,KAEhB,UA1D6B,OA6D/B,GACE,UA3D6B,SA8D/B,GACE,UA5D6B,QA+D/B,GACE,UA7D6B,SAgE/B,GACE,UA9D6B,KAiE/B,MACE,cAGF,QAEE,kBAEA,cAEA,cAEA,wBAGF,IACE,WAGF,IACE,eClGF,gBACE,mBACA,iBACA,iBACA,oBPsTE,aOpTe,EPqTf,cOrTe,EPyUjB,YOzUiB,EP0UjB,eO1UiB,EAGnB,aACE,0CACA,wCACA,wCACA,2CPiTE,sBOpUM,yBPqUN,qBOrUM,yBPsUN,oBOtUM,yBPuUN,mBOvUM,yBPqVR,YOrVQ,yBPsVR,eOtVQ,yBAwBV,iBACE,wCP4TA,YOrVQ,yBA8BV,mBACE,0CPqSE,sBOpUM,yBPqUN,qBOrUM,yBAoCV,iBACE,wCPiSE,oBOtUM,yBPuUN,mBOvUM,yBA0CV,oBACE,2CP2SA,eOtVQ,yBAgDV,sBACE,wCACA,2CPmSA,YOrVQ,yBPsVR,eOtVQ,yBAuDV,wBACE,0CACA,wCP2QE,sBOpUM,yBPqUN,qBOrUM,yBPsUN,oBOtUM,yBPuUN,mBOvUM,yBAkEV,eACE,kBACA,gBACA,gBACA,mBP0PE,YOxPc,EPyPd,aOzPc,EP6QhB,WO7QgB,EP8QhB,cO9QgB,EAGlB,YACE,wCACA,sCACA,sCACA,yCPqPE,qBOnUK,wBPoUL,oBOpUK,wBPqUL,mBOrUK,wBPsUL,kBOtUK,wBPoVP,WOpVO,wBPqVP,cOrVO,wBAmFT,gBACE,sCPgQA,WOpVO,wBAyFT,kBACE,wCPyOE,qBOnUK,wBPoUL,oBOpUK,wBA+FT,gBACE,sCPqOE,mBOrUK,wBPsUL,kBOtUK,wBAqGT,mBACE,yCP+OA,cOrVO,wBA2GT,qBACE,sCACA,yCPuOA,WOpVO,wBPqVP,cOrVO,wBAkHT,uBACE,wCACA,sCP+ME,qBOnUK,wBPoUL,oBOpUK,wBPqUL,mBOrUK,wBPsUL,kBOtUK,wBCGL,gBR2dE,sBQvdF,iBRudE,uBQndF,iBRqcE,sBAzNO,0CA4NP,uBArNO,2BAqNP,uBA/MJ,8BAcW,0BAiMP,wBQpcF,eRwcE,uBAhOO,wCAmOP,sBA5NO,yBA4NP,sBAtNJ,8BAcW,wBAwMP,uBAnUF,yBQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,yBQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,yBQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,0BQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBSvdF,iBACE,6BAGF,kBACE,8BAGF,gBACE,4BAGF,cACE,0BAGF,eACE,2BAGF,gBACE,4BAGF,iBACE,8BAGF,eACE,8BTuHF,yBSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BTuHF,yBSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BTuHF,yBSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BTuHF,0BSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BC7BF,oBAEE,oCAGF,oBAEE,oCAGF,qBAEE,qCVwIF,yBUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCVwIF,yBUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCVwIF,yBUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCVwIF,0BUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCjBN,sBACE,iCAGF,oBACE,+BAGF,uBACE,6BAGF,wBACE,8BAGF,yBACE,+BAGF,qBACE,2BAOF,UACE,0BAGF,YACE,4BAGF,kBACE,kCAOF,2BACE,sCAGF,4BACE,kCAGF,yBACE,oCAGF,4BACE,wCAGF,6BACE,yCAGF,4BACE,wCAOF,uBACE,kCAGF,wBACE,8BAGF,qBACE,gCAGF,yBACE,+BAGF,0BACE,gCC1FF,UACE,wBAUE,aACE,wBAOF,eACE,wBZsIF,yBY/IA,gBACE,yBZuLF,4BYhLA,kBACE,yBZsIF,yBY/IA,gBACE,yBZuLF,4BYhLA,kBACE,yBZsIF,yBY/IA,gBACE,yBZuLF,4BYhLA,kBACE,yBZsIF,0BY/IA,gBACE,yBZuLF,6BYhLA,kBACE","file":"ionic.bundle.css","sourcesContent":["@use \"sass:map\";\n@import \"../themes/ionic.globals\";\n@import \"../components/menu/menu.ios.vars\";\n@import \"../components/menu/menu.md.vars\";\n\n:root {\n /**\n * Loop through each color object from the\n * `ionic.theme.default.scss` file\n * and generate CSS Variables for each color.\n */\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n}\n\n// Ionic Font Family\n// --------------------------------------------------\n\nhtml.ios {\n --ion-default-font: -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", \"Roboto\", sans-serif;\n}\nhtml.md {\n --ion-default-font: \"Roboto\", \"Helvetica Neue\", sans-serif;\n}\n\nhtml {\n --ion-dynamic-font: -apple-system-body;\n --ion-font-family: var(--ion-default-font);\n}\n\nbody {\n background: var(--ion-background-color);\n color: var(--ion-text-color);\n}\n\nbody.backdrop-no-scroll {\n overflow: hidden;\n}\n\n// Modal - Card Style\n// --------------------------------------------------\n/**\n * Card style modal needs additional padding on the\n * top of the header. We accomplish this by targeting\n * the first toolbar in the header.\n * Footer also needs this. We do not adjust the bottom\n * padding though because of the safe area.\n */\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal ion-footer ion-toolbar:first-of-type {\n padding-top: 6px;\n}\n\n/**\n* Card style modal needs additional padding on the\n* bottom of the header. We accomplish this by targeting\n* the last toolbar in the header.\n*/\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type {\n padding-bottom: 6px;\n}\n\n/**\n* Add padding on the left and right\n* of toolbars while accounting for\n* safe area values when in landscape.\n*/\nhtml.ios ion-modal ion-toolbar {\n padding-right: calc(var(--ion-safe-area-right) + 8px);\n padding-left: calc(var(--ion-safe-area-left) + 8px);\n}\n\n/**\n * Card style modal on iPadOS\n * should only have backdrop on first instance.\n */\n@media screen and (min-width: 768px) {\n html.ios ion-modal.modal-card:first-of-type {\n --backdrop-opacity: 0.18;\n }\n}\n\n/**\n * Subsequent modals should not have a backdrop/box shadow\n * as it will cause the screen to appear to get progressively\n * darker. With Ionic 6, declarative modals made it\n * possible to have multiple non-presented modals in the DOM,\n * so we could no longer rely on ion-modal:first-of-type.\n * Here we disable the opacity/box-shadow for every modal\n * that comes after the first presented modal.\n *\n * Note: ion-modal:not(.overlay-hidden):first-of-type\n * does not match the first modal to not have\n * the .overlay-hidden class, it will match the\n * first modal in general only if it does not\n * have the .overlay-hidden class.\n * The :nth-child() pseudo-class has support\n * for selectors which would help us here. At the\n * time of writing it does not have great cross browser\n * support.\n *\n * Note 2: This should only apply to non-card and\n * non-sheet modals. Card and sheet modals have their\n * own criteria for displaying backdrops/box shadows.\n *\n * Do not use :not(.overlay-hidden) in place of\n * .show-modal because that triggers a memory\n * leak in Blink: https://bugs.chromium.org/p/chromium/issues/detail?id=1418768\n */\nion-modal.modal-default.show-modal ~ ion-modal.modal-default {\n --backdrop-opacity: 0;\n --box-shadow: none;\n}\n\n/**\n * This works around a bug in WebKit where the\n * content will overflow outside of the bottom border\n * radius when re-painting. As long as a single\n * border radius value is set on .ion-page, this\n * issue does not happen. We set the top left radius\n * here because the top left corner will always have a\n * radius no matter the platform.\n * This behavior only applies to card modals.\n */\nhtml.ios ion-modal.modal-card .ion-page {\n border-top-left-radius: var(--border-radius);\n}\n\n// Ionic Colors\n// --------------------------------------------------\n// Generates the color classes and variables based on the\n// colors map\n\n@mixin generate-color($color-name) {\n $value: map-get($colors, $color-name);\n\n $base: map-get($value, base);\n $contrast: map-get($value, contrast);\n $shade: map-get($value, shade);\n $tint: map-get($value, tint);\n\n --ion-color-base: var(--ion-color-#{$color-name}, #{$base}) !important;\n --ion-color-base-rgb: var(--ion-color-#{$color-name}-rgb, #{color-to-rgb-list($base)}) !important;\n --ion-color-contrast: var(--ion-color-#{$color-name}-contrast, #{$contrast}) !important;\n --ion-color-contrast-rgb: var(--ion-color-#{$color-name}-contrast-rgb, #{color-to-rgb-list($contrast)}) !important;\n --ion-color-shade: var(--ion-color-#{$color-name}-shade, #{$shade}) !important;\n --ion-color-tint: var(--ion-color-#{$color-name}-tint, #{$tint}) !important;\n}\n\n@each $color-name, $value in $colors {\n .ion-color-#{$color-name} {\n @include generate-color($color-name);\n }\n}\n\n\n// Page Container Structure\n// --------------------------------------------------\n\n.ion-page {\n @include position(0, 0, 0, 0);\n\n display: flex;\n position: absolute;\n\n flex-direction: column;\n justify-content: space-between;\n\n contain: layout size style;\n z-index: $z-index-page-container;\n}\n\n/**\n * When making custom dialogs, using\n * ion-content is not required. As a result,\n * some developers may wish to have dialogs\n * that are automatically sized by the browser.\n * These changes allow certain dimension values\n * such as fit-content to work correctly.\n */\nion-modal > .ion-page {\n position: relative;\n\n contain: layout style;\n\n height: 100%;\n}\n\n.split-pane-visible > .ion-page.split-pane-main {\n position: relative;\n}\n\nion-route,\nion-route-redirect,\nion-router,\nion-select-option,\nion-nav-controller,\nion-menu-controller,\nion-action-sheet-controller,\nion-alert-controller,\nion-loading-controller,\nion-modal-controller,\nion-picker-controller,\nion-popover-controller,\nion-toast-controller,\n.ion-page-hidden {\n /* stylelint-disable-next-line declaration-no-important */\n display: none !important;\n}\n\n.ion-page-invisible {\n opacity: 0;\n}\n\n.can-go-back > ion-header ion-back-button {\n display: block;\n}\n\n\n// Ionic Safe Margins\n// --------------------------------------------------\n\nhtml.plt-ios.plt-hybrid, html.plt-ios.plt-pwa {\n --ion-statusbar-padding: 20px;\n}\n\n@supports (padding-top: 20px) {\n html {\n --ion-safe-area-top: var(--ion-statusbar-padding);\n }\n}\n\n@supports (padding-top: env(safe-area-inset-top)) {\n html {\n --ion-safe-area-top: env(safe-area-inset-top);\n --ion-safe-area-bottom: env(safe-area-inset-bottom);\n --ion-safe-area-left: env(safe-area-inset-left);\n --ion-safe-area-right: env(safe-area-inset-right);\n }\n}\n\n\n// Global Card Styles\n// --------------------------------------------------\n\nion-card.ion-color .ion-inherit-color,\nion-card-header.ion-color .ion-inherit-color {\n color: inherit;\n}\n\n\n// Menu Styles\n// --------------------------------------------------\n\n.menu-content {\n @include transform(translate3d(0, 0, 0));\n}\n\n.menu-content-open {\n cursor: pointer;\n touch-action: manipulation;\n\n /**\n * The containing element itself should be clickable but\n * everything inside of it should not clickable when menu is open\n *\n * Setting pointer-events after scrolling has already started\n * will not cancel scrolling which is why we also set\n * overflow-y below.\n */\n pointer-events: none;\n\n /**\n * This accounts for scenarios where the main content itself\n * is scrollable.\n */\n overflow-y: hidden;\n}\n\n/**\n * Setting overflow cancels any in-progress scrolling\n * when the menu opens. This prevents users from accidentally\n * scrolling the main content while also dragging the menu open.\n * The code below accounts for both ion-content and then custom\n * scroll containers within ion-content (such as virtual scroll)\n */\n.menu-content-open ion-content {\n --overflow: hidden;\n}\n\n.menu-content-open .ion-content-scroll-host {\n overflow: hidden;\n}\n\n.ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal;\n}\n\n[dir=rtl].ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal-rtl;\n}\n\n.ios .menu-content-push {\n box-shadow: $menu-ios-box-shadow-push;\n}\n\n.md .menu-content-reveal {\n box-shadow: $menu-md-box-shadow;\n}\n\n.md .menu-content-push {\n box-shadow: $menu-md-box-shadow;\n}\n\n// Accordion Styles\nion-accordion-group.accordion-group-expand-inset > ion-accordion:first-of-type {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n}\nion-accordion-group.accordion-group-expand-inset > ion-accordion:last-of-type {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n}\nion-accordion-group > ion-accordion:last-of-type ion-item[slot=\"header\"] {\n --border-width: 0px;\n}\n\nion-accordion.accordion-animated > [slot=\"header\"] .ion-accordion-toggle-icon {\n transition: 300ms transform cubic-bezier(0.25, 0.8, 0.5, 1);\n}\n\n@media (prefers-reduced-motion: reduce) {\n ion-accordion .ion-accordion-toggle-icon {\n /* stylelint-disable declaration-no-important */\n transition: none !important;\n }\n}\n/**\n * The > [slot=\"header\"] selector ensures that we do\n * not modify toggle icons for any nested accordions. The state\n * of one accordion should not affect any accordions inside\n * of a nested accordion group.\n */\nion-accordion.accordion-expanding > [slot=\"header\"] .ion-accordion-toggle-icon,\nion-accordion.accordion-expanded > [slot=\"header\"] .ion-accordion-toggle-icon {\n transform: rotate(180deg);\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-previous ion-item[slot=\"header\"] {\n --border-width: 0px;\n --inner-border-width: 0px;\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanding:first-of-type,\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanded:first-of-type {\n margin-top: 0;\n}\n\n// Safari/iOS 15 changes the appearance of input[type=\"date\"].\n// For backwards compatibility from Ionic 5/Safari 14 designs,\n// we override the appearance only when using within an ion-input.\nion-input input::-webkit-date-and-time-value {\n text-align: start;\n}\n\n/**\n * The .ion-datetime-button-overlay class contains\n * styles that allow any modal/popover to be\n * sized according to the dimensions of the datetime\n * when used with ion-datetime-button.\n */\n.ion-datetime-button-overlay {\n --width: fit-content;\n --height: fit-content;\n}\n\n/**\n * The grid variant can scale down when inline.\n * When used in a `fit-content` overlay, this causes\n * the overlay to shrink when the month/year picker is open.\n * Explicitly setting the dimensions lets us have a consistently\n * sized grid interface.\n */\n.ion-datetime-button-overlay ion-datetime.datetime-grid {\n width: 320px;\n min-height: 320px;\n}\n\n/**\n * When moving focus on page transitions we call .focus() on an element which can\n * add an undesired outline ring. This CSS removes the outline ring.\n * We also remove the outline ring from elements that are actively being focused\n * by the focus manager. We are intentionally selective about which elements this\n * applies to so we do not accidentally override outlines set by the developer.\n */\n[ion-last-focus],\nheader[tabindex=\"-1\"]:focus,\n[role=\"banner\"][tabindex=\"-1\"]:focus,\nmain[tabindex=\"-1\"]:focus,\n[role=\"main\"][tabindex=\"-1\"]:focus,\nh1[tabindex=\"-1\"]:focus,\n[role=\"heading\"][aria-level=\"1\"][tabindex=\"-1\"]:focus {\n outline: none;\n}\n\n/*\n * If a popover has a child ion-content (or class equivalent) then the .popover-viewport element\n * should not be scrollable to ensure the inner content does scroll. However, if the popover\n * does not have a child ion-content (or class equivalent) then the .popover-viewport element\n * should remain scrollable. This code exists globally because popover targets\n * .popover-viewport using ::slotted which only supports simple selectors.\n *\n * Note that we do not need to account for .ion-content-scroll-host here because that\n * class should always be placed within ion-content even if ion-content is not scrollable.\n */\n.popover-viewport:has(> ion-content) {\n overflow: hidden;\n}\n\n/**\n * :has has cross-browser support, but it is still relatively new. As a result,\n * we should fallback to the old behavior for environments that do not support :has.\n * Developers can explicitly enable this behavior by setting overflow: visible\n * on .popover-viewport if they know they are not going to use an ion-content.\n * TODO FW-6106 Remove this\n */\n@supports not selector(:has(> ion-content)) {\n .popover-viewport {\n overflow: hidden;\n }\n}\n","\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n@mixin tablet-viewport() {\n @media screen and (min-width: 768px) {\n @content;\n }\n}\n\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n@mixin mobile-viewport() {\n @media screen and (max-width: 767px) {\n @content;\n }\n}\n\n@mixin input-cover() {\n @include position(0, null, null, 0);\n @include margin(0);\n\n position: absolute;\n\n width: 100%;\n height: 100%;\n\n border: 0;\n background: transparent;\n cursor: pointer;\n\n appearance: none;\n outline: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin visually-hidden() {\n position: absolute;\n\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n\n width: 100%;\n height: 100%;\n\n margin: 0;\n padding: 0;\n\n border: 0;\n outline: 0;\n clip: rect(0 0 0 0);\n\n opacity: 0;\n overflow: hidden;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n@mixin text-inherit() {\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n}\n\n@mixin button-state() {\n @include position(0, 0, 0, 0);\n\n position: absolute;\n\n content: \"\";\n\n opacity: 0;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name != index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $screen-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n//\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\t// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\t// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n $rootSplit: str-split($root, \",\");\n $selectors: #{add-root-selector($root, \"[dir=rtl]\")};\n $selectorsSplit: str-split($selectors, \",\");\n\n $hostContextSelectors: ();\n $restSelectors: ();\n $dirSelectors: ();\n\n // Selectors must be split into individual selectors in case the browser\n // doesn't support a specific selector.\n // For example, Firefox and Safari doesn't support `:host-context()`.\n // If an invalid selector is used, then the entire group of selectors\n // will be ignored.\n // @link https://www.w3.org/TR/selectors-3/#grouping\n @each $selector in $selectorsSplit {\n // Group the selectors back into a single selector to optimize the output.\n @if str-index($selector, \":host-context\") {\n $hostContextSelectors: append($hostContextSelectors, $selector, comma);\n } @else {\n // Group the selectors back into a single selector to optimize the output.\n $restSelectors: append($restSelectors, $selector, comma);\n }\n }\n\n // Supported by Chrome.\n @if length($hostContextSelectors) > 0 {\n @at-root #{$hostContextSelectors} {\n @content;\n }\n }\n\n // Supported by all browsers.\n @if length($restSelectors) > 0 {\n @at-root #{$restSelectors} {\n @content;\n }\n }\n\n // If browser can support `:dir()`, then add the `:dir()` selectors.\n @supports selector(:dir(rtl)) {\n // Adding :dir() in case the browser doesn't support `:host-context()` and does support `:dir()`.\n // `:host-context()` is added:\n // - through the `add-root-selector()` function.\n // - first so that it takes precedence over `:dir()`.\n // For example,\n // - Firefox doesn't support `:host-context()`, but does support `:dir()`.\n // - Safari doesn't support `:host-context()`, but Safari 16.4+ supports `:dir()`\n // @link https://webkit.org/blog/13966/webkit-features-in-safari-16-4/\n // -- However, there is a Webkit bug on v16 that prevents `:dir()` from working when\n // -- the app direction is changed dynamically. v17+ works fine.\n // -- @link https://bugs.webkit.org/show_bug.cgi?id=257133\n\n // Supported by Firefox.\n @at-root #{add-root-selector($root, \":dir(rtl)\", false)} {\n @content;\n }\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: str-split(str-extract($svg, \"viewBox='\", \"'\"), \" \");\n\n @if $flip-rtl != true or $viewBox == null {\n @include multi-dir() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n } @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: str-replace($flipped-url, \"<path\", \"<path #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<line\", \"<line #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<polygon\", \"<polygon #{$transform}\");\n $flipped-url: url-encode($flipped-url);\n\n @include ltr () {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n @include rtl() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$flipped-url}\");\n }\n }\n}\n\n// Add property horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin property-horizontal($prop, $start, $end: $start) {\n @if $start == 0 and $end == 0 {\n #{$prop}-left: $start;\n #{$prop}-right: $end;\n\n } @else {\n -webkit-#{$prop}-start: $start;\n #{$prop}-inline-start: $start;\n -webkit-#{$prop}-end: $end;\n #{$prop}-inline-end: $end;\n }\n}\n\n// Add property for all directions\n// @param {string} $prop\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// @param {boolean} $content include content or use default\n// ----------------------------------------------------------\n@mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) {\n @include property-horizontal($prop, $start, $end);\n #{$prop}-top: $top;\n #{$prop}-bottom: $bottom;\n}\n\n// Add padding horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin padding-horizontal($start, $end: $start) {\n @include property-horizontal(padding, $start, $end);\n}\n\n// Add padding for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin padding($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(padding, $top, $end, $bottom, $start);\n}\n\n// Add margin horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin margin-horizontal($start, $end: $start) {\n @include property-horizontal(margin, $start, $end);\n}\n\n// Add margin for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin margin($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(margin, $top, $end, $bottom, $start);\n}\n\n// Add position horizontal\n// @param {string} $start - amount to position start\n// @param {string} $end - amount to left: 0; end\n// ----------------------------------------------------------\n@mixin position-horizontal($start: null, $end: null) {\n @if $start == $end {\n @include multi-dir() {\n left: $start;\n right: $end;\n }\n } @else {\n @at-root {\n & {\n inset-inline-start: $start;\n inset-inline-end: $end;\n }\n }\n }\n}\n\n// Add position for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin position($top: null, $end: null, $bottom: null, $start: null) {\n @include position-horizontal($start, $end);\n top: $top;\n bottom: $bottom;\n}\n\n// Add border for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin border($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(border, $top, $end, $bottom, $start);\n}\n\n// Add border radius for all directions\n// @param {string} $top-start\n// @param {string} $top-end\n// @param {string} $bottom-end\n// @param {string} $bottom-start\n// ----------------------------------------------------------\n@mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) {\n @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start {\n border-radius: $top-start;\n } @else {\n border-start-start-radius: $top-start;\n border-start-end-radius: $top-end;\n border-end-end-radius: $bottom-end;\n border-end-start-radius: $bottom-start;\n }\n}\n\n// Add direction for all directions\n// @param {string} $dir - Direction on LTR\n@mixin direction($dir) {\n $other-dir: null;\n\n @if $dir == ltr {\n $other-dir: rtl;\n } @else {\n $other-dir: ltr;\n }\n\n @include ltr() {\n direction: $dir;\n }\n @include rtl() {\n direction: $other-dir;\n }\n}\n\n// Add float for all directions\n// @param {string} $side\n// @param {string} $decorator - !important\n@mixin float($side, $decorator: null) {\n @if $side == start {\n @include ltr() {\n float: left $decorator;\n }\n @include rtl() {\n float: right $decorator;\n }\n } @else if $side == end {\n @include ltr() {\n float: right $decorator;\n }\n @include rtl() {\n float: left $decorator;\n }\n } @else {\n @include multi-dir() {\n float: $side $decorator;\n }\n }\n}\n\n@mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) {\n @if $horizontal == start or $horizontal == end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n @if $horizontal == start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n } @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount;\n }\n @include rtl() {\n background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount;\n }\n } @else {\n @include multi-dir() {\n background-position: $horizontal $horizontal-amount $vertical $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis == start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n @include rtl() {\n transform-origin: right $y-axis;\n }\n } @else if $x-axis == end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n @include rtl() {\n transform-origin: left $y-axis;\n }\n } @else if $x-axis == left or $x-axis == right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n } @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: str-replace($transform, 'translate3d(');\n $transform: str-replace($transform, ')');\n\n $coordinates: str-split($transform, ',');\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n } @else {\n @if $extra == null {\n $extra: $transform;\n } @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x == '0' or $x == null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n } @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n","\n// Global Utility Functions\n@import \"./ionic.functions.string\";\n\n// Global Color Functions\n@import \"./ionic.functions.color\";\n\n// Global Font Functions\n@import \"./ionic.functions.font\";\n\n// Global Mixins\n@import \"./ionic.mixins\";\n\n// Default Theme\n@import \"./ionic.theme.default\";\n\n\n// Default General\n// --------------------------------------------------\n$font-family-base: var(--ion-font-family, inherit);\n\n// Hairlines width\n$hairlines-width: .55px;\n\n// The minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries\n$screen-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n);\n\n// Input placeholder opacity\n// Ensures that the placeholder has the\n// correct color contrast against the background.\n$placeholder-opacity: var(--ion-placeholder-opacity, 0.6);\n\n$form-control-label-margin: 16px;\n\n// How much the stacked labels should be scaled by\n/// The value 0.75 is used to match the MD spec.\n/// iOS does not have a floating label design spec, so we standardize on 0.75.\n$form-control-label-stacked-scale: 0.75;\n\n\n// Z-Index\n// --------------------------------------------------\n// Grouped by elements which would be siblings\n\n$z-index-menu-overlay: 1000;\n$z-index-overlay: 1001;\n\n$z-index-fixed-content: 999;\n$z-index-refresher: -1;\n\n$z-index-page-container: 0;\n$z-index-toolbar: 10;\n$z-index-toolbar-background: -1;\n$z-index-toolbar-buttons: 99;\n\n$z-index-backdrop: 2;\n$z-index-overlay-wrapper: 10;\n\n$z-index-item-options: 1;\n$z-index-item-input: 2;\n$z-index-item-divider: 100;\n\n$z-index-reorder-selected: 100;\n","@import \"../../themes/ionic.globals.ios\";\n\n// iOS Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow color of the menu\n$menu-ios-box-shadow-color: rgba(0, 0, 0, .08);\n\n/// @prop - Box shadow of the menu\n$menu-ios-box-shadow: -8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the menu in rtl mode\n$menu-ios-box-shadow-rtl: 8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal: $menu-ios-box-shadow;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal-rtl: $menu-ios-box-shadow-rtl;\n\n/// @prop - Box shadow of the push menu\n$menu-ios-box-shadow-push: null;\n\n/// @prop - Box shadow of the overlay menu\n$menu-ios-box-shadow-overlay: null;\n","@import \"../../themes/ionic.globals.md\";\n\n// Material Design Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow of the menu\n$menu-md-box-shadow: 4px 0px 16px rgba(0, 0, 0, 0.18);\n","// ! normalize.css v3.0.2 | MIT License | github.com/necolas/normalize.css\n\n\n// HTML5 display definitions\n// ==========================================================================\n\n// 1. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\naudio,\ncanvas,\nprogress,\nvideo {\n vertical-align: baseline; // 1\n}\n\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\naudio:not([controls]) {\n display: none;\n\n height: 0;\n}\n\n\n// Text-level semantics\n// ==========================================================================\n\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\nb,\nstrong {\n font-weight: bold;\n}\n\n// Embedded content\n// ==========================================================================\n\n// Makes it so the img does not flow outside container\nimg {\n max-width: 100%;\n}\n\n// Grouping content\n// ==========================================================================\n\nhr {\n height: 1px;\n\n border-width: 0;\n\n box-sizing: content-box;\n}\n\n// Contain overflow in all browsers.\npre {\n overflow: auto;\n}\n\n// Address odd `em`-unit font size rendering in all browsers.\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n\n// Forms\n// ==========================================================================\n\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nlabel,\ninput,\nselect,\ntextarea {\n font-family: inherit;\n line-height: normal;\n}\n\ntextarea {\n overflow: auto;\n\n height: auto;\n\n font: inherit;\n color: inherit;\n}\n\ntextarea::placeholder {\n padding-left: 2px;\n}\n\nform,\ninput,\noptgroup,\nselect {\n margin: 0; // 3\n\n font: inherit; // 2\n color: inherit; // 1\n}\n\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n cursor: pointer; // 3\n\n -webkit-appearance: button; // 2\n}\n\n// remove 300ms delay\na,\na div,\na span,\na ion-icon,\na ion-label,\nbutton,\nbutton div,\nbutton span,\nbutton ion-icon,\nbutton ion-label,\n.ion-tappable,\n[tappable],\n[tappable] div,\n[tappable] span,\n[tappable] ion-icon,\n[tappable] ion-label,\ninput,\ntextarea {\n touch-action: manipulation;\n}\n\na ion-label,\nbutton ion-label {\n pointer-events: none;\n}\n\nbutton {\n padding: 0;\n border: 0;\n border-radius: 0;\n font-family: inherit;\n font-style: inherit;\n font-variant: inherit;\n line-height: 1;\n text-transform: none;\n cursor: pointer;\n\n -webkit-appearance: button;\n}\n\n[tappable] {\n cursor: pointer;\n}\n\n// Re-set default cursor for disabled elements.\na[disabled],\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n// Remove inner padding and border in Firefox 4+.\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n\n border: 0;\n}\n\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n\n// Tables\n// ==========================================================================//\n\n// Remove most spacing between table cells.\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n\n// Structure\n// --------------------------------------------------\n// Adds structural css to the native html elements\n\n* {\n box-sizing: border-box;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\nhtml {\n width: 100%;\n height: 100%;\n -webkit-text-size-adjust: 100%;\n\n text-size-adjust: 100%;\n}\n\nhtml:not(.hydrated) body {\n display: none;\n}\n\nhtml.ion-ce body {\n display: block;\n}\n\nhtml.plt-pwa {\n height: 100vh;\n}\n\nbody {\n @include font-smoothing();\n @include margin(0);\n @include padding(0);\n\n position: fixed;\n\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n\n /**\n * Because body has position: fixed,\n * it should be promoted to its own\n * layer.\n *\n * WebKit does not always promote\n * the body to its own layer on page\n * load in Ionic apps. Once scrolling on\n * ion-content starts, WebKit will promote\n * body. Unfortunately, this causes a re-paint\n * which results in scrolling being halted\n * until the next user gesture.\n *\n * This impacts the Custom Elements build.\n * The lazy loaded build causes the browser to\n * re-paint during hydration which causes WebKit\n * to promote body to its own layer.\n * In the CE Build, this hydration does not\n * happen, so the additional re-paint does not occur.\n */\n transform: translateZ(0);\n\n text-rendering: optimizeLegibility;\n\n overflow: hidden;\n\n touch-action: manipulation;\n\n -webkit-user-drag: none;\n\n -ms-content-zooming: none;\n\n word-wrap: break-word;\n\n overscroll-behavior-y: none;\n -webkit-text-size-adjust: none;\n\n text-size-adjust: none;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Typography\n// --------------------------------------------------\n\n/// @prop - Font weight of all headings\n$headings-font-weight: 500;\n\n/// @prop - Line height of all headings\n$headings-line-height: 1.2;\n\n/// @prop - Font size of heading level 1\n$h1-font-size: dynamic-font(26px);\n\n/// @prop - Font size of heading level 2\n$h2-font-size: dynamic-font(24px);\n\n/// @prop - Font size of heading level 3\n$h3-font-size: dynamic-font(22px);\n\n/// @prop - Font size of heading level 4\n$h4-font-size: dynamic-font(20px);\n\n/// @prop - Font size of heading level 5\n$h5-font-size: dynamic-font(18px);\n\n/// @prop - Font size of heading level 6\n$h6-font-size: dynamic-font(16px);\n\nhtml {\n font-family: var(--ion-font-family);\n}\n\n/**\n * Dynamic Type is an iOS-only feature, so\n * this should only be enabled on iOS devices.\n */\n@supports (-webkit-touch-callout: none) {\n html {\n /**\n * Includes fallback if Dynamic Type is not enabled.\n */\n font: var(--ion-dynamic-font, 16px var(--ion-font-family));\n }\n}\n\na {\n background-color: transparent;\n color: ion-color(primary, base);\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n @include margin(16px, null, 10px, null);\n\n font-weight: $headings-font-weight;\n\n line-height: $headings-line-height;\n}\n\nh1 {\n @include margin(20px, null, null, null);\n\n font-size: $h1-font-size;\n}\n\nh2 {\n @include margin(18px, null, null, null);\n\n font-size: $h2-font-size;\n}\n\nh3 {\n font-size: $h3-font-size;\n}\n\nh4 {\n font-size: $h4-font-size;\n}\n\nh5 {\n font-size: $h5-font-size;\n}\n\nh6 {\n font-size: $h6-font-size;\n}\n\nsmall {\n font-size: 75%;\n}\n\nsub,\nsup {\n position: relative;\n\n font-size: 75%;\n\n line-height: 0;\n\n vertical-align: baseline;\n}\n\nsup {\n top: -.5em;\n}\n\nsub {\n bottom: -.25em;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n\n// Element Space\n// --------------------------------------------------\n// Creates padding and margin attributes to be used on\n// any element\n\n$padding: var(--ion-padding, 16px);\n$margin: var(--ion-margin, 16px);\n\n// Padding\n// --------------------------------------------------\n\n.ion-no-padding {\n --padding-start: 0;\n --padding-end: 0;\n --padding-top: 0;\n --padding-bottom: 0;\n\n @include padding(0);\n}\n\n.ion-padding {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding);\n}\n\n.ion-padding-top {\n --padding-top: #{$padding};\n\n @include padding($padding, null, null, null);\n}\n\n.ion-padding-start {\n --padding-start: #{$padding};\n\n @include padding-horizontal($padding, null);\n}\n\n.ion-padding-end {\n --padding-end: #{$padding};\n\n @include padding-horizontal(null, $padding);\n}\n\n.ion-padding-bottom {\n --padding-bottom: #{$padding};\n\n @include padding(null, null, $padding, null);\n}\n\n.ion-padding-vertical {\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding, null, $padding, null);\n}\n\n.ion-padding-horizontal {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n\n @include padding-horizontal($padding);\n}\n\n\n// Margin\n// --------------------------------------------------\n\n.ion-no-margin {\n --margin-start: 0;\n --margin-end: 0;\n --margin-top: 0;\n --margin-bottom: 0;\n\n @include margin(0);\n}\n\n.ion-margin {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin);\n}\n\n.ion-margin-top {\n --margin-top: #{$margin};\n\n @include margin($margin, null, null, null);\n}\n\n.ion-margin-start {\n --margin-start: #{$margin};\n\n @include margin-horizontal($margin, null);\n}\n\n.ion-margin-end {\n --margin-end: #{$margin};\n\n @include margin-horizontal(null, $margin);\n}\n\n.ion-margin-bottom {\n --margin-bottom: #{$margin};\n\n @include margin(null, null, $margin, null);\n}\n\n.ion-margin-vertical {\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin, null, $margin, null);\n}\n\n.ion-margin-horizontal {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n\n @include margin-horizontal($margin);\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Float Elements\n// --------------------------------------------------\n// Creates float classes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-float-{bp}-{side}` classes for floating the element based\n // on the breakpoint and side\n .ion-float#{$infix}-left {\n @include float(left, !important);\n }\n\n .ion-float#{$infix}-right {\n @include float(right, !important);\n }\n\n .ion-float#{$infix}-start {\n @include float(start, !important);\n }\n\n .ion-float#{$infix}-end {\n @include float(end, !important);\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Text Alignment\n// --------------------------------------------------\n// Creates text alignment attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for aligning the text based\n // on the breakpoint\n .ion-text#{$infix}-center {\n text-align: center !important;\n }\n\n .ion-text#{$infix}-justify {\n text-align: justify !important;\n }\n\n .ion-text#{$infix}-start {\n text-align: start !important;\n }\n\n .ion-text#{$infix}-end {\n text-align: end !important;\n }\n\n .ion-text#{$infix}-left {\n text-align: left !important;\n }\n\n .ion-text#{$infix}-right {\n text-align: right !important;\n }\n\n .ion-text#{$infix}-nowrap {\n white-space: nowrap !important;\n }\n\n .ion-text#{$infix}-wrap {\n white-space: normal !important;\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Text Transformation\n// --------------------------------------------------\n// Creates text transform attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for transforming the text based\n // on the breakpoint\n .ion-text#{$infix}-uppercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: uppercase !important;\n }\n\n .ion-text#{$infix}-lowercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: lowercase !important;\n }\n\n .ion-text#{$infix}-capitalize {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: capitalize !important;\n }\n }\n}\n","// Flex Utilities\n// --------------------------------------------------\n// Creates flex classes to align flex containers\n// and items\n\n// Align Self\n// --------------------------------------------------\n\n.ion-align-self-start {\n align-self: flex-start !important;\n}\n\n.ion-align-self-end {\n align-self: flex-end !important;\n}\n\n.ion-align-self-center {\n align-self: center !important;\n}\n\n.ion-align-self-stretch {\n align-self: stretch !important;\n}\n\n.ion-align-self-baseline {\n align-self: baseline !important;\n}\n\n.ion-align-self-auto {\n align-self: auto !important;\n}\n\n\n// Flex Wrap\n// --------------------------------------------------\n\n.ion-wrap {\n flex-wrap: wrap !important;\n}\n\n.ion-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.ion-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n\n// Justify Content\n// --------------------------------------------------\n\n.ion-justify-content-start {\n justify-content: flex-start !important;\n}\n\n.ion-justify-content-center {\n justify-content: center !important;\n}\n\n.ion-justify-content-end {\n justify-content: flex-end !important;\n}\n\n.ion-justify-content-around {\n justify-content: space-around !important;\n}\n\n.ion-justify-content-between {\n justify-content: space-between !important;\n}\n\n.ion-justify-content-evenly {\n justify-content: space-evenly !important;\n}\n\n\n// Align Items\n// --------------------------------------------------\n\n.ion-align-items-start {\n align-items: flex-start !important;\n}\n\n.ion-align-items-center {\n align-items: center !important;\n}\n\n.ion-align-items-end {\n align-items: flex-end !important;\n}\n\n.ion-align-items-stretch {\n align-items: stretch !important;\n}\n\n.ion-align-items-baseline {\n align-items: baseline !important;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Display\n// --------------------------------------------------\n// Modifies display of a particular element based on the given classes\n\n.ion-hide {\n display: none !important;\n}\n\n// Adds hidden classes\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-up` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-up {\n display: none !important;\n }\n }\n\n @include media-breakpoint-down($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-down` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-down {\n display: none !important;\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../src/css/core.scss","../src/components/modal/modal.vars.scss","../src/themes/ionic.mixins.scss","../src/themes/ionic.globals.scss","../src/components/menu/menu.ios.vars.scss","../src/components/menu/menu.md.vars.scss","../src/css/normalize.scss","../src/css/structure.scss","../src/css/typography.scss","../src/css/padding.scss","../src/css/float-elements.scss","../src/css/text-alignment.scss","../src/css/text-transformation.scss","../src/css/flex-utils.scss","../src/css/display.scss"],"names":[],"mappings":"AAMA,MAOI,6BACA,oCACA,mCACA,gDACA,mCACA,kCALA,+BACA,sCACA,qCACA,kDACA,qCACA,oCALA,8BACA,sCACA,oCACA,iDACA,oCACA,mCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,6BACA,qCACA,mCACA,0CACA,mCACA,kCALA,4BACA,mCACA,kCACA,+CACA,kCACA,iCALA,2BACA,qCACA,iCACA,wCACA,iCACA,gCALA,4BACA,qCACA,kCACA,+CACA,kCACA,iCALA,0BACA,iCACA,gCACA,6CACA,gCACA,+BAOJ,SACE,8FAEF,QACE,2DAGF,KACE,uCACA,2CAGF,KACE,uCACA,4BAGF,wBACE,gBAYF,+LAGE,YC/B+B,IDuCjC,qIAEE,eCtC+B,ID8CjC,+BACE,qDACA,mDAOF,qCACE,4CACE,0BA+BJ,2DACE,sBACA,mBAaF,wCACE,4CAyBA,mBATA,+DACA,0EACA,yEACA,0FACA,sEACA,oEAIA,qBATA,iEACA,4EACA,2EACA,4FACA,wEACA,sEAIA,oBATA,gEACA,4EACA,0EACA,2FACA,uEACA,qEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,mBATA,+DACA,2EACA,yEACA,oFACA,sEACA,oEAIA,kBATA,8DACA,yEACA,wEACA,yFACA,qEACA,mEAIA,iBATA,6DACA,2EACA,uEACA,kFACA,oEACA,kEAIA,kBATA,8DACA,2EACA,wEACA,yFACA,qEACA,mEAIA,gBATA,4DACA,uEACA,sEACA,uFACA,mEACA,iEAaF,UEqOM,KFpOuB,EEqOvB,MFrOiB,EEyPrB,IFzPkB,EE0PlB,OF1PwB,EAExB,aACA,kBAEA,sBACA,8BAEA,0BACA,QGzH+B,EHoIjC,oBACE,kBAEA,qBAEA,YAGF,8CACE,kBAGF,iRAeE,wBAGF,oBACE,UAGF,wCACE,cAOF,6CACE,8BAGF,6BACE,KACE,mDAIJ,iDACE,KACE,8CACA,oDACA,gDACA,mDAQJ,mFAEE,cAOF,cE6TM,iCFzTN,mBACE,eACA,0BAUA,oBAMA,kBAUF,+BACE,mBAGF,4CACE,gBAGF,0BACE,WIvS+B,4BJ0SjC,mCACE,WIxS+B,2BJ+SjC,yBACE,WKtT8B,6BLyThC,uBACE,WK1T8B,6BL8ThC,6EACE,2BACA,4BAEF,4EACE,8BACA,+BAEF,qEACE,oBAGF,0EACE,2DAGF,uCACE,yCAEE,4BASJ,qJAEE,yBAGF,2GACE,oBACA,0BAGF,uMAEE,aAMF,6CACE,iBASF,6BACE,qBACA,sBAUF,wDACE,YACA,iBAUF,uNAOE,aAaF,oCACE,gBAUF,4CACE,kBACE,iBM9aJ,4BAIE,wBAKF,sBACE,aAEA,SAQF,SAEE,iBAOF,IACE,eAMF,GACE,WAEA,eAEA,uBAIF,IACE,cAIF,kBAIE,gCACA,cAgBF,4BAIE,oBACA,mBAGF,SACE,cAEA,YAEA,aACA,cAGF,sBACE,iBAGF,2BAIE,SAEA,aACA,cAQF,6DAGE,eAEA,0BAIF,qNAkBE,0BAGF,6BAEE,oBAGF,OACE,UACA,SACA,gBACA,oBACA,mBACA,qBACA,cACA,oBACA,eAEA,0BAGF,WACE,eAIF,kDAGE,eAIF,iDAEE,UAEA,SAMF,4FAEE,YAMF,+FAEE,wBAQF,MACE,yBACA,iBAGF,MAEE,UC1MF,EACE,sBAEA,0CACA,wCACA,2BAGF,KACE,WACA,YACA,8BAEA,sBAGF,yBACE,aAGF,iBACE,cAGF,aACE,aAGF,KL0EE,kCACA,mCA0NE,YKnSc,ELoSd,aKpSc,ELwThB,WKxTgB,ELyThB,cKzTgB,ELmSd,aKlSe,ELmSf,cKnSe,ELuTjB,YKvTiB,ELwTjB,eKxTiB,EAEjB,eAEA,WACA,eACA,YACA,gBAsBA,wBAEA,kCAEA,gBAEA,0BAEA,uBAEA,yBAEA,qBAEA,2BACA,8BAEA,sBCvDF,KACE,mCAOF,uCACE,KAIE,2DAIJ,EACE,6BACA,wCAGF,kBN0SE,WMpSgB,KNqShB,cMrS4B,KAE5B,YArD6B,IAuD7B,YApD6B,IAuD/B,GN6RE,WM5RgB,KAEhB,UAvD6B,SA0D/B,GNuRE,WMtRgB,KAEhB,UA1D6B,OA6D/B,GACE,UA3D6B,SA8D/B,GACE,UA5D6B,QA+D/B,GACE,UA7D6B,SAgE/B,GACE,UA9D6B,KAiE/B,MACE,cAGF,QAEE,kBAEA,cAEA,cAEA,wBAGF,IACE,WAGF,IACE,eClGF,gBACE,mBACA,iBACA,iBACA,oBPsTE,aOpTe,EPqTf,cOrTe,EPyUjB,YOzUiB,EP0UjB,eO1UiB,EAGnB,aACE,0CACA,wCACA,wCACA,2CPiTE,sBOpUM,yBPqUN,qBOrUM,yBPsUN,oBOtUM,yBPuUN,mBOvUM,yBPqVR,YOrVQ,yBPsVR,eOtVQ,yBAwBV,iBACE,wCP4TA,YOrVQ,yBA8BV,mBACE,0CPqSE,sBOpUM,yBPqUN,qBOrUM,yBAoCV,iBACE,wCPiSE,oBOtUM,yBPuUN,mBOvUM,yBA0CV,oBACE,2CP2SA,eOtVQ,yBAgDV,sBACE,wCACA,2CPmSA,YOrVQ,yBPsVR,eOtVQ,yBAuDV,wBACE,0CACA,wCP2QE,sBOpUM,yBPqUN,qBOrUM,yBPsUN,oBOtUM,yBPuUN,mBOvUM,yBAkEV,eACE,kBACA,gBACA,gBACA,mBP0PE,YOxPc,EPyPd,aOzPc,EP6QhB,WO7QgB,EP8QhB,cO9QgB,EAGlB,YACE,wCACA,sCACA,sCACA,yCPqPE,qBOnUK,wBPoUL,oBOpUK,wBPqUL,mBOrUK,wBPsUL,kBOtUK,wBPoVP,WOpVO,wBPqVP,cOrVO,wBAmFT,gBACE,sCPgQA,WOpVO,wBAyFT,kBACE,wCPyOE,qBOnUK,wBPoUL,oBOpUK,wBA+FT,gBACE,sCPqOE,mBOrUK,wBPsUL,kBOtUK,wBAqGT,mBACE,yCP+OA,cOrVO,wBA2GT,qBACE,sCACA,yCPuOA,WOpVO,wBPqVP,cOrVO,wBAkHT,uBACE,wCACA,sCP+ME,qBOnUK,wBPoUL,oBOpUK,wBPqUL,mBOrUK,wBPsUL,kBOtUK,wBCGL,gBR2dE,sBQvdF,iBRudE,uBQndF,iBRqcE,sBAzNO,0CA4NP,uBArNO,2BAqNP,uBA/MJ,8BAcW,0BAiMP,wBQpcF,eRwcE,uBAhOO,wCAmOP,sBA5NO,yBA4NP,sBAtNJ,8BAcW,wBAwMP,uBAnUF,yBQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,yBQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,yBQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBAnUF,0BQpJA,mBR2dE,sBQvdF,oBRudE,uBQndF,oBRqcE,sBAzNO,6CA4NP,uBArNO,8BAqNP,uBA/MJ,8BAcW,6BAiMP,wBQpcF,kBRwcE,uBAhOO,2CAmOP,sBA5NO,4BA4NP,sBAtNJ,8BAcW,2BAwMP,wBSvdF,iBACE,6BAGF,kBACE,8BAGF,gBACE,4BAGF,cACE,0BAGF,eACE,2BAGF,gBACE,4BAGF,iBACE,8BAGF,eACE,8BTuHF,yBSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BTuHF,yBSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BTuHF,yBSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BTuHF,0BSpJA,oBACE,6BAGF,qBACE,8BAGF,mBACE,4BAGF,iBACE,0BAGF,kBACE,2BAGF,mBACE,4BAGF,oBACE,8BAGF,kBACE,+BC7BF,oBAEE,oCAGF,oBAEE,oCAGF,qBAEE,qCVwIF,yBUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCVwIF,yBUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCVwIF,yBUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCVwIF,0BUpJA,uBAEE,oCAGF,uBAEE,oCAGF,wBAEE,sCCjBN,sBACE,iCAGF,oBACE,+BAGF,uBACE,6BAGF,wBACE,8BAGF,yBACE,+BAGF,qBACE,2BAOF,UACE,0BAGF,YACE,4BAGF,kBACE,kCAOF,2BACE,sCAGF,4BACE,kCAGF,yBACE,oCAGF,4BACE,wCAGF,6BACE,yCAGF,4BACE,wCAOF,uBACE,kCAGF,wBACE,8BAGF,qBACE,gCAGF,yBACE,+BAGF,0BACE,gCC1FF,UACE,wBAUE,aACE,wBAOF,eACE,wBZsIF,yBY/IA,gBACE,yBZuLF,4BYhLA,kBACE,yBZsIF,yBY/IA,gBACE,yBZuLF,4BYhLA,kBACE,yBZsIF,yBY/IA,gBACE,yBZuLF,4BYhLA,kBACE,yBZsIF,0BY/IA,gBACE,yBZuLF,6BYhLA,kBACE","file":"ionic.bundle.css","sourcesContent":["@use \"sass:map\";\n@import \"../themes/ionic.globals\";\n@import \"../components/menu/menu.ios.vars\";\n@import \"../components/menu/menu.md.vars\";\n@import \"../components/modal/modal.vars\";\n\n:root {\n /**\n * Loop through each color object from the\n * `ionic.theme.default.scss` file\n * and generate CSS Variables for each color.\n */\n @each $color-name, $value in $colors {\n --ion-color-#{$color-name}: #{map.get($value, base)};\n --ion-color-#{$color-name}-rgb: #{color-to-rgb-list(map.get($value, base))};\n --ion-color-#{$color-name}-contrast: #{map.get($value, contrast)};\n --ion-color-#{$color-name}-contrast-rgb: #{color-to-rgb-list(map.get($value, contrast))};\n --ion-color-#{$color-name}-shade: #{map.get($value, shade)};\n --ion-color-#{$color-name}-tint: #{map.get($value, tint)};\n }\n}\n\n// Ionic Font Family\n// --------------------------------------------------\n\nhtml.ios {\n --ion-default-font: -apple-system, BlinkMacSystemFont, \"Helvetica Neue\", \"Roboto\", sans-serif;\n}\nhtml.md {\n --ion-default-font: \"Roboto\", \"Helvetica Neue\", sans-serif;\n}\n\nhtml {\n --ion-dynamic-font: -apple-system-body;\n --ion-font-family: var(--ion-default-font);\n}\n\nbody {\n background: var(--ion-background-color);\n color: var(--ion-text-color);\n}\n\nbody.backdrop-no-scroll {\n overflow: hidden;\n}\n\n// Modal - Card Style\n// --------------------------------------------------\n/**\n * Card style modal needs additional padding on the\n * top of the header. We accomplish this by targeting\n * the first toolbar in the header.\n * Footer also needs this. We do not adjust the bottom\n * padding though because of the safe area.\n */\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:first-of-type,\nhtml.ios ion-modal ion-footer ion-toolbar:first-of-type {\n padding-top: $modal-sheet-padding-top;\n}\n\n/**\n* Card style modal needs additional padding on the\n* bottom of the header. We accomplish this by targeting\n* the last toolbar in the header.\n*/\nhtml.ios ion-modal.modal-card ion-header ion-toolbar:last-of-type,\nhtml.ios ion-modal.modal-sheet ion-header ion-toolbar:last-of-type {\n padding-bottom: $modal-sheet-padding-bottom;\n}\n\n/**\n* Add padding on the left and right\n* of toolbars while accounting for\n* safe area values when in landscape.\n*/\nhtml.ios ion-modal ion-toolbar {\n padding-right: calc(var(--ion-safe-area-right) + 8px);\n padding-left: calc(var(--ion-safe-area-left) + 8px);\n}\n\n/**\n * Card style modal on iPadOS\n * should only have backdrop on first instance.\n */\n@media screen and (min-width: 768px) {\n html.ios ion-modal.modal-card:first-of-type {\n --backdrop-opacity: 0.18;\n }\n}\n\n/**\n * Subsequent modals should not have a backdrop/box shadow\n * as it will cause the screen to appear to get progressively\n * darker. With Ionic 6, declarative modals made it\n * possible to have multiple non-presented modals in the DOM,\n * so we could no longer rely on ion-modal:first-of-type.\n * Here we disable the opacity/box-shadow for every modal\n * that comes after the first presented modal.\n *\n * Note: ion-modal:not(.overlay-hidden):first-of-type\n * does not match the first modal to not have\n * the .overlay-hidden class, it will match the\n * first modal in general only if it does not\n * have the .overlay-hidden class.\n * The :nth-child() pseudo-class has support\n * for selectors which would help us here. At the\n * time of writing it does not have great cross browser\n * support.\n *\n * Note 2: This should only apply to non-card and\n * non-sheet modals. Card and sheet modals have their\n * own criteria for displaying backdrops/box shadows.\n *\n * Do not use :not(.overlay-hidden) in place of\n * .show-modal because that triggers a memory\n * leak in Blink: https://bugs.chromium.org/p/chromium/issues/detail?id=1418768\n */\nion-modal.modal-default.show-modal ~ ion-modal.modal-default {\n --backdrop-opacity: 0;\n --box-shadow: none;\n}\n\n/**\n * This works around a bug in WebKit where the\n * content will overflow outside of the bottom border\n * radius when re-painting. As long as a single\n * border radius value is set on .ion-page, this\n * issue does not happen. We set the top left radius\n * here because the top left corner will always have a\n * radius no matter the platform.\n * This behavior only applies to card modals.\n */\nhtml.ios ion-modal.modal-card .ion-page {\n border-top-left-radius: var(--border-radius);\n}\n\n// Ionic Colors\n// --------------------------------------------------\n// Generates the color classes and variables based on the\n// colors map\n\n@mixin generate-color($color-name) {\n $value: map-get($colors, $color-name);\n\n $base: map-get($value, base);\n $contrast: map-get($value, contrast);\n $shade: map-get($value, shade);\n $tint: map-get($value, tint);\n\n --ion-color-base: var(--ion-color-#{$color-name}, #{$base}) !important;\n --ion-color-base-rgb: var(--ion-color-#{$color-name}-rgb, #{color-to-rgb-list($base)}) !important;\n --ion-color-contrast: var(--ion-color-#{$color-name}-contrast, #{$contrast}) !important;\n --ion-color-contrast-rgb: var(--ion-color-#{$color-name}-contrast-rgb, #{color-to-rgb-list($contrast)}) !important;\n --ion-color-shade: var(--ion-color-#{$color-name}-shade, #{$shade}) !important;\n --ion-color-tint: var(--ion-color-#{$color-name}-tint, #{$tint}) !important;\n}\n\n@each $color-name, $value in $colors {\n .ion-color-#{$color-name} {\n @include generate-color($color-name);\n }\n}\n\n\n// Page Container Structure\n// --------------------------------------------------\n\n.ion-page {\n @include position(0, 0, 0, 0);\n\n display: flex;\n position: absolute;\n\n flex-direction: column;\n justify-content: space-between;\n\n contain: layout size style;\n z-index: $z-index-page-container;\n}\n\n/**\n * When making custom dialogs, using\n * ion-content is not required. As a result,\n * some developers may wish to have dialogs\n * that are automatically sized by the browser.\n * These changes allow certain dimension values\n * such as fit-content to work correctly.\n */\nion-modal > .ion-page {\n position: relative;\n\n contain: layout style;\n\n height: 100%;\n}\n\n.split-pane-visible > .ion-page.split-pane-main {\n position: relative;\n}\n\nion-route,\nion-route-redirect,\nion-router,\nion-select-option,\nion-nav-controller,\nion-menu-controller,\nion-action-sheet-controller,\nion-alert-controller,\nion-loading-controller,\nion-modal-controller,\nion-picker-controller,\nion-popover-controller,\nion-toast-controller,\n.ion-page-hidden {\n /* stylelint-disable-next-line declaration-no-important */\n display: none !important;\n}\n\n.ion-page-invisible {\n opacity: 0;\n}\n\n.can-go-back > ion-header ion-back-button {\n display: block;\n}\n\n\n// Ionic Safe Margins\n// --------------------------------------------------\n\nhtml.plt-ios.plt-hybrid, html.plt-ios.plt-pwa {\n --ion-statusbar-padding: 20px;\n}\n\n@supports (padding-top: 20px) {\n html {\n --ion-safe-area-top: var(--ion-statusbar-padding);\n }\n}\n\n@supports (padding-top: env(safe-area-inset-top)) {\n html {\n --ion-safe-area-top: env(safe-area-inset-top);\n --ion-safe-area-bottom: env(safe-area-inset-bottom);\n --ion-safe-area-left: env(safe-area-inset-left);\n --ion-safe-area-right: env(safe-area-inset-right);\n }\n}\n\n\n// Global Card Styles\n// --------------------------------------------------\n\nion-card.ion-color .ion-inherit-color,\nion-card-header.ion-color .ion-inherit-color {\n color: inherit;\n}\n\n\n// Menu Styles\n// --------------------------------------------------\n\n.menu-content {\n @include transform(translate3d(0, 0, 0));\n}\n\n.menu-content-open {\n cursor: pointer;\n touch-action: manipulation;\n\n /**\n * The containing element itself should be clickable but\n * everything inside of it should not clickable when menu is open\n *\n * Setting pointer-events after scrolling has already started\n * will not cancel scrolling which is why we also set\n * overflow-y below.\n */\n pointer-events: none;\n\n /**\n * This accounts for scenarios where the main content itself\n * is scrollable.\n */\n overflow-y: hidden;\n}\n\n/**\n * Setting overflow cancels any in-progress scrolling\n * when the menu opens. This prevents users from accidentally\n * scrolling the main content while also dragging the menu open.\n * The code below accounts for both ion-content and then custom\n * scroll containers within ion-content (such as virtual scroll)\n */\n.menu-content-open ion-content {\n --overflow: hidden;\n}\n\n.menu-content-open .ion-content-scroll-host {\n overflow: hidden;\n}\n\n.ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal;\n}\n\n[dir=rtl].ios .menu-content-reveal {\n box-shadow: $menu-ios-box-shadow-reveal-rtl;\n}\n\n.ios .menu-content-push {\n box-shadow: $menu-ios-box-shadow-push;\n}\n\n.md .menu-content-reveal {\n box-shadow: $menu-md-box-shadow;\n}\n\n.md .menu-content-push {\n box-shadow: $menu-md-box-shadow;\n}\n\n// Accordion Styles\nion-accordion-group.accordion-group-expand-inset > ion-accordion:first-of-type {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n}\nion-accordion-group.accordion-group-expand-inset > ion-accordion:last-of-type {\n border-bottom-left-radius: 8px;\n border-bottom-right-radius: 8px;\n}\nion-accordion-group > ion-accordion:last-of-type ion-item[slot=\"header\"] {\n --border-width: 0px;\n}\n\nion-accordion.accordion-animated > [slot=\"header\"] .ion-accordion-toggle-icon {\n transition: 300ms transform cubic-bezier(0.25, 0.8, 0.5, 1);\n}\n\n@media (prefers-reduced-motion: reduce) {\n ion-accordion .ion-accordion-toggle-icon {\n /* stylelint-disable declaration-no-important */\n transition: none !important;\n }\n}\n/**\n * The > [slot=\"header\"] selector ensures that we do\n * not modify toggle icons for any nested accordions. The state\n * of one accordion should not affect any accordions inside\n * of a nested accordion group.\n */\nion-accordion.accordion-expanding > [slot=\"header\"] .ion-accordion-toggle-icon,\nion-accordion.accordion-expanded > [slot=\"header\"] .ion-accordion-toggle-icon {\n transform: rotate(180deg);\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-previous ion-item[slot=\"header\"] {\n --border-width: 0px;\n --inner-border-width: 0px;\n}\n\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanding:first-of-type,\nion-accordion-group.accordion-group-expand-inset.md > ion-accordion.accordion-expanded:first-of-type {\n margin-top: 0;\n}\n\n// Safari/iOS 15 changes the appearance of input[type=\"date\"].\n// For backwards compatibility from Ionic 5/Safari 14 designs,\n// we override the appearance only when using within an ion-input.\nion-input input::-webkit-date-and-time-value {\n text-align: start;\n}\n\n/**\n * The .ion-datetime-button-overlay class contains\n * styles that allow any modal/popover to be\n * sized according to the dimensions of the datetime\n * when used with ion-datetime-button.\n */\n.ion-datetime-button-overlay {\n --width: fit-content;\n --height: fit-content;\n}\n\n/**\n * The grid variant can scale down when inline.\n * When used in a `fit-content` overlay, this causes\n * the overlay to shrink when the month/year picker is open.\n * Explicitly setting the dimensions lets us have a consistently\n * sized grid interface.\n */\n.ion-datetime-button-overlay ion-datetime.datetime-grid {\n width: 320px;\n min-height: 320px;\n}\n\n/**\n * When moving focus on page transitions we call .focus() on an element which can\n * add an undesired outline ring. This CSS removes the outline ring.\n * We also remove the outline ring from elements that are actively being focused\n * by the focus manager. We are intentionally selective about which elements this\n * applies to so we do not accidentally override outlines set by the developer.\n */\n[ion-last-focus],\nheader[tabindex=\"-1\"]:focus,\n[role=\"banner\"][tabindex=\"-1\"]:focus,\nmain[tabindex=\"-1\"]:focus,\n[role=\"main\"][tabindex=\"-1\"]:focus,\nh1[tabindex=\"-1\"]:focus,\n[role=\"heading\"][aria-level=\"1\"][tabindex=\"-1\"]:focus {\n outline: none;\n}\n\n/*\n * If a popover has a child ion-content (or class equivalent) then the .popover-viewport element\n * should not be scrollable to ensure the inner content does scroll. However, if the popover\n * does not have a child ion-content (or class equivalent) then the .popover-viewport element\n * should remain scrollable. This code exists globally because popover targets\n * .popover-viewport using ::slotted which only supports simple selectors.\n *\n * Note that we do not need to account for .ion-content-scroll-host here because that\n * class should always be placed within ion-content even if ion-content is not scrollable.\n */\n.popover-viewport:has(> ion-content) {\n overflow: hidden;\n}\n\n/**\n * :has has cross-browser support, but it is still relatively new. As a result,\n * we should fallback to the old behavior for environments that do not support :has.\n * Developers can explicitly enable this behavior by setting overflow: visible\n * on .popover-viewport if they know they are not going to use an ion-content.\n * TODO FW-6106 Remove this\n */\n@supports not selector(:has(> ion-content)) {\n .popover-viewport {\n overflow: hidden;\n }\n}\n","@import \"../../themes/ionic.globals\";\n\n// Modals\n// --------------------------------------------------\n\n/// @prop - Min width of the modal inset\n$modal-inset-min-width: 768px;\n\n/// @prop - Minimum height of the small modal inset\n$modal-inset-min-height-small: 600px;\n\n/// @prop - Minimum height of the large modal inset\n$modal-inset-min-height-large: 768px;\n\n/// @prop - Width of the large modal inset\n$modal-inset-width: 600px;\n\n/// @prop - Height of the small modal inset\n$modal-inset-height-small: 500px;\n\n/// @prop - Height of the large modal inset\n$modal-inset-height-large: 600px;\n\n/// @prop - Text color of the modal content\n$modal-text-color: $text-color;\n\n/// @prop - Padding top of the sheet modal\n$modal-sheet-padding-top: 6px;\n\n/// @prop - Padding bottom of the sheet modal\n$modal-sheet-padding-bottom: 6px;\n","\n/**\n * A heuristic that applies CSS to tablet\n * viewports.\n *\n * Usage:\n * @include tablet-viewport() {\n * :host {\n * background-color: green;\n * }\n * }\n */\n@mixin tablet-viewport() {\n @media screen and (min-width: 768px) {\n @content;\n }\n}\n\n/**\n * A heuristic that applies CSS to mobile\n * viewports (i.e. phones, not tablets).\n *\n * Usage:\n * @include mobile-viewport() {\n * :host {\n * background-color: blue;\n * }\n * }\n */\n@mixin mobile-viewport() {\n @media screen and (max-width: 767px) {\n @content;\n }\n}\n\n@mixin input-cover() {\n @include position(0, null, null, 0);\n @include margin(0);\n\n position: absolute;\n\n width: 100%;\n height: 100%;\n\n border: 0;\n background: transparent;\n cursor: pointer;\n\n appearance: none;\n outline: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin visually-hidden() {\n position: absolute;\n\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n\n width: 100%;\n height: 100%;\n\n margin: 0;\n padding: 0;\n\n border: 0;\n outline: 0;\n clip: rect(0 0 0 0);\n\n opacity: 0;\n overflow: hidden;\n\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n\n@mixin text-inherit() {\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-indent: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n}\n\n@mixin button-state() {\n @include position(0, 0, 0, 0);\n\n position: absolute;\n\n content: \"\";\n\n opacity: 0;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name != index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $screen-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is reduced by 0.02px to work around the limitations of\n// `min-` and `max-` prefixes and viewports with fractional widths.\n//\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\t// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\t// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $max: map-get($breakpoints, $name);\n @return if($max and $max > 0, $max - .02, null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n $rootSplit: str-split($root, \",\");\n $selectors: #{add-root-selector($root, \"[dir=rtl]\")};\n $selectorsSplit: str-split($selectors, \",\");\n\n $hostContextSelectors: ();\n $restSelectors: ();\n $dirSelectors: ();\n\n // Selectors must be split into individual selectors in case the browser\n // doesn't support a specific selector.\n // For example, Firefox and Safari doesn't support `:host-context()`.\n // If an invalid selector is used, then the entire group of selectors\n // will be ignored.\n // @link https://www.w3.org/TR/selectors-3/#grouping\n @each $selector in $selectorsSplit {\n // Group the selectors back into a single selector to optimize the output.\n @if str-index($selector, \":host-context\") {\n $hostContextSelectors: append($hostContextSelectors, $selector, comma);\n } @else {\n // Group the selectors back into a single selector to optimize the output.\n $restSelectors: append($restSelectors, $selector, comma);\n }\n }\n\n // Supported by Chrome.\n @if length($hostContextSelectors) > 0 {\n @at-root #{$hostContextSelectors} {\n @content;\n }\n }\n\n // Supported by all browsers.\n @if length($restSelectors) > 0 {\n @at-root #{$restSelectors} {\n @content;\n }\n }\n\n // If browser can support `:dir()`, then add the `:dir()` selectors.\n @supports selector(:dir(rtl)) {\n // Adding :dir() in case the browser doesn't support `:host-context()` and does support `:dir()`.\n // `:host-context()` is added:\n // - through the `add-root-selector()` function.\n // - first so that it takes precedence over `:dir()`.\n // For example,\n // - Firefox doesn't support `:host-context()`, but does support `:dir()`.\n // - Safari doesn't support `:host-context()`, but Safari 16.4+ supports `:dir()`\n // @link https://webkit.org/blog/13966/webkit-features-in-safari-16-4/\n // -- However, there is a Webkit bug on v16 that prevents `:dir()` from working when\n // -- the app direction is changed dynamically. v17+ works fine.\n // -- @link https://bugs.webkit.org/show_bug.cgi?id=257133\n\n // Supported by Firefox.\n @at-root #{add-root-selector($root, \":dir(rtl)\", false)} {\n @content;\n }\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: str-split(str-extract($svg, \"viewBox='\", \"'\"), \" \");\n\n @if $flip-rtl != true or $viewBox == null {\n @include multi-dir() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n } @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: str-replace($flipped-url, \"<path\", \"<path #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<line\", \"<line #{$transform}\");\n $flipped-url: str-replace($flipped-url, \"<polygon\", \"<polygon #{$transform}\");\n $flipped-url: url-encode($flipped-url);\n\n @include ltr () {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$url}\");\n }\n @include rtl() {\n background-image: url(\"data:image/svg+xml;charset=utf-8,#{$flipped-url}\");\n }\n }\n}\n\n// Add property horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin property-horizontal($prop, $start, $end: $start) {\n @if $start == 0 and $end == 0 {\n #{$prop}-left: $start;\n #{$prop}-right: $end;\n\n } @else {\n -webkit-#{$prop}-start: $start;\n #{$prop}-inline-start: $start;\n -webkit-#{$prop}-end: $end;\n #{$prop}-inline-end: $end;\n }\n}\n\n// Add property for all directions\n// @param {string} $prop\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// @param {boolean} $content include content or use default\n// ----------------------------------------------------------\n@mixin property($prop, $top, $end: $top, $bottom: $top, $start: $end) {\n @include property-horizontal($prop, $start, $end);\n #{$prop}-top: $top;\n #{$prop}-bottom: $bottom;\n}\n\n// Add padding horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin padding-horizontal($start, $end: $start) {\n @include property-horizontal(padding, $start, $end);\n}\n\n// Add padding for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin padding($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(padding, $top, $end, $bottom, $start);\n}\n\n// Add margin horizontal\n// @param {string} $start\n// @param {string} $end\n// ----------------------------------------------------------\n@mixin margin-horizontal($start, $end: $start) {\n @include property-horizontal(margin, $start, $end);\n}\n\n// Add margin for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin margin($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(margin, $top, $end, $bottom, $start);\n}\n\n// Add position horizontal\n// @param {string} $start - amount to position start\n// @param {string} $end - amount to left: 0; end\n// ----------------------------------------------------------\n@mixin position-horizontal($start: null, $end: null) {\n @if $start == $end {\n @include multi-dir() {\n left: $start;\n right: $end;\n }\n } @else {\n @at-root {\n & {\n inset-inline-start: $start;\n inset-inline-end: $end;\n }\n }\n }\n}\n\n// Add position for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin position($top: null, $end: null, $bottom: null, $start: null) {\n @include position-horizontal($start, $end);\n top: $top;\n bottom: $bottom;\n}\n\n// Add border for all directions\n// @param {string} $top\n// @param {string} $end\n// @param {string} $bottom\n// @param {string} $start\n// ----------------------------------------------------------\n@mixin border($top, $end: $top, $bottom: $top, $start: $end) {\n @include property(border, $top, $end, $bottom, $start);\n}\n\n// Add border radius for all directions\n// @param {string} $top-start\n// @param {string} $top-end\n// @param {string} $bottom-end\n// @param {string} $bottom-start\n// ----------------------------------------------------------\n@mixin border-radius($top-start, $top-end: $top-start, $bottom-end: $top-start, $bottom-start: $top-end) {\n @if $top-start == $top-end and $top-start == $bottom-end and $top-start == $bottom-start {\n border-radius: $top-start;\n } @else {\n border-start-start-radius: $top-start;\n border-start-end-radius: $top-end;\n border-end-end-radius: $bottom-end;\n border-end-start-radius: $bottom-start;\n }\n}\n\n// Add direction for all directions\n// @param {string} $dir - Direction on LTR\n@mixin direction($dir) {\n $other-dir: null;\n\n @if $dir == ltr {\n $other-dir: rtl;\n } @else {\n $other-dir: ltr;\n }\n\n @include ltr() {\n direction: $dir;\n }\n @include rtl() {\n direction: $other-dir;\n }\n}\n\n// Add float for all directions\n// @param {string} $side\n// @param {string} $decorator - !important\n@mixin float($side, $decorator: null) {\n @if $side == start {\n @include ltr() {\n float: left $decorator;\n }\n @include rtl() {\n float: right $decorator;\n }\n } @else if $side == end {\n @include ltr() {\n float: right $decorator;\n }\n @include rtl() {\n float: left $decorator;\n }\n } @else {\n @include multi-dir() {\n float: $side $decorator;\n }\n }\n}\n\n@mixin background-position($horizontal, $horizontal-amount: null, $vertical: null, $vertical-amount: null) {\n @if $horizontal == start or $horizontal == end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n @if $horizontal == start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n } @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position: $horizontal-ltr $horizontal-amount $vertical $vertical-amount;\n }\n @include rtl() {\n background-position: $horizontal-rtl $horizontal-amount $vertical $vertical-amount;\n }\n } @else {\n @include multi-dir() {\n background-position: $horizontal $horizontal-amount $vertical $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis == start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n @include rtl() {\n transform-origin: right $y-axis;\n }\n } @else if $x-axis == end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n @include rtl() {\n transform-origin: left $y-axis;\n }\n } @else if $x-axis == left or $x-axis == right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n } @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: str-replace($transform, 'translate3d(');\n $transform: str-replace($transform, ')');\n\n $coordinates: str-split($transform, ',');\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n } @else {\n @if $extra == null {\n $extra: $transform;\n } @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x == '0' or $x == null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n } @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n","\n// Global Utility Functions\n@import \"./ionic.functions.string\";\n\n// Global Color Functions\n@import \"./ionic.functions.color\";\n\n// Global Font Functions\n@import \"./ionic.functions.font\";\n\n// Global Mixins\n@import \"./ionic.mixins\";\n\n// Default Theme\n@import \"./ionic.theme.default\";\n\n\n// Default General\n// --------------------------------------------------\n$font-family-base: var(--ion-font-family, inherit);\n\n// Hairlines width\n$hairlines-width: .55px;\n\n// The minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries\n$screen-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n);\n\n// Input placeholder opacity\n// Ensures that the placeholder has the\n// correct color contrast against the background.\n$placeholder-opacity: var(--ion-placeholder-opacity, 0.6);\n\n$form-control-label-margin: 16px;\n\n// How much the stacked labels should be scaled by\n/// The value 0.75 is used to match the MD spec.\n/// iOS does not have a floating label design spec, so we standardize on 0.75.\n$form-control-label-stacked-scale: 0.75;\n\n\n// Z-Index\n// --------------------------------------------------\n// Grouped by elements which would be siblings\n\n$z-index-menu-overlay: 1000;\n$z-index-overlay: 1001;\n\n$z-index-fixed-content: 999;\n$z-index-refresher: -1;\n\n$z-index-page-container: 0;\n$z-index-toolbar: 10;\n$z-index-toolbar-background: -1;\n$z-index-toolbar-buttons: 99;\n\n$z-index-backdrop: 2;\n$z-index-overlay-wrapper: 10;\n\n$z-index-item-options: 1;\n$z-index-item-input: 2;\n$z-index-item-divider: 100;\n\n$z-index-reorder-selected: 100;\n","@import \"../../themes/ionic.globals.ios\";\n\n// iOS Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow color of the menu\n$menu-ios-box-shadow-color: rgba(0, 0, 0, .08);\n\n/// @prop - Box shadow of the menu\n$menu-ios-box-shadow: -8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the menu in rtl mode\n$menu-ios-box-shadow-rtl: 8px 0 42px $menu-ios-box-shadow-color;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal: $menu-ios-box-shadow;\n\n/// @prop - Box shadow of the reveal menu\n$menu-ios-box-shadow-reveal-rtl: $menu-ios-box-shadow-rtl;\n\n/// @prop - Box shadow of the push menu\n$menu-ios-box-shadow-push: null;\n\n/// @prop - Box shadow of the overlay menu\n$menu-ios-box-shadow-overlay: null;\n","@import \"../../themes/ionic.globals.md\";\n\n// Material Design Menu\n// --------------------------------------------------\n\n/// @prop - Box shadow of the menu\n$menu-md-box-shadow: 4px 0px 16px rgba(0, 0, 0, 0.18);\n","// ! normalize.css v3.0.2 | MIT License | github.com/necolas/normalize.css\n\n\n// HTML5 display definitions\n// ==========================================================================\n\n// 1. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\naudio,\ncanvas,\nprogress,\nvideo {\n vertical-align: baseline; // 1\n}\n\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\naudio:not([controls]) {\n display: none;\n\n height: 0;\n}\n\n\n// Text-level semantics\n// ==========================================================================\n\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\nb,\nstrong {\n font-weight: bold;\n}\n\n// Embedded content\n// ==========================================================================\n\n// Makes it so the img does not flow outside container\nimg {\n max-width: 100%;\n}\n\n// Grouping content\n// ==========================================================================\n\nhr {\n height: 1px;\n\n border-width: 0;\n\n box-sizing: content-box;\n}\n\n// Contain overflow in all browsers.\npre {\n overflow: auto;\n}\n\n// Address odd `em`-unit font size rendering in all browsers.\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n\n// Forms\n// ==========================================================================\n\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nlabel,\ninput,\nselect,\ntextarea {\n font-family: inherit;\n line-height: normal;\n}\n\ntextarea {\n overflow: auto;\n\n height: auto;\n\n font: inherit;\n color: inherit;\n}\n\ntextarea::placeholder {\n padding-left: 2px;\n}\n\nform,\ninput,\noptgroup,\nselect {\n margin: 0; // 3\n\n font: inherit; // 2\n color: inherit; // 1\n}\n\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n cursor: pointer; // 3\n\n -webkit-appearance: button; // 2\n}\n\n// remove 300ms delay\na,\na div,\na span,\na ion-icon,\na ion-label,\nbutton,\nbutton div,\nbutton span,\nbutton ion-icon,\nbutton ion-label,\n.ion-tappable,\n[tappable],\n[tappable] div,\n[tappable] span,\n[tappable] ion-icon,\n[tappable] ion-label,\ninput,\ntextarea {\n touch-action: manipulation;\n}\n\na ion-label,\nbutton ion-label {\n pointer-events: none;\n}\n\nbutton {\n padding: 0;\n border: 0;\n border-radius: 0;\n font-family: inherit;\n font-style: inherit;\n font-variant: inherit;\n line-height: 1;\n text-transform: none;\n cursor: pointer;\n\n -webkit-appearance: button;\n}\n\n[tappable] {\n cursor: pointer;\n}\n\n// Re-set default cursor for disabled elements.\na[disabled],\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n// Remove inner padding and border in Firefox 4+.\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n\n border: 0;\n}\n\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n\n// Tables\n// ==========================================================================//\n\n// Remove most spacing between table cells.\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n\n// Structure\n// --------------------------------------------------\n// Adds structural css to the native html elements\n\n* {\n box-sizing: border-box;\n\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\nhtml {\n width: 100%;\n height: 100%;\n -webkit-text-size-adjust: 100%;\n\n text-size-adjust: 100%;\n}\n\nhtml:not(.hydrated) body {\n display: none;\n}\n\nhtml.ion-ce body {\n display: block;\n}\n\nhtml.plt-pwa {\n height: 100vh;\n}\n\nbody {\n @include font-smoothing();\n @include margin(0);\n @include padding(0);\n\n position: fixed;\n\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n\n /**\n * Because body has position: fixed,\n * it should be promoted to its own\n * layer.\n *\n * WebKit does not always promote\n * the body to its own layer on page\n * load in Ionic apps. Once scrolling on\n * ion-content starts, WebKit will promote\n * body. Unfortunately, this causes a re-paint\n * which results in scrolling being halted\n * until the next user gesture.\n *\n * This impacts the Custom Elements build.\n * The lazy loaded build causes the browser to\n * re-paint during hydration which causes WebKit\n * to promote body to its own layer.\n * In the CE Build, this hydration does not\n * happen, so the additional re-paint does not occur.\n */\n transform: translateZ(0);\n\n text-rendering: optimizeLegibility;\n\n overflow: hidden;\n\n touch-action: manipulation;\n\n -webkit-user-drag: none;\n\n -ms-content-zooming: none;\n\n word-wrap: break-word;\n\n overscroll-behavior-y: none;\n -webkit-text-size-adjust: none;\n\n text-size-adjust: none;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Typography\n// --------------------------------------------------\n\n/// @prop - Font weight of all headings\n$headings-font-weight: 500;\n\n/// @prop - Line height of all headings\n$headings-line-height: 1.2;\n\n/// @prop - Font size of heading level 1\n$h1-font-size: dynamic-font(26px);\n\n/// @prop - Font size of heading level 2\n$h2-font-size: dynamic-font(24px);\n\n/// @prop - Font size of heading level 3\n$h3-font-size: dynamic-font(22px);\n\n/// @prop - Font size of heading level 4\n$h4-font-size: dynamic-font(20px);\n\n/// @prop - Font size of heading level 5\n$h5-font-size: dynamic-font(18px);\n\n/// @prop - Font size of heading level 6\n$h6-font-size: dynamic-font(16px);\n\nhtml {\n font-family: var(--ion-font-family);\n}\n\n/**\n * Dynamic Type is an iOS-only feature, so\n * this should only be enabled on iOS devices.\n */\n@supports (-webkit-touch-callout: none) {\n html {\n /**\n * Includes fallback if Dynamic Type is not enabled.\n */\n font: var(--ion-dynamic-font, 16px var(--ion-font-family));\n }\n}\n\na {\n background-color: transparent;\n color: ion-color(primary, base);\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n @include margin(16px, null, 10px, null);\n\n font-weight: $headings-font-weight;\n\n line-height: $headings-line-height;\n}\n\nh1 {\n @include margin(20px, null, null, null);\n\n font-size: $h1-font-size;\n}\n\nh2 {\n @include margin(18px, null, null, null);\n\n font-size: $h2-font-size;\n}\n\nh3 {\n font-size: $h3-font-size;\n}\n\nh4 {\n font-size: $h4-font-size;\n}\n\nh5 {\n font-size: $h5-font-size;\n}\n\nh6 {\n font-size: $h6-font-size;\n}\n\nsmall {\n font-size: 75%;\n}\n\nsub,\nsup {\n position: relative;\n\n font-size: 75%;\n\n line-height: 0;\n\n vertical-align: baseline;\n}\n\nsup {\n top: -.5em;\n}\n\nsub {\n bottom: -.25em;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n\n// Element Space\n// --------------------------------------------------\n// Creates padding and margin attributes to be used on\n// any element\n\n$padding: var(--ion-padding, 16px);\n$margin: var(--ion-margin, 16px);\n\n// Padding\n// --------------------------------------------------\n\n.ion-no-padding {\n --padding-start: 0;\n --padding-end: 0;\n --padding-top: 0;\n --padding-bottom: 0;\n\n @include padding(0);\n}\n\n.ion-padding {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding);\n}\n\n.ion-padding-top {\n --padding-top: #{$padding};\n\n @include padding($padding, null, null, null);\n}\n\n.ion-padding-start {\n --padding-start: #{$padding};\n\n @include padding-horizontal($padding, null);\n}\n\n.ion-padding-end {\n --padding-end: #{$padding};\n\n @include padding-horizontal(null, $padding);\n}\n\n.ion-padding-bottom {\n --padding-bottom: #{$padding};\n\n @include padding(null, null, $padding, null);\n}\n\n.ion-padding-vertical {\n --padding-top: #{$padding};\n --padding-bottom: #{$padding};\n\n @include padding($padding, null, $padding, null);\n}\n\n.ion-padding-horizontal {\n --padding-start: #{$padding};\n --padding-end: #{$padding};\n\n @include padding-horizontal($padding);\n}\n\n\n// Margin\n// --------------------------------------------------\n\n.ion-no-margin {\n --margin-start: 0;\n --margin-end: 0;\n --margin-top: 0;\n --margin-bottom: 0;\n\n @include margin(0);\n}\n\n.ion-margin {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin);\n}\n\n.ion-margin-top {\n --margin-top: #{$margin};\n\n @include margin($margin, null, null, null);\n}\n\n.ion-margin-start {\n --margin-start: #{$margin};\n\n @include margin-horizontal($margin, null);\n}\n\n.ion-margin-end {\n --margin-end: #{$margin};\n\n @include margin-horizontal(null, $margin);\n}\n\n.ion-margin-bottom {\n --margin-bottom: #{$margin};\n\n @include margin(null, null, $margin, null);\n}\n\n.ion-margin-vertical {\n --margin-top: #{$margin};\n --margin-bottom: #{$margin};\n\n @include margin($margin, null, $margin, null);\n}\n\n.ion-margin-horizontal {\n --margin-start: #{$margin};\n --margin-end: #{$margin};\n\n @include margin-horizontal($margin);\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Float Elements\n// --------------------------------------------------\n// Creates float classes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-float-{bp}-{side}` classes for floating the element based\n // on the breakpoint and side\n .ion-float#{$infix}-left {\n @include float(left, !important);\n }\n\n .ion-float#{$infix}-right {\n @include float(right, !important);\n }\n\n .ion-float#{$infix}-start {\n @include float(start, !important);\n }\n\n .ion-float#{$infix}-end {\n @include float(end, !important);\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Text Alignment\n// --------------------------------------------------\n// Creates text alignment attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for aligning the text based\n // on the breakpoint\n .ion-text#{$infix}-center {\n text-align: center !important;\n }\n\n .ion-text#{$infix}-justify {\n text-align: justify !important;\n }\n\n .ion-text#{$infix}-start {\n text-align: start !important;\n }\n\n .ion-text#{$infix}-end {\n text-align: end !important;\n }\n\n .ion-text#{$infix}-left {\n text-align: left !important;\n }\n\n .ion-text#{$infix}-right {\n text-align: right !important;\n }\n\n .ion-text#{$infix}-nowrap {\n white-space: nowrap !important;\n }\n\n .ion-text#{$infix}-wrap {\n white-space: normal !important;\n }\n }\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Text Transformation\n// --------------------------------------------------\n// Creates text transform attributes based on screen size\n\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `.ion-text-{bp}` classes for transforming the text based\n // on the breakpoint\n .ion-text#{$infix}-uppercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: uppercase !important;\n }\n\n .ion-text#{$infix}-lowercase {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: lowercase !important;\n }\n\n .ion-text#{$infix}-capitalize {\n /* stylelint-disable-next-line declaration-no-important */\n text-transform: capitalize !important;\n }\n }\n}\n","// Flex Utilities\n// --------------------------------------------------\n// Creates flex classes to align flex containers\n// and items\n\n// Align Self\n// --------------------------------------------------\n\n.ion-align-self-start {\n align-self: flex-start !important;\n}\n\n.ion-align-self-end {\n align-self: flex-end !important;\n}\n\n.ion-align-self-center {\n align-self: center !important;\n}\n\n.ion-align-self-stretch {\n align-self: stretch !important;\n}\n\n.ion-align-self-baseline {\n align-self: baseline !important;\n}\n\n.ion-align-self-auto {\n align-self: auto !important;\n}\n\n\n// Flex Wrap\n// --------------------------------------------------\n\n.ion-wrap {\n flex-wrap: wrap !important;\n}\n\n.ion-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.ion-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n\n// Justify Content\n// --------------------------------------------------\n\n.ion-justify-content-start {\n justify-content: flex-start !important;\n}\n\n.ion-justify-content-center {\n justify-content: center !important;\n}\n\n.ion-justify-content-end {\n justify-content: flex-end !important;\n}\n\n.ion-justify-content-around {\n justify-content: space-around !important;\n}\n\n.ion-justify-content-between {\n justify-content: space-between !important;\n}\n\n.ion-justify-content-evenly {\n justify-content: space-evenly !important;\n}\n\n\n// Align Items\n// --------------------------------------------------\n\n.ion-align-items-start {\n align-items: flex-start !important;\n}\n\n.ion-align-items-center {\n align-items: center !important;\n}\n\n.ion-align-items-end {\n align-items: flex-end !important;\n}\n\n.ion-align-items-stretch {\n align-items: stretch !important;\n}\n\n.ion-align-items-baseline {\n align-items: baseline !important;\n}\n","@import \"../themes/ionic.globals\";\n@import \"../themes/ionic.mixins\";\n\n// Display\n// --------------------------------------------------\n// Modifies display of a particular element based on the given classes\n\n.ion-hide {\n display: none !important;\n}\n\n// Adds hidden classes\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-up` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-up {\n display: none !important;\n }\n }\n\n @include media-breakpoint-down($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-down` classes for hiding the element based\n // on the breakpoint\n .ion-hide#{$infix}-down {\n display: none !important;\n }\n }\n}\n"]}
|
package/dist/index.js
CHANGED
|
@@ -443,6 +443,7 @@ const IonCheckbox = /*@__PURE__*/ defineContainer('ion-checkbox', defineCustomEl
|
|
|
443
443
|
'labelPlacement',
|
|
444
444
|
'justify',
|
|
445
445
|
'alignment',
|
|
446
|
+
'required',
|
|
446
447
|
'ionChange',
|
|
447
448
|
'ionFocus',
|
|
448
449
|
'ionBlur'
|
|
@@ -967,6 +968,7 @@ const IonSelect = /*@__PURE__*/ defineContainer('ion-select', defineCustomElemen
|
|
|
967
968
|
'expandedIcon',
|
|
968
969
|
'shape',
|
|
969
970
|
'value',
|
|
971
|
+
'required',
|
|
970
972
|
'ionChange',
|
|
971
973
|
'ionCancel',
|
|
972
974
|
'ionDismiss',
|
|
@@ -1071,11 +1073,14 @@ const IonToggle = /*@__PURE__*/ defineContainer('ion-toggle', defineCustomElemen
|
|
|
1071
1073
|
'name',
|
|
1072
1074
|
'checked',
|
|
1073
1075
|
'disabled',
|
|
1076
|
+
'errorText',
|
|
1077
|
+
'helperText',
|
|
1074
1078
|
'value',
|
|
1075
1079
|
'enableOnOffLabels',
|
|
1076
1080
|
'labelPlacement',
|
|
1077
1081
|
'justify',
|
|
1078
1082
|
'alignment',
|
|
1083
|
+
'required',
|
|
1079
1084
|
'ionChange',
|
|
1080
1085
|
'ionFocus',
|
|
1081
1086
|
'ionBlur'
|
|
@@ -2466,7 +2471,7 @@ const defineOverlayContainer = (name, defineCustomElement, componentProps = [],
|
|
|
2466
2471
|
const IonActionSheet = /*@__PURE__*/ defineOverlayContainer('ion-action-sheet', defineCustomElement$1k, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'subHeader', 'translucent', 'trigger']);
|
|
2467
2472
|
const IonAlert = /*@__PURE__*/ defineOverlayContainer('ion-alert', defineCustomElement$1l, ['animated', 'backdropDismiss', 'buttons', 'cssClass', 'enterAnimation', 'header', 'htmlAttributes', 'inputs', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'subHeader', 'translucent', 'trigger']);
|
|
2468
2473
|
const IonLoading = /*@__PURE__*/ defineOverlayContainer('ion-loading', defineCustomElement$1m, ['animated', 'backdropDismiss', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'message', 'mode', 'showBackdrop', 'spinner', 'translucent', 'trigger']);
|
|
2469
|
-
const IonModal = /*@__PURE__*/ defineOverlayContainer('ion-modal', defineCustomElement$1n, ['animated', 'backdropBreakpoint', 'backdropDismiss', 'breakpoints', 'canDismiss', 'enterAnimation', 'focusTrap', 'handle', 'handleBehavior', 'htmlAttributes', 'initialBreakpoint', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'presentingElement', 'showBackdrop', 'trigger'], true);
|
|
2474
|
+
const IonModal = /*@__PURE__*/ defineOverlayContainer('ion-modal', defineCustomElement$1n, ['animated', 'backdropBreakpoint', 'backdropDismiss', 'breakpoints', 'canDismiss', 'enterAnimation', 'expandToScroll', 'focusTrap', 'handle', 'handleBehavior', 'htmlAttributes', 'initialBreakpoint', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'presentingElement', 'showBackdrop', 'trigger'], true);
|
|
2470
2475
|
const IonPickerLegacy = /*@__PURE__*/ defineOverlayContainer('ion-picker-legacy', defineCustomElement$1o, ['animated', 'backdropDismiss', 'buttons', 'columns', 'cssClass', 'duration', 'enterAnimation', 'htmlAttributes', 'isOpen', 'keyboardClose', 'leaveAnimation', 'mode', 'showBackdrop', 'trigger']);
|
|
2471
2476
|
const IonPopover = /*@__PURE__*/ defineOverlayContainer('ion-popover', defineCustomElement$1p, ['alignment', 'animated', 'arrow', 'backdropDismiss', 'component', 'componentProps', 'dismissOnSelect', 'enterAnimation', 'event', 'focusTrap', 'htmlAttributes', 'isOpen', 'keepContentsMounted', 'keyboardClose', 'leaveAnimation', 'mode', 'reference', 'showBackdrop', 'side', 'size', 'translucent', 'trigger', 'triggerAction']);
|
|
2472
2477
|
const IonToast = /*@__PURE__*/ defineOverlayContainer('ion-toast', defineCustomElement$1q, ['animated', 'buttons', 'color', 'cssClass', 'duration', 'enterAnimation', 'header', 'htmlAttributes', 'icon', 'isOpen', 'keyboardClose', 'layout', 'leaveAnimation', 'message', 'mode', 'position', 'positionAnchor', 'swipeGesture', 'translucent', 'trigger']);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../node_modules/@stencil/vue-output-target/dist/runtime.js","../src/proxies.ts","../src/hooks/back-button.ts","../src/hooks/keyboard.ts","../src/utils.ts","../src/hooks/lifecycle.ts","../src/hooks/router.ts","../src/ionic-vue.ts","../src/components/IonBackButton.ts","../src/components/IonPage.ts","../src/components/IonRouterOutlet.ts","../src/components/IonTabButton.ts","../src/components/IonTabs.ts","../src/components/IonTabBar.ts","../src/components/IonApp.ts","../src/framework-delegate.ts","../src/components/IonNav.ts","../src/components/IonIcon.ts","../src/utils/overlays.ts","../src/components/Overlays.ts","../src/controllers.ts"],"sourcesContent":["import { defineComponent, useSlots, createSSRApp, compile, ref, getCurrentInstance, inject, h, withDirectives } from 'vue';\n\nconst LOG_PREFIX = '[vue-output-target]';\n/**\n * returns true if the value is a primitive, e.g. string, number, boolean\n * @param value - the value to check\n * @returns true if the value is a primitive, false otherwise\n */\nfunction isPrimitive(value) {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n}\nfunction defineStencilSSRComponent(options) {\n return defineComponent({\n async setup(props, context) {\n /**\n * resolve light dom into a string\n */\n const slots = useSlots();\n let renderedLightDom = '';\n if (typeof slots.default === 'function') {\n const ssrLightDom = createSSRApp({ render: () => slots.default() });\n const { renderToString: vueRenderToString } = await import('vue/server-renderer');\n renderedLightDom = await vueRenderToString(ssrLightDom, { context });\n }\n /**\n * compose element props into a string\n */\n let stringProps = '';\n for (const [key, value] of Object.entries(props)) {\n if (typeof value === 'undefined') {\n continue;\n }\n /**\n * Stencils metadata tells us which properties can be serialized\n */\n const propName = options.props?.[key][1];\n const propValue = isPrimitive(value)\n ? typeof value === 'boolean'\n ? /**\n * omit boolean properties that are false all together\n */\n value\n ? '\"true\"'\n : undefined\n : `\"${value}\"`\n : Array.isArray(value) && value.every(isPrimitive)\n ? JSON.stringify(value)\n : undefined;\n if (!propName || !propValue) {\n console.warn(`${LOG_PREFIX} ignore component property \"${key}\" for ${options.tagName} ` +\n \"- property type is unknown or not a primitive and can't be serialized\");\n continue;\n }\n stringProps += ` ${propName}=${propValue}`;\n }\n /**\n * transform component into Declarative Shadow DOM by lazy loading the hydrate module\n */\n const toSerialize = `<${options.tagName}${stringProps}>${renderedLightDom}</${options.tagName}>`;\n const { renderToString } = await options.hydrateModule;\n const { html } = await renderToString(toSerialize, {\n fullDocument: false,\n serializeShadowRoot: true,\n });\n if (!html) {\n throw new Error(`'${options.tagName}' component did not render anything.`);\n }\n return compile(html\n /**\n * by default Vue strips out the <style> tag, so this little trick\n * makes it work by wrapping it in a component tag\n */\n .replace('<style>', `<component :is=\"'style'\">`)\n .replace('</style>', '</component>'), {\n comments: true,\n isCustomElement: (tag) => tag === options.tagName,\n });\n },\n props: Object.entries(options.props || {}).reduce((acc, [key, value]) => {\n acc[key] = value[0];\n return acc;\n }, {}),\n /**\n * the template tags can be arbitrary as they will be replaced with above compiled template\n */\n template: '<div></div>',\n });\n}\n\nconst UPDATE_VALUE_EVENT = 'update:modelValue';\nconst MODEL_VALUE = 'modelValue';\nconst ROUTER_LINK_VALUE = 'routerLink';\nconst NAV_MANAGER = 'navManager';\nconst ROUTER_PROP_PREFIX = 'router';\nconst ARIA_PROP_PREFIX = 'aria';\n/**\n * Starting in Vue 3.1.0, all properties are\n * added as keys to the props object, even if\n * they are not being used. In order to correctly\n * account for both value props and v-model props,\n * we need to check if the key exists for Vue <3.1.0\n * and then check if it is not undefined for Vue >= 3.1.0.\n * See https://github.com/vuejs/vue-next/issues/3889\n */\nconst EMPTY_PROP = Symbol();\nconst DEFAULT_EMPTY_PROP = { default: EMPTY_PROP };\nconst getComponentClasses = (classes) => {\n return classes?.split(' ') || [];\n};\nconst getElementClasses = (ref, componentClasses, defaultClasses = []) => {\n return [...Array.from(ref.value?.classList || []), ...defaultClasses].filter((c, i, self) => !componentClasses.has(c) && self.indexOf(c) === i);\n};\n/**\n * Create a callback to define a Vue component wrapper around a Web Component.\n *\n * @prop name - The component tag name (i.e. `ion-button`)\n * @prop componentProps - An array of properties on the\n * component. These usually match up with the @Prop definitions\n * in each component's TSX file.\n * @prop emitProps - An array of for event listener on the Component.\n * these usually match up with the @Event definitions\n * in each compont's TSX file.\n * @prop customElement - An option custom element instance to pass\n * to customElements.define. Only set if `includeImportCustomElements: true` in your config.\n * @prop modelProp - The prop that v-model binds to (i.e. value)\n * @prop modelUpdateEvent - The event that is fired from your Web Component when the value changes (i.e. ionChange)\n */\nconst defineContainer = (name, defineCustomElement, componentProps = [], emitProps = [], modelProp, modelUpdateEvent) => {\n /**\n * Create a Vue component wrapper around a Web Component.\n * Note: The `props` here are not all properties on a component.\n * They refer to whatever properties are set on an instance of a component.\n */\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const Container = defineComponent((props, { attrs, slots, emit }) => {\n let modelPropValue = modelProp ? props[modelProp] : undefined;\n const containerRef = ref();\n const classes = new Set(getComponentClasses(attrs.class));\n /**\n * This directive is responsible for updating any reactive\n * reference associated with v-model on the component.\n * This code must be run inside of the \"created\" callback.\n * Since the following listener callbacks as well as any potential\n * event callback defined in the developer's app are set on\n * the same element, we need to make sure the following callbacks\n * are set first so they fire first. If the developer's callback fires first\n * then the reactive reference will not have been updated yet.\n */\n const vModelDirective = {\n created: (el) => {\n const eventsNames = Array.isArray(modelUpdateEvent) ? modelUpdateEvent : [modelUpdateEvent];\n eventsNames.forEach((eventName) => {\n el.addEventListener(eventName.toLowerCase(), (e) => {\n /**\n * Only update the v-model binding if the event's target is the element we are\n * listening on. For example, Component A could emit ionChange, but it could also\n * have a descendant Component B that also emits ionChange. We only want to update\n * the v-model for Component A when ionChange originates from that element and not\n * when ionChange bubbles up from Component B.\n */\n if (e.target.tagName === el.tagName && modelProp) {\n modelPropValue = (e?.target)[modelProp];\n emit(UPDATE_VALUE_EVENT, modelPropValue);\n }\n });\n });\n /**\n * we register the event emmiter for @Event definitions\n * so we can use @event\n */\n emitProps.forEach((eventName) => {\n el.addEventListener(eventName, (e) => {\n emit(eventName, e);\n });\n });\n },\n };\n const currentInstance = getCurrentInstance();\n const hasRouter = currentInstance?.appContext?.provides[NAV_MANAGER];\n const navManager = hasRouter ? inject(NAV_MANAGER) : undefined;\n const handleRouterLink = (ev) => {\n const { routerLink } = props;\n if (routerLink === EMPTY_PROP)\n return;\n if (navManager !== undefined) {\n /**\n * This prevents the browser from\n * performing a page reload when pressing\n * an Ionic component with routerLink.\n * The page reload interferes with routing\n * and causes ion-back-button to disappear\n * since the local history is wiped on reload.\n */\n ev.preventDefault();\n let navigationPayload = { event: ev };\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && key.startsWith(ROUTER_PROP_PREFIX) && value !== EMPTY_PROP) {\n navigationPayload[key] = value;\n }\n }\n navManager.navigate(navigationPayload);\n }\n else {\n console.warn('Tried to navigate, but no router was found. Make sure you have mounted Vue Router.');\n }\n };\n return () => {\n modelPropValue = props[modelProp];\n getComponentClasses(attrs.class).forEach((value) => {\n classes.add(value);\n });\n // @ts-expect-error\n const oldClick = props.onClick;\n const handleClick = (ev) => {\n if (oldClick !== undefined) {\n oldClick(ev);\n }\n if (!ev.defaultPrevented) {\n handleRouterLink(ev);\n }\n };\n let propsToAdd = {\n ref: containerRef,\n class: getElementClasses(containerRef, classes),\n onClick: handleClick,\n };\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if ((props.hasOwnProperty(key) && value !== EMPTY_PROP) || key.startsWith(ARIA_PROP_PREFIX)) {\n propsToAdd[key] = value;\n }\n /**\n * register event handlers on the component\n */\n const eventHandlerKey = 'on' + key.slice(0, 1).toUpperCase() + key.slice(1);\n const eventHandler = attrs[eventHandlerKey];\n if (containerRef.value && attrs.hasOwnProperty(eventHandlerKey) && 'addEventListener' in containerRef.value) {\n containerRef.value.addEventListener(key, eventHandler);\n }\n }\n if (modelProp) {\n /**\n * If form value property was set using v-model\n * then we should use that value.\n * Otherwise, check to see if form value property\n * was set as a static value (i.e. no v-model).\n */\n if (props[MODEL_VALUE] !== EMPTY_PROP) {\n propsToAdd = {\n ...propsToAdd,\n [modelProp]: props[MODEL_VALUE],\n };\n }\n else if (modelPropValue !== EMPTY_PROP) {\n propsToAdd = {\n ...propsToAdd,\n [modelProp]: modelPropValue,\n };\n }\n }\n // If router link is defined, add href to props\n // in order to properly render an anchor tag inside\n // of components that should become activatable and\n // focusable with router link.\n if (ROUTER_LINK_VALUE in props && props[ROUTER_LINK_VALUE] !== EMPTY_PROP) {\n propsToAdd = {\n ...propsToAdd,\n href: props[ROUTER_LINK_VALUE],\n };\n }\n /**\n * vModelDirective is only needed on components that support v-model.\n * As a result, we conditionally call withDirectives with v-model components.\n */\n const node = h(name, propsToAdd, slots.default && slots.default());\n return modelProp === undefined ? node : withDirectives(node, [[vModelDirective]]);\n };\n });\n if (typeof Container !== 'function') {\n let emits = [];\n let props = {};\n props[ROUTER_LINK_VALUE] = DEFAULT_EMPTY_PROP;\n componentProps.forEach((componentProp) => (props[componentProp] = DEFAULT_EMPTY_PROP));\n emits = emitProps;\n if (modelProp) {\n props[MODEL_VALUE] = DEFAULT_EMPTY_PROP;\n emits.push(UPDATE_VALUE_EVENT);\n }\n /**\n * Add emit props to the component.\n * This is necessary for Vue to know\n * which events to listen to.\n * @see https://v3.vuejs.org/guide/component-custom-events.html#event-names\n */\n // @ts-expect-error\n Container.name = name;\n // @ts-expect-error\n Container.emits = emits;\n // @ts-expect-error\n Container.props = props;\n }\n return Container;\n};\n\nexport { defineContainer, defineStencilSSRComponent };\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["EMPTY_PROP","DEFAULT_EMPTY_PROP","defineIonAccordion","defineIonAccordionGroup","defineIonAvatar","defineIonBackdrop","defineIonBadge","defineIonBreadcrumb","defineIonBreadcrumbs","defineIonButton","defineIonButtons","defineIonCard","defineIonCardContent","defineIonCardHeader","defineIonCardSubtitle","defineIonCardTitle","defineIonCheckbox","defineIonChip","defineIonCol","defineIonContent","defineIonDatetime","defineIonDatetimeButton","defineIonFab","defineIonFabButton","defineIonFabList","defineIonFooter","defineIonGrid","defineIonHeader","defineIonImg","defineIonInfiniteScroll","defineIonInfiniteScrollContent","defineIonInput","defineIonInputPasswordToggle","defineIonItem","defineIonItemDivider","defineIonItemGroup","defineIonItemOption","defineIonItemOptions","defineIonItemSliding","defineIonLabel","defineIonList","defineIonListHeader","defineIonMenu","defineIonMenuButton","defineIonMenuToggle","defineIonNavLink","defineIonNote","defineIonPicker","defineIonPickerColumn","defineIonPickerColumnOption","defineIonProgressBar","defineIonRadio","defineIonRadioGroup","defineIonRange","defineIonRefresher","defineIonRefresherContent","defineIonReorder","defineIonReorderGroup","defineIonRippleEffect","defineIonRow","defineIonSearchbar","defineIonSegment","defineIonSegmentButton","defineIonSegmentContent","defineIonSegmentView","defineIonSelect","defineIonSelectModal","defineIonSelectOption","defineIonSkeletonText","defineIonSpinner","defineIonSplitPane","defineIonTab","defineIonText","defineIonTextarea","defineIonThumbnail","defineIonTitle","defineIonToggle","defineIonToolbar","defineCustomElement","defineIonActionSheetCustomElement","defineIonAlertCustomElement","defineIonLoadingCustomElement","defineIonModalCustomElement","defineIonPickerLegacyCustomElement","defineIonPopoverCustomElement","defineIonToastCustomElement","modalCtrl","popoverCtrl","alertCtrl","actionSheetCtrl","loadingCtrl","defineIonPickerCustomElement","pickerCtrl","toastCtrl"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyFA,MAAM,kBAAkB,GAAG,mBAAmB,CAAC;AAC/C,MAAM,WAAW,GAAG,YAAY,CAAC;AACjC,MAAM,iBAAiB,GAAG,YAAY,CAAC;AACvC,MAAM,WAAW,GAAG,YAAY,CAAC;AACjC,MAAM,kBAAkB,GAAG,QAAQ,CAAC;AACpC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,YAAU,GAAG,MAAM,EAAE,CAAC;AAC5B,MAAMC,oBAAkB,GAAG,EAAE,OAAO,EAAED,YAAU,EAAE,CAAC;AACnD,MAAM,mBAAmB,GAAG,CAAC,OAAO,KAAK;AACzC,IAAI,OAAO,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;AACrC,CAAC,CAAC;AACF,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE,gBAAgB,EAAE,cAAc,GAAG,EAAE,KAAK;AAC1E,IAAI,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AACpJ,CAAC,CAAC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,mBAAmB,EAAE,cAAc,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,SAAS,EAAE,gBAAgB,KAAK;AACzH;AACA;AACA;AACA;AACA;AACA,IAAI,IAAI,mBAAmB,KAAK,SAAS,EAAE;AAC3C,QAAQ,mBAAmB,EAAE,CAAC;AAC9B,KAAK;AACL,IAAI,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK;AACzE,QAAQ,IAAI,cAAc,GAAG,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;AACtE,QAAQ,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC;AACnC,QAAQ,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,MAAM,eAAe,GAAG;AAChC,YAAY,OAAO,EAAE,CAAC,EAAE,KAAK;AAC7B,gBAAgB,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,GAAG,CAAC,gBAAgB,CAAC,CAAC;AAC5G,gBAAgB,WAAW,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK;AACnD,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,KAAK,EAAE,CAAC,OAAO,IAAI,SAAS,EAAE;AAC1E,4BAA4B,cAAc,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AACpE,4BAA4B,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAC;AACrE,yBAAyB;AACzB,qBAAqB,CAAC,CAAC;AACvB,iBAAiB,CAAC,CAAC;AACnB;AACA;AACA;AACA;AACA,gBAAgB,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK;AACjD,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK;AAC1D,wBAAwB,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;AAC3C,qBAAqB,CAAC,CAAC;AACvB,iBAAiB,CAAC,CAAC;AACnB,aAAa;AACb,SAAS,CAAC;AACV,QAAQ,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;AACrD,QAAQ,MAAM,SAAS,GAAG,eAAe,EAAE,UAAU,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC7E,QAAQ,MAAM,UAAU,GAAG,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;AACvE,QAAQ,MAAM,gBAAgB,GAAG,CAAC,EAAE,KAAK;AACzC,YAAY,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;AACzC,YAAY,IAAI,UAAU,KAAKA,YAAU;AACzC,gBAAgB,OAAO;AACvB,YAAY,IAAI,UAAU,KAAK,SAAS,EAAE;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,EAAE,CAAC,cAAc,EAAE,CAAC;AACpC,gBAAgB,IAAI,iBAAiB,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AACtD,gBAAgB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;AACzC,oBAAoB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AAC7C,oBAAoB,IAAI,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,KAAK,KAAKA,YAAU,EAAE;AACjH,wBAAwB,iBAAiB,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AACvD,qBAAqB;AACrB,iBAAiB;AACjB,gBAAgB,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AACvD,aAAa;AACb,iBAAiB;AACjB,gBAAgB,OAAO,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;AACnH,aAAa;AACb,SAAS,CAAC;AACV,QAAQ,OAAO,MAAM;AACrB,YAAY,cAAc,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC;AAC9C,YAAY,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,KAAK;AAChE,gBAAgB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACnC,aAAa,CAAC,CAAC;AACf;AACA,YAAY,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;AAC3C,YAAY,MAAM,WAAW,GAAG,CAAC,EAAE,KAAK;AACxC,gBAAgB,IAAI,QAAQ,KAAK,SAAS,EAAE;AAC5C,oBAAoB,QAAQ,CAAC,EAAE,CAAC,CAAC;AACjC,iBAAiB;AACjB,gBAAgB,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE;AAC1C,oBAAoB,gBAAgB,CAAC,EAAE,CAAC,CAAC;AACzC,iBAAiB;AACjB,aAAa,CAAC;AACd,YAAY,IAAI,UAAU,GAAG;AAC7B,gBAAgB,GAAG,EAAE,YAAY;AACjC,gBAAgB,KAAK,EAAE,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC;AAC/D,gBAAgB,OAAO,EAAE,WAAW;AACpC,aAAa,CAAC;AACd;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;AACrC,gBAAgB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;AACzC,gBAAgB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,KAAK,KAAKA,YAAU,KAAK,GAAG,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;AAC7G,oBAAoB,UAAU,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC5C,iBAAiB;AACjB;AACA;AACA;AACA,gBAAgB,MAAM,eAAe,GAAG,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5F,gBAAgB,MAAM,YAAY,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC;AAC5D,gBAAgB,IAAI,YAAY,CAAC,KAAK,IAAI,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,kBAAkB,IAAI,YAAY,CAAC,KAAK,EAAE;AAC7H,oBAAoB,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;AAC3E,iBAAiB;AACjB,aAAa;AACb,YAAY,IAAI,SAAS,EAAE;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,IAAI,KAAK,CAAC,WAAW,CAAC,KAAKA,YAAU,EAAE;AACvD,oBAAoB,UAAU,GAAG;AACjC,wBAAwB,GAAG,UAAU;AACrC,wBAAwB,CAAC,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC;AACvD,qBAAqB,CAAC;AACtB,iBAAiB;AACjB,qBAAqB,IAAI,cAAc,KAAKA,YAAU,EAAE;AACxD,oBAAoB,UAAU,GAAG;AACjC,wBAAwB,GAAG,UAAU;AACrC,wBAAwB,CAAC,SAAS,GAAG,cAAc;AACnD,qBAAqB,CAAC;AACtB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA,YAAY,IAAI,iBAAiB,IAAI,KAAK,IAAI,KAAK,CAAC,iBAAiB,CAAC,KAAKA,YAAU,EAAE;AACvF,gBAAgB,UAAU,GAAG;AAC7B,oBAAoB,GAAG,UAAU;AACjC,oBAAoB,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC;AAClD,iBAAiB,CAAC;AAClB,aAAa;AACb;AACA;AACA;AACA;AACA,YAAY,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AAC/E,YAAY,OAAO,SAAS,KAAK,SAAS,GAAG,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;AAC9F,SAAS,CAAC;AACV,KAAK,CAAC,CAAC;AACP,IAAI,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE;AACzC,QAAQ,IAAI,KAAK,GAAG,EAAE,CAAC;AACvB,QAAQ,IAAI,KAAK,GAAG,EAAE,CAAC;AACvB,QAAQ,KAAK,CAAC,iBAAiB,CAAC,GAAGC,oBAAkB,CAAC;AACtD,QAAQ,cAAc,CAAC,OAAO,CAAC,CAAC,aAAa,MAAM,KAAK,CAAC,aAAa,CAAC,GAAGA,oBAAkB,CAAC,CAAC,CAAC;AAC/F,QAAQ,KAAK,GAAG,SAAS,CAAC;AAC1B,QAAQ,IAAI,SAAS,EAAE;AACvB,YAAY,KAAK,CAAC,WAAW,CAAC,GAAGA,oBAAkB,CAAC;AACpD,YAAY,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AAC3C,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC;AAC9B;AACA,QAAQ,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;AAChC;AACA,QAAQ,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC;AAChC,KAAK;AACL,IAAI,OAAO,SAAS,CAAC;AACrB,CAAC;;ACvTD;AACA;AACA;AAoFa,MAAA,YAAY,iBAAiB,eAAe,CAAmB,eAAe,EAAEC,mBAAkB,EAAE;IAC/G,OAAO;IACP,UAAU;IACV,UAAU;IACV,YAAY;IACZ,gBAAgB;AACjB,CAAA,EAAE;AAGU,MAAA,iBAAiB,iBAAiB,eAAe,CAAwD,qBAAqB,EAAEC,qBAAuB,EAAE;IACpK,UAAU;IACV,UAAU;IACV,OAAO;IACP,UAAU;IACV,UAAU;IACV,QAAQ;IACR,WAAW;IACX,gBAAgB;CACjB,EAAE;IACD,WAAW;IACX,gBAAgB;AACjB,CAAA,EACD,OAAO,EAAE,YAAY,EAAE;AAGhB,MAAM,SAAS,iBAAiB,eAAe,CAAgB,YAAY,EAAEC,qBAAe,EAAE;AAGxF,MAAA,WAAW,iBAAiB,eAAe,CAAkB,cAAc,EAAEC,qBAAiB,EAAE;IAC3G,SAAS;IACT,UAAU;IACV,iBAAiB;IACjB,gBAAgB;CACjB,EAAE;IACD,gBAAgB;AACjB,CAAA,EAAE;AAGU,MAAA,QAAQ,iBAAiB,eAAe,CAAe,WAAW,EAAEC,qBAAc,EAAE;IAC/F,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,aAAa,iBAAiB,eAAe,CAAoB,gBAAgB,EAAEC,qBAAmB,EAAE;IACnH,WAAW;IACX,MAAM;IACN,wBAAwB;IACxB,OAAO;IACP,QAAQ;IACR,UAAU;IACV,UAAU;IACV,MAAM;IACN,KAAK;IACL,WAAW;IACX,QAAQ;IACR,iBAAiB;IACjB,iBAAiB;IACjB,UAAU;IACV,SAAS;IACT,gBAAgB;CACjB,EAAE;IACD,UAAU;IACV,SAAS;IACT,gBAAgB;AACjB,CAAA,EAAE;AAGU,MAAA,cAAc,iBAAiB,eAAe,CAAqB,iBAAiB,EAAEC,qBAAoB,EAAE;IACvH,OAAO;IACP,UAAU;IACV,qBAAqB;IACrB,oBAAoB;IACpB,mBAAmB;CACpB,EAAE;IACD,mBAAmB;AACpB,CAAA,EAAE;AAGU,MAAA,SAAS,iBAAiB,eAAe,CAAgB,YAAY,EAAEC,qBAAe,EAAE;IACnG,OAAO;IACP,YAAY;IACZ,UAAU;IACV,QAAQ;IACR,MAAM;IACN,iBAAiB;IACjB,iBAAiB;IACjB,UAAU;IACV,MAAM;IACN,KAAK;IACL,OAAO;IACP,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,MAAM;IACN,UAAU;IACV,SAAS;CACV,EAAE;IACD,UAAU;IACV,SAAS;AACV,CAAA,EAAE;AAGU,MAAA,UAAU,iBAAiB,eAAe,CAAiB,aAAa,EAAEC,qBAAgB,EAAE;IACvG,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,qBAAa,EAAE;IAC3F,OAAO;IACP,QAAQ;IACR,MAAM;IACN,UAAU;IACV,UAAU;IACV,MAAM;IACN,KAAK;IACL,iBAAiB;IACjB,iBAAiB;IACjB,QAAQ;AACT,CAAA,EAAE;AAGI,MAAM,cAAc,iBAAiB,eAAe,CAAqB,kBAAkB,EAAEC,qBAAoB,EAAE;AAG7G,MAAA,aAAa,iBAAiB,eAAe,CAAoB,iBAAiB,EAAEC,qBAAmB,EAAE;IACpH,OAAO;IACP,aAAa;AACd,CAAA,EAAE;AAGU,MAAA,eAAe,iBAAiB,eAAe,CAAsB,mBAAmB,EAAEC,qBAAqB,EAAE;IAC5H,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,YAAY,iBAAiB,eAAe,CAAmB,gBAAgB,EAAEC,qBAAkB,EAAE;IAChH,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,WAAW,iBAAiB,eAAe,CAA8C,cAAc,EAAEC,qBAAiB,EAAE;IACvI,OAAO;IACP,MAAM;IACN,SAAS;IACT,eAAe;IACf,UAAU;IACV,OAAO;IACP,gBAAgB;IAChB,SAAS;IACT,WAAW;IACX,WAAW;IACX,UAAU;IACV,SAAS;CACV,EAAE;IACD,WAAW;IACX,UAAU;IACV,SAAS;AACV,CAAA,EACD,SAAS,EAAE,YAAY,EAAE;AAGZ,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,qBAAa,EAAE;IAC3F,OAAO;IACP,SAAS;IACT,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,MAAM,iBAAiB,eAAe,CAAa,SAAS,EAAEC,qBAAY,EAAE;IACvF,QAAQ;IACR,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,UAAU;IACV,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;AACT,CAAA,EAAE;AAGU,MAAA,UAAU,iBAAiB,eAAe,CAAiB,aAAa,EAAEC,qBAAgB,EAAE;IACvG,OAAO;IACP,YAAY;IACZ,oBAAoB;IACpB,iBAAiB;IACjB,SAAS;IACT,SAAS;IACT,cAAc;IACd,gBAAgB;IAChB,WAAW;IACX,cAAc;CACf,EAAE;IACD,gBAAgB;IAChB,WAAW;IACX,cAAc;AACf,CAAA,EAAE;AAGU,MAAA,WAAW,iBAAiB,eAAe,CAA4C,cAAc,EAAEC,qBAAiB,EAAE;IACrI,OAAO;IACP,MAAM;IACN,UAAU;IACV,eAAe;IACf,UAAU;IACV,eAAe;IACf,KAAK;IACL,KAAK;IACL,cAAc;IACd,YAAY;IACZ,UAAU;IACV,WAAW;IACX,YAAY;IACZ,aAAa;IACb,WAAW;IACX,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,gBAAgB;IAChB,6BAA6B;IAC7B,UAAU;IACV,kBAAkB;IAClB,OAAO;IACP,kBAAkB;IAClB,oBAAoB;IACpB,iBAAiB;IACjB,sBAAsB;IACtB,WAAW;IACX,MAAM;IACN,aAAa;IACb,WAAW;IACX,WAAW;IACX,gBAAgB;IAChB,UAAU;IACV,SAAS;IACT,UAAU;IACV,WAAW;CACZ,EAAE;IACD,WAAW;IACX,WAAW;IACX,gBAAgB;IAChB,UAAU;IACV,SAAS;IACT,UAAU;IACV,WAAW;AACZ,CAAA,EACD,OAAO,EAAE,YAAY,EAAE;AAGV,MAAA,iBAAiB,iBAAiB,eAAe,CAAwB,qBAAqB,EAAEC,qBAAuB,EAAE;IACpI,OAAO;IACP,UAAU;IACV,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,MAAM,iBAAiB,eAAe,CAAa,SAAS,EAAEC,qBAAY,EAAE;IACvF,YAAY;IACZ,UAAU;IACV,MAAM;IACN,WAAW;AACZ,CAAA,EAAE;AAGU,MAAA,YAAY,iBAAiB,eAAe,CAAmB,gBAAgB,EAAEC,qBAAkB,EAAE;IAChH,OAAO;IACP,WAAW;IACX,UAAU;IACV,UAAU;IACV,MAAM;IACN,KAAK;IACL,iBAAiB;IACjB,iBAAiB;IACjB,QAAQ;IACR,MAAM;IACN,aAAa;IACb,MAAM;IACN,MAAM;IACN,WAAW;IACX,UAAU;IACV,SAAS;CACV,EAAE;IACD,UAAU;IACV,SAAS;AACV,CAAA,EAAE;AAGU,MAAA,UAAU,iBAAiB,eAAe,CAAiB,cAAc,EAAEC,qBAAgB,EAAE;IACxG,WAAW;IACX,MAAM;AACP,CAAA,EAAE;AAGU,MAAA,SAAS,iBAAiB,eAAe,CAAgB,YAAY,EAAEC,qBAAe,EAAE;IACnG,UAAU;IACV,aAAa;AACd,CAAA,EAAE;AAGU,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,qBAAa,EAAE;IAC3F,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,SAAS,iBAAiB,eAAe,CAAgB,YAAY,EAAEC,qBAAe,EAAE;IACnG,UAAU;IACV,aAAa;AACd,CAAA,EAAE;AAGU,MAAA,MAAM,iBAAiB,eAAe,CAAa,SAAS,EAAEC,qBAAY,EAAE;IACvF,KAAK;IACL,KAAK;IACL,gBAAgB;IAChB,eAAe;IACf,UAAU;CACX,EAAE;IACD,gBAAgB;IAChB,eAAe;IACf,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,iBAAiB,iBAAiB,eAAe,CAAwB,qBAAqB,EAAEC,qBAAuB,EAAE;IACpI,WAAW;IACX,UAAU;IACV,UAAU;IACV,aAAa;CACd,EAAE;IACD,aAAa;AACd,CAAA,EAAE;AAGU,MAAA,wBAAwB,iBAAiB,eAAe,CAA+B,6BAA6B,EAAEC,qBAA8B,EAAE;IACjK,gBAAgB;IAChB,aAAa;AACd,CAAA,EAAE;AAGU,MAAA,QAAQ,iBAAiB,eAAe,CAAsC,WAAW,EAAEC,qBAAc,EAAE;IACtH,OAAO;IACP,gBAAgB;IAChB,cAAc;IACd,aAAa;IACb,WAAW;IACX,YAAY;IACZ,gBAAgB;IAChB,aAAa;IACb,SAAS;IACT,kBAAkB;IAClB,UAAU;IACV,UAAU;IACV,cAAc;IACd,WAAW;IACX,MAAM;IACN,WAAW;IACX,YAAY;IACZ,OAAO;IACP,gBAAgB;IAChB,KAAK;IACL,WAAW;IACX,KAAK;IACL,WAAW;IACX,UAAU;IACV,MAAM;IACN,SAAS;IACT,aAAa;IACb,UAAU;IACV,UAAU;IACV,OAAO;IACP,YAAY;IACZ,MAAM;IACN,MAAM;IACN,OAAO;IACP,UAAU;IACV,WAAW;IACX,SAAS;IACT,UAAU;CACX,EAAE;IACD,UAAU;IACV,WAAW;IACX,SAAS;IACT,UAAU;AACX,CAAA,EACD,OAAO,EAAE,WAAW,EAAE;AAGT,MAAA,sBAAsB,iBAAiB,eAAe,CAA6B,2BAA2B,EAAEC,qBAA4B,EAAE;IACzJ,OAAO;IACP,UAAU;IACV,UAAU;IACV,MAAM;AACP,CAAA,EAAE;AAGU,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,qBAAa,EAAE;IAC3F,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,UAAU;IACV,UAAU;IACV,MAAM;IACN,KAAK;IACL,OAAO;IACP,iBAAiB;IACjB,iBAAiB;IACjB,QAAQ;IACR,MAAM;AACP,CAAA,EAAE;AAGU,MAAA,cAAc,iBAAiB,eAAe,CAAqB,kBAAkB,EAAEC,qBAAoB,EAAE;IACxH,OAAO;IACP,QAAQ;AACT,CAAA,EAAE;AAGI,MAAM,YAAY,iBAAiB,eAAe,CAAmB,gBAAgB,EAAEC,qBAAkB,EAAE;AAGrG,MAAA,aAAa,iBAAiB,eAAe,CAAoB,iBAAiB,EAAEC,qBAAmB,EAAE;IACpH,OAAO;IACP,UAAU;IACV,UAAU;IACV,YAAY;IACZ,MAAM;IACN,KAAK;IACL,QAAQ;IACR,MAAM;AACP,CAAA,EAAE;AAGU,MAAA,cAAc,iBAAiB,eAAe,CAAqB,kBAAkB,EAAEC,qBAAoB,EAAE;IACxH,MAAM;IACN,UAAU;CACX,EAAE;IACD,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,cAAc,iBAAiB,eAAe,CAAqB,kBAAkB,EAAEC,qBAAoB,EAAE;IACxH,UAAU;IACV,SAAS;CACV,EAAE;IACD,SAAS;AACV,CAAA,EAAE;AAGU,MAAA,QAAQ,iBAAiB,eAAe,CAAe,WAAW,EAAEC,qBAAc,EAAE;IAC/F,OAAO;IACP,UAAU;IACV,UAAU;IACV,UAAU;CACX,EAAE;IACD,UAAU;IACV,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,qBAAa,EAAE;IAC3F,OAAO;IACP,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,aAAa,iBAAiB,eAAe,CAAoB,iBAAiB,EAAEC,qBAAmB,EAAE;IACpH,OAAO;IACP,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,qBAAa,EAAE;IAC3F,WAAW;IACX,QAAQ;IACR,MAAM;IACN,UAAU;IACV,MAAM;IACN,cAAc;IACd,cAAc;IACd,aAAa;IACb,cAAc;IACd,YAAY;IACZ,aAAa;IACb,eAAe;CAChB,EAAE;IACD,aAAa;IACb,cAAc;IACd,YAAY;IACZ,aAAa;IACb,eAAe;AAChB,CAAA,EAAE;AAGU,MAAA,aAAa,iBAAiB,eAAe,CAAoB,iBAAiB,EAAEC,qBAAmB,EAAE;IACpH,OAAO;IACP,UAAU;IACV,MAAM;IACN,UAAU;IACV,MAAM;AACP,CAAA,EAAE;AAGU,MAAA,aAAa,iBAAiB,eAAe,CAAoB,iBAAiB,EAAEC,qBAAmB,EAAE;IACpH,MAAM;IACN,UAAU;AACX,CAAA,EAAE;AAoBU,MAAA,UAAU,iBAAiB,eAAe,CAAiB,cAAc,EAAEC,qBAAgB,EAAE;IACxG,WAAW;IACX,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;AAClB,CAAA,EAAE;AAGU,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,qBAAa,EAAE;IAC3F,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,SAAS,iBAAiB,eAAe,CAAgB,YAAY,EAAEC,qBAAe,EAAE;IACnG,oBAAoB;CACrB,EAAE;IACD,oBAAoB;AACrB,CAAA,EAAE;AAGU,MAAA,eAAe,iBAAiB,eAAe,CAAsB,mBAAmB,EAAEC,qBAAqB,EAAE;IAC5H,UAAU;IACV,OAAO;IACP,OAAO;IACP,cAAc;IACd,WAAW;CACZ,EAAE;IACD,WAAW;AACZ,CAAA,EAAE;AAGU,MAAA,qBAAqB,iBAAiB,eAAe,CAA4B,0BAA0B,EAAEC,qBAA2B,EAAE;IACrJ,UAAU;IACV,OAAO;IACP,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,cAAc,iBAAiB,eAAe,CAAqB,kBAAkB,EAAEC,qBAAoB,EAAE;IACxH,MAAM;IACN,UAAU;IACV,OAAO;IACP,QAAQ;IACR,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,QAAQ,iBAAiB,eAAe,CAAsC,WAAW,EAAEC,qBAAc,EAAE;IACtH,OAAO;IACP,MAAM;IACN,UAAU;IACV,OAAO;IACP,gBAAgB;IAChB,SAAS;IACT,WAAW;IACX,UAAU;IACV,SAAS;CACV,EAAE;IACD,UAAU;IACV,SAAS;AACV,CAAA,EACD,OAAO,EAAE,YAAY,EAAE;AAGV,MAAA,aAAa,iBAAiB,eAAe,CAAgD,iBAAiB,EAAEC,qBAAmB,EAAE;IAChJ,qBAAqB;IACrB,aAAa;IACb,MAAM;IACN,OAAO;IACP,WAAW;IACX,gBAAgB;CACjB,EAAE;IACD,WAAW;IACX,gBAAgB;AACjB,CAAA,EACD,OAAO,EAAE,YAAY,EAAE;AAGV,MAAA,QAAQ,iBAAiB,eAAe,CAAsC,WAAW,EAAEC,qBAAc,EAAE;IACtH,OAAO;IACP,UAAU;IACV,MAAM;IACN,OAAO;IACP,WAAW;IACX,KAAK;IACL,KAAK;IACL,KAAK;IACL,cAAc;IACd,OAAO;IACP,MAAM;IACN,OAAO;IACP,gBAAgB;IAChB,UAAU;IACV,OAAO;IACP,gBAAgB;IAChB,WAAW;IACX,UAAU;IACV,UAAU;IACV,SAAS;IACT,kBAAkB;IAClB,gBAAgB;CACjB,EAAE;IACD,WAAW;IACX,UAAU;IACV,UAAU;IACV,SAAS;IACT,kBAAkB;IAClB,gBAAgB;AACjB,CAAA,EACD,OAAO,EAAE,WAAW,EAAE;AAGT,MAAA,YAAY,iBAAiB,eAAe,CAAmB,eAAe,EAAEC,qBAAkB,EAAE;IAC/G,SAAS;IACT,SAAS;IACT,eAAe;IACf,kBAAkB;IAClB,YAAY;IACZ,UAAU;IACV,YAAY;IACZ,SAAS;IACT,UAAU;CACX,EAAE;IACD,YAAY;IACZ,SAAS;IACT,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,mBAAmB,iBAAiB,eAAe,CAA0B,uBAAuB,EAAEC,qBAAyB,EAAE;IAC5I,aAAa;IACb,aAAa;IACb,mBAAmB;IACnB,gBAAgB;AACjB,CAAA,EAAE;AAGI,MAAM,UAAU,iBAAiB,eAAe,CAAiB,aAAa,EAAEC,qBAAgB,EAAE;AAG5F,MAAA,eAAe,iBAAiB,eAAe,CAAsB,mBAAmB,EAAEC,qBAAqB,EAAE;IAC5H,UAAU;IACV,gBAAgB;CACjB,EAAE;IACD,gBAAgB;AACjB,CAAA,EAAE;AAGU,MAAA,eAAe,iBAAiB,eAAe,CAAsB,mBAAmB,EAAEC,qBAAqB,EAAE;IAC5H,MAAM;AACP,CAAA,EAAE;AAGI,MAAM,MAAM,iBAAiB,eAAe,CAAa,SAAS,EAAEC,qBAAY,EAAE;AAG5E,MAAA,YAAY,iBAAiB,eAAe,CAA8C,eAAe,EAAEC,qBAAkB,EAAE;IAC1I,OAAO;IACP,UAAU;IACV,gBAAgB;IAChB,cAAc;IACd,aAAa;IACb,kBAAkB;IAClB,kBAAkB;IAClB,WAAW;IACX,UAAU;IACV,UAAU;IACV,WAAW;IACX,cAAc;IACd,WAAW;IACX,WAAW;IACX,MAAM;IACN,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,iBAAiB;IACjB,YAAY;IACZ,MAAM;IACN,OAAO;IACP,UAAU;IACV,WAAW;IACX,WAAW;IACX,UAAU;IACV,SAAS;IACT,UAAU;IACV,UAAU;CACX,EAAE;IACD,UAAU;IACV,WAAW;IACX,WAAW;IACX,UAAU;IACV,SAAS;IACT,UAAU;IACV,UAAU;AACX,CAAA,EACD,OAAO,EAAE,WAAW,EAAE;AAGT,MAAA,UAAU,iBAAiB,eAAe,CAA0C,aAAa,EAAEC,qBAAgB,EAAE;IAChI,OAAO;IACP,UAAU;IACV,YAAY;IACZ,cAAc;IACd,OAAO;IACP,eAAe;IACf,WAAW;IACX,WAAW;IACX,UAAU;CACX,EAAE;IACD,WAAW;IACX,WAAW;IACX,UAAU;AACX,CAAA,EACD,OAAO,EAAE,YAAY,EAAE;AAGV,MAAA,gBAAgB,iBAAiB,eAAe,CAAsD,oBAAoB,EAAEC,qBAAsB,EAAE;IAC/J,WAAW;IACX,UAAU;IACV,QAAQ;IACR,MAAM;IACN,OAAO;AACR,CAAA,EAAE,EAAE,EACL,OAAO,EAAE,YAAY,EAAE;AAGhB,MAAM,iBAAiB,iBAAiB,eAAe,CAAwB,qBAAqB,EAAEC,qBAAuB,EAAE;AAGzH,MAAA,cAAc,iBAAiB,eAAe,CAAqB,kBAAkB,EAAEC,qBAAoB,EAAE;IACxH,UAAU;IACV,sBAAsB;CACvB,EAAE;IACD,sBAAsB;AACvB,CAAA,EAAE;AAGU,MAAA,SAAS,iBAAiB,eAAe,CAAwC,YAAY,EAAEC,qBAAe,EAAE;IAC3H,YAAY;IACZ,OAAO;IACP,aAAa;IACb,UAAU;IACV,MAAM;IACN,WAAW;IACX,kBAAkB;IAClB,SAAS;IACT,OAAO;IACP,gBAAgB;IAChB,UAAU;IACV,MAAM;IACN,QAAQ;IACR,aAAa;IACb,cAAc;IACd,YAAY;IACZ,cAAc;IACd,OAAO;IACP,OAAO;IACP,WAAW;IACX,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;CACX,EAAE;IACD,WAAW;IACX,WAAW;IACX,YAAY;IACZ,UAAU;IACV,SAAS;IACT,UAAU;AACX,CAAA,EACD,OAAO,EAAE,YAAY,EAAE;AAGV,MAAA,cAAc,iBAAiB,eAAe,CAAqB,kBAAkB,EAAEC,sBAAoB,EAAE;IACxH,QAAQ;IACR,UAAU;IACV,SAAS;AACV,CAAA,EAAE;AAGU,MAAA,eAAe,iBAAiB,eAAe,CAAsB,mBAAmB,EAAEC,sBAAqB,EAAE;IAC5H,UAAU;IACV,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,eAAe,iBAAiB,eAAe,CAAsB,mBAAmB,EAAEC,sBAAqB,EAAE;IAC5H,UAAU;IACV,UAAU;CACX,EAAE;IACD,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,UAAU,iBAAiB,eAAe,CAAiB,aAAa,EAAEC,sBAAgB,EAAE;IACvG,OAAO;IACP,UAAU;IACV,MAAM;IACN,QAAQ;AACT,CAAA,EAAE;AAGU,MAAA,YAAY,iBAAiB,eAAe,CAAmB,gBAAgB,EAAEC,sBAAkB,EAAE;IAChH,WAAW;IACX,UAAU;IACV,MAAM;IACN,qBAAqB;CACtB,EAAE;IACD,qBAAqB;AACtB,CAAA,EAAE;AAGU,MAAA,MAAM,iBAAiB,eAAe,CAAa,SAAS,EAAEC,sBAAY,EAAE;IACvF,QAAQ;IACR,UAAU;IACV,KAAK;IACL,WAAW;AACZ,CAAA,EAAE;AAGU,MAAA,OAAO,iBAAiB,eAAe,CAAc,UAAU,EAAEC,sBAAa,EAAE;IAC3F,OAAO;AACR,CAAA,EAAE;AAGU,MAAA,WAAW,iBAAiB,eAAe,CAA4C,cAAc,EAAEC,sBAAiB,EAAE;IACrI,OAAO;IACP,gBAAgB;IAChB,WAAW;IACX,aAAa;IACb,UAAU;IACV,UAAU;IACV,MAAM;IACN,WAAW;IACX,cAAc;IACd,WAAW;IACX,WAAW;IACX,MAAM;IACN,aAAa;IACb,UAAU;IACV,UAAU;IACV,YAAY;IACZ,MAAM;IACN,MAAM;IACN,MAAM;IACN,UAAU;IACV,OAAO;IACP,SAAS;IACT,kBAAkB;IAClB,WAAW;IACX,YAAY;IACZ,OAAO;IACP,gBAAgB;IAChB,OAAO;IACP,WAAW;IACX,UAAU;IACV,SAAS;IACT,UAAU;CACX,EAAE;IACD,WAAW;IACX,UAAU;IACV,SAAS;IACT,UAAU;AACX,CAAA,EACD,OAAO,EAAE,WAAW,EAAE;AAGf,MAAM,YAAY,iBAAiB,eAAe,CAAmB,eAAe,EAAEC,sBAAkB,EAAE;AAGpG,MAAA,QAAQ,iBAAiB,eAAe,CAAe,WAAW,EAAEC,sBAAc,EAAE;IAC/F,OAAO;IACP,MAAM;IACN,UAAU;CACX,EAAE;IACD,UAAU;AACX,CAAA,EAAE;AAGU,MAAA,SAAS,iBAAiB,eAAe,CAA0C,YAAY,EAAEC,sBAAe,EAAE;IAC7H,OAAO;IACP,MAAM;IACN,SAAS;IACT,UAAU;IACV,OAAO;IACP,mBAAmB;IACnB,gBAAgB;IAChB,SAAS;IACT,WAAW;IACX,WAAW;IACX,UAAU;IACV,SAAS;CACV,EAAE;IACD,WAAW;IACX,UAAU;IACV,SAAS;AACV,CAAA,EACD,SAAS,EAAE,YAAY,EAAE;AAGZ,MAAA,UAAU,iBAAiB,eAAe,CAAiB,aAAa,EAAEC,sBAAgB,EAAE;IACvG,OAAO;AACR,CAAA;;MChgCY,aAAa,GAAG,CAC3B,QAAgB,EAChB,OAAgB,KACO;AACvB,IAAA,MAAM,QAAQ,GAAG,CAAC,EAAmB,KACnC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AACxC,IAAA,MAAM,UAAU,GAAG,MACjB,QAAQ,CAAC,mBAAmB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;AAE1D,IAAA,QAAQ,CAAC,gBAAgB,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAC;IAErD,OAAO,EAAE,UAAU,EAAE,CAAC;AACxB;;ACVO,MAAM,WAAW,GAAG,MAAwB;AACjD,IAAA,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC1B,IAAA,MAAM,cAAc,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAE9B,IAAA,MAAM,YAAY,GAAG,CAAC,EAAe,KAAI;AACvC,QAAA,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,cAAc,CAAC,KAAK,GAAG,EAAE,CAAC,MAAM,CAAC,cAAc,CAAC;AAClD,KAAC,CAAC;IAEF,MAAM,YAAY,GAAG,MAAK;AACxB,QAAA,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;AACrB,QAAA,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC;AAC3B,KAAC,CAAC;IAEF,MAAM,UAAU,GAAG,MAAK;AACtB,QAAA,IAAI,OAAQ,MAAc,KAAK,WAAW,EAAE;AAC1C,YAAA,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;AAC/D,YAAA,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;SAChE;AACH,KAAC,CAAC;AAEF,IAAA,IAAI,OAAQ,MAAc,KAAK,WAAW,EAAE;AAC1C,QAAA,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;AAC5D,QAAA,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAC;KAC7D;IAED,OAAO;QACL,MAAM;QACN,cAAc;QACd,UAAU;KACX,CAAC;AACJ;;ACzBA;AAEA,IAAY,cAKX,CAAA;AALD,CAAA,UAAY,cAAc,EAAA;AACxB,IAAA,cAAA,CAAA,WAAA,CAAA,GAAA,oBAAgC,CAAA;AAChC,IAAA,cAAA,CAAA,UAAA,CAAA,GAAA,mBAA8B,CAAA;AAC9B,IAAA,cAAA,CAAA,WAAA,CAAA,GAAA,oBAAgC,CAAA;AAChC,IAAA,cAAA,CAAA,UAAA,CAAA,GAAA,mBAA8B,CAAA;AAChC,CAAC,EALW,cAAc,KAAd,cAAc,GAKzB,EAAA,CAAA,CAAA,CAAA;AACD,MAAM,SAAS,GAAG;AAChB,IAAA,CAAC,oBAAoB,GAAG,cAAc,CAAC,SAAS;AAChD,IAAA,CAAC,mBAAmB,GAAG,cAAc,CAAC,QAAQ;AAC9C,IAAA,CAAC,oBAAoB,GAAG,cAAc,CAAC,SAAS;AAChD,IAAA,CAAC,mBAAmB,GAAG,cAAc,CAAC,QAAQ;CAC/C,CAAC;AAEF,MAAM,GAAG,GAA4B,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AAE1C,MAAM,UAAU,GAAG,CAAC,IAAI,GAAG,MAAM,KAAI;;AAC1C,IAAA,MAAM,EAAE,GAAG,CAAC,CAAA,EAAA,GAAA,GAAG,CAAC,IAAI,CAAC,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,CAAC,IAAI,CAAC,CAAC;AAChC,IAAA,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;AACf,IAAA,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;AACvB,CAAC,CAAC;AAEK,MAAM,aAAa,GAAG,CAC3B,YAAiB,EACjB,WAAyC,EACzC,SAA2B,KACzB;IACF,IAAI,YAAY,aAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAG,SAAS,CAAC,EAAE;AAC7B,QAAA,YAAY,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,WAAW,KAAX,IAAA,IAAA,WAAW,uBAAX,WAAW,CAAE,KAAK,CAAC,EAAE,CAAC;KACpD;IAED,MAAM,QAAQ,GAAG,WAAW,KAAA,IAAA,IAAX,WAAW,KAAX,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,WAAW,CAAE,KAAY,CAAC;IAC3C,IAAI,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAG,SAAS,CAAC,EAAE;AACzB,QAAA,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;KACvB;AAED;;;AAGG;IACH,IAAI,QAAQ,EAAE;AACZ,QAAA,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;AAClC,QAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,OAAO,CAAC,CAAC,IAAc,KAAK,IAAI,EAAE,CAAC,CAAC;SAC3C;KACF;AACH,CAAC,CAAC;AAEK,MAAM,SAAS,GAAG,MAAwB;AAC/C,IAAA,IAAI,OAAQ,MAAc,KAAK,WAAW,EAAE;AAC1C,QAAA,MAAM,KAAK,GAAI,MAAc,CAAC,KAAK,CAAC;AACpC,QAAA,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE;YACzB,OAAO,KAAK,CAAC,MAAM,CAAC;SACrB;KACF;AACD,IAAA,OAAO,IAAI,CAAC;AACd,CAAC;;ACpED;;;AAGG;AACH,MAAM,UAAU,GAAG,CACjB,aAA6B,EAC7B,IAAc,EACd,SAA2C,KACnB;IACxB,IAAI,SAAS,EAAE;;QAEb,MAAM,MAAM,GAAG,SAAgB,CAAC;AAChC,QAAA,MAAM,KAAK,GACT,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC;AACpE;;AAEG;AACH,QAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AAClB,YAAA,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;SACvC;AACD,QAAA,MAAM,WAAW,GAAG,CAAC,GAAG,IAAe,KAAI;AACzC,YAAA,IAAI,MAAM,CAAC,WAAW,EAAE;gBACtB,OAAO;aACR;AAED,YAAA,OAAO,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;AACvC,SAAC,CAAC;AAEF,QAAA,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAExB,QAAA,OAAO,WAAW,CAAC;KACpB;SAAM;AACL,QAAA,OAAO,CAAC,IAAI,CACV,mFAAmF,CACpF,CAAC;KACH;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CACjB,SAAyB,KACvB;AACF,IAAA,OAAO,CACL,IAAO,EACP,MAA2C,GAAA,kBAAkB,EAAE,KAC5D,UAAU,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEW,MAAA,kBAAkB,GAAG,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE;AAC1D,MAAA,iBAAiB,GAAG,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE;AACxD,MAAA,kBAAkB,GAAG,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE;AAC1D,MAAA,iBAAiB,GAAG,UAAU,CAAC,cAAc,CAAC,QAAQ;;AC7BnE;;;AAGG;AACI,MAAM,YAAY,GAAG,MAAyB;AACnD,IAAA,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,MAAM,CAC7D,YAAY,CACN,CAAC;IAET,MAAM,QAAQ,GAAG,CACf,QAAa,EACb,eAAgC,EAChC,YAA0B,EAC1B,eAAkC,KAC/B,cAAc,CAAC,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe,CAAC,CAAC;AAE9E,IAAA,MAAM,IAAI,GAAG,CAAC,QAAa,EAAE,eAAkC,KAC7D,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;AAEzD,IAAA,MAAM,OAAO,GAAG,CAAC,QAAa,EAAE,eAAkC,KAChE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAEzD,MAAM,IAAI,GAAG,CAAC,eAAkC,KAAK,MAAM,CAAC,eAAe,CAAC,CAAC;IAE7E,MAAM,OAAO,GAAG,CAAC,eAAkC,KACjD,SAAS,CAAC,eAAe,CAAC,CAAC;IAE7B,OAAO;QACL,SAAS;QACT,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,OAAO;QACP,QAAQ;KACa,CAAC;AAC1B;;ACzDA;AAEA,MAAM,WAAW,GAAG,CAAC,SAAiB,KAAI;AACxC,IAAA,OAAO,SAAS;AACb,SAAA,OAAO,CAAC,8BAA8B,EAAE,OAAO,CAAC;AAChD,SAAA,WAAW,EAAE,CAAC;AACnB,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,MAAK;IAC9B,OAAO;QACL,GAAG,EAAE,CAAC,EAAO,EAAE,SAAiB,EAAE,EAAO,EAAE,IAAS,KAClD,EAAE,CAAC,gBAAgB,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC;QACvD,GAAG,EAAE,CAAC,EAAO,EAAE,SAAiB,EAAE,EAAO,EAAE,IAAS,KAClD,EAAE,CAAC,mBAAmB,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC;AAC1D,QAAA,EAAE,EAAE,CAAC,SAAiB,EAAE,IAAS,KAC/B,IAAI,WAAW,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;KAChD,CAAC;AACJ,CAAC,CAAC;AAEW,MAAA,QAAQ,GAA2B;AAC9C,IAAA,MAAM,OAAO,CAAC,CAAM,EAAE,SAAsB,EAAE,EAAA;AAC5C;;;;;;AAMG;AACH,QAAA,IAAI,OAAQ,QAAgB,KAAK,WAAW,EAAE;YAC5C,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SAClD;QAED,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,kBAAkB,EAAE,CAAC;AAC9C,QAAA,UAAU,CACL,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,MAAM,CACT,EAAA,EAAA,IAAI,EAAE,GAAG,EACT,IAAI,EAAE,GAAG,EACT,GAAG,EAAE,EAAE,IACP,CAAC;KACJ;;;ACxCU,MAAA,aAAa,iBAAiB,eAAe,CACxD,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAI;AACtB,IAAAC,sBAAmB,EAAE,CAAC;;AAGtB,IAAA,MAAM,SAAS,GAAQ,MAAM,CAAC,YAAY,CAAC,CAAC;IAE5C,MAAM,OAAO,GAAG,MAAK;AACnB;;;AAGG;AACH,QAAA,IAAI,SAAS,KAAK,SAAS,EAAE;YAC3B,OAAO;SACR;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;QAClE,MAAM,eAAe,GACnB,KAAK,CAAC,kBAAkB,CAAC,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;AAExD,QAAA,SAAS,CAAC,kBAAkB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AAC7D,KAAC,CAAC;AAEF,IAAA,OAAO,MAAK;AACV,QAAA,OAAO,CAAC,CACN,iBAAiB,EAEf,MAAA,CAAA,MAAA,CAAA,EAAA,OAAO,IACJ,KAAK,CAAA,EAEV,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CACjC,CAAC;AACJ,KAAC,CAAC;AACJ,CAAC,EACD;AACE,IAAA,IAAI,EAAE,eAAe;AACtB,CAAA;;ACrCU,MAAA,OAAO,iBAAiB,eAAe,CAAC;AACnD,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,KAAK,EAAE;;AAEL,QAAA,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAO,GAAC,EAAE;AACvD,KAAA;IACD,OAAO,GAAA;QACL,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;KACjD;AACD,IAAA,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAA;AACvB,QAAA,OAAO,MAAK;YACV,OAAO,CAAC,CACN,KAAK,EAEA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,KACR,CAAC,OAAO,GAAG,UAAU,EACrB,GAAG,EAAE,SAAS,EAEhB,CAAA,EAAA,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CACjC,CAAC;AACJ,SAAC,CAAC;KACH;AACF,CAAA;;ACAD;AAEA,MAAM,aAAa,GAAG,CAAC,UAAuB,KAAI;IAChD,QACE,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QACjD,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EACpD;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAoB,MAAM,CAAC,CAAC,CAAC,CAAC;AACnC,MAAA,eAAe,iBAAiB,eAAe,CAAC;AAC3D,IAAA,IAAI,EAAE,iBAAiB;IACvB,KAAK,GAAA;AACH,QAAAA,sBAAmB,EAAE,CAAC;AAEtB,QAAA,MAAM,aAAa,GAAG,MAAM,CAAC,gBAAgB,CAAE,CAAC;AAChD,QAAA,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AACtC,QAAA,MAAM,eAAe,GAAQ,QAAQ,CAAC,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AAClE,QAAA,IAAI,uBAAwC,CAAC;AAC7C,QAAA,IAAI,mBAAuC,CAAC;QAE5C,OAAO,CAAC,YAAY,GAAG,KAAK,GAAG,CAAC,EAAO,CAAC;AACxC,QAAA,OAAO,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;AAE1C,QAAA,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC;AAC9B,QAAA,MAAM,EAAE,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;AAE3C,QAAA,MAAM,SAAS,GAAQ,MAAM,CAAC,YAAY,CAAC,CAAC;AAC5C,QAAA,MAAM,UAAU,GAAQ,MAAM,CAAC,YAAY,CAAC,CAAC;AAE7C,QAAA,MAAM,UAAU,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;QAElC,IAAI,cAAc,GAAG,KAAK,CAAC;;AAG3B,QAAA,IAAI,gBAAwB,CAAC;AAE7B;;;;;AAKG;AACH,QAAA,KAAK,CACH,MAAM,CAAC,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,EACpC,CAAC,CAAC,YAAY,EAAE,sBAAsB,CAAC,KAAI;AACzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8BG;AACH,YAAA,IAAI,sBAAsB,KAAK,SAAS,EAAE;AACxC,gBAAA,MAAM,sBAAsB,GAC1B,sBAAsB,KAAK,uBAAuB,CAAC;AACrD,gBAAA,MAAM,+BAA+B,GACnC,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;oBACnD,sBAAsB;AACxB,oBAAA,YAAY,CAAC,IAAI,KAAK,mBAAmB,CAAC;AAE5C,gBAAA,IAAI,sBAAsB,IAAI,+BAA+B,EAAE;oBAC7D,aAAa,CAAC,eAAe,CAAC,CAAC;iBAChC;aACF;YAED,uBAAuB,GAAG,sBAAsB,CAAC;AACjD,YAAA,mBAAmB,GAAG,YAAY,CAAC,IAAI,CAAC;SACzC;AACD;;;;;;AAMG;AACH,QAAA,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAK;AACpB,YAAA,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,YAAY,GAChB,MAAM;AACN,gBAAA,MAAM,CAAC,GAAG,CAAC,kBAAkB,EAAE,eAAe,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;AACvE,YAAA,IAAI,CAAC,YAAY;AAAE,gBAAA,OAAO,KAAK,CAAC;YAEhC,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAC1C,YAAA,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;AAAE,gBAAA,OAAO,KAAK,CAAC;AAE9C;;;;AAIG;AACH,YAAA,MAAM,SAAS,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;AAClD,YAAA,MAAM,gBAAgB,GAAG,UAAU,CAAC,uBAAuB,CACzD,EAAE,QAAQ,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE,EAAE,EAC3C,EAAE,CACH,CAAC;YAEF,OAAO,CAAC,CAAC,gBAAgB,CAAC;AAC5B,SAAC,CAAC;AACF,QAAA,MAAM,OAAO,GAAG,YAAW;AACzB,YAAA,MAAM,SAAS,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;AAClD,YAAA,MAAM,EAAE,eAAe,EAAE,GAAG,SAAS,CAAC;AACtC,YAAA,MAAM,gBAAgB,GAAG,UAAU,CAAC,uBAAuB,CACzD,EAAE,QAAQ,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE,EAAE,EAC3C,EAAE,CACH,CAAC;YACF,MAAM,eAAe,GAAG,UAAU,CAAC,uBAAuB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAE1E,IAAI,eAAe,EAAE;gBACnB,IAAI,gBAAgB,GAAG,eAAe,CAAC;AACvC,gBAAA,MAAM,UAAU,GAAG,gBAAgB,CAAC,cAAc,CAAC;AACnD,gBAAA,MAAM,SAAS,GAAG,eAAe,CAAC,cAAc,CAAC;AAEjD;;;;;;AAMG;AACH,gBAAA,MAAM,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAC;gBACzD,IAAI,gBAAgB,KAAK,SAAS,IAAI,eAAe,KAAK,SAAS,EAAE;oBACnE,gBAAgB,GAAG,eAAe,CAAC;iBACpC;AAED,gBAAA,eAAe,CAAC,eAAe,GAAG,gBAAgB,CAAC;AAEnD,gBAAA,MAAM,UAAU,CACd,UAAU,EACV,SAAS,EACT,MAAM,EACN,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EACtB,IAAI,EACJ,gBAAgB,CACjB,CAAC;aACH;AAED,YAAA,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AAC3B,SAAC,CAAC;AAEF,QAAA,MAAM,KAAK,GAAG,CAAC,cAAuB,KAAI;YACxC,IAAI,cAAc,EAAE;gBAClB,cAAc,GAAG,IAAI,CAAC;AAEtB;;;;AAIG;gBACH,SAAS,CAAC,kBAAkB,EAAE,CAAC;aAChC;iBAAM;AACL;;;;AAIG;AACH,gBAAA,MAAM,SAAS,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;AAClD,gBAAA,MAAM,gBAAgB,GAAG,UAAU,CAAC,uBAAuB,CACzD,EAAE,QAAQ,EAAE,SAAS,CAAC,aAAa,IAAI,EAAE,EAAE,EAC3C,EAAE,CACH,CAAC;gBACF,gBAAgB,CAAC,cAAc,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBACpE,gBAAgB,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;aAClE;AACH,SAAC,CAAC;AAEF,QAAA,KAAK,CAAC,eAAe,EAAE,MAAK;AAC1B,YAAA,eAAe,CAAC,KAAK,CAAC,YAAY,GAAG;gBACnC,QAAQ;gBACR,OAAO;gBACP,KAAK;aACN,CAAC;AACJ,SAAC,CAAC,CAAC;AAEH,QAAA,MAAM,UAAU,GAAG,OACjB,UAAuB,EACvB,SAAsB,EACtB,SAAc,EACd,UAAmB,EACnB,iBAA0B,EAC1B,gBAAmC,KACjC;YACF,IAAI,cAAc,EAAE;gBAClB,cAAc,GAAG,KAAK,CAAC;AACvB,gBAAA,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aAC/B;AAED,YAAA,IAAI,UAAU,KAAK,SAAS,EAAE;AAC5B,gBAAA,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aAC/B;AAED,YAAA,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAE/C,YAAA,MAAM,gBAAgB,GACpB,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,MAAM,IAAI,SAAS,KAAK,MAAM,CAAC;AAC1E,YAAA,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE;AACvE;;;;;;;AAOG;AACH,gBAAA,QAAQ,EACN,gBAAgB,IAAI,gBAAgB,KAAK,SAAS,GAAG,CAAC,GAAG,SAAS;gBACpE,SAAS;gBACT,UAAU;gBACV,iBAAiB;gBACjB,gBAAgB;AACjB,aAAA,CAAC,CAAC;AAEH,YAAA,OAAO,MAAM,CAAC;AAChB,SAAC,CAAC;AAEF,QAAA,MAAM,oBAAoB,GAAG,YAAW;AACtC,YAAA,MAAM,SAAS,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;AAClD,YAAA,MAAM,EACJ,eAAe,EACf,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,KAAK,GACN,GAAG,SAAS,CAAC;YAEd,MAAM,gBAAgB,GAAG,UAAU,CAAC,uBAAuB,CACzD,SAAS,EACT,EAAE,CACH,CAAC;YACF,IAAI,eAAe,GAAG,UAAU,CAAC,8BAA8B,CAC7D,SAAS,EACT,EAAE,CACH,CAAC;AACF,YAAA,MAAM,UAAU,GAAG,gBAAgB,CAAC,cAAc,CAAC;AAEnD;;;;AAIG;AACH,YAAA,IAAI,UAAU,KAAK,SAAS,EAAE;AAC5B,gBAAA,OAAO,CAAC,IAAI,CAAC,CAAoE,iEAAA,EAAA,SAAS,CAAC,QAAQ,CAAA;;AAE1B,gFAAA,CAAA,CAAC,CAAC;aAC5E;YACD,IAAI,gBAAgB,KAAK,eAAe;gBAAE,OAAO;AAEjD,YAAA,IAAI,CAAC,eAAe,IAAI,qBAAqB,EAAE;gBAC7C,eAAe,GAAG,UAAU,CAAC,sBAAsB,CACjD,qBAAqB,EACrB,EAAE,CACH,CAAC;aACH;AAED;;;;;;;;;;;;;;;;;;AAkBG;YACH,IACE,aAAa,CAAC,UAAU,CAAC;gBACzB,CAAA,eAAe,aAAf,eAAe,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAf,eAAe,CAAE,cAAc,MAAK,SAAS;AAC7C,gBAAA,CAAC,aAAa,CAAC,eAAe,CAAC,cAAc,CAAC,EAC9C;gBACA,OAAO;aACR;YAED,aAAa,CACX,gBAAgB,CAAC,YAAY,EAC7B,gBAAgB,CAAC,eAAe,EAChC,oBAAoB,CACrB,CAAC;AAEF,YAAA,IACE,CAAA,eAAe,KAAA,IAAA,IAAf,eAAe,KAAf,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,eAAe,CAAE,cAAc;gBAC/B,gBAAgB,KAAK,eAAe,EACpC;gBACA,IAAI,gBAAgB,GAAG,eAAe,CAAC;AACvC,gBAAA,MAAM,SAAS,GAAG,eAAe,CAAC,cAAc,CAAC;gBAEjD,aAAa,CACX,eAAe,CAAC,YAAY,EAC5B,eAAe,CAAC,eAAe,EAC/B,oBAAoB,CACrB,CAAC;AAEF;;;;;;AAMG;AACH,gBAAA,MAAM,eAAe,GAAG,gBAAgB,CAAC,eAAe,CAAC;gBACzD,IACE,gBAAgB,KAAK,SAAS;AAC9B,oBAAA,eAAe,KAAK,MAAM;oBAC1B,eAAe,KAAK,SAAS,EAC7B;oBACA,gBAAgB,GAAG,eAAe,CAAC;iBACpC;AAED,gBAAA,eAAe,CAAC,eAAe,GAAG,gBAAgB,CAAC;AAEnD,gBAAA,MAAM,UAAU,CACd,UAAU,EACV,SAAS,EACT,eAAe,EACf,CAAC,CAAC,SAAS,CAAC,aAAa,EACzB,KAAK,EACL,gBAAgB,CACjB,CAAC;AAEF,gBAAA,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AAC3C,gBAAA,SAAS,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBAE9C,MAAM,qBAAqB,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAEtD,gBAAA,IAAI,YAAY,KAAK,SAAS,EAAE;AAC9B,oBAAA,eAAe,CAAC,KAAK,GAAG,KAAK,CAAC;AAC9B,oBAAA,eAAe,CAAC,cAAc,GAAG,SAAS,CAAC;AAC3C,oBAAA,eAAe,CAAC,QAAQ,GAAG,KAAK,CAAC;iBAClC;qBAAM,IACL,EAAE,YAAY,KAAK,MAAM,IAAI,eAAe,KAAK,SAAS,CAAC,EAC3D;AACA,oBAAA,MAAM,0BAA0B,GAC9B,eAAe,KAAK,MAAM;wBAC1B,eAAe;wBACf,gBAAgB,KAAK,eAAe,CAAC;oBACvC,IAAI,0BAA0B,EAAE;AAC9B,wBAAA,eAAe,CAAC,KAAK,GAAG,KAAK,CAAC;AAC9B,wBAAA,eAAe,CAAC,cAAc,GAAG,SAAS,CAAC;AAC3C,wBAAA,eAAe,CAAC,QAAQ,GAAG,KAAK,CAAC;AAEjC;;;;;AAKG;wBACH,IAAI,qBAAqB,EAAE;4BACzB,UAAU,CAAC,mBAAmB,CAAC,EAAE,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;yBAC7D;qBACF;iBACF;qBAAM,IAAI,qBAAqB,EAAE;oBAChC,UAAU,CAAC,sBAAsB,CAAC,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,CAAC;iBAC/D;gBAED,aAAa,CACX,eAAe,CAAC,YAAY,EAC5B,eAAe,CAAC,eAAe,EAC/B,mBAAmB,CACpB,CAAC;aACH;iBAAM;AACL;;;;;AAKG;AACH,gBAAA,qBAAqB,CAAC,MACpB,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAClD,CAAC;aACH;YAED,aAAa,CACX,gBAAgB,CAAC,YAAY,EAC7B,gBAAgB,CAAC,eAAe,EAChC,mBAAmB,CACpB,CAAC;YAEF,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;AACxD,SAAC,CAAC;AAEF,QAAA,MAAM,aAAa,GAAG,CAAC,eAAoB,KAAI;YAC7C,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC3C,IAAI,CAAC,gBAAgB,EAAE;AACrB,gBAAA,gBAAgB,GAAG,iBAAiB,CAAC,IAAI,CAAC;aAC3C;AAED;;;;;;;;;AASG;YACH,IACE,CAAC,eAAe,CAAC,KAAK;AACtB,iBAAC,eAAe,CAAC,KAAK,KAAK,iBAAiB;AAC1C,oBAAA,iBAAiB,CAAC,IAAI,KAAK,gBAAgB,CAAC,EAC9C;gBACA,OAAO;aACR;AAED,YAAA,MAAM,YAAY,GAAG,SAAS,CAAC,mBAAmB,EAAE,CAAC;YACrD,IAAI,gBAAgB,GAAG,UAAU,CAAC,uBAAuB,CACvD,YAAY,EACZ,EAAE,CACH,CAAC;YAEF,IAAI,CAAC,gBAAgB,EAAE;gBACrB,gBAAgB,GAAG,UAAU,CAAC,cAAc,CAC1C,EAAE,EACF,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EACxC,eAAe,CAAC,KAAK,EACrB,YAAY,CACb,CAAC;AACF,gBAAA,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;aAClC;AAED,YAAA,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE;AAC3B,gBAAA,gBAAgB,CAAC,KAAK,GAAG,IAAI,CAAC;AAC9B,gBAAA,gBAAgB,CAAC,gBAAgB,GAAG,MAAK;AACvC,oBAAA,oBAAoB,EAAE,CAAC;AACvB,oBAAA,gBAAgB,CAAC,gBAAgB,GAAG,SAAS,CAAC;AAChD,iBAAC,CAAC;aACH;iBAAM;AACL,gBAAA,oBAAoB,EAAE,CAAC;aACxB;YAED,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;AACxD,SAAC,CAAC;AAEF,QAAA,IAAI,eAAe,CAAC,KAAK,EAAE;YACzB,aAAa,CAAC,eAAe,CAAC,CAAC;SAChC;AAED;;;;AAIG;QACH,WAAW,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AAExC,QAAA,MAAM,eAAe,GAAG,CAAC,QAAa,EAAE,SAAsB,KAAI;AAChE,YAAA,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC;AAE7C,YAAA,UAAU,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAEhD;;;;AAIG;AACH,YAAA,IAAI,QAAQ,CAAC,gBAAgB,EAAE;AAC7B;;;AAGG;AACH,gBAAA,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;gBAC9C,QAAQ,CAAC,gBAAgB,EAAE,CAAC;AAE5B;;;;;;;;AAQG;aACJ;AAAM,iBAAA,IACL,YAAY;gBACZ,CAAC,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EACtD;AACA,gBAAA,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;aAClD;AACH,SAAC,CAAC;QACF,OAAO;YACL,EAAE;YACF,UAAU;YACV,aAAa;YACb,eAAe;YACf,eAAe;SAChB,CAAC;KACH;IACD,MAAM,GAAA;QACJ,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;QAE5D,OAAO,CAAC,CACN,mBAAmB,EACnB,EAAE,GAAG,EAAE,iBAAiB,EAAE,EAC1B,UAAU;AACR,YAAA,UAAU,CAAC,GAAG,CAAC,CAAC,CAAM,KAAI;;AACxB,gBAAA,IAAI,KAAK,GAAG;oBACV,GAAG,EAAE,CAAC,CAAC,eAAe;oBACtB,GAAG,EAAE,CAAC,CAAC,QAAQ;oBACf,eAAe,EAAE,CAAC,SAAsB,KACtC,eAAe,CAAC,CAAC,EAAE,SAAS,CAAC;iBAChC,CAAC;AAEF;;AAEG;gBACH,MAAM,gBAAgB,GAAG,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAC,CAAC,YAAY,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC;AAExD;;;;;;;;AAQG;gBACH,MAAM,sBAAsB,GAAG,MAAK;;oBAClC,MAAM,iBAAiB,GAAG,CAAA,EAAA,GAAA,CAAC,CAAC,gBAAgB,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,mBAAmB,CAAC;oBAClE,IAAI,iBAAiB,EAAE;AACrB,wBAAA,OAAO,iBAAiB,CAAC;qBAC1B;yBAAM;AACL,wBAAA,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;wBAC5D,CAAC,CAAC,gBAAgB,GACb,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,CAAC,CAAC,gBAAgB,CAAA,EAAA,EACrB,mBAAmB,EAAA,CACpB,CAAC;AACF,wBAAA,OAAO,mBAAmB,CAAC;qBAC5B;AACH,iBAAC,CAAC;gBACF,MAAM,UAAU,GAAG,gBAAgB;sBAC/B,gBAAgB,KAAK,IAAI;0BACvB,CAAC,CAAC,MAAM;AACV,0BAAE,OAAO,gBAAgB,KAAK,UAAU;8BACtC,sBAAsB,EAAE;AAC1B,8BAAE,gBAAgB;sBAClB,IAAI,CAAC;AAET,gBAAA,KAAK,GACA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,KAAK,CACL,EAAA,UAAU,CACd,CAAC;gBAEF,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;aACjC,CAAC,CACL,CAAC;KACH;AACF,CAAA;;AC1lBY,MAAA,YAAY,iBAAiB,eAAe,CAAC;AACxD,IAAA,IAAI,EAAE,cAAc;AACpB,IAAA,KAAK,EAAE;AACL,QAAA,YAAY,EAAE;AACZ,YAAA,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,MAAK;AACZ,gBAAA,OAAO,EAAE,CAAC;aACX;AACF,SAAA;AACD,QAAA,QAAQ,EAAE,OAAO;AACjB,QAAA,QAAQ,EAAE,MAAM;AAChB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,GAAG,EAAE,MAAM;AACX,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,QAAQ,EAAE,OAAO;AACjB,QAAA,GAAG,EAAE,MAAM;AACX,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,QAAQ,EAAE;AACR,YAAA,IAAI,EAAE,QAAQ;AACd,YAAA,QAAQ,EAAE,KAAK;AAChB,SAAA;AACF,KAAA;AACD,IAAA,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAA;AACpB,QAAAA,sBAAmB,EAAE,CAAC;;QAGtB,MAAM,SAAS,GAAQ,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AAClD,QAAA,MAAM,OAAO,GAAG,CAAC,EAAS,KAAI;AAC5B,YAAA,IAAI,EAAE,CAAC,UAAU,EAAE;gBACjB,EAAE,CAAC,cAAc,EAAE,CAAC;aACrB;AAED;;;;;AAKG;YACH,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;AAC1C,YAAA,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;AAChC,YAAA,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC;YACjD,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;AAC3C,YAAA,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,IAAI,IAAI,CAAC;AACpD;;;;AAIG;AACH,YAAA,MAAM,WAAW,GAAG,eAAe,GAAG,SAAS,CAAC,WAAW,IAAI,IAAI,GAAG,EAAE,CAAC;AACzE,YAAA,MAAM,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC;AAEzC,YAAA,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,QAAQ,EAAE;AACtC,gBAAA,KAAK,CAAC,QAAQ,CACZ,IAAI,WAAW,CAAC,mBAAmB,EAAE;AACnC,oBAAA,MAAM,EAAE;AACN,wBAAA,IAAI,EAAE,WAAW;wBACjB,QAAQ,EAAE,GAAG,KAAK,aAAa;wBAC/B,GAAG;AACJ,qBAAA;AACF,iBAAA,CAAC,CACH,CAAC;aACH;AAED;;;;;;;AAOG;AACH,YAAA,IAAI,SAAS,KAAK,IAAI,EAAE;AACtB,gBAAA,IAAI,aAAa,KAAK,GAAG,EAAE;AACzB,oBAAA,IAAI,YAAY,KAAK,WAAW,EAAE;AAChC,wBAAA,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;qBACzB;iBACF;qBAAM;AACL,oBAAA,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;iBACvC;aACF;AACH,SAAC,CAAC;AACF,QAAA,OAAO,MAAK;AACV,YAAA,OAAO,CAAC,CACN,gBAAgB,EAEd,MAAA,CAAA,MAAA,CAAA,EAAA,OAAO,IACJ,KAAK,CAAA,EAEV,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CACjC,CAAC;AACJ,SAAC,CAAC;KACH;AACF,CAAA;;AClFD,MAAM,WAAW,GAAG,mBAAmB,CAAC;AACxC,MAAM,UAAU,GAAG,kBAAkB,CAAC;AAUtC;;;;;AAKG;AACH;AACA,MAAM,cAAc,GAAG,CAAC,IAAW,KAAI;IACrC,QACE,IAAI,CAAC,IAAI;AACT,SAAE,IAAI,CAAC,IAAY,CAAC,IAAI,KAAK,iBAAiB;AAC5C,YAAA,IAAI,CAAC,IAAI,KAAK,mBAAmB,CAAC,EACpC;AACJ,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,CAAC,IAAW,KAAa;;AAErC,IAAA,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAChC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;SACtE;QAED,OAAO,KAAK,CAAC;KACd;IAED,QACE,IAAI,CAAC,IAAI,KAAM,IAAI,CAAC,IAAY,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,EAC5E;AACJ,CAAC,CAAC;AAEW,MAAA,OAAO,iBAAiB,eAAe,CAAC;AACnD,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,KAAK,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC;IAChC,IAAI,GAAA;QACF,OAAO;AACL,YAAA,eAAe,EAAE,KAAK;SACvB,CAAC;KACH;AACD,IAAA,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAA;QAC1B,MAAM,cAAc,GAClB,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,YAAY,GAAsB,SAAS,CAAC;QAEhD,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/C;;;;;AAKG;AACH,YAAA,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAY,KAC9C,cAAc,CAAC,KAAK,CAAC,CACtB,CAAC;SACH;AAED;;;;;AAKG;AACH,QAAA,OAAO,CACL,YAAY,EACZ,UAAU,CAAa;YACrB,eAAe,EAAE,CAAC,CAAC,YAAY;AAC/B,YAAA,eAAe,EAAE,CAAC,GAAW,KAAK,IAAI,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,CAAC;AAC5D,YAAA,cAAc,EAAE,CAAC,GAAW,KAAK,IAAI,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC;AAC3D,SAAA,CAAC,CACH,CAAC;QAEF,OAAO;YACL,KAAK;YACL,KAAK;YACL,IAAI;SACL,CAAC;KACH;IACD,OAAO,GAAA;AACL;;;;;;;AAOG;AACH,QAAAA,sBAAmB,EAAE,CAAC;KACvB;IACD,MAAM,GAAA;AACJ,QAAA,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC9B,MAAM,cAAc,GAClB,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACnC,IAAI,YAAY,GAAsB,SAAS,CAAC;QAChD,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/C;;;;;AAKG;AACH,YAAA,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAY,KAC9C,cAAc,CAAC,KAAK,CAAC,CACtB,CAAC;AAEF;;;;;;AAMG;AACH,YAAA,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,KAAY,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;SAC9D;AAED,QAAA,IAAI,CAAC,YAAY,IAAI,CAAC,MAAM,EAAE;AAC5B,YAAA,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;SAC1E;AACD,QAAA,IAAI,YAAY,IAAI,MAAM,EAAE;AAC1B,YAAA,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;SACH;QAED,IAAI,MAAM,EAAE;YACV,OAAO,CAAC,CACN,UAAU,EAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAEL,KAAK,CAEV,EAAA,cAAc,CACf,CAAC;SACH;AAED;;;;;;;;;AASG;QAEH,OAAO,CAAC,CACN,UAAU,EACV;AACE,YAAA,KAAK,EAAE;AACL,gBAAA,OAAO,EAAE,MAAM;AACf,gBAAA,QAAQ,EAAE,UAAU;AACpB,gBAAA,GAAG,EAAE,GAAG;AACR,gBAAA,IAAI,EAAE,GAAG;AACT,gBAAA,KAAK,EAAE,GAAG;AACV,gBAAA,MAAM,EAAE,GAAG;AACX,gBAAA,gBAAgB,EAAE,QAAQ;AAC1B,gBAAA,KAAK,EAAE,MAAM;AACb,gBAAA,MAAM,EAAE,MAAM;AACd,gBAAA,OAAO,EAAE,mBAAmB;AAC5B,gBAAA,SAAS,EAAE,GAAG;AACf,aAAA;SACF,EACD,cAAc,CACf,CAAC;KACH;AACF,CAAA;;ACrKD,MAAM,WAAW,GAAG,CAAC,KAAU,eAAK,OAAA,CAAA,MAAA,KAAK,CAAC,IAAI,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,MAAK,cAAc,CAAA,EAAA,CAAC;AAExE,MAAM,OAAO,GAAG,CAAC,KAAc,KAAI;IACjC,IAAI,IAAI,GAAY,EAAE,CAAC;AACvB,IAAA,KAAK,CAAC,OAAO,CAAC,CAAC,IAAW,KAAI;AAC5B,QAAA,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE;AACrB,YAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjB;AAAM,aAAA,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACnE,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,QAAmB,CAAC,CAAC;YACpD,IAAI,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,SAAS,CAAC,CAAC;SAChC;AACH,KAAC,CAAC,CAAC;AAEH,IAAA,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEK,MAAM,SAAS,GAAG,eAAe,CAAC;AACvC,IAAA,IAAI,EAAE,WAAW;IACjB,IAAI,GAAA;QACF,OAAO;AACL,YAAA,QAAQ,EAAE;AACR,gBAAA,SAAS,EAAE,SAA+B;AAC1C,gBAAA,IAAI,EAAE,EAAE;AACR;;;;AAIG;AACH,gBAAA,eAAe,EAAE,KAAK;AACvB,aAAA;AACD,YAAA,SAAS,EAAE,EAAa;;AAExB,YAAA,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAO,GAAC,EAAE;AACtD,YAAA,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAO,GAAC,EAAE;;SAEtD,CAAC;KACH;IACD,OAAO,GAAA;QACL,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC;KAChD;AACD,IAAA,OAAO,EAAE;AACP,QAAA,aAAa,CAAC,SAAc,EAAA;YAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC;AAC5D;;;;;;AAMG;AACH,YAAA,MAAM,QAAQ,GAAa,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;AAC/C,YAAA,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;YAC7C,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,OAAO,EACzC,eAAe,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,EACxC,CAAC,CAAC;AACH,YAAA,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,KAAI;gBACrB,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG;AAC/B,oBAAA,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;AAC9B,oBAAA,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;AAC7B,oBAAA,GAAG,EAAE,KAAK;iBACX,CAAC;AAEF;;;;AAIG;gBACH,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,QAAQ,CAAC;AAEpD;;;;;;AAMG;gBACH,IAAI,CAAC,eAAe,EAAE;oBACpB,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,GAAG,CAC/B,KAIE,KACA;AACF,wBAAA,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;AACtC,qBAAC,CAAC;iBACH;AACH,aAAC,CAAC,CAAC;AAEH,YAAA,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;SAChC;AACD;;;;;;;;;;;;;AAaG;AACH,QAAA,cAAc,CAAC,SAAc,EAAA;YAC3B,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC;YAC5D,MAAM,YAAY,GAAG,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,mBAAmB,EAAE,CAAC;AACtD,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;AACxC,YAAA,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,KAAI;gBACnC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC;AACpC,gBAAA,OAAO,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AACjD,aAAC,CAAC,CAAC;AAEH;;;;AAIG;AACH,YAAA,IAAI,CAAC,SAAS,IAAI,CAAC,eAAe,EAAE;AAClC,gBAAA,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;aACxB;AAED;;;;AAIG;AACH,YAAA,UAAU,CAAC,OAAO,CAAC,CAAC,KAAY,KAAI;gBAClC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAClC,gBAAA,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,YAAY,KAAK,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE;AACjD,oBAAA,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG;AACtB,wBAAA,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;AAC9B,wBAAA,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;AAC7B,wBAAA,GAAG,EAAE,KAAK;qBACX,CAAC;iBACH;AACH,aAAC,CAAC,CAAC;AAEH,YAAA,IAAI,SAAS,IAAI,aAAa,EAAE;AAC9B,gBAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC;AACrE;;;;;;AAMG;gBACH,IACE,SAAS,KAAK,aAAa;oBAC3B,QAAQ,MAAK,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAE,QAAQ,CAAA,EACnC;AACA;;;;;AAKG;oBACH,MAAM,MAAM,GAAG,CAAA,YAAY,aAAZ,YAAY,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAZ,YAAY,CAAE,MAAM,IAAG,CAAA,CAAA,EAAI,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC;oBACrE,IAAI,CAAC,SAAS,CAAC,GAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACV,IAAI,CAAC,SAAS,CAAC,CAAA,EAAA,EAClB,WAAW,EAAE,CAAA,YAAY,KAAA,IAAA,IAAZ,YAAY,KAAZ,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,YAAY,CAAE,QAAQ,IAAG,MAAM,EAAA,CAC7C,CAAC;iBACH;AAED;;;AAGG;gBACH,IACE,CAAA,YAAY,KAAZ,IAAA,IAAA,YAAY,uBAAZ,YAAY,CAAE,YAAY,MAAK,KAAK;oBACpC,SAAS,KAAK,aAAa,EAC3B;AACA,oBAAA,IAAI,CAAC,aAAa,CAAC,mCACd,IAAI,CAAC,aAAa,CAAC,CAAA,EAAA,EACtB,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,YAAY,GAC9C,CAAC;iBACH;aACF;AAED,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACtC;AACD,QAAA,uBAAuB,CACrB,KAIE,EAAA;AAEF,YAAA,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC;AAEnC,YAAA,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;SAC3B;QACD,SAAS,CAAC,SAAiB,EAAE,SAAe,EAAA;YAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC;AAC5D,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YACxC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;AACzD,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;AACrC,YAAA,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CACjC,CAAC,KAAY,KAAK,EAAA,IAAA,EAAA,CAAA,CAAA,OAAA,WAAW,CAAC,KAAK,CAAC,IAAI,CAAA,CAAA,EAAA,GAAA,KAAK,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,GAAG,MAAK,SAAS,CAAA,EAAA,CACvE,CAAC;AACF,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;AACpC,YAAA,MAAM,YAAY,GAAG,SAAS,KAAK,aAAa,CAAC;YACjD,IAAI,MAAM,EAAE;gBACV,IAAI,WAAW,EAAE;oBACf,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;AAEtD,oBAAA,IAAI,eAAe,IAAI,SAAS,KAAK,IAAI,EAAE;AACzC,wBAAA,SAAS,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;qBAC1C;oBAED,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;oBAEpD,YAAY,IAAI,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;iBACtD;qBAAM;AACL;;;;;AAKG;oBACH,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,SAAS,GAAG,EAAE,CAAC;iBAC9C;aACF;SACF;AACF,KAAA;IACD,OAAO,GAAA;QACL,MAAM,SAAS,GAAQ,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AAClD;;;;;AAKG;AACH,QAAA,MAAM,UAAU,GAAG,MAAM,CAAkB,YAAY,CAAC,CAAC;AAEzD,QAAA,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,eAAe,GAAG,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC;AAE5D,QAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;AAE9B,QAAA,SAAS,aAAT,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAT,SAAS,CAAE,6BAA6B,CAAC,MACvC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAC/B,CAAC;KACH;AACD,IAAA,KAAK,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAA;AAChB,QAAAA,sBAAmB,EAAE,CAAC;AAEtB,QAAA,OAAO,MAAK;AACV,YAAA,OAAO,CAAC,CACN,aAAa,EACb,EAAE,GAAG,EAAE,WAAW,EAAE,EACpB,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CACjC,CAAC;AACJ,SAAC,CAAC;KACH;AACF,CAAA;;ACvRD,MAAM,cAAc,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;AACzB,MAAA,MAAM,iBAAiB,eAAe,CACjD,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAI;AACtB,IAAAA,sBAAmB,EAAE,CAAC;AACtB,IAAA,OAAO,MAAK;QACV,OAAO,CAAC,CACN,SAAS,EAEP,MAAA,CAAA,MAAA,CAAA,EAAA,IAAI,EAAE,QAAQ,EACX,EAAA,KAAK,CAEV,EAAA,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,cAAc,CAAC,KAAK,CAAC,CAC5D,CAAC;AACJ,KAAC,CAAC;AACJ,CAAC,EACD;AACE,IAAA,IAAI,EAAE,QAAQ;AACf,CAAA,EACD;AAEF;;;;;;;;;AASG;AACI,MAAM,0BAA0B,GAAG,CAAC,SAAgB,KAAI;IAC7D,cAAc,CAAC,KAAK,GAAG,CAAC,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEK,MAAM,6BAA6B,GAAG,CAAC,SAAgB,KAAI;AAChE,IAAA,cAAc,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAChD,CAAC,GAAG,KAAK,GAAG,KAAK,SAAS,CAC3B,CAAC;AACJ,CAAC;;ACjCM,MAAM,WAAW,GAAG,CACzB,KAAK,GAAG,0BAA0B,EAClC,QAAQ,GAAG,6BAA6B,KACnB;;AAErB,IAAA,MAAM,MAAM,GAAG,IAAI,OAAO,EAAc,CAAC;;AAGzC,IAAA,MAAM,eAAe,GAAG,CACtB,aAA0B,EAC1B,kBAAgC,EAChC,cAAA,GAAsB,EAAE,EACxB,OAAkB,KAChB;QACF,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC1C,OAAO,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;AACzC,QAAA,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AAE/B,QAAA,MAAM,aAAa,GAAG,CAAC,CACrB,QAAQ,EACR,EAAE,EAAE,EAAE,GAAG,EAAE,EACX,CAAC,CAAC,kBAAkB,oBAAO,cAAc,CAAA,CAAG,CAC7C,CAAC;AAEF;;;;;;AAMG;AACH,QAAA,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAE/B,KAAK,CAAC,aAAa,CAAC,CAAC;AAErB,QAAA,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC9B,KAAC,CAAC;AAEF,IAAA,MAAM,iBAAiB,GAAG,CAAC,UAAe,EAAE,SAAc,KAAI;QAC5D,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AAC5C,QAAA,aAAa,IAAI,QAAQ,CAAC,aAAa,CAAC,CAAC;AAEzC,QAAA,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AAC3B,KAAC,CAAC;AAEF,IAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAC;AAChD,CAAC;;ACjDY,MAAA,MAAM,iBAAiB,eAAe,CACjD,CAAC,KAAK,KAAI;AACR,IAAAA,sBAAmB,EAAE,CAAC;AACtB,IAAA,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;AAE7B;;;AAGG;IACH,MAAM,OAAO,GAAG,CAAC,SAAgB,MAC9B,KAAK,CAAC,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;AAC9C,IAAA,MAAM,UAAU,GAAG,CAAC,SAAgB,MACjC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAClD,IAAA,OAAO,MAAK;AACV,QAAA,OAAO,CAAC,CAAC,SAAS,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAO,KAAK,CAAA,EAAA,EAAE,QAAQ,EAAA,CAAA,EAAI,KAAK,CAAC,KAAK,CAAC,CAAC;AAC3D,KAAC,CAAC;AACJ,CAAC,EACD;AACE,IAAA,IAAI,EAAE,QAAQ;AACd;;;;;;;AAOG;AACH,IAAA,KAAK,EAAE;AACL,QAAA,QAAQ,EAAE;AACR,YAAA,IAAI,EAAE,OAAO;AACb,YAAA,OAAO,EAAE,IAAI;AACd,SAAA;AACD,QAAA,SAAS,EAAE;AACT,YAAA,IAAI,EAAE,QAAQ;AACd,YAAA,OAAO,EAAE,SAAS;AACnB,SAAA;AACD,QAAA,IAAI,EAAE;AACJ,YAAA,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;AAChC,YAAA,OAAO,EAAE,SAAS;AACnB,SAAA;AACD,QAAA,UAAU,EAAE;AACV,YAAA,IAAI,EAAE,MAAM;AACZ,YAAA,OAAO,EAAE,SAAS;AACnB,SAAA;AACD,QAAA,YAAY,EAAE;AACZ,YAAA,IAAI,EAAE,OAAO;AACb,YAAA,OAAO,EAAE,SAAS;AACnB,SAAA;AACF,KAAA;AACF,CAAA;;ACpDU,MAAA,OAAO,iBAAiB,eAAe,CAAC;AACnD,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,KAAK,EAAE;AACL,QAAA,KAAK,EAAE,MAAM;AACb,QAAA,OAAO,EAAE,OAAO;AAChB,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,GAAG,EAAE,MAAM;AACX,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,EAAE,EAAE,MAAM;AACV,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,IAAI,EAAE,MAAM;AACZ,QAAA,GAAG,EAAE,MAAM;AACZ,KAAA;AACD,IAAA,KAAK,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,EAAA;AACpB,QAAAA,sBAAmB,EAAE,CAAC;AACtB,QAAA,OAAO,MAAK;;YACV,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;AAEtC,YAAA,IAAI,SAAsB,CAAC;AAE3B,YAAA,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;AAC3B,YAAA,MAAM,QAAQ,GAAG,IAAI,KAAI,MAAM,KAAN,IAAA,IAAA,MAAM,KAAN,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,MAAM,CAAE,GAAG,CAAC,MAAM,CAAC,CAAA,CAAC;AAE7C,YAAA,IAAI,GAAG,IAAI,EAAE,EAAE;AACb,gBAAA,IAAI,QAAQ,KAAK,KAAK,EAAE;oBACtB,SAAS,GAAG,CAAA,EAAA,GAAA,GAAG,KAAH,IAAA,IAAA,GAAG,KAAH,KAAA,CAAA,GAAA,GAAG,GAAI,EAAE,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,IAAI,CAAC;iBAC/B;qBAAM;oBACL,SAAS,GAAG,CAAA,EAAA,GAAA,EAAE,KAAF,IAAA,IAAA,EAAE,KAAF,KAAA,CAAA,GAAA,EAAE,GAAI,GAAG,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,IAAI,CAAC;iBAC/B;aACF;iBAAM;gBACL,SAAS,GAAG,IAAI,CAAC;aAClB;AAED,YAAA,OAAO,CAAC,CACN,UAAU,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAEL,KAAK,CAAA,EAAA,EACR,IAAI,EAAE,SAAS,EAAA,CAAA,EAEjB,KAAK,CACN,CAAC;AACJ,SAAC,CAAC;KACH;AACF,CAAA;;ACxCD,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;AAC5B,MAAM,kBAAkB,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AAE5C,MAAM,sBAAsB,GAAG,CACpC,IAAY,EACZ,mBAA+B,EAC/B,cAAA,GAA2B,EAAE,EAC7B,eAAyB,EACzB,UAAgB,KACd;AACF,IAAA,MAAM,yBAAyB,GAAG,CAAC,OAAyB,KAAI;QAC9D,OAAO,eAAe,CAAuB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAI;AACtE,YAAA,MAAM,cAAc,GAAG;gBACrB,EAAE,WAAW,EAAE,CAAG,EAAA,IAAI,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE;gBACnE,EAAE,WAAW,EAAE,CAAG,EAAA,IAAI,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE;gBACjE,EAAE,WAAW,EAAE,CAAG,EAAA,IAAI,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE;gBACnE,EAAE,WAAW,EAAE,CAAG,EAAA,IAAI,cAAc,EAAE,WAAW,EAAE,YAAY,EAAE;aAClE,CAAC;AAEF,YAAA,IAAI,mBAAmB,KAAK,SAAS,EAAE;AACrC,gBAAA,mBAAmB,EAAE,CAAC;aACvB;AAED,YAAA,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC;AACtB,YAAA,MAAM,cAAc,GAAG,YAAW;AAChC,gBAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC5B,MAAM,KAAK,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;AACnC,aAAC,CAAC;YAEF,MAAM,cAAc,GAAG,OAAO,IAAW,EAAE,QAAe,KAAI;AAC5D,gBAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC;AAClC,gBAAA,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAM,CAAC,MAAM,CAAC;AAE1C;;;AAGG;gBACH,IAAI,MAAM,KAAK,UAAU;oBAAE,OAAO;gBAElC,IAAI,MAAM,EAAE;AACV,oBAAA,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;iBACtB;qBAAM;oBACL,MAAM,OAAO,EAAE,CAAC;iBACjB;AACH,aAAC,CAAC;AAEF,YAAA,MAAM,oBAAoB,GAAG,YAAW;gBACtC,MAAM,OAAO,EAAE,CAAC;AAClB,aAAC,CAAC;AAEF,YAAA,MAAM,OAAO,GAAG,YAAW;gBACzB,IAAI,CAAC,OAAO,CAAC,KAAK;oBAAE,OAAO;gBAE3B,MAAM,OAAO,CAAC,KAAK,CAAC;gBAEpB,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAExC,MAAM,OAAO,CAAC,KAAK,CAAC;AAEpB,gBAAA,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC;AAC5B,aAAC,CAAC;AAEF,YAAA,MAAM,OAAO,GAAG,OAAO,KAAsB,KAAI;;AAC/C;;;AAGG;AACH,gBAAA,IAAI,OAAO,CAAC,KAAK,EAAE;oBACjB,MAAM,OAAO,CAAC,KAAK,CAAC;iBACrB;AAED,gBAAA,IAAI,MAAA,OAAO,CAAC,KAAK,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,EAAE;AAC1B,oBAAA,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBAC9B,OAAO;iBACR;gBAED,MAAM,WAAW,GAA4B,EAAE,CAAC;AAEhD;;;;;AAKG;AACH,gBAAA,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;AACvB,oBAAA,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAQ,CAAC;oBAChC,IACE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;wBAChD,KAAK,KAAK,UAAU,EACpB;AACA,wBAAA,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;qBAC1B;iBACF;AAED;;;AAGG;gBACH,OAAO,WAAW,CAAC,aAAa,CAAC;gBACjC,OAAO,WAAW,CAAC,YAAY,CAAC;gBAChC,OAAO,WAAW,CAAC,aAAa,CAAC;gBACjC,OAAO,WAAW,CAAC,YAAY,CAAC;AAEhC,gBAAA,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;gBACtD,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,MAAM,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAC5B,WAAW,CAAA,EAAA,EACd,SAAS,EAAA,CAAA,CACT,CAAC;AAEH,gBAAA,OAAO,CAAC,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC;AAEpC,gBAAA,cAAc,CAAC,OAAO,CAAC,CAAC,aAAa,KAAI;oBACvC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE,MAAK;AAC7D,wBAAA,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;AAClC,qBAAC,CAAC,CAAC;AACL,iBAAC,CAAC,CAAC;AAEH,gBAAA,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;AAChC,aAAC,CAAC;AAEF,YAAA,OAAO,MAAK;gBACV,OAAO,CAAC,CAAC,KAAK,EAAE;AACd,oBAAA,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;oBAC1B,cAAc;oBACd,cAAc;oBACd,oBAAoB;AACpB,oBAAA,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,IAAI;AAC9B,iBAAA,CAAC,CAAC;AACL,aAAC,CAAC;SACH,EAAE,OAAO,CAAC,CAAC;AACd,KAAC,CAAC;AACF,IAAA,MAAM,qBAAqB,GAAG,CAAC,OAAY,KAAI;QAC7C,OAAO,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,KAAI;AAC1C,YAAA,IAAI,mBAAmB,KAAK,SAAS,EAAE;AACrC,gBAAA,mBAAmB,EAAE,CAAC;aACvB;AACD,YAAA,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAC1B,YAAA,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC;YAEzB,SAAS,CAAC,MAAK;AACb,gBAAA,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAC/B,WAAW,EACX,OAAO,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAC5B,CAAC;AACF,gBAAA,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAC/B,cAAc,EACd,OAAO,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAC5B,CAAC;AACF,gBAAA,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAC/B,aAAa,EACb,OAAO,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,CAC7B,CAAC;AACJ,aAAC,CAAC,CAAC;AAEH,YAAA,OAAO,MAAK;gBACV,MAAM,WAAW,GAA4B,EAAE,CAAC;AAEhD;;;;;AAKG;AACH,gBAAA,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;AACvB,oBAAA,MAAM,KAAK,GAAI,KAAa,CAAC,GAAG,CAAC,CAAC;oBAClC,IACE,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC;wBAChD,KAAK,KAAK,UAAU,EACpB;AACA,wBAAA,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;qBAC1B;iBACF;AAED;;;AAGG;gBACH,MAAM,cAAc,GAAG,MAAK;oBAC1B,IAAI,eAAe,EAAE;AACnB,wBAAA,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,4BAA4B,EAAE,EAAE,KAAK,CAAC,CAAC;qBACrE;AAED,oBAAA,OAAO,KAAK,CAAC;AACf,iBAAC,CAAC;gBAEF,OAAO,CAAC,CACN,IAAI,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EACC,WAAW,CAAE,EAAA,EAAA,GAAG,EAAE,UAAU,EAAA,CAAA;AAEjC;;;;;AAKG;AACH,gBAAA,MAAM,CAAC,KAAK;AACV,oBAAA,WAAW,CAAC,mBAAmB;oBAC/B,WAAW,CAAC,mBAAmB,KAAK,EAAE;sBACpC,cAAc,EAAE;sBAChB,SAAS,CACd,CAAC;AACJ,aAAC,CAAC;SACH,EAAE,OAAO,CAAC,CAAC;AACd,KAAC,CAAC;AAEF,IAAA,MAAM,OAAO,GAAqB;QAChC,IAAI;AACJ,QAAA,KAAK,EACH,MAAA,CAAA,MAAA,CAAA,EAAA,MAAM,EAAE,kBAAkB,IACvB,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,KAAI;AACrC,YAAA,GAAG,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC;AAC/B,YAAA,OAAO,GAAG,CAAC;SACZ,EAAE,EAA6B,CAAC,CAClC;AACD,QAAA,KAAK,EACH,OAAO,UAAU,KAAK,WAAW;cAC7B,CAAC,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,CAAC;AAC5D,cAAE,SAAS;KAChB,CAAC;IAEF,OAAO,UAAU,KAAK,SAAS;AAC7B,UAAE,yBAAyB,CAAC,OAAO,CAAC;AACpC,UAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;;ACxOD;;;AAGG;AAeU,MAAA,cAAc,iBAAiB,sBAAsB,CAAqB,kBAAkB,EAAEC,sBAAiC,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE;MAEnU,QAAQ,iBAAiB,sBAAsB,CAAe,WAAW,EAAEC,sBAA2B,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE;MAE/T,UAAU,iBAAiB,sBAAsB,CAAiB,aAAa,EAAEC,sBAA6B,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE;AAElU,MAAA,QAAQ,iBAAiB,sBAAsB,CAAe,WAAW,EAAEC,sBAA2B,EAAE,CAAC,UAAU,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,QAAQ,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,QAAQ,EAAE,qBAAqB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,IAAI,EAAE;AAEha,MAAA,eAAe,iBAAiB,sBAAsB,CAAsB,mBAAmB,EAAEC,sBAAkC,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE;AAE9U,MAAM,UAAU,iBAAiB,sBAAsB,CAAiB,aAAa,EAAEC,sBAA6B,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,QAAQ,EAAE,qBAAqB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,eAAe,CAAC,EAAE;AAEvb,MAAA,QAAQ,iBAAiB,sBAAsB,CAAe,WAAW,EAAEC,sBAA2B,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAAE,SAAS,CAAC;;ACXrX;AAEA;;;;AAIG;AACH,MAAM,gBAAgB,GAMlB,CACF,mBAA+B,EAC/B,aAAkB,EAClB,WAAW,GAAG,KAAK,KACjB;AACF,IAAA,MAAM,QAAQ,GAAG,WAAW,GAAG,WAAW,EAAE,GAAG,SAAS,CAAC;IACzD,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAC3D,IAAA,aAAa,CAAC,MAAM,GAAG,CAAC,OAAY,KAAI;AACtC,QAAA,mBAAmB,EAAE,CAAC;AAEtB,QAAA,OAAO,SAAS,CACX,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,OAAO,CACV,EAAA,EAAA,QAAQ,IACR,CAAC;AACL,KAAC,CAAC;AAEF,IAAA,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,eAAe,iBAAiB,gBAAgB,CACpDH,sBAA2B,EAC3BI,iBAAS,EACT,IAAI,EACJ;AACF,MAAM,iBAAiB,iBAAiB,gBAAgB,CACtDF,sBAA6B,EAC7BG,mBAAW,EACX,IAAI,EACJ;AACI,MAAA,eAAe,iBAAiB,gBAAgB,CACpDP,sBAA2B,EAC3BQ,iBAAS,EACT;AACI,MAAA,qBAAqB,iBAAiB,gBAAgB,CAC1DT,sBAAiC,EACjCU,uBAAe,EACf;AACI,MAAA,iBAAiB,iBAAiB,gBAAgB,CACtDR,sBAA6B,EAC7BS,mBAAW,EACX;AAEF;;AAEG;AACG,MAAA,gBAAgB,iBAAiB,gBAAgB,CACrDC,sBAA4B,EAC5BC,kBAAU,EACV;AACI,MAAA,eAAe,iBAAiB,gBAAgB,CACpDP,sBAA2B,EAC3BQ,iBAAS;;;;","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../node_modules/@stencil/vue-output-target/dist/runtime.js","../src/proxies.ts","../src/hooks/back-button.ts","../src/hooks/keyboard.ts","../src/utils.ts","../src/hooks/lifecycle.ts","../src/hooks/router.ts","../src/ionic-vue.ts","../src/components/IonBackButton.ts","../src/components/IonPage.ts","../src/components/IonRouterOutlet.ts","../src/components/IonTabButton.ts","../src/components/IonTabs.ts","../src/components/IonTabBar.ts","../src/components/IonApp.ts","../src/framework-delegate.ts","../src/components/IonNav.ts","../src/components/IonIcon.ts","../src/utils/overlays.ts","../src/components/Overlays.ts","../src/controllers.ts"],"sourcesContent":["import { defineComponent, useSlots, createSSRApp, compile, ref, getCurrentInstance, inject, h, withDirectives } from 'vue';\n\nconst LOG_PREFIX = '[vue-output-target]';\n/**\n * returns true if the value is a primitive, e.g. string, number, boolean\n * @param value - the value to check\n * @returns true if the value is a primitive, false otherwise\n */\nfunction isPrimitive(value) {\n return typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean';\n}\nfunction defineStencilSSRComponent(options) {\n return defineComponent({\n async setup(props, context) {\n /**\n * resolve light dom into a string\n */\n const slots = useSlots();\n let renderedLightDom = '';\n if (typeof slots.default === 'function') {\n const ssrLightDom = createSSRApp({ render: () => slots.default() });\n const { renderToString: vueRenderToString } = await import('vue/server-renderer');\n renderedLightDom = await vueRenderToString(ssrLightDom, { context });\n }\n /**\n * compose element props into a string\n */\n let stringProps = '';\n for (const [key, value] of Object.entries(props)) {\n if (typeof value === 'undefined') {\n continue;\n }\n /**\n * Stencils metadata tells us which properties can be serialized\n */\n const propName = options.props?.[key][1];\n const propValue = isPrimitive(value)\n ? typeof value === 'boolean'\n ? /**\n * omit boolean properties that are false all together\n */\n value\n ? '\"true\"'\n : undefined\n : `\"${value}\"`\n : Array.isArray(value) && value.every(isPrimitive)\n ? JSON.stringify(value)\n : undefined;\n if (!propName || !propValue) {\n console.warn(`${LOG_PREFIX} ignore component property \"${key}\" for ${options.tagName} ` +\n \"- property type is unknown or not a primitive and can't be serialized\");\n continue;\n }\n stringProps += ` ${propName}=${propValue}`;\n }\n /**\n * transform component into Declarative Shadow DOM by lazy loading the hydrate module\n */\n const toSerialize = `<${options.tagName}${stringProps}>${renderedLightDom}</${options.tagName}>`;\n const { renderToString } = await options.hydrateModule;\n const { html } = await renderToString(toSerialize, {\n fullDocument: false,\n serializeShadowRoot: true,\n });\n if (!html) {\n throw new Error(`'${options.tagName}' component did not render anything.`);\n }\n return compile(html\n /**\n * by default Vue strips out the <style> tag, so this little trick\n * makes it work by wrapping it in a component tag\n */\n .replace('<style>', `<component :is=\"'style'\">`)\n .replace('</style>', '</component>'), {\n comments: true,\n isCustomElement: (tag) => tag === options.tagName,\n });\n },\n props: Object.entries(options.props || {}).reduce((acc, [key, value]) => {\n acc[key] = value[0];\n return acc;\n }, {}),\n /**\n * the template tags can be arbitrary as they will be replaced with above compiled template\n */\n template: '<div></div>',\n });\n}\n\nconst UPDATE_VALUE_EVENT = 'update:modelValue';\nconst MODEL_VALUE = 'modelValue';\nconst ROUTER_LINK_VALUE = 'routerLink';\nconst NAV_MANAGER = 'navManager';\nconst ROUTER_PROP_PREFIX = 'router';\nconst ARIA_PROP_PREFIX = 'aria';\n/**\n * Starting in Vue 3.1.0, all properties are\n * added as keys to the props object, even if\n * they are not being used. In order to correctly\n * account for both value props and v-model props,\n * we need to check if the key exists for Vue <3.1.0\n * and then check if it is not undefined for Vue >= 3.1.0.\n * See https://github.com/vuejs/vue-next/issues/3889\n */\nconst EMPTY_PROP = Symbol();\nconst DEFAULT_EMPTY_PROP = { default: EMPTY_PROP };\nconst getComponentClasses = (classes) => {\n return classes?.split(' ') || [];\n};\nconst getElementClasses = (ref, componentClasses, defaultClasses = []) => {\n return [...Array.from(ref.value?.classList || []), ...defaultClasses].filter((c, i, self) => !componentClasses.has(c) && self.indexOf(c) === i);\n};\n/**\n * Create a callback to define a Vue component wrapper around a Web Component.\n *\n * @prop name - The component tag name (i.e. `ion-button`)\n * @prop componentProps - An array of properties on the\n * component. These usually match up with the @Prop definitions\n * in each component's TSX file.\n * @prop emitProps - An array of for event listener on the Component.\n * these usually match up with the @Event definitions\n * in each compont's TSX file.\n * @prop customElement - An option custom element instance to pass\n * to customElements.define. Only set if `includeImportCustomElements: true` in your config.\n * @prop modelProp - The prop that v-model binds to (i.e. value)\n * @prop modelUpdateEvent - The event that is fired from your Web Component when the value changes (i.e. ionChange)\n */\nconst defineContainer = (name, defineCustomElement, componentProps = [], emitProps = [], modelProp, modelUpdateEvent) => {\n /**\n * Create a Vue component wrapper around a Web Component.\n * Note: The `props` here are not all properties on a component.\n * They refer to whatever properties are set on an instance of a component.\n */\n if (defineCustomElement !== undefined) {\n defineCustomElement();\n }\n const Container = defineComponent((props, { attrs, slots, emit }) => {\n let modelPropValue = modelProp ? props[modelProp] : undefined;\n const containerRef = ref();\n const classes = new Set(getComponentClasses(attrs.class));\n /**\n * This directive is responsible for updating any reactive\n * reference associated with v-model on the component.\n * This code must be run inside of the \"created\" callback.\n * Since the following listener callbacks as well as any potential\n * event callback defined in the developer's app are set on\n * the same element, we need to make sure the following callbacks\n * are set first so they fire first. If the developer's callback fires first\n * then the reactive reference will not have been updated yet.\n */\n const vModelDirective = {\n created: (el) => {\n const eventsNames = Array.isArray(modelUpdateEvent) ? modelUpdateEvent : [modelUpdateEvent];\n eventsNames.forEach((eventName) => {\n el.addEventListener(eventName.toLowerCase(), (e) => {\n /**\n * Only update the v-model binding if the event's target is the element we are\n * listening on. For example, Component A could emit ionChange, but it could also\n * have a descendant Component B that also emits ionChange. We only want to update\n * the v-model for Component A when ionChange originates from that element and not\n * when ionChange bubbles up from Component B.\n */\n if (e.target.tagName === el.tagName && modelProp) {\n modelPropValue = (e?.target)[modelProp];\n emit(UPDATE_VALUE_EVENT, modelPropValue);\n }\n });\n });\n /**\n * we register the event emmiter for @Event definitions\n * so we can use @event\n */\n emitProps.forEach((eventName) => {\n el.addEventListener(eventName, (e) => {\n emit(eventName, e);\n });\n });\n },\n };\n const currentInstance = getCurrentInstance();\n const hasRouter = currentInstance?.appContext?.provides[NAV_MANAGER];\n const navManager = hasRouter ? inject(NAV_MANAGER) : undefined;\n const handleRouterLink = (ev) => {\n const { routerLink } = props;\n if (routerLink === EMPTY_PROP)\n return;\n if (navManager !== undefined) {\n /**\n * This prevents the browser from\n * performing a page reload when pressing\n * an Ionic component with routerLink.\n * The page reload interferes with routing\n * and causes ion-back-button to disappear\n * since the local history is wiped on reload.\n */\n ev.preventDefault();\n let navigationPayload = { event: ev };\n for (const key in props) {\n const value = props[key];\n if (props.hasOwnProperty(key) && key.startsWith(ROUTER_PROP_PREFIX) && value !== EMPTY_PROP) {\n navigationPayload[key] = value;\n }\n }\n navManager.navigate(navigationPayload);\n }\n else {\n console.warn('Tried to navigate, but no router was found. Make sure you have mounted Vue Router.');\n }\n };\n return () => {\n modelPropValue = props[modelProp];\n getComponentClasses(attrs.class).forEach((value) => {\n classes.add(value);\n });\n // @ts-expect-error\n const oldClick = props.onClick;\n const handleClick = (ev) => {\n if (oldClick !== undefined) {\n oldClick(ev);\n }\n if (!ev.defaultPrevented) {\n handleRouterLink(ev);\n }\n };\n let propsToAdd = {\n ref: containerRef,\n class: getElementClasses(containerRef, classes),\n onClick: handleClick,\n };\n /**\n * We can use Object.entries here\n * to avoid the hasOwnProperty check,\n * but that would require 2 iterations\n * where as this only requires 1.\n */\n for (const key in props) {\n const value = props[key];\n if ((props.hasOwnProperty(key) && value !== EMPTY_PROP) || key.startsWith(ARIA_PROP_PREFIX)) {\n propsToAdd[key] = value;\n }\n /**\n * register event handlers on the component\n */\n const eventHandlerKey = 'on' + key.slice(0, 1).toUpperCase() + key.slice(1);\n const eventHandler = attrs[eventHandlerKey];\n if (containerRef.value && attrs.hasOwnProperty(eventHandlerKey) && 'addEventListener' in containerRef.value) {\n containerRef.value.addEventListener(key, eventHandler);\n }\n }\n if (modelProp) {\n /**\n * If form value property was set using v-model\n * then we should use that value.\n * Otherwise, check to see if form value property\n * was set as a static value (i.e. no v-model).\n */\n if (props[MODEL_VALUE] !== EMPTY_PROP) {\n propsToAdd = {\n ...propsToAdd,\n [modelProp]: props[MODEL_VALUE],\n };\n }\n else if (modelPropValue !== EMPTY_PROP) {\n propsToAdd = {\n ...propsToAdd,\n [modelProp]: modelPropValue,\n };\n }\n }\n // If router link is defined, add href to props\n // in order to properly render an anchor tag inside\n // of components that should become activatable and\n // focusable with router link.\n if (ROUTER_LINK_VALUE in props && props[ROUTER_LINK_VALUE] !== EMPTY_PROP) {\n propsToAdd = {\n ...propsToAdd,\n href: props[ROUTER_LINK_VALUE],\n };\n }\n /**\n * vModelDirective is only needed on components that support v-model.\n * As a result, we conditionally call withDirectives with v-model components.\n */\n const node = h(name, propsToAdd, slots.default && slots.default());\n return modelProp === undefined ? node : withDirectives(node, [[vModelDirective]]);\n };\n });\n if (typeof Container !== 'function') {\n let emits = [];\n let props = {};\n props[ROUTER_LINK_VALUE] = DEFAULT_EMPTY_PROP;\n componentProps.forEach((componentProp) => (props[componentProp] = DEFAULT_EMPTY_PROP));\n emits = emitProps;\n if (modelProp) {\n props[MODEL_VALUE] = DEFAULT_EMPTY_PROP;\n emits.push(UPDATE_VALUE_EVENT);\n }\n /**\n * Add emit props to the component.\n * This is necessary for Vue to know\n * which events to listen to.\n * @see https://v3.vuejs.org/guide/component-custom-events.html#event-names\n */\n // @ts-expect-error\n Container.name = name;\n // @ts-expect-error\n Container.emits = emits;\n // @ts-expect-error\n Container.props = props;\n }\n return Container;\n};\n\nexport { defineContainer, defineStencilSSRComponent };\n",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["EMPTY_PROP","DEFAULT_EMPTY_PROP","defineIonAccordion","defineIonAccordionGroup","defineIonAvatar","defineIonBackdrop","defineIonBadge","defineIonBreadcrumb","defineIonBreadcrumbs","defineIonButton","defineIonButtons","defineIonCard","defineIonCardContent","defineIonCardHeader","defineIonCardSubtitle","defineIonCardTitle","defineIonCheckbox","defineIonChip","defineIonCol","defineIonContent","defineIonDatetime","defineIonDatetimeButton","defineIonFab","defineIonFabButton","defineIonFabList","defineIonFooter","defineIonGrid","defineIonHeader","defineIonImg","defineIonInfiniteScroll","defineIonInfiniteScrollContent","defineIonInput","defineIonInputPasswordToggle","defineIonItem","defineIonItemDivider","defineIonItemGroup","defineIonItemOption","defineIonItemOptions","defineIonItemSliding","defineIonLabel","defineIonList","defineIonListHeader","defineIonMenu","defineIonMenuButton","defineIonMenuToggle","defineIonNavLink","defineIonNote","defineIonPicker","defineIonPickerColumn","defineIonPickerColumnOption","defineIonProgressBar","defineIonRadio","defineIonRadioGroup","defineIonRange","defineIonRefresher","defineIonRefresherContent","defineIonReorder","defineIonReorderGroup","defineIonRippleEffect","defineIonRow","defineIonSearchbar","defineIonSegment","defineIonSegmentButton","defineIonSegmentContent","defineIonSegmentView","defineIonSelect","defineIonSelectModal","defineIonSelectOption","defineIonSkeletonText","defineIonSpinner","defineIonSplitPane","defineIonTab","defineIonText","defineIonTextarea","defineIonThumbnail","defineIonTitle","defineIonToggle","defineIonToolbar","defineCustomElement","defineIonActionSheetCustomElement","defineIonAlertCustomElement","defineIonLoadingCustomElement","defineIonModalCustomElement","defineIonPickerLegacyCustomElement","defineIonPopoverCustomElement","defineIonToastCustomElement","modalCtrl","popoverCtrl","alertCtrl","actionSheetCtrl","loadingCtrl","defineIonPickerCustomElement","pickerCtrl","toastCtrl"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -790,6 +790,11 @@
|
|
|
790
790
|
"description": "The name of the control, which is submitted with the form data.",
|
|
791
791
|
"options": []
|
|
792
792
|
},
|
|
793
|
+
"ion-checkbox/required": {
|
|
794
|
+
"type": "boolean",
|
|
795
|
+
"description": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid.",
|
|
796
|
+
"options": []
|
|
797
|
+
},
|
|
793
798
|
"ion-checkbox/value": {
|
|
794
799
|
"type": "any",
|
|
795
800
|
"description": "The value of the checkbox does not mean if it's checked or not, use the `checked`\nproperty for that.\n\nThe value of a checkbox is analogous to the value of an `<input type=\"checkbox\">`,\nit's only used when the checkbox participates in a native `<form>`.",
|
|
@@ -2269,6 +2274,11 @@
|
|
|
2269
2274
|
"description": "Animation to use when the modal is presented.",
|
|
2270
2275
|
"options": []
|
|
2271
2276
|
},
|
|
2277
|
+
"ion-modal/expand-to-scroll": {
|
|
2278
|
+
"type": "boolean",
|
|
2279
|
+
"description": "Controls whether scrolling or dragging within the sheet modal expands\nit to a larger breakpoint. This only takes effect when `breakpoints`\nand `initialBreakpoint` are set.\n\nIf `true`, scrolling or dragging anywhere in the modal will first expand\nit to the next breakpoint. Once fully expanded, scrolling will affect the content.\nIf `false`, scrolling will always affect the content, and the modal will only expand\nwhen dragging the header or handle.",
|
|
2280
|
+
"options": []
|
|
2281
|
+
},
|
|
2272
2282
|
"ion-modal/focus-trap": {
|
|
2273
2283
|
"type": "boolean",
|
|
2274
2284
|
"description": "If `true`, focus will not be allowed to move outside of this overlay.\nIf `false`, focus will be allowed to move outside of the overlay.\n\nIn most scenarios this property should remain set to `true`. Setting\nthis property to `false` can cause severe accessibility issues as users\nrelying on assistive technologies may be able to move focus into\na confusing state. We recommend only setting this to `false` when\nabsolutely necessary.\n\nDevelopers may want to consider disabling focus trapping if this\noverlay presents a non-Ionic overlay from a 3rd party library.\nDevelopers would disable focus trapping on the Ionic overlay\nwhen presenting the 3rd party overlay and then re-enable\nfocus trapping when dismissing the 3rd party overlay and moving\nfocus back to the Ionic overlay.",
|
|
@@ -3539,6 +3549,11 @@
|
|
|
3539
3549
|
"description": "The text to display when the select is empty.",
|
|
3540
3550
|
"options": []
|
|
3541
3551
|
},
|
|
3552
|
+
"ion-select/required": {
|
|
3553
|
+
"type": "boolean",
|
|
3554
|
+
"description": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid.",
|
|
3555
|
+
"options": []
|
|
3556
|
+
},
|
|
3542
3557
|
"ion-select/selected-text": {
|
|
3543
3558
|
"type": "null | string | undefined",
|
|
3544
3559
|
"description": "The text to display instead of the selected option's value.",
|
|
@@ -4140,6 +4155,16 @@
|
|
|
4140
4155
|
"description": "Enables the on/off accessibility switch labels within the toggle.",
|
|
4141
4156
|
"options": []
|
|
4142
4157
|
},
|
|
4158
|
+
"ion-toggle/error-text": {
|
|
4159
|
+
"type": "string | undefined",
|
|
4160
|
+
"description": "Text that is placed under the toggle label and displayed when an error is detected.",
|
|
4161
|
+
"options": []
|
|
4162
|
+
},
|
|
4163
|
+
"ion-toggle/helper-text": {
|
|
4164
|
+
"type": "string | undefined",
|
|
4165
|
+
"description": "Text that is placed under the toggle label and displayed when no error is detected.",
|
|
4166
|
+
"options": []
|
|
4167
|
+
},
|
|
4143
4168
|
"ion-toggle/justify": {
|
|
4144
4169
|
"type": "\"end\" | \"space-between\" | \"start\" | undefined",
|
|
4145
4170
|
"description": "How to pack the label and toggle within a line.\n`\"start\"`: The label and toggle will appear on the left in LTR and\non the right in RTL.\n`\"end\"`: The label and toggle will appear on the right in LTR and\non the left in RTL.\n`\"space-between\"`: The label and toggle will appear on opposite\nends of the line with space between the two elements.\nSetting this property will change the toggle `display` to `block`.",
|
|
@@ -4172,6 +4197,11 @@
|
|
|
4172
4197
|
"description": "The name of the control, which is submitted with the form data.",
|
|
4173
4198
|
"options": []
|
|
4174
4199
|
},
|
|
4200
|
+
"ion-toggle/required": {
|
|
4201
|
+
"type": "boolean",
|
|
4202
|
+
"description": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid.",
|
|
4203
|
+
"options": []
|
|
4204
|
+
},
|
|
4175
4205
|
"ion-toggle/value": {
|
|
4176
4206
|
"type": "null | string | undefined",
|
|
4177
4207
|
"description": "The value of the toggle does not mean if it's checked or not, use the `checked`\nproperty for that.\n\nThe value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\nit's only used when the toggle participates in a native `<form>`.",
|
package/dist/vetur/tags.json
CHANGED
|
@@ -208,6 +208,7 @@
|
|
|
208
208
|
"label-placement",
|
|
209
209
|
"mode",
|
|
210
210
|
"name",
|
|
211
|
+
"required",
|
|
211
212
|
"value"
|
|
212
213
|
]
|
|
213
214
|
},
|
|
@@ -575,6 +576,7 @@
|
|
|
575
576
|
"breakpoints",
|
|
576
577
|
"can-dismiss",
|
|
577
578
|
"enter-animation",
|
|
579
|
+
"expand-to-scroll",
|
|
578
580
|
"focus-trap",
|
|
579
581
|
"handle",
|
|
580
582
|
"handle-behavior",
|
|
@@ -905,6 +907,7 @@
|
|
|
905
907
|
"name",
|
|
906
908
|
"ok-text",
|
|
907
909
|
"placeholder",
|
|
910
|
+
"required",
|
|
908
911
|
"selected-text",
|
|
909
912
|
"shape",
|
|
910
913
|
"toggle-icon",
|
|
@@ -1068,10 +1071,13 @@
|
|
|
1068
1071
|
"color",
|
|
1069
1072
|
"disabled",
|
|
1070
1073
|
"enable-on-off-labels",
|
|
1074
|
+
"error-text",
|
|
1075
|
+
"helper-text",
|
|
1071
1076
|
"justify",
|
|
1072
1077
|
"label-placement",
|
|
1073
1078
|
"mode",
|
|
1074
1079
|
"name",
|
|
1080
|
+
"required",
|
|
1075
1081
|
"value"
|
|
1076
1082
|
]
|
|
1077
1083
|
},
|
package/dist/web-types.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "http://json.schemastore.org/web-types",
|
|
3
3
|
"framework": "vue",
|
|
4
4
|
"name": "@ionic/vue",
|
|
5
|
-
"version": "8.4.4-dev.
|
|
5
|
+
"version": "8.4.4-dev.11741630999.189d7fc2",
|
|
6
6
|
"contributions": {
|
|
7
7
|
"html": {
|
|
8
8
|
"types-syntax": "typescript",
|
|
@@ -1610,6 +1610,16 @@
|
|
|
1610
1610
|
"type": "string"
|
|
1611
1611
|
}
|
|
1612
1612
|
},
|
|
1613
|
+
{
|
|
1614
|
+
"name": "required",
|
|
1615
|
+
"description": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid.",
|
|
1616
|
+
"required": false,
|
|
1617
|
+
"default": "false",
|
|
1618
|
+
"value": {
|
|
1619
|
+
"kind": "expression",
|
|
1620
|
+
"type": "boolean"
|
|
1621
|
+
}
|
|
1622
|
+
},
|
|
1613
1623
|
{
|
|
1614
1624
|
"name": "value",
|
|
1615
1625
|
"description": "The value of the checkbox does not mean if it's checked or not, use the `checked`\nproperty for that.\n\nThe value of a checkbox is analogous to the value of an `<input type=\"checkbox\">`,\nit's only used when the checkbox participates in a native `<form>`.",
|
|
@@ -4506,6 +4516,16 @@
|
|
|
4506
4516
|
"type": "((baseEl: any, opts?: any) => Animation) | undefined"
|
|
4507
4517
|
}
|
|
4508
4518
|
},
|
|
4519
|
+
{
|
|
4520
|
+
"name": "expand-to-scroll",
|
|
4521
|
+
"description": "Controls whether scrolling or dragging within the sheet modal expands\nit to a larger breakpoint. This only takes effect when `breakpoints`\nand `initialBreakpoint` are set.\n\nIf `true`, scrolling or dragging anywhere in the modal will first expand\nit to the next breakpoint. Once fully expanded, scrolling will affect the content.\nIf `false`, scrolling will always affect the content, and the modal will only expand\nwhen dragging the header or handle.",
|
|
4522
|
+
"required": false,
|
|
4523
|
+
"default": "true",
|
|
4524
|
+
"value": {
|
|
4525
|
+
"kind": "expression",
|
|
4526
|
+
"type": "boolean"
|
|
4527
|
+
}
|
|
4528
|
+
},
|
|
4509
4529
|
{
|
|
4510
4530
|
"name": "focus-trap",
|
|
4511
4531
|
"description": "If `true`, focus will not be allowed to move outside of this overlay.\nIf `false`, focus will be allowed to move outside of the overlay.\n\nIn most scenarios this property should remain set to `true`. Setting\nthis property to `false` can cause severe accessibility issues as users\nrelying on assistive technologies may be able to move focus into\na confusing state. We recommend only setting this to `false` when\nabsolutely necessary.\n\nDevelopers may want to consider disabling focus trapping if this\noverlay presents a non-Ionic overlay from a 3rd party library.\nDevelopers would disable focus trapping on the Ionic overlay\nwhen presenting the 3rd party overlay and then re-enable\nfocus trapping when dismissing the 3rd party overlay and moving\nfocus back to the Ionic overlay.",
|
|
@@ -6919,6 +6939,16 @@
|
|
|
6919
6939
|
"type": "string | undefined"
|
|
6920
6940
|
}
|
|
6921
6941
|
},
|
|
6942
|
+
{
|
|
6943
|
+
"name": "required",
|
|
6944
|
+
"description": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid.",
|
|
6945
|
+
"required": false,
|
|
6946
|
+
"default": "false",
|
|
6947
|
+
"value": {
|
|
6948
|
+
"kind": "expression",
|
|
6949
|
+
"type": "boolean"
|
|
6950
|
+
}
|
|
6951
|
+
},
|
|
6922
6952
|
{
|
|
6923
6953
|
"name": "selected-text",
|
|
6924
6954
|
"description": "The text to display instead of the selected option's value.",
|
|
@@ -8197,6 +8227,24 @@
|
|
|
8197
8227
|
"type": "boolean | undefined"
|
|
8198
8228
|
}
|
|
8199
8229
|
},
|
|
8230
|
+
{
|
|
8231
|
+
"name": "error-text",
|
|
8232
|
+
"description": "Text that is placed under the toggle label and displayed when an error is detected.",
|
|
8233
|
+
"required": false,
|
|
8234
|
+
"value": {
|
|
8235
|
+
"kind": "expression",
|
|
8236
|
+
"type": "string | undefined"
|
|
8237
|
+
}
|
|
8238
|
+
},
|
|
8239
|
+
{
|
|
8240
|
+
"name": "helper-text",
|
|
8241
|
+
"description": "Text that is placed under the toggle label and displayed when no error is detected.",
|
|
8242
|
+
"required": false,
|
|
8243
|
+
"value": {
|
|
8244
|
+
"kind": "expression",
|
|
8245
|
+
"type": "string | undefined"
|
|
8246
|
+
}
|
|
8247
|
+
},
|
|
8200
8248
|
{
|
|
8201
8249
|
"name": "justify",
|
|
8202
8250
|
"description": "How to pack the label and toggle within a line.\n`\"start\"`: The label and toggle will appear on the left in LTR and\non the right in RTL.\n`\"end\"`: The label and toggle will appear on the right in LTR and\non the left in RTL.\n`\"space-between\"`: The label and toggle will appear on opposite\nends of the line with space between the two elements.\nSetting this property will change the toggle `display` to `block`.",
|
|
@@ -8235,6 +8283,16 @@
|
|
|
8235
8283
|
"type": "string"
|
|
8236
8284
|
}
|
|
8237
8285
|
},
|
|
8286
|
+
{
|
|
8287
|
+
"name": "required",
|
|
8288
|
+
"description": "If true, screen readers will announce it as a required field. This property\nworks only for accessibility purposes, it will not prevent the form from\nsubmitting if the value is invalid.",
|
|
8289
|
+
"required": false,
|
|
8290
|
+
"default": "false",
|
|
8291
|
+
"value": {
|
|
8292
|
+
"kind": "expression",
|
|
8293
|
+
"type": "boolean"
|
|
8294
|
+
}
|
|
8295
|
+
},
|
|
8238
8296
|
{
|
|
8239
8297
|
"name": "value",
|
|
8240
8298
|
"description": "The value of the toggle does not mean if it's checked or not, use the `checked`\nproperty for that.\n\nThe value of a toggle is analogous to the value of a `<input type=\"checkbox\">`,\nit's only used when the toggle participates in a native `<form>`.",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ionic/vue",
|
|
3
|
-
"version": "8.4.4-dev.
|
|
3
|
+
"version": "8.4.4-dev.11741630999.189d7fc2",
|
|
4
4
|
"description": "Vue specific wrapper for @ionic/core",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"eslint": "eslint src",
|
|
@@ -68,7 +68,7 @@
|
|
|
68
68
|
"vue-router": "^4.0.16"
|
|
69
69
|
},
|
|
70
70
|
"dependencies": {
|
|
71
|
-
"@ionic/core": "8.4.4-dev.
|
|
71
|
+
"@ionic/core": "8.4.4-dev.11741630999.189d7fc2",
|
|
72
72
|
"ionicons": "^7.0.0"
|
|
73
73
|
},
|
|
74
74
|
"vetur": {
|